プログラムが書けるようになるまで - yasuhoの場合
うんうん、分かんないよね。どの本を選べばいいのか、実は私もよく分からないのよ^^;
入門書「この言語の入門書であって他の言語がある程度分かる前提で説明していきます」
なんでどれもこんなんなんだよ
ぼく「プログラミングの勉強する為に入門書でも買ってみるか」 : IT速報
説明で使われる単語単語が分からねーよ
初めは一々ググってたけど効率悪すぎるしね
プログラミング言語の入門書って、その言語に対する経験が初心者で、プログラミングは知っている前提っていうのが多いんだよね。プログラミングそのものを学ぶには、何か一つの言語を題材にした、初心者向けに教える本を読むのがいいと思うんだけど、そもそもどの本を読めばいいのか分からない。
本当は「プログラムはなぜ動くのか」みたいな、基礎的な原理を最初に学ぶのがいいのかな。でもそれって、最初に読むには退屈だと思うんだよな。ある程度プログラムを作ってみてから読んだ方が、腑に落ちていいかもしれない。
プログラムはなぜ動くのか 第2版 知っておきたいプログラムの基礎知識
- 作者: 矢沢久雄
- 出版社/メーカー: 日経ソフトウエア
- 発売日: 2007/04
- メディア: 単行本(ソフトカバー)
- 購入: 45人 クリック: 646回
- この商品を含むブログ (72件) を見る
入門書に限らないんだけど
技術書を読む上での一番の問題は、本が自分の興味レベルにあわせてくれないこと。当たり前なんだけどさ。自分の知りたいことが自分の持つ知識レベルで書かれているのが理想なんだけど、本の方から自分にあわせてはくれないからね。結果として、自分が本に合わせなくちゃいけなくなって、疲れちゃう。
ぼくの場合、分からないところは読まないことにしてる。分からないところを頑張って読んだって苦痛だし、頭に入ってこない。とりあえず先に進んで「あ、あれはそういう意味だったのか」って分かったら元に戻る。
本は
主に言語の概要を理解するためと、リファレンスとして使ってる。
個人的にはプログラミングの技術は手を動かさないと理解できないものだと思っている。分厚い「プログラミング言語Java」を読んだらJavaでプログラムが書けるようになるわけじゃない。
- 作者: ケンアーノルド,デビッドホームズ,ジェームズゴスリン,Ken Arnold,David Holmes,James Gosling,柴田芳樹
- 出版社/メーカー: 東京電機大学出版局
- 発売日: 2014/05/10
- メディア: 単行本
- この商品を含むブログ (4件) を見る
まずは本の最初を読んでみて動かし方が分かったら、実際にコードを書いて動かしてみる。まずはサンプルから初めて、とにかくいろいろ書いてみる。
実際に書いてみることで、本には書いてなかった疑問がいっぱい出てくる。そうしたら本に戻る。それでも分からない時はgoogle先生に聞いてみる。これを繰り返すことで、その言語らしいプログラムが書けるようになっていく感じ。ぼくはそうやって覚えた。いつもそんな感じ。
昔の人間だからかなあ。昔から本を読むことは苦手で、実際に実践で使わないと覚えられない。なので、これはあくまで一例ね。
一番いいのは
近くに教えてくれる人がいることなんだよな。誰かいないかなあ^^;
仕事の仕方は教えてもらえるけど、技術は教えてもらえない
「職人」が具体的にどういう仕事なのか明かされていませんが、相談者さんは職人の「仕事は教えない」は嫌がらせではないかとも考えています。現代的にいうとパワハラですね。回答者からは、この意見に賛同する声が相次いでいます。
職人の「仕事は教えない」は嫌がらせなのか? 「技術は食い扶持。盗むしかない」との反論も : ネトウヨにゅーす。
そもそもこの話がソフトウェア業界のことかどうかすら分からないけど、業種に限らず、よくありそうな話ではある。
私の経験では
「教えない」というような極端な例は見たことがないなあ。質問する前に調べもしない人に対して「自分で調べてごらん」って、やんわり言うぐらいのことだったらよく見るけどね。
優秀な人は大抵忙しくて、ゆっくり教えるヒマなんてない。そもそもそういう人は誰かに教えてもらうなんてあまりしたことなくて、自分で必要なことを学んでいったという人だから優秀なわけで、自分ではない人がどう学んだらいいかなんて分からないし、教えられない、といったところじゃないかな。人によっては「教えてくれない」って思うかもしれないね。
多くの技術者は教えることが嬉しいのよ。なので、教える人が喜ぶような聞き方をすると、どんどん教えてもらえるようになって、仕事も振ってくれるようになっていくんじゃないかと。
ただ、一つ思うのは
仕事の仕方は教えてもらえるけど、技術は教えてもらえないってこと。要求をスマートに実現する設計力。シンプルでパワフルな実装力。難解な問題を解決する分析力。そういった技術者として資質は、自分で磨いていくしかないんじゃないかな。ていうか、自分で書いてて心苦しいわ(笑)
お互い、頑張りましょう^^;
最近「子供にプログラミング教えてよ」と言われるのです
オバマ政権が、米国のコンピューターサイエンス教育に40億ドルを投入することを約束した。米政府を支え、後押しするのは、大手テック企業の数々だ。未来のテック業界を導く才能を育てるために、ホワイトハウスとシリコンヴァレーの連携がますます強まろうとしている。
シリコンヴァレーは国の「コンピューター教育」を導けるか « WIRED.jp
我が国でもぜひコンピュータ教育に、もっと力を入れて欲しいものですな :)
最近、コンピュータ教育を子供の頃から始めるべきかどうかという議論をよく目にするね。scratchなどを使った小学生向けのプログラミング講座も盛況みたい。
ぼくがわざわざ言うまでもなく
コンピュータスキルは英語と並んで、今の子供達が大人になった時の必須スキルになっていると思う。日本語の読み書きや基本的な数学と同じく、アドバンテージにすらならず知っていて当然のスキルになってるんじゃないかな。全員がプログラマになれってことじゃなくて、最低限知識としてのコンピュータハードウェア/ソフトウェアを持つ必要があるんじゃないかと。
もう何度も引用してるけど、Sony Historyにあるように、天然資源が少なく、人口が多いわが国の将来はすべての日本人が科学技術に関心を持ち、これを盛り立てていくことにかかるのだと思う。そして現代においてモノ作りとは、ハードウェア+ソフトウェアとほぼ同義だよね。
将来はこれがもっと加速していくと思う。作る人も、それを売る人も、コンピュータを知っていて当然の時代になってるんじゃないかと思うんだ。
嫁さんからも
「子供にプログラミング教えてよ」と、最近よく言われるんですよ。でも息子は絶対にプログラマにはさせないんだって。夜帰ってこないからだってさ。かなりブラックのイメージが強いようだな(笑) まずこのへんのイメージから変える必要があるかもね。
さようならsoftbank,こんにちはUQ mobile / インプレッション
長年愛用してきたSHARP 005SHですが
- 出版社/メーカー: Sharp
- メディア: エレクトロニクス
- この商品を含むブログを見る
先日これに乗り換えました。
★限定特価★FARM06006 [arrows M02 黒]
- 出版社/メーカー: 富士通
- メディア: エレクトロニクス
- この商品を含むブログ (1件) を見る
キャリアはこれです。
UQ mobileエントリーパッケージ au対応SIM(マイクロ、ナノ) データ通信/音声通話 月額980円(税抜)~/ VEK38JYV
- 出版社/メーカー: Uqmobile
- メディア: エレクトロニクス
- この商品を含むブログを見る
いわゆる、格安スマフォ/格安SIMってやつですね。
きっかけは
これでした。
周波数の有効利用による安定した品質かつ快適な通信サービス提供のため、1.5GHz帯におけるLTEサービスの提供開始および1.7GHz帯におけるLTEサービスの拡大を順次実施します。
一部3Gサービス(1.5GHz帯/1.7GHz帯)提供終了について | 通信・エリア | モバイル | ソフトバンク
LTEサービスの拡大に伴い、一部3Gサービス(1.5GHz帯/1.7GHz帯)を順次終了します。
005SH, 古い機種ではあるものの、フルキーボード付きでとても気に入っていたのですが、さすがにAndroid 2.3ではアプリも対応しないものが多いので、限界を感じてはいました。バッテリーがそろそろヘタってきたこともあり、まあいい機会だったかなと。
で、新しい機種を探していたのですけど、どの機種にしたにせよ月額料金があり得ないほど高額だったので、softbankを諦めることに。今までは3Gの月額5,000円ぐらいのプランだったので、余計高く感じました。どのみち通話はほとんどしてなかったので、大手キャリアをやめることに迷いはなかったですね :)
なぜarrowsなのか
最初はNEXUSとかいいかなと思ってたんだけど、意外と高い。個人的には30,000ぐらいに抑えたいと思ってたのと、バッテリーの持ちが良いという評判だったので、arrows M02にしました。
本当はもっと小さい、4inchぐらいのが欲しかったんだけど、既に市場には5inch+のものしか見当たらず。arrowsは5inchの中でもコンパクトに感じるところもよかったな。将来DoCoMo系のMVNOに乗り換えたとしても使えそうだったし。
最新のハイエンド機に比べるとパフォーマンスは劣るらしいけど、元々5年前のスマフォだった私には全く無問題 :)
なぜUQ mobileなのか
ズバリau系のMVNOであり、速度が速くて安定してそうだったから。DoCoMo系の方がエリアが広いかもとは思ったけど、まあ大丈夫かなと。
プランはデータ3GB+音声通話。3Gとはいえ、今まで1GB制限で半分ぐらいしか使わなかったので。
乗り換えは
思ったより簡単でした。softbankに電話してMNP予約番号を取得し、それをUQ mobileのウェブサイトに入力して契約手続き。SIMが送られてきたらarrowsに挿して手順通りに操作すれば乗り換え完了。
使えない期間もなく不便はなかったです。使えない期間があるかどうかはMVNO業者次第のようですが。
乗り換え後、005SHはWiFiすら使えなくなり、あっという間に文鎮化。カメラは使えたので、息子のオモチャになりました(笑)
arrowsについて
バッテリーの持ちは素晴らしいです。朝充電池から抜いてから夕方までで、90%ぐらいのまま。家でしか充電しなくなってしまいました。以前はずっと充電してたので、これは嬉しいですね。
とはいえ、アプリの無駄な通知や必要のないデバイス/機能は全てOFFにしてます。こういうのは、たぶんこれからも必要。
パフォーマンスは素晴らしい。まあ以前はTwitterアプリを起動するだけで数十秒かかってたから、あまり参考にはならないと思うけどね。
UQ mobileについて
元が3Gな上に本体自体が遅かったので、あまり比較にならないと思うけど、速度に関してはうわさ通り素晴らしいです。朝夕でも遅く感じることは全く無し。動画再生とかはほとんどしてなくて、twitterとかウェブを閲覧する程度だけど。
利用開始初日、大したことしてないのに、いきなり50MBものデータ通信が行われて一瞬焦ったけど、初日以外は1日平均30-40MBで安定していて一安心。ぼくの使い方なら月に3GBでも余裕だな。もっともアプリのダウンロードとかパケットが大量に飛びそうなことは意識的にしてないので、3GBで十分かどうかは使い方によると思う。
なぜ初日だけ大容量通信をしたのかは不明。アプリの自動更新っぽいので、OFFにしといた。
ちなみにエリアだけど、私の生活圏内で圏外になることはなかった。
突然ですが
昨年、今まで勤めていた会社を退職しました。1月からは新しい職場で働きます。
会社に問題があったわけではなく、むしろ開発者の理想に近い環境でした。それならばなぜ転職を決意したのかと言えば、新しいチャレンジをしたかった、ということになります。
私もすでに50を越え、今までの職場がたぶん最後だろうと思っていました。そんなある日、とある方から新しい会社を紹介されます。前述のようにとてもいい職場だったので、転職に関しては大変悩みました。でも最終的には新しいことをしてみたいという気持ちが強かったので、転職を決意しました。
辞めたことに後悔はありませんが、不安がないといえばウソになります。でもかつてないほど変革の時を迎えているこの業界において、安定など望めるでしょうか。加えてあと10年も働けないであろうこの年齢では、何かを変えるチャンスにはそうそう巡り会えるとは思えません。というより、このチャンスを逃すべきではないと思いました。だから、今はワクワクする気持ちの方が強いですね。
なかなか更新されないブロクですが、本年もどうぞよろしくお願いします。
ラズパイ2買ってきました
というわけで、買ってきました、Raspberry Pi 2 :)
- 出版社/メーカー: Raspberry Pi
- メディア: エレクトロニクス
- この商品を含むブログ (6件) を見る
とりあえずNOOBSをmicroSDに入れてraspbianをインストール。途中インストールが停止してしまい何かと思ったら、microSDがスロットから飛び出していた(笑)何かさわったらしい。
気を取り直してインストールし直し。無事インストールが終了し、再起動したらGUIがそのまま立ち上がった。LANケーブルを挿せばネットにつながる。なんてお手軽なんだ。
このサイズでフルのLinuxが動くことに
素直に感動。いじってる分には全然ストレスを感じない。さすがにPCに比べるとブラウズとか遅いが、オフラインで使う分には全く問題がない。YouTubeの動画もスムーズに再生できた。Windows 98か初期のWindows XPのPCぐらいのパフォーマンスだろうか。CPUだけならそれ以上のはずだな。これが5,000円ぐらいで買えてしまうなんて、いい時代になったものだ。
とりあえず、そんなところで。
ちなみに
今は息子のマイクラマシンになっています(笑)クラスではマイクラが流行ってるらしい。すげえな、今の小学生…
ボクがマイナーを愛する訳
そうか、私は負け組だったのか(笑)
これを読みながら、僕はいままでの物欲人生を、振り返らずにはいられませんでした。
ベータマックス、シャープX1、X68000、セガ・マーク3、サターン、Macintosh、広島カープ……
なぜ、僕はこんなに「負け組」にばかり、肩入れしながら生きてきたのか。
ベータマックス、シャープX1、X68000、セガ・マーク3、サターン、Macintosh、広島カープ…… - いつか電池がきれるまで
ええ、ベータ(Hi-Band Beta含むED Beta除く)もX68000もセガ・マークIIIもサターンも持っていましたとも。Macintoshは給料3ヶ月分(当社比)で買えなかったけど、お金があれば間違いなく買ってたな。私のプロフィールにあるように、マイナーなガジェット多いです。メジャーなのも混じってるけど、たいていそれはメジャーになってから買ったもの。
マイナー好きなわけじゃないんだけど、マイナーだったものがメジャーになってしまうと興味が薄れるって傾向はあるかも。やっぱマイナー好きなのかもしれん :)
個人的に
「技術的に洗練された高性能なものが必ずしも勝利しない」と最初に思ったのは、80x86と680x0の争いだったな。
技術的に洗練された高性能なものが必ずしも勝利しないという現代エレクトロニクス産業の新「常識」は、ベータの教訓に始まった。
さようなら、ベータマックス。AVレビュー元編集長が見た誕生、敗北、そして終焉 (1/3) - Phile-web
8086のアーキテクチャを見た時、そのあまりの中途半端さに愕然とした覚えがある。なんだよセグメントって。16bitじゃなくて8.5bitぐらいだろこれ、って思った。案の定プログラミングには苦労し、32bit時代になって誰もセグメントレジスタを使わなくなった。intelとしては、あくまでも8bitから16bitまでの「つなぎ」だったのかもしれない。まさか21世紀になっても使われるとは想像もしていなかったことだろう。
そこへいくと68000のアーキテクチャは美しかった。VAXライクな(ほぼ)直交性のある命令セットは、アセンブラで組む時ですらあまり苦ではなかった。一時期UNIXワークステーションなどでもよく使われていて、これからのCPUはこれだ!って感じたものだ。X68000を買ったのも、これがCPUだったってことが大きい。いや、もちろんグラディウス同梱に惹かれたことも確かだけどさ :)
これがその後どうなったかは皆さんよくご存知の通り。
ベータの場合
ボクは工業高校出身で、当時の友人はみんなベータのデッキを持っていた。思えば、ベータは技術者好みだったのだ。ぼくらにベータを勧めた友人はなぜか松下(Panasonic)に就職したんだけどな(笑)
ともあれ当時給料の1.5ヶ月分(当社比)もするBeta hi-fiの初号機であるSL-HF77を買うことに、ボクは何のためらいもなかった。当時はレンタルビデオがようやく普及し始めた頃で、好きなビデオ(主にSF・ホラー)を借りるために、わざわざ片道1時間もかけて遠くのレンタル屋さんまで通ったものだ。当時はベータとVHSビデオはほぼ半々でレンタルされており、ベータであることに不自由を感じた覚えはない。
ベータの敗因についてはいろいろ分析されているけど、個人的にはベータのデッキが高かったことではないかと思う。SONYも高機能ばかりでなく、廉価版のデッキを多く販売していれば、世の中は変わっていたかもしれない。
つまり
勝ち組と負け組の差に、技術力はあまり関係ないのだ。それが利用者にとってどんな価値があり、かつそれに見合ったコストなのか、ということが勝敗の分かれ目なのだと思う。
対して、ボクが興味を持つものは、それが自分にとってどんな面白い技術なのかということ。そりゃ勝ち組になるものは少ないって :)
そんなわけで
ボクは今も、そしてこれからもマイナーを愛していくことだろう。売れるかどうかなんて関係ない :b