2012年8月9日木曜日

アプリ最新画面・・・見るべし

夏なのにここのところ夜は涼しいですね。

季節の挨拶から入るなんて私らしくも無いですが、

そんなこととは、別にアプリの開発を細切れ時間で進めてます。

消えてもヘーキ!とか、以前のエントリーで書いてた割には、同じこと実装するのにちょっと手間取ったりして、あーめんどくさいとか思ったり思わなかったり
(でも楽しいですけどね)

プロトタイプで書いたプログラムとかは、結構グチャグチャだったりするのですが
これを、

さぁ!納品物として作るぞ!

となると書き方が変わります。

メモなのか、小説として発表するのかくらいに気合が違います。

その分、記述量も増えたり、書く順番を整えたり色々と大変なのですけど、

見ていて美しいソースになります。
(自画自賛)

私も最初に綺麗に書きだしたときは、納品物だからという気持ちが強かったです。


例えば、お客さんに料理を出すときは、見た目も美しく盛り付けますよね。

同じ味でも見た目がいいと美味しく感じます。

プログラムの場合は、見た目が美しいと動作が早くなるわけじゃないし、効率が良くなるわけでもないのですが、では、何がいいのかというと、


メンテナンス性が上がります。

え?そんだけ? (思ったでしょ?)

でもこれ、実は、とっても大切なことなんです。

メンテナンス性が上がるというのは、どういうことかというと綺麗に整頓された部屋をイメージしてもらえればよいかと思います。

無駄なスペースが無く、どこに何があるのかすぐに分かる、いつ人に見られても恥ずかしくない。

仕事としてじゃなくても、良い心がけです。


今までいろいろなプロジェクトに関わって、色々な人のプログラムを見て来ましたが、美しさにこだわる人はあまりいません。
なぜかというとエンジニアと呼ばれる人種は、
 
すごいプログラムをかけることがすごいことだと思ってる人が多いから
(そうじゃない人もいますよ、もちろん)



でもね、違うんです、プログラムが書ける人なんて、はっきりいって掃いて捨てるほどいます。
中にはすごいプログラム書く人ももちろんいます。

ですが、メンテナンス性が高いプログラムを意識している人はあまりいません。


苦労して書いたプログラムをメンテナンス性という効果があるのかどうかわからないことのために
また書きなおすというのは、はっきりいってめんどくさいです。

ですが、これは確実に効果があります。

大きなプロジェクトでは、コーディング規約とか、コーディング標準などと文書化されて、このように書かねばならないと決められてます。
それぞれに任せていたら、何が書いてあるのかまったくわからないプログラムが出来上がるからですね。

これも経験則が結構ものをいうのですが、はじめから知ってる人に教えてもらえれば効率があがるものです。

よく冗談で2週間前のプログラムは、他人のプログラムなどと言ったりするのですが、私は自分の書いたプログラムがわからなくなることは、ほとんどありません。
プロトタイプ的に書いたものは分からなくなりますが、きちんとしたプログラムとして反映するので問題ないんです。

と、能書きばっかり長くなりましたが、ちょっとは、動く画面ができてきたのでお見せしたいとおもいます。






とりあえず、こんな感じ



 まだ、「ぬこ」が小さすぎるとか、背景が変とかありますが、これは今後調整していきます。
「ぬこ」が乗ってる4つのボタンが、ペット選択や、ヘルプ画面への移動ボタンになります。

下に2つある、単なるButtonってやつは、背景がきちんとスクロールして止まるのかを確認するために一時的に設置してあります。 実際にはセンサーと連動して持ってる人が歩くとスクロールする予定です。

一応、今月中が目標なのですが、こんなペースで出来上がるのかどうか、ちょっと怪しいのですが、なんとか頑張りまっす。
(実はこれでもそれなりに忙しいのですが)


↓ 設置してみました、良かったら押してね。








(嘘です、ニセモノです、プププ)

2012年8月8日水曜日

プログラマ35歳定年説

