タグ

*あとで読むとprogrammingに関するnharukiのブックマーク (8)

  • 何を新しいソフトウェア開発者に教えるべきか?それはなぜか?

    (原題: What Should We Teach New Software Developers? Why? ) 産業界のニーズによりよく応えるために計算機科学教育に対して根的な変革が必要です。 Bjarne Stroustrup Communications of the ACM Vol. 53 No. 1, Pages 40-42 10.1145/1629175.1629192 日語訳: 里田 和敏 計算機科学(訳注: Computer Science = CS )はソフトウェアシステム開発の中心になければいけません。そうでなければ、私たちは各個人の感覚や経験則に頼らざるをえず、挙句に性能も劣り信頼性も劣るシステムを不必要に高いコストをかけて開発し保守することになってしまいます。私たちは産業界での実業務の改善を考慮に入れるよう、教育における変革を必要としています。 問題 多くのと

  • 翻訳書「レガシーコード改善ガイド」の注目トピック一覧

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    翻訳書「レガシーコード改善ガイド」の注目トピック一覧
  • プログラミングの6大10項目リスト

    Jeff Atwood / 青木靖 訳 2007年3月22日 以下に私の選ぶプログラミングの6大10項目リストを挙げておく。取り上げた順序には特に意味はない。このエントリを簡潔なものにしておきたいので、それぞれの項目は短い要約を引用するに留める。興味を引くものがあれば、ぜひリンクをたどってオリジナルの作者の考えについてもっと詳しく読むことをお勧めする。 [ 訳注: 要約だけで意味が取りにくいものに簡単な説明をつけた。] ジェラルド・ワインバーグの「エゴレスプログラミングの十戒」 自分が誤りを犯すということを理解し、受け入れること 。 自分と自分のコードは別物である。 どんなに「空手」を学ぼうと、いつでもあなたよりもっと詳しい人間がいる。 相談せずにコードの書き直 しをしない。 自分より無知な人に対しても尊敬と敬意と忍耐を持って接すること。 世界で唯一変わらないのは変わるということだけ。 唯

  • 五歳からのプログラミング@MITメディアラボ - My Life After MIT Sloan

    プログラミングって、ある意味最強の表現手段なのだと思うときがある。 例えば先日書いた私の欲しい電子書籍のアプリや出版社が実現すべき電子教科書も、 私がプログラミングのような表現言語を持っていれば、私が見ている未来の世界を製品にすぐに実現して、世の中に広めることが出来るのに、と思う。 でも、私にはそういう表現手段が無いから、一生懸命、色んな言葉で表現するのだ。 それが、自分でモノが作れる人たちやコンテンツをもってる人たち(教科書会社とか)の目に届いて、一緒に未来を作っていければ・・と願いながら書いている。 もっとも私も一応FORTRANとかC++はかつては少しは書けたので(もう錆ついてるが)、 ちゃんと勉強すればObjective-CもJavaも書けるようになるのかもしれないが・・。 このように、いくら頭の中に未来のデバイスやアプリの姿を詳細まで想像できても、 プログラミングなどの表現手段を

    五歳からのプログラミング@MITメディアラボ - My Life After MIT Sloan
  • 実はオブジェクト指向ってしっくりきすぎるんです! 不変オブジェクトのすゝめ。 - Bug Catharsis

    バグのないソフトウェアを作りたいお仕事では主にVB.NETとC#を。趣味のプログラミングでは関数型言語F#を利用しています。 私自身のF#スキル(関数型的な考え方)は、まだまだ実践レベルとはとても言えないシロモノだけど、 面白い発見と多くの可能性を感じられる言語なので、F#はさわっていてとても楽しい。 私はこれまでオブジェクト指向言語によるオブジェクト指向プログラミングをこよなく愛してきました。 というのも、「いかにバグを減らすか」、「バグのないソフトウェアを作ること」が私の最大の関心事だからです。 バグの多いコード、あるいは技術的負債の多いコードというのは、コスト的な問題があるばかりか、 開発者の身体や心までもを不健康にし、われわれに大きな不幸をもたらすことを経験的にわかっているからです。 わたしにとってオブジェクト指向技術は、それらの問題を防いだり解決をする手段として適した技術でした。

    実はオブジェクト指向ってしっくりきすぎるんです! 不変オブジェクトのすゝめ。 - Bug Catharsis
  • 病みつきになる「動的計画法」、その深淵に迫る

    数回にわたって動的計画法・メモ化再帰について解説してきましたが、今回は実践編として、ナップサック問題への挑戦を足がかりに、その長所と短所の紹介、理解度チェックシートなどを用意しました。特に、動的計画法について深く掘り下げ、皆さんを動的計画法マスターの道にご案内します。 もしあなたが知ってしまったなら――病みつきになる動的計画法の集中講義 前回の『アルゴリズマーの登竜門、「動的計画法・メモ化再帰」はこんなに簡単だった』で動的計画法とメモ化再帰を説明しましたが、前回の説明ではまだ勘所をつかめていない方がほとんどでしょう。そこで、これらを完全にマスターするため、今回はもう1つ具体例を挙げながら練習したいと思います。 どういった問題を採用するかは悩みましたが、非常に有名な「ナップサック問題」を取り上げて説明します。 ナップサック問題とは以下のような問題です。 幾つかの品物があり、この品物にはそれぞ

    病みつきになる「動的計画法」、その深淵に迫る
  • Break Free of Code Deadlocks in Critical Sections Under Windows

    This browser is no longer supported. Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support. Patterns in Practice Cohesion And Coupling Jeremy Miller Contents Decrease Coupling Increase Cohesion Eliminate Inappropriate Intimacy The Law of Demeter Tell, Don't Ask Say It Once and Only Once Wrapping Up Much of software design involves the ongoing q

    Break Free of Code Deadlocks in Critical Sections Under Windows
  • 開発者が自ら語る,「あのPT1」Linuxドライバ作成秘話

    絶賛発売中の日経Linux最新8月号では,「特集1:ついに実現 Linuxで作る地デジ録画サーバー」と題してLinuxで地上デジタル放送を視聴・録画するための手順を徹底紹介している。 記事では,Linuxで動作させられる(もちろんハックが必要)代表的なデジタル・チューナを使い,Fedora 10や最新のUbuntu9.04で家電顔負けの安定性と便利さを備えた録画サーバーを構築する手順などを解説。USB型チューナさえ用意すればすぐに録画環境を構築できる「簡単導入キット」やオリジナルの録画サーバー・ソフトなども付録DVDに収録しているので,興味のある人はぜひお近くの書店で手にとってみていただきたい。 こうしたLinuxにおける地デジ録画の世界の大きな扉を開くきっかけとなった製品の1つに,アースソフトのデジタル放送波受信ボード「PT1」がある(現在は生産終了)。このPT1のLinux用ドライバ(

    開発者が自ら語る,「あのPT1」Linuxドライバ作成秘話
  • 1