generated at
2020-03-22 第1回きまべんオンラインもくもく会
開催趣旨
新型コロナウイルスのご時世だしオンラインでなんか面白いことやりたい
3連休だし
もくもく会とかいいんじゃない?というイベント
テーマは自由です
勉強しても開発しても何でもOK!
開催期間
2020/03/22 (日) 10:00-18:00
tanabe日曜日ということは22日?
tommy うわ、ありえん間違え!訂正しました!(2020/03/20になっていた)
参加方法
きまべんに参加 (* はじめに 参照) している人なら期間中であれば自由に出入り可能
このページのタグ (2020-03-22 第1回きまべんオンラインもくもく会) をつけて普段どおり各自のページに勉強を記録する
tanabeページのタグつけるのも良いですが、2020-03-22 第1回きまべんオンラインもくもく会のページに各自メモを書いていくとリアルタイムに編集されてるの見えてもくもく会感でる気がしました
tommy なるほど良さそう!
tommy これ形式にしてよかったな〜
このページの「勉強中メモ」欄に各々メモを書いていく感じで進める
もくもく会感を出すために、各々が始める時に「やること宣言」し、終わった時に「やったこと」を書き残すことを推奨
1000ページ突破記念!平成→令和10連休きまべんの時みたいにこのページに書く欄を用意している

