タグ

ProgrammingとProgrammerに関するatsushifxのブックマーク (22)

  • 『達人プログラマー 第2版』/ Pragmatic Programmer 2nd Ed.

    #devsumi 2022 https://event.shoeisha.jp/devsumi/20220217/session/3650/ 「ITエンジニア大賞2022」に『達人プログラマー 第2版』が選出されたそうで、ご縁があって著者でも翻訳者でも編集者でもないのにプレゼン大会でピッチすることになりました 😇 Further Reading: * goto.bookclub: https://gotopia.tech/bookclub/episodes/pragmatic-programmer-in-2020 * 『達人プログラマー 第2版』(PDF版)https://tatsu-zine.com/books/the-pragmatic-programmer-2ed * 角谷信太郎 × 和田卓人 ピアソン技術書のゼロ年代と俺たち ―"OO厨"史観のふりかえりと、技術書翻訳のこれから

    『達人プログラマー 第2版』/ Pragmatic Programmer 2nd Ed.
    atsushifx
    atsushifx 2022/02/18
    個人的には、「革新的ソフトウェア企業の作り方」「ソフトウェア開発者採用ガイド」や「マーベリック・カンパニー」の電子書籍版が欲しい
  • プログラムにコメント書かない文化もあるよって話|NZ MoyaSystem

    以下の記事を読んで。 530000micro.hatenablog.com 僕が勤めている会社では、原則、プログラムにコメントを書かないのがルールです。 人生で初めてプログラムに触れてからこのかた、プログラムには必ずコメントを書けと指導されて来ましたし、自分自身も、後輩たちにちゃんとコメント書けよと言い聞かせてきました。そんなわけで、最初に全然コメントのないソースコードの山を見たときは、正直「ゲッ、なんじゃこりゃ……」と面らったのは確かです。 ところが、「なぜうちのプログラムにはコメントがないのか?」と同僚に尋ねてみると、実に納得の行く回答が返ってきたのでした。 なぜコメントが必要なプログラムを書くのか? 同僚いわく、「コメントが無くても読めるようなプログラムを書け」という思想が根底にあるのだそう。 適切に関数や変数が命名され、スコープがきちんと管理され、ロジックの流れが整理されているコ

    プログラムにコメント書かない文化もあるよって話|NZ MoyaSystem
    atsushifx
    atsushifx 2016/04/22
    原則コメントを書かないであって、まったく書かないわけではない。問題はコメントを含むドキュメントと実際のコードの乖離であって、必要なコメントは書くべき。ここらへんはアジャイルでのドキュメントレスと一緒
  • コードを直訳したコメントは必要なのか?「要る派」と「要らない派のまとめ」【 社畜ちゃん台詞メーカー 】

    コードを直訳したコメントは必要なのか? というお題を 社畜ちゃん台詞メーカーで画像を作って投下してみたところ、たくさんのご意見をいただいたのでまとめてみました。

    コードを直訳したコメントは必要なのか?「要る派」と「要らない派のまとめ」【 社畜ちゃん台詞メーカー 】
    atsushifx
    atsushifx 2015/07/03
    当然、いらない。コメントはコードではかけないこと。コードの意図やほかのアルゴリズムにしなかった理由、コードが難しいときの説明を書く。日本語の説明がほしいなら、Javadocとかに書け
  • プロのプログラマーになるために本当に必要なスキルとは | ライフハッカー・ジャパン

    プロのプログラマーになりたいなら、コードを書けるだけでは足りません。チームでの問題解決やバージョン管理など、コーディング以外にも身につけるべき重要なスキルがいくつもあります。今回は、米Lifehacker読者のみなさまの声をもとに、プロの開発者として必要不可欠なスキルとは何かを見ていきます。 コードを学ぶための情報は世の中に溢れています。そのせいか、プログラミング言語さえ習得すれば、プロの開発者になれると思い込む人がたくさんいます。しかし、他の職業と同じく、優れたプロフェッショナルになるには、たった1つのスキルで足りるはずがありません。開発者に必要なスキルをここですべて列挙することはできませんが、以下に、当に重要なスキルをいくつか紹介しておきます。 コミュニケーションを学ぶ プログラマーは孤高の職人である、と喧伝するメディアもありますが、実際は、他者とのコミュニケーションや共同作業が欠か

    プロのプログラマーになるために本当に必要なスキルとは | ライフハッカー・ジャパン
    atsushifx
    atsushifx 2015/01/28
    そもそも米国の記事なんだから対象のプログラマーはソフトウェア工学を修めたレベル。そのうえで仕事としてプログラマーになるために必要なことが書いてある。日本の未経験からと一緒にするとひどい目を見るだけ。
  • 就活生がITエンジニア/プログラマを目指す前に伝えておきたい業界の真実と現役エンジニアからのアドバイス - こんにゃくマガジン

    はじめに 日IT業界では、技術職求人に対して、ちゃんと専門教育を受けていない(独学で身につけたわけでもない)人の応募の割合がとても高く、絶大なる不幸を生み出しているのが現状です。 これから社会人になる就活生の皆さんには、できれば不幸な人生ではなく幸せな人生を歩める選択をしてほしいとの願いから、このエントリーを書きました。 注意:ITエンジニアとして就活をしてプログラマー的な仕事が主な業務になる人が多いと思うので、この記事に出てくるITエンジニアという言葉は、プログラマーのことだと思って読んでいただけると幸いです。広い括りの題名をつけてしまってすみませんが、インフラ/ネットワークエンジニアやメーカーのエンジニアの話は出てきませんので、ご容赦ください。 目次 背景 プログラミング言語を覚えよう データベースの使い方を覚えよう オリジナル作品を作ろう(ここが一番大事) IT系の勉強会に参加し

    就活生がITエンジニア/プログラマを目指す前に伝えておきたい業界の真実と現役エンジニアからのアドバイス - こんにゃくマガジン
    atsushifx
    atsushifx 2015/01/26
    SEの現実はいいとして、まずFizzBuzzができるかどうかを言わないのはどうなんだろう。昨今は開発やテスト環境の構築もスクリプトで自動化だろう。/生産性はピープルウェアででてきたけど30倍だったような。
  • 成長の場を求めないソフトウェアエンジニア?:柴田 芳樹 (Yoshiki Shibata):So-netブログ

    「ソフトウェア開発組織が持つべきカルチャー」と題して、過去に以下の記事を書いています。 継続した学習習慣 コンピュータの基礎を教える 共に学ぶ マネージャが勉強会を主催する プロセス中心ではなく、スキル中心 スキル向上に真剣に長期的に取り組む カンファレンスへ積極的に参加させる コードをレビューする Source Code Controlへ最低でも毎日コミットする ビッグバン・インテグレーションを避ける テストを自動化する ソースコードを調べる 自分で書いたコードを自分で見直す 知識教育だけではなく、良い行動パターンを促進する また、「コードレビューの視点」として、以下の記事を書いていいます。 Copyrightを書く 必要なエラー情報を付加する マルチスレッドプログラミングに注意する 言語仕様を確認する 独り言コメントは書かない 説明とコードが違っていないか注意する 知識の伝達の場 エン

    atsushifx
    atsushifx 2014/08/24
    厳しいと言えば厳しいけどプロフェッショナルならあたりまえのこと。現在はCIやITSなどのツールもそろってるし、やらない理由はない。あえて付け加えるならコメントもきちんとレビューしてほしいくらい
  • 『なぜ60%の人はプログラミングが出来ないのか』

    プログラミングが出来る人間からみると、プログラミングが出来ない人の理由は単純に「ちゃんと勉強しないからだ」ということになる。 たしかに、自分達が歩んできた過程は、SDKやIDEの設定を行ってコンピュータの開発環境を整え、全く意味不明なアルファベットを打ち込んで、ウェブサイトやで言われたとおりの表示が出ることを確認して、また次のステップをやってみて、という「地味で地道な(そして性格まで暗くなりそうな)」ことを繰り返して出来るようになったものなので、その過程から逃れているからプログラミングが出来ないんだろ、というのはごく自然に思う。 このため、プログラミングを教えようというときに、地味で地道で性格が暗くなってハゲて死にそうな学習過程の苦しみを、いかに和らげられるかという試みは数多くなされている。codecademyやRails for zombiles: code schoolなど、ゲーミフ

    『なぜ60%の人はプログラミングが出来ないのか』
    atsushifx
    atsushifx 2014/08/20
    この論文は有名だし、FizzBuzzのもとになってもいるのでいまさらな話。それにプログラミングで大事なのは抽象化と名前付けであって、そこに触れていないので意味がない
  • ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 最近、あまりプログラミングが得意でない人のサポートをする形で、長い時間にわたってペアプログラミングを行っている。そのなかで、気がついた悪い習慣と成長するための良い習慣というものをまとめてみる。 この記事のバックグラウンドとなる体系的知識がになりました。 エンジニアリング組織論への招待 ~不確実性に向き合う思考と組織のリファクタリング あわせて読みたい 経営者マインドが足りない!vs. 現場に任せてくれない!の対立をなくすカードゲームをつくった話 新人プログラマに知ってもらいたいメソッドを読みやすく維持するいくつかの原則 新人プログラマ

    ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習
    atsushifx
    atsushifx 2014/05/25
    それこそTDDを叩き込むべき話。小さくして頻繁に確認することがBugを減らす一番の近道だし、それをうながすためのユニットテストなのに。ただソフトウェア工学をきちんと勉強していないとわかりにくいのかもしれな
  • プログラミングを学ぶ方法がわからない

    最近、プログラミングをどうやって学べばいいのかわからなくなってしまった。 筆者はドワンゴに雇われている。ドワンゴに入社して早4ヶ月になろうとしている。ドワンゴに雇われている名目は、C++の啓蒙である。C++の啓蒙にはC++教育も含まれる。したがって、筆者はそろそろC++教育をしなければならない。 筆者は、プログラミングを教育する最良の方法は、参考書を執筆することだと考えている。直接対面して教えるのは非効率的だ。文章を書いておけば、大勢が学べる。では、どのような参考書を執筆すればいいのか。すでにC++11のコア言語の参考書は書いた。 EzoeRyou/cpp-book C++14対応も、正式なC++14規格制定後に行わなければならない。そしてライブラリは、もし他にやる人がいないのであれば、やらなければならないだろう。 しかし、これらのは、C++をこれから学び始める人向けではない。C++

    atsushifx
    atsushifx 2014/05/22
    自分だったらこういう人は捨てるかな。他力本願で自分で調べることをしない人に教えても無駄な感じがする。特にエンジニアは自分で解決法を見つけることが仕事のようなものだろう
  • 非エンジニアの新卒にプログラミング研修を行いました - pixiv inside [archive]

    今年のピクシブ株式会社には総合職 2 人とデザイナー 2 人が新卒として入社しました. そんなフレッシュな新卒に新卒エンジニアがプログラミングの基礎を教えろというお達しが出ました. ということで秋卒業で既に入社していた私(@catatsuy)とアルバイトから入社した 2 人(@geta6/@RooandQoo)の合計 3 人中心でプログラミング初心者向けに研修内容を考えました. 題材 @tarbrick からのリクエストで最終目標は『画像投稿掲示板を作る』ことに決まりました. 方針 今回のプログラミング研修の目的は総合職・デザイナーの人たちをエンジニアにすることではありません. エンジニアの人たちが普段の業務でどういったツールをどういった流れで使っているのかを学ぶことで,円滑にエンジニアとコミュニケーションを取れるようにすることが目的です. そこで方針として以下のものを決めました. 全員

    非エンジニアの新卒にプログラミング研修を行いました - pixiv inside [archive]
    atsushifx
    atsushifx 2014/04/28
    確かにWindowsでの開発環境の構築は面倒くさい。とくにプログラミング言語だと環境変数の設定とかが鬼門になりそう。コマンドプロンプトはUNIX系シェルと比べると低機能だし、PowerShellは基本的に使わないし
  • プログラマーになりたいんだけど

    6 名も無き被検体774号+ :2013/04/03(水) 23:41:54.16 ID:8MPOUrdS0 なにやりたいの? 7 名も無き被検体774号+ :2013/04/03(水) 23:42:19.32 ID:t+OMonW50 12 名も無き被検体774号+ :2013/04/03(水) 23:44:53.56 ID:8MPOUrdS0 >>7 じゃあゲームをつくるんだ 8 名も無き被検体774号+ :2013/04/03(水) 23:42:28.08 ID:GewiGd0Y0 いちおう高2でプログラミングしてる 何か質問あったら答える 10 名も無き被検体774号+ :2013/04/03(水) 23:44:18.33 ID:t+OMonW50 15 名も無き被検体774号+ :2013/04/03(水) 23:47:58.32 ID:GewiGd0Y0

    プログラマーになりたいんだけど
    atsushifx
    atsushifx 2014/03/08
    プログラマといいつつSIerのIT土方しか紹介されてないな。適性があればの話だけど一番いいのは英語と数学を覚えてシリコンバレイにいく。プログラマーの給料の桁が違う。で、がちにコンピュータサイエンスを勉強する必
  • 日本人プログラマーについての記事が Hacker News で話題になった

    東京住まいの外国人プログラマーが日人のプログラミング世界について記事を書いて (Jawaad Mahmood 氏のブログ記事)、その記事が Hacker News で取り上げられて、話題になった。 "My hypothesis is that a lot of Japanese companies produce little new because they have people solving solved problems over and over again." 以下、拙訳。(*) がついているところは訳していて意味がくみ取れなかった部分なのでコメント頂ければ幸い。誰か Hacker News へのコメントも要約してくれると助かる。 昨日、コーヒーを飲みながらアール氏とアキバに関する話題やらボードゲームやビジネスについて話していた。まじめな話題としてはプログラミングについて、

    日本人プログラマーについての記事が Hacker News で話題になった
    atsushifx
    atsushifx 2014/03/06
    HackerNewsのコメントの抄訳があるが、 http://mssi.blog29.fc2.com/blog-entry-830.html そのまんま。OSSやフレームワークが発達して日本のSI業界は相変わらず変わっていない
  • 技術的負債という(非エンジニアにとっての)隠しパラメータが生産性100倍を起こす - mizchi's blog

    元糞コードマイスターとしては、生産性については思うところある。 技術的到達深度が深い人じゃないとそもそもかけないコードってのももちろん存在して、その前提で10倍とか100倍になりうる話をする。 そもそもマイナスになる人がいるって話。 隠しパラメータをモデル化 エンジニアA:「週に10の成果を出して3の負債を生む人」を考える。この人は開発を止めてリファクタリングをすれば10-3 = 7の技術的負債を返却できるとする。 ここで正確には成果10には* aの係数が掛かっている。これはプロジェクト開始時1.0で、技術的負債が貯まるほど0に近づいて行く 次に、エンジニアB:「週に15の成果を出して10の負債を生む人」を考える(これにも係数aがかかる)。この人は見た目上は上の人の1.5倍速く成果を出しているように観測できるが、負債もたまりやすい。リファクタしても綺麗になりにくい。 これは割とエンジニア

    技術的負債という(非エンジニアにとっての)隠しパラメータが生産性100倍を起こす - mizchi's blog
    atsushifx
    atsushifx 2014/02/19
    情報系の大学生ならモジュールの疎結合やテスタビリティとかについて習っているはずなんだが、そういう知見が日本のソフト開発会社にはほとんど見られないのがね。一時請負のPMとかもそうなので泣ける
  • Chris Oliver

    Developer, Founder, and Podcaster. I'm Chris Oliver, a software developer based in St. Louis, Missouri. I'm the founder of GoRails, a company focused on helping Ruby on Rails developers learn, build, and deploy their ideas.

    atsushifx
    atsushifx 2014/01/06
    アメリカでもギークとスーツのあいだの溝は深いみたい
  • プログラマではありませんが、プログラマの話をさせてください - mixi engineer blog

    はじめまして。8キロのダイエットに成功しましたが、最近リバウンド気味の土戸と申します。 私は今、弊社イノベーション・センター案件である、Plannah(プランナー)のプロダクトマネージメントとマーケティングに携わっております。 先日我がチームの開発メンバーである衣川から、簡単にPlannahの紹介がありました。多くの方々に記事を読んで頂き、そしてPlannahに関心を持って頂き、大変感謝しております。日は、Plannahの話は割愛させて頂き、ちょっとしたプログラマ話(?)をしたいと思います。 私はプログラミングを職業としているいわゆる"プログラマ"ではありません。ミクシィに新卒入社した2009年からしばらくは営業マンでしたし、その後も今に至るまでサービスディレクターとして勤めてきました。少しさかのぼって、小学校の頃は当時流行っていたGW-BASICでmud gameなどを作ってみたり、大

    プログラマではありませんが、プログラマの話をさせてください - mixi engineer blog
    atsushifx
    atsushifx 2013/11/01
    プログラマというよりエンジニアの思考法を知っておくといいという話。その意味ではプログラマー側もデザイン、マネジメントの話ができたほうがよい。基礎部分でもいいから
  • 一人でコードを書きなさんな - Line 1: Error: Invalid Blog('by Esehara' )

    とりとめのない話をメモがてら。 最近、コードを読むことが多くあるのだけれども、「このコードは一人で書いているな」という感想を覚えることが多い。もちろん、基的にはコードというのは、物理的には一人で書くものであるのは間違いないのだが、たぶん、それとはまた別種のものだ。 僕がこの世界でメシをう数年前に、PHPユーザーは他の言語を知らないから、他の言語の良いプラクティスを知らないという批判が議論を呼んだことがあるようだ。このさいPHPはどうでもよく、問題は「他の言語の良いプラクティスを知らない」ということだ。プログラミング言語というのは、そのときに共存しているお互いのパラタイムと関係している。例えば、最近ならJava8がOption型を導入しようとしているのは、やはり「関数型言語」というのが成熟してきて、その方法論が有益なものとして受け止められるようになってきたからだ。C++もラムダを取り入れ

    一人でコードを書きなさんな - Line 1: Error: Invalid Blog('by Esehara' )
    atsushifx
    atsushifx 2013/10/30
    独学だと壁に当たるよという話かな。プログラミング技術をあげるならよいコードを読むことが重要。達人プログラマーだかなにかで読んだけど、プログラマーなら1年にひとつ新しい言語を覚えよとかあったし
  • いかにしてバグらないか?

    ●ある日 とある冬のある日,私が担当するプログラムは無事に完成し「納品」という作業を行っていました. その日,予定していた作業を無難にこなし,定時で帰ることを確信し,機嫌よく残りの時間をすごしていました.気持ちはすでに明後日からのスキー場. と,そこに「ビビビ!…」取ってはいけない電話のベルがけたたましく鳴るのです.「はい.アプリケーション開発部です」「山崎君?,例の仕事は終わっているよね?」「あ,はい.後は納品のみです」「急な話で申し訳ないのだけど,明日こっちに来てくれないかな?」「(ゲ!ヤバッ!なにか断る用事を考えなくは…)明日ですか?」「なんとかなるよね?」「は,はぁ,まぁなんとかなりますが…」「じゃぁ明日ね,よろしく(ガチャ!,ツーツー)」.翌日,この嫌な予感は的中します. 話を要約するとこうなります.「某プロジェクトが火をふいているので,助けてほしい.期間はあと1月.仕様書はない

    atsushifx
    atsushifx 2013/10/09
    火事場プロジェクトの法則の山崎さんのWebサイト。Internet Archiveのおかげで読める。
  • プログラミングは「教わる」ものか、「学ぶ」ものか?【連載:中島聡】 - エンジニアtype

    UIEvolution Founder 中島 聡 Windows95/98、Internet Explorer 3.0/4.0のチーフアーキテクトを務めたエンジニアNTTに就職した後、マイクロソフト日法人(現・日マイクロソフト)に移り、1989年、米マイクロソフトへ。2000年に退社後、UIEを設立。経営者兼開発者として『CloudReaders』や『neu.Notes+』、教育アプリ『neu.Tutor』といったiOSアプリを開発する。シアトル在住。個人ブログはコチラ 今回は、脚光を集めるようになってきた「プログラミング教育」について、わたしなりに考えをまとめてみました。 日では、政府が今年6月に成長戦略「世界最高水準のIT社会の実現」の素案としてプログラミングの義務教育化を提唱したり(参照記事)、プログラミング教育事業を始める企業が増えたりと、官民双方で教育熱が高まっていると聞

    プログラミングは「教わる」ものか、「学ぶ」ものか?【連載:中島聡】 - エンジニアtype
    atsushifx
    atsushifx 2013/08/08
    盗むものじゃないか
  • プログラミングの初級になるためにの目次

    http://anond.hatelabo.jp/20130325172822 の続き 言語はJava7を想定。(Java8が迫っていますが、Lambdaなど関数型は、まだ早いと言うことで) 選定理由は、C++と比較して学べるところが大きく、安全でシンプルな言語だから。 ※いきなりJavascriptはやめとけ、PHPは論外。 RubyScalaでないのは、筆者が初心者には適切には教えられないから。 おもちゃ・ToyとしてjQueryで遊ぶのは、悪くは無いと思う。 0.はじめにこれ以降は名著の紹介や学習方法の紹介が主体となります。名著のコンポジションという形が時間的限界ですね。 量については「初級になるなら、専門書を計3,000ページは修得することは覚悟してね」なんて言ったりしています。 Javaで初級のわかりやすい指標ですと、[amazon:Effective Java]とGoFまでの

    プログラミングの初級になるためにの目次
    atsushifx
    atsushifx 2013/03/27
    炎上耐性なさすぎて逆ギレしてる。こういうこと書くと抽象データ型の説明とかDbCがなぜ必要かとかを聞きたくなるし、カウンタブル、不完全性定理、O(n)くらいは説明してほしくなる
  • プログラミングの入門

    プログラムの定義プログラム:定義づけられた物事を進めていく妥当な手順・方法の決定、および物事・手順・方法の記述書 プログラミングの定義(コンピューター)プログラミング:コンピューターが進めていく物事を定義し、妥当な手順・方法を決定し、記述すること。 プログラミング = デザイニング union コーディング; デザイニング:進めていく物事を定義し、妥当な手順・方法を決定すること。 コーディング:コンピューターが進めていく定義づけられた物事の決定された妥当な手順・方法を、記述すること。 プログラミングに関わる人々PG(プログラマー):プログラミングする人。 CD(コーダー):コーディングする人。プログラマーとは限らない。 SE(システムス エンジニア):進めていくべき物事を定義する人。プログラマーとは限らない。 PM(プロジェクト マネージャー):(プログラマー)プログラマー。(コンピュータ

    プログラミングの入門
    atsushifx
    atsushifx 2013/03/25
    自分の中途半端な技術自慢にしか見えない。データ構造をいうなら二分木、キュー、スタックとかを説明すべき。あとプログラマーなら最低限FizzBuzzを書けることが基本