Diary-nagataka-シリコンバレーで働きたい!という夢への日々

外資ITで働くエンジニアが趣味や日々の事など書いてます(技術の話は別ブログ http://wanna-be-geek.seesaa.net/ )

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告
  3. このエントリーを含むはてなブックマーク

MITのCS6.001、schemeからpythonへ

どうも、風呂上がりにRSSをチェック中のながたかです。

MITの名物授業CS6.001といえば、あのschemeですよね!

教科書がwebに公開されているため、以前ワタシは研究室で自主ゼミをやっていた事がありました
http://mitpress.mit.edu/sicp/
(あれ、なんだかグダグダになった気が...リーダーシップが無くてスミマセンw)

その当時ブログにも書いてますね
http://nagataka.blog50.fc2.com/blog-entry-171.html


まぁ、関数型言語を崇拝しておられる(笑)方々がネット上には沢山おられるようで、それを見た俺は興味を持ったわけです、なんだかんだで結構楽しかったかも♪

ところで、そんな6.001なんですが、某ブログで知ったのですが、この度、言語がschemeからpythonに変ったそうです!

なんと!

ちょっと検索してみたら、何やらSussman氏のスピーチを聞いた人が記憶を頼りに内容をブログにupされていた

なので、ちょいと英語の特訓ついでにコイツをザッと訳してみる事にしましたw
(意訳してるトコロは勘弁。そして、普段あまり日本語に訳すという作業をしないため読みづらい日本語になってます...と、予め言い訳をしておくw)

When we conceived of scheme in the 1970’s, programming was a very different exercise than it is now. Then, what generaly happened was a programmer would think for a really long time, and then write just a little bit of code, and in practical terms, programming involved assembling many very small pieces into a larger whole that had aggregate (did he say ‘emergent’?) behaviour. It was a much simpler time.


1970年に私達がschemeを思いついたとき、プログラミングは今とはかなり違うものだった。その当時、一般的に行われていた事というのは、プログラマがかなりの長時間にわたり考え、そして、少しのコードを書くということだった。実際的な言い方をするなら、プログラミングというのは、多くの細かなピースを大きな一つのプログラムへとまとめる行為だった。とても単純だった頃だ。


Critically, this is the world for which scheme was originally designed. Building larger programs out of a group of very small, understandable pieces is what things like recursion and functional programming are built for.


これは、schemeが最初にデザインされた当時の話しだ。とても小さなピースから大きなプログラムを作るために、例えば再帰とか関数型プログラミングが作られた。

The world isn’t like that anymore. At some point along the way (he may have referred to the 1990’s specifically), the systems that were being built and the libraries and components that one had available to build systems were so large, that it was impossible for any one programmer to be aware of all of the individual pieces, never mind understand them. For example, the engineer that designs a chip, which now have hundreds of pins generally doesn’t talk to the fellow who’s building a mobile phone user interface.


世界はもはやそのような状態ではない。ここに至るまでのいくつかの時点において、作られたシステムや、システムを作るために利用可能なライブラリやコンポーネントはあまりに大きく、一人のプログラマにとって、全てのピースを気にかけるのはもはや不可能だ。例えば、チップ(現在においては数百本ものピンを有している)をデザインするエンジニアはふつう携帯電話のユーザーインターフェイスを作るエンジニアの事は話さない。

The fundamental difference is that programming today is all about doing science on the parts you have to work with. That means looking at reams and reams of man pages and determining that POSIX does this thing, but Windows does this other thing, and patching together the disparate parts to make a usable whole.


根本的な違いは、今日のプログラミングは、あなたが関わらなくてはならない事柄に関するすべてについて科学しなければならないという事だ。それは、果てしなく膨大な文書やマニュアルに目を通し、
(...よくわかんない...w)
それらを、一つの利用可能なものいまとめる事を意味する。

Beyond that, the world is messier in general. There’s massive amounts of data floating around, and the kinds of problems that we’re trying to solve are much sloppier, and the solutions a lot less discrete than they used to be.


その上、世界はグチャグチャだ。そこら中に膨大な量のデータがあり、私達が解決しようとしている問題はもうメチャクチャで(かなりの意訳w)、解決策は、以前よりもかなりdiscreteでない。

Robotics is a primary example of the combination of these two factors. Robots are magnificently complicated and messy, with physical parts in the physical world. It doesn’t just move forward along the ground linearly and without interruption: the wheels will slip on the ground, the thing will get knocked over, etc.


ロボティクスはこれらの二つの要素の初歩的な例だ。ロボットは、実際の"モノ"を伴いかなり複雑でゴチャゴチャしている。ロボットは、ただ前に一直線に進むだけじゃない。

This is a very different world, and we decided that we should adjust our curriculum to account for that. So, a committee (here, Prof. Sussman peaked his hands over his head, which I interpreted to indicated pointy-headedness) got together and decided that python was the most appropriate choice for future undergraduate education. Why did they choose python? Who knows, it’s probably because python has a good standard library for interacting with the robot.


全く別の世界だ。なので、私達は、我々のカリキュラムをこれらに適合させる事を決めた。委員会が結成され、pythonが最も学部生の授業にふさわしいと決めたのだ。何故彼らはpythonにしたのか?知らないが、たぶん、pythonはロボットと相互に作用するための良い標準ライブラリを備えていたのではないか。



以上、間違い結構あると思うので、指摘してください~
ってか、ちとこの訳は酷いなw時間を見つけてちゃんと読んで訳し直さないと恥ずかしいカモ...訳が悪いとここまで文意が掴みずらいもんかw


まぁ、原文を読んでください。。

ともあれ、あの強烈に胡散臭い表紙のSICPの教科書はこれからも古典として語り継がれ、そして一部の熱烈なファンはこれからもLispをあがめ続けるのでしょうw

けど、pythonってホント人気なんだなぁ。

言語の差を語れる程の力は無いのでよくわかりませんが。
可読性が良い、か。。
まぁ、そのうち機会を見つけてちゃんと触ってみたいな。



では、最近はバイトでよく使う機会があるため、今さらperlが好きになりつつあるながたかでした~
また明日も頑張りましょう^^
スポンサーサイト
  1. 2009/09/30(水) 02:16:50|
  2. SICP
  3. | トラックバック:0
  4. | コメント:0
  5. このエントリーを含むはてなブックマーク

日本語が亡びるとき

どうも、ついさっきMac Book touchとかいうドスゲェ物をネットで知り、少々戸惑っているながたかです(笑)

http://www.gizmodo.jp/2009/09/macbook_touch.html

あんまり用途が思いつかないな、これw

けど、俺みたいな凡人では思いつかない便利な用途や、これを最大限活かしたガジェットを創りだすクリエイティビティを持った人達がきっと盛り上げて行くのでしょう。

まぁ、Apple自身による発表を待ちましょう。



ところで、さっき、なんでだかわからないけど、フと以前読んだ「日本語が亡びるとき」の事を思い出した。




なんでだろう、よくわからないけど...

この本、一時期かなり話題になっていましたよね、たしか梅田さんと彈さんがブログで紹介していて、それを見たワタシは何も考えずにAmazonで注文して購入した記憶があります(笑)

母国語で読み、母国語で書く事が出来る。そんな事は当たり前だと思っていたのですが、それは自分が日本人だからなんだなぁ、と考えさせられた記憶があります。それは幸運な事なのだと。


英語が普遍語、地球語と言えそうなくらい(特にビジネスだとね)広く使われているというのは、もう以前から言われていますよね。

「英語公用語論」みたいな、流石に偏ってるような印象を受ける意見も色々と存在するみたいですが、まぁそこまでではないですけど、以前から「英語英語!」という風潮ではあったし、やっぱり、自分達も無意識にそういう風に思っていた所があります。

語学→「とりあえず英語」みたいな風になるのは、やはりそれだけ「英語が出来れば世界と繋がれる」という事があるからかと。


インターネットという技術と、その普及に伴って、自分の言葉を世界に届かせるツールの一翼を担うのが英語ですね。


この本で言う所の非対称性故に、この英語の世紀にこれから社会に出てビジネスをしていく自分としては、たまに「英語ネイティブな国に生まれていれば英語を勉強する時間と労力を別の事にまわせるのになぁ」という、考えてもしょうがない事を考えてしまいがちですが、そこはもうどうしようもないので、日本に生まれたからこその強みみたいな物を探して行けたらいいですね。

今ここで具体的に上げられないのがもどかしいですが。。


100年後くらいに、「実用語としての英語」、「教養としての日本語」みたいになっていないといいのですが。。

「世界第二位の経済大国」の座を間もなく失うのも、日本語を学ぶ理由が減る一因ですよね。

まぁいいや、こういう、色んな所で議論され尽くしたような事を、素人がゴチャゴチャ言っていてもしょうがないので。


なんとなく思ったのですが、なんていうか、日本語って、デジタルと相性が悪いですよね?

現に、日本語はマルチバイトだからデータ量多いし...その筋の専門の人からしたら「そんなの大昔から言われている」とか言われてしまうのかな?まぁとにかく。

英語って、シンプルなアルファベットという基本要素たかだか26種類の組み合わせで作られているわけです。

けど、日本語って、漢字っていう基本要素がそもそも複雑な上、こいつらが膨大な種類存在して、さらにその組み合わせから成る単語も膨大にあるってんじゃ、これは厳しい。。

デジタルと親和性が高いのは、やっぱりシンプルな基本要素の組み合わせから成る英語の方でしょうね。

これはまぁ学ぶ側からしても、敷居が高く感じる原因ですしね。。
ワタシ、サイキン カンジガ カケマセン...PCノ ヘンカンニ スベテ イゾン デス


上記は、将来的に最強の経済大国になるであろう中国の中国語が、英語みたいな地位につけるのかというと、ちょっとハテナだなと思う理由でもあります。


さぁ、だんだん何が言いたいのかわからなくなってきましたw
ゴールを決めて書き始めないと文が落ち着かない(笑)

まぁ、考えた事をこうやってただひたすらにタイプしていくのはこれはこれで楽しいからいいんです♪読む方は疲れるかもだけど(そもそも、途中で読むのを止められてしまうかも T.T )

とりあえず、このデジタルな世紀に、日本語の力って益々弱くなっていくのかなぁ、なんて思った次第です。
ま、なんか気持ち悪いけどココらでこのエントリーは止めます(笑)
とりあえず、英語の勉強頑張りま~す!w


では、また明日も頑張っていきましょう^^
  1. 2009/09/29(火) 02:35:31|
  2. | トラックバック:0
  3. | コメント:1
  4. このエントリーを含むはてなブックマーク

復習など

どうも、先日メイドカフェを初体験してきたながたかです(笑)

カリフォルニアの学校で一緒だったイタリア人が日本に遊びに来ているという事で、彼をメイドカフェに連れて行こうという計画に誘われて一緒に行ってきました~!
連れて行くといいつつ、こちらも皆初体験なので、みんなでキョロキョロw

いやぁ、不思議な世界...そのイタリア人は「Strange!」って言ってました(笑)そりゃそう思うわな...

メイドカフェ→バッティングセンター→飲み、と、楽しかったです♪誘ってくれてThanx^^

まぁコチラは機会があればまた別のエントリーにするとします(するかな?w)



ところで、普段、バイト中に分からない事が出てきたら検索して調べます。
そして、調べた事や、参考になったサイトをメモ帳かなんかに適当に貼付けておきます。
ウチのバイト先ではグループウェアを用いているので、その自分のページへログインして、退社前にその日1日のメモを保存していくのですが、「復習しよう!」と思っていても、中々帰宅してからは疲れているために出来ずに溜まっていました。。
ちょっと今日は時間が取れたので、先月分の物をいくつかざっとおさらいしてみる。


■viのコマンドやら設定ファイルやら
http://tonetsutomu.com/tone/linux/Reference/Vi/ViReference1.htm
バイト先でよくvimをいじるのですが、こういったTipsを知っているのと知らないのとでは大分生産性に差がつきますね。

自分は、研究室で少し触った事がある程度だったので、このリファレンスにはかなり助けられました。検索とか置換とか、yyとかddとか、もう多用しまくってます!
最近ではもうvimが好きになっていて、バイトを始めた当時に比べて大分操作が早く、かつコマンドを頻発するワタシの姿を見た社員さんから「ながたかくんがいつの間にかvierになってるw」と言われてます(笑)
まだ使った事無いコマンドが沢山あるので、これからも色々と発見に来してます♪

ちなみに、viの設定(色付けなど)は、ホームの下に.vimrcというファイルを作り、そこへ syntax on という文言を加えてやればOK
ついでに、set nu(mber)とすれば行数を表示させられる。
$cd ~
$vim .vimrc

1 set number
2 syntax on

設定ファイルの方も、もっともっと調べて充実させていきたい!


■正規表現超基礎
MTAの設定を書き換えなければならず、そこでメールにフィルタをかける際に正規表現を用いなければなりませんでした。
漠然と.と\と*辺りは知っていましたが、複雑になるともう何がなんだか...初めは、社員さんが書いたと思われるコードを解読するのに数分を要しました(笑)
以下最も基礎的な事で、自分が必要で調べたものたち

. : とにかくなんでもいい1文字
\ : エスケープ
  ⇒例えば、"Test.log"を検索したい場合にはTest\.logとしないといけない。
^ : 行の先頭を意味する
$ : 行の終わりを意味する

例文1 ありがとうございます : "^ありがとう"でマッチ
例文2 どうもありがとう   : "ありがとう$"でマッチ
* : 直前の文字が0個以上
+ : 直前の文字が1個以上
? : 直前の文字が0 or 1個
[] : 指定した文字のどれか
※[ ]の中で ^ が使用された場合は、行の先頭を表す ^ とは意味が異なる
   指定した文字「以外」という意味になる ⇒ [^0-9] : 数字以外という意味に

知っていると役に立ちそうなので、コチラの書籍で勉強したい!今度図書館で借りよう






あと、DNSに関する事をガチャガチャいじらなければならなくなった事もあった。
全く意味がわからず、最初は1時間くらいずっとDNSの役割やらBINDの設定ファイルの勉強をしてました(笑 ゴメンなさい。。)
こういう時、むかしむかし資格試験のためだけに頭に入れた知識の虚しさったらないですね(笑)
「DNS、エットぉ、ドメイン ネーム システムだから、ドメインとホスト名を対応づけるやつだよね!」
...
資格の試験であれば、コレで正解、十分。けど、実務となると、「だからどうした」ですw
何も出来ない、オレw

もちろん、資格っていうとっかかりが無ければ、「DNS?なにそれおいしいの?」なわけで、資格を否定しているわけではないですよ!

まぁとにかく、なんとか乗り切った(?)ものの、これは勉強しなくては!と思い、たまたま社員さんがキャッチーな本を持っているという事で借りたのがコチラ




実はコレ、後で気づいたのですが、自分がCCNAの勉強をしていた際によく見ていたサイト様が書籍かされた物のDNS版でした!

いやぁ、どうりでなんだか見覚えが...w
けど、とても読み易くかつ分かり易い本でした^^

前半はネットワークの基礎的な話しも載っているので、基礎を復習してから読み進める事が出来て良かったです♪なにせ、CCNAの勉強で色々とネットワークの基礎を学んでいたのはもう1年も前ですから...


あぁ、全部復習してやるって思ったけど、なんだか疲れたのでこの辺で(笑)

では、また新しい一週間、頑張って行きましょう!!
  1. 2009/09/28(月) 03:26:22|
  2. サーバ
  3. | トラックバック:0
  4. | コメント:0
  5. このエントリーを含むはてなブックマーク

株主総会招集ご通知

現在、三社の株式を所有しています。

先日、そのうちの国内ITベンダの某社から株主総会の招待状が送られてきました!

お~去年の11月に株を始めてから、こういうの初めてです!

という事は、俺の名前が株主名簿に載ったって事ですね、なんだかオモシロい気分です(笑)

この会社は、個人的にちょっと好きで応援したいので、値ごろ感がある株価だったので購入しました。
長期で持つつもりです。

現在含み益が出ているんですが、これで配当も受け取れるわけです^^

やった~初配当収入です♪

利回りはかなり低いのですが(笑)初めての事なので嬉しいです!それに、いくら利回りが低いとはいえ、それでも同じ金額を銀行に預けていたら何年もかかる額だからなぁ...(利率低過ぎだよメガバン!!)

で、残念ながら株主総会には行けなそうなワタシですが、これからもこの会社には頑張ってもらいたいものです。

ところで、今まで決算情報とか、IR系の情報とか、企業のHPに載っているのは知っていましたがあまりしっかりと見た事は無かったんですね。
せいぜい売上高の推移の棒グラフをちょっと眺めた程度です。

けど、この株主総会の通知の冊子にバランスシートを初めかなり詳しい諸々の事柄が記載されていたので、ザッと目を通してみたのですが、これがかなり興味深い!

以前ちょこっと簿記をかじった事がある程度なので、詳しくは語れませんが、「お、この項目は何だろう?」とか、「おぉ、こんなトコロでも収益出してるんだ~」とか、さらに「へぇ、こんなトコが○○%もココの株式持ってるんだ!」とか、色々とオモシロそうです。

これは時間を見つけてちょっと詳しく眺めてみたいなと思いました!


さて、今日は相場全体が大きく下げましたね、いくつか狙っている銘柄があるので、資金がたまるまでもうちょっとこのままの株価でいて欲しいものです(不謹慎ですが...そう思ってる投資家多いでしょ!?w)


  1. 2009/09/15(火) 01:38:30|
  2. 資産運用
  3. | トラックバック:0
  4. | コメント:0
  5. このエントリーを含むはてなブックマーク

アウトドアな最近

昨日は学科の友人達と群馬の水上という所までラフティングをしに行ってきました!

ラフティング...最初に聞いた時は「なんじゃそれ?」って感じでしたが、ゴムボートに乗って、川を下ってきましたよ!

7時に東京を出発し、11時頃に現地到着、そしてウェットスーツに着替え、ライフジャケットを装着、川へ向かいました。

いやぁ、メッチャ楽しかったわ♪

初体験の人間にとっては結構川の流れが激しくて「おぉ!」ってビックりする場面もあったりでスリリングでした。

ちなみに、5-6月はもっと水の量が多くて流れも激しいんだとか!

途中ボートから川に降りてちょっと泳いだり、高さ5メートルくらい(?)の岩場からジャンプしたりもして、かなり楽しめました^^

その後はBBQ→温泉と回り現地を出発、東京に戻って来たら駅近くの山頭火でラーメンを堪能し帰宅=3
グッタリでしたがかなり楽しかったです♪

コチラも先週のパラグライダーに引き続き、都内から日帰りで楽しめるし週末のレジャーにお薦めです!
ちなみに、ツアーで行ったのですが、会社はコチラの四季倶楽部様を利用させていただきました。
http://www.shikiclub.co.jp/others/rafting/rafting_tour.html
興味がある人は是非!


最近妙にアウトドアと縁があったためか、もっと色々とやってみたいなと思っています。

時間がある人、是非一緒に何処かアウトドアしに遊びにいきましょう!☆
  1. 2009/09/13(日) 21:00:16|
  2. 雑記
  3. | トラックバック:0
  4. | コメント:2
  5. このエントリーを含むはてなブックマーク

がつなっしゅく

先日研究室の合宿で那須へ行ってきました~^^

テニスしたり、深夜までくだらない雑談したり、リフレッシュ出来て凄く楽しかった♪

そして、この合宿のメインは、なんとパラグライダー!!(笑)

こんな感じでした↓(笑)
パラグライダー

なんか不思議な感じで...今思い出しても、なんだか「あぁ、俺飛んでたんだなぁ...」って変な気分になります(笑)

凄く楽しくて、これはちょっと好きになりそう(笑)機会があればまた行きたいなと思いました☆

車で数時間で着くし、興味がある人は是非休みのレジャーに検討してみてはどうでしょう!
http://www.kids-sports.co.jp/


さて、今週末は群馬でラフティングじゃ~!!(笑)
  1. 2009/09/09(水) 03:54:46|
  2. 雑記
  3. | トラックバック:0
  4. | コメント:0
  5. このエントリーを含むはてなブックマーク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。