Kinopyo Blog

プログラマとしてRuby, Rails, iPhone, iPad,Macなどなどと向き合う日々のログポース

Archive for the ‘日記’ Category

2012年の目標

2012年01月01日

Nettus+の記事:10 New Year’s Resolutions Every Web Developer Should Makeがとても素晴らしかったので、それに乗って2012の目標をできるだけ数字化で評価しやすいように設定しようと思います。

1 – Learn a New Language, Framework, Or Methodology

Node.jsとNode.jsで何の問題を解決するのが一番得意なのか?を知りたい。

「Node.jsは何の問題を解決したの」ってNode.jsを勉強した友達に聞いたら、「front-endのエンジニアは昔client sideのことしか出来なかったのを、今はserver sideの実装もできるようになった、と転職活動でもっと有利になった」みたいなジョークで返しました。。。

今まで言語を学ぶプロセスとは違う手法で、文法などを勉強する前に先にこれを一番知りたいです。

言語自体はRubyがもっと好きですし、今まで簡単なプロトタイプなどはSinatraでも十分対応できました。もしNode.jsの使い道が自分の趣味などに合わなければ途中、あるいは真っ先に捨てるのも全然あり。

2 – Get Better At What You Know

下記のスキルの熟練度をあげて、普段の仕事の中でもうapiなど参照しなくてもできるくらい

  • Ruby(Metaprogrammingあたり)
  • Rails
  • Sinatra
  • Heroku
  • MongoDB(MongoMapper)
  • TextMate 2

仕事でも環境が整った上、これくらい出来なくちゃ!

全部頭で覚えられるはベストですが、DRYの観点からTextMate(2)を工夫してSnippet作ったりして効率にするのもありです。

3 – Explore a New Field

iOS Developmentで簡単なアプリをひとつ公開する

昔作ってた経験もあるし、このまま放棄するのは悔しいというかもったいないかなと思います。iOS 4からはほとんど触ってないのでキャッチアップしたいです!

いつも同じことをやるのにRubyだと一行でできるのがiOSでは数行の見苦しいコードになっちゃうことに抵抗があって、なかなかモチベーションが湧いてこないですが、会社の人が2時間で相当完成度の高いプロトタイプが作れたことにびっくりしてやっぱ熟練度を上げればそこまでWeb開発と差はないでしょうね。

4 – Engage the Community

あえて目標は設定しません。

オープンソースへの貢献という話に私見ですが、「貢献するために貢献する」ことには抵抗があります。私は自分が使ってるうちに気づいたことは自分で改善しそれを作者さんにフィードバックしたいのですが、それを数字化で「10件のPull Requestを送る」とかはあまり意味ないと思います。「今年は恋をする!」ではなく、「縁で知り合って気に入った子と深く付き合いたい、その気持ちを伝えたい」マインドセットで進みます。

5 – Teach Others

人に何を教えるかまだ半信半疑ですが、以下の2つはチャンスがあればもっと人に伝えたいです。

  • 料理は社会問題、料理で世界を変える
  • Lean Startupの手法で、自分/人類の無駄なエナージーを減らす

6 – Take Better Care Of Yourself

数年前より体がだいぶ鈍くなったし、あんまり働いてないのに、いっぱい寝たのに疲れが回復しないのがどうも気に入らないです。そのためにちゃんと体を鍛えたいです!

  • 10時以降に起きるのを年間休日の10回以内に
  • 夜1時以降寝るのを週一回のペースに、3ヶ月実施して問題なければ12時前に寝ることに。
  • トータルで144 km走る(2週間で3回走る x 1回で2km = 1ヶ月で 12km, 12 x 12 = 144km)
  • 一回くらい10km走る
  • 自転車通勤(Optional)

7 – Manage Your Time Better

まだどう実施するかノープランですが、とりあえずは:

  • 朝の時間をもっと利用したい
  • 家での集中時間を増やしたい

どう実施するかはまた後で考えます。

8 – Use Better Programming Practices

これは言うまでもないものなのでpass

9 – Generate Passive Income

  • 2ヶ月で一つのプロダクトをリリースし検証する

