見出し画像

2021年振り返り

ことしの僕はえらいので、月ごとにこまめにやったことをまとめていくぞ。


1月

過去24時間のツイート状況に応じて最長どれくらいツイッターからはなれたかを計測するbotを作った(@homeltan)
実体はRubyで記述してVPSに置いてる。

画像1

東京都23区の賃貸家賃概況をプロットした。
利用技術はDeck.GL、データのクローリングはRubyで行なっている。
対象物件は80000件あまり。
最低金額3万の風呂なし共同トイレみたいな物件から300万近くするやばい物件もあるらしい。
東京は本当に皇居と東京駅周辺、オリンピック関連施設、渋谷・六本木のオフィス街、港湾埋め立て地区をのぞいてほぼ全域に居住区が分布しててすごい。
隅田川と荒川を挟んで家賃域が2-3万のレベルでガクッと落ちるの面白い。
分析対象として路線からの距離なんかも図示してみると面白そう(これはオープンデータとして提供されている。)

画像2

他のユーザがマップ自体を拡大したり、カメラ視点を変えたりできるようにアプリケーション化を進行中。

元データ自体はインターネットに公開されているものではあるが、アプリケーションの利用者が掲載元にアクセスする機能をつけるかは悩んでいる。
再配布、剽窃にあたらないか慎重に検討したい。
利用者がリンクを踏めるように作れば提供元への恩も返せていい感じかな?

画像3

上記のようにヒートマップにもしたが、実際には点群に近い表し方の方が見やすそう。

大学院の学費を払ったので休学するか退学するか選べるようになった。


2月

1月に作ったほめるたんに画像ツイート状況を可視化して画像で返却(リプライ)する機能をつけた
Red Data toolsのGR.rbを使って可視化した。
深いところでCentOS8のqtがぶっ壊れてることに気が付いたり、フォント周りのエラーを踏み倒したりして実装したがまあ一応動く。

画像4

ラズパイで wifi強度を可視化するガジェットを作った。
具体的な技術要件としてはspeedtest-cliで継時的に取得したwifiのDL速度をDocker内に立てたGrafanaでcsv読み込んでリアルタイムにグラフを描画する感じ。(これはお家のwifiの図)

画像5

組織内の人が定点観測できるようにしたかったのでTunneltoを使ってローカルホストのページを雑に配信するようにした。

Tunneltoに関してはCargoの体験もよかったのであとでqiitaにする。
->Done.

地味にジョブプロセスについて勉強になってよかった。


サイバーエージェントのフロントエンドパフォーマンスチューニングに出た
ちょっとCSS削るだけでスコアが上がったり、単純にローカルに落としたリポジトリでduしてクソ重画像ファイル見つけたりして楽しかった。
ISUCON/CTF/データコンペ 各種に挑戦するモチベーションも上がった。


3月

Arduino Leonardo互換のPro micro(ATmega32U4)を使ってスプラトゥーン2のアイテム回収を自動化した。


Qiitaに記事書いた。

防衛省CTFに出た。初級問題はだいたい取れてよかった。
Cryptを鍛えようと思う。

冬の既卒OKインターン、二つは祈られ、一つはインターン自体が消滅した。
詳細

DeNA techconにでたりmrubyの講義やK8sコミッターになるための方法を聞いたりと、インプットの多い月だった。

バイト先でのAR.jsに関するセッションも良い感じにウケてよかった。

Fukuoka.rb#200記念LTに出た。スライド

県内の感染者数が2桁を割った段階で熊本に日帰りで遊びに行った。

画像6
画像7


4月

無事にフリーターになった。

Herokuに立てていたGrowi(Node.js製のwiki)がmLab買収に伴いDBがデタッチされて落ちていたのでこれを修復。
 AtlasにmLabからインポートできるようにはしてあったが、5ヶ月前に稼働停止されていたのでサポートにメールして3日間の復旧猶予を得てマイグレーション。
環境変数の書き換えだけで再稼働できたが肝を冷やした。

国土交通省のPlateauをいじって遊んでみたが自分のPCのスペックでローカルだとめちゃくちゃキツい...。素晴らしいプロダクトだ。

