katsukiniwaのブックマーク (3,229)

  • When Walking like SREs

    at https://yuru-sre.connpass.com/event/317749/

    When Walking like SREs
  • Storybook v8 の React Server Components サポート

    Storybook v8 の React Server Components サポート 2023.12.09 Storybook v8 では `experimentalNextRSC` オプションにより React Server Components をサポートしています。しかし、このオプションは React Server Components としての動作を再現しているわけではありません。サーバーサイドで Storybook が動作してるわけではなく、非同期コンポーネントをクライアントでレンダリングしているに過ぎないことに留意すべきです。 Storybook v8 より、experimentalNextRSC というオプションが追加されました。このオプションは true に設定することで、実験的に React Server Components をサポートします。 Storybook v

    Storybook v8 の React Server Components サポート
  • 雑に作って、それから作り込んで、最後にテストを書く「テストラスト」開発 - give IT a try

    (この話は最初Twitterに書こうと思ったけど、長くなるのでブログに書くことにしました) 僕はRSpecやMinitestでテストを書くのは得意ですが、常にテストファースト(TDD)で開発するとは限りません。 今業務でやってるタスクはこんなふうに進めてます。 雑に動くものを作る ↓ 見た目をきれいにする&機能を作り込む ↓ テストを書く ↓ リファクタリングする この順番で開発する理由を以下に述べます。 雑に動くものを最初に作る理由 最初は見た目とか、異常系とか、細かい仕様とかを無視して、正常系が一通り動くものを作ります。 これはこれから作ろうとしているものの認識が合っているかどうかをPO(プロダクトオーナー)に確認するためです。 実際に動く画面を見せると「こんな感じでOK」とか「ここはこういうふうにしたい」というフィードバックをもらうことができます。 また、開発者としてもコードを書きな

    雑に作って、それから作り込んで、最後にテストを書く「テストラスト」開発 - give IT a try
  • メンタルが弱いエンジニアが安心して開発するために気をつけていること - SMARTCAMP Engineer Blog

    スマートキャンプで業務委託でエンジニアをしている佐藤です。BOXILの開発を1年3ヶ月前から、沖縄からフルリモートでやっています。 皆さんは、毎日楽しくお仕事できていますか? エンジニアという職業は労働時間やストレスが多く、IT業界は他の業界と比べて精神疾患にかかりやすいと言われています。 私はもともと自己否定ばかりしてしまう思考の癖があることに加えて、7年前に起業に失敗してメンタルを壊してしまったことをいまだに引きずっていて、日々悩みながら生活をしています。 スマートキャンプは、過労とは無縁で、メンバー間のサポートもよく、これ以上ないくらい私に合った職場です。それでも自分の心の問題で不安になったり、絶望感に襲われたりすることがあります。今回はそうなるたびに書き綴ったメモを、開発中にネガティブな気持ちにならないための技術としてまとめようと思います。 メンタルが強くないエンジニアはこんな気持

    メンタルが弱いエンジニアが安心して開発するために気をつけていること - SMARTCAMP Engineer Blog
  • コードレビューにラベルを付けるだけでチームの心理的安全性を高めた話

    ハコベルシステム開発部のおおいし (@bicstone) です。普段はフロントエンドエンジニアとして物流DX SaaSプロダクトの開発を行なっています。 この記事ではハコベルの開発チームが心理的安全性の向上を目的に採用した、プルリクエスト (マージリクエスト) コメントにラベルを付ける手法についてご紹介します。 背景 プルリクエストをレビューする時、レビュアーとして上から目線になってしまい相手を傷つけないか緊張したり、ちょっとした確認のつもりで書いたコメントが修正必須と捉えられてしまったりした経験はないでしょうか。 来、ピアレビューは対等な関係であるはずなのに、レビューする側の方が上になってしまいお互いに恐縮してしまいがちです。「勘だと怪しいけど間違っていたら怖いから言えないな」や、「将来的に辛くなりそうな実装だけどわざわざ指摘するほどでもないな」など荒波を立てずにApproveしてしま

    コードレビューにラベルを付けるだけでチームの心理的安全性を高めた話
  • コードレビューの目的と考え方 - osa_k’s diary

    まえがき コードレビューの目的 大目的 小目的 チェックリスト 優先度高(大きな損失を生む問題・後からの修正が困難な問題) 優先度中 優先度低(システムに大きな影響を与えない問題・後からの修正が容易な問題) レビューを負担にしないために レビューサイズのコントロール 誰がレビューをするか 議論をどうまとめるか 批判と個人攻撃 レビュワー向けアドバイス Code author向けアドバイス 参考文献 まえがき コードレビューの有効性が説かれるようになって久しい。しかし、コードレビューをするべきという観念ばかりが先立ってしまい、何のためにコードレビューをするのか、どのような点をレビューするべきなのかといった、目的や進め方に対する意識が曖昧なケースも数多くあるように思われる[6]。コードレビューの目的を理解せずに惰性でレビューしているだけでは、いずれレビューそのものが形骸化し、単に承認のハンコを

    コードレビューの目的と考え方 - osa_k’s diary
  • PR-Agent×GitHub Action×Azure OpenAIで実現するAIコードレビュー - ROUTE06 Tech Blog

    Pull requestのタイトルや説明文を書いている時、「これ絶対AIでできるよな」と感じたことがある開発者は少なくないと思います。 もちろん変更の経緯や背景など、コードの差分からは読み取れない情報もありますが、コードの差分からわかることはAIが書いてくれるといいですよね。 この願いを叶えてくれるのがCodiumAIが提供しているPR-Agentです。GitHub Actionで実行でき、OpenAIはもちろんAzure OpenAIAmazon Bedrockも使えます。 PR-Agentはすでにいろいろなところで取り上げられています*1 *2 *3ので、このブログ記事では、これまでにあまり紹介されていないPR-AgentでLLMとしてAzure OpenAIで使う方法と、使ってみた感想を紹介します。 どうしてPR-Agentを使うのか コードレビューをできるAIエージェントはいくつ

    PR-Agent×GitHub Action×Azure OpenAIで実現するAIコードレビュー - ROUTE06 Tech Blog
  • 中級 Vim 操作

    この記事は Vim 駅伝 の 06/05 の記事です。 前回の記事は thinca さんによる、 06/03 の「Meguro.vim #23 を開催しました」という記事でした。 次回は 06/07 に投稿される予定です。 はじめに 記事は以下の記事のオマージュです。 Vim の基操作のうち、比較的マイナーながら汎用的に使える機能や小技を集めました。プラグインや複雑な設定が必要なものは含まれておらず、いずれも VimNeovim の両方で使うことができます。気になったものがあれば使ってみてください。 ノーマルモード編 検索結果を次々と置き換える Vim で文字列置換を行う最も有名な方法は :substitute コマンド (短縮形: :s) ですが、ノーマルモードの cgn というイディオムも便利です。これは c オペレータと gn テキストオブジェクト (:h gn) を組み合

    中級 Vim 操作
  • CSSの新機能にどのように向き合えばよいか、新しいことを学んだり覚えることは頭の固い人には難しい

    ここ数年、CSSの進化はとても早いと感じている人は少なくないと思います。当ブログでもCSSの新機能をたくさん紹介してきましたが、一昔前にはこんなことができるようになるとは驚くばかりです。 そんなCSSの新機能に対して、どのように向き合えばよいのか、実際にどのように使用すればよいのか、その手引きとなる記事を紹介します。 元記事の「Old Dogs, new CSS Tricks」は、わたし達は老犬であり、老犬のような年配者や頭の固い人には新しいことを学ぶのは難しい、というニュアンスです。 Old Dogs, new CSS Tricks by Max Böck 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに 新機能による疲れ サポートを言い訳にする 目に見えない改善 実際の使用例とデザイントレンド 習慣を断ち切る 確立さ

    CSSの新機能にどのように向き合えばよいか、新しいことを学んだり覚えることは頭の固い人には難しい
  • 入社2年目の悩みー仕事と競プロの両立についてー - 競プロ始めました-kaede2020-

    0.はじめに 1.仕事のこと 2.体力が続かない 3.離れてみてわかったこと 4.仕事で何を目指すのか 5.競プロで何を目指すのか 6.そしてまた日常が始まる 7.終わりに 8.おまけ(その後のこと) 0.はじめに 昨年の2023年2月1日にAtCoder株式会社に入社しました。おとぎ話にたとえるならば、「めでたしめでたし」と全てが円満に終わって、その後は読者の想像にまかせることになるのだと思います。しかし、それがスタートであるというのは、ある程度の人生経験があればきっとわかるのではないかと思います。 前だけを見て走り続けた1年でした。 1年経ってやっと少しだけ周りの景色を見る余裕ができました。このまま後14年、定年までこの速度で走り続けられるのだろうか。そう思ったとき、私の足は前へ進まなくなってしまいました。そして立ち止まった私は、この1年間、四六時中AtCoderのことを考えていたのを

    入社2年目の悩みー仕事と競プロの両立についてー - 競プロ始めました-kaede2020-
  • メトリクス、ログ、トレースをうまく使い分けて可観測性を高めよう!

    イベント名: オブザーバビリティ再入門 - 大切さと高め方を知ろう! イベントURL: https://mackerelio.connpass.com/event/316449/ 概要: 可観測性の概念を理解し、OpenTelemetryなどの実装に必要な道具があっても、自分たちのプロダクトやチームにどう適用させていけばよいのかは、自分たちで考え、設計しなければなりません。開発チームがメトリクス、ログ、トレースをどういった基準で採用していくかについて、具体例を用いながらお話します。

    メトリクス、ログ、トレースをうまく使い分けて可観測性を高めよう!
  • 入門 電気通信事業者

    CTO協会 2024年合同新卒研修のLT

    入門 電気通信事業者
  • Daggerを使ったprogrammable CI/CD - RAKUS Developers Blog | ラクス エンジニアブログ

    はじめに こんにちは! エンジニア2年目のTKDSです! この記事ではDaggerについて紹介します。 この記事は課内で行ったLTをもとにしたものです。 はじめに Daggerとは? アーキテクチャ概要 Dagger Function Dagger Module 実際につかってみる ユースケース1:テストのパイプラインを記述 ユースケース2:DB依存の単体テストでDBのコンテナを用意する まとめ Daggerとは? CIの関数(Dagger Function)化 関数をCLI、SDK、HTTPリクエストなどから実行可能 関数→モジュールにして再利用可能 既存のモジュール(自分や他人が作ったもの)を再利用可能 一度書けばどこでも(ローカルPC、Actionsなど)実行可能 以上の特徴を持つ、コンテナ内でパイプラインを実行する、プログラム可能なCI/CD エンジンです。 アーキテクチャ概要 D

    Daggerを使ったprogrammable CI/CD - RAKUS Developers Blog | ラクス エンジニアブログ
  • プライベートでMac使うのやめた

    最近、自分のプライベートの開発環境を大きく変えたので紹介する。 先にまとめ プライベートではMacを使わなくなった 家にUbuntuが入ったミニPCを置いた 外からはThinkPad X1 CarbonからTailscale経由のSSHで家のミニPCに接続 購入まで まず、自分にとって最も大きな変化はプライベートでMacを使わなくなったことだ。2013年くらいにプログラミングを始めてからずっとメインのOSはMacだったので、約10年ぶり、ほぼ初めての非Mac環境である。 自分の普段の開発のユースケースは、Webアプリケーション開発とNode.js上で動くソフトウェアの開発、WebKitへのコントリビューション、たまにRustGoやC/C++で自分専用ツールの開発、くらいなので別にMacで困っているわけではなかった。Web開発やNode.js上のソフトウェアの開発はまあ普通にMacで困らな

    プライベートでMac使うのやめた
  • FXで150万円損切りした😭😭😭 - かみぽわーる

    人生なにごとも経験…150万円の損切りを経験したからこそ語りたくなることもある😭😭😭 あぶねえから150万ぐらい損切りしたわ…😭😭😭 https://t.co/7jRSInFJHj pic.twitter.com/rZW20yUF5T— Ryuta Kamizono (@kamipo) June 4, 2024 FXに興味をもったのは、Twitter(現𝕏)でこのツイートを見たのがきっかけだった。 そういや年明けに、ちょっとだけ裕福な旧友(純資産8000万らしい)がFXやりたいというので仕組みを教えたら、2000万ぐらいいきなり証拠金ぶっこんで、200万枚ぐらいドル円ロング(建値146円)して、利確せずに毎日スワップ数万円を受け取る生活を送っているということが判明w…— りきまる😊 (@rikimaruwash) April 6, 2024 これを見た時点ではドル円ロングも

    FXで150万円損切りした😭😭😭 - かみぽわーる
  • 年齢は関係なくカラダを変えられる。井口裕香、本気のカラダ作りの舞台裏 | Tarzan Web(ターザンウェブ)

    整える 鍛える 日の健康のため「水泳」ができること。水泳の歴史を継ぎ、未来へ繫ぐ。私たちが泳ぐ理由 2024.07.05 PR

    年齢は関係なくカラダを変えられる。井口裕香、本気のカラダ作りの舞台裏 | Tarzan Web(ターザンウェブ)
  • RDBの限界とNoSQLの登場 - Qiita

    事実世界のインターネット人口が増えたのは1990年代からだ。 [引用] http://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h10/html/98wp2-3-1f.html [引用] http://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h29/html/nc144210.html NoSQLの登場 1990年に入るとインターネットの利用人口が急激に増加することになる。 この頃からトランザクションに最適化されて設計されたDBでは性能劣化が始まり、システムはデータベースに対しスケール性能を必要とし始める。 多くの開発者は、単一の強力なサーバーでリレーショナル・データベースを実行するのではなく、リレーショナル・データベース管理システム (RDBMS) のパーティショニング (シャーディング

    RDBの限界とNoSQLの登場 - Qiita
  • Amazon Auroraの先進性を誰も解説してくれないから解説する - Qiita

    TL;DR; Amazon AuroraはIn-Memory DBでもなくDisk-Oriented DBでもなく、In-KVS DBとでも呼ぶべき新地平に立っている。 その斬新さたるやマスターのメインメモリはキャッシュでありながらWrite-BackでもなくWrite-Throughでもないという驚天動地。 ついでに従来のチェックポイント処理も不要になったのでスループットも向上した。 詳細が気になる人はこの記事をチェキ! Amazon AuroraAWSの中で利用可能なマネージド(=運用をAWSが面倒見てくれる)なデータベースサービス。 ユーザーからはただのMySQL、もしくはPostgreSQLとして扱う事ができるのでそれらに依存する既存のアプリケーション資産をそのまま利用する事ができて、落ちたら再起動したりセキュリティパッチをダウンタイムなしで(!?)適用したりなどなどセールストー

    Amazon Auroraの先進性を誰も解説してくれないから解説する - Qiita
  • explainだけじゃわからない!MySQLのindexの考え方 - BASEプロダクトチームブログ

    はじめに こんにちは、バックエンドエンジニアのSakiです!バックエンドでPHPを書いたり、PHPという言語そのもののメンテナーもしています。 この度、注文データダウンロードAppのパフォーマンスをアップさせるため、とても入念にデータベースまわりの処理を見直しました。その中でも特に速度に関わってくる「index」についての考え方をまとめたいと思います。 この記事はMySQL(InnoDB)についての記事であり、他のRDBについては当てはまらない場合もあるということにご注意ください。 indexとは何か、おさらい ご存知の方ももちろん多いと思いますが、indexについておさらいさせてください。 indexとは辞書でいうところの目次に相当するもので、目的のデータをいち早く検索するために重要なものです。もし辞書に目次が存在しなかった場合、目的の情報を探すのにとても苦労するだろうというのは想像しや

    explainだけじゃわからない!MySQLのindexの考え方 - BASEプロダクトチームブログ
  • Redis Pub/Subを使って、ライブ配信の同時視聴数を10倍増やした話 | CyberAgent Developers Blog

    こんにちは、AmebaLIFE事業部の「ピグパーティ」でバックエンドエンジニアをしている松岡穂高です。 今回は、RedisのPub/Subを使用して、「ピグパーティ」のライブ配信機能(以下、観覧機能)において高い同時視聴数でも安定して配信できるように改善をしたため、その事例を紹介したいと思います。 ピグパーティとは 「ピグパーティ」とは、仮想空間内でなりきりたいアバター(ピグ)を作って、ピグのきせかえや自分のお部屋のもようがえをしながら楽しむ、アバターSNSサービスです。 背景 観覧機能は、もようがえをしたお部屋でパーティを開催し、ボイスチャットやコメント機能を使って配信者と視聴者(以下、観覧ユーザー)が交流するための機能です。 普段の運用では負荷に問題はありませんでしたが、最近ではVTuberとのコラボイベントで大規模な観覧パーティを行う機会が増えました。既存の仕様では負荷に耐えること

    Redis Pub/Subを使って、ライブ配信の同時視聴数を10倍増やした話 | CyberAgent Developers Blog