QuickSilverでイーモバイルモデムの接続・切断を行う
QuickSilverからイーモバイルモデムの接続・切断を行うために自分が行っている方法をメモ。
Mac OS X 10.5 (Leopard)で確認。
Snow Leopardはまだインストールしてないので動作は未検証。
Automatorでイーモバイルモデムの接続を行うアプリケーションを作成
1.イーモバイルのモデムAutomatorを起動
2.「新規ワークフローの開始点を選択してください:」のダイアログで「カスタム」を選択
3.アクションから「AppleScriptを実行」を選択し、ワークフロー部に追加
4.「AppleScriptを実行」のフローに以下のスクリプトを記述
on run {input, parameters} tell application "System Events" tell current location of network preferences set EMobile to service "HUAWEI Mobile" if exists EMobile then connect EMobile end tell end tell return input end run
スクリプトの4行目で「HUAWEI Mobile」という文字列を指定しているが、これは自分がイーモバイルの「D02HW」を利用してて、[システム環境設定 > ネットワーク]の左側ペインの一覧にて、この文字列でイーモバイルモデムの接続設定が行われているため。モデムの機種によってこの文字列が異なるかもしれないので、その時はお使いモデムに合わせた文字列に変更してください。
5.スクリプトが書けたら「AppleScriptを実行」のフローの実行ボタンを押す。モデムの接続が行われればOK
6.設定したフローを保存。名前を設定し(例:emobile起動)、適当なディレクトリ位置を指定(自分は~/Documents に保存)。フォーマットを[アプリケーション]に変更して保存する。
7.ここまでの手順で、~/Documents/に、[保存した名称].app というファイルができてることを確認。
8.上記ファイルを実行すると、Automatorのランタイムにより、イーモバイルモデムが接続されるようになる。
QuickSilverに作成したアプリケーションをカタログ
QuickSilverを再起動するか、メニューバー「QuickSilver > Rescan Catalog」を実行することで、Automatorで作成したアプリケーションがカタログされるようになる。
あとは、QuickSilverを起動して、作成したアプリケーションの名前を入力し「Open」すれば、QuickSilverからイーモバイルモデムの接続ができるようになる。
Automatorでイーモバイルモデムの切断を行うアプリケーションを作成
1.「Automatorでイーモバイルモデムの切断を行うアプリケーションを作成」の手順1〜3までを実行。
2.「AppleScriptを実行」のフローに以下のスクリプトを記述
on run {input, parameters} tell application "System Events" tell current location of network preferences set EMobile to service "HUAWEI Mobile" if exists EMobile then disconnect EMobile end tell end tell return input end run
接続のスクリプトとの相違点は、5行目の「connect」が「disconnect」になっている事だけ。
3.作成したフローを適当な名前をつけてアプリケーションとして保存する。
4.QuickSilverへカタログさせる。
というわけで、これにてQuickSilverを使ってキーボード入力のみでイーモバイルモデムの入力・切断ができるようになった。
参考URL
- ApplescriptでVPN接続を開始する。 | public class Everyday extends Image{ }
AppleScriptの部分はこのemylo0さんのブログのエントリーに書かれてるのを流用させていただいてます。
ありがとうございました。
Rubyでファイル/ディレクトリを年ごとに整理
- スクリプトが稼働するディレクトリ内のすべてのファイル/ディレクトリの更新日付を確認。
- ディレクトリ内に年ごとのサブディレクトリを作成。
- チェックしたファイル/ディレクトリを作成した年ごとのサブディレクトリに移動する
という処理を書いてみた。
なんかRubyらしくない感じに思えるので、詳しい方添削をお願いします。
#!/usr/bin/ruby require 'fileutils' Dir.foreach(Dir.pwd) {|file| year = File.mtime(file).year.to_s dirname = Dir.pwd + "/__" + year if File.directory?(dirname) == false FileUtils.mkdir(dirname) end if file.to_s != __FILE__ FileUtils.move(file, dirname, {:force => true}) end }
SalesForce.comのアーキテクチャ
- 知られざる「マルチテナントアーキテクチャ」(1)〜SaaSはみんな同じではない?
- http://www.publickey.jp/blog/09/1saas.html
- 知られざる「マルチテナントアーキテクチャ」(2)〜スケーラビリティのカギは組織ID
- http://www.publickey.jp/blog/09/2id.html
- 知られざる「マルチテナントアーキテクチャ」(3)〜スキーマとメタデータの謎
- http://www.publickey.jp/blog/09/3_2.html
SaaSといえばSalesForce.com。
そのアーキテクチャをオープンになっている資料から推測した記事。
最近流行ってるキーバリュー型データストアを利用せず、スケーラビリティが高く、カスタマイズ性に優れたマルチテナントなWebアプリケーションの仕組みを普通のRDBMSを使ってどのように実現しているかかいま見る事ができる。
とくに、顧客がカスタマイズしたフィールドのデータを、500個を超える多量のフィールドを定義したひとつのテーブルでデータ管理してるのには驚いた。
えー?こういうデータの持たせ方でいいのか!ってな感じ。
話題のSinatraを使ってみた。
インストールはgemコマンドを使う。
$ sudo gem install sinatra
インストール完了後、こんな内容のファイルをhello.rbと名前をつけて、適当なディレクトリに保存する。
require 'rubygems' require 'sinatra' get '/hi' do "Hello World!" end
$ ruby hello.rb == Sinatra/0.9.4 has taken the stage on 4567 for development with backup from Mongrel
ブラウザを起動し、http://localhost:4567/hi のURLにアクセス。
ブラウザにこのように表示されれば起動確認は完了。
ちなみに、存在しないURLにアクセスした場合、ステージにマイクがポツンと置かれた画像とともにオシャレなエラー画面が表示される。
パラメータ受け取りの一例はこんな感じ。
get '/hi/:name' do "Hello #{params[:name]}!" end
内容を更新した場合、起動中のSinatraを再起動しないと反映されない。
再起動後、http://localhost:4567/hi/yuupon のURLにアクセスすると、
Hello yuupon!
と表示される。
すごくシンプル。これまで自分が使ってきたPHPのMapleやZend Frameworkなどのフレームワークとは毛色が異なりすぎて、なんだか「え、こんなんでいいの?」と戸惑ってしまう。
しかし、Rubyの関数を組み込んだり、表示するコンテンツを外部テンプレートファイルに切り分けたり、外部ライブラリをrequireしてデータベースにも接続できる。
セッションなど足りない機能は自分自身で実装するのでなくRackミドルウェアの機能を利用したりもできるらしい。
なんだかコバンザメっぽい感じ。
単にシンプルな構文が特徴的、とまとめるにはちょいと奥が深すぎるフレームワークなのかもと思った。
「小さなメーカーになりませんか?」元ハドソン・中本伸一氏の講義が面白かった件
ひと月に一度「e-シルクロード大学」(http://esre.sblo.jp/)という、元北大教授の青木由直先生が主催する勉強会に参加している。
2009-08-20に行われた講義の講師は、ゲームメーカー・ハドソンの役員だった中本伸一さん。ファミコン時代の数々の名作や、PCエンジンなどを手がけた技術者として、日本のゲーム史にその名を残す著名な方だ。
ハドソンを辞めた後、現在は札幌で有限会社サイレントシステムという、社員2人だけの小さな会社を起業して活躍されている。
今回の講義は、会社を起業してからこれまでの経験を「個人で起業するにあたって」と題して語ったもの。
講義中に垣間見える、中本さんのタフさやマッチョぶりに驚かされ、また、起業家を目指さずとも、不安定な時代を生きるサラリーマンにとって参考になるとても有益な講義だったと思う。
以下、講義中にとったメモのうち、一部をピックアップして箇条書きで振り返ってみたいと思う。
北海道のIT業界の現状
「小さなメーカー」を目指す
- メーカーといっても、目指すのは小さなメーカー。大会社のように、大きな工場を抱えたりするものではない。
- 自分(中本氏)は趣味で文鳥グッズを集めている。
- 最近、個人が趣味で作った文鳥の人形をインターネットで販売しているものを購入。
- また、趣味の革細工で装飾に使う焼き印をインターネットで探したところ、個人が販売しているものを見つけた。
- おそらく、普段金型を扱うCADオペレーターの人が、普段の仕事の合間に余った金型で焼き印を作ったものを販売しているのだろう。
- このように、現在は個人で作った品物もインターネットを使って購入できるようになった。ある意味メーカーと言える。
- 小さなメーカーでも、やり方次第では十分に利益を得られる。
サイレントシステム社の仕事
社員は2人だけ
- 社員は自分を含めて2人だけ。
- 広報活動(HP作成、雑誌への原稿執筆など)、プログラマー、商品の発注、マニュアル制作など、一人何役もこなしている。
- モジュールの組み立ては、自分の家族に手伝ってもらっている。
- 会社で一番お金がかかるのはズバリ人件費。少なければ少ないに越した事はない。
経理業務について
広告について
ビジネスモデルは秋月電子
「Made in Hokkaido」のこだわり
- 自社工場は、家賃月6万円のマンションの一室。地方はオフィスの家賃も安い。
- 北海道内の工場にお願いして仕事をしてもらうこともある。
- 自社で開発したモジュールには、必ず「Made in Hokkaido」とプリントしている。
- 北海道には優秀な工場が多い。でも現在は仕事がとても少ない状況。
- メーカーであれば、東京にこだわる必要はない。
- 東京はオフィスの家賃等でかかるコストも高いし、東京一極集中という状況にも疑問を感じる。
ハイブリッド起業
- 「今の仕事が嫌でつまらないから起業する」という考えではたいてい失敗する。
- そんな人は今の会社に勤めつつ、起業の準備を進める「ハイブリッド起業」がオススメ。
- 極論を言えば、会社の仕事なんてある程度しっかりこなしてれば、残りはサボってたって給料はもらえる。
- ただサボるのではなくて、起業のための勉強をしたり、取引先とのコネを作ったり、副業をこなしたり、時間を有効に使う事はいろいろできる。
- 技術者なら、勉強した成果をブログに書こう。ブログがきっかけで何かが始まる事も多い。「本日のメシ」の写真なんて別に見たくない。
まとめ
その他、旧態依然な価値観を持つ勢力との戦いとか、補助金のもらい方のコツとか、起業の際に銀行は当てにならないとか、小一時間ばかりの時間とは思えぬボリューム感たっぷりな講義で楽しめた。
個人的な印象としては、最近はてブのホッテントリにも上がった、ポール・グレアムの「ラーメン代稼ぎ」(http://d.hatena.ne.jp/lionfan/20090728#1248806416)に通じるものがあるなと思った。
講義の終わりに、青木先生が「中本さんのような事は、誰にでもできる事ではない」と出席者に釘をさしてたのが印象深いです。
はてなダイアリー再開
何年かプライベートモードで放置してた「はてなダイアリー」を再開。
日記以外の何者でもない過去の文章は全部削除しリニューアル。