タグ

TipsとProgrammingに関するMayBowJingのブックマーク (37)

  • ぼくはこうしてプログラミングを覚えた

    オリジナルはココです。フェイスブックのエンジニアでで史上ベスト3に入るといわれるEvan Priestley氏への質問「どうやってプログラミングを覚えましたか」に対する人からの答えです。 手短かに言えば 何年もの歳月の賜物というか。ぼくはただひたすらプログラミングが大好きで、(フェイスブックで働いていた)過去4年間、ほとんど他のことをしていない。その前も2.5年ほどプログラマーとして働いていたし、そのさらに前も6年くらい趣味でプログラミングをしていた。ぼくは高校も大学も中退しているので、それで空いた時間もプログラミングに費やした。つい最近フェイスブックを辞めたけど、未だに起きている時間のほとんどはプログラミングだ。 もっと詳しく言えば 月並みだが、ぼくはちっちゃい頃からコンピューターが好きで、我が家にあったヤツで(最初はMac Plusで途中からIIsiになった)で散々遊んだ。8歳か9歳

    MayBowJing
    MayBowJing 2011/07/23
    : ã¼ãã¯ãããã¦ãã­ã°ã©ãã³ã°ãè¦ãã B!
  • 新卒さん向け、速攻でプログラミングをマスターできるvimプラグイン「quickrun」:phpspot開発日誌

    新卒さん向け、速攻でプログラミングをマスターできるvimプラグイン「quickrun」 2011年04月25日- 新卒さん向け、速攻でプログラミングをマスターできるvimプラグイン「quickrun」。 この春、会社に入って、サーバに入って vim でプログラミングさせられている人はそれなりにいそうですが、その場合に速攻でプログラミングをマスターできるquickrunプラグインを入れておきましょう。 プログラミングを覚えるには作って動かすが一番いいですが、「書いて」→「保存して」→「実行して」を一瞬で行えます。 具体的にはプログラムを書いていて、コマンドモードで「¥r 」をタイプするだけでペインが分かれてプログラムの実行結果が得られます。 VPSなどを借りて、これからプログラミングをはじめようって方にも有効です。 かなりインスタントに実行できるので、こう書くとこう出る、がサクサク進められる

  • Javaプログラマが知るべき9のこと - @katzchang.contexts

    はじめに ソースコードは設計であり、コードの記述は品質に直結するのは言うまでもない。ちなみに、プログラマにとって特に重要なのは保守性だ。コードは書いた直後から保守対象となるからだ。コードは要求文書の範囲で動けばいいと思っている人がいれば今すぐ、ソースコードをコピペして100klに増えるプラグインがいつの間にかインストールされる呪いをかけてあげよう。幸い、ここを読んでいる人にはそんな人はいないだろうと思うけれども。 ということで、コードの品質を下げる要因、すなわちシステム全体の品質を下げる要因となり、かつ使われやすいアンチパターンを挙げ、対策を検討していくことにする。対象は以下: 出力パラメータ 処理状態返却 意味のある配列 無意味な初期化 多すぎるtry-catch 暗黙の順序 コンパイラ警告の無視 過剰なコメント e.printStackTrace() 出力パラメータ メソッドの引数にオ

    Javaプログラマが知るべき9のこと - @katzchang.contexts
  • 前向きなヒューマンエラー対策をしよう。 - Sacrificed & Exploited

    SIerが仕切っている開発現場でありがちなのが、何かミスを犯すと、そのミスを防止するようにすごく手間がかかるチェックが追加されて、開発効率とモチベーションが下がるというダメなパターン。 たとえば、「今年度は申請書(EXCELシート)書いて上司の判子もらわないと svn commit すらできない職場で仕事することになりました。 - SiroKuro Page」とか。 これはプロセスマネジメントでもなんでもない、管理ごっこだ。管理したつもりになって自己満足しているに過ぎない!! プロセスをマネジメントしたければプロセスを削れ: DESIGN IT! w/LOVE では、次のように述べられている。 プロセスマネジメントにありがちな間違いのひとつに、ミスを減らそうとして、そのチェックをするプロセスを増やしてしまうということがある。 もちろん、すべての場合にそれが間違いというわけではない。 そのチ

    前向きなヒューマンエラー対策をしよう。 - Sacrificed & Exploited
    MayBowJing
    MayBowJing 2010/12/29
    : 前向きなヒューマンエラー対策をしよう。 - Sacrificed & Exploited B!
  • JavaScriptのデバッグTips - os0x.blog

    JavaScript Advent Calendar 2010 8日目担当のid:os0xです。 JavaScriptネタは案外範囲が広くて色んなネタがあるので、毎回が楽しみですね。 さて、私はデバッグをネタにしたいと思います。テストではなくデバッグです。誰かが書いたコードをメンテナンスしなきゃー、とか。jQueryプラグイン導入しようとしたけど、なんかうまく動かないーみたいなケースのおはなしです。 JavaScriptのデバッグは大変なので、多くの方が日々苦労されていると思います。なぜJavaScriptのデバッグが大変なのか少し整理してみましょう。 ブラウザ依存 まず、なんといってもJavaScriptはウェブブラウザ上で実行されるので、環境が一定ではありません。特定の環境だけを対象にJavaScriptを書くことは滅多にありません。PC向けではIE、Firefox、Chrome、Sa

    JavaScriptのデバッグTips - os0x.blog
  • これからGitを始める人が読むべき記事のまとめ : akiyan.com

    これからGitを始める人が読むべき記事のまとめ 2009-05-13 candycane(RedmineをCakePHPPHPに移植するプロジェクト)の開発でGitの素晴らしさを痛感したので、これはもう全力でGitを広めるべきだと思いました。そこで、これからGitを始める人が読むべき記事をまとめてみたいと思います。 なお、Gitの発音は「ぎっと」です。 目次 Gitの開発者による45ページの特集記事「WEB+DB PRESS vol.50 はじめてのGit」 WEB+DB PRESS Vol.50 このサイトから -人 が購入しました 全体で -人 がクリック posted with amazlet at 09.05.13 WEB+DB PRESS編集部 技術評論社 売り上げランキング: 380 おすすめ度の平均: 森田創特集(?) perl, PHP, SQL Amazon.co.jp

    これからGitを始める人が読むべき記事のまとめ : akiyan.com
    MayBowJing
    MayBowJing 2010/12/05
    : これからGitを始める人が読むべき記事のまとめ « akiyan.com B!
  • TwitterがBitTorrentで高速にデプロイしている仕組みについて

    Twitterは、同社の何千台ものサーバに対してバイナリをデプロイする場合に、ピア・ツー・ピアシステムのBitTorrentを利用したツール「Murder」を用いていると、7月1日の記事「Twitterの大規模システム運用技術、あるいはクジラの腹の中(後編)~Twitterのサブシステム「Unicorn」「Kestrel」「Flock DB」」で紹介しました。 FacebookでもBitTorrentによる大規模なデプロイが高速に行われていることは、7月16日の記事「Facebook、memcachedに300TB以上のライブデータを置く大規模運用の内側」で紹介しました。 どうやら大規模システムにおけるデプロイではBitTorrentの利用が進んでいるようです。 7月15日付けのTwitter Engineering Blogに、Twitterエンジニア、Larry Gadea氏による「

    TwitterがBitTorrentで高速にデプロイしている仕組みについて
  • Objective-Cは特殊な言語? - @IT

    Objective-Cは特殊な言語?:Cocoaの素、Objective-Cを知ろう(1)(1/2 ページ) iPhone用アプリケーション開発で注目を集める言語「Objective-C」。C++とは異なるC言語の拡張を目指したこの言語の基を理解しよう(編集部) 唐突ですが、皆さんは新たに1つのプログラミング言語を修得しようと思い立ったとき、最初に何をしますか。その言語の入門用サイトを見て回る、関連書籍を立ち読みする、サンプルを入手して取りあえず動かしてみる、といったところでしょうか。ちなみに私は書籍が好きで、しかも立ち読みではなく購入派です。 いずれにしても、まずはその言語のコードを目で見て、「いったいどんな言語なのか」というイメージをつかむのが最初の一歩となるでしょう。何かしらのプログラミング経験がある人なら、コードを眺めて、「ああ、あの言語に似ているな」とか「うわ、これはとっつきに

    Objective-Cは特殊な言語? - @IT
    MayBowJing
    MayBowJing 2010/06/11
    : Objective-Cは特殊な言語? - @IT B!
  • ラムダ式を使用した事例/デザインパターン・ミニカタログ(1/2) - @IT

    記事は、(株)技術評論社が発行する書籍『[完全版]究極のC#プログラミング ― 新スタイルによる実践的コーディング』から、許可を得て転載しています。 同書籍は、もともとフォーラムにて連載していた『C# 2.0入門』、『C# 3.0入門』の記事を整理統合し、加筆、修正されたものです。 手元でまとめて読みたい方は、ぜひ書店などにてお買い求めください。 【注意】記事は、書籍の内容を改変することなく、そのまま転載したものです。このため用字用語の統一ルールなどは@ITのそれとは一致しません。あらかじめご了承ください。 書ではラムダ式について解説しているが、実例があったほうがわかりやすいと思うので、実際に筆者が書いたラムダ式を使用したコードの事例を紹介しよう。 それは、ゲームなどでよく使われる「フラグ」と呼ばれる機能のソースコード体質改善(リファクタリング)を行う際に体験したことである。ここで

    MayBowJing
    MayBowJing 2010/06/08
    : ラムダ式を使用した事例/デザインパターン・ミニカタログ - @IT B!
  • @IT:特別企画:J2EEと.NET連携を考える

    Microsoft .NET(以下.NET)が登場した頃は「.NETJavaか?」といった議論が起こった。しかし、現実には両者はどちらかで完全に置き換えられるようなプラットフォームではない。J2EEも.NETもアプリケーションやサービスを実装するためのプラットフォームといえるが、その周辺に存在するツールやミドルウェアなどを含めて考えれば、現状、同様のソリューションを提供しているとはいえない。よって、ユーザーのニーズによって自由に選択されるべきものであるし、必要に応じては共存して利用することもあるだろう。 稿では、後者のJ2EEと.NETが共存・連携して利用されるケースを扱い、その意義に簡単に触れたあと、実際の連携例をコードレベルで解説する。 J2EEと.NETの連携として最近最もポピュラーなケースは、.NETベースのWindowsアプリケーションをクライアントに配置し、サーバ側のJ2E

    MayBowJing
    MayBowJing 2010/06/08
    : @IT:特別企画:J2EEと.NET連携を考える(1) B!
  • for ... else in Python

    MayBowJing
    MayBowJing 2010/05/21
    : for ... else in Python - I Still Know What You Learned Last Summer B!
  • メイドイン俺のくみたて道場がすばらしい - ABAの日誌

    メイドイン俺 (http://www.nintendo.co.jp/ds/uorj/index.html) とりあえずメイドイン俺で真ん中のモアイが吐くイオンリングを撃ち落とすゲームを作ったりした。ゲームエディタとしてはいい割り切りをしていて使いやすい。ぶったいの管理とそのAI編集メニューが微妙に離れてるとか、AIが乗ってるぶったいが消せなかったりとか、まだちょい気になる点はあるが。 ゲームは5秒 結果は成功か失敗のみ 自機と呼ばれる概念は基無し というメイドインシリーズのフォーマットだからできた割り切りがうまい。 ゲームははいけいとぶったいのみで構成 キッカケ→アクションというイベントドリブンな制御のみ(これをAIとよぶ) キッカケ、アクションともに6種類のみ フラグに相当する概念のスイッチは1つのぶったいに1つのみ いわゆるサイコロすらないという、ゲーム向けにしては思い切った機能の絞

    メイドイン俺のくみたて道場がすばらしい - ABAの日誌
  • Making Wrong Code Look Wrong

    I’m Joel Spolsky, a software developer in New York City. More about me. Read the archives in dead-tree format! Many of these articles have been collected into four books, available at your favorite bookstore. It’s an excellent way to read the site in the bath, or throw it at your boss. Ready to level up? Stack Overflow Jobs is the job site that puts the needs of developers first. Whether you want

    Making Wrong Code Look Wrong
  • 間違ったコードは間違って見えるようにする - The Joel on Software Translation Project

    Joel Spolsky / 青木靖 訳 2005年5月11日 水曜 私が最初の当の仕事をはじめたのは1983年9月に遡る。それはオラニムというイスラエルの大きな製パン工場で、16台の飛行機ほどもある巨大なオーブンで、毎晩10万個のパンが作られていた。 はじめて工場に入った時、そのあまりの汚さに信じられない思いだった。オーブンの側面は黄ばんでいるし、機械は錆びていて、そこらじゅうが油だらけだった。 「いつもこんなに汚いの?」と私は聞いてみた。 「なんだって? なんの話をしてるんだ?」とマネージャが答えた。「掃除したばかりだから、今が一番きれいな状態なんだ」 なんてこった。 毎朝の工場の清掃を何ヶ月か続けて、ようやく彼らの言っていたことが理解できるようになった。パン工場では、きれいというのは機械にパン生地が付いてないことを言うのだ。きれいというのは、ゴミ箱に発酵したパン生地が入ってないこと

  • ブール値を返すメンバー関数の命名規則

    関数の名前の付け方は人それぞれですが、使う単語が同じなら、関数の名前はほぼ同じものになると思います。例えば、サイズをセットする関数の名前を、「set」と「size」という単語を使って考えると、ほぼ全員が「SetSize」と答えるでしょう。「SizeSet」「SizeToSet」「SizeSetted」「SettingSize」といった名前を考える人は、ほとんどいないと思います。 ところが、真か偽かのブール値を返す関数の名前は、混乱することが多いようです。 ここでは、Java言語で採用されている命名規則と、その解釈の仕方を紹介します。 関数名が混乱する例 ブール値を返す関数では、「Is○○」という名前を良く見かけます。例えば、中身が空っぽかどうか、の判定をする関数には、IsEmptyという名前が良く使われます。MFCのCStringクラスや、JavaのListインターフェースなどにも、IsE

  • http://kikyou.info/diary/?200809

    MayBowJing
    MayBowJing 2008/09/17
    よく使うアプリケーション。
  • 次の JavaScript の仕様はこうなる! ECMAScript 3.0 から 3.1 への変更点まとめ - IT戦記

    はじめに JavaScript の標準仕様である ECMAScript 3rd Edition (ECMAScript 3.0) が 9 年ぶりにバージョンアップしようとしています。 実は、これまでも様々なバージョンアップの案が上がっては消え、また上がっては消えていました。 しかし、今回のバージョンアップには今までと違う点が一つだけあります。 それは、現時点での主要な ECMAScript インタプリタ(JavaScript の実行エンジン)を作っている全団体(以下を参照)がこの仕様に同意したことです。 Mozilla (Firefox) Apple (Safari) Microsoft (Internet Explorer) Opera (Opera) Adobe (Flash) Yahoo (Yahoo Widget) Google この同意は JavaScript のこれからを大きく

    次の JavaScript の仕様はこうなる! ECMAScript 3.0 から 3.1 への変更点まとめ - IT戦記
  • Ajaxを勉強しよう

    このページはAjaxを勉強してみたい人向けの学習用ページです。サーバーを入れ替えたため一部CGIを使用したものが動作していません。時間のある時に修正します。また、書いてから、かなり時間が経過しているため内容的に古いものもあります。ご了承ください。 Ajaxで利用されるエフェクトに関しては別ページ(Ajax Effect)に移動しました。 Ajax関連書籍に関してはAjax関連書籍一覧ページを用意しました。 Prototype系ライブラリ サンプルプログラム【New !!】のページを用意しましたので、Prototype系のライブラリを利用している方は参考にしてみてください。 ミスや間違いなどがありましたらopenspc@po.shiojiri.ne.jpまでお願いします。 第一章 Ajaxって? AjaxとRIA AjaxとDHTML AjaxとFlash Ajaxに必要な知識と技術 Aja

  • 最速インターフェース研究会 :: prototype.jsのObject汚染を回避する方法

    かなりターゲットの狭いTips。役に立たない。 prototype.jsというRuby on Railsなんかのフレームワークで使われている有名なJavaScriptのライブラリがあって、これが色々と使えそうな処理を綺麗に詰め込んであり、デファクトスタンダート的な地位を確立しているのだけれど、ちょっと微妙だなーと思うところがあって、それはObject.prototypeを拡張してしまう点。 実際の弊害はこういう。 http://d.hatena.ne.jp/nazoking/20050425/1114374966 要は連想配列として使うときに困るって話。 多分prototype.jsはJavaScriptの側でロジックを組むことをあまり想定していないため、この辺の問題にあんまり配慮していないのではないかと思うのだけれど、とりあえず無理やり回避する方法を思いついたので書いてみる。 http:

  • 関数型言語の勉強方法について - higepon blog

    id:higepon:20060330:1143714380で関数型言語の勉強方法について人力検索で質問しました。 その結果、たくさんの回答(コメント欄での回答や、飲み会でのアドバイスも含む)をいただきました。ありがとうございます。 質問自体は単純で、逆に回答する立場からすると範囲が広すぎてとても答えづらいものだったと思います。 その中でも特に印象に残り、質がとても高いと感じた回答の一部を引用したいと思います。 id:practicalschemeさんによる回答です。(全文はhttp://q.hatena.ne.jp/1143714236#a507995)。 なかなか難しい質問です。一冊あるいは一サイト、決定版と言えるようなものは思い当たりません。しかし関数型言語やそのアプローチについては最近関心が高まりつつあるようで、ギャップを埋める入門書が徐々に出てくると思われます 略 [とっかかり]

    関数型言語の勉強方法について - higepon blog