見出し画像

プログラミング学習してなんかいいことあるの??という方へ

最近ますますプログラミングを学ぶ方が世間一般では増えているようですね。

かくいう僕も、全くの素人(仕事も関係性なし)から、独学でプログラミングを2年間ほど学んでます。

まだへなちょこレベルだと思いますが。2年ほどやってきた効果としては、以下3点。

1.論理的思考力・問題解決力

 プログラミングっていうと、なんか英語の小難しいコードがわけわからんくらいブワーって並んでて・・・ってイメージじゃないですか?

↓こんなの

赤と白のチームカラーを身につけて、試合の応援を盛り上げよう!

でも、プログラミングの醍醐味って、コードを書くことより、「こんなことプログラムにしたら面白いかな?」「これをプログラムで表すには、どうすればいいのかな?」ってのを考えて、「あ!!こうか!」って分かった瞬間が一番気持ちいいのです。

また、到達するための手順は何通りもあり、どの道をとおってもOK、正解は一つじゃないってことが多いです。

これって、仕事で直面する課題解決の手順と似てますよね。持ってる知識、調べて分かることを組み合わせ、そのとき最良と思う答えを選択する。まずは実施してみて、仮説が正しいか検証し、いまいちなら別の方法を試す。

前々部署くらいから、トラブルシュート的な仕事が結構多いのですが、多いに仕事に生きている気がします。

2. とにかく仕事が楽しくなる

 これはプログラミングに限った話ではないのですが、正直僕は勉強が苦手なタイプでした。成績はそこまで悪くなかったですが、「学ぶという行為」そのものが苦手で 笑

赤と白のチームカラーを身につけて、試合の応援を盛り上げよう! (1)

ところが、プログラミングを初めて、「分からないながら必死にくらいついて、道筋を考える」→「その道筋を通るための手段があるのか、ないのか、あるならどうやるのか調べる」→「実行してみる」。

これを繰り返すうちに、それがプログラミングだろうが、業務知識だろうが、全然違う分野のことだろうが、「自分の知識を積み上げていく行為というのがこんなに楽しいことだったのか!!」と気づいてしまったのです。

今は、休日も勉強したり、プログラミングの勉強したりしてます。笑 同僚たちは、「信じられない!休みの日は休みなよ!」と言われるのですが、正直、「遊び」と「学び」はイコールになりつつあります。笑

勉強って実は楽しいんだよって、本当に過去の自分に教えてあげたい。遅咲き過ぎて悲しくなりますが、でも気付けたこと自体をとても幸福に思います。そんな、気付きもプログラミング学習はもたらしてくれました。

3. 実生活にも活かせる

 1も2もなんかプログラミングっぽくない!!なんかほら、コードをちゃちゃっと書いて、ポンッてEnter押したら、ブワーってすごいことが起きる。みたいなそういうのが知りたいんだよ!!!って人もいらっしゃると思います。

多分、プログラミング学習をしても、途中で挫折してしまう人は、結局こんんなの勉強しても、一体何に役立てることができるのだろうか・・・。意味ないんじゃない?

そう思って、やる気がどんどん萎んでしまうのだと思います。

赤と白のチームカラーを身につけて、試合の応援を盛り上げよう! (2)

僕もそうでした。なんかとりあえずコード書いてみたし、なんとなく書けるようになったけど・・・あれ?この先どうなるんだっけ?

今、実際に以下のようなことができています。

業務においては、Pythonで学んだプログラミングのベース知識でマクロVBAを調べながらプログラムを作成し、業務効率化するプログラムをちまちま作っては、みんなに「魔法使い」のように賞賛されます(笑)

決して難しいことはしてません。一番初めは、案件管理表を担当者ごとに案件表示するプログラムからでした。(殆どフィルタ機能 笑)ただ、複数の列に条件つけてフィルタかけるのって結構地味に非効率ですよね。これを自動化したことで、一人頭数分削減ができるわけです。毎日の積み重ねで考えれば結構ですよね。

