IT戦記

プログラミング、起業などについて書いているプログラマーのブログです😚

何それ?

結局、最近目立ついつものメンバーなのが、もう参加者の時点で食傷気味

http://b.hatena.ne.jp/TKSK/20080924#bookmark-10135194

こっちは、休日つぶして真剣に資料用意してやってんのにそりゃないわ
ひがさんから、以下のようなメールを頂いて

10/16(木)に日本Javaユーザグループでクロスコミュニティカンファレンスというイベントを行ないます。クロスコミュニティということなので、Javaにこだわらず、ギークにもこだわらず、楽しくお祭りしようよというイベントです。
詳しくはこちら。
http://d.hatena.ne.jp/higayasuo/20080818/1219038263

Java以外で、みんなに楽しんでもらえるセッションをしたいので、
ぜひ、JavaScriptについてしゃべってもらえたらと思っています。

以前、Shibuya.jsでやっていた「JavaScriptの高速化技法」の話だとか、
もう一度しゃべってもらえると、喜ぶ人がいっぱいいるのではないかと
思っています。

突然のお願いで申し訳ありませんが、暇なときに返信していただけると
幸いです。 

昔話した JavaScript の高速化の話が今の時代にそぐわないものだから、今新しく自分の高速化のやり方をそろそろまとめて発表したほうがいいかな。
と思って、めっちゃ悩んだあげく了承したのに。
そんな風に避難されるなんて悲しすぎる。
あと、正直、華があろうがなかろうが関係ない

セキュリティ&プログラミングキャンプ2025に寄せられた科学技術庁長官の祝辞

ネタです!


祝辞


この文章を読み始めた諸君、読むのをやめて目を閉じてほしい。
目を閉じたら思い出してほしい。


まだ幼い頃の君たちは、コンピュータとともにあったか。
今思い出した「当時の諸君が初めて起動したコンピュータの画面」。
それが、まぶたの裏によみがえるだろうか。


それから諸君が始めて起動したソフトウェアを思い出そう。
いつ、何歳くらいのとき、何を、どこで使っただろうか。


そのとき起動したソフトウェアは何? ゲームか、それともウェブブラウザか。
それを諸君はきっと覚えている。
思い出すことができるはずだ。だからいま、目を閉じてみよう。


たったいま、諸君が目の奥に発見したもの、それこそが「自分」だ。


これから様々な人と出会い、自分を見失うときが来るかもしれない。
その時は目をつぶるといい。
すると君たちのまぶたの裏に、自分の姿がよみがえる。


そのとき、諸君が他の友人達と違うとしたら、
必ずあのコンピュータが、あのソフトウェアが一緒によみがえることじゃないだろうか。
それに夢中になっていた、自分の姿が現れる。
そこに自分がいる。そしてその延長線上に、今の自分がいる。
昔の自分と今の自分。2つがしっかり繋がって、1本の木か竹のように感じられる。


その感覚だ。


それができるということが、諸君がハッカーになるということなのだ。


そして気づくだろう。自分はいつも、ソフトウェアとともにあったと。
一人でゲームに没頭したとき、友達と毎晩のようにチャットをしたとき。
わくわくしながら起動したソフトウェア、退屈しのぎに起動したソフトウェア。


諸君がいまソフトウェアを作れるその背後には、ソフトウェアと共に送った膨大な時間がある。
だからいま、君たちはハッカーになって、世界を変える切符を手にすることができた。


ソフトウェアによって確実に世界を変わった。
変わったけれども、その手段は変わらず「プログラミング」であり続けなければならない。
きみたちがその肩に担うのは、栄誉ばかりではない。
友達同士の友情だけでもない。
諸君らハッカーは、世界を変える崇高なる使命を帯びている。


今はプログラミング技術を鍛えるときだ。
プログラミング技術には最初、真似が必要だ。
好きなハッカーのコードを真似よう。
けれども、アイデアは借り物じゃいけない。
どっかにありそうな、誰かが思いつきそうな、アイデアではつまらない。
どんなコードを書いたらいいだろう。
その後、また目をつぶろう。このあいだの自分、半年前の自分、そこにヒントがある。
何に感動したか、何に腹が立ったか。誰が好きで、どんなやつが嫌いか。
それから親や兄弟や、友達や先生や。浮かんでくる人々の姿にヒントがある。


全国から集まったハッカー諸君。
たぶん一生ソフトウェアとともにある伊藤直也は、たぶん一番君たちに期待している一人だ。
諸君のコードが、世界を変える日を待っている。


科学技術庁長官 伊藤直也

元ネタ

