Pythonとローカル開発環境(途中)

ProgateのPython、無料で出来るところはとりあえず終わった。
以前やった時よりもスムーズに終わったと思う。まぁ続けてたら、Pythonの文法も少し慣れてくるな。少しだけど。

そして、ドットインストールで「ローカル開発環境の構築 [Windows編] (全14回)」というのがあったので、それを#3までやってみた。
今は本当に便利な時代だなぁ。こういうツールが出ているのか。昔はPHPの開発環境をXAMPPで構築したけど、VirtualBoxってなんだろうな。ゲストOSとか、ちょっとよく分からないんだけど、まぁそれを言い出したらXAMPPもよく分からないまま使っていたから、使えればいいか。
そして、Vagrantというのもインストールしてみた。これは1回ダウンロードに失敗した。混んでいたのか何なのか分からないが、ファイルが壊れていた。そういうことはあまり無いので、「騙されて怪しいファイルをダウンロードしちゃったのかな?」と思って焦った。

とりあえず今日はこれだけ。

Progate再開

途中放棄していたProgateだが、いろいろ考えた結果、再開することにした。
大きな理由は、新しい作業所の日給が150円になってしまったことだ。行けば行くほど赤字になるし、こんなんじゃ生活できない。外出する訓練にはなるし、仕事内容に魅力があるし、辞めた作業所よりはモチベーションが上がりそうなので、やることに決めたけど、何年も通う所ではない。

そこで、昔取った杵柄ではないが、IT系の技術でどうにかならないかな、と思った。個人的にはPHPが慣れているけど、もうバージョンが変わっちゃって全然時代遅れだ。今はRubyやPythonが流行りということなので、Pythonを一通りやってみて、モノにならないなら諦める。

今は本当に便利な時代で、e-learningサイトがたくさんあるみたい。とりあえず、今やってる「Progate」(これはTwitterで存在を知った)と、ググって知った「ドットインストール」を比較してみたが、後者は若干中上級者向けとのことと、教材が動画でBGMを流しながらでは学習できないため、Progateが終わってからかな、と思った。

今日は手始めに、Pythonの復習をしてみたが、文法を完全に忘れていたw なんか、もっとどっぷり浸って毎日触るくらいじゃないと忘れちゃうな。歳だし、認知機能障害もあるし。
まぁいいや。とりあえずやってみる。

Progate有料会員は保留

楽しくやっていたProgateのプログラミング講座。やってみたい言語の無料講座はほぼ終わり、これ以上やるなら有料会員だなーと思いつつ、時間が過ぎたわけなんだが。
色々考えて、有料会員になるのは一旦保留にすることにした。

というのも、今多分軽躁で、いろんなことをし始めてしまい、お金もガンガン使っているので、これに加えて月980円は、相当キツイ。そのあたり、まだかろうじて冷静さを持っているうちに決めてしまいたい。
もちろん、学習する時間が取れない、という問題もある。軽躁とは言え精神疾患だから、1日にいくつものことが出来ないし、多分予定を詰め込んだら軽躁が長引いて悪化して、反動で去年の秋~春のようになってしまうことは、目に見えている。

まぁ少なくとも、出張ペーパー教習が終わって、新しい作業所(3)が落ち着いてからじゃないと、まともに考えられないかな。

Command Line 基礎編 修了 1回目

Gitをやって「足りないな」と思った知識であった、Command Line をやってみた。
意外と知っているものもいくつかあり、「へー」とか思ったけど、やっぱり知らないもののほうが多いなぁ。やって良かった。
私はiBookを持っていたこともあり、そっちのほうでターミナルを使ったこともあるんだが、cdやらlsやらしか使った記憶が無い。あとは、コマンドラインの解説サイトを見ながら、おぼつかない手で作業していた気がする。

特にできなかったのは、ファイル・ディレクトリの操作で、ファイルを作ったり消したりコピーしたりが全然知らなかった。これはホント、いい勉強になった。
最後の総復習で、半分くらい分からなかったので、これも後日時間をおいて復習しようかと思っている。