Start-ups Don’t Starve, They Drown.

のようにideaは今までもうものたくさんある中、作りっぱなしにしたか、放棄状態にしたのはもったいない!2ヶ月のスパンではいろいろ試せると思って、年に6つのideaを試せるからね!

2011年はブログのAdSenseで何とか給料以外の収入は得たものの、金額が少なすぎてまだ言えるほどのものではないです。でも儲かるのは目的ではなくて、それなりの価値を提供すればそれなりのフィードバックはあるはずなので、まだ価値があるものを作れていないことです。

またドメインとかサーバ、Herokuなどにもっと大胆に投資してもいいよって自分に言いたいです。

10 – Take a Break

  • 週に3回は料理する、週末は豪華なやつを作る!(cook.kinopyo.comの料理専用ブログを作る!)
  • StarCraft2でMaster Leagueを目標に進出!

採用観点から見たいいブログとは

この間仕事の関係でたくさんの技術者のブログを見たことがあって、自見ですが、採用の観点から見たときにどういうブログがよかったのか、正確に言うと採用に欲しい情報が探しやすいのかを整理したいと思いいます。

私自身はエンジニアで採用関連の仕事はほとんど未経験なので、プロの意見ではなく、あくまで自分が仕事の中で感じたことを書いただけです。ご参考までに。

レイアウト

ブログにアクセスしたときは私はまず「About」ページを見つけようとしました。実際の記事とかサイドバーの内容とかよりも、一般的には「About」ページでより詳しい、採用観点からの欲しい情報が得られるからです。なのでこの「自己紹介」のページへのリンクが見やすいかどうかが重要だと思います。

下にスクロールせずに見られる場所、例えばトップのタブバーとかにあれば助かります。

Aboutページ

多分ブロガーは誰もがこのAboutページを持っていると思いますが、「誰に向けて発信しているか?」が明確でないとなかなかいい文章にはならないと思います。

私も今まで自分のAboutページを本当適当に書いていて、「どうせ誰も見てないだろう」と思ってずっと更新すらしなかったですが、今回の仕事でわかったのが「採用/転職のチャンスを見逃したかも」ってことです。準備すらしなければ、実際チャンスにめぐり合った時もそのまま捕まえることができないです。

自分のAboutページは実際Google Analyticsで見たときはちょこちょこクリック率があることはわかってますが、本当に手抜き状態にしたまま。。too lazyですね!

Aboutページで必要な情報

ではこのAboutページで一体どんな情報があればいいのか?

  • 簡単な自己紹介
  • 言語(できれば英語版のも欲しい)
  • 今の居場所(意外と重要)
  • スキル
  • 今までの作品や成果、オープンソースへの貢献など
  • どういうことに興味があるか?どんなものが作りたいのか?
  • ソーシャルアカウント(Linkedin, Twitter, Github)
  • 連絡先(メールアドレス)

自分の母国語以外に英語バージョンのも用意して欲しいですね。グローバル採用の流れで、本人も世界を目指すならばできれば絶対英語をオススメします。記事はまだ母国語でもいいですが。

Linkedinへのリンクがあれば一番助かります。

Githubでは持っているリポジトリ(Forkしたのも大丈夫)でどんな分野の技術に興味が有るのかをチェックして、フォローされた数も参考にしました。

Facebookは逆にあっても全然チェックする気がないです。

今の居場所は実際にFace to Faceで話したい時に会える距離であるかの参考になります。

ブログ記事については

ブログ記事は一個一個チェックしないですが、あまりにも更新がない(年に3〜4回とか)ブログは「あれ?放棄状態?」な心配がありそこの情報が信用できるかが疑われます。

オススメトール

http://about.meのサイトがありますが、ブログのAboutページをこれにしてもいいと思います。見た目が綺麗ですし、ソーシャルアカウントへのリンクも簡単に付けられて書く側も見る側も楽です。

さて、この記事を読んで自分のブログを見直したい方はいらっしゃるのかな?

How COOKPAD changed me

2011年12月20日

Presentation

