Post Bank

ソフトウェアエンジニアの技術的、投資的、日常的つぶやき

React Hooksを使ってみようとした話

React Hooks使ってみようとした時に依存関係のエラーが出たのでそのメモ。


とりあえず、create-react-appでReactアプリを作成する。

npx create-react-app test
cd test


で、reactとreact-domの最新版(16.8.0-alpha.1)をインストール。

npm install --save react@next react-dom@next


インストールが終わったら、ローカルのパッケージのバージョンを確認してみる。

npm list --depth=0


そうすると、以下の依存関係のエラーが出てる。

npm ERR! peer dep missing: react@^16.0.0, required by react-dom@16.8.0-alpha.1


react-domはなんでこんなに古いreactのバージョンを要求するんだろう。というかこういう解釈で合ってる?React Hooksのサンプルコード動くからこの問題はこのままでいいのかな?誰か知っていたら教えてください。


追記(2019.2.9)
React 16.8リリースされましたね。
もう一回このコマンド入れると、16.8.1がインストールされて依存関係も解決しました。

npm install --save react@next react-dom@next

ロジカルに話したい

最近社内で私の信用度が徐々に落ちてきているのを肌で感じている。というのも、社内会議で私の言うことがあまり通らなくなってきた。そうなってくると、あー仕事つまんね、転職しようかな、いっそもう誰もいない無人島で原始的な生活を送りたい、そこで誰にも看取られずに浜辺で死にたいなどどいう安易な気持ちが脳裏をよぎるようになる。

やはり自分のやること、為すことすべてが否定されると人間つらくなってくる。何としてもこの状況を早く脱却したい。そこでどうしてこうなったのか原因を考えてみることにした。すると一瞬で答えは出た。

ロジカルに話せていない。私の話には根拠がない。私の話は長い。私の話はつまらない。私の話は結局何が言いたいのかわからない。このままではやばい。今の会社を解雇されて、路頭に迷うことになる。転職しようにも面接で日本語を話せない日本人を雇う企業がどこにあるだろうか。よし直そう。

いろいろと調べてこれならできそうと思ったものはこれ。
1. 結論から話す!
2. 根拠を3つ用意する!
3. 頑張ったことは話さない!

まず結論から話すということ。まぁこれはどこでもよく聞く常識のようなものだけど、意外とできていなかったなぁと反省。普通に日本語話しているとオチは最後なんだよなぁ。オチは最初に持ってくる!合言葉は、「俺は最初からクライマックスだぜ!

次に根拠を3つ用意すること。「3」という数字には魔力が込められているらしい。簡単にいうと3つくらい根拠があれば、人は納得しやすいということ。

最後に頑張ったことは話さないということ。これは結構やっちゃいがちだなぁと思った。頑張ったこと話したくなっちゃうんだよね。神様は見てくれてるから会議の場では我慢しようね?約束だよ?

ということで、上の3つをまずは実践していきたいと思う。地に落ちた信頼を取り戻すことはできるのか!乞うご期待です。

追記(2019.1.28)
根拠を否定されるというどうしようもないパターンを検出。根拠の裏付けはしっかり、ね。

現代版文章読本

この誰でもできるwebで読みやすい文章を書くための4つのポイントがすごいわかりやすい。理解したからといって、実践するのは意外と難しいわけで。意識して少しずつ文章の書き方を改善したい。

リンクを踏むのがめんどくさい人向けに目次だけ上のリンクから抜粋すると、
1. 文章は話すように流れるように書く
2. ブログやエッセイの文章は常に小説でいう「」だと意識する
3. 語尾を散らす
4. 1000文字ではなく、250文字x4など分割する

ちなみに上のリンクのサービスscraiv、文章版YouTubeを目指しているそう。今注目されている個人開発のサイト。面白そうだから登録してみよ。

Django + Reactで初めてのSPAを作ってみた

Django + Reactで作家の人気投票ができるSPAを作ってみました。タイムラインでもなんでもないのに、Book Timelineという名前です。

f:id:john_kaz:20190116224357p:plain

前々から見た目部分いじれるの楽しいやん、かっこいいサイトとかアプリ作ったら女の子に自慢できるやんと思ってWebデザインとかフロントサイドの技術に興味があって、そんな時にジャバザハットリさんテックブックランクとかホットチリレビューズとかに出会って、モテる上に稼げるとか最高かよと思ってReactの勉強がてら何か作ることにしたのでした。そういう経緯で最初に作ったのが、このBook Timelineというわけです。Reduxは少し触ってみて難しいと感じたので、使ってません。