最近は、あんまり聞かなくなりましたが、ちょっと前までは、タイトルに掲げた

「プログラマ35歳定年説」

という言葉が流行ってました。
理由はいろいろあるんでしょうが、新しいことを覚えるのがだんだんと難しくなるとか、頭が固くなるとか、そういうことなんでしょうかね。

ちなみに私は40代に突入してるのですが、AndroidもiPhoneも開発の手法を覚えたのは、40歳過ぎてからです。

その昔、電話が発明された時、電話同士をつなぐ交換機というのが手動だったので、国民の二人に一人が交換手やらないと電話がつながらなくなるとかいう話があったそうです。

もちろんその後、機械的に接続する方法が出来たので、私たちは交換手をやる必要がなくなったわけですが、プログラムに関しては常に人が足りない状況のようです。
35歳定年とか言ってたら人が足りないので結構みんな働いてるのかなとも思います。

コンピュータというものは、未だに進化し続けている世界でプログラムというのがまだ全然一般化できていないので、流れ作業的に作れないからですね。

なので割と残業も多めなのですが、業界としてアクティブということだと思います。
一般化されたら、機械作業になってしまって、全然おもしろい仕事(作業)じゃなくなります。

一般的に、プログラマー → システムエンジニア → プロジェクトマネージャーというスキルパスがあるのですが、私の場合、システムエンジニアのところで止まってます。

以前、書きましたが失業後、職業訓練を受けてインストラクターをやってみようと思って、こちらの富士通オープンカレッジ 名古屋駅前校で働くようになったのですが、やっぱりシステムの世界にも未練があって、就職先を探したことがあります。

ですが、私の年になるとやはりプロジェクトマネージャーとしての方向性を指し示されます。
でも、プロジェクトマネージャーって、現場から離れてしまうから私としては、正直あまり、、、というより全然やりたくありません。

それと業務アプリケーションと言われる世界のシステムは、ある程度一般化されてて、その仕事を10年ほどやってきたのでパターンが見えてしまって、またこれかーみたいなのも嫌でした。

手慣れた仕事も大切ですが、私はどんどん新しいことを知りたい方なので、スマートフォンの世界が面白くて仕方がありません。

普段、教室に入るインストラクターの仕事では、オフィス系が多いのですが、それでも新しいオフィスの機能はまだ知らないことも多くて日々、勉強になり刺激になります。

なので35歳定年とか、なんの話やらって感じなのですが、

今日は、本当につまらない文章ですねぇ 
(はぁ・・・)

じゃぁ、いつもは面白いのかと言われても言葉に詰まりますが、実は毎日、結構ネタに困ってたりします。
同じ事ばっかり書いてもしょうがないし、変わったこと書きたいけど、私の趣味とか書いてもしょうがないしなー、、、

画像とか入れると見栄えはするのですが、けっこー時間取られるんですよね。

新しいことをどんどん知りたいということは、実は飽きっぽいということなので、ブログも飽きずに続けるのはどうしたらいいのか、読んでる人にも飽きられないにはどうしたらいいのか、これも勉強なのですが、、、、
(ブログって誰に対して書いてるのかたまに分からなくなります)

どんどん、ツマラナクなってるので今日は、この辺で店じまいします。
(湯水のごとくネタが湧き上がる頭が欲しいなぁ・・・)


2012年8月6日月曜日

スキルってなんだろう・・・


スキル(英: skill) とは通常、教養や訓練を通して獲得した能力のことである。日本語では技能と呼ばれることもある。
Wikipediaより


なるほど、、、頭のいい悪いは関係無いっぽいですね(よかった)

うん、何が言いたいかっていうと、アプリを作ってたデータの入ってるハードディスクさんがごきげん斜めなのです。(本日、お仕事休みです)

