【IT】プログラミングをやったことがない人が必ず抱く「幻想」と、その正体
■ このスレッドは過去ログ倉庫に格納されています
一般向け経済誌が特集で取り上げるなど、相変わらずプログラミングが注目を集めている。「素人記者がプログラミングに挑戦してみた」といった記事も多い。
「やったことはないが、自分もプログラミングを始めればガラッと世界が変わるのではないか」と思っている読者も多いだろう。私もかつてはそうだった。
私がプログラミングを知ったのは中学生のときだ。出会った時期自体は早い。自分が持っていたパソコン用に簡単なゲームのプログラムを作り、遊んでいたこともある。
しかし、プログラミングに対してはずっと苦手意識を持っていた。見よう見まねでプログラムは作れるものの、どうして動くかはあまり説明できない。プログラミングを理解できている実感は全くなかった。「いつかプログラミングができるようになりたい」とずっと思っていた。
できるといっても無数のレベルがある
私がプログラミングをきちんと学ぶきっかけになったのが、2005年に日経ソフトウエアという雑誌の編集部に異動したことだ。
日経BPの雑誌は書店を通さない定期購読タイプが多いが、日経ソフトウエアは書店売りの一般向けプログラミング雑誌である。基本的には外部の執筆者に原稿を依頼することが多い。ただ自分で記事を書くこともある。
プログラミングを学ぼうと思った理由は2つある。1つは自分がプログラミングの記事を書かなければならなくなったこと。もう1つは外部執筆者のプログラミングの実力を見極める必要があったことだ。
関連記事:プログラマの実力偽装を考える──初心者と中級者を分けているもの
学習のために使うプログラミング言語には「Scheme(スキーム)」を選んだ。教育用によく使われていた言語で、実用的なソフトウエアの開発にはあまり使われない。実用的な言語を選ぶと、固有の文法やライブラリーといったその言語だけの事情に引っ張られてしまうのではないかと考えたのだ。言語にとらわれないプログラミングの本質を学びたかった。
当時、Schemeを使ってコンピューターサイエンスの基礎を学ぶ勉強会が週に1回開催されていた。そこで、その勉強会に欠かさず参加するようになった。勉強会は2〜3年続き、それなりの量のSchemeコードを書いた。この経験が、自分のプログラミングの基礎になっていると思う。
こうして少しはプログラミングができるようになって初めて分かったことがある。「プログラミングができるといっても、そのレベルの幅はとんでもなく広い」ということだ。プログラミングが少しできる人と最上位レベルのプログラミングの実力を持つ人の差は、想像以上に大きかった。
以下ソース
https://xtech.nikkei.com/atcl/nxt/column/18/00682/021200027/ >>797
油断しましたw
でも私に発注してください
完璧だよ Win7 のサービス終了
そういうことですが
8と10どるする?
判断の正解はどうするアンタw >>781
○○2、○○3
と、同じAPI名ではなく番号が付加されていく >>803
なんだ改善してるんじゃんか。 ID:miY46kD8 嘘つき。 >>750,754,755
プログラミングはそういうものだよ。
単なるプレゼンテーション資料であり試作品
ちゃんとしたものはIT土方に頑張って作ってもらうだけでしょ?
ビルを建造したいからと言って土方になるのは方向を間違えてる。
プランナーにならないとねえ。 Windows APIを叩くだけのアプリ屋さんはCPUの仕様書を熟読したことあります?
CPUやSoCのエラッタの検証や、ハードウェア誤動作や故障のFMEA/FTAとかやったことあります?
要求されないですよねWindowsアプリには
OS自体に信頼性がないのにアプリでそこまでやる意味ないですからね ・プログラムが作れる
・効率的なプログラムが作れる。
----なかなか越えられない壁----
・読みやすくて効率的なプログラムが作れる。
----越えられない壁----
・アプリケーションが作れる
・人の役に立つアプリケーションが作れる
----越えられない壁---|
・歴史に残るアプリケーションが作れる アプリの面談をしていて、未経験者のポートフォリオを何個か拝見したけど、サンプルを改造した程度で楽な実装に逃げているのばっかだったな。デバックの必然性がないような。
実務だとそれではやっていけない。 プログラムとか難しいね
VBA勉強してるけど、さっぱり進まんよ >>811
趣味ならゆっくりでええんやで?
仕事なら血反吐吐けや! >>807
一生懸命マウントとってるけど
ブログラム書けない人でしょ
se(笑)とか言われてる国内でしか通用しない人だよね >>811
VBAは言語仕様好きじゃないなぁ
ガッツリやりたいならC#とか勧める
個人的なExcelツールで楽したいだけならそれで構わんけど >>815
使えるようになったのは何年前かって話? >>594
逆コンパイルや逆アセンブルやってるところでそれ需要あるよ
というか必要に迫られて自分で今作っているんだけど >>811
エクセルを操作したいのでなければVisual studioの無料版を入れてVBをやったほうが楽な部分はあるよ
慣れてくるとVB経由でエクセル操作したほうがわかりやすかったりするし >>814>>819
事務仕事でExcelVBAが出来れば重宝されるかなと思って
本格的なプログラマーはデスマーチだから、やりたくないんだ
以前メーカーの開発の仕事をしていたことがあるのだが、当然のように毎日夜中まで仕事だし、休日出勤も当たり前
もう、そういうのはやりたくないんだ 自分の賃金を上げたいからIT土方になる為にプログラミング勉強するってのはやめたほうがいいと思うけどな
最近ではその役割はオフショアがやってるから、そいつらと賃金面で戦う羽目になるのは避けられない
日本人のレベルでは最底辺の賃金クラスでIT業界に参入したいのなら止めはしないって印象
逆にIT化が進まない零細企業で、現場レベルのIT化で自分の立ち位置を強化したいってなら意味はあるかも
ってぐらいかねぇ
ただ、最近はそういう企業向けのSaasも安い価格で出てきてるんで、そういうのを駆使しながら、現場の
スキームを再構築、運用できるスキルの方が経営者には喜ばれるような気はするな
素人が素人プログラミングやっても実益は薄いような気はするな
趣味で楽しくてやるなら良いと思うんだけど
>>807
コンサル、SIer、開発ベンダーのPM層になりたいならプログラミングスキル自体が必要じゃないと思うけど
元、そっちの業界の人だったけど、下のレイヤーと円滑にコミュニケーションする為に、自前で簡単なものを
組めるくらいの基礎知識は必要だけど、その辺の層に求められるスキルはもっと別ベクトルのスキルだし、
基礎知識があるからその業界に入れるわけでもないと思う >>821
事務仕事で小手先のスキルアップならVBAってのもあるかもだけど、管理者側から見るとメンテナンスできない
EUCって邪魔者でしかないのよね
スタートアップ専門でやっていくとかならともかく
若手のうちはともかく、長期スパンで見れば費用対効果はあんまり高くないと思う >>703
UMLを知らないのになぜ否定するの?
知らないものを否定するなんてバカだろwww 言語勉強してたらGUIの壁に立ちふさがって改めてAPIを勉強したら
>>563
>>566
こんなことを言われる
いつになったら終わりに辿り着けるのか
標準とかスタンダードとかこれだけはやっとけってのが何なのか
なぜ最初からそれを目標にした道筋を提示しないのか 昔々、MS-DOS にゃ MASM がおまけでついてきて、
誰でもプログラミング始められたんですYO!ヽ(`Д´)ノ
(今なら VBA?) ここの人たちは業界人だから個人でやるプログラミングどころかスレタイさえ全く意に介さずqiiteもいないのに自分語りしてるだけ
VBAとかはプログラミングに入らないらしいよ >>825
やっぱりそうかー
やっぱり甘いか
プログラムは趣味でやるぐらいがいいのかな?
本格的なプログラムは、自分で勉強したところで外注さんには敵わないし 俺が持っていた幻想は言語覚えて論理を駆使すれば何でもできるって思ってたことだな
現実は画像ファイル一つ表示することさえできなかった
それ以前にあのhelloworldさえプログラミングでも何でもなかった(そんなもん初歩の初歩として教えるなや)
今思うのはデバイス(入出力装置)の設計開発こそがプログラミングそのものだった >>829
調べれば一般人でも分かるというか、初心者なら日経コンピューターくらい読めば?って感じかと
業界動向、技術動向、その中で自分を売る戦略を自分で考えられないならIT系はやめといた方がいいと思うよ
技術習得に終わりはないし、流行りの技術を追いながら日々自分のスキルをアップデートできないなら
ガチでIT土方に向いてないし >>833
【初心者の幻想】
なんでもできる魔法がある
魔導書を読めばだれでも魔法を覚えられる
↓
なろう系みたいに最強パワーで暇つぶしに魔王を倒しに行く
【現実】
魔王が現れた
魔王に対抗する術もわからないし、対抗する力を手に入れるのも大変
魔法は習得の入り口までは魔導書があるけど、その先はさっぱり分からない
魔法体系も魔物に効く魔法も日々変わっている
↓
魔王を倒すために情報を集めて、自分たちが今何ができるか戦略を練って、
その戦略に合わせた必要なスキルを旅の中で得て成長していく
こんな感じかね >>835
いきなり魔王とかそれじゃただのアホだろ
最初の敵はスライムかゴブリンと相場は決まってる >>830
Masmが付属してたのは2.xxまでだったな
3から別売りになってた まぁ 現実には、動かすだけではダメだからな。 さもありなん。 動作+保守の為のアーキテクチャーが必要。 >>836
「魔王」というのはプロジェクトのミッションの比喩なんだが・・・
「スライム」や「ゴブリン」はタスクの話だろ、WBSみたいな話はここではしてないよ >>833
現実は結局何がやりたいのかを考えられなければ意味がない
日本全体の今後も恐らく同じような事が起きるだろう
考えられない人間は唾棄されていく、面倒な事は機械がやれば良いんだから
ちなみにプログラミングそのものはパラダイムが理解出来てれば残りは方言に過ぎないから
この言語しか出来ませんっていうのは正直あり得ない
そういう奴は実際は何も出来ませんって言ってるのと同じ 数学と物理がわからんとプログラムだけできても面白いことはできないような プログラミングで飯食っているけど可能性は無限だよ
もちろんそれはできないことは無いという意味ではないよ
可能性は無限
そのことの意味さえ誤解する人間はプログラミングは無理 暇な学生のうちにC/C++やっておいた方がいいよ
それが使えればあとの言語はせいぜい3時間もあれば使えるようになる。
3時間は多いかも >>821
メーカーの開発の仕事してた奴が
> プログラムとか難しいね
> VBA勉強してるけど、さっぱり進まんよ
とかどこのメーカーよw 量子コンピューターのプログラミングってどんなの?>>1さん ハローワールドはくだらない あまりにも下らないから本の一文に選ばれただけだ
あーいうモノからプログラミングは学べない
機械後も人間語も同じだ だが機械と人間はあまりにも違い過ぎる
だから
オマエラの仕事は ここから彼岸に向けて橋を架ける事なのだ >>833
自分用のプログラミング言語を作るのがいいかも。 >>835
>その戦略に合わせた必要なスキルを旅の中で得て成長していく
成長していくと思ったら、道具も使い方も変わって同じことを別のやり方で
やれと強制される。賽の河原だよ。 日本人が数万時間かけて英語が読めるようになり、スタートラインに立つのに対して
英語圏の小学生はC,JAVAを勉強せずともその場で書いて動かせる
、 >>851
これも、できないかやったことのやつの幻想だろ
for → ふぉー、ほう、
if → いふ、もし
などとして、日本人がプログラムできるわけではないのと一緒 できないかやったことのやつの幻想だろ
→
できないか、やったことの無いやつの幻想だろ >>849
手順だけ丸暗記しようとするからだろ
何やってるか理解してれば多少やり方が変わってもやること変わらなければすぐ対応できる プログラマーに戻りたい
仕様書を書くの飽きた
仕様書通りに動作してお客さんの納品も完了しましたじゃねえよ。糞野郎 納品出来たらそれで良しとしないと。
まぁ プログラムは、ウォーターフォールで開発した案件をボトムアップで再開発し直すとか、個々人のアーキテクチャーを作り上げていくのが楽しいんだけどね。
テスト駆動でやってみるとか、構造化に戻ってみるとか、一生楽しめるのがプログラム。 英語と日本語の語彙力と専門用語力
これが無いと他人にも分かり易いプログラムは書けないな
プログラミングには、難しい機械の平易な解説書を書くような面があるから 実装工程・テスト工程が仕様書通りになされていて、機能要件/非機能要件を含めて
成果物が顧客の要件を満たす挙動をしないのであれば、仕様書の不備だろ
それ以上の世界は個人の趣味でやるべき話 一般的な「プログラムが出来る」の定義のレベルが低すぎる もし、本当に詳しくなりたかったらOSの仕組みや成り立ちから勉強したらいいいよ。 言語それ自体も大事だけど
開発環境(IDEなど)に精通してライブラリやSDKなどの運用能力を身につけないとものにならない。
それが最低線 >>855
個人としてやれ
プログラミングの楽しさというのはわがままにやってこそ >>827
一生勉強なんだけど。や服みたいに技術のリバイバルとかはあるけど >>855
スタートアップ に転職しなよ。給料は下がるかも知れんが。 >>827
プログラムについては終わりは無いし、終着点は誰も分からないんだよ
彼らは見下せる相手を見つけて、バカにして偉そうな事を言いたいだけなんだよ >>855
羨ましい
「仕様書通り動作しました」なんて高難易度の仕事をさも当然のようにこなすなんて尊敬する
大抵の場合は
仕様書通りに実装できないので仕様を変えましたか、
要求が変わったので現在の動作は仕様外になりました
のどちらかなのに 三角関数も微分積分も不要
四則演算できればほとんどのことはできる ライブラリ無しでゲーム作ると、三角関数や微分積分が必須 >>870
え?
最初は「仕様書通りに実装したら動きませんでした」だろ。 動かすために、仕様書を一部無視して作りました
これはしたことがある 絶対に挫折しないって本みながらSwift勉強して挫折したわ
ネット調べてその通りにやってるけど動かないからわけわからん もし勉強に終わりがあったらプログラマの価値はさらに激烈に落ちる
勉強内容が次々に出てくることに感謝したほうがいいぞ 終わりは無いし、これからは新興国の人達との競争でしょ?
やっていけるんだろうか? >>863
それを「プログラミングできない」の箱に入れたら
マンパワー不足するだろ。
よくわからんけど、linuxも結構な部分が可読形式で格納されてるし。 >>871
それで済む業務もあるというだけの話
それを不要などという不届きなことをいう人間がいる日本が悲しい >>879
マンパワーだけを問題にする日本のIT労働環境が悲しい >>876
実務の実績があるメンター雇えば?
月2万ぐらいだけど、本人が泥水啜って身に付けた経験を伝授してくれると思えば安いと思う。
ちなみにスクールはやめとけ。 >>854
プログラミングは手順を言語仕様に正確に一致させなけばならない。
仕様は言語設計者が勝手に決めているので覚えるしかない。 プログラムを覚えて思うとおりにコンピュータを動かしたい。
思った通りには動かない。書いた通りに動く。 >>885
多項式の近似計算つかうんだろう、たぶん >>884
言語仕様なんてググればわかるので覚える必要ない。
毎回検索するのが面倒ならチートシート作って机に置いとけ。 「穴堀り名人」は穴を掘るのは上手くても、何処に穴を掘るべきかはわからないからな。 >>104
AccessはUPDATEがクソだからな・・・ >>815
OpenXMLってのがあるから使ってみ
くそ面倒くさいから(´・ω・`) >>892
それは「ExcelファイルをC#で」の間違いでは >>892
それはC#でExcel(book)を使う方法な 何でClosed XMLじゃないん?
という突っ込みを期待したボケが空振りして恥ずかしいす(´・ω・`) 趣味でやれって話が出てるが
最低限、根っこの部分では、興味を持って好きでやってるって人が仕事にしてほしいと
思う分野である。
新人に、仕事で作るプログラムなんだから他人が見てわかりやすいように書けって言ったら
仕事以外でプログラムなんか作りませんって言われて
ちょっとショックを受けたジジイであった。 >>896
> 他人が見てわかりやすいように書け
正しいけど、抽象的過ぎて意味のない注意やね >>896
正しくは「コーディングルールにしたがって書け」だな というか、コーディングルール以前に
明らかにおかしい箇所が、関数一つの中によくもこれほど突っ込めるなというほどあるから、
ダメなコードを甘く見てはいけない。
コーディングルール云々は、一応は問題なく動くものを作ることができた、その先の話だ。 ■ このスレッドは過去ログ倉庫に格納されています