並び順

ブックマーク数

期間指定

  • から
  • まで

161 - 200 件 / 15674件

新着順 人気順

processの検索結果161 - 200 件 / 15674件

  • setTimeout を完璧に理解する

    setTimeout は、指定された時間以降に指定されたコードを実行する JavaScript の API です。ブラウザでも Node.js でも広く使われているのですが、実装はまちまちで、色々と特殊な条件も多く、挙動を完璧に理解している人は少ないと思います。この記事では、そんな setTimeout を可能な限り深堀りしてみようと思います。 先に書いておきますが、ものすごくニッチで細かい話ばかり並びます。突然私が、ただ純粋に setTimeout について調べたくなったので、その結果をまとめただけのものです。普通に開発している人には必要のない情報が多くなるでしょう。この記事は基礎から setTimeout を学ぼう、という方には全然向かないと思います。 また、JavaScript のイベントループについてある程度理解していることを前提とします。その詳しい理解には、@PADAone さん

    • MozillaがAIでWebサイトを自動制作してくれる「Solo」を公開。基本的な情報を基に、説明文からレイアウト、適切なフリー画像の選択までおまかせ

      Mozillaは、基本的な情報を入力するとAIが自動的にWebサイトのデザインを作成し、Webサイトの公開まで可能なサービス「Solo」を公開しました。 Soloは基本的に個人事業主が自分のビジネスのためのWebサイトを構築することを想定してWebサイトを作ってくれます。その理由をMozillaは次のように説明しています。 In 2023, website creation is still hard. While choosing a template is straightforward, sourcing images, writing content, and making a visually appealing site are really time-consuming. Add the requirements for showcasing reviews, schedul

        MozillaがAIでWebサイトを自動制作してくれる「Solo」を公開。基本的な情報を基に、説明文からレイアウト、適切なフリー画像の選択までおまかせ
      • スレッドとプロセスの違いを完全に理解する

        はじめに こんにちは、FarStep です。 プログラミングを学ぶ中で、「プロセス」と「スレッド」という言葉を耳にしたことがある方は多いと思います。 しかし、これらの違いを明確に説明できる自信がない方も多いのではないでしょうか。 本記事では、プロセスとスレッドの違いについて、エッセンスを抽出して 解説します。 説明を簡潔にしましたので、本記事は 5 分程度で読み終えることができます。 本記事の内容を自分の言葉で説明できるようになれば、プロセスとスレッドの違いの理解は十分でしょう。 それでは、始めます 🚀 プログラムとは プロセスとスレッドの違いを理解する前に、まずは「プログラム」について理解しましょう。 プログラムとは、プログラミング言語で書かれた一連の命令 のことです。 プログラミング言語の例としては、以下のようなものがあります。 C 言語 Java Python Ruby JavaS

          スレッドとプロセスの違いを完全に理解する
        • 大規模アジャイルフレームワークの紹介

          みなさんこんにちは。@ryuzeeです。 12月1日に新刊『チームトポロジー』が発売になったのでぜひよろしくお願いします。 スクラムの認定コースでも基礎的なコースでも、よく聞かれるのが大規模の場合の対応についてです。 そこで、今日は大規模の場合の選択肢になりそうな大規模アジャイルフレームワークを紹介します。 紹介しますが、最初に大事なことをお伝えしてから紹介します。 そんなにたくさん作っても使わない2019年にプロダクトマネジメント関連のSaaS企業であるPendoが行った調査によると、ソフトウェアプロダクトにおいて平均的な機能の利用状況は次のようになったそうです。 まったく使わない: 24%ほとんど使わない: 56%よく使う: 8%いつも使う: 12%つまり80%の機能はほとんど、もしくは、まったく使われないということになります。 たくさんの人を集めて、たくさんの機能を作るのは、ムダであ

            大規模アジャイルフレームワークの紹介
          • アジリティを支える品質特性 / Agility and Quality Characteristics Developers Summit 2021 Summer

            Developers Summit 2021 Summer[A-1]アジリティを支える品質特性 講演日時: 2021年07月30日(金) 10:00 ~ 10:45 概要: ビジネスにとってITは、「あると便利」から「有効」、「不可欠」を経て「中核そのもの」になりつつあり、柔軟かつ俊敏にソフトウェアエンジニアリングを進める力は企業の競争力の源泉となりました。本セッションでは、そのような競争力あるソフトウェアを開発し続ける力を構成する要素を、品質特性等の側面から掘り下げていきたいと考えています。

              アジリティを支える品質特性 / Agility and Quality Characteristics Developers Summit 2021 Summer
            • テストコード導入奮闘記~私はこうやってプロジェクトにテストコードを導入しました~ - Qiita

              導入 どうやら新卒2年目社員のAさんが上司のZさんにプロジェクトにおいてテストコード導入を打診してるようです。少し内容を見てみましょうか。 Aさん(新卒2年目社員)「最近テスト自動化やテストコード、TDDなどの単語をよく聞きます。うちはテストコード書いてないですし、実装後の簡単な動作確認、最終の結合テストしかしていません。開発体験と品質を上げるために、テストコードを導入したいです。」 Zさん(上司)「そうは言うがね、君。今のうちの状況を見てごらんよ。みんな複数のプロジェクトに関わっていて、常に多忙。残業時間もぎりぎりで何とかプロジェクトが回っている状態だよ。そんなみんなにさらに作業を増やすようなことを提案するというのかね?しかも、テストコードはお客様からしたら作っても作らなくても関係ない、いわば直接利益に関係ないような作業じゃないか。もちろん、世の中で認知されているということは知ってるよ?

                テストコード導入奮闘記~私はこうやってプロジェクトにテストコードを導入しました~ - Qiita
              • グッドデザイン賞の2次審査で落ちちゃった話【提出資料公開】 - estie inside blog

                株式会社estieでデザイナーをしている荒井謙(@rakenarai)です。社内ではもっぱらあらけんと呼ばれています。 estieが開発・運営しているサービスのデザイン全般とフロントエンドの実装を担当しています。 趣味はラジオを聞くことで、ハライチのターンとおぎやはぎのめがねびいきのヘビーリスナーです。ラジオメールを送るレベルで好きです。 このブログで書くこと 2020年度のグッドデザイン賞に応募して落ちちゃったことを提出資料とともに振り返ります。 今年の受賞作品は2020/10/1(木)に公開されていますので以下のページでご確認いただけます。 www.g-mark.org わざわざ落選したことを公開するのはメリットないしダサいし若干の抵抗がありましたが、提出資料を作っている時に公式情報以外で参考になる情報が見つからず、手探り状態が辛かったのでGIVEの精神で書きます笑 公式ページでは今年

                  グッドデザイン賞の2次審査で落ちちゃった話【提出資料公開】 - estie inside blog
                • Ubuntu 22.04 LTS サーバ構築手順書

                  0 issue "letsencrypt.org" 0 issuewild "letsencrypt.org" 0 iodef "mailto:yourmail@example.jp" §OS再インストール さくらVPSのコントロールパネルから、OSを再インストールするサーバを選ぶ。 www99999ui.vs.sakura.ne.jp §OSのインストール操作 Ubuntu 22.04 LTS を選ぶ。 OSインストール時のパケットフィルタ(ポート制限)を無効にして、ファイアウォールは手動で設定することにする。 初期ユーザのパスワードに使える文字が制限されているので、ここでは簡単なパスワードにしておき、後ですぐに複雑なパスワードに変更する。 公開鍵認証できるように公開鍵を登録しておく。 §秘密鍵と公開鍵の作成 クライアントマシン側で生成した公開鍵を ~/.ssh/authorized_k

                    Ubuntu 22.04 LTS サーバ構築手順書
                  • webアプリ開発における環境変数まわりのベストプラクティス

                    nodejsを例に解説します。nodejsでは環境変数はprocess.env.環境変数名でとりだせます。また、開発環境・テスト環境・本番環境をそれぞれNODE_ENVという環境変数にdevelopment test productionと入れる文化があります。 アプリケーションコードに自分が今いる環境(開発|ステージング|本番)を意識させない これはつまり、コード内で環境識別変数(今回で言うところのNODE_ENV)によってif分岐を作らないという意味です。各環境にどのような設定が入るかはアプリケーションコード外にその種類分作成しましょう! bad if(開発環境){ const logger = new Logger({ level: 'debug' }); } else if (ステージング環境){ const logger = new Logger({ level: 'info }

                      webアプリ開発における環境変数まわりのベストプラクティス
                    • 『エルデンリング』の広大なオープンフィールドはいかにして作られたのか。6100m×7400mの超巨大マップをエンジニア視点で大解剖するセッションをレポート【CEDEC2022】

                      『エルデンリング』の広大なオープンフィールドはいかにして作られたのか。6100m×7400mの超巨大マップをエンジニア視点で大解剖するセッションをレポート【CEDEC2022】 8月23日から25日にかけて、ゲーム開発者向けカンファレンス「CEDEC2022」が今年も開催された。本記事ではイベント2日目に行われたセッション「ELDEN RINGのオープンなフィールドに対応するためのエンジニア取り組み事例紹介」のレポートをお届けする。 フロム・ソフトウェア初のオープンなフィールドを実装した『エルデンリング』は、同社が得意とする美麗なグラフィックで壮大かつシームレスな空間を見事に表現した。しかし、広大なスケールのフィールドはいかにして開発されたのか。 本セッションでは、そんな『エルデンリング』の広大で美麗なフィールドの開発過程を明らかにする。登壇者は本作にシステムデザインディレクターとして参加

                        『エルデンリング』の広大なオープンフィールドはいかにして作られたのか。6100m×7400mの超巨大マップをエンジニア視点で大解剖するセッションをレポート【CEDEC2022】
                      • ウォーターフォールを殺しにきている書籍「継続的デリバリーのソフトウェア工学」を読んだ - 勘と経験と読経

                        読むのがホネな(積みがちな)技術書やビジネス書を取り上げて2週間の読書期限を課して読んでアウトプットする仮想読書会「デッドライン読書会」の第52回。常時、けっこうな量の積読があるのだけれども、知り合いと読書期日を約束することによって消化が捗るという仕組み。過去5回分のログはこんな感じ。 #51 V字モデルの深淵を覗き込んで反省する:「単体テストの考え方(UTPPP)」を読む(後編) - 勘と経験と読経 #50 V字モデルの深淵を覗き見た気分:UTPPPを読む(前編) - 勘と経験と読経 #49 「デジタルトランスフォーメーション・ジャーニー」でDXできる? #デッドライン読書会 - 勘と経験と読経 #48 頭を良くしたいので「哲学思考トレーニング」を読んだ #デッドライン読書会 - 勘と経験と読経 #47 いまさら「マスターアルゴリズム」読んだ #デッドライン読書会 - 勘と経験と読経 さ

                          ウォーターフォールを殺しにきている書籍「継続的デリバリーのソフトウェア工学」を読んだ - 勘と経験と読経
                        • シェルスクリプトとの対比で理解するPythonのsubprocess - 朝日ネット 技術者ブログ

                          はじめに 開発部の ikasat です。 皆さんは git, ssh, rsync のような外部コマンドを呼び出すスクリプトを書きたくなったことはありますか? 個人的にこの類のスクリプトは最初はシェルスクリプトとして書くのですが、改修を重ねるうちに肥大化して処理も複雑になり、 後から Python のような汎用プログラミング言語で書き直すことがよくあります。 外部コマンド呼び出しを書き直す際に、Git 操作のために pygit2、 SSH 接続のために paramiko のようなライブラリをわざわざ使うのは大がかりだったり、 rsync に相当するようなこなれたライブラリが存在しなかったりする場合があります。 そのような時は標準ライブラリの subprocess モジュールを利用し、Python から外部コマンドを呼び出すことになるでしょう。 しかしながら、Python のチュートリアルペ

                            シェルスクリプトとの対比で理解するPythonのsubprocess - 朝日ネット 技術者ブログ
                          • 技術的負債は開発者体験を悪化させる - mtx2s’s blog

                            ソフトウェアエンジニアにとって、技術的負債が増え続けるソフトウェアプロダクト開発現場に身を置くことがどれほど苦痛なことであるか。エンジニアリング組織のマネジメントを長年担ってきて、それは強く感じるところだ。 中途採用の選考プロセスに面接官として参加し、これまで数多くの退職理由を見聞きしてきた。その中で、レガシーシステムをリファクタリング・リアーキテクティング・リライトできないことへの不満を理由として挙げるエンジニアは多かったように思う。裏を返せば、自社のソフトウェアプロダクトが技術的負債にまみれたまま放置されているなら、優秀な人材が他社に流出するリスクがあると認識すべきだ。 本稿では、技術的負債と開発者体験の関係について紐解くとともに、それに対してソフトウェアエンジニアリング組織を預かるマネージャーが取るべき行動について考えてみたい。 ※これは、Engineering Manager Ad

                              技術的負債は開発者体験を悪化させる - mtx2s’s blog
                            • オープンソースのプロジェクト管理ツール「Taiga」を試してみた | DevelopersIO

                              こんにちは!DA(データアナリティクス)事業本部 サービスソリューション部の大高です。 プロジェクト管理ツールは色々ありますが、スクラム開発を実施する際には一定のお作法などもあり、より特化したツールのほうが利用しやすいかと思います。 今回はそんなプロジェクト管理ツールとして、オープンソースのプロジェクト管理ツール「Taiga」を試してみました。 Taigaとは? Taigaはアジャイルチーム向けのプロジェクト管理ツールです。直感的なユーザーインターフェイスを備えており、また多言語対応もしています。 「Basicプラン」または「Premiumプラン」の2つから、いわゆるSaaS型の利用ができますが、一方でセルフホスティングとして利用することで無償利用も可能です。 今回は、こちらのセルフホスティング型での利用を試してみたいと思います。 前提条件として、Docker環境が必要となるので私はDoc

                                オープンソースのプロジェクト管理ツール「Taiga」を試してみた | DevelopersIO
                              • 【C#】C# の async/await は実際にどうやって動いているか。 - ねののお庭。

                                はじめに 登壇版 Taskの本質 C# のイテレータ async/await Compiler Transform ExecutionContext builder.Start() の重要性 IAsyncStateMachine.MoveNext おわりに はじめに C#er は呼吸するように使っている async/await。 そんな async/await について、先日 Stephen Toub 氏 (.NET の中の人。中心人物の一人。) が How Async/Await Really Works in C# という非常に面白い記事を投稿していました。 この記事では Stephen 氏の記事をベースに、C# において async/await は実際どうやって動いてるの?というお話をしていきます。 以前に C#での非同期メソッドの分析。 という翻訳記事を書いたのですが、元になった記

                                  【C#】C# の async/await は実際にどうやって動いているか。 - ねののお庭。
                                • 「施策デザインのための機械学習入門」を完全に理解したサトシくんがポケモン捕獲アルゴリズムを実装する話 - kanayamaのブログ

                                  プロローグ ストーリー編 第1章 感銘 step1. KPIの設定 step2. データの観測構造をモデル化する step3. 解くべき問題を特定する step4. 観測データのみを用いて問題を解く方法を考える step5. 機械学習モデルを学習する step6. 施策を導入する 第2章 絶望 第3章 反省 第4章 再起 step1(再) KPIの設定 step2(再) データの観測構造をモデル化する step3(再) 解くべき問題を特定する step4(再) 観測データのみを用いて問題を解く方法を考える step5(再) 機械学習モデルを学習する step6(再) 施策を導入する 第5章 俺たちの戦いはこれからだ! 実装編 準備 擬似データの生成 意思決定モデルの学習 モデルのオフ方策評価 モデルの真の性能の評価 まとめ この記事を読んだ方はこんな記事も読んでいます(多分) @tkana

                                    「施策デザインのための機械学習入門」を完全に理解したサトシくんがポケモン捕獲アルゴリズムを実装する話 - kanayamaのブログ
                                  • Stable Diffusion の仕組みを理解する - ABEJA Tech Blog

                                    この記事は、ABEJAアドベントカレンダー2022 の 19 日目の記事です。 こんにちは!株式会社 ABEJA で ABEJA Platform 開発を行っている坂井です。 世間では Diffusion Model 使った AI による画像生成が流行っているみたいですね。 自分は元々 Computer Vision 系の機械学習エンジニアだったんですが、この1年くらいは AI モデル開発ではなくもっぱらバックエンド開発メインでやっていて完全に乗り遅れた感あるので、この機会に有名な Diffusion Model の1つである Stable Diffusion v1 について調べてみました!*1 では早速本題に入りたいと思います! Stable Diffusion v1 とは? Denoising Diffusion Probabilistic Model(DDPM) 学習時の動作 for

                                      Stable Diffusion の仕組みを理解する - ABEJA Tech Blog
                                    • 開発者の生産性を測るためのフレームワーク`SPACE`について

                                      LeanとDevOpsの科学の著者の一人であるNicole Forsgren氏が著者に入っているThe SPACE of Developer Productivity: There's more to it than you think - Microsoft Researchで提唱されているSPACEについて 以下記事も Four Keysだけじゃない開発者生産性フレームワーク 開発生産性の可視化フレームワークであるSPACEを活用するために、どのようなメトリクスをどう取得するかについて考えてみる 要約 SPACEは開発者の生産性を計測するためのフレームワーク 推奨されている測定指標のカテゴリ(本文ではディメンションと定義)の頭文字 satisfaction and well being performance activity communication and collaborati

                                        開発者の生産性を測るためのフレームワーク`SPACE`について
                                      • 権限移譲する技術 - 宮田昇始のブログ

                                        SmartHRの社長の宮田です。 この記事は SmartHR Advent Calendar 2019 3日目の記事です。 ソフトウェア開発にも役立つであろう「権限移譲」について書こうと思います。 胸を張って「これが得意です」と言えるものってそんなに無いのですが、CTOの芹澤さんから権限移譲だけはホメてもらえます。最近では「もしかしたら得意なのかも?」と思えるようになりました。そんな私が気をつけているポイントをまとめています。 権限移譲について学んだことはなく、独学です。そのため、すごーく当たり前のことしか書いてないかもしれませんし、逆に一般論からかけ離れている可能性があります。 あくまで、私が気をつけているポイントとして読んでいただければ。 いかに権限移譲してきたか? はじめに、私の権限移譲について紹介します。 半年でプロダクトにノータッチに 起業する前、私はWebディレクターとして仕事

                                          権限移譲する技術 - 宮田昇始のブログ
                                        • 良い問題がチームをリードする

                                          ここ1年弱くらいバンドルカードのプロダクトマネージャーをやっている。やっていく過程でとても参考になった本、ブログ記事がたくさんある。 そんな文章の1ページ1ページの中には、それこそ頭をかきむしりながら読んだページがあるし、読んだ瞬間思わず天井を見上げてしまうようなページもあった。心にグッサリ刺さる他者の経験や知見の言語化と、自身の経験を重ね合わせた際に、今何かまとめておきたい事あるかなと考えたらこの記事のタイトルになった。「良い問題がチームをリードする」だ。 PMの大切なスキルのうちの1つ 以下はCracking the PM Career: The Skills, Frameworks, and Practices To Become a Great Product Manager本編序章に寄稿されたマリッサ・メイヤーのパンチライン。 One of the most crucial sk

                                          • 「ChatGPT/LangChainによるチャットシステム構築 」という書籍が素晴らしかったのでNode.jsでも書いてみた - selmertsxの素振り日記

                                            はじめに 「ChatGPT/LangChainによるチャットシステム構築」 という本が素晴らしかったので、ちゃんと身につけるために Python だけじゃなくて Node.js でも動かしてみました。同じことをやろうとした人のために、ここにそのときの記録を残します。特に callbacksやmemoryについて、詳細に記載しようと思います。 書籍の説明につながるようなことはできる限り書きません!めっちゃ良書なので、ご興味持っていただけた方は購入してもらえますと 🙏 5章まではPython固有のToolを利用しており、6章の中身は7章とかなり近いところがあるので、7章のプログラムだけここに記載します。LangChainの学習に注力したいので、Serverelss Frameworkに関連するコードは省略しました。また、Momentoや @slack/bolt に関する説明はしません。 プロ

                                              「ChatGPT/LangChainによるチャットシステム構築 」という書籍が素晴らしかったのでNode.jsでも書いてみた - selmertsxの素振り日記
                                            • なぜ変化を起こすのが難しいのか? - 数年以上にわたって難しさに向き合い・考え取り組んできたこと / The reason why changing organization is so hard - What I thought and faced for more than several years

                                              Regional Scrum Gathering℠ Tokyo 2023 のクロージングキーノートの資料です。 https://2023.scrumgatheringtokyo.org/index.html

                                                なぜ変化を起こすのが難しいのか? - 数年以上にわたって難しさに向き合い・考え取り組んできたこと / The reason why changing organization is so hard - What I thought and faced for more than several years
                                              • 法律のデータ構造と検索

                                                デジタル庁は、法令標準 XML スキーマに準拠した、現行の法令データをe-Gov法令検索というサイト上で公開しています[1]。今回、この法令XMLをパースするPythonライブラリ ja-law-parser をつくり、法令データの全文検索をしてみました。 この記事では、日本の法令とそのデータ構造、法令XMLパーサについて解説し、最後に、それらを使った法令データの全文検索システムを実装する方法をご紹介します。法令検索の実装についても、GitHubリポジトリで公開しています。 この記事は、情報検索・検索技術 Advent Calendar 2023の16日目の記事です。 法律と法令 法律とは 法律の制定と公布 法律と法令の違い 法律の改正 法令のデータ構造 e-Govの法令データ 法令標準XMLスキーマ 法令番号と法令ID 題名 本則と附則 条・項・号 編・章・節・款・目 法令XMLパーサ:

                                                  法律のデータ構造と検索
                                                • 『8番出口』のおじさんは約14万ポリゴン。モデル=清澄白河駅説の真相は?開発者に制作過程をインタビュー

                                                  ——最初に簡単な自己紹介をお願いします。 KOTAKE CREATEと申します。以前はゲーム会社で3Dアーティストとして開発をしていましたが、『8番出口』がヒットしてくれたので、昨年末に会社を辞めて、今は個人開発者としてゲーム開発に取り組んでいます。 ゲーム会社に勤務していた頃はVFXやエンバイロメントを4~5年ほど担当していました。主なDCCツールはMayaで、一番得意なのはマテリアルとエフェクト系でしたね。 ——大ヒットした『8番出口』について質問していきたいと思いますが、まずは開発者のコタケさんご自身の言葉で「どのようなゲームか」を説明していただけますか? 「無限に続く地下通路にある異変に気付きながら脱出するゲーム」です。ホラージャンルに含めるかどうかは……個人的には微妙なラインだと思っています。 ——制作期間はどれくらいだったのでしょうか。 プロトタイプ作成や構想を練る期間が総計半

                                                    『8番出口』のおじさんは約14万ポリゴン。モデル=清澄白河駅説の真相は?開発者に制作過程をインタビュー
                                                  • 「桜井政博のゲームについて思うこと」を読んで思うこと|Jey.P.

                                                    紙の本が売り切れていたので手をつけていませんでしたが、ようやく全部揃ったので読みました。 まず前提として「桜井さん凄いなあ」というのはあるんですが、気になったのが、このエッセイは国内のゲーム開発手法の課題を再生産しているのではないか?ということです。 桜井さんのエッセイには繰り返し登場する課題がいくつかあります。 ・新しいディレクターが育たない、現れない ・桜井さんが忙しい ・シリーズもののゲームが増えるなど、ゲームの新奇性が減っている このうち「新しいディレクターが育たない」ことと「忙しい」ことは同一の問題で「権限の委譲が進まない」という、多くの組織に見られる問題と言えます。 しかし、エッセイで紹介されている開発手法を見ると「そりゃ、育たないのでは?」と思わざるを得ません。キャラクターの操作感を決めるパラメータは重要なので自分が担当する、企画は初期の企画書にすべて落とし込むなど、ものすご

                                                      「桜井政博のゲームについて思うこと」を読んで思うこと|Jey.P.
                                                    • 5年後には標準になっている可観測性のこと - Learning Opentelemetry の読書感想文 - じゃあ、おうちで学べる

                                                      はじめに 本稿は、オープンソースの可観測性(Observability)プロジェクトである OpenTelemetry を取り上げた書籍「Learning Opentelemetry」の読書感想文です。従来の可観測性の課題であったデータの分断を解消し、トレース、メトリクス、ログなどの様々なテレメトリデータを統合的に扱うことができる OpenTelemetry は、可観測性の分野における革命的な存在と言えます。 過去10年間で、可観測性はニッチな分野から、クラウドネイティブの世界のあらゆる部分に影響を与える数十億ドル規模の産業へと発展しました。しかし、効果的な可観測性の鍵は、高品質のテレメトリデータにあります。OpenTelemetryは、このデータを提供し、次世代の可観測性ツールと実践を開始することを目的としたプロジェクトです。 learning.oreilly.com 本書の想定読者は、

                                                        5年後には標準になっている可観測性のこと - Learning Opentelemetry の読書感想文 - じゃあ、おうちで学べる
                                                      • クックパッドの検索反映時間を 1/288 にしたシステム改修 - クックパッド開発者ブログ

                                                        こんにちは。レシピ事業部の新井(@SpicyCoffee)です。 クックパッドではこれまで、レシピを投稿してから検索結果に反映されるまで最長で 24 時間程度の時間がかかっていました。今回、この時間を 5 分程度、最長でも 10 分程度に短縮することに成功しました。本記事では、プロジェクトオーナーの立場で関わった私が代表してその開発について紹介します。 プロジェクトの目的と数値目標 本プロジェクトでは上記の「レシピを投稿してから検索結果に反映されるまでの時間短縮」が目的とされました。しかし、時間短縮といっても現状 24 時間であるものを "1 時間" にするのか、"1 分" にするのか、"1 秒" にするのかでは話が全然違います。この数値目標は設計を始めとした後の意思決定に大きく影響を与えるため、しっかりとした意図を持った状態で明確に定めておく必要がありました。 そこで、私とプロダクトオー

                                                          クックパッドの検索反映時間を 1/288 にしたシステム改修 - クックパッド開発者ブログ
                                                        • BPF Performance Toolsを読んだ感想 - go_vargoのブログ

                                                          BPF Performance Toolsを読んだので、感想ブログです。 先に感想を言っておくと「最高」でした。 BPF Performance Toolsとは? NetflixでKernel・パフォーマンスにかかわるチューニング・アーキテクチャを専門にしているBrendan Greggさんが書いた本です。BPFのiovisorというTracing分野の第一人者でもあります。 www.brendangregg.com 2019年12月に発売したばかりなので、BPFの分野では最新の本でしょう。他の著書に有名な本として(日本語版の)「詳解システム・パフォーマンス」があります。 BPF Performance Toolsは「詳解システム・パフォーマンス」第二弾と言えるかもしれません。ちなみにページ数は880Pあり、Kindleで表示される読み終わるための平均的な時間は「27時間30分」で、大作R

                                                            BPF Performance Toolsを読んだ感想 - go_vargoのブログ
                                                          • OpenAI API を用いた文書校正(誤字脱字検出) | blog.jxck.io

                                                            Intro OpenAI の API を用いて、長年の課題だった文書校正を VSCode 上で実現するプラグインを修作したところ、思った以上の成果だった。 文章校正と誤字脱字検出 執筆を補助するツールは多々開発されているが、基本は形態素解析を用いた品詞分析の延長で行うものが多かった。 よくある「助詞の連続」、「漢字の開き閉じ」、「一文の長さ」などは、ある程度の精度で検出可能ではあるが、結局執筆時に一番検出して欲しいのは「誤字脱字」だ。 文体をどんなに揃えたところで、誤字脱字があるとやはりクオリティが低く感じるし、そこさえ抑えられていれば、他のスタイル統一は訓練である程度なんとかなる。 英語のスペルチェックはかなり進んでいるが、日本語においてはそこまで革新的なものが見当たらない。あらゆるツールを試したが、結局満足のいく精度が出る誤字脱字検出は「Word の校正機能」しかなかった。 そこで筆者

                                                              OpenAI API を用いた文書校正(誤字脱字検出) | blog.jxck.io
                                                            • PurgeCSSを使用して、CSSファイルから未使用のスタイルを削除する方法

                                                              PurgeCSSを使用して、CSSファイルからWebページやアプリで未使用のスタイルを削除する方法を紹介します。 特にCSSフレームワークやライブラリを使用している時は、すべてのスタイルを使うことはないと思うので、劇的な効果があります。 How to Remove Unused CSS by Luca Spezzano 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに PurgeCSSとは ビルドツール JavaScriptフレームワーク PurgeCSSの使い方 PurgeCSSをgulpで実装する方法 PurgeCSSをNuxt.jsで実装する方法 はじめに PurgeCSSを使用すると、制作のワークフローに取り入れてCSSファイルを60%以上削減できます。 未使用のCSSを削減しよう 私はしばらくの間、CSSファイ

                                                                PurgeCSSを使用して、CSSファイルから未使用のスタイルを削除する方法
                                                              • 極めてAmazon的な"メカニズム"というお話|Yuki Nakazato|note

                                                                今でこそクラウドやアレクサ、ビデオやミュージックといった多角的なビジネスを展開するアマゾンだが、もともとはオンラインの小売りであり、依然としてそれはビジネスの大きな部分を占めている。オンラインのコンシューマービジネスは、感謝祭時期のBlack FridayとCyber Mondayに照準を絞って(今はPrime Dayもあるが)、仕入れや配送センター及び実際の配送キャパシティの増強など、数か月前から準備に取り掛かり、その集大成としてこのPeak Periodを執行し、そして12月後半にはオフィスががらがらになる、というのが伝統芸である。9月後半か10月前半くらいになると、既に青色吐息の社員を見かけることも少なくない(そんな社員のためにお菓子やらが夕方になるとカートで運ばれてくる。残念ながら今年はなかったが)。 アマゾンの強さの一つの理由は、私はこうしたピークシーズンに向けた過酷なOpera

                                                                  極めてAmazon的な"メカニズム"というお話|Yuki Nakazato|note
                                                                • CentOS8 (Minimum) インストールしてとんでもなかったこと一覧

                                                                  -NオプションについてCentOS7のls (8.22)のmanpageを見ると、実は載っているが微妙に異なる。 -N, --literal print raw entry names (don't treat e.g. control characters spe‐ cially)CentOS8のls (8.30)はこうだ。 -N, --literal print entry names without quotingmanpageには以前のバージョンから-Qや--quoting-styleなどのオプションはあるが、そもそもメタ文字をクォートする動作そのものについては何の説明もない。いつどのタイミングか分からないが、メタ文字の扱いが突然変更になったようだ。 -Nによる動作の違いを比較してみると、 クォートされたファイルを含むと、有無を言わさずすべてのカラムにパディングが入るようだ。 とり

                                                                    CentOS8 (Minimum) インストールしてとんでもなかったこと一覧
                                                                  • ここが変だよ「WSL2」 自作ディストロ開発で発見した知られざる“バグ”と“事実”

                                                                    Kernel/VM探検隊は、カーネルやVM、およびその他なんでもIT技術の話題ジャンルについて誰でも何でも発表してワイワイ盛り上がろうという会です。佐伯氏は、WSL2においてあまり知られていないバグと事実について発表しました。 自己紹介 佐伯学哉氏(以下、佐伯):Kernel/VM online part4ですが、「ここが変だよWSL2」という日本語タイトルで、スライドは英語になっていますが、WSL2(Windows Subsystem for Linux 2)に関するいろいろなことを話します。 アウトラインですが、基本的にはランダムトークで小ネタをたくさん話します。なので、WSLとは何かとか、技術的には興味深いけれど公式のドキュメントがきちんと説明してること、つまりWSLgですね。技術的にはおもしろいのですが、公式が全部説明しているので、ここでは一切触れません。このトークは、僕が個人的に

                                                                      ここが変だよ「WSL2」 自作ディストロ開発で発見した知られざる“バグ”と“事実”
                                                                    • ZOZOTOWNのWebホーム画面をNext.jsでリプレイスして得た知見 - ZOZO TECH BLOG

                                                                      はじめに ZOZOTOWN開発本部の武井と申します。ZOZOTOWNのフロントエンドリプレイスプロジェクトを主に担当しております。ZOZO DEVELOPERS BLOG でも「ZOZOのリプレイスプロジェクトで得られる唯一無二の経験。大規模サービスを進化させるやりがいとは」というインタビュー記事を掲載しておりますので、もしよろしければこちらも併せてご覧ください。 さて、本題です。現在ZOZOTOWNではオンプレミスかつ、モノリスだった既存システムをマイクロサービスAPIに責務を分割したり、インフラをクラウドに移行したりしています。しかし、いわゆるWebのUIを構築するためのシステムは現在も既存システムに新機能開発や機能改修を行なっており、リプレイスに着手できていませんでした。 そこで、まずホーム画面から段階的にリプレイスすべく設計・開発を昨年から行ない、無事リリースできました。ZOZOT

                                                                        ZOZOTOWNのWebホーム画面をNext.jsでリプレイスして得た知見 - ZOZO TECH BLOG
                                                                      • GitHubは200万行規模のRailsアプリケーションであり、毎週RailsとRubyを最新版にアップデートし続けている

                                                                        GitHubは200万行規模のRailsアプリケーションであり、毎週RailsとRubyを最新版にアップデートし続けている 4月10日でサービス開始からちょうど15周年を迎えたGitHubは、当初からRuby on Railsを用いたモノリシックなアプリケーションとして作られてきました。現在では200万行近い規模のコードになっているそうです。 今年1月にはGtHubを利用しているデベロッパーが1億人に到達したことも発表しました。GitHubはまさに世界最大級のRailsアプリケーションだと言っていいでしょう。 そのGitHubは5年前の2018年、Railsのバージョンを3.2から5.2に上げる作業に1年半を費やし。そして二度とこのようなことにならないよう、より頻繁にアップデートを行うべき、などの教訓を得たとしていました。 そして現在、GitHubは毎週月曜日にRailsのアップデート作業

                                                                          GitHubは200万行規模のRailsアプリケーションであり、毎週RailsとRubyを最新版にアップデートし続けている
                                                                        • アジャイル迷子のための「アジャイルの本質」。あとDDDとのつながり - little hands' lab

                                                                          記事の構成 アジャイルソフトウェア開発とは アジャイルマニフェストとは アジャイルマニフェストの問題 そこで、アジャイルの本質 by マーティンファウラー アジャイルソフトウェア開発とは? アジャイルソフトウェア開発とはなんでしょうか? 「アジャイルマニフェスト(後述)の4つの価値観、12の原則に従う開発方法の総称」 これが最もオリジナルな定義です。 なぜこんなややこしい言い回しをするのは後から説明します。 重要なことは、「アジャイル」という具体的な手法があるわけではないということです。 アジャイルはマインドセット(思想、考え方)です。そのため、 ✖️ do agile 「アジャイルをやる」はありません。 ⭕️ be agile 「アジャイルになる、アジャイルの思想に則る」はあります。 アジャイルの思想に則った開発手法として ・スクラム ・エクストリームプログラミング(XP) ・リーンスタ

                                                                            アジャイル迷子のための「アジャイルの本質」。あとDDDとのつながり - little hands' lab
                                                                          • アジャイル・DevOps時代の テストと品質保証 (完全版) / Testing and Quality Assurance in Agile and DevOps Era

                                                                            この10年は多くの変化がありました。 ソフトウェア開発プロセスにおいては、アジャイル開発の普及が進み、さまざまな現場でスクラムが活用されるようになりました。 技術面では、コンテナ技術やその管理の自動化が進み、システムはどんどん複雑になりつつあります。 一方で、テストや品質保証はどのように変わってきたでしょうか? 私はアジャイルコーチとして10年活動してきましたが、 最近話題の「DX(デジタルトランスフォーメーション)」の影響か、 開発に速さがより求められるようになってきたように感じています。 そして、その影響もあってか「テストがボトルネックになりがち」や 「マニュアルテストのチームがコストセンターになってしまった」という相談をよく受けるようになりました。 このセッションでは、アジャイル・DevOps時代におけるテストと品質について、 - 現在 - 戦略と戦術 - 組織未来 のお話させていた

                                                                              アジャイル・DevOps時代の テストと品質保証 (完全版) / Testing and Quality Assurance in Agile and DevOps Era
                                                                            • Amazon SES でメール送信するときのベストプラクティスまとめ(2020年10月) | DevelopersIO

                                                                              Amazon SES API についての補足の説明です。 From, To, Subject, Body のみ指定すれば、残りはすべて AmazonSES が適切にフォーマットした Eメールメッセージで簡単にメール送信できるのが SendEmail API です。 添付ファイルを使うなど、独自に細かく制御したフォーマットにカスタマイズしてメール送信をしたい場合は SendRawEmail API を利用します。 基本となるテンプレートメールを作成して、テンプレート内の変数に対してパーソナライズされた値に置換した内容で Eメールメッセージを送信できるのが SendTemplatedEmail および SendBulkTemplatedEmail のAPIです。 詳細については、AmazonSESのEメール送信方法 を確認下さい。 SESのSMTPエンドポイントを使ったメール送信例は下記ブログ

                                                                                Amazon SES でメール送信するときのベストプラクティスまとめ(2020年10月) | DevelopersIO
                                                                              • Go コンパイラのコードを読んでみよう - kosui

                                                                                はじめに 本記事は、 DeNA Advent Calendar 2020 の 11 日目の記事です。 突然ですが、「コンパイラのコードを読んでみよう」なんて言われても、「どうせ巨大で難解で複雑なロジックを理解しないと読めないんでしょ?」と思いませんか。 コンパイラの構造を理解しようとしても聞いたことのないような専門用語がずらりと並び、コードを読もうとしたらそれらをすべて完全に理解してないと一行も理解できないんじゃないか...。Go のコンパイラ gc のソースコードを読むまでは、私もそう思っていました。 しかし、あまりにも暇な休日のある日、思い立って gc のコードを読んでみました。すると、「コンパイル」という難解な響きの処理も、一つひとつを小さなタスクに分解することで、少しずつ読み進めることができると分かったのです! 何よりも感動したことは、 gc そのものが全て Go で書かれていて、

                                                                                  Go コンパイラのコードを読んでみよう - kosui
                                                                                • 進捗率を何で測るか? −−情報処理技術者試験の問題より | タイム・コンサルタントの日誌から

                                                                                  「プラント・エンジニアリング会社のように、物理的に目に見えるモノを作っている分野は、数量が測りやすいからいい。ソフトのように目に見えない成果物を作る仕事は、進捗管理がとても難しい。」 ・・こういう意味のことを、IT業界の方から何度か言われたこともある。いえいえ、どういたしまして。プラント・エンジニアリングのプロジェクトでは、設計業務だけで18ヶ月〜24ヶ月もかかる。この間、膨大な図面や仕様書が生成されるが、プラント予定地では1年後にやっと、基礎工事のための穴掘りが始まる程度だ。設計作業の進捗をどう捉えるかは、同じように悩ましい。

                                                                                    進捗率を何で測るか? −−情報処理技術者試験の問題より | タイム・コンサルタントの日誌から