パスワードを忘れた? アカウント作成
2014年のデベロッパー人気記事トップ10
10740289 story
プログラミング

今まで見た中で最もひどいDBのテーブル設計は? 107

ストーリー by hylom
女将を呼べ 部門より
あるAnonymous Coward 曰く、

今まで見たもっともクソなテーブル設計というブログ記事が話題になっている。

ここで言及されている「クソなテーブル」は、ありとあらゆるデータが1つのテーブルに放り込まれており、また各行にどのようなデータが納められているかを区別するための列が設けられているというものだったそうだ。

見方を変えれば最近普及が進んでいるKey-Valueストア型データベースのようにも見えるが、通常のSQLデータベースでこのような使い方をするのは確かにひどい。

ちなみにこのような設計は、SQLアンチパターンにて「Entity-Attribute-Value」として紹介されている。

11048666 story
プログラミング

プログラムを書いたことがある最も尋常でない場所は? 174

ストーリー by headless
通常 部門より
本家/.「Ask Slashdot: Where's the Most Unusual Place You've Written a Program From?」より

尋常でない場所や状況でSASプログラミングをしたことがあるかという4つの質問がSAS Blogsに掲載されているが、個人的には範囲をプログラミング全般に広げたら面白いのではないかと思う。4つの質問は次のようなものだ。

  1. プログラムを書いた場所の中で、最も尋常でない場所
  2. プログラムを書いた状況の中で、最も尋常でない状況
  3. プログラムを書くのに使用した、最も尋常でないコンピューター環境
  4. これまでにプログラムを書いた中で、最も尋常でないアプリケーション

本家/.ではトイレや潜水艦といったものから、普段の職場自体が尋常でないといった回答もみられる。/.Jerはいかがだろうか。

11645411 story
Perl

絶滅しそうなプログラミング言語は? 205

ストーリー by headless
絶滅 部門より
新しいプログラミング言語が人気を得ると、古いプログラミング言語は人気を失いつつも使われ続けるか、死んでいくことになる。Dice Newsの記事では、死んでいくと予想される5つのプログラミング言語を、最後に書くプログラム「Goodbye, World」のサンプルコードとともに紹介している。

本家/.「Goodbye, World? 5 Languages That Might Not Be Long For This World」より

死んだテクノロジーのゴミ箱行きになると予想されるのは、どのプログラミング言語だろうか。Perl 6の開発状況を考えると、Perlは素晴らしい候補者だ。Perl 6は言語の完全な刷新を目指して2000年に設計が始められたものの、開発は遅々として進んでいない。RubyやVisual Basic .NET、Object Pascalは一時的に人気を獲得したが、死んでいくプログラミング言語リストの上位を占めているといえる。開発結果に問題があるか、産業が方向性を変えるか、特定の言語が時代遅れとなる時はいずれやってくる。皆さんは、どのプログラミング言語が近いうちに絶滅すると考えるだろうか。

このほかDiceの記事では、Adobe FlashとAdobe AIRで使われるActionScriptを候補に挙げている。ActionScriptは実質Flash/AIRでしか使われていないため、これらの技術が使われなくなれば専用のプログラミング言語も消えていくという話だ。なお、本家/.編集者のtimothy氏は、COBOLが今でも生き残っていることを考えると、PerlやRubyが死につつあるという主張を真剣にとらえることはできないと指摘している。

11404191 story
プログラミング

「世界一IQの低い」ソースコード 235

ストーリー by hylom
定期的に出てくる酷いコードの話題 部門より

Twitterに投稿された、「世界一IQの低いソースコード」が話題になっている。

このコードは書籍にサンプルコードとして掲載されたもので、延々とif~else文が続くというもの。とはいえ、プログラミングの初心者が書きそうなコードではある。

10768834 story
プログラミング

プログラマーが自分につく9つの小さな嘘 100

ストーリー by headless
承前 部門より
「太ったわけじゃない(微増だ)」などの小さな嘘で自分をごまかしたり、正当化したりすることが誰にでもあるだろう。ITworldでは、ソーシャルメディアやフォーラムなどでのコメントから、プログラマーが自分につく9つの小さな嘘をまとめている(ITworldの記事本家/.)。

記事によると、9つの嘘は下記のようなものだ。
  1. (簡単だから、自分がわかっているから)このコードにコメントはいらない
  2. 作業にそれほど時間はかからない
  3. 自分(で書いたコード)の方がうまくやれる
  4. (コードが汚い、細かいバグがあるなどの点は)あとで修正しよう
  5. ちょっとした変更だけだ(だから確認はしなくてもよい)
  6. これはバグじゃない(仕様だ、うちでは動作する、確認時にエラーは発生しなかった)
  7. 自分が何をしているのかわかっている(だからすぐに作業にかかれる)
  8. テストを実行しなくても大丈夫だ(動作しているから時間の無駄)
  9. <お気に入りのプログラミング言語名>を使っているから、よいプログラムだ

/.Jerが付け加えるとしたら、どんなものがあるだろうか。

10649314 story
プログラミング