Resources(おすすめの本とプレゼン)


楽天、アマゾン、Yahooなどを一括検索できるサイト

2011年11月14日

iPhone水没記、液晶交換で復活

2011年06月18日

一ヶ月前の話ですが、iPhoneをお風呂に落としてしまいました。。。2、3秒くらいですかね。

液晶が点灯しなかったものの、まだ生きてます。

急いで電源を切りました。スワイプのジェスチャーがなかなか効かないので何回かやったんです。

そこでググってみてこんな措置をとりました。

  • 本体は振ってはいけない
  • ドライヤーで乾かす
  • 米に埋める(乾燥剤がなかった)
  • 乾燥剤とiPhoneをジップロックに入れて待つ!
  • 毎晩一回起動して様子を観察

それで、ほぼ4-5日経って特に変わりがなかったです。

(まだ液晶が点灯しない、バッテリとかその他は問題ない)

画面が暗いまま1週間使い続けてもう待てないと思って

ソフトバンクの店舗にいって正直に言いました。

思ったとおり検査で水没のセンサは反応あり、

修理はできず22,800¥で交換するしかないと言われました。

そんな時にTwitterスマートフォンドクター新宿店から連絡がきましたので、

お店にいって液晶だけ交換することにしました。

その場でTwitterでつぶやけばツイッター割があります。

合わせて8,800¥でした。ありがとうございました。

今まで問題なく使いました。大事にしないと。。

会社近くの公園の子猫

2011年05月25日

Evernote,Twitterとブログ

2011年04月22日

Evernote使い始めたのは結構前ですが、ちゃんとノートブックを整理してライフログ始めたのはまだこの二ヶ月の話です。

それからなかなかブログ更新するきっかけが少なくなりましたね。ただ教訓としてメモするのは基本Evernoteに蓄積してるし、普段思いついたものやストレス、情報共有とかは随時Twitterにつぶやくようになりました。

まあ、Evernote書いたメモって共有する価値はあるといえばありますが、何だかんだ重複作業になるような気がして抑えてはいます。またEvernoteって、基本自分向けなので気軽に書けるメリットもありますし、仕事が忙しくなったら本当にEvernoteに書くのも精一杯になりますからね。

と言ってもブログ書かないのは、それなりのインプットがないことと思いますよ。この業界で働いているなら、絶対これだけたみんなに伝えたいくらいの出来事はあるでしょうと思います。自分と同じような誤りや遠回しは避けて欲しいぐらい。

そういう意味ではちゃんと反省しないといけないと思いますよ、ここ最近の仕事とプライベートを。ただ疲れたを言い訳にしてないか、あるいは勉強不足でインプットが足りないかって。

酒飲んで調子に乗っていろいろ書いたけど、本当反省&改善したい。

最後に、

この記事もiPhone FastEverって書いてます。いや〜本当に便利!チェックなしで発信!

今週(10/18~10/24)新たに知ったもの

2010年10月25日

終電検索

いつもYahooで終電を検索するんですが、それがアテにならないことが分かりました。

終電検索で深夜1時とか出発でただ乗換が多かったのを見てとりあえず帰れるって安心したんですが、あとで見ると実は二日目の朝4~5時の電車となってしまいました。時間を全部チェックしてなかったのが自分のミスでしたが、、、検索アルゴリズムを改善する必要があると思います。

ブレスト

ブレインストーミングのこと。

ブレインストーミング(Brainstorming)とはアレックス・F・オズボーンによって考案された会議方式のひとつ。集団思考とも訳される。集団発想法、ブレインストーミング法(BS法)、ブレスト、課題抽出ともいう。1941年に良いアイデアを生み出す状態の解析が行われた後、1953年に発行した著書「Applied Imagination」の中で会議方式の名称として使用された。

http://ja.wikipedia.org/wiki/ブレインストーミング

rsync

rsync is a file transfer program for Unix systems. rsync uses the “rsync algorithm” which provides a very fast method for bringing remote files into sync. It does this by sending just the differences in the files across the link, without requiring that both sets of files are present at one of the ends of the link beforehand.

