やんわりと気付いてきたのですが
プログラミングってもしかして
ひたすら書きまくって覚える系なのでは
ガンガン書かねば🙆🏻わーい
Pythonの基礎中の基礎みたいなのを書いていて
読むより書くだなーとおもったの。
例題的なものを発見したら
即座に類題を自分でつくり時間制限設けて書きつつ
その都度わざとerrorを起こして
「こういうerrorが出るのね」
と、errorにも慣れていきたいとおもいました。
筋トレ💪
やんわりと気付いてきたのですが
プログラミングってもしかして
ひたすら書きまくって覚える系なのでは
ガンガン書かねば🙆🏻わーい
Pythonの基礎中の基礎みたいなのを書いていて
読むより書くだなーとおもったの。
例題的なものを発見したら
即座に類題を自分でつくり時間制限設けて書きつつ
その都度わざとerrorを起こして
「こういうerrorが出るのね」
と、errorにも慣れていきたいとおもいました。
筋トレ💪
午前中は一週間の疲れを癒すべく
とても気持ちよく眠っていたのですが
午後から低気圧で頭痛&吐き気と戦いました。
頓服を飲んで寝る作戦です。
車酔いと同じで、寝てしまえば乗り切れる。
いま夜中で少しマシになりました。
関東に台風直撃で、電車が運休で大変みたい。
台風の日は、停電対策で電子レンジや調理不要の食料を買ったら
早々に引きこもるマンです!自然災害こわい。
最近は今後のキャリアなどについて考えることが多く
わたしなんかが、そんな考えることもあるんだなあー
ってレベルなんだけど
今まであまり選択肢のない中で
その時その時で生きてきた気がする。
エンジニアってお仕事は
「技術を用いて何をするのか」
を選べるところ、とても魅力的だなあと感じた。
DjangoGirls主催の女子限定ハンズオンへ行ってきました。
PythonでWebアプリを作ろう [女性対象/男女コーチ◎] 2019.9 – connpass
初めてWebアプリつくったの、とっても楽しかった。
チュートリアルを参考につくったの。
とてもわかりやすくて、よく出来ているなあと感じたので
ぜひトライしてみてください。
最初はvimのみでディレクトリの作成からファイル内の編集までやっていて
途中からPython書くときもVSCode使えばラクなのでは?
とおもって使い分けをはじめたの。

今までHTML/CSS/JSはVSCodeで
設定ファイルなんかはvimで
MastodonでAnsibleの設定を書くときはもっぱらvimなので
‘ターミナルから何かするときはvim’ という謎の固定観念があって
自分のやりやすい方法を見つければいいんだなあとおもったら
とてもサクサク進むようになった。
Djangoをいれてディレクトリやファイルなどがバーっと作られて
それをターミナルからチェックしていたため
ファイルなどもvimで編集していたの。
VSCodeで開いたらすごく見やすくて
vimのチューニング一切していないのもあるのだけれども
いままでクラウドのサーバー内で作業することが多かったので
「VSCodeでも見ることができる!!」というのがプチ感動だった。
ターミナル内でさっと開ける上にとてもシンプルで
ショートカットを覚えるとどんどん使いやすくなって
改めてvimが好きになりました。
Emacsな師匠に悲しい顔をされそうですが
Spacemacsも使いこなせるようになりたいです。
自分でキーバインド設定も魅力的!
完成品こちらです

GitHubにはあげました。
デプロイまだです。
ラズパイに置きたい♡
Rubyのコード懇親会に行ってきました。
二人一組でチームを組んで課題に取り組むという形式で
わたしは社会人二年目の女の子と組みました。
以下問題です。
CodeIQに「カラオケマシン問題」を出題しました。みんなチャレンジしてね! – give IT a try

正直問題の意味もわからず、ひたすらわからないわからないと言いながら
調べても一緒に考えてみてもわからず
答えを聞いても意味がわからないなーとおもって終わりました。
「やっぱりこういうの向いていないのかもしれない」
と、おもいましたが
さすがにRubyド初心者向けの問題ではないよなあと考え直し
自分のペースで地道にやっていこうとおもいました。

お昼に食べた、最近お気に入りの草です!
PCの充電を忘れてしまったので
今日のお昼休みは読書です!

LAMP環境での簡単なキャンペーンサイトの構築方法を学びました。
VPCを完全に理解したうさぎです。
実際に試してみたいなあ。
夜はフジイユウジさんとご飯たべました🙋
お仕事のお話を聞きつつインターネッツのことを話しました。
フジタさんと混ざるのでユージさんと呼んでいるの。

これ、シュール見た目から味の想像ができなくてお気に入りです。
これからどうしていきたいのか
もっと考えようとおもいました!
あと明日のRuby on Railsハンズオン
予習はおろかRubyですらまともにできていない。
やばばばぴんちです
はあい、本日のTODOです。

先日Docker沈黙タイムがやたら長くて帰れない事態に陥ったので
~/.ssh/configに、サーバーへ60秒毎に生きている報告をする設定を書きました。

ラズパイにログインするのも簡単になった。

やったねえ
そしてメディア削除のDockerコマンドをcronで実行したもの。
(参照)usermod/cronでdocker-compose – うさぎでもわかる
これを構成管理に組み込むためAnsibleに設定しました。

9ddで一気に9行消せた、わーい
そしてdd連打していたら関係ないところも消してしまい
ひーん😢となって調べたらuで元に戻せました。
| *dd | カーソルがあるところから*行削除 ex.3dd(3行削除) |
| *yy | カーソルがあるところから*行コピー |
| p | ペースト |
| u | 操作を一つ戻す |
| Ctrl+r | 戻すのを戻す |
※ dd,yyでそれぞれ1行削除/コピー
デスクトップがゴミ箱代わりになっていて
スクリーンの設定で見えないようにしていたの。
きちんと整理したいとおもい
スクショの保存先がデスクトップなのが諸悪の根源だと考え
保存先を指定できるか調べました。
ホームにSSディレクトリを作成して以下のコマンドを実行
$ defaults write com.apple.screencapture location ~/SS/;killall SystemUIServer
変更できた。わーい
むかしスクショしたものが出てきたよ。

