僕の場合、実現したいことをコードで書けない時には、ひたすら似たコードを読んで理解して写して…を繰り返す。そのうちに手元に大量の自分のサンプルが溜まっていく。その繰り返しがパターンの細分化を促し、書けるコードの幅を広げていく。書けるコードを気持ちよく書き続けてるだけでは新しいコードは書けないからだ....と、向き合えるようになるには時間がかかった。 書き慣れたコードの延長で書いていると、自分でコードを書けている実感があって、リファレンスなど何も見ずに自分の力でプログラミングできている感があるのだが、ある時これはただ「慣れ」の感覚を高めているように思えた。素早く書けること自体は、それはそれで一種のスキルで素晴らしいのだけど、実現したいことをコードで書けるようになる、という観点で振り返ったときに、どうしても成長を感じなかったのだ。それ以来、まずいと思い、実現したいことを思い描き、それを実現するた
初心者に最初にぶち当たるのが『環境構築』という大きな壁なんですよね。そこで何割の人がスタートラインにすら立てずに挫折するだろうか…5割は超えるかもしれない…— ビタワン@社畜ちゃん②巻2/27発売予定 (@vitaone_) 2017年2月5日 環境構築が壁で、楽しい(かどうかは人によるが)プログラミングにたどり着けなくてモチベーションが、というのはわかるが、環境構築を経験してその辺の洞察身につけてもらわないと現場で困る、というような話もあって、二ヶ月速習でiOSエンジニア、みたいな講習はその視点欠けててダメ— 現場の声 (@mizchi) 2017年2月5日 よほどよくできた環境でもない限り、何作ろうとしても初動でうまいこといくケースが少ないので、それを解決するための勘と体力は絶対に必要なんだよなー— 現場の声 (@mizchi) 2017年2月5日 僕も完全独学でプログラミング始めたの
お題「エンジニア立ち居振舞い」技術的な暴力を振るわない 何事も初めて、ということがあるだろう。 プログラミングが好きで、かつ業務経験もあり、 いろいろなサービスに手を出している人ですら、初めてやったこと、というのがあるはずだ。 ECサイトをつくるため、CGIの処理、ブラウザからの快適な買い物を実現するために独学した小売店経営の個人事業主。 iOS上でのアプリ開発が解禁されて、初めてiOSアプリを開発するようになったWindows向けアプリケーション開発者。Go言語が発表され、初めてGo言語でサーバサイド側のアプリを書いたフロントエンドエンジニア。AWSのLambdaアーキテクチャ == Serverlessという問題の解決、分散の仕組みに心を惹かれHTTPS経由のファイルアップロードの処理をLambdaに寄せたIoTサービスを始めようとしている組込系エンジニア。 Nintendo S
プログラミングを学ぶことは簡単なことではありません。それは誰でも知っていることです。 ですが、残念ながら「プログラミングは簡単!」といった文句でビジネスをしようとするマーケターはたくさんいます。 プログラミングを学ぶことは簡単なことではありません。それは誰でも知っていることです。 ですが、残念ながら「プログラミングは簡単!」といった文句でビジネスをしようとするマーケターはたくさんいます。彼らのプロダクトを使えば、あるいはそうなるのかもしれませんが。 Hearing the WWDC keynote say coding isn’t hard frustrates me.It’s extremely hard. You’re setting beginners up for huge disappointments. — Tyler McGinnis (@tylermcginnis33)

昔々、具体的には約1万7千年前の旧石器時代、大学の情報工学科を卒業して、新卒22歳でSIerに就職した男(以下SE)がいました。 SEはある日、上司に言われました。 「2016年くらいに、銀行で大規模な基幹システムが必要になるらしいから、今から君一人で作り始めて。工数は20万人月ね。」 そういうと、上司はシステム企画構想やそれに伴う提案書、ノートPCを1つSEに渡して、自分は狩りに出かけました。 途方にくれるSE氏、ここから彼の約1万7千年(1万6666年)にも及ぶ、20万人月のシステム開発が始まるのでした。 約1万7千年前 |- 要件定義書を作成着手。 | 周りの人達は狩りをしながら生きている。 | 約1万6千年前 |- 要件定義書の作成が完了する。 | 基本設計に着手する。 | 土器を作り始める人が現れる | 徐々に日本列島が大陸から離れ列島になっていく。 | 約1万4100年前 |-
みなさんはプログラマーの三大美徳ってご存知ですか? プログラミング言語Perlの作者である Larry Wall が↓で述べたのが最初とされています。 http://www.perl.com/pub/1998/08/show/onion.html 三大美徳として 怠惰(laziness) 短気(impatience) 傲慢(hubris) があげられています。 今回はそのうち怠惰(laziness)についてお話します。 怠惰(laziness) 怠惰といえば怠け者。怠け者といえば怠け者メガネ。怠け者メガネを使えば誰でも簡単に美徳を手にいれることができます。 この怠け者メガネを使うと視線は前方に向けたまま下方を見ることができます。本来は寝転がってテレビを見るために開発されたようです。 この怠け者メガネを使ったプログラム開発について説明します。 レベル0 怠け者メガネを装着せずに作業します。