軽くこのサイトの説明を。
このサイトは自分の好きな作家さんを「作家の登録」画面から登録することができて、それぞれの作家さんのページからスターをつけられるというものです。このスター数が多い順にグラフに表示されるようになります。登録できる人物は職業が作家、小説家、詩人の方だけです。(時々それらの職業の方々も登録できないことがあります。。。その時はお問い合わせページからご一報ください。)いたってシンプル!

f:id:john_kaz:20190117081703p:plain

一応本を読むのが好きなので、こんなサイトを作ってみました。あんまり作家さんの方に焦点を当てたサイトってないなーと思って作家さん中心というコンセプトにしたのでした。若干スクレイピングの精度が低いなーと自分でも反省しておりますが、少しずつ修正していければと思っております。このサイトを通してSPAを感じていただければ幸いです。そしてあわよくば何かしらの反応いただけたら嬉しいです。たとえそれが心無い罵詈雑言であっても受け止める覚悟でおります。

Book Timelineよろしくお願いします。

暇なときにみておきたいサイトまとめ

エンジニア、スタートアップ界隈のことを知るのに眺めておきたいサイトを自分用にまとめる。普通にみんな知ってるサイトばかりだと思う。

技術・デザイン系

  • Qiita
    言わずと知れた技術情報共有サービス。SEOが強いからか、技術情報を検索すると大体上位にいる。自分が書いたクソ記事も上位に来ちゃうためなんか申し訳ない気持ちになる。

  • はてなブックマーク テクノロジー
    こちらも言わずと知れたエンジニア御用達のページ。人気記事が表示される。いつかここに載ってみたいと密かに思っている。

  • HEARTBEAT
    英語のブログ。iOSとかAndroidでの機械学習実装に関する記事がたくさんある。少しニッチだけど、結構参考になる。Mediumはデザインがカッコよくて、読みやすいので好き。

  • Create with AI
    アート系のAI技術について紹介するサイト。詳細なアルゴリズムを知るには原論文とか元ブログをたどる必要があるけど、概要がまとまっててわかりやすい。取り上げられる記事のチョイスがいい。

  • 人工知能に関する断想録
    ある特定の技術とか論文に対してかなり詳細に解説してくれている。コード載ってるし、図もわかりやすい。記事から滲み出る筆者の頭の良さたるや...

  • Hacker Noon
    英語の技術記事が集まってるブログ。正直そんなに見ないけど、読めば英語と技術を一緒に勉強できて一石二鳥じゃん、と思いながらやっぱり読まない。

  • UX MILK
    UXについての翻訳記事が集まってるサイト。UXについて語るサイトだけあって、UXが素晴らしい。UX MILKのアプリもある。

  • Webクリエイターボックス
    デザインを勉強するのにちょくちょく読んでる。フォントとかCSSとか紹介されてて面白い。

スタートアップ・メディア系

  • TechCrunch
    言わずと知れたスタートアップメディア。スタートアップに転職するまで実は知らなかったのは秘密。

  • THE BRIDGE
    言わずと知れたスタートアップメディア。特に言うことはない。

  • WIRED
    科学系の記事がおしゃれに紹介されてる。特に言うことはない。

  • TED
    英語のプレゼンがたくさん載っている。これでリスニング学習するもよし、プレゼンの参考にするもよし、普通にプレゼンを楽しむもよし。このプレゼンが好き。

人口減少社会をどう生きるか

年末年始の休みでAI×人口減少 これから日本で何が起こるのかを読んだ。

AI×人口減少 これから日本で何が起こるのか

AI×人口減少 これから日本で何が起こるのか

「AI」と「人口減少」がタイトルには並列に書かれているが、この本の主題は「人口減少」の方。AIの話題については、申し訳程度でしかも若干否定派な意見が目立った。大まかな話の流れとしては、まず日本の人口減少問題の現状と未来予想について実際の予測数値を見ながら語られる。次に人口減少の原因分析と人口減少が引き起こす問題点について論じる。そしてタイトルにあるAIと人口減少問題を絡めて、その課題について指摘する。最後に、人口減少問題に対する取り組み例や筆者の提案する解決策が紹介されて幕を閉じる。といった流れ。