Progateをやってみた Git学習コース I 7.共同開発の流れを学習しよう

Gitってあちこちで見かけるんだけど、なんだろう? という酷い認識しか無かった私なので、絶対つまづくだろうな、と思っていたら、見事につまづきました。ていうか、GitとGitHubは別物なんだろうか? ちょっと調べようとしたが、GitHubがえらく難しそうなので、今度にする……(早速挫折)。

さて、Gitでつまづいたところだが、git commit のところ。「-m」ってなんなの? 何の断りも無く使われているけど。意味分からない。こういうの止めようよ~。初心者向けなのは分かるけど、だからって細かいところの説明を省くのは良くないよ~。
それに、コミットメッセージというものをダブルクォーテーションでくくるのも、「何故くくるのか?」が書かれていない。最低でも「コミットメッセージはダブルクォーテーションでくくりましょう」くらいの説明は書くべきだろう。何も触れていないから、覚えてなかったわ。

だから、第7章のgit commit を使う部分で、めちゃくちゃつまづいた。いつもの私のタイポなのかと、何度も見返した。結局、エラーを出していた原因は、上述の通りだった。はぁ。難しいわ。

と思って今見たら、『このレッスンは「Command Line 学習コース 基礎編」の知識を前提としています。』と書いてあった。がくり。それまだやってない。
昔、MS-DOSなんてものがあった時代に、少し弄ったことがあるので、そんなに難しくないだろうと思っていたが、普通に難しかった。正直、舐めてた。もっと謙虚にならなければいけないね。

Progateをやってみた SQL学習コース I 14.総合演習 と SQL学習コース II 2.四則演算

SQL学習コース I 14.総合演習を、なんとか終えることができた。

自分としては、SQLはそれなりに使ってきたので、自信はあったのだけど、実際にやってみたら結構つっかえつっかえで、がっかりした。そりゃ10年以上前にやったことなんか、忘れてるよなぁ。
それでもまぁまだ学習コース I なので、そんなに難しくはなかった。

次に、SQL学習コース II だが、DISTINCTとか自分では使ったことが無かったから、面食らってしまった。やはり、自分がよく使っていた関数と、そうでないのとで、えらく出来不出来に差があるなぁ。そして、それが自分の弱点でもあるわけだ。
こういう講座を受けてみると、いかに独学がもろいものなのか、思い知るね。

で、このままどんどんいくぞー、と思っていたら、SQL学習コース II は第2章の四則演算で無料コースが終了だった。残念。

Progateをやってみた SQL学習コース I 11.AND・OR演算子

SQLはMS AccessやMySQLでしこたま使ったので、まぁ大丈夫だろうと思ったし、実際途中までは特に問題も無かったのだが、IS NULL, IS NOT NULLでつまづいた。
というのも、言い訳するが、私はデータを入れる時NULLを許さない派なのだ。必ず、数値の0なり文字列の「無」なりを入れないと嫌なのだ。
これは、当時のプログラミング先輩に教わったことで、迂闊にNULLを許していると、あとで痛い目に遭う、と言われたので、NULLは許さない。
だから、この関数は使ったことが無いと思う。

それ以外はホント、特に何事も無く淡々とこなしていった。残りは3講座だが、時間がかかりそうなので、今日はこれまで。

Progateをやってみた Python学習コース II 3.リストの要素の更新・追加

ProgateのPython学習コース II リストの要素の更新・追加を修了した。
リストって……一般に配列と言われているものでは? 敢えてリストと呼ぶのは何か意味があるのだろうか?
まぁそれはともかく、この第3章で、無料で受けられる講座が終わってしまったので、一時中断となった。

今回は、リストが難しいというよりは、文字列の操作が間違いまくっているという感じで、クォーテーションでくくり忘れたとか、そんな感じ。頭悪い……。こんなんでよく「PHPでは文字列操作をメインにやってましたぁ」とか言えるよなぁと、恥ずかしくなった。