ソフトウェアを作ってて、作り直したり、書き直したりするべきかどうかという話をすることがある。 大きな規模だと、ソフトウェアを作り直す、というところから、小さな規模だと、込み入った機能を書き直す、くらいまであるけど、作り直すとうまくいくのは、次の二つのうちどちらかではないか。 最初に作ったときより世の中の技術が発展したとき 昔のコンピュータでは収まらなかったとか、昔は良いライブラリがなかったけど、今はある、というとき。 単に今ありふれた技術で作り直すと、よいものができそう。 最初に作ったときよりはコンピュータのスペックが上がったので、そのつもりで、並列度倍に上げても止まらないし、より速く動かせる、とか。 昔はバッチで計算しないといけなかったけど、今ならリアルタイムに返せる、とか。 昔は依存管理のよいライブラリがなかったけど、今ならこれ入れたら簡単、とか。 最初に作ったときより人間の技術が発展

ちまちま読んでたオブジェクト指向入門を読み終わった。だいたい入門と言っているが、原題は"Object-Oriented Software Construction"で入門感はないし、上下巻あわせて2000ページくらいあって読みきるのが大変だった。 原著は18年前に発売された本だが、内容のほとんどは今でも有益で、全体を通してためになる。オブジェクト指向が解決しようとしている課題や、背景にある理論や考え方について解説してくれるだけではなく、実際にソフトウェアを設計する際にどのようにクラスを見つけ、どんな場面で継承を使い、ソフトウェア全体をどのように形作っていくのかという実践的な議論も充実している。本の序盤では、ソフトウェアの品質の様々な側面についての解説や、オブジェクト指向以前から使われていたモジュールや型の概念のがもつ諸課題について詳しく解説してくれる。それらの問題をふまえ、次に、ソフトウ

経験あるプログラマが初心者に言ってしまいがちだが、初心者のモチベーションに悪影響を与えるパターンを指摘する。言った方、言われた方、あるいは聞いたなど、何らかの形で誰もが身に覚えのある内容。 経験のあるプログラマと、プログラミングを習い始めたばかりの初心者の会話の例。 プログラマ : やあ、プログラミングの勉強を始めたんだって?いいじゃないか、何を勉強してるんだい? 初心者 :PHPとHTMLの基礎をやってるんです。MacでTextMateエディタを使ってます。 プログラマ : ひええ、PHPなんて間抜けな言語かよ。Ruby onRailsを覚えて、Herokuにデプロイ、Vimでコーディングした方がいいよ。TextMateなんて初心者向きじゃないか。それから、Node.jsもやった方がいいな。あれはすっっっごくいいぜ。ノンブロッキングIOだからな。ヒャッハー! 初心者 : うーん、そう
YAPC::Asia Tokyo 2015 前夜祭に参加して、柴田さん( hsbt さん)とモリスさん*1( tagomoris さん)の講演を聴いた。特に最後のモリスさんの講演を聴いていて、ちょっとした衝撃を受けると共に、気づきや疑問もあったので、久しぶりにblog エントリを書こうという気になった。 なお、このエントリは講演メモや浮かんだ疑問、その後の議論等を記したものであり、すっきりとした結論は無いのでご注意。 モリスさんの講演 講演資料が公開されていた How tocreate/improve OSS products andits community from SATOSHI TAGOMORI 講演時に取ったメモがこちら 我々にできるOSSとそのコミュニティの育てかた ======================= id:tagomoris TD のモリスさん TD はデー

「お帰りなさいませ!読者様\(^o^)/」 最近僕は外で趣味のプログラミング作業をするのに最適な場所を見つけました。 秋葉原のメイドカフェです (゚Д゚) ハア?? お前は「萌え萌えきゅーーーん!」しながらコーディングできるのかと思ったあなた、ちょっと待ってほしい!メイドカフェこそプログラマーが趣味でプログラミングをする最高の場所であると叫びたい。 このことを、もっとみんなに伝えたく、この記事を書きます。プログラマーの作業場としての条件 僕は自宅ではあまりPCを使用しないので、外で快適に作業できる場所を探していました。 電車でコーディングしてみたり 首都圏でJR線の一筆書きルールを利用してノマド作業をするのに適したコース9選 コワーキングスペースもいくつか利用しました。そんな僕には悩みがありました。まずはその悩みを打ち明けます。 コワーキングスペースは緊張する コワーキングスペースはノー