Some features of rsync include

  • can update whole directory trees and filesystems
  • optionally preserves symbolic links, hard links, file ownership, permissions, devices and times
  • requires no special privileges to install
  • internal pipelining reduces latency for multiple files
  • can use rsh, ssh or direct sockets as the transport
  • supports anonymous rsync which is ideal for mirroring

http://www.samba.org/rsync/

cron

Cron is a time-based job scheduler in Unix-like computer operating systems. The name cron comes from the word “chronos”, Greek for “time”. Cron enables users to schedule jobs (commands or shell scripts) to run periodically at certain times or dates. It is commonly used to automate system maintenance or administration, though its general-purpose nature means that it can be used for other purposes, such as connecting to the Internet and downloading email.[1]

http://en.wikipedia.org/wiki/Cron

redcar

結構使えそう。

  • Cross platform: OS X, Linux, Windows.
  • Syntax highlighting for many languages
  • Snippets for many languages
  • TextMate Theme support
  • Split panes
  • Block typing
  • Soft tabs
  • Optional line numbers
  • Bracket and quote matching
  • Automatic indentation for many languages
  • Directory tree pane (not yet a full project view)
  • Extend with Ruby
  • My Plugin – example plugin to start playing with editing for yourself
  • Bulk Rename files and directories
  • Source Control integration for Subversion and Git
  • Build System support via Runnables

http://redcareditor.com/

MagicMouseを買いました

2010年02月16日

マルチタッチがサポートされているマジックマウス、

ついに購入しました。

今のところはまだクリックとスクロールだけデフォルトで使えますが、

そのうちフルパワーを発揮したいと思います。


マルチタッチ以外でBluetoothが使えるのも私にとって大きなポイントです。

今はACアダブタ以外にMacに接続する線などがなくなり

整然とした感じです。

ちなみにクリーニングも大変便利になりそうです。

毛が立ってない布を使って表面を掃除できます。


あとはゲームでもマルチタッチが使えるなら最高。。。

以下写真を御覧下さい。

最近のIT業界動向

2009年11月26日

専門家ではないので記事のテーマがちょっとでかすぎるかもしれませんが、

最近気になったニュースをベースにざっと述べようと思います。

2010年注目の資格、一位が仮想化技術

これは@ITの記事による結果です。

仮想化といえばVMWareくらいは知ってますけど、

Mac上でWindowsのアプリをたまたま実行する時に使ってました。

「運用コスト削減のためのサーバ統合やクラウドの活用」などのことにどう繋いでいるのか全然イメージできません。。。

少し興味はあるんで、後で勉強しとこう。

関連の資格は以下のようです。

  • ヴイエムウェアの「VCP」(VMware Certified Professional)
  • マイクロソフトの「Hyper-V仮想化検定」「MCP」(Microsoft Certification Program)
  • シトリックスの「CCEA」(Citrix XenServerのCitrix Certified Enterprise Administrator)

クラウド

このキーワードもITユースから頻繁に出てきますが、

どのようにプログラマのキャリアに影響するか、

知りたいですね。

JDK 7 Milestone 5 build

Java7のニュースはずっと聞いてたんですが、

なかなか使ってみる時間がないですね。

今日雑誌でちらっと読んだのですが、

モジュール化、多言語の対応などの機能が追加されたそうです。

特にモジュールのサポートは「JAR HELL」(Jarの地獄)から救う有力な機能だそうです。これからクラスパスなど特に気にしなくてモジュール単位になりますと。

またコレクション周りの使い方も強化されましたね。

実は一番気に入ったのがswitch文がやっとString文字列をサポートしたことです。

今までJavaのswtich文があんまり使えないなと何となく感じましたが、

Java7になるとやっと文字列できましたね!

String s = "...";
switch (s) {
case "quux":
	processQuux(s);
	// fall-through
case "foo":
case "bar":
	processFooOrBar(s);
	break;
case "baz":
	processBaz(s);
	// fall-through
default:
	processDefault(s);
	break;
}

In the end..

ということでIT業界どんどん進化していきます。

Java7,,,やってみたいっす!