サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
今年の「#文学」
yasuho.hatenablog.com
みなさまにとってプログラミングとは何でしょうか。 プログラミングとは何なのか - hitode909の日記 えっとね。 私にとってプログラミングとは パズルゲーム プログラミングは最高に楽しいパズルゲーム。 人間がやりたいことを、いかにしてプログラムで実現するか。問題を解く方法をあれこれ考えることは、まさにパズルゲームをやっている感覚。しかも毎回問題と解き方が変わる。元来飽きっぽいボクが、何十年もプログラマを続けてこられた理由がまさにこれだと思う。 思考実験 プログラミングは思考実験の繰り返し。 人間のやりたいことと、プログラムの間には大きな隔たりがある。アルゴリズムを考えて実際に動かしてみたら、思ったイメージと違った、なんてことは普通だ。自分が思ったようなプログラムを作るには、何度も思考実験を繰り返す必要がある。そこに完璧なものはなく、その気になれば永遠にできる。時には全部作り直したくな
どのようにすればプログラミングができるようになるかということに興味を持つ人が多い 一方、実際にプログラミングを仕事にしている人から学習方法を聞く機会は少ない。 いつ、どのようにしてプログラミングを学習した? | スラッシュドット・ジャパン デベロッパー どうやって学んだんだっけ!? これからプログラミングを学ぶ人の参考になるかもしれないので、ぼくが学んだ過程を書いてみることにする。長いから、興味ない人は次の節まですっ飛ばしてね :) どうやってプログラミングを学んだか きっかけは 高校生の頃、BASICのプログラムリストを秋葉原のマイコンショップで見つけたこと。友人に入力方法を教えてもらい、リストをマイコンに打ち込んでみるものの、エラーが出て動かない。ただ、プログラムは番号順に実行されて、計算結果をAとかBに格納し、PRINTで結果を出力する、ということを感覚的に理解する。 その後雑誌やプ
まずはレビューするポイントを絞ることが大切だと思う。 コードレビューに慣れないチームが、何の考えもナシにコードレビューを始めるととにかく気になったこと大小様々な指摘が行われることになる。一見、いろいろな指摘が出て議論が活発になっているように見えるが、だいたい議論が紛糾しているのは「コードのインデント幅が違う」とか「return が省略されてる。俺は return があったほうが好み」とか「その場合は字下げをした方が綺麗にみえるんでは」とか、そんな些末なことばかりである、ということが多い。必ず一度は通る道である。 些末なコードレビュー - naoyaのはてなダイアリー ぼくが思うに、この話の本質はそこじゃなくて、はてなブログのjsのコメント見たら「はてなブログって大丈夫なの!?」って思えてしまって、じゃあ技術的にはどうなのよ!?ってとこだと思うんだけど、そこは置いといて、個人的に興味がある「
根幹にあるのは、ソフトウェア技術者の地位の低さだ。 しかし、10年、20年とプログラマをやっている人って、自分が知るかぎりではかなり少ない。自分の身近な存在で挙げると、17年プログラマとして働いている先輩が1人いるくらいだ。業界自体が若い、なんて話もあるが、仕事としてプログラムを書いていた人は1960年代から存在していたようなので(「闘うプログラマー」参照)、10年間仕事でコードを書き続けている人がいてもおかしくはない。 10年後もプログラマとして働き続けるために考えていること - seri::diary 日本ではプログラマとして長年勤めることはとても難しい。それは「プログラムなんて若い人に書かせておけばいい」という意識が業界に根強くあるからだと思う。ソフトウェアなんてハードウェアのオマケなんていう大昔の価値観。 根幹にあるのは ソフトウェア技術者の地位の低さなんだ。 「いっぱいお金もらい
(現在は)ソースコードを「写経」する意義もあまりないと思う。 あるブログが「写経には効果がない」という趣旨のことを書いていて「何を言ってるんだ?」と思いじっくり読んでみたら、彼の言う写経は「動くとわかってる10000行のコードを何も思考せず作業として書き写すこと」を指しているようだった。「そんなわけないじゃん」と笑ってから「もしかして世の中は写経をそういう捉えてるのか?」と不安になった。 プログラミング学習手段としての写経について - 西尾泰和のはてなダイアリー そっか。最近よく聞く「写経」って言葉になんか違和感を感じていたんだけど、そういうことか。「ソースコードを何も考えずに書き写す」ってニュアンスがあるのね。 確かに言葉が良くないんだな。ぼくの知る「ソースコードを書き写す作業」ってのはそんなイメージじゃないんだ。なんて言うかな。「スポーツの練習で何のための練習か分からなかったけど、後に
そもそもエンジニア、モノづくりをするひとたちには一度作ったものには愛着を持ってしまう。それは自分が労力をかけたことに対する強い思いなのかもしれない。だから、作った機能がユーザーに使われないムダなものだとしても、開発エンジニアに愛着があることによって変更がかけられないなんてこともあるしね。 http://jp.techcrunch.com/archives/jp20120420how_do_you_reduce_the_cost_of_development/ そういう感情は確かにある。プログラマにとって我が子同然のプログラムのミスを見つけるテスターは敵であり「それはバグじゃなくて仕様だ」って言っちゃうところとか。使いにくいから直せという顧客に対して「それには構造を大きく変更しなくちゃならないから直せない」とか。プログラムの問題を見つけてくれた人に感謝するどころか「私は間違ってない!」なんて
だいぶ前に使ったSmall Basicが正式版になったんですね。機能アップはもちろん、簡単にwebアプリ化できて楽しいです。 Small Basicは、そのホームページに「Microsoft Small Basic puts the "fun" back into computer programming.」(プログラミングに楽しさを取り戻す)と、楽しいプログラミングを志向して作られた開発環境。ホームページは英語ですが、ダウンロード後にインストールして起動すれば日本語表示になります。 起動すればすぐにプログラミングが始められ、1本のソースコードとして保存できます。初めてプログラミングした頃のような気持ちいいほどのシンプルな開発環境で、一通りの命令は揃っているようですのでカジュアルなWindowsプログラミングには十分に使えそうです。サンデープログラマーの遊び道具としてはもってこいではないで
コードリーディングって、プログラマの必須能力だと思うんだけど、その方法論などを書いた本って、ほとんど見たことないんだよなあ。ていうか、もしかすると説明しにくいのかも。 ソースコード理解と勉強会というタイトルでお話をした。ソースコードを読むことの意義などを話した後、わたしのしょぼいテクニックを恥ずかしながら披露した。 2010-01-31 - 未来のいつか/hyoshiokの日記 プログラムをうまく書くことが出来るようになる一番の近道はとにかくいろいろなコードをたくさん読むことだと思う。言語仕様やAPIリファレンスを読んで自分で書いだけでは、上達するのは難しい。まずはサンプルを読むことから始めることが多くない!?それだってcode readingだよね。 ソースコードには先人のノウハウや考えがいっぱい詰まってる。コードを読まない限り、何がよくて何が悪いかだって分からない。個人的にはコードを読
コードを読む能力というのは書いた人の性格や気持ちを読みとることが出来る力だと思います。プログラムがどのような思想で書かれているかを見極めることが、コードを読むということではないでしょうか。 長大なコードを読むのは大変ですが、これを好きな長編小説のように読むことが出来たらどうでしょう。コードを読むことが楽しく出来るのであれば、多くのコードを読むようになり、いつしかCode Readingのプロになれる。私はそう信じています。 実際にコードを読む 前回はソースコードを読む力の大切さと、読む前の準備について説明しました。今回は実際にコードを読む上でのポイントなどを書いてみようと思います。 コードを読む上でのポイント 漠然とコードを眺めていても、大きなソースコードの場合は把握が難しいです。コードを効率よく読むためには、いくつかのポイントがあります。 ファイル構成をつかむ まずはソースファイルの構成
コードを読むことが得意な人は、多くのソースコードから目的のものを見つけ出すのが上手です。全てを理解しようとするのではなく、まずはざっと眺めて概略を把握し、プログラムの要所と思われる場所を読んでいくことで、プログラムを素早く理解することが出来ます。 ソースコードを読む力の重要性 プログラミング所感 - プログラミング プログラミング言語は、英語や日本語などの言語より覚えることは、はるかに少ない。しかし、文法だけ覚えても、目的を達することはできない。必要なのは、調査やロジックや設計力などの総合的な能力である。問題解決能力向上のため、問題解決の手段としてもっとプログラミングを教えるべきではないだろうか。 世の中にプログラミングの学習をするための書籍は数多くあります。これらを読むことで、プログラムを作れるようになることは出来るでしょう。プログラミングで陥りやすいミスも、これら書籍に多くのことが書い
というわけで、先日Ah!SKIの話題を書いたので、押し入れからAh!SKIやASCIIを引っ張り出してきた。 (1時間ほど経過) あまりにも懐かしくて、思わず読みふけってしまいました。^^; Ah!SKIの創刊は、1981年4月号からだったんですね。 手元にあるのは1982年4月号のASCIIに綴じ込みでAh!SKIが掲載されています。 以降Ah!SKIはASCIIから独立販売されるようになった。 ぼくが現在持っているのは1983/1984/1985/1987/1988の5冊。 第1号だけでなく、第6号も抜けてましたね。 第8号以降、どこまで続いたんだろうか。Ah!SKI. さて、いくつかざっと概略を紹介していきましょう。 Ah!SKI 第2号 (1982年4月号 ASCII綴じ込み) 「表参道アドベンチャー」のリストが公開されていますね。 ほとんどこれに占領されていて、パロディ色がほとん
ソフトウェアのエンジニアは、自分を求めてくれる、いろんな会社で経験を積むべきなんです。そうすれば、いろんな会社で求められているもののうち、同じものがあることがわかる。これをプラットフォーム化すればいい。大勢のソフトウェアエンジニアが、このことに気づけばいい。何かがきっと変わると思う。もしかすると、小さな会社に行くのもひとつの方法かもしれない。小さな会社の風土を変える。そこから始めて波を起こす。いずれにしても、どこかで思い切ってやらないといけないことなんです。なぜなら、時代はそういう方向に向かっているわけですから。 元ソニー会長出井氏が語る〜デジタル時代の日本進化論/Tech総研 エンジニアは、チェンジする発想を持ってほしいと思っています。会社を替わるのもそう。また、社内で組織を変わるのもいい。僕はソニー時代、組織横断でプロダクトが出せる仕組みを作った。そこから今、面白い商品が出てきている。
ってゆうスイーツ(笑)が少しでもプログラムを理解するには何をしたらいいのでしょうか。何を読んだらいいのでしょうか。ググればググるほど分からなくなってきました。 <...> どんなふうに始めればいいか分からないしたぶん「私には無理!生まれたときから文系だもん!むしろ文系から生まれたもん!」とか言い訳垂れて諦めるかもしれないんだけど、とりあえず何となく話だけでも分かる風になりたいなーとか思ってー。諦めるまでに達せない自分が歯がゆい>< プログラムっておいしいの? - iGirl この記事を読んで私なりにAsamiさんの知りたいことを推測するに みんなを虜にするプログラミングの楽しさは何なのか知りたい! というのが一番知りたいことで、 せっかくだからプログラムを自分で作れるようになって、ギークな人たちとプログラミングの話ができるようになりたい! ということだと勝手に理解しました。違ってたら無視し
今回は生産的なプログラマについて書きました。技術への理解,問題解決への洞察力,コーディングの力といったプログラマとしての基本的な能力が重要であることは言うまでもありませんが,今回述べたようなその他の能力も生産性を決める大きな要素だと思います。 第6回 [最終回]プログラマについて|gihyo.jp … 技術評論社 会ったときにその人が頭がいいか判断するのは通常難しくありません。しかし物事を成し遂げる人かどうか知るのはもう少し難しくて、実際にその人がうまく物事を成し遂げてきたという実績を見る必要があります。 もうひとつおまけのルールがあって、それは嫌なやつでないということです。おまけだと言ったのは、会社によっては嫌なやつでもかまわず採用し、それで問題なくやっているところもあるからです。 Joelに聞く、「優れた開発者」の要件・心構え・努力すべきこと (1/3):CodeZine こうして考え
今週届いたので、さっそく読んでみました。 プログラマー現役続行 (技評SE新書 12) (新書) 柴田 芳樹 (著) (amazonでも発売されていたのですね) タイトルと概要の通り、職種としてプログラマを長く続けたいと考えている人向けに、心掛けておきたいことのヒントが書かれています。いくつかのエッセイをまとめた本のようなので、いろいろなエピソード集として読まれるのがいい気がしましたが、技術者としてどうあるべきか、という観点においてはブレはありません。 yasuho的には、基本的に書いてあることに対してagreeなのですが、「なぜそれが必要なのか」より「こうしなくてはならない」という主張の方がが強いように思いました。ある程度の経験者であれば、言わんとしていることはなんとなく分かると思うのですが、経験の少ない人にはちょっとお説教のように感じるかもしれませんね。 読んでいるうち、ふと自分なりに
人によって文章の書き方がいろいろあるように、プログラマによってプログラムの書き方は千差万別です。インデントやネーミングなどのスタイルに始まり、クラスや構造体などの構築方法、アルゴリズムの選択など、プログラマの数だけ書き方がありますよね。 ロジック上のミスは別として、プログラミングに正解というものはありません。それはたいてい視点や考え方の違いや、優先度の違いから生じるものです。 とはいえ、他人のプログラミングスタイルを学ぶということには価値があります。よい例はもちろん、悪い例であっても半面教師となってくれます。以下に書いた私のスタイルは半面教師としてしか使えないかもしれませんが(笑)、もしも誰かの参考になれば嬉しいですね。 yasuhoのプログラミングスタイル 初期デザイン まずはプログラムのコンセプトを決める。達成すべき機能、利用する環境やシステム、レスポンスやメモリ・ディスク利用目標など
プログラミングを始めようとして何度も挫折した。 教えるプロみたいな人に教えてもらっても駄目だったし、尊敬している人に教えてもらったけどやっぱり駄目だった。 才能以前なんだろうな。必死さが足りないって言われた。でも必死になるってどういう事なのか全然判らない。 どうやら「プログラミングを学ぼうとして挫折している人」と「プログラミングがある程度出来る人」の間にはマリアナ海溝のように深くて太平洋のように広い谷が広がっているらしい。fizzbuzz 問題のページによればこれは世界的な問題である。で、この谷は越えられないかというと、そうでもない。自分自身これを経験したし、大抵のプログラマは多かれ少なかれこれを経験しているだろう(みんながみんなではないだろうけど)。 はてなダイアリー 今のご時世、プログラムの勉強する良い教材っていうと、根本的にはGUIの機能を排除していて、さらにモチベーションを維持でき
プログラマであれば誰もが自分なりの「美意識」というものを持っているかと思います。それはインデントにおけるスペースの数やカッコの位置といった細かい部分から、モジュールのデザイン方法・実装のクセなどプログラミング全般に影響するものです。大げさに言えばプログラマの哲学とでも呼べるものでしょうか。 プログラミングの美しさにおける一般論は以前書きましたが、今回はプログラミング技術の観点から考えてみたいと思います。 美しいプログラムの定義 何を「美しい」と感じるかは、人によってかなり差があります。ここでは私が考えるプログラムの美しさについて書いてみます。 直感的に使えるインタフェース 外部から内部インタフェースに至るまで、直感的に使えること。 関数やクラス・メソッド名などは見ただけでそれが何をするのか想像できる。それぞれがどのように関連していて、どう使えばいいかが理解しやすい。 使用方法やパラメータは
W-ZERO3用のアプリを書いていて気がついたことをメモしてみました。今後アプリを作られる方の参考になれば幸いです。 eMbedded Visual C++のインストール W-ZERO3はOSとしてWindows Mobile 5.0を採用している。WM5.0はWindows CE 5.0がベースになので、アプリ開発にはCE用の開発環境を使う。 WM5.0の開発環境としてはVisual Studio 5.0またはeMbedded Visual C++がある。Visual StudioはStandard以上のバージョンが必要。残念ながらExpressではWMアプリの開発はできないので注意しよう。 eVC++はマイクロソフトのサイトの以下のリンクから無料でダウンロード可能だ。eVC++はPocketPC 2003というWM5.0より前のバージョン用の開発環境だが、普通のアプリ作成には十分使える
先日に引き続き、W-ZERO3用のアプリを書いていて気がついたことをメモしてみました。今後アプリを作られる方の参考になれば幸いです。 UIデザイン やってみれば分かるが、トップレベルのメニューは2つまでしか表示されないことを考慮してデザインする必要あり。 (1/20 追記) メニューは2つ以上でも大丈夫でした。単に左右ボタンで選択できないだけです。 ご指摘いただき、ありがとうございました。 (/追記) W-ZERO3は縦横がダイナミックに切り替わるので、ダイアログはどちらの画面でも正しく表示されるようにレイアウトしよう。エミュレータと実機両方で試してみた方がよい。 エディットコントロール 最初にW-ZERO3を使ったとき、なぜメモ帳が付いてないんだろうと思ったが、自分でエディットコントロールを使うアプリを書いて見て、その理由が分かった。Windows Mobileのエディットコントロールは
Windows Mobileで自動ダイヤルする方法を紹介します。いや、最初全然分からなくて、ネットでいろいろ調べていくうちにようやく分かったのですよ。 以下は自分のメモですが、他の人の参考になれば幸いです。 何のAPIを使うか 接続にはConnection ManagerというAPIセットを使います。 ConnMgrEstablishConnection() --> ネットワークに接続 ConnMgrReleaseConnection() --> ネットワークから接続 IEやActiveSyncでネットワークに接続してないと自動的にダイヤルするのは、これらを使っているようです。 サンプルコードは Pocket PC 2003 SDKやWindows Mobile 5.0 SDK for Pocket PCにはConnection Managerのサンプルコードが入っています。 Pocket
タイトルの通りです。"X68000 Z LIMITED EDITION EARLY ACCESS KIT"で支援させていただきました。 初めてクラウドファンディングというものに参加したよ :) 最初は提供されている情報が少なかったので しばらく様子見しようと思ってたんだけど、開始して1時間もたたずに目標額に達し、あれよあれよという間に1億という様を見ながら、あっけにとられていました。いや正直50,000円という決して安くない支援金に、これほど支援者が集まるとは思わなかったよ。もしかして、当時500,000円だったX68000が50,000円は安いぜ!ってことなのか。みんな冷静になれー(笑) というのは冗談ですが、まあX68000が憧れだった世代ももうみんないい歳だものね。これぐらいの額なら楽勝なのかな。小遣い生活者な私は少ない小遣い預金からどうにか捻出しましたがˆˆ; というわけで、X68
プログラマを職業にすべきかどうか、それはぼくにも分かりません。でも、それが自分にとって、好きになれそうか、情熱を持てそうか、ということは大事なことだと思います。 最初は本当に願っていたことじゃなかったとしても、自分がやりたいという熱意は周りに伝わり、やがて自分が望んでいることに近づいていくことが出来るんじゃないかな、って思います。 職業にすべきか、趣味がいいのか? 学生時代、プログラミングに興味を持ち、それが好きになる。それを職業にしたいと考える。ごく自然なことだと思います。 好きなことを仕事に出来るのであれば、それはとても幸せなことのように思えます。好きなことであれば、誰よりも得意でしょうから、仕事の効率も上がるでしょう。つらいことでも、嫌なことをイヤイヤやるよりいいかもしれません。 でも、仕事である以上、楽しいことばかりであるとは限りません。もちろんつらいこともありますが、自分が本当に
プログラマが減っている大きな理由は、以前よりプログラミングに触れる機会が減ったからだと思います。もしもそれが事実なのであれば、とても悲しいことです。プログラミングの楽しさを知る機会は、もっともっと増えてほしいと思います。 プログラマを目指す人が減っている hyoshiokさんの日記で見つけた記事から: 「ウェブ進化論」の梅田望夫氏が語る“Googleという隕石”(後編):ITpro −− ただ、若手の間で情報産業は人気が落ちているようです。東京大学の情報工学科が定員割れしたとか。 梅田氏 米国でも、コンピュータ・サイエンスを志望する学生は減っています。大きな原因はオープンソースだと私は思います。ソフトウエアのスキルを身につけても、「ソフトウェア・ベンチャーを起こして一攫千金」という期待感が縮小しているし、飯が食えるソフトウェア開発の仕事はアウトソーシング先との価格競争で先行き厳しい。そうい
このページを最初にブックマークしてみませんか?
『プログラマyasuhoの隠れ家』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く