これが非常に喜ばれ、すっかり気を良くした私は、今度はWBS上に予定日・予定終了日を入れたり、完了日を入れたらスケジュール列に自動反映したり、イナズマ線を引くプログラムを作りました。これも信じられないことにみんな各自手作業してたものです。これで、更に魔法使いとしてのレベルが上がったことは言うまでもありません。

また、地味ですが、勤怠システムから日々の勤務時間におけるとある特定業務にかかる時間を月単位で集計する業務についても、勤怠システムからコピペしてボタンを押せば自動算出するマクロを作りました。

一個一個はちょっとしたことでも、実際に自分が作ったものを誰かが使ってくれることはこの上ない快感です。笑

あれ、でも全部マクロじゃん!!Python使ってないじゃんって思ったそこのあなた・・・。

そうです、当社はセキュリティー上フリーソフトなんざダウンロードできないのです。コントロールパネルすら開けない環境(涙)

なので、Pythonはプライベートで主にスクレイピングを活用しています。Webスクレイピングとは、簡単にいうとインターネット上からHTMLファイルを拾ってきて解析し、必要な情報をプログラムで取り出す行為です。

RSSで更新情報を拾うこともできますが、RSSが利用できない頁や、検索結果で表示されるリンクをさらに辿って、更に情報を取得すること等もできます。僕は気になるサイトから最新情報を拾ったり、知りたいキーワードを入れたら、関連ワードを拾って検索結果を引っ張ってくるプログラムを使って情報収集してます。

では、最後になんかそれっぽい体験をしてみましょう。

4. コマンドプロンプトを使ってみよう

Pythonではないです(笑)

Windowsの方、以下のように「コマンドプロンプト」を開いてみてください。今からちょっと簡単なプログラミングをしてみましょう。

スクリーンショット 2021-03-06 215214

こんな画面が開いたことと思います。

スクリーンショット 2021-03-06 215351

では以下のように、一行ずつEnterで確定しながら順に入力してみください。(ユーザー名を黒塗りしています)

スクリーンショット 2021-03-06 220026

できましたか?コードは以下です。(●●●は貴方のユーザー名が表示されます)

C:¥Users¥●●●¥>cd desktop
C:¥Users¥●●●¥>Desktop>mkdir new
C:¥Users¥●●●¥>Desktop>cd new
C:¥Users¥●●●¥>Desktop>new>type nul > new.txt

特にエラーが出なければ、成功していると思います。ではデスクトップを開いてみましょう。

スクリーンショット 2021-03-06 220858

ピンクの下線部分に「new」というフォルダができていますね。では、フォルダを開いてみましょう。

スクリーンショット 2021-03-06 221133

newという名前のテキストファイルがあります。

cdはフォルダ(ディレクトリ)移動(チェンジディレクトリ)、mkdirはフォルダ(ディレクトリ)作成(メイクディレクトリ)、type nul > new.txtで中身が空っぽのnewというテキストファイルを作る、ということを指示しています。実は、これプログラムとして書くことで「バッチファイル」として、実行させることもできます。

先ほどのコードをメモ帳(テキストファイル)に書いて、拡張子を.batとして保存してみてください。

スクリーンショット 2021-03-06 221600

一点だけ、文字コードがUTF-8になっている場合はファイル保存時にANSIにして保存してください。(今回はしなくてもできると思いますが)

では、先ほど作成したnewフォルダを一旦削除したうえで、今作ったバッチファイルをダブルクリックしてみください。

どうでしょうか?先ほどと同じようにnewフォルダと、new.txtファイルが作成されたことと思います。なお、バッチファイルはコマンドプロンプトからも実行可能です。例えば、あなたのユーザーフォルダにバッチファイルを格納して、以下を実行してみてください。(お手数ですが、またnewフォルダを消してたうえで)

C:¥Users¥●●●>new.bat

先ほど記載したプログラムが表示され、同様に実行されると思います。

どうすか?なんかワクワクしませんか!笑 これで少しでも心が躍ってしまった人は、多分プログラミング学習独学でもいけると思います。好きこそもののなんとやらです、まじで。

次回は、ちょっとPythonに触れていきたいと思います。

この記事が気に入ったらサポートをしてみませんか?