並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 1745件

新着順 人気順

YYYの検索結果41 - 80 件 / 1745件

  • TerraformモノレポCIのセキュア化 | メルカリエンジニアリング

    ※本記事は2022年1月22日に公開された記事の翻訳版です。 この記事は、Developer Productivity Engineering Campブログシリーズの一環として、Platform Infraチームの Daisuke Fujita (@dtan4)がお届けします。 メルカリでは、すべてのクラウドインフラを宣言的構成で管理することがプラットフォームの中核となる考え方の一つです。メインのクラウドプロバイダーはGoogle Cloud Platform(GCP)であり、HashiCorp Terraformを使用してインフラをコードとして管理しています。Platform Infraチームは、すべてのTerraformワークフローを安全に管理するための社内CIサービスを提供しています。 Terraformはリソースプロビジョニングのためにクラウドプロバイダーのクレデンシャルを必要と

      TerraformモノレポCIのセキュア化 | メルカリエンジニアリング
    • 検索クエリからファジーにキーワードを抽出する(スミス・ウォーターマン法に基づく実装) - Giftmall Inside Blog

      TL;DR 表記揺れがふくまれる検索クエリにマッチしたコンテンツを表示するための手法として、スミス・ウォーターマン法に基づくあいまい検索を実装して検索精度を向上しました。この手法は機械学習システムを使わないためメンテナンスコストが低く、その一方で速度面でも実用的な性能を持ちチューニングしやすいのが特長です。 はじめに こんにちは、ギフトモールで検索エンジンなどを開発している @samayotta です。 私たちギフトモールはプレゼントに特化したECサービスを提供しています。ギフトECにおいても、ユーザのニーズにマッチする商品を探すための検索機能は重要となります。例えば、弊社が運用しているギフトECサービスの一つであるギフトモールは、ユーザが入力する文字列の検索クエリから関連するキーワードを検出し、そのキーワードに紐づいているコンテンツ(商品、記事、etc.)を提示する検索機能を持っています

        検索クエリからファジーにキーワードを抽出する(スミス・ウォーターマン法に基づく実装) - Giftmall Inside Blog
      • Gitリポジトリ内をgrepする git grep はシンプルで超便利 | DevelopersIO

        Gitリポジトリ内を検索する機会はよくあると思います。git grepコマンドを使えば、git管理下のファイルのみを対象としてgrepができます。シンプルなコマンドですが、利便性はとても高いと思います。 「このメソッドって、どこで使われてるんだっけ?」 「その定数の定義って、値は何だっけ? どこにあるんだっけ?」 「あのURLって、何箇所で使われているんだろう?」 Gitリポジトリ内を検索する機会はよくあると思います。 このメソッドって、どこで使われてるんだっけ? その定数の定義って、値は何だっけ? どこにあるんだっけ? あのURLって、何箇所で使われているんだろう? git grepコマンドを使えば、Git管理下のファイルのみを対象としてgrepができます。 シンプルなコマンドですが、利便性はとても高いと思います。 なお、grep対象はカレントブランチのみです。 目次 シンプルな例 特定

          Gitリポジトリ内をgrepする git grep はシンプルで超便利 | DevelopersIO
        • Go-to person(頼りになる人)

          何か相談事があるときに真っ先に話をしに行く相手のことを go-to person と呼ぶ。要するに「頼りになる人」のことである。本記事ではミドルレベルのソフトウェアエンジニアが go-to person として頼りにされるためにはどう振る舞えばよいか私見を紹介する。職種や立場が違えば目指すべき go-to person のあり方もまた違ったものになることはご留意ください。 Go-to person の役割 Go-to person は相談者が抱える課題を分解・整理するのを手伝い、自身の知識や経験に基づいた適切なアドバイスを提供する。相談者は go-to person と話すことで暗中模索する時間を節約し、最終的な判断に自信を持つことができる。シニアソフトウェアエンジニアやテックリードになる要件として、何らかの分野で go-to person として認知されていることを求めている場合も多いだ

            Go-to person(頼りになる人)
          • Express と handlebars で動き続ける日経 — HACK The Nikkei

            Nikkei Advent Calendar 2023の 14 日目は IDE がやっていきます。いま Web チーム内の基盤改善を専門とするチームで活動しています。自分が入社するより前に作られてメンテナンスがあまりされていなかったシステムを、現代でも戦えるようにするお仕事をしています。メンテナンスを放置することはセキュリティ的によくないので、メンテナンスを専業で行っています。最近の自分の仕事は、今日紹介する rnikkei と呼ばれるマイクロサービス群の Node.js バージョンを、v12 から v18(一部は v20) まで引き上げることです。この rnikkei は当初「爆速の日経」と呼ばれていた頃に設計・実装されたサービスです。今日はそのような過去に作られたサービスにもう一度スポットライトを当ててみようと思います。 see: https://marketing.itmedia.c

              Express と handlebars で動き続ける日経 — HACK The Nikkei
            • Testcontainersを用いてテスト実行前の docker compose up を無くし、Goで並列テストする | フューチャー技術ブログ

              春の入門祭り2024の1記事目です。 はじめにTIG真野です。 Testcontainers を用いて、単体テスト実行前に docker compose up -d 無しで、PostgreSQLにアクセスする単体テストを行う、入門記事です。 恩恵は次のような開発者体感の向上が個人的にあります。 テストを実行するうえで、別プロセスのサービスを起動しておく必要があるといった前提条件を考えなくても済むため、テストを行うビジネスロジックに集中できるdocker compose up -d 打たないだけだが、テストに必要なコンテナを考慮しなくても済む停止し忘れて、別のリポジトリの開発するときに混乱しなくても済む並列テストしやすくなるので、テストの実行速度が向上するGoにおいて、複数のパッケージを同時にテストするとき、 -p 1 で絞らずに済むTestcontainers とはhttps://test

                Testcontainersを用いてテスト実行前の docker compose up を無くし、Goで並列テストする | フューチャー技術ブログ
              • Goでスタイリッシュにエラーをラップする方法を学んだ - カミナシ エンジニアブログ

                こんにちは。カミナシ ソフトウェアエンジニアの @aoman です。 つい先日、Goで有名な@tenntennさんがConnpassで募集していたGopher塾#2に参加させていただきました。 tenntenn.connpass.com 大変勉強になりおすすめです!筆者が参加したのは第一回目ですが、二回目三回目と予定されているようなので、有料講義ではありますが気になる方はぜひ参加してみてください!学生さんであれば無料の抽選枠もあります。 その際に紹介されていたコードで、エラーのラップ関数があったのですが、これが「メッチャアタマイイ!!スタイリッシュ!!」と感動しました。そのコードは、Goの公式ページである https://go.dev/ のWebサイトを実装しているリポジトリ pkgsite 内の internal/derrors パッケージで実装されています(GitHubリポジトリはミラ

                  Goでスタイリッシュにエラーをラップする方法を学んだ - カミナシ エンジニアブログ
                • Mackerel を使って10分でメトリクス監視を始める手順 - Qiita

                  はじめに Mackerel というと、皆さんこんなイメージをお持ちかもしれません。 エージェントを入れないといけない サービス側で色々設定しないといけない 今ある値をグラフにして欲しいだけなのに こんな風に思っておられるかもしれません。ですが Mackerel は独自のグラフを作るのであれば、大した設定もいらないし、エージェントをインストールする必要もないのです。 本記事では、今ある値を最速でグラフにする手順を示したいと思います。なお Mackerel のアカウントは既にある前提で説明します。今回は Twitter フォロワ数の増加をグラフにしてみたいと思います。 筆者は普段 Twitter でフォロワ数などを全く気にしない人なのですが、先日以降 Twitter の通知欄に「フォローされた」通知が沢山くるのを確認していました。 昨日は自分がプログラミングを始めた頃からずっと尊敬しているプロ

                    Mackerel を使って10分でメトリクス監視を始める手順 - Qiita
                  • 読み手をイライラさせない技術記事などを書くために最低限守ったほうがいいこと - Qiita

                    追記: この記事は「人が一生懸命書いた記事を読んでイライラする人間」を擁護するつもりは一切ありません。 追記: この記事は「自分の記事ではイライラさせたくないな」と思う人向けに執筆したのであって、この記事のあることをQiitaにあるすべての記事に矯正したいという思想のもとで執筆したものでは有りません。 はじめに こんにちは Qiitaやnoteといった情報共有に向いたサービスがどんどん普及しており、知識量に関係なく誰でも情報が発信できるいい時代になりましたね。 しかし、投稿されているすべての記事が良いと思えるわけではないのは確かです。タイトルに書いてあるものとは違う内容が書いてあったり、問題解決まで達していない結論で終わってたり。記事中の動かないコードを調べるために、そこから別の記事をはしごをして、それを繰り返していた結果業務時間が終わっていたり。 あまり私も人のことは言えませんが、いろん

                      読み手をイライラさせない技術記事などを書くために最低限守ったほうがいいこと - Qiita
                    • 母親を陰謀論で失った(対策編)|ぺんたん

                      今年の母の日はつからった。 正確に言うと、その数週間前から気が重たかった。母に連絡すべきかどうか、ずっとモヤモヤしていた。 今でも「お母さんの声を聞きたい」という気持ちと「あんな非常識的な人間とは縁を切りたい」という気持ちが半々だ。 数年前、一緒にお茶をしているときに母から「あんたは小さい頃から見栄っ張りでねぇ~『僕が大きくなったら、このお店のもの全部お母さんに買ってあげるからね!』って母の日に私に言ったのよ~」と教わった。 そう懐かしそうに言う母は嬉しそうだった。 結局、今年の母の日は何もしなかった。覚えている限り、はじめての母の日スルーだ。 事件があってから私はネットや書籍で陰謀論、デマ情報、新興宗教などの情報を読み漁った。母が聞いていたこと、見ていたことを追体験しているような感覚だった。 そして、多くの人が現在進行形で大切な人を陰謀論やデマ情報で失いかけていることを知った。 Twit

                        母親を陰謀論で失った(対策編)|ぺんたん
                      • 同じビルドやテストを何度も実行しない方法 - コンポツさん

                        GitHub Actions で同じビルドやテストを何度も実行しない方法を紹介します。 ホストランナーを ubuntu-linux にした場合、実行する必要のないジョブは 10 秒程度でスキップ可能です。 注意 この記事は自作の OSS ツール sver および私が現在所属するサイボウス社の グローバル向けAWS版kintone開発チーム の宣伝が含まれます。 Summary ビルドやテストといった CI のジョブに再現性がある場合は複数回実行しても意味がない ジョブが依存する環境やソースコードを元にハッシュ値を計算することで同等なジョブに一意なラベルをつけられる ジョブ実行後に実行済みラベルを artifact として保存しておくことで後続の同等なジョブをスキップできる 効果 最初に効果を示します。 sver というプロジェクトのジョブの実行結果です。 これは通常時のジョブの実行時間です

                          同じビルドやテストを何度も実行しない方法 - コンポツさん
                        • 皆で楽しく成長するためのペアプログラミングとモブプログラミングのガイドライン - Qiita

                          1. はじめに 本稿は、ペアプログラミングとモブプログラミング(以降、ペアプロ・モブプロと表記)について、私のチームでのガイドラインを紹介します。執筆時点でのペアプロ・モブプロ歴は4年です。 私のチームは若手が多く、「ハピネスチームビルディング」という皆が主体的に楽しく成長しながら開発するという取り組みをしているため、「メンバーが楽しく成長する事」を重視している点が、普通のやり方と少し異なります。 ハピネスチームビルディングの詳細は、ITエンジニア向け月刊誌「Software Design」で連載してますので、そのWeb公開版の以下を参照ください。 ハピネスチームビルディング連載記事一覧 ペアプロ・モブプロは、楽しく成長するために、とても有効な手段なので、この記事が少しでもその役に立てば幸いです。 なお、ペアプロとモププロは異なる特性がありますが、この記事では共通のガイドラインを説明する便

                            皆で楽しく成長するためのペアプログラミングとモブプログラミングのガイドライン - Qiita
                          • ブートストラッピング法による情報抽出の論文まとめ - ヤドカリラボ

                            はじめに 自然言語処理におけるタスクの一つとして、構造化されていないテキストから情報や知識を自動または半自動で取り出すことを情報抽出といいます。 最近では深層学習系の論文が国際学会ではメジャーですが、訓練・ベンチマークに用いているデータセットのレコード数が膨大であり、また高価なGPU環境が言語モデルの訓練のために必要など、必ずしも現実の要件で扱われる問題と合致していない部分があります。 また、抽出の際に起こる問題や、抽出の際に用いる指標を古典的な手法を通じて押さえておくことで、実際のデータに既存手法や経験的な手法をいろいろ適用してみるときの手がかりになります。 そこで本記事では情報抽出の領域で深層学習が流行る前に比較的メジャーであったブートストラッピング法にフォーカスし、抽出の概念、手法の解説、論文のタスクや手法の詳細などを追っていきます。 論文の流れを追うことで情報抽出の応用をしようとし

                              ブートストラッピング法による情報抽出の論文まとめ - ヤドカリラボ
                            • ZOZOMATのgRPCリクエスト負荷分散をNLBからALBに移行した話 - ZOZO TECH BLOG

                              こんにちは、計測プラットフォーム本部バックエンド部の髙木(@TAKAyuki_atkwsk)です。普段はZOZOMATやZOZOGLASSなどの計測技術に関する開発・運用に携わっています。ちなみにZOZOGLASSを使って肌の色を計測したところ、私のパーソナルカラーはブルーベース・冬と診断されました。 さて、本記事ではZOZOMATシステムで利用されていたNetwork Load BalancerをApplication Load Balancerに移行した事例をご紹介します。 ZOZOMATのシステム構成(2020年当時)に関しては、こちらの記事で詳しく説明されていますので合わせてご覧ください。 techblog.zozo.com 移行の背景 ZOZOTOWNアプリやZOZOTOWNシステムからZOZOMATシステムに対するリクエストの負荷分散のためにNetwork Load Balan

                                ZOZOMATのgRPCリクエスト負荷分散をNLBからALBに移行した話 - ZOZO TECH BLOG
                              • BigQueryでSaaSのjsonデータを処理するSQLサンプル集 - 下町柚子黄昏記 by @yuzutas0

                                この記事の概要 SaaSのデータをBigQueryに統合することで業務改善を促進できる。 しかし、SaaSのデータの中身を見ると、BigQueryの関数では対応しにくい形式になっていることがある。 そこで、本稿では「こういうデータ形式だったらこういうSQLを書く」というサンプル集を掲載する。 目次 この記事の概要 目次 宣伝 実現したいこと SaaSデータの処理方法 SQLサンプル1: 純粋な配列だけのケース SQLサンプル2: 配列内にハッシュマップがあるケース SQLサンプル3: 配列宣言ナシでカンマ区切りのハッシュマップが突如始まるケース SQLサンプル4: 配列とハッシュが入り乱れるケース SQLサンプル5: JSONの中に親子構造があるケース SQLサンプル6: Objectを定義したくなるケース 最強のJSONパースの関数は作れるか jsonデータの処理をどこで行うか 最後に

                                  BigQueryでSaaSのjsonデータを処理するSQLサンプル集 - 下町柚子黄昏記 by @yuzutas0
                                • esa.ioに分報っぽく投稿するアプリをReactとFirebaseで作った - yasuhisa's blog

                                  こういう風に投稿すると(左)、esa.ioにこういう感じ(右)で投稿される分報風のアプリを自分用に年末年始に作りました。 作った動機 使った要素技術 Firebase Authentication Firebase Hosting + React Firebase Cloud Functions デプロイ自動化 所感 作った動機 きっと皆さんそうしているように、私も日々ログを残しながら作業をしている。仕事ではscrapboxを使っているが、プライベートではesa.ioを愛用している。プレビューを見つつmarkdownで書けたり、タグとカテゴリがいい感じに使えたりするところが気に入っている。あと、アイコンがかわいい。 ちゃんと作業をするときにはesa.ioにページを作るが、そうでない雑なものも記録したいときが度々ある。例えばこういうの。 今度コンビニ行ったとき、忘れずにXXXを買う 統計の本

                                    esa.ioに分報っぽく投稿するアプリをReactとFirebaseで作った - yasuhisa's blog
                                  • OpenAPIを使ったRailsスキーマ駆動開発 - ドワンゴ教育サービス開発者ブログ

                                    はじめに サービス構成 レポジトリ一覧 サーバー側Railsアプリ クライアント側Railsアプリ 開発の流れ 利用ツール swagger-cli committee-rails 不具合1: ファイルの分割 不具合2: $refとnullableの同時使用 json-schema openapiの記法に合わせた機能拡張 openapi-generator-cli (Ruby client) 不具合1: 中途半端な型チェック 不具合2: oneOf/anyOfに非対応 factory_bot 終わりに We are hiring! はじめに 前回の記事では、OpenAPIで新しいウェブAPIを定義する際に、yamlのままで読みやすいようにファイル構成等を工夫した話をしました。 今回はそのAPIスキーマを使って、Railsでスキーマ駆動開発を実現するにあたって利用しているツール類についてお話し

                                      OpenAPIを使ったRailsスキーマ駆動開発 - ドワンゴ教育サービス開発者ブログ
                                    • Serverless Frameworkの有償化に伴いAWS CDKとAWS SAMへの移行について検討してみた | DevelopersIO

                                      なおこの「Credits」という単位は serverless.yml ファイルのregion,stage,serviceパラメータの組み合わせによって定義されるようです。 したがって、例えば開発者やチケット毎の検証環境をstageで分けている場合は、その分Creditsが嵩むという形になります。 また、serviceもどのように分割するかで総Credit数が変わってきますので、この辺は見積りのし辛さに繋がってくるのかなと思います。 例えばregionとして東京, シンガポールを用意し、stageとしてprod, stg, dev, user1, user2があり、serviceとしてxxx, yyyがある場合、単純に掛け算をすると2x5x2の20 Creditsとなります。 また、Serverless Dashboardの機能を使うと、トレース50,000あたりで1 Credit、メトリク

                                        Serverless Frameworkの有償化に伴いAWS CDKとAWS SAMへの移行について検討してみた | DevelopersIO
                                      • module bundlerの作り方(準備編) - hiroppy's site

                                        今回は中身がどう動いているかを解説したいと思います。 最初のこの記事では、最低限の実装を説明していくことにします。 webpack のアルゴリズムの仕組みはこちらを読んでください。 必要なステップ 必要なステップは以下の 3 つです。 エントリーポイントからのすべてのモジュールを走査し、requireを解決後にユニーク id を付与していく コード内のモジュールパス(requireの引数(e.g. ./module.js))を id へ置換する runtime のコードテンプレートの作成 IIFE(即時関数)箇所とそれに付随する引数の module 群 この実装されあれば、動くコードはできます。(2 つめは optional でもいいけど後からつらくなる) モジュール解決 今回は説明しやすいように関数を 2 つに分けています。 すべてのモジュールの把握と ID 作成 コード内の requi

                                          module bundlerの作り方(準備編) - hiroppy's site
                                        • Power Automateを使ったTeamsのチームメンバーの一括登録とエクスポート | IIJ Engineers Blog

                                          Microsoft365のPowerPlatformを主に担当しています。だんだんPowerPlatformのサービスが増えて業務が自然拡大していく。好きな寿司のネタはたまご。 こんにちは、Power Platform のあれやこれやを検証している r-ito です。 Power Platformというと通じにくいので、もっぱら Power なんとか ってやつ全部と紹介してたりします。 個人的につけてる略称は Power * です。 普段から社内でPower Automateのお困りごとについて相談を受けたりしています。 今回は相談を受けて「こんな感じならできるのでは」と提案した内容をご紹介します。 Microsoft Teamsでは、チームメンバーをCSV等による一括での登録ができません。 一応セキュリティグループを指定できるので、部署などは一気に登録可能です。 とはいえ細かいメンバー指

                                            Power Automateを使ったTeamsのチームメンバーの一括登録とエクスポート | IIJ Engineers Blog
                                          • テックリードとしてシステムの未来を示して品質の期待を合わせる - yigarashiのブログ

                                            最近チームのテックリードを拝命して、テクノロジーマネジメント領域もリードすることになりました。興味の中心は開発プロセスやデリバリーで、エンジニアリングはまだまだひよっこなので苦労の日々が続いています。この記事では新米テックリードとしての取り組みをひとつ紹介します。 私のチームでは10個近いコンポーネントのオーナーシップを持っています。それらの品質の期待度は大きく異なり、変更頻度、採用技術、システムに占める重要度といったパラメータから決定されます。この期待を見誤ると、変更頻度が極めて低いコンポーネントを頑張ってリファクタリングしたり、モダンな技術が採用され寿命の長いシステムを雑に拡張したりと、成果の小さいアクションを取ってしまいます。逆にこの期待を適切に捉えられると、チームのリソースがコスパが高いアクションに向かっていくことが期待できます。変更頻度の高いコンポーネントのCI/CDを改善し、重

                                              テックリードとしてシステムの未来を示して品質の期待を合わせる - yigarashiのブログ
                                            • テクニカルなトピックやIssueの良い質問の仕方 - Secret Ninja Blog

                                              コンテキストが共有されていないことによって、質問の意図が汲み取れず、回答にたどり着くまでに非常に時間や手間がかかってしまう様子が散見されてたので、下記のツイートをしたところ、それなりに皆さん困っているんだな・・・っていうのが見受けられたので、社内向けに英語で書いた内容をDeepLとかを使って日本語にざっくり直したので、言葉の揺らぎなどもあるが記事として残しておく。 質問の仕方が悪い人は、最終的に実現したいことを言わずに、目の前の問題とか自分が今やってトラブってることしか言わないんだよな。会社に行きたいけど、途中の道が通行止めです他にどうやったらいけますか?ってきけばいいのに、通行止めの道を通りたいんだけど通れない、なぜ??って言う感じ。— Toru Takahashi (@nora96o) March 10, 2021 そもそもなぜ良い質問の仕方を学ばないといけないのか? 当たり前のことか

                                                テクニカルなトピックやIssueの良い質問の仕方 - Secret Ninja Blog
                                              • 日経の新媒体における、既存資産を活かすフロントエンド技術選定 — HACK The Nikkei

                                                こんにちは、Web チームの井手です。 この度 NIKKEI Professional Media(通称 Promedia) という新媒体をリリースしました。各トピックに特化したメディアで、現在は 日経モビリティ、日経GX、日経テックフォーサイトが展開されています。 これまで日経 Web チームでは特定のFWを利用せず、長年JSXをテンプレートエンジンとした独自FWを開発して、モノレポとして運用していました。これはチューニングの余地を自分で確保することや、自分たちのチームにあった規約を作りやすくするための選択です。しかし Promedia の開発は電子版本体のリリースサイクルと外れるためにモノレポの中に入れたくないことや、長年の開発の負債を引き継ぎたくないこと、なによりNextJSエコシステムの発達によって僕たちの要求をカバーできつつあることから、試験的にNextJSを採用して開発してみま

                                                  日経の新媒体における、既存資産を活かすフロントエンド技術選定 — HACK The Nikkei
                                                • 大規模システムにおけるディレクトリ構成をRDBのカーディナリティを参考に考える - ぷらすのブログ

                                                  モノリシックなプロジェクトにおいて、トップレベルのディレクトリ構成が異なる 2 つのディレクトリ構成を考え、それらの違いは何で、どちらが優れているか?という問いについて考えた。そして、「複雑な概念をトップレベルのディレクトリ構成にした方が良いのでは?」という結論に落ち着いた話をする。 はじまり ちょっとしたシナリオを想像してみよう。 プロジェクト立ち上げ期 「最近のトレンドはレイヤードアーキテクチャだ!」 そう言って、プロジェクトはスタートした。 . ├── application │ ├── xxx_usecase.go │ ├── xxx_repository.go │ ├── yyy_usecase.go │ └── yyy_repository.go ├── domain │ ├── xxx.go │ └── yyy.go ├── infrastructure │ └── xxx_

                                                    大規模システムにおけるディレクトリ構成をRDBのカーディナリティを参考に考える - ぷらすのブログ
                                                  • Azure の無料枠のあるサーバーレス系サービスだけで WebSocket (SignalR) - Qiita

                                                    今回の登場人物 Cosmos DB 最近無料枠が追加されていい感じの NoSQL DB 公式ドキュメント:https://docs.microsoft.com/ja-jp/azure/cosmos-db/ Azure Functions Azure のサーバーレスなサービスの代名詞(だと思ってる 公式ドキュメント:https://docs.microsoft.com/ja-jp/azure/azure-functions/ SignalR Service WebSocket 等(状況に応じていくつかの中から最適な方法を選んでくれる)を使ってリアルタイムにサーバーから接続しているクライアントに通信できるサービス 公式ドキュメント:https://docs.microsoft.com/ja-jp/azure/azure-signalr/ 3 つとも、それぞれ無料枠があります。今回は、このサービ

                                                      Azure の無料枠のあるサーバーレス系サービスだけで WebSocket (SignalR) - Qiita
                                                    • ZOZOTOWNホーム画面におけるパーソナライズの取り組み - ZOZO TECH BLOG

                                                      はじめに こんにちは、ML・データ部推薦基盤ブロックの寺崎(@f6wbl6)と佐藤(@rayuron)です。 ZOZOTOWNのホーム画面は2021年3月にリニューアルされ、「モジュール」と呼ばれる単位で商品が表示されるようになりました。 本記事ではユーザーごとにパーソナライズされたモジュール(以降、パーソナライズモジュール)のロジックやシステム構成、および導入時に実施したA/Bテストの内容と結果をご紹介します。 先に結論から言ってしまいますが、今回のパーソナライズモジュールでは機械学習モデルを使わず、ユーザーの回遊行動を分析した結果を元にしたルールベースのロジックを使用しています。本記事のポイントは大きく以下の3点です。 ルールベースのパーソナライズロジック 機械学習モデル導入を見越したシステム設計 ホーム画面のパーソナライズによる効果 本記事がこれから同様のタスクに取り組む方の参考にな

                                                        ZOZOTOWNホーム画面におけるパーソナライズの取り組み - ZOZO TECH BLOG
                                                      • [書評]『データ分析のためのデータ可視化入門』と最近の R グラフィックスパッケージ事情 - ill-identified diary

                                                        概要Healy (2018) “Data Visualization: A Practical Introduction” の邦訳『データ分析のためのデータ可視化入門』をもらったので, この本のレビューと本書ではあまり取り上げられていない, R グラフィックスをさらに活用するためのヒントを提示する. 2021/9/24 追記: 『Python ユーザでも『データ可視化入門』で練習できるようにパッケージを作った + Plotnine との互換性ガイド - ill-identified diary』に書いたように, Python でも matplotlib のような煩雑な構文に惑わされずにこの本で紹介されているような方法を実現するためのパッケージ/用例を作ってみた. 概要 初めに 本書の特徴 どういう本なのか どういう人が読むとよいか 邦訳に対する細かいツッコミどころ 本書を読んだ人におすすめ

                                                          [書評]『データ分析のためのデータ可視化入門』と最近の R グラフィックスパッケージ事情 - ill-identified diary
                                                        • [翻訳]”URL”の歴史 — Cloudflare Blog

                                                          こちらは翻訳記事となります。原著者の許諾を得て翻訳・公開しております。 英語記事: The History of the URL原文公開日: 2020/03/05著者: Zack BloomURL: https://blog.cloudflare.com/the-history-of-the-url/ 1982年1月11日、22 人のコンピュータ科学者が「コンピュータメール」(今日の電子メール)の問題を議論するために集まりました。議論の参加者にはサン・マイクロシステムズを作った人、Zork の開発者に NTP の開発者、そして政府に Unix の支払いをするように説得した人も含まれていました。 問題は単純で、 ARPANET にある455台のホストが制御不能に陥っていたのです。 この問題は、ARPANET がもともとの NCP プロトコルから、今日の”インターネット”と呼ばれる TCP/I

                                                            [翻訳]”URL”の歴史 — Cloudflare Blog
                                                          • ecspresso+ecschedule+lambrollでCI/CDを作った話 - トラストバンクテックブログ

                                                            前回の記事から間が空いてしまいました、SREのbutadoraです。 年末に向けた準備で忙しなくしているこの頃です。 今回はとある環境で実装したCI/CDのフローを紹介したいと思います。 今回のサービスアーキテクチャ 今回はPHP製WEBサービスをデプロイする環境が必要ということで、以下の様な設計としました。 WEBサービス本体 → ALB+ECS+RDS 定時バッチサービス → ECS (Task Scheduler)+RDS ファイル設置をトリガーにしたバッチサービス → S3+Lambda(コンテナイメージ)+RDS CI/CD 簡単な構成図はこんな感じです。 大きなポイントとしては、タイトルにある3種の各デプロイツールを組み合わせることで、開発側のリソース管理を切り出しているところです。 弊社ではAWSリソースの管理をTerraformで行っていますが、図にあるようなリソースまで管

                                                              ecspresso+ecschedule+lambrollでCI/CDを作った話 - トラストバンクテックブログ
                                                            • 自動音声のみの電話調査に答えてはならない - remcat: 研究資料集

                                                              衆議院議員選挙期間中に、「ミヤギテレビ」を名乗る自動音声調査の電話がかかってきた。「ミヤギテレビ」というのは 宮城テレビ放送 が使っている通称なので、同社に問い合わせてみたところ、本当にそういう調査をやっているという答えだった。これは大変な事態だと判断して、警告を発するためにこの記事を書いている。 電話は、冒頭で「ミヤギテレビ」と名乗り、衆議院議員選挙に関する特定の選挙区の調査であること、その選挙区の有権者でなければ電話を切ってください、データは匿名化して統計的分析結果だけを使います、というような説明をつづけたあと、具体的な質問項目を読み上げ、プッシュホンで番号を回答させる内容だった。質問がはじまったところで電話を切ったので、そこから先はわからない。質問項目に入るまでの部分 (冒頭の20秒程度?) に調査の目的やデータの使用範囲の説明はなく、連絡先の電話番号等も言わなかった。いそがしいとき

                                                                自動音声のみの電話調査に答えてはならない - remcat: 研究資料集
                                                              • WebSocket の辛さを Yjs で解決した話 | CyberAgent Developers Blog

                                                                こんにちは。AI事業本部 オンライン接客事業部のGokanです。 オンライン接客システム「リモてなし」の開発チームの中で、フロントエンドを主に担当しています。 今回は、システムにYjsを導入したので、その紹介をしたいと思います。 話としては「WebSocketとYjsを使うことで抱えていた課題を解決できた」という内容になっています。 目次 オンライン接客システム「リモてなし」の特徴 今までの課題 新たに導入した Yjs とは データがマージできる仕組みの概要 リモてなしでの活用 オンライン接客システム「リモてなし」の特徴 まず、リモてなしの特徴は、システムを挟んで人と人がリアルタイムにコミュニケーションをとることです。これは相手の顔が見える、声が聞こえるというだけではありません。他にも、パワポなどの資料共有、商品の提案、アンケート送付などをすることができます。 また、リモてなしは「対面以上

                                                                  WebSocket の辛さを Yjs で解決した話 | CyberAgent Developers Blog
                                                                • typescript-generatorを利用して、HTML に埋め込んだ JSON データをフロントエンドで型安全に扱う - Cybozu Inside Out | サイボウズエンジニアのブログ

                                                                  こんにちは!kintone フロントエンドリアーキテクチャチーム (フロリア) の西川 @nissy_dev です。 最近のフロントエンド開発で導入されることの多い TypeScript ですが、開発期間の長いプロジェクトに導入する際にはバックエンドとの結合部分の型定義をどう扱うかが問題になる場合があると思います。 今回の記事では、フロリアで取り組み始めた、HTML に埋め込んだ JSON データをフロントエンドで型安全に扱う施策について紹介します。 フロリアのプロジェクトの詳細については、 @koba04 が書いた次の記事をご覧ください。 blog.cybozu.io 目次 フロリアでのバックエンドからのデータ取得 HTML に JSON データを埋め込む方法の問題点 Java のクラスから TypeScript の型定義を生成できる typescript-generator types

                                                                    typescript-generatorを利用して、HTML に埋め込んだ JSON データをフロントエンドで型安全に扱う - Cybozu Inside Out | サイボウズエンジニアのブログ
                                                                  • A bad citizen - Kuniyuki Iwashima

                                                                    10 月頭に Linux の [netdev メーリングリスト](https://lore.kernel.org/netdev/)に以下のメールが届きました。 - [netdev development stats for 6.1?](https://lore.kernel.org/netdev/20221004212721.069dd189@kernel.org/) 送信者は Jakub Kicinski で Networking subsystem のメンテナの一人です。元々 netdev は David S. Miller (DaveM) が一人でメンテナンスしており、 Jakub は [DaveM の次の世代のメンテナ](https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=bda

                                                                      A bad citizen - Kuniyuki Iwashima
                                                                    • はてなブックマークで利用しているCloudFrontのAWSアカウントを移行した - Hatena Developer Blog

                                                                      こんにちは、id:cohalzです。2023年4月に実施したはてなブックマークのメンテナンスではCloudFrontを別のAWSアカウントに移行しました。 この記事ではCloudFrontを別のAWSアカウントに移行した背景とどのように移行したのかを説明します。 はてなブックマークのインフラのこれまで 移行したいモチベーションが出てきた理由 切り替えで設定が変わらないように気を付ける キャッシュポリシーに移行する 移行方法について検討する AWS CLIでCloudFrontを移行する手順を作成する アクセスログを配送する部分も移行する まとめ はてなブックマークのインフラのこれまで はてなブックマークのインフラはこのようにCloudFrontと関連リソースだけ別のAWSアカウントで利用していました。 移行前 この状況になっていた経緯をまず説明すると、はてなブックマークでは2018年からオ

                                                                        はてなブックマークで利用しているCloudFrontのAWSアカウントを移行した - Hatena Developer Blog
                                                                      • SREチームのセキュリティインシデントゲームデー - メドピア開発者ブログ

                                                                        CTO室SREの侘美です。最近はM5Stackを嗜んでおります。 ここ半年ほど、MedPeerグループ全体のAWSのセキュリティ改善に力を入れてきました。 その中で、AWS Well-Architectedのセキュリティのベストプラクティスにも記載があるゲームデーを実施したところ、とても学びが多かったので本記事にまとめました。 ゲームデーとは? Well-Architectedには以下のように記載されています。 ゲームデーを実施する ゲームデーを実施する: さまざまな脅威について、インシデント対応イベントのシミュレーション (ゲームデー) を実施します。このゲームデーには、主要なスタッフや管理者を参加させてください。 教訓から学ぶ: ゲームデーの実行から得られた教訓は、プロセスを改善するためのフィードバックに含まれている必要があります。 出典: https://wa.aws.amazon.

                                                                          SREチームのセキュリティインシデントゲームデー - メドピア開発者ブログ
                                                                        • M5Stackの限界に挑戦~高音質スピーカー再生 - Qiita

                                                                          0. はじめに M5Stack のスピーカーは低音質で有名です。私も M5Stack 入手直後、サンプルスケッチで Wave File をスピーカーで再生してみて、前評判通りの低音質にがっかりしました。そこで、この音質問題に取り組まれた先駆者様の知恵を参考にしつつ、高音質化の限界1に挑戦しました。この記事では、そのプロセス、ソフトウェア実装例、改善効果をレポートします。 先駆者様 文献1 : Tw_Mhage 様 M5Stackのスピーカーの音質が悪い原因と対策 文献2 : N.Yamazaki 様 M5Stackの音量を抵抗1つで調節する - N.Yamazaki's blog 文献3 : macsbug 様 M5Stack speaker noise reduction 他 1. 概要 M5Stack のスピーカーの低音質原因は、文献1で以下のように分析されています。 1.アンプのゲイ

                                                                            M5Stackの限界に挑戦~高音質スピーカー再生 - Qiita
                                                                          • ローカルでのフロントエンド開発時でも、実際のCloudflareスタックにアクセスする - console.lealog();

                                                                            端的にいうと、 フロントエンドはSvelteKitやらモダンなやつで組んで Cloudflare Pagesにデプロイしたい そしてKVやD1やらも使いたいし ローカルでも実際の値を参照して開発したい つまり、サーバーレンダリングやAPIルートを実装するときに、既存のスタックに保存してある値を使いたいという話。 個人的にはあるあるのケースで、あらゆるものをCloudflareのエッジで完結させる未来を待つなら、なおさら。 ローカルから実際のKVやD1にアクセスするには 現状、これをやるには2通りの方法しかない。 REST API `wrangler dev --remote` まず前者。これはいわずもがな、HTTP経由でアクセスできる。 ただ、Cloudflare Pagesにデプロイするなら、Workersで動作するコードからアクセスするなら、あえて1クッションはさむ理由はなさそう。 つ

                                                                              ローカルでのフロントエンド開発時でも、実際のCloudflareスタックにアクセスする - console.lealog();
                                                                            • 最近のProduct Teamのペアプロ×TDDの文化をご紹介します - Uzabase for Engineers

                                                                              はじめに はじめまして。Product Teamの中嶋です。今月からチームシャッフル*1でSPEEDAのR&D機能の開発を担当しています。 Product TeamではフルタイムでのペアプロとTDDを常に実践しています。 この話を社外でお話すると「どんな風にやっていくのかが想像つかない」とよく言われます。 私も前職で一時的にペアプロを導入することはありましたが、それを常にやり続けるというProduct Teamのペアプロ文化が入社するまで全く想像できませんでした。 そこで本記事ではProduct Teamがどのようにペアプロをしているのかをお届けしようと思います。 はじめに ツールについて ストーリーとペアはサインアップで決める まずはテストから書く 1時間に一度は休憩とペアチェンジを行う ソースコードのPushとデプロイ ソースコードのPushタイミングについて わからなければすぐ別のペ

                                                                                最近のProduct Teamのペアプロ×TDDの文化をご紹介します - Uzabase for Engineers
                                                                              • 例から学ぶ AWS CLI の クエリ(query)活用 | DevelopersIO

                                                                                [入れ子のキー選択] CloudFront ディストリビューションの設定値を取得 cloudfront list-distributions で CloudFront(CF)ディストリビューションの情報を取得できます。 aws cloudfront list-distributions --output json # { # "DistributionList": { # "Items": [ # { # "Id": "XXXXXXXXXXXXXX", # "ARN": "arn:aws:cloudfront::123456789012:distribution/XXXXXXXXXXXXXX", # "Status": "Deployed", # "LastModifiedTime": "2020-02-21T04:11:45.412000+00:00", # "DomainName":

                                                                                  例から学ぶ AWS CLI の クエリ(query)活用 | DevelopersIO
                                                                                • Terraform Modules で再利用できるので最高ではないでしょうか? - じゃあ、おうちで学べる

                                                                                  概要 ModuleはTerraformの複数のリソースをまとめて再利用可能な単位として扱うことができます。Moduleを使うことで複雑なリソース構成を抽象化し、システムの構造の把握やリソース構成の再利用が可能になり、読みやすさや可読性が向上し、修正箇所が単一になるなどのメリットがあります。 ただし、理解には初期コストが必要です。Moduleの設計では、1つの機能を持つように小さくシンプルに保つことが重要で、それが難しい場合は大抵複雑と言えます。 また、公式のModuleを利用することで、自身で定義やドキュメントの整備、メンテナンスの手間を省きつつ、プロジェクトを超えて共通認識として扱えるため、Module理解のコストが減ります。 しかし、どのタイミングでModuleに組み込むかの正解は、個々のプロジェクトの特性や開発チームの状況により大いに変わるでしょう。 絶えず試行錯誤を繰り返しながら個

                                                                                    Terraform Modules で再利用できるので最高ではないでしょうか? - じゃあ、おうちで学べる