JavaScriptをがんばるブログ

React,OSS,ソフトウェア開発が中心のブログです👨‍💻

「systemd実践入門」の読書記録

Software Design 2018年2月号の特集「systemd実践入門」の読書記録です。 systemdとは何か? Linuxで使われているブートシステム。ユーザーランドのプロセス起動とマネジメントを行う。 systemdはLinuxの起動システムであるUpstartやSysVinitの代替として2010…

「I am a mediocre developer」を読んで非常に共感した

dev.to いい記事ですよねー。 TDDの本を読む限りkent beckも天才という訳ではなくて目に見えて明らかなロジックの緻密な積み上げと、自分のキャパシティを超えた事象はひたすら機械に任せることで普通の人間が一度に扱える範疇を超えた複雑性に対処している…

ユニットテスト用のCIとflow check用のCIを分離しました

Reactで開発中の勤怠管理サイト GitHub - ryota-murakami/clock-up: attendance management tool for personal use. でCircle CIを使っておりユニットテストで失敗がなければGreenになるよう設定していたのですが加えてflowの型チェックもCIに入れたいなぁと…

Virtual-DOM、Reactの動作原理を勉強中

React Nativeの記事を昨日の続きから読んでました。 malloc.hatenablog.jp React NativeのアプリはNativeとJSの実行環境が同時に稼働する仕組みなんですね。 コンパイルされたNative Codeとインタプリタ言語のJSが実行時どう協調してるの? という根源的な疑…

読書リスト 2017/12/26

年末年始で読みたい本リスト。 1日4時間くらい読書に時間取りたいなぁ TDD Clean Architecture PythonとJavaScriptではじめるデータビジュアライゼーション オブジェクト指向実践ガイド 人を動かす

客が欲しいものと開発者のエゴの対比

Reasons that factor into whether someone uses your product:✅ It’s useful✅ It looks nice✅ It’s fun/easy to useReasons that don’t factor:✅ You used whatever framework was trending this week✅ You have 5000 years of javascript experience✅ You …

技術的パッケージユーザー

「○○の経験○年以上〜」みたいな求人票に応募してしこしこ開発しているだけでは満足出来なくなってきたのでメモ。 何も考えず界隈で流行のフレームワーク覚えて廃れて〜のサイクルに乗じて仕事するのって制限改訂や新カード登場時にテンプレデッキ乗りついて…

React #1 Advent Calendar 2017に投稿しました。

今年もqiitaがAdventCalenderを募集していたので投稿してみました。 qiita.com 最初はreact-apollo/GraphQL関連の記事を描こうと思っていたんですが途中でテーマを切り替える事になりReactのコードは登場しない記事となりました^^; 今のところAdventCalender…

キャリア設計

よくお金が十分にあったら何がしたいか?技術は手段だといった主張を見るとキャリアについて考えてしまうのだけど、これまでいつもしっくり来る解答が浮かんで来なかった。 原因は技術は手段だから何らかの目的が達せられたなら不要になるという無意識の刷り…

Reactアプリにpuppeteer + JestでE2Eテスト書いてみた

最近puppeteerでのE2Eテストに興味を持っていて個人事業で開発している勤怠管理アプリに早速適用してみました。 puppeteerでのE2Eテスト。ブログ用です。 pic.twitter.com/HxjDLHQ0GS— Ryota Murakami (@malloc007) 2017年11月25日 地味で見にくいですが Aut…

LocalStorageにReduxのStateを保存してパフォーマンス改善する方法もあるよ JS日報 2017/11/13

codeburst.io 上記記事のCaching with LocalStorageの章で紹介されているテクニックが良い感じでした。 ロード時にLocalStorageに保存済みのStateがあればそれをロード LocalStorageへ保存しているStoreを更新するメソッドを作成し、store.subscribe()してお…

material-uiのテストコードが勉強になる JS日報 2017/11/8

GUIのテストってどうやれば良いのか、どこまでやれば良いのか解らないのでmaterial-uiのリポジトリのソースコードを読んで勉強していた。 普通にEnzymeでちまちま要素を取得しつつアサート、適宜propsをいじってまたアサートという具合で思っていたよりシン…

glamorousってどうでしょう JS日報 2017/11/7

css-inのライブラリとしてはstyled-componentが一番人気ですが、これと似たようなものでglamorousというライブラリを見つけました。 github.com PayPalが作っているようですね、公式サイトの色彩がちょっと鮮やかすぎ... こちらのブログによると、 Introduci…

ReactアプリにそもそもFluxアーキテクチャを採用するか JS日報 2017/11/6

読んだもの redux-from-twitter-hype-to-production slides.com JSier.infoで紹介されていた記事です。 数あるRedux図解の中でもピカイチの分かりやすさ & API通信についても触れているので保存しておきたいです。 The React Source Code: a Beginner’s Walk…

テンプレートエンジンのくせに最近のPHPはオブジェクト志向やらDIやらイキり始めた件

※2017/05/29現在Repositoryの章までしか聞けていません。聞いている際に浮かんだインスピレーションが揮発しないよう永続化する為に書いた記事です。 php-genba.shin1x1.com まさか日本語でこの内容を聞けるコンテンツがあるとは思わなかったです。 これは英…

