眠気.jl

投稿=不定期

限界オタクにおすすめキッチン家具

買ってよかったもののメモ

自立する使い捨て三角コーナー

一般的な三角コーナーは
ネットをかける→ネットを捨てる→再度ネットをかける
と処理が多いのですが、使い捨て三角コーナーは
設置→捨てる
を繰り返すだけなので若干工数削減できました

銅の排水溝

オタクなので私自身ニチャァ(◉◞౪◟◉`)としているのですが、排水溝がぬめりでニチャァとしているのは排水溝をこちらに交換したら軽減しました

オーブン、クッキングシート、耐熱ミトン

タンパク質を固形物から摂取したい場合、肉や魚を加熱する必要があると思います


シート敷く、肉のせる、焼く(調理工程)
→割りばしでかじりついてクッキングシートごと捨てる(片付け工程)
とすることで掃除の手間を抑えつつ食事できます、またこのオーブンは二段同時加熱できるので大量に調理できます

低温調理機、バーナー、レシピ本


フライパン等での加熱は再現性が不安な場合、肉を低温調理で食べたい場合等に便利です
卵→温泉卵
牛、鮭→低温調理→表面をバーナーであぶる
とルールベースで処理できます

サーモン 低温調理 レモンローストビーフ 低温調理 牛肉 レモン 岩塩
サーモンとローストビーフ

Windows Terminalのショートカットを追加してGoogle Chromeっぽくする

動機

ゲームしたい時等で泣く泣くWindowsを使う必要があるときもあるかと思います
windows terminalがtmuxやiterm2っぽく使えるときもあるので設定をいじりました
f:id:julialangisthebestlang:20210717235647p:plain

やったことのメモ

とりあえず下記のようにしたかったので
Ctrl+T: 新規タブを開く
Ctrl+W: フォーカスしてるタブを開く
Ctrl+F: 検索する
Ctrl+{1, 2, 3..}: 左からN番目のタブにフォーカスする
windows terminalのsettings.jsonを書き換えました
スタートアップを開く

ctrl + ,

左下「JSONファイルを開く」を押すと、既定のエディタでsettings.jsonが開かれます

  1. 既存コマンドの改変

 Press Ctrl+Shift+F to open the search box
{
    "command": "find",
    "keys": "ctrl+shift+f"
},

Shift+を削除 2.
コマンドを追記

{ "command": { "action": "switchToTab", "index": 0 }, "keys": "ctrl+1" },

追記、編集したコマンドはCtrl+Shift+Pで確認しても割り当てが変更されることを確認できます f:id:julialangisthebestlang:20210717235555p:plain

参考

windows terminal内で実現出来ることはだいたい書いてあると思います
ドキュメントを見る限りですと、かなり自由で、.tmux.confで設定できることは大体できそうです
可能なコマンドと割り当て方が詳細に書かれていて、マイクロソフトのドキュメントなのにドキュメントしてます
マイクロソフトがこんなありがたいことをしてくれるなんて....どうしたんですかね...
怖くて夜しか眠れません docs.microsoft.com

Real-Time 3D Graphics with WebGL 2(2nd Edition)が翻訳されるらしい

Real-Time 3D Graphics with WebGL 2: Build interactive 3D applications with JavaScript and WebGL 2 (OpenGL ES 3.0), 2nd Edition が翻訳されるらしく、シェーダー芸が好きなオタクにおかれましては全裸待機されていることと思います
先走って原著眺めておいたので小学生並みの感想を書いておきます
夏休みにまともに読もうと思います

紙本リンク  Kindle本リンク 翻訳版(2021/7/21(水)発売予定)リンク

全体

1~10章までサンプルコードが付属していて、しかも動くのでよかったです
ちゃんとletで宣言してます(JavaScript自体がちゃんとしてないだろという方もいるかもしれませんが)
より詳細な目次は下記にあります
O'Reilly Japan - 初めてのWebGL 2 第2版
サンプルコードのごく一部を試したので動画を貼っておきます

1章 イントロ
WebGLレンダリングの仕組み
実際に車を表示する
ぐりぐり動きます
www.youtube.com

2章 レンダリング
JS配列で頂点とかをどうやって持っているか、クソデカJSONの読み込み

www.youtube.com

3章 光源
光源の種類、法線の計算、OpenGL ES Shading Language(ESSL)

www.youtube.com

4章 カメラ
WebGL APIにはカメラがないので、マトリックス芸で仮想カメラを作ってる、サンプルでは右下にカメラ座標をひたすら表示し続ける

www.youtube.com

5章 アニメーション
JSのsetInterval, setTimeout使って頑張ってアニメにする

www.youtube.com

6章 色
色、奥行き、透明(アルファ)の設定方法

www.youtube.com

7章 テクスチャ
オブジェクトへのテクスチャの貼り方

www.youtube.com

8章 ピッキング
WebGLのシーンからマウスでオブジェクトを選択する

www.youtube.com

9章 WebGLアプリ
今までの章を使う、GUI設計、Canvasサポートの追加

www.youtube.com

10章 テクニック
ポスト処理、フレームバッファ、シェーダ設定、レイトレーシング

www.youtube.com

11章 WebGL2とは
新機能の解説
12章 次へ
特にテスト、物理ベースレンダリングの項目が面白かった
DOM要素と違って、canvas の要素は検査できない恐ろしい何かなので2種類の方法で頑張る
1.画像回帰テスト(参考)
Visual Regression Testing はじめました – 具体的な運用 Tips – PSYENCE:MEDIA
ものすごくシステム化された目grepみたいなものらしい(たぶん)
2.Application Introspection Testing
これ使っていい感じにやるらしい
github.com

最後に

いかがでしたか?サンプルコードのcommon/models/を見るとaudir8, bmw-i8, niissan-gtr等あるので、車好きな方は色変えたり車種変えたりいろんな角度から光らせたり回転, 移動, 拡大等して遊べると思います
特に回転は実車だと難しいと思うのでお勧めです
f:id:julialangisthebestlang:20210717173920p:plain

引っ越しと事故物件とスターゲイザーパイ

報告

引っ越しました、引っ越し祝い (ほしいものリストリンク)をしつこくせがんでいるのは引っ越しで金欠なためです
お恵みください!なんでもしますから!(なんでもするとは言ってない)

経緯

ずっと家にいたら住所どうでもよい気がしたので、ほどほどの田舎に引っ越しました
群馬も検討していましたが、国籍の変更等手続きが発生する可能性を考慮して、中間の埼玉にしました

比較

引っ越し前 引っ越し後
前の住人が死んでない 前の住人が死んでる
ワンルーム 3LDK
10畳 4畳, 6畳, 6畳, 11畳
家賃: 8万弱 家賃: 5万弱
野獣邸が近い 野獣邸が遠い
ユニットバス 風呂トイレ別

広いと便利よ?

引っ越し祝い誰もくれなかったので、泣きながらスターゲイザーパイ作りました
オーブンは****に選んでもらって買いました
レシピを書いておきます
材料:
真アジ: あるだけ
魚の頭: あるだけ
にんじん: あるだけ
たまねぎ: あるだけ
ソーセージ: あるだけ
バター: あるだけ
ホワイトソース: あるだけ
パイシート: あるだけ
卵黄: あるだけ

作り方:
1
アジのゼイゴ、うろこ、内臓を取り除いて洗います
f:id:julialangisthebestlang:20210706171839j:plainf:id:julialangisthebestlang:20210706171920j:plain 2
ミンチにします
3
刻んだにんじん、玉ねぎ、ソーセージと一緒に炒めて、火が通ったらホワイトソースを入れます f:id:julialangisthebestlang:20210706171855j:plain 4
魚の頭を突き刺し、穴をあけたパイシートをかぶせます、この時卵黄も塗ります
f:id:julialangisthebestlang:20210706172830j:plain 5
オーブンに突っ込みます f:id:julialangisthebestlang:20210706172747j:plain 6. 火が通ってることを確認して、食べますf:id:julialangisthebestlang:20210706173008j:plain

Franklin.jlで生成したhtmlをAWS Amplifyでホスティングする

やりたいこと

Franklin.jlで生成されるサイトをAmplifyでホスティングする

やっとくこと

GitHubレポジトリとAmplifyの連携(GitHubである必要はないですが)

f:id:julialangisthebestlang:20210705212002p:plain
hosting

静的サイト生成

julia> using Franklin
julia> newsite("mysite")

生成される mysite/__site/index.htmlを公開したい

やったこと

1
__site/以下を無理やりgit管理に含める

git add -f mysite/__site/

2
amplify.ymlに次を追記する __site/以下を一番手前に持ってくる

frontend:
  phases:
    preBuild:
      commands:
        - mv mysite/__site/* ./

できた

amplifyで指定したブランチにpushしてビルド待つ

f:id:julialangisthebestlang:20210705212652p:plain
franklin

感想

絶対ベストプラクティスじゃない気がするのでいい方法知ってる方はこっそり教えてください
Amplifyは自前で用意したDockerイメージも使えるようなので、julia pullしてきた方が良いんでしょうかね
引っ越し祝い引き続き募集してます、お恵みください、なんでもはしませんから
ほしいものリスト

参考

Franklin.jl触りたくなる記事

qiita.com

Notion API使ってみた備忘録

経緯

半年ほど前にNotion API waitlistに登録して、半年ほど全裸待機しておりました
最近Beta版がリリースされたそうなのでとりあえず触ってみました

準備

ワークスペースと、その中にページを作っておく
Getting Started を眺めとく

Log into a Notion workspace as an Admin user

とあるのでAdminである必要がありそう
AdminでないWorkspaceは後述の一覧に出てこなかった

流れ

  1. Integration Tokenを取得する
  2. ページでAPIをinviteする、DatabaseIDを取得する
  3. データベースに文字列を追記

1. Integration Tokenを取得する

Integration作るためのページに行く My integrations
Create a new integrationを押す
Name(必須)
Logo(オプショナル)
Associated workspace(必須、関連付けたいワークスペース)
Submitを押す

f:id:julialangisthebestlang:20210606173518p:plain
submit
Integration Tokenを保存しておく f:id:julialangisthebestlang:20210606173616p:plain (特に公開予定はないのでInternal Integrationのままにしている)

2. ページでAPIをinviteする、DatabaseIDを取得する

APIを有効にしたいページ右上・・・をクリック>invite>有効にしたいAPIを選ぶ f:id:julialangisthebestlang:20210606174936p:plain
操作したいテーブル右上の・・・をクリックCopy Linkを押す
Database IDはワークスペース名/と?の空いたの32文字の英数字なのでそれを保存する

https://www.notion.so/{workspace_name}}/{Database ID}?

3. データベースに文字列を追記

(データベースと呼んでいいか怪しいですが、テーブルを操作するときにdatabase idを求められるのでデータベースと呼びます)
表形式の末尾にOCHINCHINを挿入します API references

curl -X POST https://api.notion.com/v1/pages \
  -H "Authorization: {GUIで生成した}" \
  -H "Content-Type: application/json" \
  -H "Notion-Version: 2021-05-13" \
  --data '{
    "parent": { "database_id": "{32文字のデータベースID}" },
    "properties": {
      "Name": {
        "title": [
          {
            "text": {
              "content": "OCHINCHIN"
            }
          }
        ]
      }
    }
  }'

指定したテーブルに文字列OCHINCHINが書き込まれる
動作動画
https://twitter.com/nomorepython/status/1401223143830687744

参考

API references
FAQ

備考

SDKも出てるっぽいのでいじりたい
テーブルデータ以外も操作できるのか?

お願い

引っ越しで
金がねンだわ
法隆寺

乞食リスト

JuliaでAWS Lambda動かすやつのメモ(RIEでlambdaのテストも)

最初に

この動画見て www.youtube.com このレポ github.com 走らせた時のメモです、特にオリジナリティないです
LambdaでもJulia使いたいけど上の動画みるの面倒な人に良いかもしれません
動画だとecr認証の箇所などわからなかったので追記しました

概要

  1. lambdaのコンテナ立ててローカルでcurlで叩いてローカルで動作確認
  2. ECRにそれをpushしてlambdaにそのURIを登録

必要だったもの

  1. aws configureすませたaws cli
  2. awsのaccount_idとregion (aws ecrコマンドで使う)

ローカルでテスト実行

buildとrun

docker build -t julia-lambda:latest . && docker run -it --rm -p 9000:8080 julia-lambda:latest

curlで叩く、別ウインドウを起動して

curl -XPOST "http://localhost:9000/2015-03-31/functions/function/invocations" -d '100000'

動いた f:id:julialangisthebestlang:20210127204353p:plain

ECRにプッシュ

(※ [region], [account_id]は使っている値を入れてください)
account_idと使うregionを指定して認証する

aws ecr get-login-password --region [region] | docker login --username AWS --password-stdin [account_id].dkr.ecr.[region].amazonaws.com

ECRにレポジトリ作成

aws ecr create-repository \
    --repository-name julia-lambda \
    --image-scanning-configuration scanOnPush=true \
    --region [region]

タグ付け

docker tag julia-lambda:latest [account_id].dkr.ecr.[region].amazonaws.com/julia-lambda:latest

ECRにプッシュ

docker push [account_id].dkr.ecr.[region].amazonaws.com/julia-lambda:latest

Lambdaの作成

Lambdaのコンソールにログイン>コンテナーメージにチェック>関数名を適当に埋める>イメージを参照、からさっきプッシュしたECRのURIを選ぶ
テストイベントの中身を10000のみにしてテストを実行

┌ Info: Got response from handler
└   response = "3.1224"

動いた
ここCLIでやろうとしたんですが、やり方わかりませんでした
ECRのimage URI指定してコマンドラインからLambda作る方法ご存知の方は私にTwitterでこっそり教えてください

補足

Lambdaの設定

デフォルトのメモリだと足りなかったので増やしたら通りました

Memory Size: 1024 MB Max Memory Used: 357 MB Init Duration: 4718.01 ms

RIEとは

R.I.Pに似てますね
lambdaをローカルテストできる便利機能っぽいです, これで動くかどうか祈りながらzipを作る必要ないですね(?)
AWS Lambda の新機能 – コンテナイメージのサポート | Amazon Web Services ブログ
より引用します
「Lambda Runtime Interface Emulator をオープンソースとしてリリースします。これにより、コンテナイメージのローカルテストを実行して、Lambda にデプロイした際に実行されることを確認することができます。Lambda Runtime Interface Emulator は、AWS が提供するすべてのベースイメージに含まれており、任意のイメージでも使用できます。」

リンクとか

Runtime APIのドキュメント AWS Lambda runtime API - AWS Lambda
ECRをCLIでやるドキュメント Using Amazon ECR with the AWS CLI - Amazon ECR