いまだにテキストベースでコードを書いているのはなぜ? 205

ストーリー by headless
鉛筆 部門より
本家/.「Ask Slashdot: Why Are We Still Writing Text-Based Code?」より

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

11630911 story
Windows

次期Windowsの名称がWindows 10になった理由は? 137

ストーリー by headless
新型 部門より
あるAnonymous Coward 曰く、

/.J記事のコメントでも話題になっていたが、次期Windowsの名称が「Windows 9」ではなく「Windows 10」になった理由について憶測が飛び交っている(BusinessNewslineの記事Engadget日本版の記事本家/.)。

一つは悪評高いWindows 8を継承する数字としての「9」を避けたというもの。一つ飛ばした「10」という数字にすることでWindows 8の良くないイメージを断ち切り、新たなOSであることを打ち出しているというのだ。

もう一つは/.Jでも指摘されていた、OSバージョンをWindows 95/98と誤判定する古いコードがあるという理由だ。Microsoftの開発者を名乗るユーザーによるredditへの投稿では、「if(version.StartsWith("Windows 9"))...」のような形でOSバージョンを判定するサードパーティーソフトウェアが数多くあり、現実的な回避策として「Windows 10」になったと社内で噂されているという。searchcodeで「if(version.StartsWith("Windows 9"))」を検索すると相当数がヒットするので、バージョン判定コードの問題は次期OSの命名に少なからず影響したのではないかと思われる。

この件に関するMicrosoftの回答は「Windows 10は物事を行う上での新しい方法を推進するWindowsを意味します。数字が増えたのではなく、さらに多くのユーザーに力を与える新しいWindowsです。」といった内容で、謎を謎のままにするものだという(Gizmodoの記事)。

11842708 story
プログラミング

金融系ではなぜCOBOLが使われるのか 122

ストーリー by hylom
そこにあるから 部門より
あるAnonymous Coward 曰く、

「金融系ではなぜCOBOLが使われるのか」という話が、Togetterまとめはてなブックマークで話題になっている。

金融系と言えばCOBOL、というのは有名だが、現在ではそれ以外にも多くの言語があり、あえてCOBOLを利用する理由について議論されている。Togetterまとめでは固定小数点演算とその精度、速度が理由として挙げられているが、ほかの言語でも十分なライブラリが登場している現在、ややピントがずれた議論の気もする。

10811307 story
Windows

Microsoft、C#コードをネイティブコードにコンパイルする「.NET Native」を発表 130

ストーリー by headless
発表 部門より
insiderman 曰く、

MicrosoftがC#で書かれた.NET Framework向けのプログラムをネイティブコードにコンパイルする「.NET Native」を発表した。現在Preview Release版が公開されている(.NET Framework Blogの記事Microsoft .NET NativeMicrosoft .NET Native FAQCompiling Apps with .NET Native本家/.)。

C#などの.NET系言語では、コードをコンパイルすると中間コードが生成され、実行時にネイティブコードに変換されるという仕組みを取っていたが、.NET Nativeを使えばC/C++による開発と同様にネイティブコードを生成でき、アプリケーションの起動速度の高速化やメモリ消費の削減といったメリットを享受できるという。対象アーキテクチャは現在のところx64およびARMで、x86は今後対応する模様。また、当初はWindowsストアアプリ(いわゆるMetro UIベースのアプリ)の作成にのみ利用できるが、長期的にはデスクトップアプリなどすべての.NETアプリに対象を広げていくとのこと。Windowsストアアプリの多くがC#を使用しているため、Preview Release版ではC#コードだけをサポートしているが、.NET Nativeの対象を広げていく際にはF#やVBなど他の.NET言語に対応する可能性もあるようだ。

.NET Nativeを使用することで、Windowsストアアプリが最大60%高速に起動し、メモリー使用量が15%~20%減少するという。また、.NET Frameworkの必要な部分が静的にリンクされるため、実行環境の.NET Frameworkには依存しないとのことだ。

11847634 story
ゲーム

スクエニのスマートフォンゲーム、「開発コアメンバーの脱退」の影響でサービス終了へ 139

ストーリー by hylom
引き継ぎとドキュメントとコメントは大事ですね 部門より
simon 曰く、

スクウェア・エニックスのスマートフォン用ゲーム「拡散性ミリオンアーサー」が来年2015年3月30日をもってサービスを終了することが発表された。これについて、その運営側がファミ通に対しその理由を語っている(ファミ通app)。

その理由として語られているのが、「コアプログラマが抜けたためプログラムがブラックボックス状態になった」点。「コアスタッフが抜けてしまったがゆえに、核となるプログラム部分がブラックボックスのようなものになってしまい、それを手探り状態で更新していた」そうだが、「新しい仕組みを取り入れることも難しくなっていました」とのことでサービス終了を決めたそうだ。

皆さんのかかわっている仕事でも「この人がいなくなったらプロジェクトは座礁する」って人、いませんか?

typodupeerror

長期的な見通しやビジョンはあえて持たないようにしてる -- Linus Torvalds

読み込み中...