「Rust」に関連する技術ブログ

企業やコミュニティが発信する「Rust」に関連する技術ブログの一覧です。

Rust についてカジュアル面談で頻繁に訊かれる質問と、それに対する個人的な回答

エンジニアリングマネージャーの村上 (@mura_mi) です。採用関連で面談に出ることが多いのですが、大体7割くらいの確率で 「なんで Rust 使ってるのですか?」「Rust 使っててどうですか」と聞かれるので先回りして書いておこうと思った記事です。 なんで Rust を選んだの Rust をエンジニアリングチームの武器の中心に据える意思決定がされたのは私の入社前ですが、伝え聞

React + Neo4j によるコストモデル可視化の取り組み紹介

はじめに こんにちは。キャディで原価計算システムの開発を担当しております、高橋です。 この記事は キャディ Advent Calendar 2020 の23日目です。前日は朱さんの 「【開発カルチャー発信 vol.1】原価計算システム開発チームの開発理念を大公開!」でした! さて本日は掲題の通り、私がスキルアップを兼ねて趣味的に取り組んでいる、コストモデル可視化システムの開発に

RustでPostgreSQLのユーザー定義関数を書く

FORCIAアドベントカレンダー2020 21日目の記事です。 PostgreSQLのユーザー定義関数をRustで実装する話です。 こんにちは、エンジニアの松本です。主な業務としてインメモリデータベースをRustで実装しています。 フォルシアではPostgreSQLを使っており、C言語で 拡張 も書いていますが、Rustを使って書けるようになると環境構築やテストがしやすくなって嬉しいです。本記事で

tracing crateを利用したRustのlogging方法について

こんにちは。CADDi でバックエンドエンジニアをしている 高藤 です。 この記事は CADDi Advent Calendar 21日目の記事です。昨日は、寺田さんによる RustでRAMの動作原理をシミュレートする でした! 今回はRustのtracintg crateについて紹介したいと思います。 目次 はじめに キャディではバックエンドのAPIをgRPCを使って実装しています。 実装にはtonicというRustでは比較的新しいcrate

RustでRAMの動作原理をシミュレートする

頭おかしいタイトルですね。何を言っているんだお前は。 本記事は CADDi とは何の関係もありませんし、実用的価値も一切ありません。その点はご了承を。 あ、Rust が分からないからといって帰る必要はありません。この記事はほとんどRustと無関係です。なんらかのプログラム言語に親しんでいる方であれば雰囲気で読める程度の機能しか使っていないのでご安心くださ

Apollo Client 3.0 ではじめる快適キャッシュ生活

こんにちは。テクノロジー本部バックエンド開発グループの江良です。 この記事は CADDi Advent Calendar 19 日目の記事です。昨日は、狭間さんによる「GraphQL PaginationのNestJSでの実装」でした! 「バックエンド開発グループの〜」と自己紹介したばかりで恐縮なのですが、今日はフロントエンドの話をします。 目次 はじめに これはなに Apollo Client の 3.0 で追加されたキャッシ

TwitterAPIをRustやPythonで触ってみた

FORCIAアドベントカレンダー2020 17日目の記事です。 新卒2年目エンジニアの平岡です。 2年前の今頃は有機合成化学の研究室で、試薬を混ぜてひたすら実験をしていました。 この記事ではTwitter APIを題材に、普段業務で触れる機会の少ないインフラ周りや複数の言語を触るなどして遊んだ話を書きます。 Twitter API 何かの情報を集める際、google検索だけでなくTwitter検索を使う

Transformersを用いた固有表現抽出のtips

TL;DR TransformersのNERではFast Tokenizerを使うことで、サブ トーク ン ↔ ラベルのアラインメントが実装できる。 長いテキスト入力については、無駄なpaddingを最小限にとどめて高速処理するために、入力を固定長分割するのが良い。 検出漏れが問題になるようであれば、 ストライド 付きのwindow処理を追加するのが良い。 サンプル実装: github.com 背景 この記事を目に留めていた

キャディのエンジニアの開発環境、ぜんぶ見せます

こんにちは! @ryokotmng です。本記事は、 キャディ Advent Calendar 2020 – Qiita の4日目の記事です。昨日の記事はagate-prisさんの Orphan Ruleよありがとう ~Rustを採用したおかげでリファクタリングが捗った話~ でした。 キャディのエンジニアがどんな開発環境で仕事をしているのかについて、アンケートをとってみました。その結果を (私の心の声を挟みつつ) まとめてみました

Rust+Quinnで大量のデータを送信する

aptpod Advent Calendar 2020 の4日目を担当します、研究開発グループの大久保です。 2日目 では、Rustと Quinn でechoサーバを作成しました。今回は応用として、Quinnを使って大量のデータを送信し、パフォーマンス評価をしてみたいと思います。弊社内のユースケースとして、エッジ側で溜まったデータをサーバに送信したい、という状況が考えられるため、それを想定した評価と

Rust+QuinnでQUICのechoサーバを作る

aptpod Advent Calendar 2020 の2日目を担当します、研究開発グループの大久保です。 弊社では、新しいプロトコルであるQUICの利用法を調査しています。そこで今回は、RustのQUIC実装の1つである Quinn を用いて、受け取ったリクエストをそのままクライアントへ返送するechoサーバを実装してみます。RustのQUIC実装には、他に quiche というものもありますが、Quinnは tokio の上に実装さ

Rustでバイナリを読み書きするのに必要なクレート3選

研究開発グループの大久保です。 当社の製品の中にはC/C++で書かれたものが存在し、その中には独自のバイナリフォーマットを取り扱うものが存在します。既存のコードとやり取りするようなRustのプロジェクトを起こすためには、その独自のバイナリフォーマットをRustで取り扱えるようにしなければなりません。しかしながら、Rustの標準ライブラリの機能だけでは、バ

社内初!商用アプリをKubernetes へ移行 フォルシア特有のフロー処理を組み合わせて

フォルシア技術研究所(技研)の原です。 技研では、新しいサービスの創出、および既存のサービスの拡張や効率化に資するべく、今までのフォルシアでは使われていなかった技術の開発、導入を進めています。 その一つが、商用アプリへの社内初の Kubernetes の導入です。この記事では、フォルシアでの Kubernetes の利用、工夫、苦労したところなどを紹介したいと思いま

マッチ式の末尾にカンマで終わるコメントがあるとrustfmtがフォーマットに失敗する話

業務でRustのコードを書いていて、 rustfmt が失敗する事象に遭遇した。 少し調べたところ、 MatchArms の後にカンマを含むコメントがあると、うまく動かないことが分かった。 以下は2つの連続した改行が1つの改行に詰められることを期待したコードである。 rustfmt はマッチ式全体のフォーマットを諦めてしまう。 fn f() { let x = 0; match x { 0 => {} 1 => {} _ => {} // foo // bar, } }

cargo workspaceを使ってRustのビルド時間を改善する

キャディのバックエンドエンジニアをして働いている高藤です。 キャディではRustを使った API サーバを開発しています。今回はその開発の過程で導入した cargo workspace を使ったプロジェクト構成についてまとめました。 今回のアプリケーションについて Rustで記述 ドメイン 駆動設計を用いて設計をしており、 ドメイン 層を明確に分離している アプリケーションの役割は
技術ブログを絞り込む

TECH PLAY でイベントをはじめよう

グループを作れば、無料で誰でもイベントページが作成できます。情報発信や交流のためのイベントをTECH PLAY で公開してみませんか?