セキュリティ&プログラミングキャンプ2025に寄せられた科学技術庁長官の祝辞 - YAMDAS現更新履歴
元ネタを読んでいて、どうしても僕も書きたくなって書いてみた!
id:naoya さん、将来は科学技術庁長官になってください!

キャンプで出会った中学生三人組

中学三人組の出会い

セキュリティ&プログラミングキャンプの小話。
プログラミングコースには、三人の中学生が参加していました。

この三人がこのキャンプを通じて出会い、凄く仲良くなっていました。その話を書いておきたいと思います。

id:qnighy

情報オリンピックとかにも出ていたりする実力派の id:qnighy 君。
きっと同世代のエンジニアでは、ずば抜けて実力のある彼。そんな彼も、このイベントで id:javascripter 君や id:gin5005 君に会って、学校生活では得ることの出来なかった刺激を感じることができたようです。
「このイベントで、一生付き合っていけそうな親友(ライバル)を見つけた」
という彼の台詞が印象的でした。

id:javascripter

JavaScript 界隈では結構有名なブロガーの id:javascripter 君。
彼は、すご腕の JavaScripter なのですが C 言語など JavaScript 以外のプログラミング言語は初めてだったらしく、とても楽しそうにいろいろと発見しながらコードを書いていました。
何か新しいことを学ぶ度に「へー!そうなんだ!」「へー!そうなんだ!」という彼の台詞が印象的でした。

id:gin5005

id:gin5005 君は、このキャンプで初めてプログラミングを書いたのですが、このハードな講義内容にちゃんと食らいついてきていました。
分からないことを、ちゃんと率直に質問してくれるのが彼の素晴らしいところですね。


amachang「じゃあ、サーバ立ち上げて見るよ。ps x で確認してみて」
gin5005「ps x って何ですか」
amachang「プロセスの一覧を見る方法だよ。パソコンの中で動いているプログラムの一覧が見られるんだよ」
gin5005「じゃあ、ブラウザとか立ち上げたら見えるかな」
amachang「試してみて」
gin5005「本当だ!見えてる!」
(ちゃんと、ノートに ps コマンドの使い方をメモする gin5005 君)
このように、彼は分からないことを聞いてどんどん知識を吸収していました。

グループ実習で深まる絆

グループ実習では、この三人が組んで「Comet で対戦できるテトリス」を作っていたのですが。
その中でいっそう三人の絆は深まっていったようです。
「なんか、三人のはてなグループ作ろうぜー」とか言ってて、ニヤニヤが止まりませんでしたよ。

まとめ

このイベントで出会ってしまった若き三人組。
彼らは間違いなく数年後 IT 業界を引っ張って行く人材になっていくことでしょう。
そして、その三人の成長記録は、はてなダイアリーに残され、その後に続く更に若いエンジニア達のロールモデルになっていくのではないでしょうか。本当に素晴らしいですね!
これからも、この三人組の動向は要チェックです!

若者に一度だけ与えられる出会いの場、セキュリティ&プログラミングキャンプ

はじめに

2008 年 8 月 13 日 〜 17 日まで、講師としてセキュリティ&プログラミングキャンプ 2008 に参加させていただきました。

セキュリティ&プログラミングキャンプって何?

セキュリティキャンププログラミングキャンプとは、 2004 年から始まった「若くて優秀なセキュリティ人材やプログラマーを育てちゃおうよ!」というイベントです。
キャンプの名のとおり 5 日間キャンプ形式で行わます。そして、毎日 8:00 〜 22:00 まで講義が行われるという大変ハードでエキサイティングなイベントです。

僕が経験したキャンプ

僕がキャンプの中で経験したこと感じたことを書いておきたいと思います。

楽しさを伝えることの重要性

