ここの流れで、ウォーターフォール開発/スパイラル開発/アジャイル開発に関する話を書きました。 https://www.facebook.com/masahiko/posts/442480179150002 ご意見、御要望、御質問、ご発注は、Twitterからどうぞw @masahikosatoh
![28歳からのプログラマー](https://cdn-ak-scissors.b.st-hatena.com/image/square/585d68f7d34763397185904cfbcd0e17ba7923a9/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2F28saikaranoprogrammer-121228030134-phpapp02-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
最近になって、ひとつ気付いた事がある。 僕は仕事としてプログラミングやデザインをするのに向いていない。 一応、職業としてはソフトウェア・エンジニアという肩書きを持っており、 UI と UX を専門とする研究職という立場にはなっている。 プロジェクトの進行や状況に応じてプログラマー役、デザイナー役、ビジネスプランナー役をバタバタと切り替えているので、最近は「必要に応じてなんでもやってる感あるので、あんまり自分を専門家的に思えなくなってきたっていうかタダの小間使いでは」としか思えないのではあるが。 ”何か”を作りたい、成し遂げたいと思ってものづくりに取り組んでいない 他のプログラマー、エンジニアやデザイナーが、実際どうなのかは知らないけれど自身がプログラミングを独学で始めた時によく言われた事が 「何かやりたいこととか、作りたいものが無いのに覚えたり学ぼうとしても、効果は低く、あまり意味が無い」
自分のルールを twitter に書いてみました。1時間半ぐらいやってたらしい。 * * * 変数名やクラス名に省略した単語でなく正しいスペルのものを使う。 他人のインデントはいじらないが、間違ってるのはなおす。同じインデントシステムを使う。勝手に発明しない。ちなみに、K&R 大域変数は使わない。Singleton も使わない。インスタンス変数経由でパラメータを渡さない。必要な場合のみに使う。 コメントは関数/メソッドの役割に対しておこなう。bug fix comment には例を含める。 測定を伴わない最適化は無意味で間違っている。 xUnit を使う。 修正前のコードを残すようなことはせず、版管理にまかせる。 fprint() ; exit() ; のようなエラー処理をせず、エラー処理ルーチンを呼ぶ。 malloc を裸で使わない。 use case 図から書き始める。 if else
デモ ニコニコ動画の伝説の動画 「テトリスを1時間強で作ってみた【実況解説】」という動画をご存知でしょうか? 2009年にニコニコ動画で公開されて話題になった動画です。 インタビュー記事:「テトリスを1時間強で作ってみた」動画の投稿者にインタビュー──「プログラミングの楽しさ伝えたい」 この動画ではテトリスをいちから作ってわずか62分で完成させています。 しかし実はスタート直後はMinGWのインストール、EmEditorのインストールに続いてブロック画像の作成などをしており、プログラミングが始まるのは開始13分のところからです。 さらに次の10分は「空のウィンドウ」を作るために時間を使っており、実質的にテトリスのプログラミングが始まるのは動画23分のところからです。 つまり、実質的に40分のプログラミングでテトリスを完成させています。 で、動画を見ながら同じようにやれば誰でもテトリスを作れ
JavaScriptの書籍はjQueryやサンプル中心のチップス本などを含めると、多数出ており、これから勉強したい人にとってはどれから読めばいいか迷うところだと思います。 今日はここ数年で出た書籍の中で初級者から脱中級者になるまでに読みたい書籍を、この順番で読めばステップアップできるという内容で紹介したいと思います。 STEP1. 初心者へのおすすめはダントツでこれ一択。 初心者向けの内容としてはこれがダントツでおすすめです。内容が易しく丁寧な上にサポートサイトで書籍の内容を動画で説明してくれています。 Amazon.co.jp: よくわかるJavaScriptの教科書: たにぐち まこと: 本 サポートサイトはこちら STEP2. 全体を把握するには十分なボリューム。脱初級者向けにはこの2冊。 2冊とも初級者にとっては少し厳しい内容になっていますが、この2冊が理解できれば後は作りまくる
-- 追記@2012-08-08 09:20JST -- この速さなら言える。この前職場(派遣先)でプログラミングテストがあったのだけど、弊社社員の1/3がFizzBuzz解けなかったんだ… — papamitraさん (@papamitra) 8月 6, 2012 これ読んで工エエェェ(´д`)ェェエエ工となり、書いた。 -- 追記ここまで@2012-08-08 09:20JST -- あるいは、「FizzBuzz書けない奴m9(^Д^)プギャー」のもにょもにょ感。 結論だけ、書く。 要らないから。要らないから。要らないから。要らないから。要らないから。要らないから。要らないから。要らないから。要らないから。要らないから。要らないから。要らないから。要らないから。要らないから。要らないから。そして知らないから。 さて、まずはこの問題解こうか。制限時間5分。 タイトル: Ants 問題
インフラ系のエンジニアは、あまりリファクタリングとかクラス構造といった視点でコードを読む機会が少なくて、勢い作ったスクリプトやツールはそれはそれはひどいものになりがちです(体験談)。 僕もエンジニアになって以来、まともなコードなんか書いたことなくて、従ってる原則といえば、「グローバル変数は悪」とか「短いことはいいことだ」とか「コメントは書かない方がいい」とか、なんか学生の時にたまたま目にしたよくわからない何かに従ってる程度。 少し大きい規模を書き始めると、昨日の自分と今日の自分で命名規則が全然一貫性なくて、「getHoge()」と「makeFuga()」がおんなじようなことをやってたりしていつも嫌悪感に駆られてました。 ちょうど 1000 行くらいのアプリ書いてたところだったので毎日吐き気をこらえながら「まずは動くものをつくるんだ。全てはそれからだ」と言い聞かせて汚いコードをゲロゲロしてた
大きく挙げたのは7冊なので、7日の休みで1日1冊ですね! 連休の間に読んでおいて、友達に差をつけよう! うっかり、先輩にも差をつけちゃえばいいと思います。 プログラムを組むとはどういうことか 本を挙げる前に、まずプログラムを組むとはどういうことかということを考えておきます。 ざっくりとした説明なので、だいたいこういう感じ、だと考えてください。 その上で、どのような本が必要かを考えて、本を選んでいきます。 以前描いたものですが、プログラムを作るということと各分野の関係はこのようにあらわせます。 まず、プログラムは最終的にユーザーに使ってもらうためのものです。 ただ、ユーザーはプログラムを直接使うことはできません。プログラムはハードウェアで動かす必要があります。そして、ユーザーインタフェースを介してユーザーが使います。 (ハードウェアからプログラムへの矢印は逆のほうがいいですね) このような、
昨日、@irofさんと飲みながら自分を思い返すと「ちゃんとソフトウェア開発を勉強しはじめてから3年間たった」つまり「@bleisさんを知ってからこの5月でまる3年間たった」 それまでの僕はデザインパターンもオブジェクト指向がなんたるかも、バージョン管理もなにも知らなかった。 毎日言われたことをこなす仕事をして、変えたいけど誰も教えてくれないし、学び方すら教えてくれなかった。 それなりに努力してたけど、よくはわかっていなかった。 そんな状態から抜け出したのが3年前。このブログの先頭でも書いた。当時僕は21歳かな。(ちなみに就職したのは19歳のとき) →【このブログをはじめるきっかけ - うさぎ組】 この3年間でやったことをふりかえってみようと思いました。 ちょっとわかりにくいだろうけど、2009年5月からの12ヶ月周期で書いてみます。 こうやって振り返るのはあくまで僕のためであって、何かを誇
(追記:2012-12-03) 本記事を電子書籍化しました。「Gumroad」を通して100円にて販売しています。詳細は文末に追記しましたので、購入ご検討のほどよろしくお願いしますm(__)m 電子書籍「これからRubyを始める人たちへ」EPUB版 Rubyの特徴 Rubyは、まつもとゆきひろ氏(通称Matz)により設計されたオブジェクト指向プログラミング言語です。Rubyの特徴を一言で言うならば、それは「間口が広くて奥が深い言語」ということになります。 「間口が広い」というのは、インタフェースがシンプルで誰でもが簡単に使い始められることを意味します。「奥が深い」というのは、プロフェッショナルによる長期使用に耐えうる本物の言語であるということを意味します。「間口が広い」ということと「奥が深い」ということは本来競合する概念ではありませんが、その両方をバランスよく組み合わせるには、対象に対する
FrontPage / 言語処理100本ノック 3 秒後に NLP 100 Drill Exercises に移動します。 (移動しない場合は、上のリンクをクリックしてください。) © Inui Laboratory 2010-2018 All rights reserved. 研究室紹介/About Us 過去に在籍したメンバー Members 研究室環境 Lab Facilities ↑研究会/Research Meetings 概要 Overview 総合研究会 Research Seminar 意味研究会 SIG Semantics 談話研究会 SIG Discourse 知識獲得研究会 SIG Knowledge Acquisition Embedding研究会 SIG Embedding KIAI Knowledge-Intensive Artificial Intellige
[読了時間: 1分] 学生エンジニア・デザイナーを対象とした求人情報サービス「JEEK」を展開するTechouseは4月5日、サイト内にプログラミング言語を習得できる新コーナー「JEEK CodeStudy」を開設した。 プログラミング言語学習というと、テキストか動画のインプット型が大半で、“よし、やるぞ” と始めるまでが億劫。ところがCode Studyは、実際のプログラミングと同じようにコードを入力しながら、インタラクティブに学習することができるため、集中しやすく習得しやすくなっている。 解らないことがあったらTwitterやFacebookで質問するという割り切りも、実は現実に則しているわけでいい感じだ。 あたかも本当にプログラミングをしている感覚で学べる 解答を入力するエリアは、プログラミングで使用するエディタさながらのふるまいをするため、初めてプログラミングをするという人にも感覚
このドメインは お名前.com から取得されました。 お名前.com は GMOインターネットグループ(株) が運営する国内シェアNo.1のドメイン登録サービスです。 ※表示価格は、全て税込です。 ※サービス品質維持のため、一時的に対象となる料金へ一定割合の「サービス維持調整費」を加算させていただきます。 ※1 「国内シェア」は、ICANN(インターネットのドメイン名などの資源を管理する非営利団体)の公表数値をもとに集計。gTLDが集計の対象。 日本のドメイン登録業者(レジストラ)(「ICANNがレジストラとして認定した企業」一覧(InterNIC提供)内に「Japan」の記載があるもの)を対象。 レジストラ「GMO Internet Group, Inc. d/b/a Onamae.com」のシェア値を集計。 2023年5月時点の調査。
心底、プログラマとして生きていくのが幸せなんだなと思える人に出会ったことのある@HIROCASTERでございませう。 プログラミングが上達するベストプラクティスってあるんでしょうか? 大学でコンピュータ教えている教授なんかは、そのあたり教えてくれるんでしょうか? あなたの先輩は教えてくれましたか? 昔ながらの職人がいう、見て、まねて、盗め。ですかね? 僕の経験で、いくつか書いてみました。 毎日コードを書くとにかく毎日コードを書いている。 息を吸うように、歯磨きををするように、顔を洗うように、食事を取るように毎日コードを書いている。 テストコードも書く動くソフトウェア側のコードだけでなく、テストコードも書いている。 必然と設計も考える癖が付くわけで…。 ソフトウェア全体を仕上げるまで書く例えば、小さなメソッドだけでなく、クラス全体を。 ソフトウェアとして動作するまで全体を。 全体を仕上げるま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く