超初心者にオススメなプログラミング独学法【注:Windows限定】
こんにちは。継続の錬金術士なおキーヌです。
ブログ毎日更新は226日目になります。
全く無知な状態からのプログラミング独学って難しいですよね。
ツイッターでプログラミング独学宣言をしている人を何人かリストに入れて、
ウォッチしてたことがあったのですが大抵の人がフェードアウトしていました。
単純にのめり込んでツイートしなくなったのかもしれませんが、
大抵の人は挫折してそのアカウントにログインすらしなくなってるのでしょう。
プログラミング独学は挫折してあたりまえなんです。
1度も挫折せずに続けられている人は基本的に天才の部類に入る人間なのです。
私もかれこれ10回以上は挫折しています。
挫折したらもう一度立ち上がればいいんです。
今回は私が挫折せずにプログラミングを続けられた超初心者にオススメなプログラミング独学法をご紹介します。
残念なことにこの独学法はWindowsユーザー限定の方法です。
Macの方はこの回を飛ばしても大丈夫です。
それではプログラミング独学法第3回目を始めましょう。
- Windowsを自動操作する面白さを知った
- UWSCというマクロ言語が私を救った
- UWSCがイベント設営現場で役に立った話
- Windowsのよくやる操作を自動化してみよう
- プログラミング独学法 第3回目のあとがき
Windowsを自動操作する面白さを知った
記事のネタバレをしておくと、UWSCというマクロ言語でWindowsを自動操作する
マクロを自分で組んでいると気付いたらプログラミングの知識が増えていたという事です。
Windowsを自動操作すると数時間かかる仕事がモノの数秒で終わるのを知ったとき、
私の中のサボり魔がもっと覚えろとささやきかけてきて私はWindowsの自動化をたくさん覚えました。
というのも、24歳の頃HTMLコーディングとSEOの知識だけで某グレーゾーンな広告系の会社にアルバイトで入社しました。
その時にものすごく単純な大量のリストを整理する仕事が降りかかってきたので、
ちまちまと手作業で整理してたのですが余りにも単純作業すぎて泣きそうになってました。
私は単純作業が大の苦手なのでどうにかして楽出来ないかなと思い、
仕事中にもかかわらず楽する方法を探しまくったら「Windowsマクロ」というワードにたどり着きました。
後に紹介するUWSCというマクロ言語がその時の主流でした。
当時はなにかよくわかりませんでしたが、そういえばネットゲームでマクロを組んで装備を一気に変更するとかやってたなと思い出し
UWSCについて調べまくっているとコピペするだけで面倒くさいWindowsの作業を全部自動化してくれるという優れものでした。
シャットダウンを指定の時間に自動でやってくれたり
特定の場所を一定間隔でクリックし続けてくれたり
当時オンラインゲームにハマっていた私はコレは使えるんじゃないか……!?
と仕事中なのにもかかわらず調べているふりをしてネトゲの面倒くさい操作の自動化に使えそうなマクロを探していました。
ここで自動化するという楽しみが私の中で大きく膨れ上がっていきました。
UWSCというマクロ言語が私を救った
私がプログラミング言語を色々触れているのはこのUWSCのお陰です。
最近は公式サイトがドメイン切れなのか無くなってしまったのですが、
Vectorでまだダウンロード出来るようなので安心しました。
ちなみに完全無料です。
Windows10になったら使えないのかなと思いましたが、普通に使えるので個人的には今でも現役のマクロ言語です。
UWSC for Vector
https://www.vector.co.jp/soft/winnt/util/se115105.html
有料版もあるのですが、Excel等を操作できるようにするためのものなので
基本的には無料版で大丈夫でしょう。
エクセルを操作するならVBAがあるので私はずっと無料版を使っていました。
アップデートを続けてくれるなら喜んで課金しますが(笑)
マクロ言語と言っても、他のプログラミング言語と書き方に大差がないので
いきなりプログラミングを始めるよりはまずマクロ言語でプログラミング体験をしてみるといいでしょう。
ヘルプを見ればサンプルコードが載っているので、コピペして自分の好きなように改変していくと
次第に使いたい命令を覚えていきます。
プログラミング言語に大体備わっている
- 変数の機能
- 条件分岐の機能(if)
- ループ機能(while for)
- 関数作成機能
- 疑似的な非同期処理(スレッド)
が備わっています。
更に高い精度の画像認識機能(組むのは少し知識が必要)も備わっていて凄いヤツです。
マクロ言語といっても殆どプログラミング言語と大差ありません。
処理速度は流石に他のプログラミング言語に比べると凄く遅いのですが、
超初心者からすると1から100になったかのような速さです。
書き方はBASICに似ていて、プログラミングの難しい所は殆ど触らなくてもうごくように作られています。
余談ですが日本語でプログラミング出来る「ひまわり」と「なでしこ」という言語があったのですが
逆に日本語でプログラミングする方が難しかったので挫折してUWSCに戻りました(笑)
今でもあるのでしょうか……
UWSCがイベント設営現場で役に立った話
ちょっとタイトルから種子がズレてしまって申し訳ないのですが、
UWSCを最近使った話をさせてください。
イベント設営現場で特定の時間の間はプログラムを起動しないということを
Windowsに元々入っている「タスクスケジューラ」という機能を使っていたのですが、
なぜかたまに動かなかったりしてその度に緊急出動で片道数時間かけて現場に補修に行ってました。
たぶんタスクスケジューラの設定の仕方が悪いのかもしれませんが、起こるのが不定期なので原因が掴めませんでした。
それがWindowsの気まぐれで何度も起るので流石に穏便な私もキレそうになり
どうにかできないか考えたところそういえばUWSCがあるじゃん!と思い、
早速指定時間になったら起動・終了するマクロをその場で組みました。
それのお陰かそれ以来PC関連での緊急出動はきっぱりと無くなりました。
10年以上の時を越えて未だにUWSCは私を助けてくれました。
あの時とはプログラミングスキルが段違いだったので、
ものの十数分でプログラム起動終了コードを書くことが出来ました。
結構限定されるシチュエーションですが、Windowsを安定した自動化をしたい場合
UWSCのスキルを持っていると助かることがあります。
UWSC、なくなる前にダウンロードしておきましょう!
Windowsのよくやる操作を自動化してみよう
話を戻すと、何度も言いますがプログラミングをなんとなく独学するのであれば何かを目標を持つべきなのですが
大抵の人はその目標を持たずにざっくりと勉強するので挫折します。
ならWindowsの自動化をしてみてはどうでしょうか?
例えばパソコンを指定の時間にシャットダウンするようにして消し忘れを防いだり、
特定の時間になったら何かのプログラムを起動したりとかをやってみるとプログラミングの基礎も学べます。
UWSCはマウスの動きとかも記録してそれを再現してくれることも出来るので、
例えばクッキークリッカーのようなクリックを連打するようなゲームでやってみると
凄まじい勢いでクリックできますよ(笑)
ネトゲに利用する時はあくまで自己責任で使ってください。
私はネトゲ用にUWSCを覚えたのにそのころにはネトゲに飽きてプログラミングに夢中になりました(笑)
UWSC以外のマクロ言語
UWSCは公式ページがなくなってしまったので、変わりのマクロ言語を探してみると以下のものがありました。
- AutoIt
- AutoHotkey
どちらも海外製なので正直初心者にはお勧めできないですね。
今のうちにUWSCをダウンロードしておきましょう。
プログラミング独学法 第3回目のあとがき
Windowsオンリーの話になってしまいましたが、調べていませんがMacにもマクロ言語はあるんじゃないでしょうか?
というかMacはRubyとPythonがプリインストールされているので正直そっちを覚えた方がいいですね。
UWSCはあくまでマクロ言語なのでエンジニア界隈では通用しないです。
しかしエンジニアになるための踏み台としてはすごく有能なので、ぜひ使ってみてください。
UWSCの使い方はググれば沢山出てきます。
要望があれば講座を作ってみたいですが、ニッチすぎてまずないでしょう(笑)
それでは。