並び順

ブックマーク数

期間指定

  • から
  • まで

121 - 160 件 / 1296件

新着順 人気順

Rustの検索結果121 - 160 件 / 1296件

  • RailsライクなRustのWebフレームワーク 「Loco」 | DevelopersIO

    Introcusion つい先日、「Rust版のRails」ともいわれている、 Locoというフレームワークを教えてもらいました。 Railsは昔ちょっとさわった程度なのですが、 Rustで手軽にRailsライクなアプリ開発はおもしろそうなので、 試してみました。 Loco? Locoについて簡単に説明します。 このblog記事で、Locoって何? なんでRustなの?とか誰のためのフレームワーク?みたいなことが書いてあります。 軽く説明すると、↓です。 Locoって何? Loco は、Rails からインスピレーションを得た Rust用のWebフレームワーク ほぼすべての Rails 機能が含まれている Controllerとaxum経由のルーティング ActiveRecordライクにSeaORMでモデル操作 rrgenでコード生成 その他いろいろ。詳しくは元記事で RubyでいいならR

      RailsライクなRustのWebフレームワーク 「Loco」 | DevelopersIO
    • 実用Rustアプリケーション開発

      実世界のRustアプリケーションを効率良く開発するための実用的な知見集 仕事などで実世界のRustアプリケーションを書く時に実用的な知見やtipsがまとまっていたらいいなと思ったことはありませんか? この本では、アプリケーションを書く時に悩むポイントや便利crateを素早くアプリケーションに組み込む際のポイントを紹介します。本の内容をスリムにするため、自分が学び始める前に知りたかったものに絞りつつ要所を紹介・解説します。Rustの言語仕様のメジャーどころやよく利用されているcrateはドキュメントが豊富なので、わからないところや詳しく知りたい部分はドキュメントを読んだりLLMに聞いてみたりしてください。 想定読者: "The Rust Programming Language" の要所を読み終えたくらいのこれからRustでアプリケーションコードを書いていく、または今まさにアプリケーションコ

        実用Rustアプリケーション開発
      • 「第4のブラウザ言語」WebAssemblyが変えるフロントエンド開発 | レバテックラボ(レバテックLAB)

        執筆 山内 直 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)に所属するテクニカルライター。出版社を経てフリーランスとして独立。ライター、エディター、デベロッパー、講師業に従事。屋号は「たまデジ。」。著書に『Bootstrap 5 フロントエンド開発の教科書』、『作って学べるHTML+JavaScriptの基本』など。 監修 山田 祥寛 静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「独習」シリーズ、「これからはじめるReact実践入門」、「改訂3版 JavaScript本格入門」他、

          「第4のブラウザ言語」WebAssemblyが変えるフロントエンド開発 | レバテックラボ(レバテックLAB)
        • AWS Lambdaの高速なコンテナロードの仕組み | CyberAgent Developers Blog

          CTO統括室の黒崎(@kuro_m88)です。今回はAWS Lambdaの高速なコンテナロードの仕組みについて紹介します。 AWS Lambdaはサーバレスなマネージドサービスであり、難しいことを知らなくてもユーザ(私たち)は簡単にアプリケーションをホストでき、簡単にスケールします。 ユーザから見るとシンプルですが、その裏側では様々な仕組みがあったり最適化が行われたりしています。 マネージドサービスの裏側を必ずしも知る必要はありませんが、仕組みを知っておくとより使いこなせるはずですし、自信を持って技術選定ができるはずです。(そして何より裏側を知ることは楽しい!🤗) 本記事はUSENIX ATC 2023で発表された論文「On-demand Container Loading in AWS Lambda」の内容に基づいて、読んでいて面白かったポイントをまとめています。 On-demand

            AWS Lambdaの高速なコンテナロードの仕組み | CyberAgent Developers Blog
          • AWS活用の自由度を上げる「Lambda」を「Rust」で活用 メモリの使用量を抑えつつ、プログラムの作成も簡単に

            AWS活用の自由度を上げる「Lambda」を「Rust」で活用 メモリの使用量を抑えつつ、プログラムの作成も簡単に Rust を AWS で活用しよう! 原氏の自己紹介 原旅人氏:じゃあ始めます。私、株式会社ログラスでクラウドエンジニアというタイトルでやっている、原と申します。このたびは、このようなところに呼んでいただきありがとうございます。 今日は、「RustをAWSで活用しよう!」と。「AWS」って、実は「Lambda」の話なんですが、こういったことで話をしようと思います。 自己紹介は先ほどしていただいたので、ほぼ省略です。(スライドを示して)実は松本さん(松本健太郎氏)と私はここに書いてある検索エンジンの会社で一緒に働いていて、私がRustをやるきっかけを作ってくれたのも、実は司会者の松本さんです。 株式会社ログラスについて 今はログラスという会社にいて、クラウドエンジニアという名前

              AWS活用の自由度を上げる「Lambda」を「Rust」で活用 メモリの使用量を抑えつつ、プログラムの作成も簡単に
            • WebAssemblyアプリ開発で最も使われている言語は3年連続で「Rust」、Webアプリ開発が最多、欲しい機能はスレッド。The State of WebAssembly 2023

              回答者はWebAssembly関連の技術者303人。 最も使われているのはRust、2位のJavaScriptの使われ方とは? WebAssemblyのアプリケーションのコードを記述するプログラミング言語として何を使っているかを尋ねた質問への回答では、3年連続でRustがトップ。しかも利用率は上昇中です。 2位に入ったのがJavaScriptです。WebAssemblyバイナリはソースコードをコンパイルしてバイナリに変換することで生成されますが、JavaScriptはWebAssemblyへのコンパイルに対応していません。 WebAssemblyアプリケーションのコードとしてJavaScriptを使う方法は、WebAssemblyで構築されたJavaScriptエンジンをWebAssemblyランタイム上で実行し、そこでJavaScriptコードを走らせることです。 この方法ではWebAs

                WebAssemblyアプリ開発で最も使われている言語は3年連続で「Rust」、Webアプリ開発が最多、欲しい機能はスレッド。The State of WebAssembly 2023
              • Rustで初学者がつまづいたところメモ

                impl<T, E> Result<T, E> { /// ```should_panic /// let x: Result<u32, &str> = Err("emergency failure"); /// x.unwrap(); // panics with `emergency failure` /// ``` #[inline] #[track_caller] #[stable(feature = "rust1", since = "1.0.0")] pub fn unwrap(self) -> T where E: fmt::Debug, { match self { Ok(t) => t, Err(e) => unwrap_failed("called `Result::unwrap()` on an `Err` value", &e), } } prelude impor

                  Rustで初学者がつまづいたところメモ
                • Vue.js と Nuxt の 2023年まとめ

                  2023年は Vue.js および Nuxt のアップデートがとっても活発な一年でした。 これだけ多くの、そして多様な進展があると、1年を振り返っておかないと何があったか忘れてしまいそうです。 というわけで Nuxt, Vue.js, Vite 関連の情報をピックアップして🏃‍♂駆け足で振り返ってみます。 (数が多かったので、おもに公式周辺のアカウントから告知されたものが中心です。漏れがあったらすみません。教えていただければ追加します) 🗓2023年1月 2022年の春先に正式に Vue.js 3 がデフォルトのバージョンとなり、2022年11月に Nuxt 3.0 がリリースされました。 年が明けて2023年1月の主だった情報です。 🔼Nuxt 関連 2023年1月17日に公開された Daniel Roe @danielcroe氏による公式ブログ記事 Nuxt: A vision

                    Vue.js と Nuxt の 2023年まとめ
                  • containerにおけるSELinuxの役割について - Gekko0114 備忘録

                    背景 本家のruncで実装されているSELinux機能が、Youki (Rustでruncを再実装するOSS)に実装されていないことがわかった。 そこで、SELinux機能をYoukiに導入することになったのだが、SELinux crateが無かったのでRustで再実装することになり、そのプロジェクトにアサインしてもらった。 しかし、SELinuxについて何も知らなかったので、SELiuxについて色々と調べたことをまとめた。 SELinuxとは何か? security-enhanced Linuxの略称。MAC制御を行うことができる。通常のセキュリティに加えてSELinuxを設定することで、システムセキュリティを更に強化できる。 Labelとpolicyを組み合わせたセキュリティ制御が特徴である。process・file・networkなどのobject、process・userなどのsu

                      containerにおけるSELinuxの役割について - Gekko0114 備忘録
                    • 『Rustの練習帳』でコマンドラインツールを作る感覚を身につける - Magnolia Tech

                      Rustの練習帳 ―コマンドラインツールの作成を通してRustを学ぶ 作者:Ken Youens-Clarkオーム社Amazon 最近、立て続けにRsutに関する話になったので、さすがに一度ちゃんと勉強しておこうと思って、『Rustの練習帳』を元に練習を始めた。 echo、cat、head、wc、uniqと、伝統的なUNIX由来のコマンド群を、Rustで実装するとどうなるか?をひたすら繰り返す演習問題集。 その実装の過程で必要になるRustの機能がちょっとずつ増えていくように構成されているところがミソ。 Rustの使い方としてコマンドラインツール実装に使われる例が増えてきたけど、この本でも扱っているclapというライブラリがよくできていて、確かに一番面倒臭い引数の処理をここまで面倒見てくれるなら、メモリ安全云々の前にいい感じ。 一方で、演習問題に使ったコマンドの数が多く、「もう少しまとめて

                        『Rustの練習帳』でコマンドラインツールを作る感覚を身につける - Magnolia Tech
                      • TypeScript未経験でもスムーズに業務に取り組める、最強の学習用コンテンツを作った話 - NTT Communications Engineers' Blog

                        この記事は、 NTT Communications Advent Calendar 2023 19日目の記事です。 この記事では、TypeScript未経験のインターン生にすぐにSkyWayの開発に取り組んでもらうために、TypeScriptの学習用コンテンツを作成した話を紹介します。 学習用コンテンツでどのようなスキルを身に着けてもらったのか、効果的に学ぶためにどのような点を工夫したのかについても説明します。 はじめに 学習用コンテンツの目的 TypeScript学習用コンテンツの紹介 取り組んでもらった結果 より高度な内容について おわりに はじめに 皆さまこんにちは。イノベーションセンター SkyWay DevOps プロジェクト所属の@sublimerです。 SkyWayのチームでは、今年の8〜9月に現場受け入れ型のインターンシップを実施しました。 インターン生を受け入れるにあたっ

                          TypeScript未経験でもスムーズに業務に取り組める、最強の学習用コンテンツを作った話 - NTT Communications Engineers' Blog
                        • UUIDv7 in 33 languages

                          UUIDv7 is a 128-bit unique identifier like it's older siblings, such as the widely used UUIDv4. But unlike v4, UUIDv7 is time-sortable with 1 ms precision. By combining the timestamp and the random parts, UUIDv7 becomes an excellent choice for record identifiers in databases, including distributed ones. Let's briefly explore the UUIDv7 structure and move on to the zero-dependency implementations i

                            UUIDv7 in 33 languages
                          • Vimの操作感を愛おしむ人たちへ: Zedで広がる新たな可能性 - ROUTE06 Tech Blog

                            ソフトウェア開発の世界は日々進化していますね。その中で、私たち開発者が使うツールは、まさに職人の道具のように大切なもの。常により良い方法を探し求めているのは、皆さん同じではないでしょうか。 そんな私たちの前に現れたのが、Zedです。このエディタ、一見するとただの新顔に思えるかもしれません。でも、その中身は、私のようなVimmerの心をしっかりと掴みました。なぜならZedは、Vimの精神や操作感を大切にしながら、現代のテクノロジーを駆使して作られているからです。 私は1年ほど前からZedを使い始め、すぐにルックやデザイン、全ての動作が期待通りかつ、速く完了する様子に魅了され、使い続けています。 筆者のZedのキャプチャ 機能的にはVSCodeが優れているし、AI Code EditorのCursorも盛り上がっていますが、もっと速く、たくさんコードを書きたい開発者の方にはZedという選択肢が

                              Vimの操作感を愛おしむ人たちへ: Zedで広がる新たな可能性 - ROUTE06 Tech Blog
                            • Pythonの高速なスーパーセット「Mojo」がAppleシリコン搭載のMacにまもなく対応

                              Modular社はPythonの高速なスーパーセットだと同社が位置づけている開発中の新言語「Mojo」が、今月(2023年10月)中にAppleシリコンを搭載したMacに対応予定であることを明らかにしました。 Mojo is coming to Apple Silicon before the end of October! Here’s a sneak-peak using Infermo - https://t.co/7KEV3G5xj7 - created by @fe_tilli to train a model for digit recognition pic.twitter.com/q350IS2oDl — Modular (@Modular_AI) October 11, 2023 MojoはPython互換として既存のTensorFlowやPyTorchなどをそのまま実行

                                Pythonの高速なスーパーセット「Mojo」がAppleシリコン搭載のMacにまもなく対応
                              • Rustで作るLinuxデバイスドライバ

                                だれでもできるシリーズとして、Rustでカーネルモジュールを実装しながら学んできましたが(役に立たないキャラクタデバイスドライバなど)、そろそろ実際に使える機能を実装したいころですよね! 今回は、筆者が実装したネットワークPHYドライバが、Rustで実装された初めてのデバイスドライバとしてLinuxカーネルに採用された話を紹介します。 誤解:LinuxカーネルがRustをサポート「LinuxカーネルがRustをサポートした」というニュースを見て、Rustのコードがどんどん採用されていると誤解している方もいるようです。このニュースは、「LinuxカーネルをRustでも書けるようになりましたが、実際に何かを実装するかどうかは未定」という意味です。Linuxカーネルは、メモリマネージメント、ネットワーク、暗号など、数多くのサブシステムで構成されており、それぞれのメンテナが、コードの採否を判断しま

                                  Rustで作るLinuxデバイスドライバ
                                • 米国防総省DARPA、C言語のコードからRustへの自動変換実現を目指す「TRACTOR」プログラム開始

                                  米国防総省DARPA、C言語のコードからRustへの自動変換実現を目指す「TRACTOR」プログラム開始 アメリカ国防総省 DARPA(Defense Advanced Research Projects Agency:国防高等研究計画局)は、C言語のコードからRust言語のコードへ高い精度での自動変換実現を目指す「TRACTOR」(Translating All C to Rust)プログラムの開始を発表しました。 DARPAは軍事技術の開発および研究を行う機関であり、現在のインターネットはDARPAの前身となるARPAが1967年に開始した「ARPANET」がその起源であることはよく知られています。 DARPAが発表したTRACTORプロジェクトは、C言語のコードからRust言語のコードへの自動変換を高い精度で実現することで、過去にC言語で開発された多くのソフトウェアをメモリ安全なソフ

                                    米国防総省DARPA、C言語のコードからRustへの自動変換実現を目指す「TRACTOR」プログラム開始
                                  • WebAssemblyを進化させる「WASI Preview 2」が安定版に到達。OSや言語に依存しないコンポーネントモデルを実現

                                    WebAssemblyを進化させる「WASI Preview 2」が安定版に到達。OSや言語に依存しないコンポーネントモデルを実現 WebAssembly関連仕様の標準化を行っているW3C WebAssembly Community GroupのWASI Subgroupミーティングにおいて、2024年1月25日に行われた投票で「WASI Preview 2」(もしくはWASI 0.2.0)仕様が承認され、安定版に到達したことが明らかになりました。 WASI Preview 2では、WebAssemblyアプリケーションがOSなどのプラットフォームに依存せず、さまざまなプログラミング言語で開発したWebAssemblyコンポーネントを組み合わせて開発できるように、「コンポーネントモデル」とそのインターフェイスを記述するIDL(Interface Definition Language)であ

                                      WebAssemblyを進化させる「WASI Preview 2」が安定版に到達。OSや言語に依存しないコンポーネントモデルを実現
                                    • 「Rust」言語向けの“ビジュアルタイムトラベルデバッガー”「FireDBG」が公開/関数の呼び出しを「コールツリー」として可視化、自由に時間を移動してエラーを特定

                                        「Rust」言語向けの“ビジュアルタイムトラベルデバッガー”「FireDBG」が公開/関数の呼び出しを「コールツリー」として可視化、自由に時間を移動してエラーを特定
                                      • VSCodeがWebAssemblyの実行時デバッグに対応。C/C++やRust、Zigなどのソースコードと関連付け、変数参照、ブレークポイントなど可能に

                                        VSCodeがWebAssemblyの実行時デバッグに対応。C/C++やRust、Zigなどのソースコードと関連付け、変数参照、ブレークポイントなど可能に マイクロソフトは、オープンソースで開発しているコードエディタ「Visual Studio Code」(以下、VSCode)の最新版となる2023年9月版(バージョン1.83)で、JavaScriptデバッガがWebAssemblyのデバッグにも対応したことを明らかにしました。 The JavaScript debugger can now debug code compiled into WebAssembly if it includes DWARF debug information. For example, C++ code compiled using Emscripten can be debugged: pic.twitt

                                          VSCodeがWebAssemblyの実行時デバッグに対応。C/C++やRust、Zigなどのソースコードと関連付け、変数参照、ブレークポイントなど可能に
                                        • ログラスのTerraform構成とリファクタリングツールの紹介

                                          この記事は毎週必ず記事がでるテックブログ "Loglass Tech Blog Sprint" の 47週目の記事です! 1年間連続達成まで 残り 6 週 となりました! はじめに ログラスのクラウド基盤でエンジニアをやっているゲイン🐰です。 ログラスではAWS上でアプリケーションを動かすためにIaCとしてTerraformを採用しています。 我々のTerraformの構成を紹介するとともに、現状の課題とリファクタリングの事例を共有できれば幸いです。 ログラスのTerraform構成 ざっくりログラスのアプリケーションにまつわるTerraform構成は以下のようになっています。 基本的にはterraform/usecaseディレクトリ配下にmoduleとして定義されています。 中身は比較的にベタでリソースが書かれており、それらをterraform/envディレクトリの各ディレクトリ内で呼

                                            ログラスのTerraform構成とリファクタリングツールの紹介
                                          • Announcing WinterJS · Blog · Wasmer

                                            Back to articlesAnnouncing WinterJSThe most performant JavaScript Service Workers server thanks to Rust and SpiderMonkey Follow up the WinterJS series reading about the recent production-ready WinterJS 1.0 release here. Today we are incredibly excited to announce WinterJS (wasmer/winterjs package). WinterJS is a JavaScript Service Workers server written in Rust, that uses the SpiderMonkey engine t

                                              Announcing WinterJS · Blog · Wasmer
                                            • すべての開発者が知っておくべきメモリ管理についての知識

                                              プログラミングにおいてメモリ管理は重要な要素の一つですが、その重要性を見過ごされがちなものです。メモリ管理の高レベルな抽象化について、「すべての開発者が知っておくべき要素」としてプログラマーのザカリー・リー氏が解説しています。 Memory Management Every Developer Should Know https://webdeveloper.beehiiv.com/p/memory-management-every-programmer-know メモリは「スタック」と「ヒープ」という2つの領域に分かれています。 ・スタック スタックは「先入れ後出し」という特徴を持つデータ構造で、プログラムの関数呼び出しを記録するのに非常に適しています。例えば下図のように「test()」と「main()」という2つの関数があり、main()からtest()を呼び出す場合を考えてみます。

                                                すべての開発者が知っておくべきメモリ管理についての知識
                                              • Announcing VoidZero - Next Generation Toolchain for JavaScript | VoidZero

                                                October 1, 2024Announcing VoidZero - Next Generation Toolchain for JavaScript TL;DR: I have founded VoidZero Inc., a company dedicated to building an open-source, high-performance, and unified development toolchain for the JavaScript ecosystem. We have raised $4.6 million in seed funding, led by Accel. Fifteen years ago, when I started building apps with JavaScript, it was mostly a browser-based s

                                                  Announcing VoidZero - Next Generation Toolchain for JavaScript | VoidZero
                                                • 【個人開発】爆速な賃貸検索サービスをさらに高速化した【Rust】 - Qiita

                                                  個人で運営している賃貸物件の検索サービス Comfy のバックエンドを Rust でリプレースしました。この記事では、そのリプレースの背景と詳細をご紹介します。 まずは結果から 技術構成: Rust + Cloud Run1 へ移行 (Python + GCE2 から) 性能向上: 約 1.5 倍 開発期間: 1 ヶ月間 コード行数: 約 40 % インフラ費用: かなり減少 (多分3) 短い期間・少ないコードでかなり高速化できちゃった上に、開発体験もとてもよい Rust は本当に素晴らしいです…!! サービス概要 Comfy は 日本全国の賃貸物件を超高速に検索できる Web サービス です。 技術構成等の概要は、以前書いた記事 「【個人開発】爆速な賃貸物件の検索サービスを作った」 をご覧頂ければと思います。 もしよかったらこちらからぜひ試して頂き、さらによくなった性能を体感してみて下さ

                                                    【個人開発】爆速な賃貸検索サービスをさらに高速化した【Rust】 - Qiita
                                                  • コードフォーマッターをPrettierからdprintにしたら10倍以上速くなった話🚀 - KAKEHASHI Tech Blog

                                                    はじめに こんにちは!ソフトウェアエンジニアの種岡です。 私たちのチームでは、TypeScriptを使用して開発を行っており、Prettierというコードフォーマッターを利用し、チーム内でコーディングスタイル統一に大変重宝しています。 そんなフォーマッター界隈で、Rust製で爆速で動作すると噂のdprintが良いということで試してみたところ、驚くべきことが起きました! Prettierでは、コードフォーマッティングに 7.69秒 かかっていたのですが dprintを使うことでわずか 0.47秒 で完了するようになりました🚀🚀🚀 なんと、 10倍以上速い とういう結果に! コードフォーマットは、Gitのpre-commitフックやGitHub Actionsで日々活用しており、普段の開発作業の裏側でコードの品質を支えてくれているありがたい存在です。 この速度改善により、開発プロセスの中

                                                      コードフォーマッターをPrettierからdprintにしたら10倍以上速くなった話🚀 - KAKEHASHI Tech Blog
                                                    • ついに生産が終わったけどZ80でまだまだ遊びたい

                                                      Kernel/VM探検隊@東京 No17 で発表した内容です。 スライド内で紹介した配信のアーカイブはこちら(2本に分かれています): 【前半戦】Z80をRustで動かすまで年が越せない配信【年末特番】 https://youtube.com/live/9eTlxU6kQxg 【後半戦】…

                                                        ついに生産が終わったけどZ80でまだまだ遊びたい
                                                      • Rustで有名アルゴリズムに挑戦(18) Rustでライフゲームを作ってみよう

                                                        C言語に代わってOS開発に採用されているRust。本連載では、Rustで有名アルゴリズムを実装して、Rustについての理解を深めています。今回扱うのは、生物の栄枯盛衰をシミュレーションするライフゲームです。 コンウェイのライフゲームで生物のシミュレーションをしよう コンウェイのライフゲームとは? 「ライフゲーム(Life Game)」は、イギリスの数学者コンウェイによって考案されたもので、簡単な配列操作によって実装できる簡単な生物のシミュレーションです。次のように動きます。 コンウェイのライフゲームを動かしているところ 見た目が面白いのに加えて、プログラミング言語の性質や特徴を知るのにもってこいの題材であるため、次の姉妹連載でも何度か紹介しています。ぜひ、今回のRust版と見比べてみてください。 - Python連載9回目(https://news.mynavi.jp/techplus/a

                                                          Rustで有名アルゴリズムに挑戦(18) Rustでライフゲームを作ってみよう
                                                        • 新たなサーバサイドJavaScriptランタイム「WinterJS 1.0」正式リリース、WebAssemblyへのコンパイルも可能。Wasmerが開発

                                                          新たなサーバサイドJavaScriptランタイム「WinterJS 1.0」正式リリース、WebAssemblyへのコンパイルも可能。Wasmerが開発 WebAssemblyランタイム「Wasmer」の開発元として知られているWasmer社は、新しいサーバサイドのJavaScriptランタイム「WinterJS」の正式版となる「WinterJS 1.0」のリリースを発表しました。 ❄️ Introducing WinterJS 1.0 - the fastest WinterCG Javascript runtime in the world powered by Rust and SpiderMonkey ...and #WebAssembly compatible! Now supporting: React Server Components Cloudflare mode 150

                                                            新たなサーバサイドJavaScriptランタイム「WinterJS 1.0」正式リリース、WebAssemblyへのコンパイルも可能。Wasmerが開発
                                                          • 「LLVM lld」「mold」が解決した、リンクが遅い問題 間違った思い込みの解消に必要だったのは“クレイジーな人”

                                                            Blue Whale Systems株式会社の植山類氏は、「LLVM lld」「mold」が解決したプログラムのビルドの問題を例に、“大きな問題”を解決することについて話しました。全3回。 1個の本質的な問題を解いてしまうほうが細かいことを考えるよりも簡単 植山類氏:では始めます。本日、機会をいただいて講演をすることになった植山と申します。この講演の内容は「大きな問題のほうが小さな問題より解くのは簡単だ」というタイトルです。 どういう趣旨かというと、常に簡単だというわけではないのですが、いろいろな場面で、1個の本質的な問題をドッカンと解いてしまうほうが、いろいろな細かいことを考えるよりも簡単なことが多いという話です。 そういうソリューションが往々にして見逃されがちということがけっこうあって、そういうことにどうやって挑戦していくのかという気持ちの話を、僕がそういう大きな問題を解決した経験を踏

                                                              「LLVM lld」「mold」が解決した、リンクが遅い問題 間違った思い込みの解消に必要だったのは“クレイジーな人”
                                                            • 線形代数学+Rustで画像圧縮のアルゴリズムを実装する - Qiita

                                                              こんにちは👋 長く暑い夏が終わろうとしている今ですが、筆者は秋の季節を満喫しております。 LabBaseでは線形代数学の基礎を使って検索エンジンを構築していますが、レコメンド、検索アルゴリズムによく使われる王道の手法について記事を書くことにしました。 概要 線形代数学の特異値分解(SVD)の知識を活かして、原始的な画像圧縮アルゴリズムをRustで実装します。 SVDとは? SVDは、線形代数学でよく使われる行列の分解です。行列の分解は、同じマトリックスを他のマトリックスに分けて表現することです。SVDの他に、LU三角分解、QR分解などがあります。 SVDは、あるAというマトリックスの列空間と行空間の固有ベクトルを計算して、それぞれをUとVというマトリックスに収めます。さらに、Σという対角行列に、固有値の平方根を入れます。Vの転置行列をV'と定義しますが、以下の分解になります。 Σの体格行

                                                                線形代数学+Rustで画像圧縮のアルゴリズムを実装する - Qiita
                                                              • 多くのプログラミング言語に危険な脆弱性 ~Windows環境の引数エスケープ処理に不備「Rust」「PHP」「Node.js」「Haskell」などに影響/

                                                                  多くのプログラミング言語に危険な脆弱性 ~Windows環境の引数エスケープ処理に不備「Rust」「PHP」「Node.js」「Haskell」などに影響/
                                                                • id:xlc さんがちょっと心配

                                                                  ・嫌いなものの記事に自分から突っ込んで行って嫌いと言う ・(類似製品の)好きなものの記事に行って嫌いなものの苦言を言う 自分から嫌いと言いに行くのはもうアレな人の手前なんよ… それが嫌いなら開かず無視したらええねん…ひたすら腐してるのはなんなん… あなたが望む実現しない要件を何度も挙げて最低条件って言うのは客観的に見て結構恥ずかしくないですか?他のみんなは大多数が興味があって覗いて、少数は内容を批判的に論じるんだけどxlc さんのは内容関係ないよね…? 超バズったからやってきた。とかならわかるんだけど公開ブクマ1桁以内でこういうの言っちゃったりしてるのは当たり屋じゃないっすかね… ちょっと心を落ち着けてはいかが? なぜコーディングにVSCodeを使うのか。 私がVSCodeを選んだ理由 xlc 2024-03-13 全く心が動かない。私的には80カラム固定のペインが2つ開きっぱなしの状態が

                                                                    id:xlc さんがちょっと心配
                                                                  • Rustのデータ可視化ライブラリCharmingに入門した

                                                                    Charmingとは Charmingは、Rustの強力なチャートレンダリングライブラリです.美しく高品質なデータ可視化します.GitHub上で以下のようなグラフが紹介されています. 後述しますが,このCrateは適切にStructが分割されているので,可読性の高い可視化用のコードを作ることができます. 簡単に散布図を作成する Datasaurusのデータを使います.ここでは,csvファイルをダウンロードして使っています. もちろん表示するのはdinoです. この記事では,cargo new project_nameした後に,data dirとoutput dirを作っていることを想定します.

                                                                      Rustのデータ可視化ライブラリCharmingに入門した
                                                                    • Linus Torvaldsが語るカーネル開発とメンテナー、AIコーディング、そしてオープンであること ―Open Source Summit Japan 2023基調講演より | gihyo.jp

                                                                      Linus Torvaldsが語るカーネル開発とメンテナー⁠⁠、AIコーディング⁠⁠、そしてオープンであること ―Open Source Summit Japan 2023基調講演より 「ぼくはあんまりパブリックな場で喋るのは好きじゃない。でもDirkが用意した質問に、ぼくがこの場(Linux Foudation主催のサミット)で答えるスタイルなら、リラックスしながらいろいろなことを議論できるし、聞いている人たちにも楽しんでもらえると思っている。ちなみにDirkの質問内容は事前に聞かされていないよ」―12月5日、東京・有明で開催された「Open Source Summit Japan」(⁠主催: Linux Foundation、12/5~12/6)のキーノートセッションには、久しぶりに来日した“⁠Linux Creator⁠”ことLinus Torvalds氏が登壇するとあって、早朝にも

                                                                        Linus Torvaldsが語るカーネル開発とメンテナー、AIコーディング、そしてオープンであること ―Open Source Summit Japan 2023基調講演より | gihyo.jp
                                                                      • 60年前からのプログラミング和文論文を掘り起こした話

                                                                        本記事の初版を公開したのは 2024 年 9 月 21 日だったのですが、その後 9 月 26 日に、ピックアップした論文を大幅に増やして更新しました。 また、最初はタイトルを「和文プログラミング論文を〜」としていたのですが、いわゆる「日本語プログラミング言語」の話にも見えてしまうことから、「プログラミング和文論文を〜」に置き換えました。 日本の人々が「プログラミング」にかかわるようになったのは、いつごろでしょうか? その前に、まずは世界のコンピュータとプログラミングの歴史を簡単に振り返ってみましょう。まずは OS から有名どころをたどると、 わかりやすく Windows 95 が 1995 年 [1] その前に広く使われた Windows 3.1 は 1992 年 [2] その下で動く MS-DOS は、バージョン 6 が 1993 年、バージョン 1 が 1981 年 [3] Linu

                                                                          60年前からのプログラミング和文論文を掘り起こした話
                                                                        • Nushell - 型付きシェルの基本とコマンド定義

                                                                          はじめに これまで Zenn では fish shell の記事をいくつか書いてきましたが、現在は Nushell という新しいシェルを使っています。 実は Nushell のことは以前から知っていましたが、利用されているプログラミング言語の概念やその恩恵についての知識が無かったため、より初心者にわかりやすい fish shell を利用していました。最近になって型システムや関数型言語などについての概念を取得したため、ようやく Nushell を使い始められました。 Nushellでの分かりやすいエラーメッセージ 使い始めてからまだ1ヶ月ぐらいですが、かなり奥が深く一つの記事で解説しきるのは難しいので、この記事では基本体な設定と型とコマンドについて重点をおいて最後は具体的なカスタムコマンドの定義をいくつか取り上げて解説したいとおもいます。 Nushellとは Nushell とは "A n

                                                                            Nushell - 型付きシェルの基本とコマンド定義
                                                                          • ソフトウェアと愛 - あるいはOSSとAWSの確執|ミック

                                                                            AWSが長い間、最高のオープンソースプロジェクトを取り込み、常にそれらのコミュニティに還元することなく再利用し、再ブランド化することで非難されてきたことも周知の事実だ。 AWS gives open source the middle fingerOSSというのは、不思議なソフトウェアだ。世界中で何百万人もの人が一円にもならないのに開発に協力し、コミッタと呼ばれるエンジニアキャリアをOSSに賭ける人々が現れ、多くのユーザがユーザ会を組織し、時には大規模なイベントを開く。MicrosoftやGoogleといった大企業もOSS支援を表明している。GoogleにいたってはandroidとKubernetesという重要なOSSを世に送り出した企業でもあり、その貢献は計り知れない。 そんな中、OSSに対して敵対的、とまでは言わないにしても非常に冷淡な態度を取る企業がある。それがAWSである。本稿では

                                                                              ソフトウェアと愛 - あるいはOSSとAWSの確執|ミック
                                                                            • ChatGPTと協力しながらコーディングや執筆が可能なアプリ「Canvas」をOpenAIがリリース

                                                                              ChatGPTと協力しながら文章執筆やコーディングなどの作業をこなせるアプリ「Canvas」のベータ版が2024年10月3日にリリースされました。記事作成時点ではChatGPT Plusの加入者向けにベータテストが実施されており、テストの終了後は無料ユーザーも利用可能になる予定です。 Canvas is a new way to write and code with ChatGPT | OpenAI https://openai.com/index/introducing-canvas/ Canvasでは「ChatGPTに文章やコードの下書きを入力して清書させる」「ChatGPTが生成した文章の一部を人力もしくはChatGPTに依頼して修正する」といった操作が可能です。内部では「GPT-4oを共同作業用にトレーニングしたモデル」が動作しており、OpenAIはCanvasを「ChatGPT

                                                                                ChatGPTと協力しながらコーディングや執筆が可能なアプリ「Canvas」をOpenAIがリリース
                                                                              • Optimizing Javascript for fun and for profit

                                                                                I often feel like javascript code in general runs much slower than it could, simply because it’s not optimized properly. Here is a summary of common optimization techniques I’ve found useful. Note that the tradeoff for performance is often readability, so the question of when to go for performance versus readability is a question left to the reader. I’ll also note that talking about optimization n

                                                                                • 思考のスピードでコードを書け!!Rust製の次世代エディタ「Zed」

                                                                                  はじめに 周りとは一味違ったツールを使いたくなるお年頃、皆さんも経験されたことがあるかと思います。 え、ない? 今回は「Code at the speed of thought(思考のスピードでコードを書く)」というキャッチコピーを掲げているエディタ「Zed」を発見したので紹介していこうと思います。

                                                                                    思考のスピードでコードを書け!!Rust製の次世代エディタ「Zed」