夏の暑さのせいでしょうか、、、まぁ半年くらい前から怪しいなとは思ってたんだけど、今のところ電源切って熱さましてるけど、読み込めません。(ノД`)シクシク

パソコンがフリーズしたので、再起動したら、、、認識しない、、、うわーん
マイドキュメント系が入ってたディスクだから痛いかも・・・
(多分、もう一度くらいは復活するはずだからその隙にコピーします)

長いことパソコン使ってて今までこういうこと2回あります。

1度は、80GBのハードディスク思いっきり初期化したことがあって、デジカメの写真が3年分くらい消え去りました。(ヒャッハー)


バックアップしとけと?

まぁそうなんですけども、最近のハードディスクさんってば、大容量でしょ?
うちなんか、1T(テラ)とか2Tのハードディスクがたくさん繋がってるから、

バックアップとか無理無理〜 

なので、自分のなかでハードディスクの寿命はおよそ2年と決めて、それを過ぎたら新しいものにまるごとデータのお引越しするようにしてます。
(今回は2年とっくに過ぎてた、油断した)

でも、よくよく考えると個人で持ってるデータなんて、大したもの無いんですよね
自分が大切にしてるものでも他人から見ればほとんどゴミですし

話はそれますが、2年ほど前に失業してる期間があって時間があったからよく図書館に通いました。その時、なぜだか仏教の本をよく読んだのですが、

ものにこだわるなと

自分の体ですら、宇宙からの一時的な借り物なんだから、精神的な向上を目指しなさいということが心に残りました。


人間 本来無一物

というそうです。
だから、何かなくなったからと言って、がっかりしたりしてもしょうがないし

全然へーき !
(ノД`)シクシク


しょうがないから、生きてるハードディスクに新しい環境作って、やり直しです。
とりあえず、学校アプリは、プロトタイプでしか作ってなくてきちんとプログラム書いてないのであまり大きな痛手では無いかな。
(個人データはともかくとして)

自分の頭の中には構想は出来上がってきてるわけですから、作業的にはそれほど大きな損失はありません。
もちろん、本当になくなったらまずい場合(これから作るアプリのプログラム等)は、ハードディスクが死んでも復元できるような体制でやりますけどね。

全然関係ない話を延々してるように感じるかも知れませんが、何が言いたいのかというと、モノが無くなっても自分の中のスキル(経験)は、残ってるのでいつでもまた再現できるってことです。

アプリ制作で必要なプログラミングの世界も論理の塊のように思えるかも知れませんが、実際には経験則に頼る部分が大きいです。
いろいろなことを試しながらウンウンと悩んで積み上げた経験が自分の助けになります。

プログラミングに限らず、アプリの企画も例えプログラムソースコードが無くなっても企画というソフトウェアは、無くなりませんね。

世の中には天才プログラマーと呼ばれる人たちもいて、いろいろと世界を変えてますが、そういう人たちは、アプリというよりアプリの仕組み自体を作っているので、また全然世界が違います。


ですが、普通の人でも世界を変える企画はできるはずです。
企画を世に出すステージは用意されてるわけです。


スキルを磨くにあたって、「経験則」の部分に関しては、人によらず、ほぼ時間に比例して効率が上がります。(多少は違うかも知れませんが)
10時間の経験よりも100時間の経験のある人の方が、断然効率が良いです。



ですが、「基本的な考え方」の部分は、人によって理解の速度がかなり違います。

はじめて聞いた言葉の意味が分からず、本を読んでもさっぱりなのに分かる人にちょっと教えてもらって、

それは、こういう意味のことだよ!
 なるほど〜!

こういうの結構あります。

ソフトウェアの世界では、特にこの部分が大きいです。
(意味のわかりにくい概念が結構出てくるので)

周りに友人等、いい先生がいれば、この部分のスキル習得時間は大幅に短縮されます。

ですが、はじめてみたいけど周りにいい先生がいないなーって場合は、多少お金はかかりますが、是非スクールに来てみてください。

お金のことにこだわるよりも、その後に広がる世界の方がずっと素敵だと思いますよ。
(早く一緒に遊びましょうよ)

あと、大切なデータはきちんとバックアップしましょうね。
(お前が言うなと・・・はいそうですねー、ちゃんちゃん)