ブックマーク / shokai.org (13)

  • 橋本商会 » 艦これをフルスクリーンでやる

    ブックマークレット。safariとchromeで動作確認。 解像度の高い画面しか持ってないので、画面が小さくてつらかったから作った。 (ノウハウは艦これ専用ブラウザー Teitoku.app引き継がれた) ゲーム画面でこれをブラウザのURL欄に貼り付けて実行 (chromeは貼り付けるとjavascript:が消えるので注意) javascript:(function(){location.href=$("iframe").attr("src")})(); するとページ移動するので、さらにこれを実行 javascript:(function(){location.href=$("embed").attr("src")})(); ブラウザのウィンドウいっぱいで表示できる swfにURL引数でセッションIDなど全部渡しているから可能 最後に開いたページのURLは誰にも見せてはならない。api_

    橋本商会 » 艦これをフルスクリーンでやる
    takanoo
    takanoo 2013/09/29
  • 橋本商会 » LAN内の全てのホストのIPアドレスとMacアドレスを取得する

    1から254までpingうって反応あったホストにarpしてMacアドレスを取得した。 昔LAN内の全ホストにgrowl送りつけたりしていた時と同じノリだ Raspberry PiがDHCPでどこに行ってしまったかもわかるし、定期的に実行すれば端末が(つまり人が)増えたり減ったりするのもわかって楽しい。 実行にはparallel gemが必要 gem install parallel ruby macaddrs.rb 192.168.1.1

    橋本商会 » LAN内の全てのホストのIPアドレスとMacアドレスを取得する
    takanoo
    takanoo 2013/06/15
  • 橋本商会 » Ruby上に並列言語拡張Lindaを実装してWebSocket/Cometで使えるようにした

    Lindaは1990年ごろに出来た言語。 タプルスペースという共有メモリ空間でタプル(オブジェクト)を共有して、in/out/rd/inp/rdpという命令で操作する事で大抵の並列処理が記述できるという物。 仕様は単純なんだけどセマフォなどのロック機構やジョブキューも超簡単に記述できる。いわば分散並列処理のための最小セット。 既にCやJavaの実装があり、Rubyでも咳さんのRindaがある。 で、今回作ったLinda gemではタプルのマッチング判定とオンメモリのタプルスペースの読み書き機能と、それぞれのテストコードしか実装されていない。 複数のプロセスからタプルスペースに接続して読み書きする機能は実装されていない。 マッチングは配列タプルは要素の前方一致、Hashタプルは自身のKeyとValueが相手に全部含まれていればtrueとしている。 Linda RocketIO Linda g

    takanoo
    takanoo 2013/05/26
  • 橋本商会 » ruby1.9の関数を1.8.7で使う

    backports使ったら1.8で1.9の関数が使えるようになる。 https://github.com/marcandre/backports requireしておくだけでいい。 require 'backports' 最近Heroku使い始めた関係で、ようやくRuby1.9.2を使い始めた。 1.8のArray#choiceという配列の中からランダムに要素を取り出す関数が、1.9ではArray#sampleになっていたりとか、違いがある。backports読み込んだら、Array#sampleって書いておけば1.8/1.9両方で動く。

    takanoo
    takanoo 2012/06/15
  • 橋本商会 » webページを印刷できるようにキャプチャしてPDFファイルにまとめる

    webkit2pngを使うとwebページをキャプチャして画像にできるので、さらにImageMagickでA4サイズでの印刷用に加工してpdfjamで1つのPDFファイルにまとめるようにしてみた。 こんなpdfができる。 ■準備 必要なツールをhomebrewとrubygemsでインストールする brew install webkit2png imagemagick pdfjam gem install ArgsParser ■キャプチャする ruby capture_webpage.rb -url http://shokai.org/blog -out tmp/shokai-blog.pdf –landscapeオプションを付けるとA4横長ページにできる。 ■コード capture_webpage.rb #!/usr/bin/env ruby ## capture webpage and

    takanoo
    takanoo 2012/04/19
  • 橋本商会 » 赤外線学習リモコンKURO-RSのWebコントロールパネル作った

    赤外線学習リモコンをWebブラウザから使えるようにした。SinatraとMongoDBで、RubyでBuffalo/玄人志向の赤外線学習リモコンを操作するで作ったkuro-rs-serverを操作する。 shokai/kuro-rs-control-panel – GitHub これでアプリから様々な機器を操作できる。家に帰る前に暖房つけたりとかNFCでテレビ動かしたりとか。 機能はこれだけ。全部GUIとJSON APIがある。 赤外線を読む 赤外線データに名前をつけて保存する 名前を指定して赤外線を発射させる データ内容を指定して赤外線を発射させる ■画面 保存した赤外線データの一覧と、新規データの保存ボタンがある 赤外線データのpermalink。 /ir/(名前) にある。 学習ボタンを押してすぐKURO-RSに赤外線を当てると 読み取られる。保存したりその場で試し撃ちしたりできる。

    橋本商会 » 赤外線学習リモコンKURO-RSのWebコントロールパネル作った
    takanoo
    takanoo 2011/12/29
  • 橋本商会 » RubyでBuffalo/玄人志向の赤外線学習リモコンを操作する

    11月22-23日にSFC ORFというSFCの研究室の発表会があって、そこでデモするブツに使う部品としてBuffaloの赤外線学習リモコンのRubyラッパーを書きました。これで家に帰る前に暖房つけたりできてうれしいですね。 玄人志向のKURO-RSとBuffaloのPC-OP-RSを操作できます。 MacLinuxと、試してないけどたぶんWindowsでも動く気がする。コードはgithubに置いてる。 学習リモコン/KURO-RS/(1)使ってみる – 脳みそ沸騰中!のPerlのコードを参考にしました。 ■PC-OP-RSを買う 気がついたらKURO-RSがどこにも売ってないんだけど、PC-OP-RSがKURO-RSと同じハードウェアで箱と付属ソフトが違うだけなのでどちらでも動かせます。 ■インストール gem install kuro-rs そしてKURO-RSMacLinux

    takanoo
    takanoo 2011/12/29
  • 橋本商会 » AndroidとNFCで研究室の鍵を開けるシステムができた

    先週、後輩のN園が作ってくれました。 AndroidでNFCタグを読むと鍵開けアプリが起動 ジェスチャー入力をSinatraで書かれたドアサーバーに伝える ドアサーバーはPhidgetsのサーボモーターを駆動し、鍵をヒモで引っ張って開ける 最近はAndroidでNFCタグを読むとタグ毎のwebアプリが起動し、しかもPhoneGapみたいにJavaJavaScriptのブリッジが書かれているのでセンサーが使えるというシステムを作っている。 6月にNHKITホワイトボックスでデモした奴の発展版で、GoldFishという開発コードで呼んでいる。 こんなメリットがある HTMLとJS(と必要あればwebアプリ)が書ければアプリを作れる環境 実世界の物体を指し示して、「アレをコレに」とか操作できる GUIだけではなくジェスチャーも入力できる 状況によってインタフェースが変化する 誰が使っているか

    takanoo
    takanoo 2011/11/12
  • 橋本商会 » iPhone JavaScript Console作った

    作った → https://github.com/shokai/iphone-js-console iPhone用のJavaScript shellのようなもの。FirebugやChromeの開発パネルみたいな感じで使う。 chrome拡張やiPhoneシミュレータでiPhone用のwebページの動作は確認できるが、加速度センサやGeo Location APIなんかは実機で動かさないとデバッグできない。 しかしデバッグをしようにも、iPhone上で大量のalertを出すと気が狂ってしまう。iPhoneで実行中のwebページ上の任意のオブジェクトの中身を、Macから覗いたり値を書き換えたり関数を実行したりするツールが必要だったので作った。 なお、Androidのブラウザにはwebsocketが無いのでこのツールは動かない。Androidではlogcatで adb logcat | grep

    橋本商会 » iPhone JavaScript Console作った
    takanoo
    takanoo 2011/10/31
  • 橋本商会 » Google Latitudeから自分の位置情報を取得する

    以前自分でAndroid用のGPSロガーアプリを作っていたんだけど、収集した位置情報をAndroid内に持っていても特に面白いことが出来なくて悩んでた。 Android版のgoogle latitudeはもちろんサーバーに位置情報が溜まっているので、これを別の自分のサーバーから取得したほうが使い勝手がよい。 作ったもの https://github.com/shokai/google-latitude-logger ■google latitudeから位置情報を取る方法 GData APIからGoogle Latitude APIが使えるが、なんかわけがわからなかったのでgoogle latitude badgeからデータを取ることにした。 Google Latitude公開ロケーションバッジのページにgoogleアカウントにログインした状態で行き、「有効にして最新の現在地情報を表示する」

    橋本商会 » Google Latitudeから自分の位置情報を取得する
    takanoo
    takanoo 2011/07/12
  • 橋本商会 » emobileが月1100円安くなってPocketWifiがもらえるプランに契約するとインターネットが半分使えなくなる

    (この記事の続きはここに書きました) sshが使えなくなって困っています。WWW以外をたくさん使う人は契約しない方が良い。 5月半ば、イーモバイルから電話がかかってきた。 橋さんは月4980円のプランで契約しているけど、通信料が多くないので3880円のプランに変更しませんか おまけにPocketWifiを1円であげる という内容。 何かデメリットは無いのか聞いたところ、 あと残り3ヶ月だった2年縛りは、2011年6月から24ヶ月にリセットされる イーモバイル解約時の違約金は、残りの月数×900円 とのこと。 まあ損は無さそうなので契約した。 5月末にPocketWifiが届き、6月から3880円のプランになった。するとgithubにpush/pullできなくなっている。 3880円のプランはデータプランBという物で、試してみたらたくさん制限があった。 pingが通らない ほとんどのpor

    takanoo
    takanoo 2011/06/05
  • 橋本商会 » Inspiron Mini9に外付けUSB RAID HDDをつけてファイルサーバー化した

    ■ほしい機能 ただのNASではなく 音が静か RAID1でミラーリングしてデータが消えないようにしたい 家のdynamic dnsを更新 家の外からもe-mobileでsshでログインできたり、mercurialやgitのリポジトリを置ける rsyncで大学にある巨大なファイルをダウンロードさせておく作業を任せられる sambaでwindowsのファイル共有にも参加する 念のためモニタとキーボードも付いていて、ネットワークが壊れている時も操作しやすい Inspiron Mini9と外付けHDDどちらが壊れても迅速に入れ替え・復旧できる構成にしたい apacheとhgweb.cgiを動かしてmercurialのリポジトリビューアを置きたい 巨大ファイルのやりとりのためにapacheは動かしておきたい ■HDC2-U2.0の設定 まずRAID1に設定し直す。後でやると中身がフォーマットされるの

    takanoo
    takanoo 2009/10/27
  • 橋本商会 » SFCのFTPサーバーに接続する(ポートフォワード)

    どうやら学校のcczのFTPサーバーを使いたい人がいるみたいなので書いておく Making Things Talk POCHI: sfcのFTPサーバってなんやー CNS Guideも最近更新されてないみたいで、FTPと検索しても情報はなんも出てこなかったけど、確かにSFCにはFTPサーバーが存在する。ただし見えない所に隠されている。 ■sshトンネリング FTPで接続するにはPuttyなどを使ってsshトンネリングでFTPへの道を通してあげないとならない。 TeraTermでもできる。 Puttyで、ccz00のFTPサーバーへの道をトンネリングする例。 まずccz00に接続してから、トンネルの設定をする この例では、localhost(自分のPC)の8021へのアクセスを全部 ccz00.sfc.keio.ac.jp:21 に転送するようになる。 21はFTPのportですね FFFT

    橋本商会 » SFCのFTPサーバーに接続する(ポートフォワード)
    takanoo
    takanoo 2009/05/05
  • 1