taiki-t's diary

きぎょうにっき, React Native, Rails そして雑多な記録: The world is waiting for you to give it a meaning.

読書メモ: Learn You Some Erlang for Great Good!: Introduction

はじめに 個人の話 並列処理という言葉自体がもつ魅力、そしてたまに聞く噂話が積み重なって、とうとうErlangへの好奇心を抑えきれなくなった。2017年も最後の日にしてErlangについて学び始めた。2018年も最初の日にしてLearn You Some Erlang for Great Goo…

曲作り

少し前に作った半端のやつ 息抜きの間にやるのでだいたい半端。 悲しい気分だったんだと思う soundcloud.com サムネイルで自分の顔アップになんのきついな‥w

曲作り ゲームの町っぽいの

昔作ってあったやつ 昔のゲームの町っぽいやつ作りたいなーと思って作った。 最後のところ、和音全部入れてるけど1個抜かしてもいいんじゃないかなーって思ってる。どうだろう。 www.youtube.com

Elmについて少し調べた

Elmのドキュメント冒頭から俺の脳内で型エラーが起きそう> Elm is a functional language that compiles to JavaScript. It competes with projects like React as a tool for creating websites and web apps.https://t.co/icz36FfdHeなんで言語がReactと比…

ゲームレビュー 2017/11

たまにゲームやってみるんだけど、すぐ消す。 いつも消すだけだど勿体無い気がしたのでレビューとして残してみる スバラシティ スバラシティRyuji Kuwakiゲーム無料 パズルゲーム。面白い。特に頭を使わなくても進捗が出るところが良かった。 繋げて大きくし…

generic な connection fragment をRelay Modernで書きたいメモ

複数の親要素が、共通の子要素をもち、その子要素がconnectionな時にfragmentを共通化する方法が知りたい。 よくわからないのでメモ。 この方法でやろうとしたけどエラー出るよね: Spread fragment through Connection · Issue #1983 · facebook/relay · Git…

Install Bulma to Rails 5.1

in terminal yarn add bulma in app/assets/stylesheets/application.scss @import "bulma/bulma" That's it. Restart the server as needed. May apply to other css frameworks. bulma.io

感情を自由に書き表せたらな。ときどき、そう思う。そういうスキルが無い者としては、ただただ、その「表したい何か」を抱えて画面をじっと見ておくことぐらいしかできないのだけれど。自分の表したい気持ちを自由に文章に表せられるなら、それはどんなに素…

Implement a simple caching for Relay Modern.

update - 2017/11/07: Consulting official docs may make you even happier: Add Caching docs by felippepuhle · Pull Request #2121 · facebook/relay · GitHub. It's not merged by now. Unlike Relay Classic, Relay Modern doesn't come with an autom…

曲作り 8/22

息抜きに曲を作った と言っても出だしだけ、簡単に。 soundcloud.com 人は悲しみを抱えて生きている しかしその中にも一筋の輝きが差す それは大切な人からの贈り物かもしれない 溢れた涙に反射する光も時間が経てば 大切な輝きだったと思える日がくるかもし…

仕事が好きな理由1

仕事が好きな理由はいくつかあるけど、その一つは「好きなだけ打ち込めるから」。 好きなことに打ち込めるというのは大事で、しかもその対象が人間でないということが重要。 どんな人でも一人の人間の思いを全て受け止められる人などいない。 一人の人間に自…

アイディアを寝かせることと生産性

今作っているアプリLylicaのMap機能を改善しようと思ったのだけれど、 なかなか腰が重かった。そもそも機能自体もどうして良いかあまりわかっていなかったし、 技術的にも大変そうだなあと感じたので。 そのまま着手したらだらだらやり続けることになりそう…

Relay Modernに移行した

