サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
マンガ大賞候補作は
tomoima525.hatenablog.com
ポッドキャスト Today I Learned FMの28 回目はメンタルヘルスの話題について話しました。この記事はその収録に関する追記です。 anchor.fm 「なんとなく元気がない」 = languishing www.nytimes.com "バーンアウトでもないし、うつでもない。けどどこか希望がない。なんか楽しくないし、目的ももてない。なんだかモヤモヤする。" この症状に対し、社会学者の Corey Keyes 氏は languishing という名称をつけました。日本語だと"衰弱"という意味ですが、要はゆるやかに不調になっている状態を指します。 languishing のやっかいなところは、これまで明確に言語化されていなかったために、症状として認識されていなかった点です。認識されていないために早期の対応が遅れ、やがて本当のうつに移行していく可能性が高いです。 元記事では、パンデ
GithubのPRや海外Slackチャンネルでチャット、はたまた英語圏のエンジニアとやりとりする等、英語で文章を書くことはしばしばあります。そんな時、自分がよく使っている方法について書きます。 先に一番大事なこと 大事なことは、英語はあくまでもツールだということです。伝えたい内容が重要であり、英文を書くことに時間かけることはエンジニアにとって不毛です。 よっぽど英語が得意な人でないかぎり、一から英作文すると時間がかかって本質的でないところで時間を消費するということです。 なので一から文章を考えるのでなく、なるべく"型"を知ることがポイントだと考えています。それを踏まえた上で御覧ください。 文章を書く アルクの英辞郎とGoogle, Githubを組み合わせる 恐らく多くの人がGoogle翻訳などを使って英文を作っているかと思うのですが、アルクの英辞郎と組み合わせるともっとはかどります。理由
先日結婚式を挙げました。式中ご参列いただいた方と簡単に写真を共有したいなと思い、そういうマイクロサービスを作ってみました。ここではどのように実装していったのかを記憶が薄れぬうちに書いていこうと思います。 着想と仕様 自分が結婚式に参列する時、写真を撮るものの、主賓に送りそびれることがよくあって、だったらそのままさくさく送れたら楽じゃんねーと思っていました。で送りっぱなしだとグルーブ感がないので、出来たらその場でシェア出来たらよいかもと考えていました。それを踏まえて仕様としては、 その場でサクサク送れる 送った写真をリアルタイムに共有できる ことを目指しました。 全体構成 全体構成は以下のようになっています。 LINE Message APIを使ってLINEのチャンネルを参列者に登録してもらい、そこから写真を投稿してもらいます。webhookを介して画像データをサーバーに渡し、CDNに保存し
"最も使われているサービスのひとつを iOS Native から React Native に作り変えた" というアナウンスメントを出し話題となった Shopify で、まさにその内容を扱った React Native の meetup があり、参加してきたので内容と所感をまとめました。 React Native is the Future of Mobile at Shopify 発表内容 検証/導入フェーズ 技術スタック React Native がもたらした効果 途中でやめたこと 追加で登壇者に聞いたこと その他の発表 React Native for Web @twitter その他もろもろ React Native is the Future of Mobile at Shopify React Native で書き換えた話はしばらく前にアナウンスしていたのですが、Shopify
モバイルアプリケーションを開発していると、この要件や仕様はクライアントとサーバーどちらに置くべきか、という議論がチームでなされることがしばしばあります。例えば、 あるレスポンスAを受けて処理Bを行い、その結果をユーザーに提示する 登録処理などで、処理C,処理Dという異なる処理を並列して行い、それらが完了したらユーザー側に通知する やろうと思えばクライアント側で処理を全て持つこともできますし、サーバー側で実装もできますね。 このような仕様のディスカッションが起きたとき、チームで統一した判断基準を持っていますか? 自分の場合、クライアントアプリはロジックをなるべくサーバーに移譲すべき という設計指針をチームに提案します。 上の例で言うならば、 サーバーから処理Bも踏まえたレスポンスA'を返してもらい、ユーザーに提示する クライアントは1リクエストをサーバーに投げる。サーバー側で処理C,Dを投げ
こともあろうにサンフランシスコで強盗にあうというステータス解除をしてしまいました。今回はその顛末と、周りの反応がアメリカっぽかったので、それについて書きます。 経緯 その日は19時半頃にオフィスを出て、最寄りの地下鉄駅(BART)に向かいました。ところが一駅移動したタイミングで車が線路に立ち入ったということで、電車が運転を停止。(そもそもこんな事態が初めて)再開を見込んで1時間ほど待ったものの結局復旧のメドは立たず、代替輸送のバスも200m位の列が出来ていたので、諦めてオフィスに戻ることにしました。 ダメだ😵 pic.twitter.com/GsWwSqe1lh— Tomoaki Imai (@tomoaki_imai) 2016年7月21日 復旧の見込みないらしい、詰んでからが勝負— Tomoaki Imai (@tomoaki_imai) 2016年7月21日 この時は余裕もあった
アメリカのベイエリアに移住して2年がたってしまいました。タイトルはベイエリアよりもキャッチーかなと思って"西海岸"にしました。ちょっとした節目であるので、環境や心境の変化などをつらつらと書きとめておこうと思います。 仕事 去年は会社のアプリをフルスクラッチで書き直すというプロジェクトがあり、業務ではずっとそれにかかりきりでした。一からアプリを作るという経験はそうそう得られるものではないので、失敗や苦労も含めてとてもよい経験でした。 開発については自由に取り組む機会があったので主として取り組んだAndroidだけでなくReactNative(Javascript), Go, Swiftなど色々なプラットフォーム、言語でコードを書きました。 多様な開発に携わるメリットとしては、その言語やプラットフォーム、フレームワークにおける思想を身につけられることでしょうか。たとえばReact Native
現在サンフランシスコに長期で滞在していています。そんな中で、これは良かったなという気づきがあったので、シェアしたいと思います。 同僚のカレーの具が多かった話 ことの発端はカレーから始まります。 オフィスから10分くらい歩くとフェリービルディングがあります。いくつかテイクアウトできるお店が入っていて、そこでご飯を買って海辺で食べることができます。 その中のひとつに日本食を提供するお店があり、カレーがうまいので同僚とよく食べていました。 ある日いつものようにカレーを買って、ふと同僚(イギリスのバイリンガル)のカレーのタッパーを見てみると、明らかに自分のより多い。肉も多い感じがする。 自分「あれ、なんか量多くないですか?」 同僚「そりゃそうだよ。ちゃんと言葉を交わしてるからね。How are you?って聞かれて、How are you?って返してる?」 自分「いや、あんまり…」 同僚「ちゃんと
近況報告です。11月頭にメルカリを退職し、サンフランシスコを拠点とするChanoma, Inc.にジョインしました。 Chanoma, Inc. では何をしているのか Chanoma, Inc. ではChompというサービスを開発しています。Chompはレストランやお店で食べたものを親しい人とシェアできるソーシャルアプリです。美味しいお店の美味しいごはんの写真はみんな撮ります。その写真はソーシャルでシェアされたり、あるいはスマホ容量の肥やしになったりします。Chompはこの写真や行ったお店の場所を、グルメな友人や家族といった人たちと気軽に共有できるサービスです。 chomp.app 現在 iOS版しかないのですが、もし興味もってもらえたらダウンロードしてユーザー名 tomoima525 に友人申請してください。飯友待ってます! なお、このようなサービスは High Value Niche
2019 年は React Native にとってはさまざまな変化があったので、それらを振返りつつこの記事では最近の React Native をめぐる状況と個人的見解について書きます。採用を検討している方、Flutter などのクロスプラットフォーム開発フレームワークと比べたいという方の参考になれば幸いです。 フラットに書くことを意識していますが、いち利用者としてのバイアスがあることをご了承ください。 開発体験 Fast Refresh Auto Linking CocoaPods の標準採用 Expo によるワンストップ開発環境構築 フレームワーク/アーキテクチャ Lean Core Android 最新の React への追随 コミュニティ What do you dislike about React Native? react-native-community 管理下のライブラリ
ツイッターで偶然見かけたプロダクト開発に関する一連のツイートが、プロダクトチームと経営陣、あるいは開発メンバーやプロダクトマネジャーの間に起きる摩擦を見事に言語化していました。 As they grow in size, teams within megacorps and startups tend to implicitly bias more towards Project Thinking and not enough Product Thinking. Product Thinking is a mindset and a process that, once you see, you cannot unsee it. Product Thinking, Project Thinking, a thread: pic.twitter.com/rbY80wTVgE— Shreyas
ReactNativeプロジェクトで、型がないことによるつらいシーンが多くなり(特に変数の解釈に起因するバグ)、Facebook製の静的型解析ツールであるFlowを数ヶ月前に導入しました。導入時の学びと、しばらく運用して感じていることについて個人的な感想を書きました。 Flow選定理由 Javascriptで静的な型付けをするといえばTypeScript(正確にはJavascriptのスーパーセット)がありますが、プロジェクト途中からの導入しやすさの観点からFlowにしました。Flowはお作法(行頭に @flow つける等)さえ押さえれば誰でも使えることから導入障壁はだいぶ低いといえます。導入のメリットについては以下のスライドがとてもわかりやすいです。 speakerdeck.com flow status でプロジェクトに対して静的型解析を走らせることもできますが、 コーディング時にワー
個人で(≒会社とは別に)サービスやOSS開発することは、会社で身につけられる以上のスキル、実績が得られたり、コミュニティを広げたりするなどメリットが多くあります。 tomoima525.hatenablog.com 自分自身もこれまでいくつかサービスやOSSを開発してきたのですが、一番課題なのが、モチベーションの継続です。最初はテンション高く開発しますが、段々とやる気が下がってきます。一旦リリースした後のメンテも面倒です。そうしていくつかのサービスをクローズしてきました(涙)。 けど、これってとてももったいないです。そこで意識して改善した結果、TwitCalというカレンダーアプリを開発期間も含めると1年間以上継続してメンテ、機能追加を続けられました。今回は自分がどうやって取り組んできたかを整理してみたいです。 ※ 飽きっぽい性格だったりなかなかサービスを継続メンテできない方向けです。たった
こちらはReact Nativeアドベントカレンダー 19日目の記事になります。 ここ1、2年でReact Nativeによるアプリ開発はますます盛んになっていますが、一方でNativeと組み合わせたとハイブリッドアプリケーション開発はまだ発展途上です。 React Nativeの公式ドキュメントにもIntegrating with existing appという項目がありますが、あっさりと書かれている上に鮮度がお世辞にも高くありません。 しかしながら、FacebookやAirbnbなど大企業がハイブリッドアプリケーションを積極的に導入していることや、Nativeアプリを部分的にリプレイスできる利便性から、今後も採用が増える分野と考えられます。本記事ではハイブリッドアプリを開発した自分の経験から、プロコンや実装の基本についてまとめました。 ハイブリッドアプリケーションの良い点/難しい点 そ
(5/29/2017追記 ‘必要不可欠’ とタイトルに書いていたら'必要不可欠でない'と指摘を受けました。なんらかのデータフローの仕組みは必要だけどReduxである必要はないのでタイトル修正しました) 最近ReactNativeをちょこちょこ書いています。アプリ向けのReactNativeを書くにあたって理解がのぞましいのがデータフローの仕組みであるRedux、及び様々な処理を仲介するMiddlewareです。小さなアプリをつくってみて一通り把握したので、整理も兼ねて初めてReact-Reduxを触れる時にどの辺を見ればよいかまとめてみます。 作ったのはChuckNorris FactsのJokeを検索して表示するアプリです。 github.com デモ動画 昨日のReactNativeアプリ続き。Reduxにローディングのステートも追加してみた。iOSとAndroidでも想定通り動く。
Android Studioでプロジェクトを新規で作る時、テンプレートは何を選択していますか? テンプレートには自動でNavigation Drawerを生成してくれるものや、最近だと広告をつけてくれるものなど色々ありますが、実際のところ、Add No Activityを選択するか、Blank Activityを選択する人が多いのではないのでしょうか。 テンプレートはプロジェクト作る時に必ず通るのですが、正直あまりイケてると思えないので、今回もうちょっとましなテンプレートを作ってみました。 Android Studioの標準テンプレートの問題点 Android Studioの標準テンプレートの問題点としては、以下があると思います。 余計なリソースファイルやコードが自動で生成されてしまう →例えば、Blank Activityだと、activityごとのmenu(menuリソース + onC
ここ数ヶ月勉強会などで発表する機会がいくつかあったのですが、最近は技術系スライドをなるべく英語で作るようにしています。そこで英語でスライドを作るメリット・デメリットとちょっとしたコツについて、書きます。 英語でプレゼン資料を作るようになったきっかけ 海外のエンジニアの友人ができたから、というのが大きかったです。自分がプレゼンしている内容を理解してもらうのであれば、英語が一番良いと考えたわけです。あと、資料は大体SlideShareに公開しています。海外の人も多く見るサービスなので、英語で発信した方が意義があるんじゃないかと思って英語で作るようになりました。 英語でプレゼン資料を作ってのメリット 実際のところ英語で資料を作るのは毎回大変なのですが、以下のようなメリットがありました。 英語の表現が学べる こういう時はどう表現するのか?といったことを学べるのは良いです。 表現の仕方に困ったときは
12月中旬から1月中旬のおよそ3週間と少しのあいだ、ヨーロッパを旅しつつリモートで仕事をしていました。自分が働いている会社は現在サンフランシスコと日本に拠点があり、日本にいるメンバーも北海道や北関東など様々な場所からリモートで働いています。今回旅行中どう働いたのかという話に加えて、旅先で気づいたリモートチームを作るためにチームが備えるべきことについて書きました。 「遠い太鼓」にあこがれて 準備 リモートで働く 良かったこと 大変だったこと リモートメンバーを迎えるために コミュニケーションコストを低くする タスクにコミットメントする仕組み作り リモートメンバーを信頼するマインドセットの醸成 まとめ 「遠い太鼓」にあこがれて 村上春樹さんの「遠い太鼓」という本はご存知でしょうか。「ノルウェイの森」を書き上げた頃の3年間を綴った旅行記です。当時村上さんはギリシャやイタリアに滞在していました。本
先日React Native Meetup Portlandという勉強会でReactNativeとNativeのハイブリットアプリ開発について発表をしてきました。アメリカの自社開催以外のの勉強会で発表することは初めてだったので、知見と反省をメモしておこうと思います。 経緯 会社のオフィスは現在サンフランシスコとポートランドにあります。ポートランドは今アメリカで一番人気な街と言われているのですが、実はスタートアップやIT企業も数多くあります。React Nativeは今人気なフレームワークで、つい先週もReact ChainというReact Native(React.jsでない)のカンファレンスが開催されたばかりです。色々な経緯でそんなポートランドのReact NativeのMeetupグループにオフィスを提供して勉強会を開くことになり、自分が発表者の1人として登壇させてもらうことになりまし
Slack上でアニメの名言を引用したい時に、スラッシュコマンドで一覧を表示できるkotoha-slackを作りました。 コードはGithubにあります。 github.com なんで作ったか Slackでアニメのセリフを引用したい時がしばしばありますよね。さくっと出てくると嬉しいのですが、そういうわけにもいきません。正確な引用を心がけたい。そんな想いでkotoha-slack作りました。 ↑のように、スラッシュコマンドでアニメのセリフ一覧を表示させることができます。この一覧は自分にしか見えないので、"あの人、アニメのセリフの宝庫半端ない...そこにシビれる!あこがれるゥ!"となること請け合いです。 元ネタは自分が愛用している @konifar さんのアニメの名言を引用できるChrome extension kotohaです。kotohaについては以下のkonifarさんの以下ブログを参照く
日本向けのアプリとUS向けのモバイルアプリを開発した経験から、よく「日本のアプリとUS向けのアプリの違いって何ですか?」と聞かれることがあります。UI、UX観点で色々な違いはあるのですが、個人的に最も違う点を挙げるなら、タイポグラフィだと思います。US、いやおそらくアルファベットを使う国のアプリは、タイポグラフィが日本のアプリと比べて圧倒的に重要視されています。 具体的にどういうことなのか、またもし海外向けアプリの設計に携わることになった時にどういう点を考慮すべきなのかについて書こうと思います。 タイポグラフィを意識したアプリ タイポグラフィはwikipediaによると 活字(あるいは一定の文字の形状を複製し反復使用して印刷するための媒体)を用い、それを適切に配列することで、印刷物における文字の体裁を整える技芸 とあります。つまりいかにフォントのレイアウトを整えていくかというのがタイポグラ
先日dots.さんが主催するAndroidオールスターズという勉強会で、"Android Clean Architectureことはじめ"と題して発表してきました。 資料はこちらになります。 Android cleanarchitecture from Tomoaki Imai www.slideshare.net また資料でお見せしたサンプルコードは https://github.com/tomoima525/CleanArchitectureSample になります。プリミティブな形でサンプルをお見せしたかったため、ほぼデファクトスタンダートとなっているRetrofitとButter Knife以外のライブラリは利用せずに書いています。 最低限の実装なので色々荒くなってるし、テストガーとか言ってたくせにテストも書けてないので、後ほどもう少しブラッシュアップしてテストも書きます。気になる
2022年 4/17 - 4/25 にかけてアムステルダムで開催された Devconnect というカンファレンスに参加したので、そこで得た知見、ブロックチェーンや web3 が向かう先について感じたことをまとめます。 Devconnect とは 参加したイベント Layer2 Amsterdam zkSummit WorldCoin meetup 注目分野/トレンド プライバシー Polygon のマスアダプションに向けた取り組み Decentralized Workers 業界の驚異的な変化 おまけ アムステルダムの様子 podcast Devconnect とは Ethereum を中心としたブロックチェーンと Web3 にまつわるトピックをテーマに、さまざまなイベントが一週間かけて開催されるカンファレンスです。トピックとしてあげられていた一覧をみるだけでも実に多岐に渡っていたとわか
テックリサーチ・レポート後編は深センの"中国のシリコンバレー"としての側面を追います。 自分は今回深センに行くにあたりなんのツテもなかったのですが、中国人の友人に現地の人を紹介してもらい、現地のテックコミュニティに少しだけ切り込むことが出来ました。現地で働く人たちの話を聞いたり、企業を訪問した結果わずかに見えてきた中国シリコンバレーの実態や、アメリカのシリコンバレーと比較して異なると感じたところについて書いていきます。 なお、前編はこちらをご覧ください。 tomoima525.hatenablog.com 深センに集まるIT企業、メーカー 深センとシリコンバレーと似ているところ 経済成長が生み出す圧倒的福利厚生 スタートアップエコシステム 少し脱線:中国のウェブ界隈/エンジニアはどんな感じ? 深センとシリコンバレーが違うところ 内需の強さ ダイバーシティ どのようなサービスもだいたい無料
「Webアプリエンジニア養成読本」という本の刊行記念でトークセッションが開催されていたので参加してきたので、その感想書きます。 Webアプリエンジニア養成読本[しくみ、開発、環境構築・運用…全体像を最新知識で最初から! ] (Software Design plus) 作者: 和田裕介,石田絢一(uzulla),すがわらまさのり,斎藤祐一郎出版社/メーカー: 技術評論社発売日: 2014/03/11メディア: 大型本この商品を含むブログ (2件) を見る 内容は「Webアプリエンジニア養成読本」の著者である和田氏(ゆーすけべー/「ボケて (bokete)」開発者)、石田氏(フリーランスエンジニア)、すがわら氏(『パーフェクトRuby』共著者)、斎藤氏(株式会社ハートビーツ 運用エンジニア)の4人が、webサービスを作る楽しさをざっくばらんに話すといったものでした。 なるほどなーと思った言葉
Google I/O 2018で発表された新機能であるAndroid App BundleとDynamic feature modulesが大規模アプリのペインポイントを解決しそうなので、早速利用/サンプルプロジェクトを触ってみた所感などを書きます。(5/9Dynamic featureのテスト方法について更新しました) Android App Bundle Android App Bundleはリソースやネイティブライブラリを分離し、PlayStore側で端末ごとに適切なリソースを含んだapkを提供できる機能です。 具体的には Base APK 基本的な機能を含んだapk Configuration APKs 言語リソースや画面濃度、ネイティブライブラリ、CPU言語を含むapk Dynamic feature APKs 後述するDynamic feature modulesを含んだapk
表題の通りなのですが、アムステルダムにて Devconnect というカンファレンスに参加した際に Covid-19(コロナ)が陽性となってしまい、2 週間も滞在を延長することになってしまいました。この記事では陽性診断から陰性になるまでの経緯と、海外出張先で Covid-19 にかかった場合にどうすればよいかという知見を共有します。なお、状況は刻々と変化するため、同じ状況の方はまず政府ウェブサイトを確認し、大使館へ相談することをおすすめします。 経緯 4/24 - 4/27 4/28 - 5/4 やったほうがよいこと 予定を柔軟にしておく 陽性になったら現地の政府機関とコミュニケーションを取る 電話を受け取れる/かけられる simにする 現地の知り合い探す 海外保険入る まとめ 経緯 4/24 - 4/27 当初 4/25 にアムステルダムを発ち日本へ行く予定でした。現在日本に入国するため
2/20-2/24にMercari Tech Researchのメンバーとして、中国のシリコンバレーと呼ばれる深センと広州を訪問してきました。興奮冷めやらぬうちにレポートします。 テックリサーチとは? メルカリで去年から始まった施策です。諸外国を訪問し、その国のITサービスや暮らしを調査したり、現地テックコミュニティと交流します。調査結果は社内での報告会やテックリサーチナイトで発表し、そこで得た知見や、現地コミュニティとの繋がりをプロダクト企画/開発に活かすというのが主な目的です。 訪問する国に特に制約はないのですが、やはりITによる発展が著しい国に行く傾向が強いです。これまでに中国以外だとエストニア、インド、フィンランド、シンガポール、アメリカ(ニューヨーク)などのリサーチ実績があります。 mercan.mercari.com 今回自分が深センを選んだ理由はずばり深センが中国のシリコンバ
つい先日、Solana というブロックチェーンを使ったオンラインハッカソンに参加し、1 つのプロダクトをローンチしました。この記事はブロックチェーンについて全く無知の状態から2ヶ月後にスマートコントラクト(Solana ではプログラムと呼びます)を書き、アプリケーションをリリースするまでの記録です。 この2ヶ月ブロックチェーン界隈では NFT の流行を筆頭にさまざまな出来事があり、それらもかいつまんで振り返ってます。ブロックチェーンの知識がなくても 大丈夫なように用語集やコラムも添えました。だいぶ長くなっちゃったので、用語とコラムは後から読むのを推奨です。 それではどうぞ! 成果物 はじまりは 退屈なサルと暗号ゾンビ 用語集その 1 コラム 1: 開発者目線でみるブロックチェーン Solana Summer 用語集その 2 Solana ことはじめ コラムその 2: Solana はなぜ速
次のページ
このページを最初にブックマークしてみませんか?
『tomoima525's blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く