Japanese girls have a community like "hacker news".On the reddit like based system.

「ガールズちゃんねる」はまるでredditのような純国産サービス。 PVなどの公式データは見つけられませんでしたがかなりのアクセス数で、活発に盛り上がっている様子です。 トピックベースの盛り上がりにはてなブックマークコメントを主流に使っている日本の…

ソフトウェア技術者として

キラキラした外面の良いテクノロジーでプロトタイプを作るだけじゃなくて、(これはもちろん良い事ですが) 例えば8307ある法令うちの一つを書き換える場合に、 残りの8306法令と連関して生まれる作用を全て想定した上で変更する事など人間に出来る訳が無いの…

ツールに振り回されない

最近読んだ本によるとGoogleでは「何でも議題に出来る会議」を「TGIF」と呼び毎週金曜に開催しているらしく、 社内業務とは異なる角度でビジネス、技術、ライフスタイル全般に刺激を生み出せる場があると良い気がしたので、 自分の会社でも取り入れてみる事…

「レガシーソフトウェア改善ガイド」読書会 #1

今週から会社で読書会を始めました。(毎週水曜1時間) 現状定期的な読書会はなく、以前不定期にやっていた読書会はしっかりと議論する、本を持っていない人に印刷して配る、などのコストが高かったためか自然消滅していまいました。 電子書籍をプロジェクター…

Doctrine2/QueryBuilderのコメントが素晴らしかった

実際の使用例を記すだけでこんなに解りやすくなるとは… 引用元: https://github.com/doctrine/doctrine2/blob/master/lib/Doctrine/ORM/QueryBuilder.php#L1119-L1137 /** * Adds one or more restrictions to the query results, forming a logical * disju…

CIが遅く開発のボトルネックになっていたので新しいCIの選定を行いました

Scrutinizerを1コンテナで使っていたのですが、 リポジトリ数が増え、時には待ち時間が2時間を超えるようになってしまいました。 そのためメジャーなCIサービスの機能と価格を調査しました。 CI毎に課金体系が全然違うのでそこが楽しかったですね。 malloc.h…

CIサービスまとめ 2017-03

無料プランと有償で使う場合のミニマムプランを記載しています。 Travis CI Travis CI - Test and Deploy Your Code with Confidence public repositoryなら無料で使い放題なので、 殆どのOSSが利用しています。 そのためgithubで設定ファイルのサンプルが山…

githubのDeploy Keysは特定repositoryへのアクセス権

PHPのComposerを利用したリポジトリをCircle CIに追加したところ、githubプライベートリポジトリで管理している自作のComposerパッケージがフェッチ出来ないエラーに遭遇しました。 とりあえず自分のGithubアカウントにCircleCIのSSH鍵を作成して対処しまし…

信頼出来ない値の算出過程を調査するためのログを出力した

最近以下のような対応作業を行いました。 抽象的な書き方で申し訳ないですが… 画面間で異なってはいけない値が異なっている不具合が発生 値の相違を検出するためのチェックサムを作成 チェックサムが誤作動 チェックサム計算に使用されている値の算出過程を…

【phpbrew】楽なextension指定方法

phpbrewでextensionをインストールするにはvariantsオプションを指定します。 READMEページにとても判りやすい例が載っています。 github.com 必要なvariantsをチマチマ引数に渡すのが面倒に思っていたのですが、 利用頻度が高いものをパッケージ化したvaria…

SRE(Site Reliability Engineer)ってなんだ?

これまで「インフラエンジニア」と呼ばれていた職種を近年「Site Reliability Engineer」と扱う事例が増えてきましたよね。 Googleが提唱した「モダンなインフラエンジニアの呼び方」くらいの認識しか無かったので具体的にどんな職種なのか、メルカリのエン…

PHPプロジェクトのTravis CIにeslintとkarmaのタスクを追加した時のメモ

最終的な.travis.ymlはこのようになりました。 https://github.com/ryota-murakami/daily-tweet/blob/a7f40a21a11bc023ca028c626d8f8d7dd5875d33/.travis.yml 1. .travis.ymlにnodejsを追加、npmパッケージインストール Travis CIのlanguageをnodejsに設定し…

PostgreSQLのExplainが分からなかった

MySQLとはExplainの表示が違うので見方が分からなかったのですが、 とても良い資料を見つけて理解する事が出来ました。 PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~ from Miki Shimogai www.slideshare.net 2014年で新卒1年目という事は自分と…

レガシーコードをPullRequest → コードレビューする意味ってあるのかな

PullRequestに表示されているDiff以外の部分を見ないとどう動いているのか理解出来ず良し悪しを判断出来ないし、 既によくない部分が大量にある状況でコードレベルの是非を指摘する気にならない。 コードレベルで改善が難しいプロジェクトは素直に以下のフロ…

ソフトウェアにしっかりとテストを書いた結果、どのような心境に至ったか

とても小さくてしょぼい機能しか無いけど、 趣味で作っているRuby on rails製サイトの主要機能に対しテストを充実させた結果、精神衛生的にとても良い気分になったのでカキコ。 github.com トップベージ表示 RSSフィード排出 記事詳細ページ表示 ログイン → …