Web開発でいまさら人に聞けないあれこれをみんなで調べるの会を作った->めんたいコード
APIについての開発のあれこれを語ろうかと思っていたが、参加者の人々がJavaでHTTPでリクエスト投げる方法を知りたいとのことだったので自分も調べてみたが、 RubyやGoと比べてめっちゃくちゃきつかった。一方でレスポンスを捌く方はサーブレットに知見があるのでまだマシかも...。

Fusicさんと富士通クラウドさんのミートアップにたびたび参加した。僕がやりたいのはWebインフラなのでは?

半ば休学していた大学院に顔を出すことができた。研究科の職員さんに時間を作ってもらって一緒にメールの開封作業からして、ボスにあった。
学籍が残っていたので引き継ぎも兼ねて大学のFabで実験装置のリメイク作業を行った。(生き物の飼育観測装置を丸鋸で切ったりアクリルで成形したりして作った。)

(ぼくが作った設備がテレビにでたとFBで元ボスから連絡があった。やったー)

5月

Dockerの活用を始めた。
Rubyの開発環境を拾ってきたが結局自分で作った方がいいなという感想になった。
CI/CDまで考えるならなおさら。

SECCON のCTF for Begineersで早速役に立った。
k8sもそうだが、中に入って作業できる〜っていうのに慣れたら怖さがだいぶ減った。
月末のOSC名古屋で日本仮想化技術の宮原さんに話を聴いていい復習になった。
k8s for ラズパイ、へたしたらRaspbianでもkubeadmでいけるんじゃないの?
NATの知識は大切ですね。

年度末までの食い扶持を維持したかったので面接受けにいたら全然自分が求めらている人材じゃなくて無事不採用。お互いマッチングミスがなくてよかった。
また、「受けにきては?」という感じの会社受けに行ったら普通にダメだった。
就活についての運を感じるとともに、自分の技術のうまい見せ方をまた揃えて別の会社とのマッチングの糧としよう。

そもそも運否天賦に頼って就職活動するのが嫌だったので好きな技術でご飯食べていこうと思ったものの、マッチングに際しては多かれ少なかれ運に左右されるのでげんなり。とはいえ本質は普段からの準備によってチャンスを活かせるかは決まるような気がするにゃんね。

LTに2本出た。
Reveal.jsを使ってmarkdownでスライドを作るようにした。
CSSとJSでリッチな表現を手に入れ、手作業での位置合わせなどを考える手間がなくなった。CDN呼んだりできて便利。

画面上の表現方法としてクオータービューを学んで、JSやElmでの実装を手習した。

Babelに手を出した。


6月

総じてあまり進捗のない月だった。インプットもできていない。

マークアップ周りの知識を整理して新たにものづくりを始めたが、JSからどうやってデータの永続化を図るかみたいな課題に直面して、やはりものづくりをしないと必要な技術は見えてこないなと思った。
上の問題の場合IndexedDBがオーソドックスな他、最近だとプロジェクト自体を Firebaseにバックエンドを投げる形でNoSQLでデータを保持するのが今風っぽい。逆説的にMVCでデータベースをViewに持ってこられるフルスタックなフレームワークのありがたさを感じた。

ブログをある程度カスタマイズしやすいところに移そうと思って Jekyllを弄り始めたが、macがBigSurになったことでいろんなところで不具合が頻発してしまった。

 gccの環境を整えるのに思案したり、OSX 11.x系統では rbenvでrubyを入れる時にエラーを踏むので公式のissueを参考に悪戦苦闘して、無事にRubyとPythonが動く環境を整えた。

ISUCONにでるぞ!と意気込んでサーバーで練習を始めたが募集開始から二時間で600組埋まって悲しかった。

7月

ISUCONの追加申し込みに応募できた!!
わーい

職場での作業が重くて何やったかあんまり覚えてない...
RaspberryPi OSのカーネルのバージョンが上がったせいでビルド通らなくなったツールが多数出て、少しLinuxのカーネルに対する理解が深まってよかった。(よくない)