それにしても、このProgateというのはよく出来ている。やればやるほど、有料講座の部分が気になるように出来てる。
私の場合、プログラミングは子供の頃からの完全独学なので、知らない分野や苦手分野がたくさんある。系統立った知識が無いので、自分がやりたいことが出来ない時、出来るようになることを諦め、やりたいことを変えることも結構ある。C#で作った簡単なWindowsソフトなんか、まさにそうだ。

まぁこのProgateをやったところで、もう年齢的にどこも採用してくれないのだから、意味が無い、ともちょっとだけ思うんだけどね。

Progateをやってみた Python学習コース I 修了

Pythonで「不自由だな」と思ったのは、インデントがプログラムの動作に影響する、というところ。たしかRubyもそうだったような気がするけど、気のせいか?
PHPだと、インデントがぐっちゃぐちゃでも動いた気がする。でもそれはそれで可読性が著しく低くなったりもする。かといって、がっちがちにインデントで決められると、それはそれで厳しいと思う。

あと「elif」ってなんだよ~~~。普通に「elseif」でいいじゃん~~~。なんでそこ省略しちゃうかな? すごく分かりづらいんですけど。
条件式の組み合わせも、ちょっと癖あるよね。「and」とか。個人的には「&&」とかが馴染んでいるから、やはりちょっと違和感を感じてしまう。
まぁあまりにも違和感を感じて、not をどこへ置くのか分からなくなり、間違えまくって埒が明かないので、スライドを確認してしまったけどね……。難しいわ。

追記。
型変換と文字列連結は、記憶の彼方へすっかり飛び去って行ってた orz ぐぎぎ。不覚。時間を開けると忘れちゃうなぁ。
言い訳だけど、PHPのほうが慣れているので、ピリオドで連結したがる傾向がある。あと、型変換は忘れがち。いやまぁPHPが緩すぎなだけなんだけど。

「入力を受け取ろう」はなかなか面白かった。たしかPHPの無料学習コースではやらなかった項目だと思う。
そもそもコンソールから値を代入してプログラムを動かしたりすることが、今までほとんど経験無かったので、とても新鮮だった。PHPでも出来たと思うけど、PHPは最初からWebページを作る時に使う言語、という認識しか無かったので、ブラウザで動かしてナンボ、みたいな意識だった。
そういう意味では、PythonはPHPとは違った面白さがあるかな、と思う。

そして、また条件分岐で躓いた。はぁ。とりあえずPython学習コース I は修了したけど、要復習だな~。まぁ初めて弄ったにしては、健闘したほうではないかな? 良く分からないけど。

Progateをやってみた Python学習コース I 9.データ型

今日も楽しくProgateやってみた。しかし、今日は家事が立て込んでいるので、少しだけ。

結構前に挫折したPythonをやってみた。挫折といっても、いきなり高度な事(XMLをごにょごにょするとか)をやろうとして挫折しているので、基本の基本からやれば大丈夫かも?と思って始めてみた。
文字列の扱いや変数の扱いなど、特にこれといって難しいことは無かった。あ、慣れたPHPと違うことは、型が厳密で、文字列として定義した変数に数値は入れられないとか? C言語とかやってる人は、PHPは気持ち悪いって言うよね。型が緩いから。まぁそれもstrやintで回避できるんだけどね。そのあたりはC#とかと一緒なような気がする(C#も長らく触って無いので、記憶があいまい)。

それから、変数名の付け方は、ちょっと違和感を覚えた。アンダーバーで区切るのかー。自分としてはキャメルケースに慣れていて、C#もキャメルケースで書いていたと思う。PHPもかな?
ただ、PHPをやって初期の頃は、アンダーバーのサンプルコードを結構見かけた気がするので、そういうお作法が無いわけでは無さそう。

ま、今日はこれくらいで。