タグ

yo_wakaのブックマーク (8,582)

  • OOUI実践のコツ | 新規サービスに導入してわかった、5つのこと|スマートキャンプ デザインブログ

    こんにちは、スマートキャンプ デザイナーの柿澤です。 現在、新規サービスのローンチに向けてデザインをしているのですが、その際にOOUI(オブジェクト指向ユーザーインターフェース)を実践する機会がありました。 OOUIの概念自体は前から知っていたのですが、業務として使ったことはなく、実際に取り組んでみるとを読むだけでは理解することのできなかったこと、実践する中で躓いたことやその際の考え方などが勉強になったので、記事ではそれらのことについて紹介していこうと思います。 そもそもOOUIとはOOUIとはユーザーの目当てとなるオブジェクト(もの、名詞)を中心にUIを設計することで、タスク(やること、動詞)をもとに設計するよりも使いやすく開発効率の高いUIを構築することができる設計手法になります。(ざっくりですみませんw) 今回の記事では手法論は割愛させていただきますので、ご興味ある方はぜひ専門書

    OOUI実践のコツ | 新規サービスに導入してわかった、5つのこと|スマートキャンプ デザインブログ
    yo_waka
    yo_waka 2023/08/27
    言語化できるデザイナーさんがまた1人誕生した
  • https://www.amazon.co.jp/dp/B08B68LM7R

    yo_waka
    yo_waka 2023/08/26
  • いいねとその通知機能をDynamoDBで設計したら思ったよりムズい - エムスリーテックブログ

    【Unit4 ブログリレー4日目】 こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 今回は、SNSではごく一般的ないいねとその通知機能をDynamoDBを利用して実装したら思ったより大変だったので、その詳細をご紹介します。 キャナルシティ劇場は、福岡県福岡市博多区の複合商業施設「キャナルシティ博多」のシアタービル最上階に位置する劇場。文には特に関係ありません。 m3ラウンジ m3ラウンジのいいねとその通知の要件 RDBで実装したらどうなるか いいね機能 通知機能 DynamoDBで実装する いいね機能 通知機能 いいねする いいねを取り消す 通知を表示する 未読の通知の取得 未読の通知数 未読の通知を既読にする テーブル設計むずい PKとSKに何を選ぶか LSIは途中から作れない DynamoDBをローカルで動かして設計する まとめ We are h

    いいねとその通知機能をDynamoDBで設計したら思ったよりムズい - エムスリーテックブログ
    yo_waka
    yo_waka 2023/08/25
  • Rust の hyper は何が嬉しいか

    Rust でWebサーバーを書く時の技術選定をするときに調べていると hyper に必ず出会うと思う。これは黎明期から存在しているライブラリで、Webサーバーにしては珍しく version 1 まで到達している老舗だ(1に到達してたら安心って考え方が正しいかはさておき...)。このライブラリは actix-web や axum のような他のライブラリとは毛色が違い、かなり primitive だ。そのため axum のベースに使われてもいて、hyper はそのまま使わないライブラリなのかもしれない。 サンプルコードから存在意義がわかりにくい さて、そんな hyper だが公式の example はこのようになっている。 #[tokio::main] async fn main() -> Result<(), Box<dyn std::error::Error + Send + Sync>>

    Rust の hyper は何が嬉しいか
    yo_waka
    yo_waka 2023/08/22
  • Blogged Answers: My Experience Modernizing Packages to ESM

    Random musings on React, Redux, and more, by Redux maintainer Mark "acemarke" Erikson This is a post in the Blogged Answers series. Details on the painful experiences and hard-earned lessons I've learned migrating the Redux packages to ESM Table of Contents 🔗︎ Introduction Redux Packages Background Packages and Configurations Issue History Early Attempts Migrating to Vitest Initial Alpha Testing

    Blogged Answers: My Experience Modernizing Packages to ESM
    yo_waka
    yo_waka 2023/08/21
    すごい。。。
  • 第2章 詳解QUIC ~ TCPに代わり下位層で使用する新しいトランスポートプロトコル | gihyo.jp

    章では、HTTP/3がTCPに代わって下位層で用いるQUICについて解説します。 QUICはトランスポートプロトコル QUICはトランスポートプロトコルです。QUICの説明に入る前に、トランスポートプロトコルついておさらいします。 TCP/IPの4階層モデル プロトコルは階層で役割を分担しています。TCP/IPの4階層モデルでは、アプリケーション層、トランスポート層、インターネット層、ネットワークインタフェース層に分かれます(図1⁠)⁠。 図1 TCP/IPの4階層モデル アプリケーション層に分類されるアプリケーションプロトコルは、クライアントやサーバで動作するアプリケーションの動作に関するデータやメッセージの通信ルールを規定します。たとえばSMTP(Simple Mail Transfer Protocol)は、メールを送信する通信ルールを規定しています。HTTPはこの層に属します。

    第2章 詳解QUIC ~ TCPに代わり下位層で使用する新しいトランスポートプロトコル | gihyo.jp
    yo_waka
    yo_waka 2023/08/19
  • MySQLとOracleの実行計画を比較してみた - ASMのきもち

    まいえすきゅーえりたい ぽすぐれない おらくるってる(狂ってる)tomoです。 今日はいつものMySQLリファレンスを読むではなく、夏休みの宿題にしていたこれをやってみます。 MySQLOracleDBの実行計画を比較してみた さて同じようなテーブルで同じデータを載せて。 実行計画を取ってみた時、どのくらい情報量が違うのか簡単に違いを見てみましょう。 前提として、以下をご認識ください。 一方はOSSのDBエンジン、もう一方はガチガチ商用DBエンジンです。情報量が違うのは当たり前であって、良し悪しを比較したいのではありません。そして製品比較をしたいのではありません。いつも商用DBメインで使っているエンジニアが、OSSのDBにこうゆう情報も出してほしいな!というのをお願いしたいと思っていて、それを考える元ネタメモだと思ってください。 OSSでこれだけの情報出せるMySQLや、今回紹介しません

    MySQLとOracleの実行計画を比較してみた - ASMのきもち
    yo_waka
    yo_waka 2023/08/19
  • ブルーライトカットのめがね、目の負担軽減の助けにならず 国際研究で結論

    ブルーライト対策の眼鏡に短期的な利点がない可能性があるとの研究が報告された/Vadym Plysiuk/iStockphoto/Getty Images/FILE (CNN) めがねにブルーライトをカットするフィルターを付けても、コンピューター作業による目の負担を軽減したり、網膜を保護したり、睡眠の質を改善したりする効果は期待できないかもしれない――。そんな研究結果が17日の学術誌に発表された。 論文を発表したオーストラリア・メルボルン大学のローラ・ダウニー氏は、「コンピューター使用に伴う目の疲れを軽減するためのブルーライトフィルター付きめがねレンズを使っても、短期的にはメリットがない可能性があることが分かった」と解説する。 「そうしたレンズが見え方の質や睡眠関連の結果に影響を及ぼすかどうかについても今のところは不明で、長期的な網膜の健康に何らかの影響を与える可能性についても結論は出せなか

    ブルーライトカットのめがね、目の負担軽減の助けにならず 国際研究で結論
    yo_waka
    yo_waka 2023/08/19
  • 2023-08-14 10年勤めたfreeeを辞めて零細企業を作った - waka.dev

    日記です。 タイトルの通り10年勤めたfreee株式会社を退職して、自分で会社を作ってやっていくことにした。 freee最終出社でした、10年間ありがとうございました!(ビルを見上げる写真撮り忘れた) 次回作にご期待ください! — yo_waka (@yo_waka) June 16, 2023 やってきたことはこの辺のスライドによくまとまっている。 https://speakerdeck.com/waka/da-kinapurodakutofalseyu-tefang 社員5人から1000人になったり、ARRゼロ円からARR200億円になったり、ヤバかった品質をどうにか底上げしたり、開発部長の立場で上場を経験したり、普通では経験できないことを濃度高く経験できて楽しく過ごせた10年だった。 freee会計という業務系Webサービスを10年間機能面/パフォーマンス/品質面共に育ててきた経験

    2023-08-14 10年勤めたfreeeを辞めて零細企業を作った - waka.dev
    yo_waka
    yo_waka 2023/08/14
    日記です
  • 認可のアーキテクチャに関する考察(Authorization Academy IIを読んで)

    みなさま、認可の設計に苦しんでいるでしょうか?私は苦しんでいます。苦しまなかった瞬間などありません。昔「アプリケーションにおける権限設計の課題」を執筆しましたが、あれから3年以上が経ちます。 当時は認可の設計に関する情報がうまくまとまっている記事などほとんど無く、調べに調べて得たナレッジを書き記したのが上記の記事です。3年以上経ちますが、苦悩が今も特に変わっていないことが驚きです。 ただし、世の中的には認可のライブラリであったりサービスというのは少しずつ増えてきている印象があります(Auth0の OpenFGA であったりOsoの Oso Cloud 、Asertoの Topaz )。 認可の設計に関する記事も少しずつ増えている印象があり、その中でも記事で紹介したいのがAuthorization Academyです。 これは認可サービスである Oso Cloud やOSSのライブラリ o

    認可のアーキテクチャに関する考察(Authorization Academy IIを読んで)
    yo_waka
    yo_waka 2023/08/14
  • TypeScriptの`infer`を一撃で理解する - reosablo.blog

    準備運動 たとえば「Foo型要素を持つ配列」や「Foo型でfulfillされるPromise」、「Foo型のプロパティ"abc"を持つオブジェクト」の型を定義しようとすると下記のようになる。 type FooArray = Foo[]; type FooPromise = Promise<Foo>; type FooContainer = { abc: Foo }; この記事にたどり着いた人であればここまでは理解できるはず。 inferの使いどころ では逆に、「何かの型を持つ配列」や「何かの型でfulfillされるPromise」、「何かの型のプロパティ"abc"を持つオブジェクト」の「何かの型」を得たい場合はどうするか。 ここでinferの出番となる。 // 注意: このコードは型安全ではありません。 type ArrayOf<T> = T extends (infer U)[] ? U

    TypeScriptの`infer`を一撃で理解する - reosablo.blog
  • Business Source License 1.1

    HashiCorp が OSI オープンソース・ライセンス のソフトウェア (以降 OSS) 製品を Mozilla Public License 2.0 (以降 MPL) から Business Source License 1.1 (以降 BUSL) にライセンス変更して話題になっています。 自社は主力製品はクローズドソース、それ以外は Apache License 2.0 で OSS として公開という戦略をとっていることもあり、 BUSL について自分の考えを雑に書いておこうと思います。 法律の専門家ではないので、間違いもあると思います。きっちり理解したい人は弁護士に相談しましょう。

    yo_waka
    yo_waka 2023/08/13
    大企業と中小の要件の違いとパクり防止
  • Kafka is dead, long live Kafka

    TL;DRWarpStream is an Apache Kafka® protocol compatible data streaming platform built directly on top of S3. It's delivered as a single, stateless Go binary so there are no local disks to manage, no brokers to rebalance, and no ZooKeeper to operate. WarpStream is 5-10x cheaper than Kafka in the cloud because data streams directly to and from S3 instead of using inter-zone networking, which can be

    Kafka is dead, long live Kafka
    yo_waka
    yo_waka 2023/08/12
  • How an AWS Aurora feature cut our DB costs by 90%

    All of Graphite’s data lives on Amazon Aurora Postgres. Our database load is sizable — far larger than a typical startup of our size. This is because we sync bidirectionally with GitHub for everything a user does on Graphite, so Aurora plays a crucial role in helping us handle and scale massive amounts of data. If Uber were to sign up for Graphite tomorrow, we could handle the countless webhook ev

    How an AWS Aurora feature cut our DB costs by 90%
    yo_waka
    yo_waka 2023/08/12
  • GitHub - google/typograms

    Typograms (short for typographic diagrams) is a lightweight image format (text/typogram) useful for defining simple diagrams in technical documentation, originally developed here. See it in action here: https://google.github.io/typograms/ Like markdown, typograms is heavily inspired by pre-existing conventions found in ASCII diagrams. A small set of primitives and rules to connect them is defined,

    GitHub - google/typograms
    yo_waka
    yo_waka 2023/08/12
  • React

    2023年度リクルート エンジニアコース新人研修の講義資料です

    React
    yo_waka
    yo_waka 2023/08/12
    大作
  • Rails 6.1のままRuby 3.2にアップデートし、YJITの恩恵を受ける

    先日、携わっているサービスで一番大きいRailsアプリをRuby 3.2にアップデートし、YJITを有効化できました。 方針を検討した結果、今回はRails 6.1およびPsych 3系のままRuby 3.2にアップデートする戦略をとったため、その手順をまとめます。 先週にメインのサービスをRuby 3.2にしてYJITを有効にできました! 実際に速くなったし嬉しい大YJIT記念日だ🎉 https://t.co/Wkhc6fDfj9 — Hiroshi Shimoju (@shimoju_) July 19, 2023前提#今回のRailsアプリはサービスの機能がほぼすべて詰まっているモノリスで、歴史も8年と比較的長いです。 アップデート前のバージョンはRuby 3.0、Rails 6.1で、Psychは3系。 正攻法では、おおむね以下の手順でアップデートを進めていくことになります。 R

  • Web API設計時に使われ方の想定を添えると良い。けどより良いやり方を知りたい - valid,invalid

    先日登壇したイベントにて、仕事で協業したモバイルエンジニアから「Web APIのドキュメントに使われ方の想定が添えられていてありがたかった」とフィードバックをもらった。 具体的にはX post (以下、tweet) に添付した画像のような感じで、Web API (以下、API) が呼び出される画面・タイミングの想定、レスポンスの使われ方の想定などをUIのスクショとともに記述する、というもの。 API設計時にこういう使われ方の想定を添えると認識揃えやすくてありがたい、とモバイルエンジニアに喜ばれました#B43_techtalk pic.twitter.com/XLB3g6fCLZ— ohbarye (@ohbarye) 2023年8月3日 他にもこんなのとか。 APIレスポンスの使われ方の想定を書いているようす このことについて思ったよりもイベント内外で反響があったので書く。 ドキュメントの

    Web API設計時に使われ方の想定を添えると良い。けどより良いやり方を知りたい - valid,invalid
    yo_waka
    yo_waka 2023/08/09
    OpenAPIだと足りない、わかる
  • Ruby のバージョンを 3.1 系から 3.2 系にアップデートしたら Ruby on Rails アプリの動きが変わったのを解決した話 - DIGGLE開発者ブログ

    私たちは Ruby on Rails の主要なマルチテナントライブラリ apartment を使ってサービスを提供しています。 Ruby のバージョンを 3.1 系から 3.2 系に上げたときに CSV ファイルを処理する部分でこのテナントの切り替えが意図通りに動作しませんでした。 この事象が興味深かったので共有します。 現在はこの事象に対応済で、私たちの環境は Ruby3.2 系で動作しています。 apartment ではマルチテナント対応部分をほとんど吸収してくれるので、アプリケーションのコードのほうにはあまりマルチテナント特有の処理が出てこず、個別処理のコードに集中できるメリットがあります。 事象が発生したコードは以下のような形式でした。 CSV.parse(filename, headers: true, header_converters: ->(header) { curren

    Ruby のバージョンを 3.1 系から 3.2 系にアップデートしたら Ruby on Rails アプリの動きが変わったのを解決した話 - DIGGLE開発者ブログ
    yo_waka
    yo_waka 2023/08/01
    apartment gem情報だ
  • ご自身で立ち上げたHearableと二宮企画で活躍中の id:nmy を訪問 | はてな卒業生訪問企画 [#5] - Hatena Developer Blog

    こんにちは、CTOの id:motemenです。 Hatena Developer Blogの連載企画「卒業生訪問インタビュー」では、創業からはてなの開発に関わってきた取締役の id:onishi、CTOの id:motemen、エンジニアリングマネージャーの id:onkが、いま会いたい元はてなスタッフを訪問してお話を伺っていきます。 id:motemenが担当する第5回のゲストは、2021年6月に二宮企画株式会社、2022年11月にHearable株式会社を設立し、Webサービス開発に関する企画やコンサルティングを営む id:nmyさんこと、二宮鉄平さんです。 株式会社プロハウスでチーフデザイナーとして活躍後、ヤフー株式会社に転職。ディレクターとしての経験を積み、2007年5月にはてな初のディレクター職として入社。2008年には任天堂株式会社とのプロジェクトである「うごメモシアター」「

    ご自身で立ち上げたHearableと二宮企画で活躍中の id:nmy を訪問 | はてな卒業生訪問企画 [#5] - Hatena Developer Blog
    yo_waka
    yo_waka 2023/07/31
    いい話だった