やること宣言
PathfindのLaravel API層をRailsに移植する準備
Rails + Vue.js SPA の環境作りを調べて整えたい
13:00〜16:00まで開催されるので参加する
疲れ気味で頭が働かないのでやめておく
下みたいなブログを書いてコーディングチャレンジはAtCoder ABCとCodewarsだけにしておくと決めたばっかりだったのにもう方針ブレてるという
やめとこー
actixのチュートリアル( https://actix.rs/docs/getting-started/ )を進めるぞ
11時からUberEatsやってノルマ達成したら参加予定..(参加できないと消します)
やることは明日書きます。
Scrapboxでの同時編集でもくもく会は斬新!目標14時ごろ参加予定です。
tommy Zoom 使ってやったりしてるとこもあるみたいですけど非同期コミュニケーションの方がやりやすいと思ったり
参戦 14:11
やること
神奈川県のコロナ感染者のデータ分析(https://github.com/tsu-nera/hack-for-corona/issues/4)
3/20仮想通貨トレードの分析(https://github.com/tsu-nera/bakuchi/issues/142)
TRPLざっと読む
レイトレーシング入門の続き(https://qiita.com/mebiusbox2/items/89e2db3b24e4c39502fe) tommy よさそうhem6いいぞ!

勉強中メモ
始まった!やるぞー!!!!! gaaamii いいぞ!
Pathfind 触るの超久しぶり
去年 Rails を学習した時は Rails + Vue.js での SPA の参考情報すごく少なかったのだけど今はどうかなぁ
ビルド関係が Rails は辛いって聞いた気がする
ビルドというか Webpacker
LaravelLaravel Mix っていう便利機能があるからなぁ
とりあえず rails new するところからかな?
そうだ、前回はバニラ Vue.js 使ったけどある程度慣れたので今度は Nuxt.js 使ってみようかな
とりあえず "rails nuxt site:reddit.com" で検索してみる
Rails も Nuxt.js (というか Vue.js) も海外では日本ほど人気がないからあんま引っかからなかった
この組み合わせだと日本語の情報を探したほうがいいかもなー
いきなり移植じゃなくて情報参考にしつつサンプルプロジェクト作ってみようかな
GraphQL もよく耳にするので使ってみたい感ある
Rails API っていうのがあるのか
1 repo vs. 2 repos は 1 repo の方が分かりやすいとのこと
Rails + Nuxt.js SPA の情報そんなに無いから逆に記事にしたらアウトプットとして良さそうだな〜
アウトプットの下地になるように意識して勉強メモ書いていこう
福岡のイケイケ企業 Fusic じゃん
あ〜疲れてる
昨日から疲れてるばっか言ってる
ゆるいもくもく会なので休憩しっかりとりながらやってこー
maicineガンバッテー
読むと良さげな記事をまとめたところでいったん休憩
ドキュメント72時間でも観て癒やされるか
ヤンキー・インターンめっちゃ良かった
頭の疲れっぽいので昼食食べ終わったら大濠公園でラジオ聴きつつ散歩してこよー
gaaamii 近くにこんな公園あるの羨ましい
tommy 大濠公園は最高の場所です
散歩終わった
今度は移動して友達のカフェに行く
友達のカフェ来たらいつもの常連がいて予想通り勉強どころじゃなくなった
しばらく閲覧モードにする
ゆるくやってこ
このまま 18:00 を迎えそう
まぁ皆さんの勉強見れたので大満足

もくもく会日にち間違えてた…
ので移した
tommy おや?と思ってましたw
やる
buildメソッドの変更だとホットリロード走るけどプロパティの変更は当たり前かもだけどホットリロード走らないな
String interpolationで表示する画像を変えている時、プロパティの宣言がbuild methodの外だったら宣言時の値を変えてもホットリロードは走らない
アプリを作る中で型についての説明を行う章が12分ある
退屈。飛ばしたい。書籍と違って飛ばしてよいか確認するのに時間がかかるのが動画系のコンテンツの難点だと思う tommy たしかに
tommy あとからの参照性も悪いですよね〜
tanabe参照しづらいのも確かにそうですね
一通り読んで、試しにシミュレータにインストールしたアプリを削除したらインストールと起動ができた
セクション8
このセクションは講義じゃなくてこれまでの講義を踏まえて類似アプリを作る
セクション9
外部ライブラリを利用しながらアプリを作る
Flutter Pageckagesの利用法
Flutter Pageckages とは

昼間お出かけするので遅めの参加になりそうです
tommy 楽しんで!
maicine楽しんでー
gaaamii 近くの公園で桜を見て、つけ麺を食べて帰ってきました。食べすぎて苦しい tommy よさそう
回復したらなんかやるぞー
tommy つけ麺は月2杯のうちに入るんですか?🤔
gaaamii入ります!! tommy erai
実践Rust入門 言語仕様から開発手法までをちょっと読んで、CodelldbをVSCodeに入れた。 tommy いいぞ!
tommy Codelldb、デバッガー系の何かかな?Elmといいデバッグ環境は大事ですねー
gaaamii VSCodeでつかえるデバッガーですね。 tommy なるほど
actixのチュートリアルと実践Rust入門どっち進めようかな。
actixのほうは写経しててもよくわからんとなりがちなので(動くものはできて楽しいけど)、実践Rust入門のほうを進める。
なんかみんなRustやっててすごい。所有権とかさっぱりなので自分もはやく理解追いつきたい
実践Rust入門の第3章を、コードを写経しながら進めていく。
3-1. プログラムの概要
Rayonクレートというのを使って、バイトニックソートというソートアルゴリズムを実装するらしい。
まず実装済みのやつを実行できるよとのことなのでソースコードを入手したい
cargo run --release --example benchmark -- 26 を実行した。
bash
Finished release [optimized] target(s) in 0.02s Running `target/release/examples/benchmark 26` sorting 67108864 integers (256.0 MB) cpu info: 2 physical cores, 4 logical cores seq_sort: sorted 67108864 integers in 29.813275032 seconds par_sort: sorted 67108864 integers in 19.878469499 seconds speed up: 1.50x
プログラムが見積もったデータが占めるメモリの大きさ(256.0 MB)と、topコマンドが示すMEM列の値(257M)を見比べると、たしかにそのとおりになっていた よさそう
3-2. 並列ソートに適したバイトニックソート
> クイックソートの平均計算量は、要素数nの数列に対してO(nlogn)です。しかし要素の並び方によっては最悪でO(n^2)の計算量になることが知られています。一方でバイトニックソートは計算量がデータの要素数だけで決まるという特徴があり、常にO(nlogn)です。
とのこと。
> バイトニックソートには欠点もあります。それはデータの要素数が2のべき乗でないとソートできないことです。たとえば要素数が256個(2の8乗)や65,536個(2の16乗)のデータはソートできますが、要素数250個のデータはソートできません。
とのこと。
バイトニック列を作って、それに対して要素数1になるまでサブソートを繰り返すらしい
なんか難しそうな図が出てきた。
tommy ソーシャルネットワークに空目してしまった。コンピュータ・サイエンスっすなー。
gaaamii コンピュータ・サイエンスむずかしい〜。
Rustの本だけどPythonのサンプルで説明してくれるらしい。ありがたい。
Pythonのリスト、 list[開始インデックス:終了インデックス] って書けるんだ。
tommy スライシングって言って list[:終了インデックス] とかも書けますねー
gaaamii なるほど〜便利ですね
難しい〜〜〜!!!
バイトニック列がまずあって、
[1, 3, 5, 6, 8, 7, 4, 2]
そいつを前半1つめ:後半1つめ, 前半2つめ:後半2つめ ... みたいな感じで比較して交換する
で、交換が終わって、
[1, 3, 4, 2, 8, 7, 5, 6]
半分に切ると
[1, 3, 4, 2] [8, 7, 5, 6]
> すると、それぞれがバイトニック列になっていることが分かる
って書いてあるけど、2は4より小さいからバイトニック列じゃないのでは...?
わからない!休憩する。というか18時までだったので今日はもうおしまい!

コメダに着席した
TRPL12章から読んでいく tommy いいぞ!
TRPLの記載ではピンとこなかったけど、 read_to_string を使うために use std::io::prelude::*; がいるのか。
std::io::prelude::* がエクスポートしてる std::io::Read トレイトのメソッドなので
バイナリクレートとライブラリクレートを分けるところでVSCodeが'can't find crate'って言うので何かと思ったらRLSに問題があったみたい(古かった?のかな?)
VSCode上から Update the RLS Restart the RLS したらエラーが消えた。
tanabeおそらく同じことで怒られました。 use minigrep::Config; で分けたmoduleを使用できました。和訳されてる2nd Editionの通りにやっても動かなかった…
hem6おっ、ありがとうございます!
なんか2018 Editionから変更があるみたいですね
TRPL日本語版は2018 Edition非対応とのこと🤔 tommy つらい
tanabeわかりにくい時や困った時は翻訳ではなく英語版の方確認するのが良さそうですね

いったん帰宅しよ
昼寝した
maicine気付いたら僕も昼寝してました。
tommy 昼寝できるもくもく会いいなぁ
gaaamii わかる
再開! tommy いいぞ!
12章終わった!minigrep完成!
maicineおめでとう! tommy めでたい
hem6やったー!ありがとう!

maicine
衝突判定のための陰関数
陰関数とはf(x, y, z) = 0 など右辺をブール値で表すもの?
陽関数はこれまでの y = ax^2 +b みたいなyをxで説明するようなもの?
例) 原点を中心とする球を表す場合 x^2 + y^2 + z^2 = 1 の様な陰関数になる
数学得意じゃないけど頑張るよ
tanabeいいぞ! tommy いいぞ!
休憩ちょっとする
昼寝から再開
バウンディングボリュームを作るメリット
軸に沿って配置されたシンプルな直方体は光線との交差判定がしやすいため、その直方体に交差した時のみ中にある複雑な形状に対する交差判定を行うことで計算を軽くする?
ちなみに、軸方向に整列したバウンディングボックスのことをAABB(Axially Aligned Bounding Box)と呼ぶらしい
各レンダラーでの交差判定について
腹が減って力が出ない(アンパンマンボイス) tommy バタコさん来てくれー

サンマルクカフェ着席。いつものコワーキングスペース、この時勢なのに大混雑で入れなかった。
hack-for-corona tommy いいぞ!
issueを新たに2つ作成
test, test 自宅サーバにssh接続できない???えええ?
復活した。 tommy よかった
昼寝をしたくなってきた。カフェから帰るかな。
場所を移動します。
移動完了。コワーキングスペースに来ました。電池なかったから充電場所確保!よかった。
なんか、中途半端なところで時間を迎えそう。とりあえず今の成果をmaster branchにマージしておくことにしよう。


やったこと
Ruby on Rails + Nuxt.js SPA 情報収集
イベントを主催して成功に導いた
成功と言っていいでしょう! gaaamii いいぞ!

gaaamii
CodelldbをVSCodeに入れた
バイトニックソートについて学んだ

tanabe
The Complete 2020 Flutter Development Bootcamp with Dart | Udemyセクション7からセクション9の途中まで終わり

maicine
レイトレーシング入門の続きをった https://qiita.com/mebiusbox2/items/89e2db3b24e4c39502fe
球の交差判定の復習
交差判定のプログラムをリファクタ (C++むずいよぉ)

tsu-nera
神奈川県コロナ感染者分析( https://github.com/tsu-nera/hack-for-corona/pull/5 )
master branchにマージした。本日の成果です↓↓↓
gaaamii すごい有益だ..!
tanabeすごすぎる
tommy Hack for Corona だ!
tsu-neraありがとうございます。でも、神奈川県には一応東京都みたいに公式サイトもあります。わたしは、なにか別のアプローチを探しています。統計データだけでは命は救えません。マスク転売のメルカリサーバDDoS攻撃とか。
gaaamii 神奈川県の公式サイトだと、データは基本CSVで配布されてる感じなんですかね?見やすく可視化するのはすばらしいと思いました
tsu-nera神奈川県の公式サイトは東京都のサイトからcloneしているようですが、GitHubリポジトリがみつからず、情報が隠蔽されいるように見えます(3/22現在は)
gaaamii なるほど。これですか https://www.pref.kanagawa.jp/osirase/1369/ リポジトリ公開されてないのは残念ですね
tsu-nera一応オープンデータとして部分的には公開されています。でも、詳しい情報は各市町村が公開しているPDFという状況で、データが整理されていません。わたしもマニュアルで情報収集しています。
神奈川県の感染者数: 男性(43)/女性(26)、男女比2:1は明らかにやべえた。男性がかかりやすい??

TRPL12章を読んで手元で動かした!
gaaamii erai tommy erai

オンラインもくもく会の感想
gaaamii
自分が書き込んでいるとき、他の人のカーソルが見えると、一人じゃない感があってとても良かった。
いつも自分のページに書き込んでるときとは少し違う感じがしておもしろかった
tommy tanabe さんのアイデアのおかげ!
やること宣言 -> やったこと報告 という流れが良い感じ。いつもはメモとるだけなのでやった感があった。
hem6たしかに!これ良い
これはもしかして、毎日やってもいいのでは?と思った。
個人ページとは別に、日付ページを作って、一人でやりたい人は個人ページに書けばよいし、みんなとワイワイやりたい人は日付ページのほうに書くみたいな。
tommy よさそう
tanabe良さそう!
gaaamii
gaaamii こんな感じでどうでしょう!
tanabe良い! tommy Nice!
今回tommyさんがなんかすごいやる気を出している感がTwitterから伝わってきていたので、自分も少しの時間でも参加しようという気になった。
tommy 💪💪💪💪💪
1ページ内にいろんな人のアイコンとテキストがあるのは楽しい
楽しかったので自分もブログ書くぞ〜
tommy いいぞ!
tanabeいいぞ! tommy いいぞ! いいぞ!
maicine
みんなで勉強している感がとてもあった。
誰かが何をしているかをリアルタイムで確認できるからかも
通話もいいけど、このやり方だとより気軽に長い時間集中できる様な気がした。
tanabeわかる
gaaamii わかる
tommy 同意です
randomとかでのコミュニケーションがもう少しあってもよかった
scrapboxで誰かが詰まってるのを見たときにそれについての解決策とかを議論できると学びが加速しそう
(議論など、文字数が必要で狭いトピックのものはslackでやってみるとか)
tommy ふむふむ
日報的にやったことをまとめるのではなく、リアルタイムでログを残していくので、その時の思考とかも残しやすい
何より気軽にアウトプットできたのがよかった

tanabe
最低限時間を決めて皆でやるのは刺激になって良い
同時編集で同じページに他の人がやってるのが見えるのでもくもく会に近い感覚
非同期に気が向いた時にコメントしたり教え合ったりできるのでコミュニケーションで疲れたりしないのが良いです
gaaamii めっちゃわかります。
ブログに書こうと思います
maicineいいっすね!
gaaamii いいぞ!
tsu-neraいいぞ!!!
tommy いいぞ!
tanabeブログにしました
tanabeタイポ直したけどキャッシュの関係でしばらくそのまま。時間が経ったら反映されるはず。
せっかくなのできまべんの宣伝もしておいた
gaaamii うおー、ついにきまべんがDevelopers.IOに!
tommy テンション上げMAX!

定期的にやりたい
気軽に自由に休憩取れるのも良い
次は自分も散歩行こうかな

tsu-nera
Scrapboxで同時編集でのもくもく会はとても面白い取り組み。
maicine人類初の試みかも
次回は昼寝するほどの余裕がほしい。
tommy 昼寝で脱落者が出る感じゆるくていいっすねw

hem6
カーソルがいっぱいいて楽しい
人がやってるのを見ると自分も頑張ろって気持ちになる
昼寝したけど
maicine人間はご飯食べると眠くなる生き物
ゆるくて良い
リアルタイムに人がいるとコミュニケーションが生まれて良かったので、決まった時間にやるのが大事なんだなと言う気持ち
気まぐれに勉強するタイプのきまべんしかやってなかったので……
gaaamii わかる
tanabeわかる
tommy 原点回帰大事

tommy
Scrapboxのユースケースとしてかなりいい感じなのでは、と思った
場所を選ばないのは最高
散歩に出たのはゆるい感じを出せて我ながらナイスプレーだと思った
もくもく会を開く目的って同じ場所に集まって連帯感を得るためだと思うのだけど、リアルタイムカーソルや非同期のコミュニケーションでオフラインに劣らない(むしろ優る?)連帯感を得られる
時間帯だけ指定して出入り自由にしたのは良かった