タグ

programmingに関するtermin2のブックマーク (272)

  • Rubyの軽量Webフレームワーク「Sinatra」がステキ - このブログは証明できない。

    フルスタックがウリのRails。そこまで必要ないよ。と、ERBでゴリゴリ。メンドクセー。やっぱ、Railsで。などと、陽はまたのぼりくりかえしてーゆく。RubyのWebフレームワークは他にもあるけど。。軽くていいんだ。PHPを使いたくないだけなんだ。 そんな悩ましさを解消してくれるフレームワークを発見してしまいました。「Sinatra」でございます。こいつは、軽そうだ。 Sinatra サイトのトップページに書かれているコード。これが、サクサク感をかもし出してくれています。 require 'rubygems' require 'sinatra' get '/hi' do "Hello World!" end 説明読まなくても解るよ、これ。 日語の解説スライドがあります。よく解る解説ー。 公式サイトのREADMEを読めば、だいたいOK。 Sinatra: README パラメータを取得し

  • プログラミングができなくても作れるTwitter botの作り方

    Twitterのおかげで、それまではごく一部の人しか知らなかったbotというものが、だいぶん身近で親しみやすいものになったと思うんだけど、 こうなったらもっと気軽に誰でもbotを作れるようになったら楽しいんじゃないか。プログラミングができない人でも一人一botくらい持つ勢いで。 ということでこの記事を書いてみました。

  • 【コラム】ダイナミックObjective-C (41) インプットマネージャから侵入 | エンタープライズ | マイコミジャーナル

    今回は、ハックの話をしよう。Objective-Cの動的な機構と、Cocoaアプリケーションの仕組みを利用する事で、簡単に強力なハックを行える。 ポージングを使ったハッキング 連載の第12回で、Objective-Cのポージング機能を紹介した。新しく作ったクラスで、既存のクラスを「乗っ取る」ことができる仕組みだ。乗っ取りは、自分で作成したオブジェクトだけでなく、システムが作ったものに対しても行えるので、非常に強力である。過去の記事では、例として、アプリケーションで使うすべてのウィンドウを半透明化する方法を紹介した。 だが、この機能を実際に使ってみると、すぐに次の疑問が浮かぶだろう。自分で作成したアプリケーションだけではなく、既にあるアプリケーションでもこの半透明化を行えないだろうか? これを実現するには、作成したポージングを行うクラスを、目的のアプリケーションランタイムに読み込ませる必要

  • 驚くべきテクニックで「スーパーマリオ」をクリアしていく人工知能

    ゲームゲームをクリアする時代に? 「New スーパーマリオブラザーズ Wii」で、初心者向けに新しく搭載されるという噂の「スキップ機能」は、もしかしたらこんな感じなのかもしれません。 土管や砲台、敵キャラクターなど多くの障害物が設置されたコース上を、驚くべきスムーズさで、マリオがひたすら右へ右へと進んでいくこちらの動画。迫りくる敵の間を難なくすり抜けたり、パックンフラワーの間をギリギリでくぐり抜けていったりと、確かに上手いプレイであることは分かるのですが、何かがちょっと違うことに気付いたでしょうか。 実はこれ、すべてAI制御による自動プレイ。マリオの前方に表示されている赤い放物線は、この先進むルートの候補を表したもので、どうやらこの中から安全で、なおかつ最短でゴールにたどり着けるルートを自動で選択するようプログラムされているようです。途中、何度かはヒヤリとさせられる場面もあるのですが、き

    驚くべきテクニックで「スーパーマリオ」をクリアしていく人工知能
  • お掃除ロボットルンバの掃除経路を撮影するプログラムをつくってみた - kenmazの日記

    お掃除ロボットルンバを買って半年以上たちました。外出時にルンバを起動して、帰宅したら掃除が終わっている、という感じで使っています。ただ、確かに部屋はきれいになっているのですが、当に部屋の隅々まで掃除してくれているのかが分からない。というわけで、ルンバの移動経路を連続撮影して、ちゃんと部屋の隅々まで掃除しているか確認するプログラムをRubyCocoa(Objective-C)で作りました。 概要 今回は以下の二つのプログラムを作りました。 camera: iMacMacBookの内蔵カメラ(isight)で1秒ごとに部屋内を撮影するCocoaアプリ mono.rb: cameraで撮影した写真を合成するRubyプログラム 実験 ルンバを起動して5分間掃除してもらう 2台のMac(iMac,MacBook)を室内の2カ所に設置 上述のプログラムで撮影&解析 その間に俺は風呂に入る 結果

    お掃除ロボットルンバの掃除経路を撮影するプログラムをつくってみた - kenmazの日記
  • Snippets (スニペット)

    Snippets (スニペット) スニペットとははドキュメントに挿入するテキストです。スニペットには、時間、(選択されたテキストのような)変数、タブストップやあなたが挿入後タブを使う欠けている情報のためのプレースホルダを挿入したり、プレースホルダに入力したデータの変更を実行するコードを含むことができます。 Plain Text (プレーンテキスト) もっとも単純な場合は、あなたが何度も何度も入力したくないテキストを挿入するスニペットを使う事が来ます。あなたが、何度も入力したり、実際に入力するテキストを覚えているのが大変だからといった理由でです。例えばあなたの銀行口座の詳細やAppleの修飾キーのHTMLの実体参照などがあります。 もしあなたがプレーンテキストを挿入するスニペットを使う際に知っていなければいけないことは、$と`は予約語であるということです。もしあなたがそれらを入力したい場合は

  • 実践! iPhoneアプリ開発 | コラム | エンタープライズ | マイコミジャーナル

    Copyright (C) Mainichi Communications Inc. All rights reserved. 掲載記事の無断転載を禁じます

  • アポロ11号のソースコード - Radium Software

    Google Code Blog - Apollo 11 mission's 40th Anniversary: One large step for open source code... アポロ11号の月面着陸から40周年ということで,最近やたらとアポロ計画関連の話題を見かける。そんな中,アポロ計画にちなんだ話題として Google Code Blog に投稿されたのが上のエントリー。 Google Code 上で公開されている Virtual AGC and AGS プロジェクトの中に, NASA のハードコピーから転記された物の AGC (アポロ誘導コンピュータ)のソースコードがありますよ……とのこと。 このソースコードには,オリジナルのアセンブリコードに記されていたラベルやコメントまでしっかり転記されている。それらの記述に目を通していると,そのコードを書いた人の考えや気持ちが伝

    アポロ11号のソースコード - Radium Software
  • Google Code Archive - Long-term storage for Google Code Project Hosting.

    Code Archive Skip to content Google About Google Privacy Terms

  • SBクリエイティブ:基礎からのiPhone SDK

    書は、iPhone SDKを使ってのアプリケーション開発をチュートリアル形式で解説するスタイルをとっています。実用的なサンプルアプリケーションをいくつか作成しながら、その場で必要となる知識について少しずつ学んでいただけます。 CHAPTER 01 iPhone OS/iPhone SDK概要 CHAPTER 02 iPhone OS機能カタログ CHAPTER 03 初めてのアプリケーション開発 CHAPTER 04 Objective-C入門 -ウェブブラウザ基礎編- CHAPTER 05 メモリ管理 -デジタル時計の作成- CHAPTER 06 ビューとイベント -スライドショーの作成- CHAPTER 07 設定とローカライズ -メモ帳の作成- CHAPTER 08 ウェブブラウザ 応用編

    SBクリエイティブ:基礎からのiPhone SDK
  • プログラミング言語を身につける唯一の方法 - ぼくはまちちゃん!

    こんにちはこんにちは!! プログラミング言語とかマスターしてると、なんかかっこいい感じですよね! 就職とか転職にもバッチリ有利そうだし…! だけど難しいよね、言語とか…。 入門書とかどれだけ買ってみても毎回 Hello world どまりだし…。 なんでなんだろう? なんでうまく覚えることができないんだろうね。 世の中には、ちゃんとプログラミングできる人がたくさんいるのに…! うーん。 たぶんこれかな… なにか作りたいものがある または なにかを作る必要がある なんて状況以外で、マトモにプログラミング言語を習得してる人って ぼくほとんど見たことないんだけど、みなさんはどうでしょう…! たしかに、コンピュータを教えてくれる学校に通って、ちゃんと教えてもらえればJavaだってなんだってしっかりと、その時だけは身に付くんだけど、 でもそういうのって、ほんとに「その時だけ」なんだよね…。ほとんどの

    プログラミング言語を身につける唯一の方法 - ぼくはまちちゃん!
  • Apple Developer Connection(日本語)

    Liquid Glassにフォーカス インタラクティブな最新のデザインアクティビティに参加して、次世代のアプリを構築しましょう。

    Apple Developer Connection(日本語)
  • iPhone Dev Center 日本語リファレンス

    デザインがかつてないほど大幅にアップデートされました。すべてのAppleプラットフォームに共通するこの新デザインは、ユーザーにとって最も重要なコンテンツを引き立てます。また、各プラットフォームのユニークな特徴を維持すると同時に、プラットフォーム間で統一されたデザイン言語を実現しています。 この印象的な新しいマテリアルがLiquid Glassです。ガラスの光学的特性となめらかな流動感を兼ね備えており、その下にあるコンテンツの表示を屈折させ、周囲の光を反射し、エッジに沿って艶やかなレンズエフェクトをもたらします。 Appleオペレーティングシステムの中核に組み込まれたApple Intelligenceは、作文ツール、ジェン文字、Image Playgroundなどの各種機能によってさまざまなタスクを支援する、パーソナルインテリジェンスシステムです。 Foundation Modelフレーム

    iPhone Dev Center 日本語リファレンス
  • iPhone/iPod touchプログラミングメモ

    iPhone/iPod touch iPhone/iPod touchはAppleから発売されているスマートフォンおよびミュージックプレイヤー。どちらも世界的に普及しており、Apple Storeからデジタルコンテンツを購入して利用できる。 当初は一般ユーザーはAjaxアプリケーションしか開発できなかったが、2008年2月に「iPhone 2.0」が公開され、ソフトウェア開発キット「iPhoneSDK」も公開となり、ネイティブアプリケーションも開発可能となった。 開発したソフトウェアが有償の場合は30%をAppleに支払い、残りの70%を開発側で手にすることができる。無償の場合はAppleへの支払は不要となる。 ネイティブアプリケーション 統合開発環境として「Xcode」、プログラミング言語として「Objective-C」、アプリケーションフレームワークとして「Cocoa

  • twitter検索のクロール方法について - 不可視点

    twitter検索はpublic_timelineスクレイピングする方法でポストを収集していました。 これはうまくいっていたのですが3月のはじめにAPIによるアクセスに続いて通常ページもキャッシュされるようになり、ポストの取得がとびとびになってしまいました。影響はかなり出てしまい、回収率は1/10程度に落ち込んでしまいました。 代替策 TwitterはData mining feedという600ほどのポストを一度でもらえるAPIを提供していてポストを多く集めたい人はそれを使うようにというアナウンスをしています。しかしこれもキャッシュが効いているようですからそれほど改善しないのではないかと思い試していません。 また、既に事実上日語のみを検索対象にするサービスになっているので日語ユーザーのポストだけもらえればいいかと思い、日語ユーザー(7万人前後)をRSSで取得する方法を考えましたが、

    twitter検索のクロール方法について - 不可視点
  • 長文日記

  • 100行のCプログラムでWebチャットを実装する方法 - mixi engineer blog

    例の冷却ファンを修理してもらいに秋葉原に行ったのですが、最近の同人ゲームのクオリティはすごいなあと感心していたら、その二階はもっととんでもないことになってて、ひとつ大人になってしまったmikioです。今回は、Tokyo Cabinetのテンプレート直列化機能を駆使して、たった100行のCプログラムでWebチャットシステムを実装してみます。 古式ゆかしいWebチャットシステム 10年くらい前にCGIスクリプトでチャットシステムを作るのが流行していたのを覚えている方も多いと思います。チャットログは現在のようにデータベースサーバに転送して格納するのではなく、ローカルファイルシステム上のファイルにCSVやTSVなどのフォーマットで格納したり、同じくローカルのDBMファイルに格納するのが主流でした。2ちゃんねるの「datファイル」もそのようなデータファイルの一種と言えるでしょう。 その頃から、CGI

    100行のCプログラムでWebチャットを実装する方法 - mixi engineer blog
  • Gaucheをはじめてみませんか?

    Gaucheとは 連載では、今注目のプログラミング言語「Gauche」について解説しながら、簡単なWebアプリを作っていきます。Gaucheとは、ハワイ在住の日ハッカー「川合 史朗」さんが作ったLispの一種である、Schemeの処理系です。オープンソースで開発されています。 Gaucheの特徴は、Perlのように気軽に使える軽い処理系でありながら、正規表現、CommonLisp風オブジェクトシステムなど、Scheme標準にはない拡張機能や豊富なライブラリを持ち、実用的なプログラミングが行える点です。 最近「Gauche」に関するも出版され、「第4回:都内大手3書店の3月ベスト3発表!(http://www.thinkit.co.jp/article/49/4/2.html)」でも紹介されているように売れ行きも好評です。それは、なぜでしょうか? 筆者はLisp、特にSchemeの持

  • 最近、長いタイトルを...で省略しているのあるけど... - デー

    twitterでひとりキレまくっていたけど、冷静に考えるとどうでもいい気がしてきた話のまとめ。 ultraistter # 最近、長いタイトルを...で省略しているのあるけど、アレ、見た目だけのデザインを重視してUIからみえるデータのidentificationを破滅させている。ep 8を探すにはプレイリストのタイトルをひとつずつフォーカスしてtooltipを確認しないとダメでリストの意味がない。9:53 AM May 1st from P3:PeraPeraPrv ultraistter # 全単語数-1..3の組み合わせでマッチする別のデータを探して(1/ヒット数)が大きくなるグループの単語は識別に重要な情報なので単語の重要度上げて〜とかでep8が特に大きくなるはずなので、その付近をできるだけ保存した状態で後ろのほうを省略してN文字にする、みたいなアルゴリズム無いの10:01 AM M

    最近、長いタイトルを...で省略しているのあるけど... - デー
  • Perlでアニメ顔を検出&解析するImager::AnimeFace - デー

    というのを作ったので自己紹介します。 2月頃から、コンピュータでアニメ顔を検出&解析する方法をいろいろ試しつつ作っていて、その成果のひとつとして、無理やり出力したライブラリです。 はじめに はじめにざっとライブラリの紹介を書いて、あとのほうでは詳細な処理の話を僕の考えを超交えつつグダグだと書きたいと思います。 Imager::AnimeFaceでできること Imager::AnimeFaceは、画像に含まれるアニメキャラクター的な人物の顔の位置を検出し、さらに目や口など顔を構成する部品位置や大きさの推定、肌や髪の色の抽出を簡単に行うことができるライブラリです。 これらが可能になると、 画像から自動でいい感じのサムネイルを作成できる 動画から自動でいい感じのサムネイルを作成できる 自動的にぐぬぬ画像が作れる 自動的に全員の顔を○○にできる 顔ベースのローカル画像検索 など、最新鋭のソリューシ

    Perlでアニメ顔を検出&解析するImager::AnimeFace - デー