Author: Mist twitter: Mist note: Mist diaries: 或るロリータ ロリータ速報 VIP TOP絵簡易まとめ pass: steam つ最近人気あるスレ ↑イミフのパクリです!
以前、とあるシステムのソースコードを読む機会があったのだけどあまりにひどかった。あのひどいコードでまあまあまともに動いているというのが逆に信じられない。今日昼ご飯を食べながら少し話していたのだけど意外と知られていないようなので、話せる範囲でいかにひどいのか説明してみようと思う。 まず、ソースコードが大雑把に見積もって3750万行あるのだけど、その中でまともに機能しているコードは3%しかない。10分の1程度のソースコードで同程度の機能を実現しているシステムもあるのでほんとあのシステムのコードはゴミだと言っても過言じゃない(*1) プログラマとしてはなんでそのプロジェクトはそんな状態になってしまったのか気になるところだけども、まあ多くのプロジェクト同様、真相を知る人は誰もいない。でもまあ、実際に機能しているコードのコピーみたいなものがあちこちに散らばっていることからしてコピー&ペーストが盛んに
読者の皆さんは、「Cyan」(サイアン)という言語をご存じないかもしれない。Cyanは、Lispのマクロを持ち、Python風のインデントによってブロックを表すプログラミング言語。2008年の春、林拓人という1人の高校生によって設計された。 連載第1回の竹内郁雄氏が「開発」の天才、第2回の五十嵐悠紀氏が「発想」の天才とするならば、今回の林氏は「プログラミング言語」の天才だ。 林氏がプログラミング言語に初めて触れたのは中学3年の夏休み。そこから冬休みまでの5カ月間に、5つのプログラミング言語を習得した。その後もいくつかのプログラミング言語を学ぶ中、林氏の興味はWebサービスなどのものづくりには行かず、ひたすら言語自体へと向かっていった。 高校2年の春、自身でプログラミング言語Cyanを作り上げた。Cyanを設計した林氏は、「U-20プログラミング・コンテスト」(以下、U-20プロコン)で経済
Web標準に従うことは、SEO効果、ユーザービリティ、メンテナンス性の向上など、Webサイトの利用者と制作者の双方にさまざまなメリットをもたらします。しかし、実際にWeb標準の仕様書に従ってWebサイトを制作しようとすると、制作者の頭を悩ませる多くの問題が待っています。本連載では、Web標準のメリットを最大限に生かすことをテーマに、仕様書には書かれていない部分を中心に取り上げ、実際のWeb制作現場で起こり得る問題について、解決の糸口をたらしていきたいと思います。 はじめに Web標準に従うことは、SEO効果、アクセシビリティ、ユーザービリティ、相互運用性、互換性、メンテナンス性の向上など、Webサイトの利用者と制作者の双方にさまざまなメリットをもたらします。しかし、実際にWeb標準の仕様書に従って「正しい(X)HTML+CSS」でWebサイトを制作しようとすると、制作者の頭を悩ませる多くの
ソフトウェア開発プロジェクトでは、短期開発の要求が高まっている。受託開発も例外ではない。特定の顧客から長期に渡って大型案件を請け負っている場合でも、開発期間はますます短縮される傾向にある。 納期に対する高い要求を満たすには、プロジェクト管理が重要である。正確な見積もりと、的確な進捗管理ができなければ、短期開発では容易にデスマーチに陥ってしまう。 筆者の開発プロジェクトでは、WBS (Work Breakdown Structure) を使ったプロジェクト管理を導入した。WBSは見積もりのための強力な道具として広く使われている。筆者はさらに、実績も管理できるようにWBSを拡張し、見積もりから進捗管理まで一貫して管理できる手法を確立した。 ここでは、筆者が拡張したWBSの書き方と、それを使ったプロジェクト管理の手法を提案し、実際の開発業務に適用した経験から得られたWBSの運用ノウハウを紹介する
英語が苦手な人の為に、米アップルに電話する方法をまとめたよ。 pending contractがどうしても解決しない人は挑戦してみよう。で結果をコメント欄なり2chなり、はてなのiPhone開発グループなりに書いて共有しませんか? ■電話の前に容易すべきもの ・自分の住所氏名、国際電話番号を英語で書いたメモ。 ・開発者ID(PersonID) ・場合によっては提出したアプリの名前とID ・簡単な原稿。 ■会話マニュアル ・010-1-800-6332-152にコールする。 ・なんか英語でかんたんな説明のあと自動で、おねーちゃんにつながる。番号入力はなし。 ・まずhelloと挨拶。これ重要。 ・まず自分が英語が得意じゃないことを伝えよう。 I’m not good at English, could you speak slowly and clearly please? ・そして I’m
過去に自分が間違っていたと思うことや、身近なエンジニア(技術者/研究者等)が「見落としているんじゃないか」と思える部分を列挙してみました。 ただし、それぞれ状況と立場次第であるものが多いのでご注意下さい。 製品を売る場合や、論文を書く場合、個人の場合など、様々な立場での色々なものをごっちゃに書いてしまいました。 1. 技術の凄さのみが戦局を決めるわけではない 「技術が凄ければユーザは勝手についてくる」という発想に出会う事があります。 それは、正しい場合もあれば正しくない場合もあると感じています。 最近は、得てして「技術だけ」ではあまり成功しないような気がしてきました。 そもそも「凄い技術」とは何なのかという部分が難しいです。 その「凄さ」が実現しているものと、ニーズとの一致などが的確で無い場合、いくら凄くても理解してもらえないことも多いです。 2. 誰が言うか、誰がやるかも大事な要素 全く
まとめwebプログラムをしていて、いざサービスを作ろうと思ったときにネックになるのが、デザインです。 僕はもうその手のセンスが絶望的に欠けていて、配色もレイアウトもまともなものが出来ません。HTMLやCSSそのものの知識があっても、それで作るモノが見えてこない。CakePHPの勉強をしてwebサービスをいっぱい作ろうと思っているのに、これは良くない。 そこで実際にwebサービスを作る前に読んでおきたいwebデザイン系の記事をメモとして並べておくことにしました。「これを読んでおけ」「ここのデザインは参考になるよ」「このアイコン集おすすめ」「あのツールの使い方ならここだ」「このツール良い感じ」みたいなものがあれば、是非教えてください! 随時追加していきます。 プログラマでも出来るWebデザイン - Blog.37to.netウノウラボ Unoh Labs: デザインセンスの無い人がwebサイト
システムに何か不具合が起こったとき、もはや開発会社の責任では片付けられない。組織内の多くの人の意見を集約できる洗練された「システムの見取り図」作りが、使い勝手のいい、安いシステムの構築の鍵となる。 発注者側は「発注者責任」を正しく認識せよ 前回は、「システム開発に移る前に、発注者側で画面デザインを徹底的に詰めるべきだ」という話を書いた。「あれ? そうなの?」と思った読者の方が多かったかもしれないが、筆者は発注者側が行っておくべき当然の作業と考えている。 「システムは業務効率化のための道具に過ぎない」という考えは、いずれの読者も賛成してくれるだろう。そこで、「道具であるなら使い勝手が重要であるはずだ」ということになるが、その使い勝手の責任は誰にあるのだろうか。発注者側のシステム部門なのか、開発ベンダーなのか、はたまたシステムの利用者なのか整理されているだろうか。実例をみてみよう。 「みずほ証
もう全然気合が足りないので、自分への戒めも含めて「新サービス開発」について思いつくままにメモ残します。 新サービスを開発するときには: コンセプト = メタファーを決める メタファーとは、「そのサービスって、つまり○○だよね」の○○に当てはまる具体的な言葉です。 どんなサービスでも「既存の言葉」に当てはめないと理解しにくいので。 「GPS機能で配送遅延から距離を感じられるオンラインメッセージングツール」じゃなくて「それって伝書鳩」みたいな。 これは知り合いに説明してみるとヒントが得られること多しです。 サービス名を決める ドメイン取るとかの理由もありますが、名前が決まっているかどうかで作業のはかどり方が全然違います。 アイデア ⇒ 開発 ⇒ 仕上げ の苦しみ度合いを理解しておく 実は開発する作業が一番楽です。厳しいのは仕上げ。途中で萎えないような工夫が必要だったりします。 時間をかけて悩ん
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く