今作ってるアプリ、Lylica - 街のおすすめが分かるSNSをRelay ClassicからRelay Modernに移行した。 動機 今後機能を追加していくにあたり、今のうちにえいやとやっておきたかったからだ(とある機能の追加に腰が重かったから先にこっちに着手したというのは…

嬉しかったこと。

夢が一つ叶った。 今作っているアプリ、Lylica(りりか)は街のおすすめをみんなで投稿して作るSNS。 他のユーザーさんによる近くのおすすめが、アプリを開くだけでわかる。 今いる場所で何ができるかって調べるのは意外と手間で、そこを解決したかった。 Ly…

川が流れる。 穏やかな春の日。新緑の芽生える雨上がりの初夏。 誰もいない堤防の上、二人の男女が歩いている。そんな景色は無かったのに、あったかのように思えてくる。 上流から下流へと絶え間なく移りゆく流れ。同じ水のはずなのに、流れているのと止まっ…

メモ: ファイル名をキャメルケースにするRubyワンライナー

Relay Modern compatモードで動かしてるんだけど、fragment名についてcomplierではファイル名に依存してて、runtime(?)ではコンポーネント名に依存してる… snake caseとcamel caseにしてるからファイル名変えないと…— taiki- (@taiki__t) 2017年8月9日 とい…

技術コミュニケーションでは「良いと思うので」に理由を添えて生産性を高めよう

「こちらの方が良いと思うのでこうします!」 「これはあんまりよくないと思うので」 というやり取りはよくある。自分も気を抜くとやってしまう。 これは暗黙的に「良い」の概念が共有されていると思いやってしまいがちだが、必ずしも共有されているわけでは…

ターミナルでgit grep して一括置換するコマンド

$ git grep -l 'search word' | xargs sed -i '' -e 's/search word/replacing word/g' こんな感じ。 search word, replacing wordはそれぞれgrepする語、置換後の語を指定。 git grep -lで対象の語が含まれるファイル一覧を取得、 | xargsでそれを sedコマ…

React Native Tab View with default index to 1

When Using React Native Tav View with defalut index to 1, I happened to face a strange behaviour; automatically swipes to index 0 sometimes when opening the scene. So what I did was to set initialLayout and it fixed it. Like this: const in…

React Nativeで画像のトリミング(cropping)

React Nativeで画像のトリミングができる。特に外部のコンポーネントを入れる必要はない。 標準の ImageEditor を使ってできる。 しかしながらいかんせんドキュメントが少ないのでここに記録も兼ねて残そうと思う。 ※ 記事執筆時に使用したReact Nativeのバ…

heroku で定期dbバックアップ

$ heroku pg:backups:schedule DATABASE_URL --at '02:00 Asia/Tokyo' --app your_app_name これだけだった。簡単 devcenter.heroku.com TimeZoneの表記はここから https://en.wikipedia.org/wiki/List_of_tz_database_time_zones

React NativeのImageを使うときの注意

React Native のImageを使うときの注意 とりあえずImage要素にサイズ(widthとheight)は指定する。じゃないと表示されない。 バージョン: 0.44.0 追記: 2017/07/07: 0.47.0以降のバージョンでこの制約は消えそう。Using <Image> with nested content now causes warn</image>…

React Native のTouchableなんとか使うときの注意

TouchableWithoutFeedbackとか使うとき、 とりあえず内部の要素はTextだろうがImageだろうがViewでラップしておくのが無難。 余計なハマりポイントを回避できる。 バージョン: 0.44.0

試訳: combineReducers

Redux documentsの「Using combineReducers」の最初だけざっと試訳してみた。推敲してないので間違ってたら申し訳ない。とはいえ割と合ってると思う。まあやってみたのを手元に置いておくだけなのも勿体無いので置いておく感じ。改善は自由に。 combineReduc…

Lylicaというサービスをリリースした。

Lylica (りりか) というサービスをリリースした。iOSアプリで。 Lylica - 街のおすすめが分かるSNSを App Store で 「世界をもっとダイナミックにしたい」 そう思って作ってきた。きっかけは、昨年(2016)に翻訳書1を出版したことに遡る。 昼間は会社、夜は翻…

メモ:React Native で e2eテストできそうな detox

https://github.com/wix/detox これ使えそうと思ったけど、Permission用Alert周りの処理で詰んだ。 工夫すればできそうだけどまた後ほどtryする。 導入自体はすごく簡単だった。 このIssueがcloseする頃にはそこらへんいい感じになってるのではと期待: githu…

react-devtoolsをReact Nativeで使う

React Nativeで開発でのデバッグにはNuclideを使っていたけど、react-devtoolsも使える。 インストール方 グローバルにインストールする場合 npm install -g react-devtools これでreact-devtoolsとterminalでやれば走る。 プロジェクトにインストールする場…

Mark Zuckerberg's Commencement address at Harvard

www.youtube.com What I thought listening to this is: “It’s not the world that gives you the meaning, the world is waiting for you to give it the meaning.”

GraphQL Mutation

Relay使ってての話なんだけど Mutationはできる限り単一責任にした方が、のちのユースケース変更時にコスト低そう リソースに対する状態変更は、Mutation名を動詞にしてidだけ送るとクライアントとサーバー側を疎結合にできて良さそう UpdatePostStateMutati…

はてなブログthemeのevergreenにサイドバーをつけた

つけたかったので #container { width: 1200px; } #container-inner { min-width: 1200px; } #main { float: left; max-width: 780px; margin: 0 auto; } こんな感じ。適当にやったらできたのでよかった。 まあ正確にはつけたというよりフッターを移動した、…