【IT】プログラミングをやったことがない人が必ず抱く「幻想」と、その正体
レス数が1000を超えています。これ以上書き込みはできません。
一般向け経済誌が特集で取り上げるなど、相変わらずプログラミングが注目を集めている。「素人記者がプログラミングに挑戦してみた」といった記事も多い。
「やったことはないが、自分もプログラミングを始めればガラッと世界が変わるのではないか」と思っている読者も多いだろう。私もかつてはそうだった。
私がプログラミングを知ったのは中学生のときだ。出会った時期自体は早い。自分が持っていたパソコン用に簡単なゲームのプログラムを作り、遊んでいたこともある。
しかし、プログラミングに対してはずっと苦手意識を持っていた。見よう見まねでプログラムは作れるものの、どうして動くかはあまり説明できない。プログラミングを理解できている実感は全くなかった。「いつかプログラミングができるようになりたい」とずっと思っていた。
できるといっても無数のレベルがある
私がプログラミングをきちんと学ぶきっかけになったのが、2005年に日経ソフトウエアという雑誌の編集部に異動したことだ。
日経BPの雑誌は書店を通さない定期購読タイプが多いが、日経ソフトウエアは書店売りの一般向けプログラミング雑誌である。基本的には外部の執筆者に原稿を依頼することが多い。ただ自分で記事を書くこともある。
プログラミングを学ぼうと思った理由は2つある。1つは自分がプログラミングの記事を書かなければならなくなったこと。もう1つは外部執筆者のプログラミングの実力を見極める必要があったことだ。
関連記事:プログラマの実力偽装を考える──初心者と中級者を分けているもの
学習のために使うプログラミング言語には「Scheme(スキーム)」を選んだ。教育用によく使われていた言語で、実用的なソフトウエアの開発にはあまり使われない。実用的な言語を選ぶと、固有の文法やライブラリーといったその言語だけの事情に引っ張られてしまうのではないかと考えたのだ。言語にとらわれないプログラミングの本質を学びたかった。
当時、Schemeを使ってコンピューターサイエンスの基礎を学ぶ勉強会が週に1回開催されていた。そこで、その勉強会に欠かさず参加するようになった。勉強会は2〜3年続き、それなりの量のSchemeコードを書いた。この経験が、自分のプログラミングの基礎になっていると思う。
こうして少しはプログラミングができるようになって初めて分かったことがある。「プログラミングができるといっても、そのレベルの幅はとんでもなく広い」ということだ。プログラミングが少しできる人と最上位レベルのプログラミングの実力を持つ人の差は、想像以上に大きかった。
以下ソース
https://xtech.nikkei.com/atcl/nxt/column/18/00682/021200027/ これを誰でもできるようにしたら億万長者になれるのに MIDIなんて昔は数値でシコシコ打ち込んでたのに
マウスでポチが当たり前だからな
そういうソフトを作れよ
ソース見ないでもプログラミングできるような >>899
分かってない奴程一つの関数やメソッドにロジックを大量に突っ込むからな
Forが副作用まみれ、ロジックごった煮のクソコードに早変わりだ
関数の意味をマジで中学校からやり直してこいって言いたくなる 趣味のプログラムにSOLID原則とかドメインオブジェクトとか要求されても困る。 でも真空状態(=副作用なし)で動ける関数なんていくらもないんやでー。 みんなは、どうしてプログラマーになろうと思った?
キツい仕事じゃないの? >>905
他にできる仕事がなかったから。
すぐきょどるコミュ障だしやる気ないし遅刻魔だし。
キツくはないけどもうちょっとお金は欲しい。
最近は残業してると仕事減らされるところが増えたので昔ほど稼げなくなった。 >>902
それは本来モジュール設計やオブジェクト設計の段階で潰す話よね
新人がみんなスラスラ非のないコードが書けるなら
プログラマなんてチョロい仕事ってことになる
新人のダメコードを読みながら、何が分かってないかを読み解いて
本人の性格を含めて、どう指導するかまで考える事が先輩の仕事
ヤバそうな奴ほど早めにフォローした方が、トータルで楽 ただ〜ID:miY46kD8です
このスレ伸びてなかった
忙しく見てませんでした
>>1
「やったことはないが、自分もプログラミングを始めればガラッと世界が変わるのではないか」
観光地で体験なんたらをするのと同じ
巷にあるアプリでプログラミングやってみました〜はプログラミングではありません
そもそもWindowsはMS-DOS上で動くアプリケーションなのです
その証拠に「ファイル名を指定して実行」で「cmd」エンターして見れば分かる cmd エンターのあと
...>help エンターする
色んな事ができます
色々や見れば良いよ、壊れるかも
その色んな事ができるインターフェイスがWindows という
アプリと言っても過言じゃないんだよ >>905
プログラムに興味を持ったのはコンピュータのことを知りたかったからだな。
コンピュータを好きに動かしたかったし。
>>908
うーん、今じゃWindowsの上でコマンドプロンプトが動いているけどね。
NTカーネルの頃から。 >>910
カーネルね
その概念をどのように捉えるのか
MS-DOSで動くプログラムと、
MS社はどのように定義しているのか >>909
アホかお前
コンソールはOSの機能のひとつでしかない >>908
お爺ちゃん過ぎてワロタwww
Windows3.1Jの時代はとっくの昔に終わってますよ
16bitカーネル(MSDOS)はXPの時にビルゲイツ自ら引導を渡すパフォーマンスとかやってますがな
>>910
今のcmdはWindowsカーネル上で動くCUIシェルアプリでしかないのよね
エクスプローラ互換ファイラーとかと一緒
今ではcmdもオワコンになってUNIXシェルライクなPowerShellの時代になってるけど、
お爺ちゃん達はそういう事も知らねーんだよな >>912
仰る通り
だけど、ね
コンソールでは全ての制御ができます
ipconfig
ping
などこのコンソールで確認するよね
なんで?
MS-DOSだからなんだよね >>913
おばあちゃんと言われなくてよかった
20時過ぎか、ご飯食べて一杯やってきた?w >>913
速攻で情報を得るには
cmd あるいは command だよ
あのさあ、普段はどのような似非IT業務やってんの?
って言われませか cmd と command の違いすら知らない
これがIT業界の知ったかぶりw >>913
無知は無知で良いんだけど
cmd 以外に command って知らなかった
なんで?情報処理技術者の 「いろは」
最新技術用語を並べて勝ちましたか? 今時、UNCすらサポートしてないcmdとか叩いてる方がジジくさいような
COBOLとかやってそうw >>919
今やってるのは
もっぱら、データベースのSQLです
どうやったら良いクエリー書けるかなってね >>919
言語はどうでも良いのよ
問い合わせする際のレスポンス
面白いよ、あんたもやったら >>919
i9, SSD 5T, DRAM 256G のPCで
100,000,000人の名簿を名前順に並べる
PCでどれくらいの時間が掛かると思う 独学で達成できるレベルはたかが知れてる
地頭良いはずの研究者でさえ平気で幼稚なコードを量産し恐ろしく低生産性 >>923
単に書いてみただけ
どうでもいい話
ネットワークを触ると必ずコンソールを使うことになる
そういうことです 言語よりSQLを学んだ方が良いかもよ
言語はそこそこ誰でもできます
SQLは即戦力になりますよ >>921
そういや若手のの頃に小規模案件ではやってたな
サブインデックスのコストと検索コストの見積比較やったり、CPUコストとかシコシコ計測したり、
正規化崩しを模索したりしたのは良い思い出
>>924
AWSなりAzureなりプライベートクラウドなりで今はやるのよ
まともな案件ならね O/Rマッパーが普及してNoSQLとか言われてる時代にSQLってのもなぁ >>928
クラウドは遅すぎる
全く使い物にならない
今後、通信速度が速くなるかも
まあ期待はしているけどね >>930
なんで?
すでに頭がおかしいて書いてるし
キチガイとも呼ばれたし
キチガイ相手にコミュできないのかな?
それはあんたが凡人だからだだよ
凡人は地方公務員とかになった方が良いよ、いやマジで >>931
OlacleとMSどっちを使う
それともMySQLをつかう?
私は全部使うよw >>932
うちの現場もそうだけど、数十億単位のレコードも普通にクラウドDBで運用されてますがなw
つか、スケーリングやアベイラビリティー考えるなら今時なら普通にクラウド化すんじゃないの? >>934
それ普通じゃね?
それに加えてDB2もPostgreもみんな普通に使ってきてますがなw
で、そういうの面倒つーか、インピーダンスコストが馬鹿にならんよねって事で
出てきたのがO/Rマッパーみたいなやつ
こんなん10年前の日経コンピュータにも書かれてそうな話だけど >>935
クラウドにも向き不向きがあるのでしょうか
1テーブルにレコード
じゃあSQLで幾つものテーブルを参照したとき
数十億から数件を抽出する際にどれだけ時間が掛かるか
で、訂正は「性別」でした
それを100件する
で、どれくらいの時間が掛かるかな クラウドでできるのは結局はバッチ処理なんだよ
情報を手元に持ってきてクラウドに戻す
排他もだから遅い クラウドでもそういった問題点は解決できるとおもうぞ
キャッシュをつかう、しらべようとする部分を一括ダウンロードしておくなど
つねにネットワーク使用しないといけないわけではない 具体的にグーグルの表計算でプログラムしてたらそういったケースにぶちあった経験あったな
セルを一個一個書き換えるプログラムやると相当時間かかって現実的ではなく
すべての書き換えをローカルのほうでやり終えておき、全体を一括で書き換えるならば直ぐ だから、通信速度とコンピュータの情報処理速度が速くなるとと
一番必要なのは効率のよいSQLを書ける技術者が必要となる
だから即戦力になるんだよて上に書いたんだけどね >>938
クラウド上で処理動かすんやで?
クラウドはNASやネットワークDBじゃないんだけど
動いてる環境から見ればローカル
あと、バッチもあるけど今はRest APIの時代
お爺ちゃんにも分かるように言うと、共通化されたインタフェース上で動くオンラインリアルタイム処理ってやつやな
COBOLer爺様でもCICSとか触った事あれば分かりそうな話だね >>942
NASは単なる共有化HDDなのでそれは写真や文書や表計算などのファイルで良いんだけど
現にクラウドコンピュータがあるんだよね
でクラウドPCに何かやらせたら遅い
遅いんだよ >>942
爺さん婆さんはどうでも良いと思うよ
言語Pythonだの言ってる分けの分からん人が
分かってないのが辛い クラウドは記憶装置もしくはまとまった演算をやらせる装置とみなして
ローカルコンピュータとは別物だと理解してつかえばそれなりに使えるだろ
分散型コンピューティングでも、画像のダブルバッファリングとかでも似た感じの部分はあるが
弱点に対処してつかえばつかえる >>944
VDIとクラウドは別もんやで
スケーリング次第では普通に鯖単発よりクラウドの方が速いのは常識やろ
遅いなら数百万から数千万の同時アクセスのあるソシャゲなんかがなんでAWSで動いてんのよっていう クラウドが遅いというのは実際には通信やAPIが遅いってことかと
命令を出すこっち側と切り離れて、クラウド側単独で動作させる分には、つかえる資源のMAXで動作できるだろうが >>947
クラウドの実体はサーバなので
そのサーバの性能でレスポンスが左右されます
その結果を得るのが今見ているパソコン画面
そのクラウドの処理速度が遅いと言ってんだけど
どう考えても遅いんだよ >>946
アプローチ逆じゃね?
業務アプリならローカルはブラウザ処理くらい
あとは全部クラウド乗っけるのがここ15年くらいの傾向やん
管理の良さも障害耐性も遥かに上だからな
大昔のダム端時代に戻っただけやで ネットフリックスだったが動画配信業界では初だったか、クラウド化したのがニュースになってたが
クラウドも使用方法しだいではつかえるし、予算もおさえられる >>950
実際にそのやり方でブラウザ+クラウドだと遅くなる場合は実在するんだって
遅いというのはやり方しだいでは事実 >>949
グリッドコンピューティングって10年くらい前に流行った言葉を勉強してごらん
有名なAlpha GoだってCPUサーバを1202個、GPUサーバを176個束ねて名人に勝ったんやで クラウドというものは
日常業務を単に遅延させただけ
自社NASでも設けた方がまだマシと思う今日この頃 >>954
はい、
日常の業務レベルのお話なので
凄いねとしか言い様がありません
情報ありがとうございます。 >>952
レアケースやな
あと、何がボトルネックか分からんのに遅い遅い思い込んでるから汎用的に遅いのか、
特定のレアケースで遅いのか理解できてないお爺ちゃんにしか見えんw >>954
余談だけど
まあ、このような人も居ますw
【800万円のPC】Mac Proフルスペック&Pro Display2台を開封レビュー!【ヒカキンTV】
https://www.youtube.com/watch?v=UyPwDHGlfWg クラウドの弱点は、いわゆる「情報がてんこ盛り」だからなんです
記憶装置がHDDならどうする、みたいな >>956
それの100分の1、数十分の一程度ならどこの企業でも借りられるのが今の世の中なのよね
その規模でも実務なら十分速い >>960
もしかしてRAIDもSANも知らんの? >>962
今調べたら、最近はRAIDとか使ってないみたいです >>965
はい、今からやります
期末テストに出ますか? >>964
今時RAID使ってないサーバー探す方がの大変やで?
SSDにしろHDDにしろメディア故障はゼロやないんやで?冗長化どうすんのさ? >>967
知りませんでした
RAIDって意識せずやってたんですね ハードウェアは苦手なんです
ゲームするようになってDisplayPortを知ったくらいです >>967
冗長化って習ったけど
忘れた、調べるね 情報の「機密性」「完全性」「可用性」は知ってたけど
冗長化は知らなかったw >>931
NoSQLって、SQL書かないって意味じゃないだろ。
RDB以外のDBMSをひとくくりにした分類だからO/Rマッパーは逆に関係ない。 >>1
>プログラミングをやったことがない人が必ず抱く「幻想」と、その正体
実はリレーショナルデータベースを扱うプログラマ技術職が不足しています
使う言語は一つだけSQLなのです
即戦力として使えるSQLプログラマは強い
で、プログラムはセンスなんです
色んな意味で幾ら頑張っても合わない人にはあわない SQLってw
今時手取り15万円のプログラマでも書くわw うちじゃ、テスターとして雇われてるお姉ちゃんでもSQL使ってDBの中身の確認やらデータのセットアップやらやってるで うちの犬もとってこいと言ったらSELECT文でとってくるな >>974
select DISTINCT(項目) from テーブル
これと同等の文
select 文を group by を使って記述できるかな
あのね余計な話をしていくと窮地に追いやられて
あなたは消えていくよ >>977
今から、SQL談義であなたをフェードアウトさせる自信があります >>974
まだやってんの
このスレって世界中が見てんだよね
で恥ずかしいと思わないのって、言いたいけど
現役と失業者の違いだね SQLで面白いことは
組み込み関数が使えるということ
それすら知らない使ったことの無いプログラマが多い
だから、ふざけた投稿をする >>978
で?
ディベートでもやりますか?
それとも消えますか
なんか雑談でもしますか?
3時くらいまでなら雑談できますよ このへんな言葉使いの
レべルの低い話を延々とする奴ってずっといるな >>985
哲学のある話が良いけどね
バカみたいな話は時間の無駄だしね >>985
世間で言うCEOってなぜバカなんだろうって考えたことある
理由は簡単なんだよ「本当にバカだから」← >>985
あと、12スレあんたに任せます
というかネタは何も無い >>987
であればレスしなければよくね
切れ方からして自覚あるだろうし >>1
【IT】プログラミングをやったことがない人が必ず抱く「幻想」と、その正体
プログラミング言語はなんでも良い
プログラミングはセンスであり経験や知識などどうでもいい
プログラミングは四則演算ができればいい
プログラミングは女性はしない方がいい
プログラミング言語にSQLという即戦力がある
プログラミングでお金持ちにはなれない 私が一番思うことで
プログラミングを家庭に生活に取り入れた不幸
効率化、最適化、など追求する奥様ってどうですか
足首が細く、ピンヒールがカッコイイ、システムエンジニア
妄想してください
このお話は実在したことです
「幻想」は幻想のままがいい こいつ「足フェチ」かってって思った人いますか?
普通は「オッパイ」ですよねw
システムエンジニアは意地悪なのです
┐(´∀`)┌ やれやれ >>988
CEOという言葉を直輸入して恥ずかしげもなく使う時点でお察し。 CEOは経営についての役職
技術を扱うのはCTO
自社製品の使い方についてプレゼンと質疑ができる知識さえあれば、CEOはそれ以上の技術面について知っている必要はない 映画のITの扱い見ると、その部分だけスーパーヒーローが実在するかの如くでうんざりする なぜかキーボードをカシャカシャやりながらシェルスクリプトっぽいコードをスクロールさせてるだけとかw 一人で半分くらい書き込んでる日本語のおかしい奴はリアル中学生かな
少なくとも職業プログラマではないわな レス数が1000を超えています。これ以上書き込みはできません。