タグ

programmingに関するjazzanovaのブックマーク (22)

  • Rubyコミッター・Yuguiに学ぶ、コードに書くべき「適切なコメント」と「適切な場所」 - エンジニアHub|Webエンジニアのキャリアを考える!

    Rubyコミッター・Yuguiに学ぶ、コードに書くべき「適切なコメント」と「適切な場所」 Rubyコミッター・園田裕貴(Yugui)さんが、長年の経験で体得したソースコードに書くべき「コメントの技法」を教えてくれました。 プログラミングにおいて、どんな初心者でも書けるけれど、適切に書くのは上級者でないと難しいもの。それがコメント(=ソースコードに書かれている注釈やメモ)です。 不適切なコメントをつけても、プログラムの動作には影響しません。しかし、書き方の巧拙によって、コードの可読性や理解のしやすさには雲泥の差が出ます。良質なコメントが良質なコードをつくるのです。 今回はRubyコミッターでありgrpc-gatewayの開発者でもあるSupership株式会社の園田裕貴(Yugui)さんに、優れたエンジニアがどんな観点を持ち、どんなコメントを書いているのかを聞きました。 園田 裕貴(そのだ・

    Rubyコミッター・Yuguiに学ぶ、コードに書くべき「適切なコメント」と「適切な場所」 - エンジニアHub|Webエンジニアのキャリアを考える!
  • プログラミングを教えるときの10のポイント (という論文の紹介)

    1. ギークの遺伝子なんてないことを心に留めようよく、「プログラミングには得意不得意がある(some kids get it, and some kids don’t)」とか、さらには「プログラミングには向いていない子がいる」とか聞きますね。 大学のコンピュータサイエンスの授業の成績分布が、とても良く理解できる生徒と何もわかっていない生徒にくっきりわかれる、という話も聞きます。当でしょうか?Patitsasらの最新の研究によると、実際にはそんなことはなく、くっきりと成績の分布が分れてしまったコンピュータサイエンス入門のクラスは、5.8%に過ぎなかったそうです。 この論文では、「プログラミングには得意不得意がある」という迷信は、プログラミングを学びだしたときに躓きがちな生徒でなく(意識的か無意識的かにかかわらず)、スムーズに学ぶ生徒の方へ教える時間や熱意を費やすことにつながり、ひいてはコン

    プログラミングを教えるときの10のポイント (という論文の紹介)
  • コードを美しく保つためのたった一つの方法 - ボクココ

    ども、@kimihom です。 とあるイベントでエンジニアの方々と話していて話題になった “クリーンなコード” について書いていくとする。 結論から言うと、コードを書かない のが最も美しく保つための条件だと考える。 サービス設計レベルでの"美しさ" を極めよう いくら優秀なエンジニアがサービスを作ったところで、優秀でないプロダクトマネージャーの元で開発をしてはいいコードを保つことはできない。優秀でないプロダクトマネージャーは、機能の多さで他社と差別化をしたり部下の仕事を作ろうとする。この機能が他社サービスにはあるから、うちにも取り入れよう。そんな自社サービスの思想を全く考えない機能をエンジニアに要求するのだ。 その時点で、どんな優秀なエンジニアでも作ったシステムは確実に複雑になる。例えて言うなら、小説家が1冊のの中にうまく章立てをしてまとめていたのに、全く別の話題をそのに書けと言われて

    コードを美しく保つためのたった一つの方法 - ボクココ
  • テスト先に書きたい若者よ - hitode909の日記

    弊社では毎年インターンを受け入れているのだけど,いまもインターンが来てて,テスト先に書きたいけど油断すると先に実装を書いてしまう,とか話してた. 個人的には,テスト先に書くのが大事というよりかは,意識して仕様を先に考えるのが大事だと思っている.テストを先に書くと,先に仕様を考えざるを得ないので,良いスタイルが身につく. 僕がよくやるのは,関連しそうなクラスの絵をひと通りノートに書いてみて,その図だけで,うまく動くことを説明できるくらい考えてみる.その時点でおかしかったら,コード書いてもおかしくなる.ノートに方眼ついてるとクラス図書きやすい.UMLとかじゃなくても,自分で見て分かるくらいでもいいと思う. 紙でうまくいったら,外部仕様だけソースコードに書いてみる.クラス名と,メソッドの定義と,メソッドの上くらいに,ひと通りコメントでも書いてみて,この関数はこういうことをするんです,こういう引数

    テスト先に書きたい若者よ - hitode909の日記
  • Casto :: Live coding in browse, using text editor.

    Live coding in browse, using text editor.

    Casto :: Live coding in browse, using text editor.
  • プログラミングの生産性を上げるには - 聞かれてもいないことを喋る

    Yak Shaving の誘惑に打ち克つ ソフトウェアを作っている途中で、「これを作るのを効率化するためには ○○ が必要だ」と思い、来やっていた作業の手を止めて ○○ を作り始めてしまうことは往々にしてある。 しかしその作り上げた ○○ が最終的に当に(長期的にみて)効率化に役立ったケースは、自分の経験からいって 10 個のうち 1 つくらいではないかと思う。 効率化のための努力をするなということではない。大事なのは、アイデアを寝かせることだ。 人はゴミみたいなアイデアでも、気付かずにこれこそが素晴らしいアイデアだと信じこんでしまう。自分の考えたアイデアには愛着が湧くものだ。 そのアイデアが当に優れているかどうか客観的に判断するには時間が必要だ。最低でも 1 晩、できればもう 2, 3 度は同じ必要性を感じてから作るのがいい。 1 回しか必要性を感じたことのないものをその場の勢いで

    プログラミングの生産性を上げるには - 聞かれてもいないことを喋る
  • 例外設計における大罪 - 契約

    1. 例外設計 における大罪 和田 卓人 (a.k.a id:t-wada or @t_wada) Jun 27, 2012 @ java-ja 12年6月28日木曜日 2. 自己紹介 名前: 和田 卓人 (わだ たくと) ブログ: http://d.hatena.ne.jp/t-wada メール: takuto.wada@gmail.com Twitter: http://twitter.com/t_wada タワーズ・クエスト株式会社 取締役社長 12年6月28日木曜日

    例外設計における大罪 - 契約
  • 「リーダブルコード」が良書すぎて胃が痛い - As a Futurist...

    インフラ系のエンジニアは、あまりリファクタリングとかクラス構造といった視点でコードを読む機会が少なくて、勢い作ったスクリプトやツールはそれはそれはひどいものになりがちです(体験談)。 僕もエンジニアになって以来、まともなコードなんか書いたことなくて、従ってる原則といえば、「グローバル変数は悪」とか「短いことはいいことだ」とか「コメントは書かない方がいい」とか、なんか学生の時にたまたま目にしたよくわからない何かに従ってる程度。 少し大きい規模を書き始めると、昨日の自分と今日の自分で命名規則が全然一貫性なくて、「getHoge()」と「makeFuga()」がおんなじようなことをやってたりしていつも嫌悪感に駆られてました。 ちょうど 1000 行くらいのアプリ書いてたところだったので毎日吐き気をこらえながら「まずは動くものをつくるんだ。全てはそれからだ」と言い聞かせて汚いコードをゲロゲロしてた

    「リーダブルコード」が良書すぎて胃が痛い - As a Futurist...
  • 太一のコードの読み方メモ

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    太一のコードの読み方メモ
  • 無料で見られるプログラミング関連書籍一覧 - YAMAGUCHI::weblog

    はじめに こんにちは、動画配信界の情弱です。年始からStackOverflow眺めてたら超絶便利な質問に神回答がされてたので忘れないうちにメモっておく。2012年どっかで役に立てばいいですね。 参考 オリジナルはこちら。ここではコメントにパラパラと載ってたので、まずは直近1ページ目だけにあったものを1個のリストにまとめてみた。ほぼGeorge Stocker氏による回答を載せただけだけど。あとちょっとだけ自分で和訳とか加えたので、知っているものがあればコメントに載せて下さい。追加します。まだDとかFactorとか載ってないし、Pythonも全然足りないし。 API Only - Stack Exchange もしかするとバージョンが古かったりするものもあるかも知れませんが、それもコメントで教えてもらえるとその旨追記します。 他にも過去に挙がったもののリンク ReadWriteWebのプログ

    無料で見られるプログラミング関連書籍一覧 - YAMAGUCHI::weblog
  • 【翻訳】なぜシリコンバレーはコードの書けるデザイナーを求めているのか? - MOL

    Original:Why The Valley Wants Designers That Can Code(2011-05-31)by Jared Spool もし周りにデザイナーが大勢いるのなら、デザイナーがコードも書けることは価値のあることかどうか話題に挙げてみてください。すぐに、モーゼが紅海を2つに割ったよりも早くデザイナー達の意見は分かれるでしょう。片方はプログラミングは必要不可欠なスキルだと主張し、もう片方はプロミグラミングはデザイナーの価値を下げてしまうと猛烈に論じるでしょう。 興味深いことに、プログラミングもできるデザイナーが価値があるかどうかはデザイナーの決めることではありません。それは採用マネージャーの仕事です。今日の雇用市場に基づけば、彼らがどの立場なのかは非常に明白です。多くの採用マネージャーは スーパーデザイナー を求めています。スーパーデザイナーというのはもちろん

    【翻訳】なぜシリコンバレーはコードの書けるデザイナーを求めているのか? - MOL
  • プログラミング言語別 年収・求人数ランキング(2010年版) 【株式会社ワークポート調べ「2010年IT業界の転職市場」】

    株式会社ワークポート(東京都品川区、代表取締役社長 CEO:田村高広)は、2010年に人材紹介サービス(http://www.workport.co.jp/)で取り扱った求人情報の「応募条件」に記載された代表的なプログラミング言語の「平均年収」および「求人数」からランキングを作成し、言語別に見る転職の市場動向をまとめました。 ■調査結果 調査において、想定年収の平均値が最も高額となったのは、iPhoneの普及によってニーズが急速に高まっている「Objective-C(560.6万円)」だった。求人の詳細を見てみると、そのほとんどが、スマートフォン向けアプリケーション開発者を求めている。これらの企業は、インターネット・モバイル業界のベンチャー企業が多く、25歳~35歳くらいまでを採用ターゲットとしている。募集企業によって差はあるが、おおよそ20代で年収400万円、30代前半で500~700

    プログラミング言語別 年収・求人数ランキング(2010年版) 【株式会社ワークポート調べ「2010年IT業界の転職市場」】
  • 技術系アドベントカレンダー2009のまとめ | iNNX ブログ

    最近は、PHPのMVCフレームワーク「symfony」関連の活動と、多治見IT勉強会などをやっています。 Googleプロフィール ブログへのコメントやツッコミ、twitterやFriendFeedでのreplyなどお気軽にお願いします! Latest Posts 360件のエントリ [12/02]技術系アドベントカレンダー2009のまとめ [12/02]多治見IT勉強会 大忘年会を12/18(金)に開催します [11/25]多治見IT勉強会 第2回もくもく会を11/26に開催します [11/14][golang]CGIでGO!で使ったパッケージなどのメモ [11/14][golang]CGIでGO! [11/05]多治見IT勉強会(第8回)のお知らせ [10/27]北陸アンカンファレンスに参加します [10/26]GALONGE文明崩壊 [10/19]LSL Convention J

  • なんか Go で書くのが流行ってるみたいなので - moriyoshiの日記

    追記:「kzk's blog」の「Writing TokyoCabinet wrapper for Go language」で紹介御礼。この記事は cgo を使った TokyoCabinet のラッパーの書き方を解説しているので、下記のコードと組み合わせて当に tc が backend になっている KVS を書いてみるのもよいかも。 『早速 Go 言語を試してみる!』とか。 『Go で無駄にチャンネルを使ってクイックソートのようなものを書いてみた』とか。 こちらはというと、試しに memcache バイナリプロトコルで通信する KVS もどきを書いた。 サーバのイベントループで go すれば全部済むのが楽ちんですね。 追記: HandleConn() の中で、backend_ch を backend との送信と受信両方に使っていたのだけど、ここにあるように、まったく誤りだということが分

    なんか Go で書くのが流行ってるみたいなので - moriyoshiの日記
  • 早速 Go 言語を試してみる! - IT戦記

    はじめに Google から新プログラミング言語 The Go Programming Language が発表されましたね! というわけで、さっそく試してみたいと思います。 環境は Mac OS X 10.6 インストール さっそくインストール Getting Started - The Go Programming Language を見ながら 環境の準備 ディレクトリを作る amacbook% cd ~ amacbook% mkdir go amacbook% mkdir bin環境変数の設定をする。~/.zshrc に以下を追加 # Go 用 export GOROOT=$HOME/go export GOOS=darwin export GOARCH=amd64 export GOBIN=$HOME/bin export PATH=$GOBIN:$PATH Mercurial を

    早速 Go 言語を試してみる! - IT戦記
  • The Go Programming Language

    Tips for writing clear, performant, and idiomatic Go code

    The Go Programming Language
  • How to Design Programs

    How to Design Programs The First Edition is still available!

  • プログラミング格言集

    psychopathより。 金言、格言は古今東西いろいろあるのだが、ここではプログラミングに関する格言がまとめられていたので、抜粋して翻訳してみる。翻訳に間違い等があった場合は、コメント等で指摘してください。 We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil 私たちは、時間の約97%を占めるわずかな効率に関しては忘れるべきである: 時期尚早な最適化は諸悪の根源だ。 - C. A. R. Hoare Walking on water and developing software from a specification are easy if both are frozen 水の上を歩くのと、仕様に基い

  • コンピューター・プログラミングのイベント開催、1000人が大集合 ドイツ

    ドイツ西部ビンゲンアムライン(Bingen am Rhein)では10-13日の4日間にわたり、CG作成などのコンピューター・プログラミングのイベント「Breakpoint」が開催されている。期間中は1000人以上のプログラマーやコンピューター愛好者らが参加し、共にプログラミングを行う。写真は会場の様子(2009年4月12日撮影)。(c)AFP/DDP/MARTIN OESER

    コンピューター・プログラミングのイベント開催、1000人が大集合 ドイツ
  • tenjin.web/5 MVC その後 - 技術日記@kiwanami

    id:brazilと設計やtenjin.webについて議論。 細かいところと大きなところ 設計レベルの話も重要だが、実装レベルの細かいところも重要。名前とかスコープとかインデントとかコメントとか。(参考:良いコ-ドへの道―普通のプログラマのためのステップアップガイド:連載|gihyo.jp … 技術評論社 by id:agt) そういう細かいところの積み重ねが、大きなプログラムで効いてくる。プロジェクトで実際に使うテクの大半が、細かいテク。大局的な設計の考え方も、実際にはその細かいテクの延長線上にある。 ペアプログラミングとか、グループで実装とか、コードレビューとか、細かいところもネタにしていきたい。 MVCは難しい 実装を進めていくと、どうしてもこんがらがる。VとCが融合するとでかくなるし、VとCを分けるとイベント通知やconnectが複雑になる。 GUI構築時と動作時のスコープが違うの

    tenjin.web/5 MVC その後 - 技術日記@kiwanami