たぶんvenvで仮想環境つくり、Pythonで春って単語を含むものをホニャララしたやつ。(忘れた)
このころはコンテナもクラウドもなんでもかんでも仮想っていうから
仮想わけわからんっておもっていた。懐かしい
本日のTODOリストです。

ポートを変えるのは気休めだけれども、やってみたいなあと思います。
ユーザー名を変えるのはできた!
Linuxのユーザー名を変更する – そんなこと猫でもできる
そんなこと猫でもできるらしい。
うさぎでもできるかな。
$ sudo docker-compose run --rm web bundle exec bin/tootctl media remove --days=25
このコマンドをcronで実行しようとおもって調べた。
# docker-composeコマンドについて
– docker-compose.ymlがある場所で実行される
– ファイルパス-fでdocker-compose.ymlがある場所を指定して実行させることも可能 (下記参照)
$ 0 0 * * * docker-compose -f /******/*******/mastodon/docker-compose.yml run --rm web .....
– rootのcrontabに設定する場合はsudoは不要
– crontabは各ユーザーそれぞれにcrontabがある
– rootになった状態で crontab -u(ユーザー名)のようにすれば、それぞれのcrontabを見ることができる
– ユーザー名-uを指定しない場合は、今のユーザーのcrontabが表示される

cron 3ステップ
1.cronでやる前に手動で動くか確認。
2.動いたらcronで毎分確認。
3.動いたら定時で確認。
最近、難しそうだなあってことでも
「調べてやってみればできるのでは?」
ってきもちになってきた。
そして、案外やってみればできるということに気づいた。
とにかくどんどん行動してみている。
たのしいー
ちなみにs3のビフォーアフターです!


画像削除、成功です。やったねえ
最近言われて嬉しかった言葉は
「戦闘民族だよね。戦い生きるみたいな生き方をしている」
です。
精神的腕力のあるゴリラを目指している身としては身に余る言葉です。
なんか殺傷力高くて瞬発力ありそう。
media削除のコマンドを試す前に
「メディアストレージの容量を確認して、ビフォーアフター見てみたいなあ」
と、いうことで
postgresqlが稼働しているdisk容量を確認するコマンドを調べたの。
$ df -Th
dfコマンドにType付き&人に優しいhumanizeな表示で見ることができました。
/dev/xvda1 20G 13G 7.0G 65% /
ふむふむ。
ラズパイも見てみました。
/dev/mmcblk0p1 vfat 253M 41M 213M 16% /boot
mmcblk0p1で調べたらSDカードのパーティションとのこと。
ふん??

ふむふむ。
また、重要なのが「swap」パーティションだ。
Linuxのパーティションとは?とパーティションの区切り方を詳細解説
このパーティションはメインメモリが不足しているときにメインメモリのかわりとして使用できる領域のことだ。
これは高価なメインメモリを安価な記憶媒体で補うと同時に、メインメモリ以上の容量を確保するため、比較的に昔からある仕組みだ。とても便利だし、設定しない理由はない。
やたらと大きくしてもパフォーマンスは発揮されないので注意しよう。
https://eng-entrance.com/linux-partition
パーティションの中でもswapって大事なんやなー
swap領域を確保する一番手っ取り早い方法として、EC2のインスタンスストアスワップボリュームがあります。
Amazon EC2(Linux)のswap領域ベストプラクティス | DevelopersIO
これは、EC2のインスタンスタイプがm1.smallとc1.mediumのときのみ
/dev/xvda3ないし/dev/xvde3という900MBのmkswap済みディスクが
EC2のブート時に自動で提供されます(デバイス名はAMIによりまちまちです)。
他のインタンスタイプではm1/c1ファミリーであっても提供されず、
またManagement ConsoleやAWS APIでは本ボリュームを確認できないことに注意しましょう。
https://dev.classmethod.jp/cloud/ec2linux-swap-bestpractice/
swapの設定しなきゃ!!

してた!!!
全く記憶にないけど、とりあえずコピペ頑張ったんだなってきもちです。
$ sudo docker-compose run --rm web bundle exec bin/tootctl media remove --days=30
↑いろいろ脇道にそれましたが、画像削除のコマンドを打ってみました。

error

移動したらできた。
確かにdocker-composeするときはDockerのあるところでやっていたわ。
Docker沈黙タイムです。

いまだかつてない沈黙です。
長いな?
Linuxディレクトリ構造でも読んで待とう。
・・・・・・・・・・・・・・・・
いま現在blog書きながら待っていますが、終わる気配がありません。
帰りたいんだけど😢
しかも散々脇道にそれてパーテーションについて調べて忘れかけていたけれど
メディアストレージはpostgresqlではなくAWSのs3使っているので

ビフォーアフターはs3のストレージを見よう。
Raspberry Piにsshログインしてみました。

わあい
新しいサーバーにログインするのわくわくする。
そして、自分用の小さな庭って感じする。
ここで何してもいいんだなあ。
さっそく海外からアタックきていました。
ポートの設定やセキュリティの整備するところからだな。
夕方頃から落ちこみモードでした。
たまには気のすむまで落ち込もうとおもって、しばらく凹んでいました。
そのあとはなんだか落ち込みながらも話し合いが進んで
平和的に(?)解決の方向に進みました。
これから、より身を引き締めて勉強していきたいし
精神的腕力のあるゴリラを目指します。