C言語・php・ajax・sqlなどなど今の自分にとっては訳がわからない世界なの
ですが、「プログラマーになりたい。」「ウェブ構築を自分でやりたい。」というのでは
なく、{MIXIのようなsnsサイト}や{GPS携帯電話を使ってリアルタイムにマッチングさせる
㈱ロケーションバリューのようなシステム}などがどう構築されているのかという事を理解でき、
業者に効率よくオーダーできるところまで学びたいと思います。
上記の事をマスターするためには、どういった勉強(科目)を受ければよいでしょうか?
>{MIXIのようなsnsサイト}や{GPS携帯電話を使ってリアルタイムにマッチングさせる㈱ロケーションバリューのようなシステム}などがどう構築されているのかという事を理解でき、業者に効率よくオーダーできるところまで学びたいと思います。
このようなことができるのは独学と経験と才能次第になると思います。実際、大学や専門学校で卒業された大半は仕事でソフトウェアが作れないそうです。学校ではこのようなことを作る機会はまずないと思いますし、習わされる言語はJava言語かC言語がほとんどでしょう。PHP言語等のスクリプト言語を習わされる学校は少ないと思いますが…。また、mixi等のベンチャー系企業ならでは、即戦力が求められているので、実際生き残れる人は学校以外で趣味でもプログラミングをかなりやっている人ではないでしょうか。
大学や専門学校はマスターするよりはあくまで教える場に過ぎず、マスターできるようになりたいのなら、あらゆるソフトウェアを作る等、実践的な経験を掴まなければなりません。私も本を読んで学ぶよりは何かのソフトウェアを作って学んだ方が体感的に向上心があったと思います。何かのソフトウェアを作りたいのか、それを目標にして、目的の言語を覚えると良いでしょう。初めは簡単なカウンターや掲示板でもOKです。
また、プログラマーは会社で仕事をする以外に帰宅後、自宅で予習・復習を繰り返さなければならないことが多いです。プログラマーはある意味生涯勉強になると思いますが、慣れるととても楽しい仕事です。
>どういった勉強(科目)を受ければよいでしょうか?
言い方は悪いと思いますが、一番良い勉強(科目)は独学です。
0から学ぶPHP
学校というよりIT系企業の研修がいいんじゃないですか?
富士通、NEC、IBMなどなどがIT企業の新人教育向け研修コースなどを用意してます。
たとえば、↓とか。
http://www.drinet.co.jp/seminar/semi15.html
他を探す場合はのキーワードは、「WEB」「アプリケーション」 だと思います。
ただ、「効率よくオーダー」というレベルだと研修費用を入門関係の雑誌、本を購入して
独学で学ぶほうが安上がりかもしれません。
ま、強制的にやりたい、ということであれば、研修コースがいいでしょうね。
まず、仕組みを知りたいのか、効率よくオーダーしたいのかは全く別な要素です。
どちらかというとオーダーが最終ゴールと思いましたので、以下、効率よくオーダーという視点で回答します。
効率よくオーダーするという立場であれば、技術的な知識は不要と思います。
それよりも、やりたいことを明確につたえる技術です。
ソフトウェアを作る側の立場としては、正直に言って中途半端に技術介入されるとやりにくいです。
よくあるパターンとしては、「Ajaxっていいんでしょ?あれ使ってやってみてよ」みたいな注文です。
実際にAjaxが適している場合であれば、よいのですが得てしてそうではないです。
かといって、技術的な判断も開発には必要になりますし、その判断は開発側だけではできません。
開発側は、どうすべきかに関する検討項目は上げられます。
しかし、検討項目から判断することは、クライアントさんにしかできません。
Ajaxの例で言えば、開発側は、
といった検討項目はあげれます。
これに対して、クライアントさんが、
と明確にしてくれれば、開発はすすめやすいです。
また、クライアントさんからの要求が、なんとなくAjaxという名前がかっこいいからという理由ではなくて、
実は画像をいろいろ制御して表示したいんだ。ということが分かると、
それなら、Flashでその部分作った方がいいですよ。
という提案も開発側から出すことができます。
これは言うほど簡単ではないのですが、発注するということを効率的に行いたいのであれば、
中途半端に技術を学ぶのではなく、
ということの方が重要と思います。
期待されていた回答とは方向性が異なるかもしれませんが、何かの参考になれば。
すみません。先ほどの回答した内容は回答になっていないので、補足させていただきます。この回答は技術的な回答になると思います。
1)mixiのようなSNSサイト
Perl言語で作られた。しかし、mixi社長の笹原氏はPerl言語は人件費高騰のため、PHP言語に置き換えようと悩んだ程だ。mixiのSNSサイトを真似て構築したい場合、単にPerlを学んで、MovableType等のブログソフトを利用して、その中身や仕組みを調べる等、理解していく形が良いでしょう。
2)GPS携帯電話を使ってリアルタイムにマッチングさせる㈱ロケーションバリューのようなシステム
これはかなり敷居が高いでしょう。Java言語でリアルタイムにマッチングできるライブラリ(モジュール)が必要になる。例えば、Flashで使われるActionScript言語でさえリアルタイムチャットを実現したいのなら、チャットサーバを実現するJava言語のJ2SE Development Kit(SDN)が必要になる。また、JSPやServletに対応したレンタルサーバ業者と契約しなければならない。しかし、現実はJSPやServletに対応したレンタルサーバ業者は全くない。あったとしても、基本料金がとても高い。そのGPS携帯電話を使ってリアルタイムにマッチングさせるシステムは、ほとんどライブラリで実装したと思いますが、具体的なソースコードは企業秘密なので全く分からないでしょうね。また、ケータイアプリを作りたい場合はJava言語が良いと思いますが、現在はFlashのActionScriptに置き換わる傾向がありますでしょうね。
Ruby言語で作られた。単にRubyを学べば良い。
3)Twitter
これもRuby言語で作られたが、開発者は「Rubyはあまり良くない言語なので捨てる。これからはPHP言語かJava言語に置き換える」とか言っています。
http://jp.techcrunch.com/archives/20080501twitter-said-to-be-aba...
4)その他
・ひろゆき氏はperl言語で2ちゃんねるを作った。
・脳内メーカーはPHP+JavaScriptで作った。
・Ok-WaveやYahoo!知恵蔵はPHPで作った。
・顧客の重要な預金を扱うオンラインバンキングでさえ単にPHPで作っていることもある。
・GoogleMapはJavaScriptで作った。最近はFlash版もある。
>"構築されているのかという事を理解でき、業者に効率よくオーダーできるところ"まで学びたいと思います。
残念ながら、このサイトはどうやって構築されたのか、そこまで理解するのは自分の力しかないと思います。場合によってはコミュニティサイトを使って質問をすると良いでしょう。
本当はあらゆるプログラムコードを読んでマッシュアップしながら自分なりのソフトウェアを作って、後はmixiやGPS携帯サイトの構築を自然に理解できることもできるようになるでしょう。要するには独学と経験が大事です。しかし、そのコミュニティサイトでも大抵は有意義なソースコードは誰でも教えたがりません。自分で考えるしかないです。
最後に学校でそこを学べるのかは微妙です。学校は教科書通りしか進まないと思いますし、サークルや自由研究でない限りは難しいと思います。学校より独学の方が良いということで…。そして実践的なプログラムを開発しながら勉強するしかないです。ソースは俺。
ただし、http://www.yugop.com/ このような物理が動くようなモノであれば、数学(二次関数や三角関数)が大事ですし、プログラミング言語の技術を誰よりも早く先取りしたい場合は英語力が必要です。海外のレポートを読むためです。ただ、それだけのことです。
何がしたいのかさっぱりわからないな。
金があれば「○○を作ってくれ」と発注すればいいだけだ。
問題は何を注文するかだが、これまで無いものを作るわけだが、発想法や、既存のものについてトコトン知り尽くすことができれば良いのでは。これについては教えてくれる学部は存在しないだろう。
自分でやりたいことが無く、顧客の要望を業者に発注したいのであれば、ただのSEだ。SEを養成する学部もないので、書店でSEの○○と書かれた本でも読むか、対象業務の知識を深めるための学部に行くか、技術的知識を持つために情報系の学部に行くかしかないだろう。
WebプロデューサーとかWebディレクター、養成口座みたいなものなどは概要を学ぶにはいいのではないかと。
たとえばデジハリだと↓とか
http://school.dhw.co.jp/course/s_webproducer.html
でも、本格的な技術力を身につけるではなくて・・・ということなら独学のほうが安上がりで効率的かもしれませんね。
大きな書店のWEB関連書籍コーナーに行ってざっと眺めれば勉強したい内容にあった書籍が見つかるのではないかと。
3の方にかなり同意です。
仕組みを知ることと効率よくオーダーできる事とは全く別モノです。
車のセールスマンが車の整備について詳しく知っている必要はないのと同じ事だと思います。
Webの世界は常に進化しており、新しい技術やサービスもどんどん沸いてきます。
mixiやロケーションバリューもあっという間に過去のものになってしまうかもしれません。
既存のサービスの仕組みを学ぶよりも、時代の先を見据えて新しいサービスの発想が出きれば
おのずと、それを実現化する為に一歩一歩勉強し、それが自分のスキルになっていくと思います。
ただ、どんな言語でもいいのでとりあえずプログラムを勉強する事は
新しいサービスを発想する上で非常に役に立つと思います。
コメント(0件)