プログラミングは意外と誰でも出来るという話です。
スーパープログラマーがやるような、AIとか将棋の対戦とかのすごい難しいことは置いといて、一般的な事はすごくハードルが下がったような気がします。会計システムなんかは、コツコツやれば、シンプルなものは結構簡単に出来る様な時代になりました。
昔は、プログラム言語もすごく難しかったので、動くものを作るだけでも相当に大変だったと思います。最近は色々わかりやすいものが出てきて、それ程コンピューターの深いところに知識がなくても動くだけのものなら、簡単にできるようになりました。
iPhoneのプログラミングも以前はObjective-Cという非常に難しいというか、「取っ付きにくい」言語の習得が必要で、なかなかハードルの高いものでした。私も以前に挑戦したことがあるのですが、メモリー管理というのがあり、メモリー・リークの処理の仕方がよく分からず挫折しました。
どれくらいObjective-Cという言語がわかりにくかったかというと、Appleがわざわざ新しい言語を出したくらいです(多分)。私もObjective-Cをやろうとした時、それまでにC#やJavaの経験が何年もあったのですが、かなり格闘しましたがわかりませんでした。(私の努力が足りなかっただけなのかも知れませんが。)
他にもSwiftはスピードが速いなど色々と特徴があるのかもしれませんが、Objective-Cが難しすぎて、iOSで動くデバイスのプログラムの参入障壁が高すぎるが、Swiftと言う新しい言語を作った主な理由ではないかと思っています。
Swiftは直感的なオブジェクト指向言語でわかりやすいです。C#やJavaと似ていて、言語自体がメモリー管理をしてくれるので、メモリー管理をプログラマーがする必要はありません。これがC言語を経験していないJavaやVB以降のプログラマーには画期的です。
今は、iPhoneの会計アプリをリリースしようとして、少しずつプログラミングを続けているところです。1年ちょっと前に買ったMacbook Airを使って、通常の業務の合間を見て、地道に作業を勧めています。
このアプリでは、レシートをカメラで撮影すると、事務所のサーバーに転送され、事務所のスタッフがクラウドの会計システムに入力します。お客様は、このアプリから、この結果の財務諸表が見れるというシンプルな仕組みです。
この仕組みはそれ程画期的なものではないのですが、それでも、お客様には便利になりますし、事務所にもiPhoneやサーバー周辺のプログラミングの技術が蓄積されるので、良いことなのではないかなと思っています。
それにしても、プログラミングのハードルは下がりました。コツコツやれば、サーバー側とスマートフォンなどの端末側のプログラミングも一人の人間が出来る時代になってしまいました。
****************************
本も色々買って勉強したのですが、この「親切すぎるiPhoneアプリ開発の本」がすごく良かったです。この本のステップ(39あるのですが)を一つ一つ実際に手を動かしてやってみて、今まで分からなかった基本的なタッチの部分や全体のフレームワーク的なものが随分わかるようになりました。