筆者は人口減少の原因をいくつか挙げているが、その中でも人口減少を引き起こす最も大きな要因は、東京への人口の一極集中だと述べている。人口の一極集中が引き起こす生活コストの増大長時間労働長時間通勤育児環境の悪化などが出生率の低下を招いているという。
これらの要因で起こる人口減少は、高齢化に繋がり、医療費・介護費の増大によって、税金・社会保障費の増大へと繋がり、働く世代の負担が増える。そのため消費が低迷し、経済成長率の低下を招くという。

人口減少社会において、AIなどの破壊的イノベーションは人手不足を解消し、生産性を高めることが期待される一方で、過度にAI化を進めれば深刻な人余りが起きてしまうのではないかと筆者は主張する。実際にアメリカでは、GAFAに代表されるIT企業は莫大な利益を上げてはいるが、雇用の人数はかなり少なく、一部の層が利益を独占してしまって、経済格差がこれまでにないほど広がっているそうだ。

日本にとっては踏んだり蹴ったりな状況となっているわけだが、この本は絶望に終わるわけではない。人口減少に歯止めをかける取り組みとして、企業の定年後の再雇用制度や本社の地方移転、地方大学の改革、社会保障分野への積極的なAI活用などを例に挙げている。AIの話題はあんまり出てこないにも関わらず、若干強引にAIとは闘うものではなく、利用するものだと締める。

人口減少の要因分析の話は読んでいて非常に納得感があった。自分も東京に住む働く世代の一人だが、確かに毎日の生活は結構苦しい。都市部の家賃は高すぎるから、郊外に家を借りて長時間の通勤に耐えているし、郊外とはいっても結構家賃は高くて家計を圧迫してくるからあんまり贅沢もできない。なるべく税金が安く済むように節税の情報をかき集めている。こんなカツカツの状況では、全く子供が欲しいとは思えない。こんな感じのことを感じている人は結構いるんじゃないかと思う。東京は子供を作ることに二の足を踏む環境であることは間違いない。

提案された解決策については至極もっともだなとは思うが、「AI・ロボット税」については反対したい。仕事の効率化を抑え込めば、結局長時間労働につながってしまうだろうし、先進国の日本がテクノロジーに対して消極的って大丈夫なのと思う。 あと定年が伸びるとか、貰える年金の受給額が少なくなるとか自分たちの子供の世代が不幸になるような政治はやめて欲しい。(定年が伸びるのが不幸と感じるかは人それぞれだが。)普通自分たちの後の世代が幸せに暮らせるように社会を作っていくのが政治家の仕事だろうに。結構政治に対する批判も多い本だったので、政治家に対する不信感も少し芽生えてしまったのだった。

脳内プロトタイピングの衝撃【エンジニアと人生】

以前紹介したVoicyの「エンジニアと人生」が更新されました。今回のゲストはうめのん氏ではなく、嶋田さんという方でした。話を聞いた感じだと今はゲームアプリ開発者だけど、元々はデザイナーの方なのかな?

voicy.jp

今回の話も面白かった。特に驚いたのが、脳内プロトタイピングの話。嶋田さんは、プロトタイピングを脳内で行うことで超高速でアプリ設計の検証を行うそうだ。まぁ言っている事はなんとなくわかるが、そんなことが普通の人に出来るのか、と思い少しやってみた。やってみるとわかるが、どうも同じUIや画面遷移やらが頭の中で堂々巡りしてしまう。なかなか新しい選択肢が次々と浮かんではこないので、テンポよく試行錯誤ができない。嶋田さんも言っていたけど、これは絶対に訓練が必要。というかこれは、嶋田さん自体の、デザイナーとしていろんな優れたビジュアルをインプットしてきたであろう経験も一つの助けになっているような気がする。嶋田さんは今から10年後に取り入れられるであろう手法を自分で考えて先取りしてるとは言っていたものの、このプロトタイピング手法がメジャーになるには人類自体の進化が必要そう。

うめのんさんに引き続き、二人目のゲスト嶋田さんも「自己流」を持ったスペシャリストでした。その人それぞれの自己流を聞くのも楽しいけど、その自己流が醸成されてきた経緯とか背景まで聞いてみたいと思うこの頃でした。


嶋田さんの開発したアプリ「PPKP」はこちらから。

PPKP

PPKP

  • SHIMADA TOSHIHIRO
  • ゲーム
  • 無料

Voicyはこちらから。

うめのんさんゲスト回の感想はこちら。

john-kaz.hatenablog.com