こんにちは、技術部 高井です。 春といえば、フレッシュマンの季節ですね。このブログを読む方の中には、明日からエンジニアとして新社会人になるという方もいらっしゃるのではないでしょうか。クックパッドでも新しい仲間を迎えるための準備をしていたところで、その準備の一環として「新卒ソフトウェアエンジニアのための技術書100冊」というものを作成しました。 この100冊は、職業ソフトウェアエンジニアとしてキャリアを積むにあたって、読むべき技術書に悩んだら、まずはこのリストから選ぶとよいのではないでしょうかという提案です。 リストに多少の趣味や主張がはいっているのは、まあご愛嬌ということでお許しいただければとおもいますが、職業プログラマとして知っておくべき知識を網羅できるように心がけました。古典と呼ばれる名著についてはできるだけ取りいれ、独習が難しい難解なコンピュータサイエンスの教科書は避けています。これ
This document summarizes a microservices meetup hosted by @mosa_siru. Key points include: 1. @mosa_siru is an engineer at DeNA and CTO of Gunosy. 2. The meetup covered Gunosy's architecture with over 45GitHub repositories, 30 stacks, 10GoAPIs, and 10Python batch processes usingAWS services like Kinesis,Lambda, SQS andAPIGateway. 3. Challenges discussed were managing 30 microservices, ensur
Photo by JohanBichel Lindegaard こんにちは。谷口です。 皆さんは、プログラミング教育が盛んになってきていることはご存知でしょうか? 日本でもすでに2012年の新学習指導要領により、中学校の「技術・家庭」において、従来選択科目であった「プログラムと計測・制御」が必修科目となっていますが、意外と知らない方も多いようです。 2020年には日本のWebビジネスの市場規模が2010年時点と比べて4.5倍に拡大すること、またそれによりWeb系企業の雇用者数も150万人増加をすることが見込まれています。(日本の成長を支える産業 「ウェブビジネス」P13、14) 業界が成長していく中で、より多くのエンジニアが必要とされ、その教育・育成は不可欠なものとなっています。 最近は、世界でも多くの国で早いうちからプログラミング教育が実施されており、少なからず国内企業の成長や利益拡大

柄にもなく健康の話をします。 去年の今頃は京都から東京に引っ越してきたところでした。まだはてなで働いていましたが、勤務形態は自宅からのリモートが主になっていました。週に6日は家から出ずに家でコードを書いていました。昼から早朝まで書いて昼からまた早朝までコードを書くような、ある意味規則的な生活です*1。 この間、生産性はかなり上がっていて、起きているときはもちろん、寝ている間も脳が活動を続け、睡眠中に考えたアイデアを唐突に起き上がってホワイトボードに書き込むみたいな状態でした。 しかし、1ヶ月くらいすると体調が悪くなってきます。なんか左脳の後ろ側が死んでるみたいな。 なんか脳が欠けてる感じがする— fukamachi (@nitro_idiot) January 12, 2014 あと心臓が異常にバクバクする。座るのもきつくなってくるのでだいたいダメ人間ソファに沈んでHHKB叩いてるみたいな

はじめにいつもお世話になってます! 助かってます! ありがとうございます! 解説サイトの人は特にありがとうございます! How to doは多いけど、Why I did in this wayで書かれてる記事が極端に少ないことたぶん備忘録として書いている人が多いと思うんだけど、マニュアルのような書き方が多い気がします。いやまあマニュアルがないよりは遥かに嬉しいことなんですが。重ね重ねいつもありがとうございます。 『AしてBしてCすると、コレができる! かんたん!』で終わっていることが多いです。多いというか、ほぼこれです。 『ほげほげのためにA、もげもげのためにB、FUBARのためにCすると、コレができる』というように書いてくれると相当嬉しいです!別に『これこれをクリックして…』とか『bashとはうんたらかんたら』とか詳細を書かなくてもいいので、こういう目的のためにやったと書いてくれると嬉し
新しい現場にはいったときに心がけていること、クソコードと呼ばないこと。 誰かのコードを読んでいるとそりゃまあクソコードを見つけることがある。その時どう立ち向かうかという精神論の話。 例えソレがそうであってもソレを口にするとネガティブが蔓延する。思ってもイイ、でも言ってしまってはならない。あるフェーズに置いては必要だった し、現に動いていて価値を提供している のだ。あるべき姿を叫ぶの簡単だ。あるべき姿を見ているなら行動しないといけない。見つけたらリファクタだ。出来るところからやるんだ。 Shut the fuck up and write some code & 許可を求めるな Pull Request せよ— 🌈KOSHIKAWA (@ppworks) 2014年5月23日 クソはクソと言える空気や文化は大事。良くないものを指摘できるようにはしたい。口の前に手を動かそう。プログラマーなら
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く