タグ

読み物とプログラミングに関するenemyoffreedomのブックマーク (36)

  • やっと理解できた!JSオブジェクト指向プログラミング再入門 | ゆっくりと…

    既に多くの方が JavaScript のオブジェクト指向的側面についての解説を記事にされていますが、読み手側から見ると、例えばプログラミング言語への習熟度やオブジェクト指向自体に対する理解度がマチマチなわけで、私自身、「おお、なるほど!」 っていう、頭の中のスイッチがパチンッ!と入るような境地には達していませんでした。 かつて私も オブジェクト指向なJavaScriptプログラミングのススメ なんていう翻訳記事を書いてはいるのですが、正直なところ prototype.constructor の存在は知りませんでしたし、Function.call や Function.apply をどう使えばよいのかなどをちゃんと理解できてはいませんでした。 そんな中、2011年12月に書かれた Doc Center | Mozilla Developer Network の記事 オブジェクト指向 Java

  • プログラミングの楽しさ。オープンソースとの出会い。 - 2nd life (移転しました)

    100人のプロが選んだソフトウェア開発の名著 君のために選んだ1冊 が出版され、『私と Ruby と添削と』という内容で寄稿しました。私がどうプログラミング・オープンソースの楽しさを知ったかについての昔話です。公開して良い、とのことなので公開いたします。 なお、文章中に出てくる tdiarytimes.rb のコードは以下です。9年前に書いたコードなので今読み返すと恥ずかしいを通り越してもはや微笑ましいですね!!1これでも当時は、自分なりにできるだけ綺麗なコードにして公開した記憶があります。 https://github.com/tdiary/tdiary-contrib/blob/master/plugin/tdiarytimes.rb 私と Ruby と添削と プログラミング技術の向上させるには、どういう方法があるでしょうか。プログラミングに関する書籍を読む、オープンソースで公開されて

    プログラミングの楽しさ。オープンソースとの出会い。 - 2nd life (移転しました)
  • Effective JavaScriptをPDFにしました - renoivのブログ

    [twitter:@bleis]さんのつぶやきを見て,ここにあったのか!という驚きでした。 2003年頃の記事ですがJavaScript 1.5 (Mozilla 1) ベースなので,まだ参考になると思います。 Googleドキュメントに置きましたので必要な方はどうぞ! Effective JavaScript - Dynamic Scripting.pdf Powered by Google ドキュメント HTMLアーカイブGithubに置きましたので,こちらも必要な方はどうぞ。 https://github.com/renoiv/EffectiveJavaScript 参考 Effective JavaScript - Dynamic Scripting Wikipedia JavaScript バージョンとブラウザの対応表

    Effective JavaScriptをPDFにしました - renoivのブログ
  • Island Life - 因果律を否定するバグ

    About 南の島のプログラマ。 たまに役者。 Practical Schemeの主。 WiLiKi:Shiro 最近のエントリ 無限cxr高校受験Defense振り返ってみると2019年は色々学んで楽...覚えるより忘れる方が難しい(こともある)眼鏡のつると3DプリンタIris Klein Acting ClassSAG-AFTRA conservatory: Voice Acting創作活動って自分を晒け出さねばならないと...ループを使わずに1から100までMore... 最近のコメント shiro on 歳を取ると時間が速く過ぎるのは、新しいことに挑戦しないから? (2023/03/14)1357 on 歳を取ると時間が速く過ぎるのは、新しいことに挑戦しないから? (2023/03/01)ベアトリーチェ on ハイポハイポハイポのシューリンガン (2022/04/02)ベアトリーチ

    Island Life - 因果律を否定するバグ
    enemyoffreedom
    enemyoffreedom 2011/08/31
    「教訓: テストは常に再現可能なデータを使うべし。」
  • 人形つかい(1) 未知との遭遇:Press Enter■:エンジニアライフ

    ふつーのプログラマです。主に企業内Webシステムの要件定義から保守まで何でもやってる、ふつーのプログラマです。 彼らには当に知能があるのだろうか? つまり、彼ら自身の知能が? ぼくにはわからない。どうすればそれがわかるのかも、わからない。 ぼくの名前は細川マモル。横浜市内にオフィスを構える小さなシステム開発会社に勤務しているエンジニアだ。当年とって29歳、独身。付き合い始めて2年になる彼女がいるが、結婚を意識していいのかどうか決めかねている状態。 うちの会社は7年前に某大手SIerからスピンアウトした6人が立ち上げた、いわゆるベンチャー企業だ。最近の世界的な景気後退の大波を何とかしのいで、ここまで黒字を――かろうじて――維持してきている。もちろん危機的状況に陥ったことも少なくなく、役員の2人が給料なしでしのいだ月も何回かあったらしいが。 社員数は20名前後。開発要員は15名で、うち半数以

    人形つかい(1) 未知との遭遇:Press Enter■:エンジニアライフ
  • 高慢と偏見(1)隣は何をする人ぞ:Press Enter■:エンジニアライフ

    ふつーのプログラマです。主に企業内Webシステムの要件定義から保守まで何でもやってる、ふつーのプログラマです。 高学歴で長い経験に自信を持つエンジニアは他人の話を聞かなくなる、というのは広く世に知られた真理の1つである。 K自動車ICTシステム部の三浦技術担当マネージャは、そのようなエンジニアの生き見のような人だった。初めに言葉ありき。私が聞いた三浦マネージャーの最初の言葉はこうだ。 「オブジェクト指向など、実業務では使いものにならない!」 私の名前は川嶋ミナコ。横浜市内の某所にオフィスを構えるシステム開発会社――いわゆるベンチャー企業というやつ――に勤務しているエンジニアだ。社員数は20人前後。最近は受託開発の案件はほとんどなく、大手ベンダやエンドユーザーのシステム部門に常駐して開発を行うことが多い。 K自動車への常駐もその1つだった。部品調達システムの大規模なリニューアル中で、あちこ

    高慢と偏見(1)隣は何をする人ぞ:Press Enter■:エンジニアライフ
    enemyoffreedom
    enemyoffreedom 2011/07/03
    地獄はこうして作られる
  • How to Implement World Fastest Grep.

    当です. 世界最速のgrep 作りました. このネタで学会発表とかしました. #=> JSSST, プログラミング・シンポジウム 「動的なコード生成を用いた正規表現マッチャの実装」 最近... 「世界最速のgrep」とはしゃいでも研究室内で相手にされなくなってきました. 先輩「へぇ, そうなの.」 同僚「はいはい最速最速.」 後輩「grepってなんですか?」 先生「そんなことより並列化は? 英語で論文書いて. PS3上で動かして.....」

    enemyoffreedom
    enemyoffreedom 2011/02/10
    GNU grep 2.5.Xは遅いらしい
  • perl - から未だに目を離せない四つ、あるいはただ一つの理由 : 404 Blog Not Found

    2011年01月31日22:30 カテゴリCultureLightweight Languages perl - から未だに目を離せない四つ、あるいはただ一つの理由 やはりお鉢がまわってきたので。 回答希望。ラクダかわいい以外で。@dankogai さんとか? 「〜今あえてPerlを取る理由というのが個人的には思い浮かばない。生粋のPerl使いならきっと流暢な解答を用意してくれると思う。」 プログラミング言語人気TOP10の簡易解説 http://ht.ly/3NaTkless than a minute ago via HootSuite佐藤 治男 HalSato プログラミング言語人気TOP10の簡易解説用途的にPythonRubyと被るので、今あえてPerlを取る理由というのが個人的には思い浮かばない。生粋のPerl使いならきっと流暢な解答を用意してくれると思う。 ベタ プログラミ

    perl - から未だに目を離せない四つ、あるいはただ一つの理由 : 404 Blog Not Found
    enemyoffreedom
    enemyoffreedom 2011/02/02
    Lispもそうだけど元々の文法機能を駆使してオブジェクト指向っぽいことができてしまう柔軟性というかメタ度の高さが良さでもあり初学者にとって難しいところでもあり
  • ラムダ計算基礎文法最速マスター - 貳佰伍拾陸夜日記

    ラムダ計算は, 多くのプログラミング言語, とくに関数型言語の原形になっています. ラムダ計算について理解しておくことは, 多くのプログラミング言語の習得に役立つでしょう. ラムダ計算はチューリング完全で, 計算能力としてはふつうのプログラミング言語と同じです. ラムダ計算で計算を書く訓練をしておくことは, 任意の計算を関数のみを使って(他の制御構文を用いずに)書くときに役立ちます. ふつうに書いたら煩雑な処理を, 関数型言語のやり方で書くとすっきりすることが多々あり, コードを自由自在に書くためには必須の考え方と言えるでしょう. 項 ラムダ計算の式を項(term)と言います. 項は変数, 抽象, 適用のいずれかです. 変数 変数(variable)はふつう1文字で書きます. 変数には関数内の束縛変数(bound variable)か自由変数(free variable)かという区別があり

    ラムダ計算基礎文法最速マスター - 貳佰伍拾陸夜日記
  • appengine-cl - App Engline Code Lab - Google Project Hosting

    Code Archive Skip to content Google About Google Privacy Terms

  • Rails基礎文法最速マスター - cod.note

    題材: メモツール 簡単なメモを登録削除更新したりできるWebアプリ作りましょう Railsのインストール sqlite3-rubyも必要ですが、ここでは割愛します $ gem install rails プロジェクトの作成 $ rails memo ./memoにrailsの基盤が展開される MVC最速マスター Model データーベースの操作に使う。独自のメソッドを定義したりリレーションシップを楽に扱えたりする RailsだとActiveRecordが担当する View RailsだとWebへの表示を担当する。この場合erbやHamlが該当する。標準だとerb。ActiveViewが担当する Controller 表示などのコントロールを担当する。データの登録などはここ。ようするにWebアプリの頭脳 ActionControllerが担当するはず Scaffold最速マスター Scaf

  • R基礎文法最速マスター

    基礎外部スクリプトの読み込みRコンソールに一行ずつコマンドを入力してもいいけど、実際に使うにはテキストファイルにコマンドを書いて(ソースコード)一気に実行させる方が楽。 source('hogehoge.R') hogehoge.Rというのがソースコードを書いたファイル(ソースファイル)の名前。 ライブラリの追加CRANという、CPANのパクリがある。膨大な数のライブラリがあるので、好きなものをインストールするには、 install.packages('hoge',dependencies=TRUE) とするのが楽。 変数宣言不要。変数に使える文字も結構多い。日語でもOK。 > あ<-1 > あ [1] 1 代入a<-1 b=2 1->a どれでもいい。但し推奨されてるのは一番上。Rの人は「束縛」という言葉を使いたがる傾向があるけど、どっちでもいいと思う。 余談だけど、関数の引数の中で代

    R基礎文法最速マスター
  • Perlオブジェクト基礎文法最速マスター - 小池啓仁 ヒロヒト応援ブログ By はてな

    Perl5でのオブジェクトの基礎を解説したいと思います。 Perlでのオブジェクト指向と言えば、モダンPerl系ではMooseモジュール等なのですが、今回は、あくまでも基礎編です。 Perlで最速にオブジェクトをマスターするには、まず、「リファレンス」と「use宣言」と「bless」の3つが理解できていないとなりません。 なぜかと言うと、Perlでのオブジェクトはblessされたリファレンスなのです。また、Perlでのクラスはモジュールなのです。そのモジュールでの一番の謎は、use宣言なのです。 なので、はじめにこの3つを理解してから、そのあと「オブジェクト」と「オブジェクト指向」について解説していきます。 つまり、以下の順番です。 リファレンスについて use宣言について blessについて Perlでのオブジェクトについて Perlでのオブジェクト指向について ■リファレンスについて

    Perlオブジェクト基礎文法最速マスター - 小池啓仁 ヒロヒト応援ブログ By はてな
  • Succinctness is Power

    簡潔さは力なり---Succinctness is Power--- Paul Graham, May 2002. Copyright 2002 by Paul Graham. これは、Paul Graham:Succinctness is Power を、原著者の許可を得て翻訳・公開するものです。 プロジェクト杉田玄白正式参加テキスト。 <版権表示> 和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。 (「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。 Copyright 2002 by Paul Graham 原文: http://www.paulgraham.com/power.html語訳:Shiro Kawai (shiro @ acm.org) <版権表示終り> Paul Graham氏のエッセイをまとめ

    Succinctness is Power
  • Rubyを最大63%高速化した中学生は超多忙!

    金井仁弘(HN:CanI)氏                    撮影:平沼久奈 ハンドルネームCanIの由来は、「“Can I”→キャナイ→カナイ」。C#、Visual Studio、Microsoft .NETとマイクロソフト製品が大好きな「.NETer」と自称する 筑波大学付属駒場中学校は、東京都内にある中高一貫の国立校だ。入学試験の偏差値と東京大学への進学率の高さから“東の筑駒、西の灘”と称される進学校である。強いのは受験だけではない。国際情報オリンピックや国際数学オリンピックでは、同校の生徒が毎年のように金・銀メダルを制するなど才能あふれる理数系人材が多数在籍している。 金井氏はこの夏の「セキュリティ&プログラミングキャンプ2009」(2009年8月12~16日)に参加し頭角を現した中学生プログラマである。 今年に入って、Ruby 1.9のフィボナッチ数列による演算(多倍長加算

    Rubyを最大63%高速化した中学生は超多忙!
    enemyoffreedom
    enemyoffreedom 2009/10/27
    イケメンw / 一貫教育いいね。ITも分子生物学もドカタに回るときついので進路選択は慎重に
  • オープンソース・ゲームをプレイする

    訳者ノート 以下の文章は、Shawn Hargreaves による Playing the Open Source Game の日語訳である。 このエッセイは、謝辞にもあるとおり Eric S. Raymond の一連の著作にインスパイアされて書かれたもので、「魔法のおなべ」の「書誌と謝辞」においても、 Shawn Hargreaves がオープンソース手法をゲーム分野に適用した場合の優れた分析を書いている。 と紹介されている。ただ ESR の主張を否定している部分もあるのにご注意いただきたい。 タイトルだけ見ると、ただのゲーマーのレポートのようであるが(だから著者の意図を押し出した邦題にしようかとかなり悩んだ)、ゲームという特殊でもあるが確固とした分野にオープンソース、並びにバザール開発方式が適合するかどうかについての非常に冷静、かつユニークな論考である。 翻訳文書については、以下の

  • プログラマーの開発速度は「はまる」時間の長さで決まる : 小野和俊のブログ

    プログラミングを始めてから今日に至るまで、 様々なタイプのプログラマーと開発を共にしてきたが、 驚くべき速度で高い品質のソフトウェアを作り上げるプログラマーには、 一つ共通の特徴があるように思える。 それは、「はまる」時間が極端に短い、ということである。 風のプログラマー」を指向しており、開発速度を重要視している。 例えば平成14年未踏ソフトウェア創造事業「PICSY」では、 発表直前に知人でプロジェクトリーダーの鈴木健にレスキュー隊として呼ばれて 2,3日でGUI全般と、クライアント/サーバー通信部分の設計と実装を終わらせたのだが、 このときなどは、大体の要件を口頭で聞いた後は、 ほぼまったく手が止まらずコードを書き続ける感じで開発をしていた。 「はまる」時間の長さは開発速度に直結するわけだが、 プログラマーが「はまる」場合にはある程度の傾向があると思うので、 今日は「はまる」プログラマ

    プログラマーの開発速度は「はまる」時間の長さで決まる : 小野和俊のブログ
  • Kathy Sierra

    ブログでグローバルマイクロブランドを築くための7つの美徳 あなたのアプリケーションにゴマすり屋はいない?失敗した結婚みたいな企業が多すぎる私のMoleskine PDA私があなたについて知らない5つ(くらい)のことデモではものができあがっているように見せないテックTシャツはセクシーじゃないあなたの人生を(少なくとも昼時間くらいは)変えるひと言 認知的魅惑と「いないいないばあ」の法則 アーロンチェアにエアホッケー・・・ドットコムの行き過ぎか、それとも必須なツールか? 天才になるのに遅すぎるということはない 挑発的に行こう ユーザを喜ばせるものと通勤電車で見かける男の現象 顧客の機能要求に折れないこと! 「要努力領域」で努力するのは凡庸にしかならない リスク忌避による死 若い人たちへのキャリアアドバイス Kathy Sierra(キャシー・シエラ)  90年代にVirgin、MGM、Ambl

  • 私のプログラム

    初めは小学生の頃か。 実物のスペースインベーダーの記憶はない。 しかし、それを皮切りにアーケードゲームのみならず、ゲームウォッチ、ケームセンター嵐などを経て、ファミコンが登場する「ゲーム」の時代だった。 「ゲーム」がコンピューターゲームの意味になった時代だった。小学生も「コンピューター」にワクワクした。 21世紀はコンピューターにより人工知能ができる。そんな時代だった。 でも、アルファベットを知らない小学生にBASICは難しかった。ぴゅう太がせいぜいだった。 中学生。学校にPC-9801があった。後のパソコンである。 「PRINT」で文字を表示する。「GOTO」で行き先を変える。それは分かった。でも何をすればよいか分からなかった。 だから「ベーマガ」で16進数を打った。でも動かなかった。何度も調べ、直し、試した。デバッグした。 そしてようやくゲームが動いた。ゲームはつまらなかった。 でも動

    私のプログラム
  • ドメインロジックの実装方法とドメイン駆動設計 :: handsOut.jp

    スライド1: BPStudy 第7回 2008年3月28日ドメインロジックの実装方法とドメイン駆動設計Ouobpo佐藤 匡剛http://ameblo.jp/ouobpo スライド2: もくじ・ 第Ⅰ部 ドメインロジックの実装方法・ 第Ⅱ部 ドメイン駆動設計の紹介2008/03/28 BPStudy 第7回 2 スライド3: 第Ⅰ部ドメインロジックの実装方法2008/03/28 BPStudy 第7回 3 スライド4: 3層アーキテクチャ・ エンタープライズアプリの典型的アーキテクチャプレゼンテーション層 ドメイン層 インテグレーション層アクションアクションアクションWebアプリFWサービスレイヤーPOJOPOJOPOJO POJOルールエンジンワークフローエンジンDI/IoCコンテナDAODAOインテグレーションゲートウェイデータアクセスFWシステム間統合MWFW ・・・ フレーム