【IT】会社員の「プログラミング教室」通い、本当に意味があるんですか?
■ このスレッドは過去ログ倉庫に格納されています
このところプログラミング教室に通うビジネスパーソンが増えているという。これからの時代は、ビジネスの多くがITと一体化してくるので、その基礎となるプログラミングを学んでおいて損はないだろう。ただ、一部からは中途半端にプログラミングを学んでも意味がないとの声も聞こえてくる。ビジネスパーソンがプログラミングを学ぶことについてどう位置付ければよいのだろうか。
今年度から小学校でプログラミング教育が必修化されたこともあり、プログラミングを教えるスクールの多くは子ども向けだが、一般的なビジネスパーソンを対象としたスクールも出てきている。すべてがオンラインで完結するタイプと、教室に通うタイプのものに大別できるが、中には忙しいビジネスパーソンを意識して、1週間の集中コースを設定しているところもある。
内容や水準はさまざまだが、一般的なビジネスパーソン向けとしては、HTML、phpなどWebサイトの構築に必要となる基礎的な言語を学ぶというものが多いようだ。たいていのスクールが実際にコードを書くカリキュラムとなっており、単なる知識として覚えるというよりは、実践的に取り組むという部分に重点が置かれている。分からないところがあった場合には、指導員が随時、アドバイスしてくれるというイメージだ。
一般的なITツールの操作はもちろんのこと、プログラミングについても、とにかく触ってみるのが一番であり、習うより慣れろ、という言葉がもっともしっくりくる分野である。ITスキルが高い人は、子どもの頃から、誰に教わるでもなく、こうしたツールを使いこなしているので、極論すると自己学習能力がある人はスクールにすら行く必要はない。
ただITに対して多少の抵抗感を持っている場合、自主的にプログラミングをやってみるという一歩が踏み出せない可能性が高いので、スクールに通うというのはひとつのきっかけになるだろう。スクールでの習熟度がどの程度なのかはともかくとして、一度やってみて損はない。
しかしながら、ビジネスパーソン向け講座は、本格的なプログラマーを養成するためのカリキュラムではないので、何を目的に受講するのかという部分をしっかり把握しておかないと、ムダな投資になってしまう可能性がある。一部から指摘されているプログラミング教育の弊害というのも、おそらく同じ文脈で考えてよいのではないだろうか。
日本人に欠けている論理性と抽象思考
小学生や一般的なビジネスパーソンに対して行われるプログラミング教育は、職業訓練としてプログラムを学ぶことではなく、IT的な考え方、思考回路を身につける部分が重視されている。IT的な思考回路というのは、論理性と抽象化の2つに集約できるが、実はこの2つは日本人が極めて不得意としている領域でもある。
プログラミングを通じて、論理性と抽象思考をトレーニングできれば、ITシステムそのものに対する理解が深まるだけでなく、一般的なビジネスの進め方についても改善が見込めるだろう。日本人の仕事の進め方がグローバルで通用しないという話をよく聞くが、それは英語ができないからではなく、論理的な思考が苦手で、かつ抽象化という概念を欠く人が多いからである。
以下ソース
https://gendai.ismedia.jp/articles/-/70624 自己アピールする奴は二流
一流か否かはそいつの書いたコードを見れば解る
天才は複雑なものを単純にする
凡人は単純なものを複雑にする
一流は一流を知る 二流は三流を知る 小学生に求められているのはプログラミング思考であって、
プログラミングを実践することではない。
勘違いが蔓延している? C言語が難しいと言われるのはそういう書き方しかしないアホが多いからであって
簡単に作ることもできる 仕事で使うプログラミングは書く事よりも読ませる方が大事
あとはプロセス同士の依存関係とか 結局のところビッグバンのように最初の構想で
全てを設計すれば完璧なモノが出来上がる だがおれを含めほとんどのヤツはそこまで
アタマが回らない エクセルのマクロ
クロームのユーザスクリプト
Windowsのコマンドスクリプト
このへんはIT系じゃなくても役立つ
できるだけでだいぶ違う >>330
コマンドスクリプトってなんだよw
まぁルーティンなテキストやファイル処理はバッチファイルかWSHやPowerShellのスクリプトで
出来るようになるだけでも全然楽になる エクリプス使ったjava講座受けたが簡単なことしかできんかった >>329
そういう問題じゃない。
C言語が難しいと言われるのは、例えばC言語には文字列型がないので
文字列処理をやるだけでもメモリについて意識しないといけないとかそういうところ。
他の言語では普通に用意されてる文字列のsplit処理も自前で作らないといけないし。 >>333
ただの配列なのにメモリを意識ってアホかお前 >>1
サルに言葉教えてもしゃべれないと同じようにバカにプログラムを教えることはできない 何度でも書くぞ
論理的思考ができる人間がプログラミングできるのだ
逆ではない >>333
>>334
文字列操作によらずバッファオーバーランには常に気をつけないといけないね。
文字列操作は昔に比べたら格段に楽になっているよ。 >>127
> ExcelやOfficeアプリでVBAも組めない奴が無理でしょ
> 金むしり取られるだけw ザマァー
特定製品に特化しすぎていて,ちょっと・・・
素直に,HTML+CSS+JavaScript を学んで,動的ホームページ
を作れるようになった方が良い
そこまで行ったら,それに上乗せして,PHPやSQLを覚えれば,
IT業界で高給の仕事を見つけられるようになる
あと,Linuxをリモートからコマンドで使えるようになると,なお良い
(知ったかなので,信じないようにw) >>338
そんな誰でも出来ることを今更マスターしたところで高給の仕事なんてとても無理
ただの下働きの奴隷が増えるだけw >>333
string型とか使えばいいんじゃね? >>340
いまやIEじゃアクセス出来ないサイトだらけなのにどんだけ時代遅れなんだお前
どうせやるならChromeだ 日本人は論理的思考が苦手というのは分かるが それとプログラミングに関係があるのか?
知らないから不思議に思える プログラミング以前にITとはどんなものか、どんなことができるのか
利用する場合、どういうリスクがあるのとかわかってないのがほとんどだろ。
まずはそこから勉強した方がはるかにいいと思うけどね。 >>347
こういう奴が一番ダメ
どうでもいい事ごちゃごちゃ考えてないでまずやれよ >>348
プログラミングよりITに詳しくなった方がよっぽどメリットがあるよ。
IT知らないと、プログラミングと言ったってただ単に事務作業自動化する
くらいのことしか思いつかないでしょ。 >>323
C++の話なら、昔は有利だった時代があったんだよ
理由は忘れた
Effecive C++とかその手のなにかに書いてあったはず
多分、オブジェクトを生成するコストがあるかないかとそんな話だったと思う 351だがよく見たらC++じゃなくて、C言語か…
まぁ同じような理由でコストが違うんじゃねーの?知らんけど
ただ、今のコンパイラ優秀だからよっぽど変な書き方しないならどっちも同じ結果になりそうだけどね >>350
ITが〜とか本当にバカだなお前
そんなの一般常識程度知っとけば何も問題ない >>350
プログラミングが出来るメリットは分かるが、ITに詳しくなるメリットってのは漠然としてるね
まあ、海外ではIT担当役員なんて珍しくもないから詳しい方がいいんだろうが
日本はIT系を疎かにしがちだよね、情報処理の仕組みを構築するために各部署のクズ人材を割り当てちゃダメなのに わざわざ教室に行くって時点であんまり向いてないと思うわ
ネット環境さえあればいくらでも自分で調べられるし、
そもそも自分で調べようって姿勢がなければ大したもの作れねーもの いまPythonとThree.jsを勉強してるんだけど、そちらのほうがいいのかな。
仕事で3Dモデリングや3Dプリントは活用してる。 >>355
コンピュータを使ってどんなことができて、どんなことやってるのか知ろうぜってことなんだけどね。
ただ文房具として使ってるだけじゃプログラミング習得してもエクセル作業の自動化くらいしかやること思いつかないだろ? >>352
MC68000とかプリデクリメント、ポストインクリント付きなメモリ参照命令があると
それに沿って記述すれば素直に変換される
逆だと若干冗長になる
そもそもC言語作った当初のターゲットUNIXが動いてたVAX11/780がプリデクリメント、ポストインクリント付な命令があるじゃなかったっけ プログラミングの究極的な思想は「面倒なことは機械にやらせろ」だから
それを理解出来てるなら教室とか行く意味ないのよね >>351-352
あー、ガチで知らんのだな。マジかー? 勘弁してくれよ。
「++(インクリメント)」や「--(ディクリメント)」を変数の前に書く(++a, --a)か、
変数の後に書く(a++, a--)かで、変数の値を参照するタイミングと、「++(インクリ
メント)」や「--(ディクリメント)」するタイミングが変わるんだよ。
値を参照するタイミングとは、「==」,「<=」等の比較演算子に渡したり、引数
として関数に渡す値を取ること。
void Func(int a) { printf("\r\na = %d",a); } があったとして、
a=0;
Func(++a);
a=0;
Func(a++);
では結果が変わる。
前者はインクリメントした後でFunc関数が呼ばれるので「a = 1」、後者は
インクリメントする前の値をFunc関数に渡すので、結果は「a = 0」になる。
∴ コンパイラの最適化とは無関係。 >>363
それくらい誰でも知ってる(教科書にも書いてある)。
それを前提に、
前置インクリメントでは
0) 値を読み出す
1) 値を0で読んだ値をインクリメントしたものに書き換える
2) 値を返す
後置インクリメントでは
0) 値を読み出す
1) 現在の値を保持するためにコピーをとる
2) 値を0で読んだ値をインクリメントしたものに置き換える
3) 1で保持した値を返す
というように一度コピーを取らないといけないので
前置インクリメントの方が速いよってのがC++でよくある話。
さらにそれを前提に、
後置インクリメントでは 3で返す値は0で読みだした値をそのまま返せばいいけど、
前置インクリメントでは 2で返す値は0で読みだした値とは異なっているのでCPUのパイプラインがストールする。
だからコピーコストがほとんどかからない配列インデックスなどは後置インクリメントの方が速いかもしれないよ。
ってのがCPUに極限まで処理を詰め込みたい人が考慮する話。 そんな高度な事やる前に分からない事があればググるスキルを会社員全員が身に付けるべき >>364
条件分岐命令でジャンプしてプリフェッチキューが破棄されない限り、そんな
条件ではパイプラインはストールしないし、例えば「;」で区切られている、
for(int i=0;i<10;i++)
を
for(int i=0;i<10;++i)
と書いても、比較とインクリメントは、アトミックな処理ではないので、速度は
変わらない。 インクリメント前の値が使用されない場合、コンパイラも馬鹿
じゃないから、INC命令を吐く。
thisポインタ等C++固有の仕様に関係するならともかく、そもそもC++に限った
話じゃないし、なぜC++限定なのか聞きたい。 C++限定なのは、STL使うシーンでイテレータが++演算子をオーバーライドしてるから。 的外れな気がするなぁ。 そもそもイテレーターの++演算子は、ループ回数とは
別で、配列要素をアクセスする際に毎回ベースアドレスからのオフセットを計算して
いないでしょ。 C言語でも構造体の配列にアクセスするのに、
#typedef struct _t { ... } HogeStruct;
static CONST HogeStruct HogeStruct_Table[]={...};
みたいなのがあったとして、
CONST HogeStruct *p;
for(int nIndex=0;nIndex<_counof(HogeStruct_Table);nIndex++){
p=HogeStruct_Table[nIndex++];
// *p に対する処理(略)
}
と書くより、
p=HogeStruct_Table;
for(int nIndex=0;nIndex<_counof(HogeStruct_Table);nIndex++){
// *p に対する処理(略)
p++; // ++pでも可
}
と書く方が大抵のCPUで早い。 プログラム(コーディング)できても
対象となる工程を汎化しないと合理化は出来ない
>>1でいうところの抽象化はプログラマーでも苦手な奴多し 単純に考えるなら++varはreturn side_effect_some_proc(var);
var++は{auto temp{var} ;++var;return temp;}
Copy constructor呼ばないぶん++varの方がお得そうだけど
ビジャビジャみたいな名前したc++ godもc++ primerだったかな?でもforとかの中で意味もなくpostfix ver使ってたような気もする
最近はCpuが頻繁に使われる関数を最適化したりもするしそんな変わんなそうなきもする(´・ω・`) >>369
それにはプログラマーと一緒になって仕組みを作る、現場、業務を知っている人が必要なんだよね
で、多くの企業は必要な人材を投入しないからゴミみたいなシステムが完成する(完成しない) 88BASICしかまともに触ったことないけど、今から勉強して間に合うかな? >>372
問題は目標と何に間に合うのかだろ
プロのコーダーになりたいならやめとけ
日常の作業を少しでも効率化したいのなら今からでも遅くはない >>372
88ベーシックでプログラム組めるなら適性はあるだろ。
MSXベーシックとZ80アセンブラしか知らんかったけど、カーニハン&リッチーのプログラミング言語Cを1日で読んで半日ブラインドタッチ練習して入社試験受けて入った。
Javaは入門本1冊読んで1日で書けるようになった。
勉強するなんて身構えるほどのもんじゃない。家電製品の説明書読むのと同じ。 >>375
Python勉強してるけど余裕だな。
HTMLやCSSは既に使ってるし問題なさそう。
いまは全然違う業界だけど、何か新しいビジネスを始めたいね。 プログラミングに限らず、大人がなんとか教室に行く意味なんて暇つぶし以上の意味はないだろ 42tokyoとか真面目なとこは働きながら通うこと想定してないしな。カリキュラムがc言語だし。 他社で通用するようなスキルを持った人は外資に行くし >>380
ようつべのまこなり社長の教室はどうよ? >>384
学生なら英語に決まってんだろ。
社会人なら英語は習得してるのでC言語 日本はもっと、日本の金融を緩和し、日本で公共事業を増やし、日本で減税し、日本の内需を拡大し、日本をバブル経済にし、日経平均を5万円にしろ。
その結果円の供給量が増え円安ドル高になる。 日本は貿易赤字および経常収支赤字を持つ債務国になれ。 そうすれば円安はもっと進む。1ドルは500円にしろ。
日本の自動車産業をつぶし、日本は金融およびサービス業で食べてく国になれ。 日本にゴルフ場も足りない。
アメリカは内需を縮小しドル高にし軍事費を減らし、アメリカ国内で小型自動車を作り世界へ輸出する。
日本にもっと外国人労働者を受け入れ、日本で外国人労働者を完全自由化しろ。
アメリカは内需を縮小しなくてはならないから外国人労働者は不要。アメリカはそもそもピューリタンが作った国であり住民自治なので外国人労働者は不要。
今すぐ、東京にもっと東南アジア系移民のかた・アフリカ系移民のかたを受け入れよう!今すぐ、東京にもっと東南アジア系外国人労働者さん・アフリカ系外国人労働者さんを受け入れよう!
今すぐ、日本にもっと東南アジア系移民のかた・アフリカ系移民のかたを受け入れよう!今すぐ、日本にもっと東南アジア系外国人労働者さん・アフリカ系外国人労働者さんを受け入れよう!
お前ら日本の会社を、インドネシア・マレーシア・フィリピンの方の資本の会社にしろ。お前ら日本の上司や同僚をインドネシア・マレーシア・フィリピンの方にしろ。
お前ら日本の会社を、アフリカの方の資本の会社にしろ。お前ら日本の上司や同僚をアフリカの方にしろ。
お前等日本人は排他的なレイシストだ。
日本および日本のマスコミは、移民を受け入れないとまずいですよねえwww日本および日本のマスコミは、外国人労働者さんを受け入れないとまずいですよねえwww
ああ、天下り先は民間企業ですので移民を受け入れないとまずいですよねえwww天下り先は民間企業ですので外国人労働者さんを受け入れないとまずいですよねえwww >>384
C言語ペラペラって、プログラミング言語は構文や命令だけ完璧でも使い物にならんよ
ペラペラというのが漠然とした仕様から最適なソースを産み出す能力なら英語ペラペラなんかより価値ある >>1
こんだけネットや本で情報が溢れてるのに、
教わらないと覚えられないなら
たぶん向いてない
やめたほうがいいと思う ビジネスで使うプログラミングはExcelVBAで十分。
インストール不要で独学で習得できるし、マクロもあるし。
逆に、VBAですら独学で習得できない人は、他の言語に手出しできないと思う。 裾野が広がるのはいいことだ。プログラマは一騎当千の世界で、プログラマを自称してる奴でもほとんどはクズ。
裾野が増えることで、その一騎に値するプログラマも増える可能性がある どんなに頑張ってもドラマのようなハッカーにはなれないから
通信プロトコルを勉強しないとね
環境整備に金がかかるし
まあスタンドアロンでお遊びで作成するプログラム止まりだよ >>369
>>対象となる工程を汎化しないと合理化は出来ない
そうそう
これの重要さを分かってないから
どっかのシステム会社に依頼すれば何でも解決できると思ってる
結果、何千万をドブに捨てる
これを繰り返すうちの会社w >>279
arduinoあたりが情報も多いしコストも少なくて済むからいいんじゃね? IT業界は中国やインドの優秀なSEと競争しなきゃいけないから大変らしいね 一般ユーザーだとメーラーのフィルタリングするのに
正規表現を覚えるところからじゃないかな
たいがいエクセル関数とエディタ機能でなんとかなるでしょ
秀丸マクロでも文字列処理くらいはやれるし >>400
業務を汎用パッケージに合わせるという発想が無いからなんでもかんでも高額なオーダーメイドなんだよな。
まあシステム屋としては儲かるからいいけど。 一般の社員はコードかけなくてもDBの仕組みを知っとくほうがよほど役に立つだろ
コードなんざ、VBAでエクセルでちょこちょこマクロ組める程度で充分だ
なにも基幹システムに手を加えるわけじゃあるまいし >>409
DBの仕組みってなんだよw
そんなの知ってても何の役にも立たない プログラミングはマニアを除いては必要があって勉強するもの。
目的がないのに勉強しても意味ないし、すぐに忘れる。
教室業者に騙されてるだけ。
必要になれば、参考書買ってきて自分で勉強すればいい。 システム思考するにはプログラミングくらい出来ないと話にならない 階層
整理整頓
名前は大事
まずはこの辺叩き込まないときれいなコードは作れないよ そもそも一般人 すなわち普通のウインドウズを使ってる人達はプログラミング
できる環境が無い ウインドウズプログラムをフルで開発できる環境は
商品としてしか売られていない 劣化版は無料公開されたりしてるけどね
こういう商売の仕方ってちょっとアレですよね・・ 家で趣味でやるなら、個人サイト作るくらいじゃないか。
普通のプログラムは業者とかじゃないと個人で使うことないだろう。
最近個人サイト運営してる人がめっきり少なくなってしまったので、また活気づいてもらいたい。 数年前にあった事件で
WindowsはそのままでC#コンパイラが入っているから、
あえて開発システム入れる必要ないと言ってた人がいたな インディゲームクリエーターでゲーム作ってるよ
サンプルにスペースウォーやインベーダーやブロック崩しがあってレトロ風アクションを作るの面白い そのまま実務に役立つとは思えないけど
論理的に考える力はつくだろう
やみくもに仕事に取り掛かるのではなく
俯瞰的思考で考えられる 論理的思考力が低いやつが訓練で論理的になった試しがない >>423
それな
論理的思考力を身につける機会なんて、学校教育の中にも数学があったのに
高校の数学の中で身につかなかった人が、大人になってプログラミング学べば身につくという考えがおかしい 仕事や実生活で言えば「問題を切り分けて原因を絞り込み解決へ導く能力」ってことになると思うんだけど
ほんとこれができない人多いよね
プログラミング学べばそれができるようになるのかな >>425
それは論理的思考力とはまた別で、問題解決能力と言われてるやつだけど、プログラミング学んでも無理
エンジニアがその能力を発揮する場面はトラブルシューティングの場面だから、現場でたくさんのトラブルに遭遇することで習慣化していく思考スタイル
プログラミングの勉強では身につかない >>425
能力の問題よりも文化の影響が大きいように思える
なにもかも結論ありきで話を進めるし
意見を曲げなかったやつが高評価されるからな
結論ありきで進めるということは事実かどうかよりも結論に近づくかが重要になるからな
その際論理は邪魔な場合が多い ■ このスレッドは過去ログ倉庫に格納されています