並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 824件

新着順 人気順

Bazelの検索結果41 - 80 件 / 824件

  • PyTorch vs TensorFlow in 2023

    Should you use PyTorch vs TensorFlow in 2023? This guide walks through the major pros and cons of PyTorch vs TensorFlow, and how you can pick the right framework. PyTorch and TensorFlow are far and away the two most popular Deep Learning frameworks today. The debate over which framework is superior is a longstanding point of contentious debate, with each camp having its share of fervent supporters

      PyTorch vs TensorFlow in 2023
    • LINEはなぜBazelを使わないことにしたのか?

      Jung Giuk2023-08-292019年 LINE に Build Engineerとして入社し、現在は「アプリプラットフォーム開発室」のディベロッパーエクスペリエンス開発チームに携わっていて LINE iOSアプリのビルド環境やコードクォリティの改善に取り組んでいる。 はじめに こんにちは、ディベロッパーエクスペリエンス開発チームのJungです。 この記事では2年以上 LINE iOSのビルドシステムとして運用したBazelをやめることにした背景についてご紹介します。 Bazel導入とこれまでのLINE iOS LINE iOS は200万行以上のソースコードと200以上のモジュールで構成される大規模プロジェクトです。 LINE iOSのソースコードとモジュールの数が増えて規模を拡大し続けるにつれて、ビルド/テストの遅延と DX(デベロッパーエクスペリエンス) の低下という避けら

        LINEはなぜBazelを使わないことにしたのか?
      • Knative Servingを用いて多数の開発環境APIを低コストで構築する - ZOZO TECH BLOG

        はじめに こんにちは、技術本部ML・データ部MLOpsブロックの鹿山(@Ash_Kayamin)です。先日、20個の開発環境APIを用意し、各APIをリクエストに応じて動的に起動できる仕組みをKnative Servingを用いて構築しました。 この記事ではKnative Servingを利用した背景と、利用方法、はまりどころ、利用によって得られたコスト削減効果についてご紹介します。なお、今回はKubernetesクラスタのバージョンとの互換性の都合でKnativev1.3.1を利用しました。2022/9現在の最新バージョンはv1.7.1になりますのでご注意ください。 目次 はじめに 目次 課題:20個の異なる開発環境APIを低コストで提供したい 解決策:Knative Servingを用いて、リクエストに応じて動的にAPIサーバーを起動する仕組みを導入する Google Cloud上でA

          Knative Servingを用いて多数の開発環境APIを低コストで構築する - ZOZO TECH BLOG
        • Goのテスト安定性向上のためにFlakyなテストを再試行する機能を導入する提案 - tomato3713’s blog

          Go言語にFlakyなテストへのサポートを追加する提案が面白かったので紹介します。 概要 Flakyなテストとは、コードに変更がないにもかかわらずテストが成功したり失敗したりと不安定な実行結果になるテストのことです。 テスト結果は本来なら全て成功ならリリース可能、1つでも失敗すればバグがあるのでリリース不可のようにリリースの可否を判断するための情報です。 そのため、不安定なテストは書かないようにすることが大前提です。 しかし、実際にはflakyであるとわかっていても修正が難しかったり、修正するための時間がないのでそのまま残すという判断をすることもあります。 Flakyなテストは削除するというのも手ではありますが不安定であってもテストが無いよりはマシとして残すこともあると思います。 github.com この提案では、Flakyなテストを扱うための機能を追加するものです。 初めの提案内容は、

            Goのテスト安定性向上のためにFlakyなテストを再試行する機能を導入する提案 - tomato3713’s blog
          • ポーランドのVirtusLabでScalaのコンパイラエンジニアとして活躍中のid:tanishiking24を訪問 | はてな卒業生訪問企画 [#14] - Hatena Developer Blog

            こんにちは、CTO の id:motemen です。 Hatena Developer Blogの連載企画「卒業生訪問インタビュー」では、創業からはてなの開発に関わってきた取締役の id:onishi、CTOの id:motemen、エンジニアリングマネージャーの id:onkが、いま会いたい元はてなスタッフを訪問してお話を伺っていきます。 id:motemen が担当する第14回のゲストは、ポーランドを拠点とするソフトウェア開発およびコンサルティング企業であるVirtusLabで、Scalaのコンパイラエンジニアとして活躍しているid:tanishiking24 さんこと、谷口力斗さんです。 id:tanishiking24 さんは、京都大学工学部の学生時代からはてなにアルバイトとして所属。その後、2017年に新卒で入社し、「はてなブックマーク」をScalaとDDDで完全リライトする大規

              ポーランドのVirtusLabでScalaのコンパイラエンジニアとして活躍中のid:tanishiking24を訪問 | はてな卒業生訪問企画 [#14] - Hatena Developer Blog
            • turborepo で monorepo の差分ビルド

              Turborepo vercel が開発した monorepo 環境のためのビルドツールです。vercel ですが next 非依存です。 turborepo が何を解決するか node.js に限らず monorepo 環境下では、それぞれの内部モジュールのビルドは個別に行われることが多いです。ここでいう内部モジュールは、 package.json を持つディレクトリ単位、と捉えてもらって結構です。 apps/ web/ package.json # => foo, bar を参照 packages/ foo/ package.json dist/ index.js bar/ package.json # => foo を参照 dist/ index.js package.json このビルドが、(ビルドしない素の js と比べて)面倒な問題を引き起こします。 更新時にビルドを忘れて古い

                turborepo で monorepo の差分ビルド
              • モノレポ好きじゃない / morrita - Message Passing

                自分は今は社内 Monorepo での作業がメインで、たまに Android とかさわってる。 レポジトリの壁というか、レポジトリの違いを含むインフラの違いの壁は、組織の壁より厚い。 この話は前にも書いたことがある。 だから向井さんの言っていることはよくわかる。 Monorepo が強制するインフラ共通化が押し下げた組織の壁の低さを、しばしば実感する。 たとえば最近だと、仕事でやっている Android アプリの APK のビルド方法が変わった際にビルドツールチェインにあるマイナーなバグにあたってしまい、 そのツールのバグを直したことがあった。そんなツールがあるとは知らなかったというくらい降って湧いた話。 でもビルドシステムが統一されているおかげでコードをビルドするのもテストするのも簡単で、 IDE も普段の設定そのまま。コードレビューもいつもと同じ。 はじめてのコードベース、レビュー相手

                  モノレポ好きじゃない / morrita - Message Passing
                • Why Turborepo is migrating from Go to Rust – Vercel

                  Turborepo is a high-performance build system for JavaScript and TypeScript codebases. We're reimagining build systems, taking inspiration from tools like Buck and Bazel, to make them accessible for everyone. At the heart of Turborepo is a very simple idea: never do the same work twice. We accomplish this through incremental builds, parallel execution, and Remote Caching. As usage has grown and pro

                    Why Turborepo is migrating from Go to Rust – Vercel
                  • 物体検出器 EfficientDet をブラウザで高速推論 - OPTiM TECH BLOG

                    R&D チームの奥村(@izariuo440)です。EfficientDet がブラウザで動いているのを見たことがなかったので、やってみました。以下はブラウザで実行中の様子1です。 結果として、EfficientDet-D0 で 256x256 の解像度の画像を TensorFlow Lite で推論させると、ネイティブで 20 FPS、WebAssembly SIMD support ありの Chrome で 7 FPS 程度の速度性能を確認できました。 Case XNNPACK XNNPACK スレッド数 FPS A OFF N/A 4 B ON 1 15 C ON 4 20 測定環境は MacBook Pro (Retina, 15-inch, Mid 2015) の 2.5 GHz です。 背景と動機 周辺知識 EfficentDet EfficientDet の精度 Effici

                      物体検出器 EfficientDet をブラウザで高速推論 - OPTiM TECH BLOG
                    • It's Time to Forget About Docker | Martin Heinz | Personal Website & Blog

                      In the ancient times of containers (really more like 4 years ago) Docker was the only player in the container game. That's not the case anymore though and Docker is not the only, but rather just another container engine on the landscape. Docker allows us to build, run, pull, push or inspect container images, but for each of these tasks there are other alternative tools, which might just do better

                        It's Time to Forget About Docker | Martin Heinz | Personal Website & Blog
                      • Compression Dictionary Transport (Shared Brotli) によるコンテンツ圧縮の最適化 | blog.jxck.io

                        Intro Chrome で Compression Dictionary Transport の Experiment が行われている。 Intent to Experiment: Compression dictionary transport with Shared Brotli https://groups.google.com/a/chromium.org/g/blink-dev/c/NgH-BeYO72E この提案の仕様および本サイトへの適用について解説する。 brotli の Dictionary 圧縮方式は、基本的に「同じ値が出てきたら、それらをまとめて小さく表現する」という方式が中心となる。 # 繰り返しを数値で表現する場合 from: aaaabbbbb to: a4b5 この方式は、対象としたデータの中で、如何に効率よく「同じ値」を見つけるかが肝となる。例えば以下の例

                          Compression Dictionary Transport (Shared Brotli) によるコンテンツ圧縮の最適化 | blog.jxck.io
                        • LINEアプリのさらなる体験向上のために。モバイルエクスペリエンス開発室が目指すビジョン

                          LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog LINEの技術組織が取り組んでいる・今後取り組む未解決課題を深堀りするインタビューシリーズ「Unresolved Tech Issue」をスタートします。今回のテーマは「LINEアプリのさらなるモバイル体験向上に向けた改善・開発」です。 数億人のユーザーがコミュニケーションに利用するLINEアプリのクライアント開発組織では、2021年にモバイルエクスペリエンス開発室を立ち上げました。この開発室では、iOS/Androidの新機能対応やLINEアプリを複数のデバイスで利用する際の体験向上、モバイルプラットフォーム特有のビルド課題の改善などに挑んでいます。 モバイルエクスペリエンス開発室の活動の詳細について、室長の早石明浩と副室長

                            LINEアプリのさらなる体験向上のために。モバイルエクスペリエンス開発室が目指すビジョン
                          • Buildpacksのビルダーをスクラッチから作ってみる | フューチャー技術ブログ

                            TIGの渋川です。 CNCF連載の第4回は、CNCFのSandboxプロジェクトのBuildpacksについて紹介します。 https://buildpacks.io BuildpacksとはHerokuがオリジナルで作ったビルドツールです。HerokuのオリジナルはHerokuのプラットフォーム用のビルドツールだったと思いますが(使ったことはない)、CNCF版はコンテナイメージを作成します。オリジナル版とはいろいろ違いがあり、区別をつけるためにCloud Native Buildpacks(略してCNB)と呼称されているようです。 ツールの方針としては、ビルド設定ファイルのようなものを作らなくても(実行情報のみを書いたファイル、project.tomlは書ける)ソースコードを与えるだけで、Dockerfileなどを使わずにDockerimageが作れます。 使い方は簡単で、作業フォルダで

                              Buildpacksのビルダーをスクラッチから作ってみる | フューチャー技術ブログ
                            • The Legends of Runeterra CI/CD Pipeline

                              The Legends of Runeterra CI/CD Pipeline Hi, I’m Guy Kisel, and I’m a software engineer on Legends of Runeterra’s Production Engineering: Shared Tools, Automation, and Build team (PE:STAB for short). My team is responsible for solving cross-team shared client technology issues and increasing development efficiency. We focus on the areas that empower other teams to do more and protect the team from

                                The Legends of Runeterra CI/CD Pipeline
                              • Cloud Deploy 実践編: CI との連携

                                前回『デプロイに全集中!新サービス Cloud Deploy』では、Cloud Deploy (現在プレビュー段階です)の背景にある思想 & 基本的な使い方をご紹介しました。今回は少し視野を広げ CI との関係を知り、連携して動かすことをゴールに、その過程で考慮すべきポイントも併せてご紹介します。 TL;DRCI と CD の管理主体が分かれます、改めて理想を検討しましょうgit リポジトリでテスト・ビルド・デプロイ “方法” を管理CI でテストし、ビルドし、成果物をまとめるCD で成果物とデプロイ先の管理 & ロールアウト / ロールバックこの 3 つを繋ぐのは Skaffold ローカルから実行環境までの様々な環境差異視野を広げつつも、今回も Google はどんなことを課題と捉え、何を解決しようとしているのかを一緒に考えてみたいと思います。 CI / CD パイプラインパイプライン

                                  Cloud Deploy 実践編: CI との連携
                                • 2021年10月以降の Mozc に対する主な変更

                                  初稿: 2022-10-10 2021 年 10 月以降の Mozc に対する主な変更をまとめました。ドキュメントやコミットログ、 Issues に書かれているものをまとめただけで新しい情報はありません。抜けているものがあれば後で追記します。 Mozc の問題の報告や機能の要望等は、GitHub の Issues や Discussions へお願いします。 前回: 2020 年以降の Mozc に対する主な変更 次回: 2022 年10月以降の Mozc に対する主な変更 統計情報 コミット数: 509 クローズした issue の数: 91 (Issues · google/mozc) マージしたプルリクエスト数: 2 (Pull requests · google/mozc) ビルド関連 GYP から Bazel への移行 GYP はメンテナンスモード。今後は非推奨に。 GYP での

                                    2021年10月以降の Mozc に対する主な変更
                                  • 大奥 | Netflix (ネットフリックス) 公式サイト

                                    '); doc.close(); } if (!doc) throw Error('base not supported'); var baseTag = doc.createElement('base'); baseTag.href = base; doc.getElementsByTagName('head')[0].appendChild(baseTag); var anchor = doc.createElement('a'); anchor.href = url; return anchor.href; } finally { if (iframe) iframe.parentNode.removeChild(iframe); } }()); } // An inner object implementing URLUtils (either a native URL // ob

                                      大奥 | Netflix (ネットフリックス) 公式サイト
                                    • Earthlyでコンテナ時代のビルド環境を味わう - Runner in the High

                                      【これはUnipos Advent Calendar 2021の2日目の記事です】 つい最近、EarthlyというDockerコンテナベースのビルドツールで、自分の開発しているGoのアプリケーションのMakefile/Dockerfile/docker-compose.yamlを置き換えたのでそれを記事にしてみる。 Earthlyとは github.com めちゃくちゃ雑に言うとDockerイメージをベースにしたビルドツール。 できることとしてはGoogleが作っているBazelに近い*1が、書き味はMakefile+Dockerfileに近く*2、独特の文法が少ない雰囲気。当然、言語やフレームワークに依存しない。まるでローカル環境でビルドをしているかのようにシームレスにコンテナ環境でビルドを実行できる。 Earthlyは書き味こそDockerfileと似ているが、Dockerイメージを作

                                        Earthlyでコンテナ時代のビルド環境を味わう - Runner in the High
                                      • go-graphviz が新しくなりました - Route54

                                        TL;DR goccy/go-graphviz が新しくなり、cgo を使って Graphviz の機能をバインディングしていたところを WebAssembly ( 以降 WASM ) ベースに置き換えたため、晴れて Pure Go になりました。 一部 API のインターフェースが少し変わっていますが、以前できたDOT言語の読み書きやSVG、PNGとしての出力などは全て可能です。それに加え、図中の画像のレンダリングサポートやフォントまわりの改善、最新のGraphvizライブラリへの対応により以前よりもレンダリング処理が改善されています。 また、任意の出力フォーマットに対するレンダリング処理をプラグイン形式で外から追加できるようになったので、terraform graph の内容を読んで構成図を出力するとか、アスキーアート出力するみたいな特殊な処理が実装しやすくなりました。 Graphvi

                                          go-graphviz が新しくなりました - Route54
                                        • gRPC サーバのビルドに Earthly を使ってみよう

                                          今 Earthly というビルドツールが (自分の中で) 俄かに話題になっています.自分で手を動かしてサンプルコードを作ってみたので,それを基に簡単に機能を紹介したいと思います.題材は Go + gRPC です. Earthly って何? Earthly は Makefile と Dockerfile を足したような書き味のビルドツールで, Makefile のように複数のタスクを定義し,タスクの中で Dockerfile を書くような感じでテストのような命令を実行したり,イメージを生成して保存したりできます. すでに他の方が Earthly を紹介している記事もあるのでぜひご覧ください. Earthly の大きな特徴は "Makefile + Dockerfile 風な構文の馴染みやすさ", "タスクをコンテナ上で実行することによる可搬性の高さ", "ビルドキャッシュの仕組みの簡単さ (

                                            gRPC サーバのビルドに Earthly を使ってみよう
                                          • Netflix (ネットフリックス) 日本 - 大好きな映画やドラマを楽しもう!

                                            '); doc.close(); } if (!doc) throw Error('base not supported'); var baseTag = doc.createElement('base'); baseTag.href = base; doc.getElementsByTagName('head')[0].appendChild(baseTag); var anchor = doc.createElement('a'); anchor.href = url; return anchor.href; } finally { if (iframe) iframe.parentNode.removeChild(iframe); } }()); } // An inner object implementing URLUtils (either a native URL // ob

                                              Netflix (ネットフリックス) 日本 - 大好きな映画やドラマを楽しもう!
                                            • Lyra - enabling voice calls for the next billion users

                                              The latest news from Google on open source releases, major projects, events, and student outreach programs. The past year has shown just how vital online communication is to our lives. Never before has it been more important to clearly understand one another online, regardless of where you are and whatever network conditions are available. That’s why in February we introduced Lyra: a revolutionary

                                                Lyra - enabling voice calls for the next billion users
                                              • メルカリShopsを支えるMonorepo ML開発環境 | メルカリエンジニアリング

                                                こんにちは!SouzohのMLチームでSoftware Engineerをしているwakanaです。 SouzohのMLチームは2021年4月にスタートし、ちょうど2年が経ちます。当時1人だったメンバーも、今では4人になり、レコメンデーションを中心に5, 6個の機能を提供するようになりました。MLOpsも成熟し、より新しく高度なML機能開発に集中して取り組める環境が整ってきていると感じています。 そこでこの記事では、立ち上げから2年たった今SouzohのPython, ML環境がどのようになっているか紹介しようと思います。これからPythonやMLのMonorepoでの開発環境を整えようとしている方、特に少人数での運用を考えてる方の参考になれば嬉しいです。 TL;DR SouzohではPoetry, Bazel, VertexAI Pipelinesで快適なMonorepo開発環境を実現

                                                  メルカリShopsを支えるMonorepo ML開発環境 | メルカリエンジニアリング
                                                • 3ヶ月で120のリポジトリを1つのMonorepo(モノレポ/モノリポ)に移行した話 - asoview! Tech Blog

                                                  PolyrepoとMonorepo これはアソビュー! Advent Calendar 2022の23日目です。 アソビューでVPoE兼Tech Leadをしているdisc99🐼です! 今回は、Monorepo運用の事例紹介をさせてもらえればと思います! アソビューではほぼすべてのGitリポジトリを統合したMonorepo運用を2年以上行っています。 最近では特定の技術領域やプロダクトに対してMonorepoを適用した事例は増えてきています。 しかし、社内のほぼすべてのソースコードを1つのMonorepoで管理している組織はまだ多くないと思いますので、参考になれば幸いです。 今回はなぜMonorepoに移行したかや、具体的にどのような管理をしているか、また今後の展望などを公開します! 🐣なぜMonorepoなのか 背景 Monorepoとは? 素早さ 分かりやすさ 管理のしやすさ その

                                                    3ヶ月で120のリポジトリを1つのMonorepo(モノレポ/モノリポ)に移行した話 - asoview! Tech Blog
                                                  • 赤ちゃんを科学する | Netflix (ネットフリックス) 公式サイト

                                                    '); doc.close(); } if (!doc) throw Error('base not supported'); var baseTag = doc.createElement('base'); baseTag.href = base; doc.getElementsByTagName('head')[0].appendChild(baseTag); var anchor = doc.createElement('a'); anchor.href = url; return anchor.href; } finally { if (iframe) iframe.parentNode.removeChild(iframe); } }()); } // An inner object implementing URLUtils (either a native URL // ob

                                                      赤ちゃんを科学する | Netflix (ネットフリックス) 公式サイト
                                                    • CoC が苦手な奴、認知資源が乏しいだけ説 - Neo's World

                                                      CoC が苦手な奴、認知資源が乏しいだけ説 「設定より規約」「CoC (Convention over Configuration)」と呼ばれる設計思想がある。 参考:設定より規約 - Wikipedia フレームワークやライブラリ側で、ベストプラクティスなデフォルト設定を規約として決めておくから、利用する開発者はイチイチ考えなくていいよ、というワケだ。 コレは、ともすれば、「Opinionated (自己主張的)」なフレームワークやライブラリだとみなすこともできるだろう。 参考:Opinionatedなライブラリとチーム開発 - Runner in the High 僕は CoC が割と好きだし、CoC か否かに関わらず、Opinionated なツールも好きである。だが、自分の回りでは「CoC が苦手」とか「柔軟性のないフレームワークは嫌い」といった人が多く、疑問を持っていた。 今回、

                                                      • lernaからlerna-lite + turborepoに移行する

                                                        Secretlintはmonorepoとなっていて、パッケージを公開する際にlernaを利用していました。 しかし、lernaは現在メンテナンスされていないため、publish機能だけを取り出したlerna-liteと効率的なmonorepo向けのビルドツールであるTurborepoへ移行しました。 Lerna is largely unmaintained · Issue #2703 · lerna/lerna 追記: NxによってLernaがメンテナンスされるそうです。 Announcement: Passing the torch · Issue #3121 · lerna/lerna Lerna is dead — Long Live Lerna. If you’re in a hurry, here’s the TL;DR: | by Juri Strumpflohner | M

                                                          lernaからlerna-lite + turborepoに移行する
                                                        • GoLang Desktop App with webview/Lorca, WASM and Bazel

                                                          On my quest towards building a GoLang Desktop application I found some useful frameworks, Lorca and Webview (which I wrote about in my previous post). These frameworks create a window which GoLang can inject HTML, CSS, and JavaScript to build the UI. But I don’t want to write JavaScript(!) and deal with all the complexities that comes with it like npm, webpack, typescript… Fortunately, I can just

                                                            GoLang Desktop App with webview/Lorca, WASM and Bazel
                                                          • 監視資本主義: デジタル社会がもたらす光と影 | Netflix (ネットフリックス) 公式サイト

                                                            '); doc.close(); } if (!doc) throw Error('base not supported'); var baseTag = doc.createElement('base'); baseTag.href = base; doc.getElementsByTagName('head')[0].appendChild(baseTag); var anchor = doc.createElement('a'); anchor.href = url; return anchor.href; } finally { if (iframe) iframe.parentNode.removeChild(iframe); } }()); } // An inner object implementing URLUtils (either a native URL // ob

                                                              監視資本主義: デジタル社会がもたらす光と影 | Netflix (ネットフリックス) 公式サイト
                                                            • Jest 27 について

                                                              https://jestjs.io/blog/2021/05/25/jest-27 についてまとめる。筆者は Jest についてあまり詳しくないので、記事中に誤りがあった場合はコメントで指摘していただけると嬉しい。 Jest 27 では Jest 15.0: New Defaults for Jest以降初の大幅なデフォルトの見直しが行われた。 また、そのような変更だけでなく、いくつかの新機能も実装されている。 新機能 比較的小さめなものとしては ESM のネイティブサポートが進んではいるが、モッキングなどの大きな複雑な問題が残っている。 シンボリックリンクとして置かれたテストファイルも適切に扱えるようになった。これは Bazel ユーザーが主に望んていたようだ。 transformを非同期にできるようになった。これは esbuild や snowpack、vite などのツールを介したト

                                                                Jest 27 について
                                                              • RubyKaigi 2025 スピーカーからのメッセージ

                                                                はじめに 2025 年も RubyKaigi が近づいてきましたね。今年は RubyKaigi 直前記事として、スピーカーのみなさんに任意で参加者・るびま読者に向けてのメッセージをいただきましたのでご覧ください! 名前の後ろのカッコに記載されているのは今年の RubyKaigi を含めた登壇回数、並びはスケジュール順です。 Day 1 Mari Imaizumi ( 5 ) Title: Between Character and Character Encoding 松山出身なので、地元で話すことができてとても光栄です。トークでは文字コードの面白いところについて語ります!お楽しみに! Hiroya Fujinami ( 3 ) Title: Make Parsers Compatible Using Automata Learning 自分の研究がなんとか Ruby や現実世界で役に立た

                                                                • Angular struggles in 2020

                                                                  Lars Gyrup Brink Nielsen for This is Angular Posted on Jul 21, 2020 • Edited on Nov 15, 2020 Cover photo by Pixabay on Pexels. The views expressed in this opinion piece are entirely my own. They do not represent any organization. You're going down a dark, murky, slippery road and you've lost your way. What do you do? Keep moving while acting like everything is alright? Or stop and ask for help? Th

                                                                    Angular struggles in 2020
                                                                  • GitHub - facebook/buck2: Build system, successor to Buck

                                                                    Buck2 is a fast, hermetic, multi-language build system, and a direct successor to the original Buck build system ("Buck1") — both designed by Meta. But what do those words really mean for a build system — and why might they interest you? "But why Buck2?" you might ask, when so many build systems already exist? Fast. It doesn't matter whether a single build command takes 60 seconds to complete, or

                                                                      GitHub - facebook/buck2: Build system, successor to Buck
                                                                    • Carbon Language が発表されたので実際に動かしてみた

                                                                      はじめに 2022/07/19、C++ の後継言語の Carbon が発表されました。 最大の特徴としては、C++ との双方向の相互運用性です。 TypeScript や Kotlin と役割が近いですね。 Rust でいいのでは? はい、その認識で間違いないようです。 公式の FAQ でも「f you can use Rust, ignore Carbon」と記載されています。 あくまで、C++ に大きく依存するプロジェクト向けのようです。 Editor は? contribution_tools に記載されている通り、基本的には Vim で、数名 Visual Studio Code を利用しているメンバーがいるくらいのようです。 ただ、Carbon 用のプラグインはまだないようなので、本格的に開発するのはまだまだ難しそうです。 言語仕様 Language design に記載されてい

                                                                        Carbon Language が発表されたので実際に動かしてみた
                                                                      • (Almost) Every infrastructure decision I endorse or regret after 4 years running infrastructure at a startup

                                                                        Image from UnSplash I’ve led infrastructure at a startup for the past 4 years that has had to scale quickly. From the beginning I made some core decisions that the company has had to stick to, for better or worse, these past four years. This post will list some of the major decisions made and if I endorse them for your startup, or if I regret them and advise you to pick something else. AWS Link to

                                                                        • 関数を組み合わせてシステムを組む「Haskell」。クセの強さがその魅力?〜エンジニアが語る技術愛 #01〜|ミクシル

                                                                          ミクシィには、探究心溢れるエンジニアがたくさん在籍しています。 その探究心は業務で扱う技術にとどまらず、趣味で書いているプログラムだったり、個人的に研究している言語だったりと、自身の気になった技術への追求も留まることを知りません。 そこで、社内のエンジニアに“好きな技術”について、思う存分に語ってもらうシリーズを始めました。 ルールはこの通り。 ・業務で使っている技術でも、使われていない技術でもOK ・あくまでも個人的な見解で ・その技術のどこが面白いのか ・愛を込めて語り尽くしてもらう 第1回目は、「モンスターストライク(以下モンスト)」のサーバーエンジニアの松原に、関数型プログラミング言語「Haskell」についていったい何が面白いのか、どういうものなのか、好きなだけ語ってもらいました。 有名プログラミング言語のナレッジが通用しづらい独特な「Haskell」 ━━今日は好きな技術につい

                                                                            関数を組み合わせてシステムを組む「Haskell」。クセの強さがその魅力?〜エンジニアが語る技術愛 #01〜|ミクシル
                                                                          • bincr, 世界一簡単な incremental build tool

                                                                            依存を解析しつつのインクリメンタルビルド、各コンパイラについてたりついてなかったりするんですが、どのビルド環境にもほしいですよね。 真面目にやるんだったら bazel が鉄板みたいなんですが、基本的に超大規模向けでエコシステムのいろんな都合でセットアップが非常にだるいです。後付の導入も結構だるいです。 Bazel - a fast, scalable, multi-language and extensible build system" - Bazel というわけで、今回は自分が欲しい機能、「ソースのハッシュが過去のものと違う場合にビルドを実行」という機能に特化して作りました。逆にいえば他はなにもないです。依存解析も環境ごとの最適化もないです。 npm が入ってれば npm i -g bincr or npx bincr ... で実行可能です。特に node の機能を前提にしてないので

                                                                              bincr, 世界一簡単な incremental build tool
                                                                            • マイクロサービスのローカル開発をTiltでちょっと楽にする - HRBrain Blog

                                                                              こんにちは、バックエンドエンジニアの鈴木(善)です。 昨年に引き続き、今年もHRBrainではアドベントカレンダーをやっていきます! qiita.com この記事はその第一日目となります。 みなさん、マイクロサービスの開発ってどうされてますか? HRBrainでは現在マイクロサービス構成をとっており、日々の開発では個人のマシン上で各サービスを立ち上げて動作確認やデバッグができるようになっています(以下、ローカル開発環境と呼びます)。サービスが成長するとともにこの環境にも課題が出てきました。 これを改善するため「Tilt」というソフトウェアを試したところよかったので、今はTiltベースのローカル開発環境に乗り換えています。 Tiltに関する日本語の情報もまだ少なそうなので、今回は一つの導入事例として紹介してみようと思います。 本記事ではまず弊社の抱えていた課題に触れ、次にTiltの概要を説明

                                                                                マイクロサービスのローカル開発をTiltでちょっと楽にする - HRBrain Blog
                                                                              • The Death of Hype: What's Next for Scala

                                                                                A recent tweet by a friend of mine noted how the public interest in the Scala programming language seems to have plateaued or waned, which matches my feeling of the latest trends and zeitgeist. This blog post will go into why I think that has happened, where Scala stands now, and what the future holds for the Scala community. About the Author: Haoyi is a software engineer, and the author of many o

                                                                                • Bringing the power of AI to Windows 11 – unlocking a new era of productivity for customers and developers with Windows Copilot and Dev Home

                                                                                  Bringing the power of AI to Windows 11 – unlocking a new era of productivity for customers and developers with Windows Copilot and Dev Home The team and I are pumped to be back at Build with the developer community this year. Over the last year, Windows has continued to see incredible growth fueled by Windows 11 adoption. In fact, one of the most exciting areas driving that growth for Windows has

                                                                                    Bringing the power of AI to Windows 11 – unlocking a new era of productivity for customers and developers with Windows Copilot and Dev Home