8月

初めてISUCON予選に出た!!
主にMySQLのチューニングやアプリケーション(Ruby)の挙動を確認してエンドポイントへのアクセスを確かめてるうちに8時間立ってしまった。
メンバーの人にはNginxの調整などをお願いしていて、役割分担をしながら概ね時間いっぱい暇になることがなくてよかった。
スロークエリ探したりインデックス貼るだけでも初期スコアから二倍くらいまで跳ねる感じだったので今年の問題は初心者にも優しかったのかも。


ISUCONでAWSのアカウントを作り直したついでにLambdaを使ったサーバレスアーキテクチャのお勉強を始めた(O'Reillyの本があったので...)
振り返り

9月

職場での申請を忘れててRuby kaigiのチケットを入手しそびれるなどした...
やはりサポートのある定職がほしい。
Fukuoka.rbの方々が開いてくれたアフタートークパーティでCfPを通して以降の内面を伺うだに、自分の興味の拡張としてOSSに貢献できることがあるのではないかと思い始め、mysql2(gem)のコードを読むなどした。

次回の緊急事態宣言に備えて20時以降も開いてる飲食店を登録できるマップを作り始めたが問題を多く抱えているので保留。

こういう感じのサイトなどいくつかできたっぽい

サンカクでサイバーエージェントの社会人1Dayインターンでパフォーマンス・チューニングしてきた。
知り合いおって草。

10月

とにかく職場が緊急事態宣言開けでイベントごとが増えて忙しかったように思う。
システム改修が本格化してコードレビューとかインフラを用意することも増えた。

OSCFukuokaに向けていろいろ準備が進んでいろんな人にお世話になった。

いい加減どんなときもWifiを解約しようと思いつつも、あまりにも舐めたサービスエリアを可視化したいとおもって、通信速度とGPSを紐付けてデータベースを構築するアプリを作り始めた。
(と言ってもほとんどフォーク元が優秀なので...)


自由研究として福岡市営地下鉄のページ構造を解析し始めた。
トップページは団体の管理下にあるが、時刻表システムとしてはジョルダンのシステムに投げてて面白かったのでいつかLTで話したい。

あとNFCの規格について調べたり、Rubyでなんかできないかと少し検討した。(PasoliのS-380がMacのネイティブアプリを提供していなくて、nfcpyなどを使って読み込みをしていたが、Libusbが動く環境であればいいのでmacユーザでもこれをラップして信号を適当にパースできればなんでも良さそう)

そんなこんなしてるうちにs-400が発売されてmacでもe-taxなんかがあつかえるようになったとさ。

WebRTCに興味を持って、Socketやらp2pについて調べてなんでTCP/IP本を読まなかったのかと公開するなどした


犯罪発生率と飲食チェーンの出店戦略の相関を見たくてオープンデータを探したけど、そもそもデータの探し方がわからんみたいな話と普通に威力業務妨害なのでは?みたいな感想を持った。
東大の空間情報センターあたりに相談したいぞ。



11月

前半は日本を日本海周りで行脚していた。

旅行記はおいおい

旅行中はこれを読んでた。
JSで学ぶ基本情報技術者の内容って感じでぼくは楽しめた。


雑なGISを作り始めた。(日本国土を矩形に分けてユーザーがいる位置を表示するだけのアプリ)

画像8


OSCに登壇したり、1DAYインターンでk8sを教えてもらったりしていた。

友達と日帰りで阿蘇にいったりもした。
熊本の飲食店は福岡に輪をかけて安い。


12月

Djangoを使い始めてひたすらstaticはファイル読み込みの仕様にブチギレてた記憶しかない。

Rustに入門してUnixコマンドの再実装をしたり、Webでつかえないかな〜など有識者に伺いつつ、シスプロやるのは楽しそうだな〜という感想に落ち着いた。(Tokioは便利らしい)


UnityでMRに手を出した結果、Windowsが欲しくなるなどした。Microsoftの公式ドキュメントは経験値が溜まってユーザレベルが上がる仕様で読んでて楽しい。

いいなと思ったら応援しよう!