ブックマーク / developers.srad.jp (31)

  • 任天堂・岩田社長は40歳までコードを書いていた | スラド デベロッパー

    「プログラマ35歳限界説」という俗説があるが、実際のところ30代も半ばになると、マネジメント業務が増えて実際にコードに触れなくなるプログラマも少なくない。しかし、任天堂の岩田社長は、40歳、任天堂の経営企画室長時代まで実際にコードを触る業務に関わっていたという(4Gamer)。 岩田氏はマネージメント業務に関わるようになってもしばらくは夜や休日にコードを書き、社内で見せていたという。また、岩田氏が最後に関わったのは、ゲームキューブ版の「スマッシュブラザーズ」だそうで、開発が停滞し「このままだと発売日に間に合わない」という状況になったため、開発元である山梨のHAL研究所に赴いてコードレビューやバグ修正、バグの担当者割り当てと行った作業をやっていたそうだ。 岩田氏が社長になったのは2002年、42歳のときなので、その2年前まで実際にコードを触ることができていたというのは興味深い。さすがに現在は

  • プログラミング言語がソフトウェアの品質に与える影響 | スラド デベロッパー

    あるプログラミング言語がその仕事に適したものであるかといった議論は論争に発展しがちだ。時には宗教戦争の様相を呈することがあるものの、プログラミング言語がコーディングプロセスだけでなく完成した製品の特性にも影響することは多くの方が同意するところだろう。これについてカリフォルニア大学デイビス校のコンピューターサイエンス研究者らが、プログラミング言語のソフトウェア品質に与える影響(PDF)に関する調査結果を発表した。研究ではGitHubの729プロジェクト(17言語、29,000人が書いた8,000万行のソースコード、150万コミット)を分析。大きなサンプルサイズを利して混合研究法のアプローチをとり、複数の回帰的モデリングやテキスト解析を組み合わせて静的型付けと動的型付け、型付けの強弱といったプログラミング言語の特徴がソフトウェアの品質に与える影響を調べた。異なる手法による調査結果を組み合わせ、

    プログラミング言語がソフトウェアの品質に与える影響 | スラド デベロッパー
  • コンピューターサイエンスのカリキュラムに不足しているものは? | スラド デベロッパー

    頭が悪かったので、コンピュータ業界をあきらめた爺の寝言です。 8086が世に出たころ、医学生だった爺はバイトでPC作ってました。当時は 基板をおこして、プロセッサ、メモリ、周辺の石を乗せる ハンドラを書いて、ROMに焼く(アセンブラないしはCでコーディング) 画面に文字が出るまで四苦八苦(文字化けしていても何か表示されたら後は何とかなる) 当時の私は、「出来そこないのハードウェアを蘇らせるのがプログラマの仕事」と信じていました。 しかし、386が普及してから、ハードウェアを扱うことはほとんどなくなりました。 (システムプログラマは別として)アプリケーションプログラマはハードウェアの呪縛から解放された訳です。 しかし、今でもコンピュータはハードウェア基盤の上に成り立っているんですよね。 題に戻ります。私 javaは大嫌いです(と言いつつ、使ってますが・・・)。 下層(ネイティブIOインタフ

  • 今まで見た中で最もひどいDBのテーブル設計は? | スラド デベロッパー

    今まで見たもっともクソなテーブル設計というブログ記事が話題になっている。 ここで言及されている「クソなテーブル」は、ありとあらゆるデータが1つのテーブルに放り込まれており、また各行にどのようなデータが納められているかを区別するための列が設けられているというものだったそうだ。 見方を変えれば最近普及が進んでいるKey-Valueストア型データベースのようにも見えるが、通常のSQLデータベースでこのような使い方をするのは確かにひどい。 ちなみにこのような設計は、SQLアンチパターンにて「Entity-Attribute-Value」として紹介されている。

    今まで見た中で最もひどいDBのテーブル設計は? | スラド デベロッパー
  • いまだにテキストベースでコードを書いているのはなぜ? | スラド デベロッパー

    私は自分をコードの書ける人間だと思っているが、プログラマーではない。アルゴリズムを考えることや、簡単なスクリプトを書くことは楽しいが、少し複雑なコードになるとお手上げだ。これは我慢強さが足りないだけかもしれないが、実際いつまでテキストベースでコードを書かなくてはいけないのだろう。言語に依存せず、暗号のような専門用語を使わずにアルゴリズムをコンピューターの理解できるものに変換する、より単純で堅牢な方法が必要ではないだろうか。今はまだアセンブリコードの1つ外側の抽象化レイヤーの中にいるように感じる。誰もがコードを書けるようになるグラフィカルなコード生成方法がないのはなぜだろうか。少なくともシンタックスエラーを修正するのにかかる時間をなくすことができればいいと思う。疑問は尽きないが、私の見落としているところがあれば教えてほしい。

  • プログラマーがするべきことで最も大変なことは? | スラド デベロッパー

    ソフトウェアの開発は簡単な仕事ではないが、プログラマーに言わせれば(少なくともQuoraやUbuntu Forumsでの不満の声を聞く限り)、プログラミングの仕事にはコードを書くことよりも面倒なことが多いようだ。これらのフォーラムでのコメントからITworldのPhil Johnson氏がまとめたところによると、開発者にとって最も大変なのは変数などに名前をつけることだったという。/.erにもソフトウェア開発者が多いと思われるが、仕事で最も大変なのはどんなことだろうか。 変数やプロシージャ、関数、クラスなどに名前を付けること 家族や友人技術系でない同僚などに自分の仕事を説明すること 完成までの所要時間を見積もること 周囲の人々とうまくやっていくこと ほかの人が書いたコードに関する仕事をすること 自分が必要ないと思う機能を実装すること ドキュメントを書くこと テストを書くこと ソリューション

  • 長い関数名、変数名、どこまで許せる? | スラド デベロッパー

    最近久しぶりにWindows関連の案件に関わったのだが、ここ数年UNIX/Linuxばかりを触っていたので結構な違和感があった。特に気になったのが、関数名や変数名などの識別子が長くなる傾向がある点だ。たとえば「GetApplicationConfigurationString」とか、「SaveAllChangeSetToDatabase」とか、確かに分かりやすいのだがタイピングするのに指が絡まるわ!と思う識別子名が多々あった。 そもそもWindows APIには長い関数名、変数名が多く、IDEの補完機能によって長い識別子も入力しやすくなっている、という背景もあるのだろう。しかし、長い識別子名が多いと1行は78文字以内というポリシーを守るのがかなりきつい。長い識別子を許した方が分かりやすいかもしれないが、それでコードが見づらくなるのは個人的にはちょっと避けたいところである。 /.J読者でプロ

  • プログラミングへの失われた情熱。再び火をつけるには? | スラド デベロッパー

    それなりに経験を積んだソフトウェア開発者である自分は、仕事熱心とは程遠い。そんな自分も昔はコーディングが楽しかった。ルーティンコードだって、ルーティンに陥る前は楽しく書いていた。しかし今はただ日々を過ごしているだけである。上司は人のことを巧く操作し使おうとする馬鹿ばかりである。(転職に関しては)自分の履歴書はぱっと栄えるような内容でもないし、面接だって得意とは言えない。 とにかく自分の関わっている製品に関心を持てず、コーディングももはや楽しくなくなってしまった。より高度な内容のコードを盛り込むこともあるが、それだって密かにそっと入れこんでいるだけである。 どうやったら昔の情熱を取り戻すことができるだろうか? /.J諸兄方の中には同じような気持ちになっている方や、そこから抜け出すことに成功した方などいらっしゃるのではないだろうか?なお、家/.では「転職すべし」といったアドバイスや「自分が面

  • 「もっとも高給」といわれるHFTプログラマになるにはどうすればよい? | スラド デベロッパー

    近年金融取引の世界では、コンピュータを使って高速で取引を繰り返す高頻度取引(HFT)が普及している。HFTシステムに携わるエンジニアは「プログラマとしては最高レベル」という高収入が得られるそうで、技術者からの関心も高まっているらしいのだが、家/.にて、このHFTシステムのエンジニアになるにはどのような知識が必要か、ということが話題になっている(Application Development Trends)。 まず、最も必要とされるプログラミング言語はC言語であるという。C言語と並んで使用頻度の高いのはJava、Matlab、Cuda。CudaはGPUで並列処理アルゴリズムをプログラミングするのに使用されるが、その頻度がますます高まっているという。またOSに関しては、「無駄を省いたカスタム仕様のLinuxが基」であるとのこと。 また、必要とされるスキルとしては「C#やJavaと併せてデー

  • プログラマーの力量を見極める質問 | スラド デベロッパー

    ZDNet Japanの「プログラマーの力量を見極める--面接官になったら尋ねるべき質問実例集」という記事が話題になっている。 プログラマーを採用する場合、実際のプログラミング能力を推量するのは難しい。そのため、この記事では「開発者を評価するうえでの優れた質問を紹介するとともに、なぜそれらが優れているのかを説明している」としている。 詳細は記事を参照してほしいが、計算機科学に関する基礎的な知識を問うものや思考問題、ホワイトボードに実際にその場で簡単なコードを書いてもらう、コードを渡してレビューしてもらう、履歴書の経験について深く掘り下げて質問する、などが挙げられている。 いっぽうはてなブックマークでは「挙げられている問題の解答が分からない」といった旨のコメントが多数付けられている。

  • コードレビューって意味あるの ? | スラド デベロッパー

    「こういうコードが恥ずかしいコードである」 という価値観について、上級技術者間で意識統一がなされていればね。 ようするにコードレビューと言うのは、大学の研究室で言う輪講とかと同じなんです。 コードをよりよいものにする、と言うのも目的の一つですが、コードを組んだ人のレベルアップを図る、という目的もある。 十分な人数の、良く判っているプログラマがいるならばペアプログラミングも良いでしょう。でもペアを組んで回れるほどレベルの高い人がいなかったら? 「教授と助教授と助手の目の前で発表させる」 しかないじゃないですか。 もちろん、この作業は「教授や助教授や助手」の時間をいます。もしあまりにも多くの時間をうのであれば可能性は次の3つのどれか。 初心者が多すぎる。そのため、「教授や助教授や助手」の時間をフルに使っても、全部など到底見切れない。コードの品質は悪いままである。初心者が少なすぎる。コードの

    コードレビューって意味あるの ? | スラド デベロッパー