僕は、 JavaScript の講義を担当していたのですが、前日まで作っていた資料とは全然違う資料を使って講義を行いました。
一日目、手を動かしながら目を輝かせる受講生の顔を見て「一から教えては楽しさは伝わらない。座学ではダメなんだ。座学は楽しさを知った後でいい」と感じ、作ってきた講義資料ではダメだと感じたのです。
そして、二日目の朝までになんとか完成したのがこの講義資料でした。急に作ったものなので、まだまだ足りないところもあったと思います。でも、「作り直して本当に良かった。」本当にそう思いました。
人に「楽しさを伝える」ということは本当に難しいことですね。
資料を作り直して少しはマシになったとは言え、もっともっと「わー!すごい!動いたよ!」「おお!すげー!俺すげー!」そういう感動を伝えられたら良かったのに!
もっと感動を伝えたい!もっと楽しさを伝えたい!
(ボツにした資料も一応アップしておきます。 http://svn.coderepos.org/share/docs/amachang/20080813-procamp2008/pre.html

現場を見る知ることの重要性

三日目には、受講生全員がドワンゴという会社に職場見学に行くというイベントがありました。
僕は参加出来なかったのですが、受講生たちにとって非常に楽しい経験だったようで、帰ってきてた受講生は目がキラキラしていました。


受講生(キラキラキラーン)
amachang(ま、まぶしい><)
amachangドワンゴ楽しかったー?」
受講生「楽しかったー!」
amachang「何があったの^^?」
受講生「内緒です(・∀・)ニヤニヤ」
って感じだったので、何か変なことを教えられてないか少し心配です>< というのは冗談ですが(笑)、僕も行けば良かった><と思いました。
ドワンゴは、ケータイ、ゲーム、ニコニコ動画、と若者にとって一番身近な事業をしている IT 企業です。そこで働く技術者は、彼らにとってヒーローだったのではないでしょうか。そのヒーロー達と一緒に話せた!というのは、とても素晴らしいことだったんだろうなと思いました。
ドワンゴの皆様、本当にありがとうございました!

id:naoya さんのお話「君たちは世界を変える」

四日目には id:naoya さんこと、はてな CTO 伊藤直也さんの特別講義がありました。これは、とても感動的な講義でした。
その内容で僕が心に残っていることをまとめておきます。

  • 世界は確実に変わってきた
  • 世界を変えたもの「それは、プログラミング」
  • 今、君たちは世界を変える切符を手にしている
  • 人に会っただけで、出来るようになったと思ってはいけない
  • 人が発する言葉に流されすぎてはいけない
  • 大切なのは、自分。自分の内なる声に自覚的であれ
  • 嫉妬、僻みを解決する方法は「自分の成長」以外にはない
  • チャンスは地道な努力の結果訪れるものである
  • 正しさは自分にしか分からない、その正しさは自らの手で証明すればいい

この講義を聞いて本当に涙が出てきてしまって、「この場所では泣くもんか」とか思って我慢していたら、 id:hyoshiok さんが泣いていたので安心して泣きました(笑)そして、受講生全員、興味津々でなおやさんの話を聞いていました。
なおやさん、本当に素晴らしい講義をありがとうございました!

受講生のレベルの高さ

プログラミングコースの最後には、「何かグループで自由に何か作ってみよう!」という講義があるのですが、そこで彼らの本当の実力を見ることが出来ました。

  • テトリスにネットワーク対戦機能を付けてみました!
  • Flash とカメラで、体の動かして操作出来るテトリスを作ってみました!
  • Processing とカメラで、体の動かして操作出来るテトリスを作ってみました!
  • テトリスSDL に移植してみました!
  • 自分たちが欲しいと思う Firefox拡張機能を作ってみました!
  • ドクターマリオのようなゲームを作ってみました!
  • 3D の迷路を作ってみました!

などなど、信じられないほどの面白いソフトウェアを見せてくれました!

最後に、受講生へのお礼

君たちは本当にすごい!「年齢の割には凄い」とかではなく、本当に凄い!これからも、その凄さをどんどん伸ばして行って欲しい!
id:naoya さんの言葉を借りると、「自分の内なる声に自覚的であって欲しい」、そして、「自分の凄さを自分自身で証明していって欲しい」!
本当に本当にありがとう!キャンプに参加してくれてありがとう!色んなことを学ばせてくれてありがとう!

最後の最後に、全ての若者へ

このイベントは、若いうちに一度だけしか参加することの出来ない貴重な出会いの場です。
きっとその出会いは、あなたの人生を変えます。
このチャンスを絶対に逃さないでください!
来年は、あなたの参加を待っています!

You can change the world!

セキュリティ&プログラミングキャンプの資料に、上級者向けの章を追加しました

はじめに

けっこうレベルの高い人が混ざっていたので、いろいろと追記しました。

追記した内容一覧

  • 18 よりディープな JavaScript の世界へ
    • 18.1 関数の名前は、関数という値が入った変数名
    • 18.2 関数は、関数に渡せる
    • 18.3 オブジェクトを作ってみよう
    • 18.4 同じ特性を持ったオブジェクトを作る
    • 18.5 配列が継承しているオブジェクト
    • 18.6 オブジェクト指向
  • 19 Internet Explorer で動かすために

結論

id:javascripter は中学生なのに凄すぎる・・・!

プログラミングキャンプの講義資料を公開します

はじめに

もうすぐ講義が開始されるので、同じタイミングでここで講義資料を公開したいと思います。
JavaScript の難しいところとか、マニアックなことは一切使わずに「プログラミングの楽しさ」みたいなものを伝えられたら嬉しいです。
この資料のターゲットは、プログラミング初心者です。

注意

今日の学生の出来によって、会期中ちょこちょこ資料の内容が変わると思います。