普通のおばちゃんプログラマが学んだプログラミング入門サイト&本

みなさん前回の記事お読みいただきありがとうございます。まさかそこそこバズるとまーーーーーったく思ってなかったので正直驚きました。あかん!なんかそれっぽい記事あげたほうが良いかもと謎のプレッシャーに駆られました。

( ゚∀゚)アハハ八八ノヽノヽノヽノ \ / \/ \なんでいままでワイガ参考にさせていただいたサイトや本など上げてみたいと思います。みんなのおググり時間の参考にどうぞ、基本老舗のかたいとこです。

公式ドキュメントは教科書、Webや本は参考書

基本メーカーが出してる公式チェックしながら写経や購読したほうがいいです。詰まった時結局公式のAPIドキュメント見てチェックが一番早いので習慣づけもためにも。公式にチュートリアルあればそちらもチェックしてみてね。

どんな良書でも自分に合う、合わないがある

大学の面接授業で先生におすすめの参考書を伺ったときの先生のお答えです。これはあるな〜。先生からは実際手にとって確認してみましょうとのご助言を頂いたので、色々探すのもその後の役にたつと思います。

VBA

Excel大辞典:MS-MVPによるExcelマクロのAPIごりごり解説サイト。クラスモジュールについも詳細の解説があるので読み込めばDBアクセサぐらいならかけるようになります。

home.att.ne.jp

moug:MSofficeのQ&A、逆引きサイト。「速攻テクニック」のVBA逆引きは実用的&大量

www.moug.net

T'sWare:Accsess開発サイトの老舗、Tips集たいへん助かってます。

tsware.jp

Rubberduck:VBAの開発環境VBE,古感満点で大変つらいんですが、そんな環境にテストFWを!リファクターを!静的解析を!もたらしてくれる、素晴らしすぎるアヒルちゃん。これでテストがいっぱいかけるぉ(´;ω;`)

rubberduckvba.com

日本語の解説は以下の記事を。著者のmina_itaさんはVBAに限らず知見が豊富な方でWin系ならフォローして損しません!

VBAにはユニットテストリファクタリング機能がない・・・そんなふうに考えていた時期が俺にもありました

qiita.com

Rubberduckはモジュール,フォルダにはく機能もあるのでバージョン管理にも便利なんですが私は前からモジュールとAccsessなら一緒にテーブル定義やクエリーのSQLもテキストファイルにはくVBAかいて管理してます。リモートリポジトリは会社でBacklog使ってたのでお願いして作っていただきました。PJ管理のSaaS使ってるとこはGitのリモートリポジトリ作れる機能あるかもなので確認してみたはいかがでしょう。 某Slackになげた投稿をもとにVBAについては書いてみました。このくらいならだいぶモダンな開発に近づけると思います。

Git

作者の方はGitの入門本もかかれている優秀な方で、わいWebのスライドでこれよりわかりやすいのは見たことないので激オススメです。Gitとは?から始まりある程度使うとつまるポイントまで網羅されています。

www.slideshare.net

テスト

いわゆるTDD(テスト駆動開発)先にプログラムでいる機能をテストに書いちゃう(テストファースト)開発手法ですが(いやもっと色々あるけど)、これだけはほんの2,3の機能でも!個人開発でも!言語が何であろうとも!やってみたほうが良いと思います。3〜4年ほど前お知り合いのエンジニアさんがハンズオンされるのでどんな内容か確認したあと参加しました。TDDってまさしく実践的開発手法なんでできればハンズオン参加したほうが良いと思うけど、これのメンターデキる人相当コード経験ないとしんどいだろうな・・大体これいいって言ってるのベテランばっかだもんな・・まずは教科書読んで、ちょびっとづつ実践していければいいと思います。

テスト駆動開発 Kent Beck

テスト駆動開発 | Kent Beck, 和田 卓人 |本 | 通販 | Amazon

Java

Java職業訓練でやったんだけど、けっこう暇だったんで結木浩先生の本写経してました。

www.hyuki.com

www.hyuki.com

あとJavaといえば皆さんお世話になってるだろう「ひしだまさんのグレーのページ」この網羅量&知識量すごい!

www.ne.jp

C(シャープでないのでかなです)

C#暇な時!(さっしてねw)Windowsで手動コンパイラあって手頃で試せるのでオブジェクト指向言語の入門にぴったりだと思います。私も暇な時!よく下記のサイト写経させていただいてました。がっつり情報工学の勉強してる方が書かれているのでそっちの入門にもとても良いサイトだと思います。「未確認な紫のページ」って勝手にあだ名つけてます。

ufcpp.net

Swift

私がiosやりだした頃は逆引きサイトがあったぐらいだったので、基本公式だったんですがこの頃の公式すごく英語がむずかしくって苦労した記憶が・・こちらの本がすごく助かったです。

www.amazon.co.jp

Kotlin

ちょっと興味でてちょろっと写経した程度なんですが、やっぱりエヴァンジェリスト赤べこ本で写経しました。 Kotlinスタートブック -新しいAndroidプログラミング 長澤 太郎

www.amazon.co.jp

TypeScript

遊びでちょこちょこReactとかさわってるのでちょとだけ覗いています。実践的な内容がすぐ開発に活かせそうでいいです。

future-architect.github.io

Python

大学の2,3科目で勉強するのでさらっと基礎をやりました。代入からはじまってclassまでぴっちゃ〜200ページ。圧巻の入門書をCC by 4.0で読めるのはありがたいですね。

repository.kulib.kyoto-u.ac.jp

ただ入門だけだったらごっついannacondaとか入れるんじゃなくて仮想環境でいいんじゃないかと思います。

docs.python.org

(追記)大学の課題でQGIS(地図データ)勉強したのでGISのライブラリをちょこちょこいじってみました。 https://blog.goo.ne.jp/m4g/e/69b91254bd1d22f93b0b33848e8712d0

C,アルゴリズム,関数型言語

競技プログラミング挑戦したり関数型言語やってみたいって方は先に計算機科学の基礎やっちゃったほうが入門早いと思います。ここらへんどーしても学術の知識あったほうが手を闇雲に動かすより早いと思います。とりま大学の教科書上げときます。情報理論の本計算は指数、対数関数の復習だけで行けたしアルゴリズムの本はCのコードいっぱいあって書いてる人なら写経しちゃえば理解早いです。

honto.jp

honto.jp

Docker

長年フォローしてるエンジニアの方に教えていただきました。これもネットワークの知識あるとないとでは理解のスピード全然ちがう・・ありがとう放送大学!情報ネットワーク!(オンライン科目なので教科書ないの、情報コース流石にぶっちぎりのオンライン科目の多さ)芝﨑 先生!!です。軽く入ネットワーク入門してから下記サイトおすすめします。具体例を楽しくあげながら手を動かして学べます。hogeで変数宣言しちゃうとこに著者の方同世代感じます・・

tech-lab.sios.jp

流石に年なだけあって節操なくちょこちょこやってますけどw興味あるとこからちょっとずつどうぞ。