プログラミングその他

Elm と Erlang

Elm と Erlang を使ったプログラミングを1ヶ月くらいしていました。気づけばミュータブルな変数を断って一ヶ月生活できたわけで、これは わたし史上 偉大な成果であります。ミュータブルな変数なんてイラなかったんだね!びっくりだー。そんなお仕事体験とい…

Chromebook で Chrome App のプログラミング

Chromebook を買って、はじめて真面目に Chrome OS という環境を眺めてみましたが、これはなかなか出来物ですね。現代版シンクライアントというイメージが先行していて、アプリは Webサーバー側の処理がないと動かないという印象が、なんだか強いです。が、…

続・技術的負債というメタファーについて

昨日 技術的負債というメタファというエントリーを書いたけれども、それから少し考えてみたら、間違ってたかなと思う所があったので、続編エントリーを。わたしの感覚ですと、okuさんのエントリーの「汚い方」――Smart UI と、「綺麗な方」――Layered architec…

技術的負債というメタファ

技術的負債についてはじめて知ったのは、マーチン・ファウラーの「技術的負債」というエントリーでした。技術的負債 システムに新しい機能を追加するとしよう。2つのやり方があるはずだ。ひとつは、早いけれど、ぐちゃぐちゃになるやり方(将来、変更が困難…

まさかの ANSI C 非対応

現在やっているお仕事の中で、「ホスト側」と呼ばれるコンピュータは、Linux (RHEL) とか 某UNIX とかをサポートしなければならない Cの開発だったのですが、Linux でMakeと動作の確認しながら開発していたものを、さあ 某UNIX で試そうぜ!……となった時点で…

作りながら覚えるGit (1)

濱野さんの「入門Git」を初めて読んだ時、いきなり 第二章から Git の構造の説明を始めてしまう構成に「Git入門」じゃなくて「Git入門」でしたかーっ(さすがメンテナですね)、、と思ったことを覚えています。入門Git作者: 濱野純(Junio C Hamano)出版社/メ…

モダンな箱庭 と 古典的だけどシームレスな世界

JavaBlackさんち経由、vimやEmacsを「使いこなす」なんてやっていいのは20世紀までだろ - Togetter。Software Design (ソフトウェア デザイン) 2011年 05月号 [雑誌]出版社/メーカー: 技術評論社発売日: 2011/04/18メディア: 雑誌購入: 5人 クリック: 232回…

「モデルとは何か」について、お気に入りの引用

モデルってなぁに?という疑問に、とてもスッキリした説明を与えていて凄いなぁと思ったのです。 ビム > 了解. それじゃ, 始めにルートプランのモデル化について話そうか. モデルというのは何か分かるかい? レナ > 分かるわよ. モデルってのは, 何かをまね…

魔法遣いに大切なこと

JavaBlackさんち経由、Shibu's Diary: これから魔法使い(プログラマー)になる、新卒者のみなさんへわたしは JavaBlackさんほど反感を覚えなかったのですが、それはわたしが厨二病を拗らせて慢性化させているからでしょう*1。スレイヤーズあたりを魔法の認識…

yuguiさんちが英語化?

よくわからないけれど、最近のエントリーは英語ばっかだー。Ruby Debian なアレの影響かなー。たまたまかなー。わたしは英語苦手なので、国内の凄いプログラマさんとか、みんな英語で書き出したらどうしよう・・とか思ってしまう。妄想だけど。とか弱気なこ…

そのココロのスキマに GNU Smalltalk

PS3を立ち上げるとついついハトプリを見てしまうので、一向に録画したアニメが消化できないみねこあでござます。まどかマギカはまだ一話しかみてないっしゅ...orzところで、 window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[…

本がいい?それともWebがいい?

せっかくなので JavaBlackさん つながりで。プログラマーになるには - カレーなる辛口Javaな転職日記 http://d.hatena.ne.jp/moto_maka/20101128/1290886142わたし的には、Webの(blogの)記事とかで、「もっと知りたいなら」「正確には」とハイパーリンクが貼…

プログラマになるためにはどうすればよいのでしょう?

きむら(K)さんち経由で。あの方は、毎度こういうおもしろそうなのを、どんなアンテナで拾い上げてくるのか、興味が尽きないところです。 プログラマになるにはどうすれば良いのでしょう? はじめまして、プログラマになりたい中学1年生です。将来はソフトプ…

綺麗なブラック(注:そんなものはありません)

昨日は久々に 一番最初の会社の同僚達と飲んできました。超ブラックだったこの会社は日々驚愕のエピソードを体験させてくれたので何年経っても記憶が薄れることがありません。給料日は同期みんなでマクドナルドにいって会社の愚痴をいいながらお昼を食べるの…

壁についてつれづれ

(思いついたままメモ/まだ整理していない)区画整理について、仕切られたことによる解りやすさだけでなく、しきい により守られることを期待する向きがあります。これをとりあえず「壁」と呼びます。「壁」は安全を保証するか、(実際に保証しなくても)「…

コードはリファレンスである世界

GNU Smalltalk GTK ですが、Smalltalk 側からだけ触るのでは理解が深まらないような気がするので(というか全部 c_call に飛ばされちゃって、クラスブラウザで眺めてもよくわからない)、生の GTK+ でプログラミング にちょっとだけ手を出しています。という…

IDE教育に不安を覚えること

少し前に、「IDE を使った教育は良いプログラマを育てられない」って本当?...という話題が盛り上がっていました。勿論 IDEを使うこと/使わないことは、教育の結果に決定的な影響を及ぼすわけがないのですが、確かに IDE に抱かれて育った子プログラマ達に不…

Y Combinator のお勉強

Y Combinator さんを参考に Y Combinator についてお勉強しました。中身はほとんどそのままなのですが、唯一違う所といえばコードが Schemeから Smalltalk なところくらい。丸カッコよりも角カッコが好きな人向けです(ぉ動作確認は GNU Smalltalk でやってま…

プログラミングパラダイムについて、つれづれと

Software Design 2010年6月号 にのった artonさんの 関数型言語についての記事中の、プログラミングパラダイムの分類(↓)について、Software Design 2010年6月号が面白いです - みねこあ で、 オブジェクト指向パラダイムの仲間のなかで、なんで Smalltalk …

ユニットテストの無かった頃

今のプロジェクトは納期的に少々無茶です。次のリリースはα版という位置づけなので多少のバグバグーっも構わないというのもあってか、先日「ユニットテストをきっちり書くと時間がかかるから、ある程度そこらへん端折ってね」と言われました。確かにユニット…

PythonとRubyの小ネタ

つれづれ的な何か。 Python編 昨年の超絶不景気で、わたしのかわいい後輩たちも軒並み無職になってしまったのですが、そのうちの一人の再就職がきまりました。よかった。で、聞いてみると、職が決まった勝利の鍵要因が Pythonだったそうな。わたしの個人的な…

実践デバッグ技法

新しい現場のコードは C++。それは変わらないのだけれど、以前の現場で使いまくっていたshared_ptr 無しなのですが、ヒープにメモリを動的によくとるシステムです。久々の new と delete は、腕のなまったわたしと せぐめんてーしょん・ふぉーると との素敵…

お仕事Linuxはじめました

新しい職場・新しい現場になって割り当てられたマシンは、Windows XP でメモリ 256MB と、ちょっと仕事するには難しい環境でした。C++なぞコンパイルした日には、死んでしまいます。・・というわけで日頃の開発は、VNC で Linux なサーバーに接続して行って…

Small Basic と「Goto」キーワード

彼らは,コードから goto 文を全て消し去れば,構造化プログラミングの神秘を携えたダイクストラが降り立つに違いないと信じているのかもしれない。 radiumsoftware.com をネタもとにした、Goto と カーゴカルトの雑文についた、mogiさんにコメントで教えて…

ひまわり基礎文法最速マスター

ブームも去りつつある最速マスターシリーズですが、自宅サーバをあさっていたら 2005年くらいに書いた ひまわりの紹介記事を発掘したので、これもご縁とそのままもってきてみました*1。他の言語をある程度知っている人はこれを読めば ひまわり の基礎をマス…

Logo基礎文法最速実装

結構頑張って書いた Logo基礎文法最速マスター ですが、はてな的プログラミング言語人気ランキング ですと、最下位らへんをさまよっておりまする...。おかしいな、これでLogo 人口がグングン増して、今週末はみんなしてタートルで遊んでいる プチLOGOブーム…

続・Logo基礎文法最速実装

前回は、とりあえず字句解析、構文解析、実行の一通りができるようになりました。こんなかんじ。 なかなからしくなっては来ましたが、けれど、多くの組み込みコマンド/組み込みオペレーションはまだ未実装ですし、厄介な二項演算子、to〜end での関数定義、…

Logo基礎文法最速マスター :発動編

発動編は、実践編です。接触編がかなりマニアックだったので、発動編は 普通に最速マスターを目指しました。他の言語をある程度知っている人はこれを読めば Logo の基礎をマスターして Logo を書くことができるようになります。弄りながら遊んでくださいまし…

Logo基礎文法最速マスター :接触編

流行のアレをLogoで。Smalltalk はなんだか他の方とかぶりそうだったので、斜め上を狙ってみました。接触編 と 発動編の 二部構成でお送りします。接触編は、変態編もとい、概念編です。他のLisp言語をある程度知っている人はこれを読めば Logo の基礎をマス…

DDDについて、だらだらと

ちょっと体調を崩しまして、病院にいってきたのですが(インフルエンザではない)、待ち時間が半端ないのはわかっていたので、Domain-Driven Design (DDD)を持って行きました。Domain-Driven Design: Tackling Complexity in the Heart of Software作者: Eri…