並び順

ブックマーク数

期間指定

  • から
  • まで

481 - 520 件 / 7575件

新着順 人気順

rustの検索結果481 - 520 件 / 7575件

  • 現代における自作OSの難しさ 〜自作OSのいまと昔 [第2回] | さくらのナレッジ

    前回の記事では、自作OSとは何か、そしてこれまでの自作OSの歴史を紹介しました。しかし、近年になって自作OSを取り巻く状況は大きく変化してきています。そこで今回は、現代における自作OSでは、これまでと比べてどのような点が変化してきたのか、どのような難しい点があるのかについて紹介し、さらにそれらに対する解決策を、筆者の経験をもとに提案してゆきます。 自作OSをとりまく環境の変化 川合秀実氏著「30日でできる!OS自作入門」が出版された2006年頃と比べて、コンピュータをとりまく環境は大きく変化してきました。その変化には、CPUのコア数やビット幅からファームウェアの変遷、そしてデバイスの進化も含まれています。まず最初に、CPUのコア数について着目してみましょう。 CPUコア数の増加 上記の図は、1999年から2019年までにIntelから発売されたCPUのコア数の変化を示したグラフです。ご覧の

      現代における自作OSの難しさ 〜自作OSのいまと昔 [第2回] | さくらのナレッジ
    • これから流行る言語 | 雑記帳

      新言語にできることはまだあるかい なんとかWIMPS 最近(1ヶ月くらい前)、こんな記事が出ました: 新しいプログラミング言語が出てこない(新しく出てた言語を追記) – きしだのHatena Kotlin, TypeScript, Rust, Swift以降にみんなが話題にするような新しい言語が出てこない、それはなぜか、みたいな趣旨です。客観的に見れば「新しい言語は常に出続けている」わけですが、「みんなが話題にするような」というのが多分曲者なんでしょうね。 例え話をすると、新しい若木は常に生えてきているんだけど、大木に成長するには時間がかかるので、大木にしか興味のない人には「この8年間で新しい大木は登場していない」と判断してしまうのかもしれません。 まあ私としても、Web (HTTP) APIを書く言語とか、JSON色付け係が使う言語はもう出揃ってしまったのかもしれないという気はしなくもな

      • RustとLambdaの相性が良い7つの理由 〜RustでLambdaをやっていく〜

        この記事はRust 2 Advent Calendar 2020 - Qiitaの6日目の記事です。 AWS re:Invent 2020、初のオンライン開催ですが盛り上がってますねー 毎日ありえなくらいのアップデートが発表されて興奮の日々を送っています。 しかし、さすがクラウドのシェアNo.1のAWS、王者の貫禄というか凄みを感じます。 さて今回はその盛り上がりの勢いを借りて私の大好きなRustを盛り上げたいと思い筆を執りました。RustとLambdaは相性抜群という話を書いてみたいと思います。 RustとLambda まずはRustとLambdaの簡単な紹介です。 Rustは2020年のStack Overflowの調査で 5年連続で開発者から最も愛されているプログラミング言語 になりました。GCを採用しない等の工夫でメモリ効率が高く、豊かな型システムと所有権モデルでメモリ安全性を保証

          RustとLambdaの相性が良い7つの理由 〜RustでLambdaをやっていく〜
        • AtCoder と Rust で始める!競技プログラミング入門(Rust 版 APG4b)

          競プロ( AtCoder 青 / CodeForces 青), C / C++ , Rust ,Arch Linux に関連する記事を書くと思います

            AtCoder と Rust で始める!競技プログラミング入門(Rust 版 APG4b)
          • RESTful APIの設計、開発、ドキュメント管理を手助けする「RAML」とは

            APIの開発は複雑でコストがかかる可能性があり、頻繁に更新されることからドキュメントを整備するのも難しい。APIの設計、開発、ドキュメントの整備、管理にまつわる課題と効率さの問題に対処するアプローチが、RESTful API Modeling Language(RAML:RESTful APIモデリング言語)だ。 RAMLコードを使えば、開発者はAPIの動作を説明する仕様を策定してからそのAPIをデプロイするまでのAPIライフサイクルを管理することができる。 RAMLとは RAMLは、RESTful APIを記述することを目的とするオープンソースの記述言語だ。2013年、米国のIT自動化および統合ベンダーであるMuleSoftを中心とする数社の企業によって作成されたRAMLはAPIの開発に大きな役割を果たしてきた。2018年、MuleSoftはSalesforceによって買収され、RAML

              RESTful APIの設計、開発、ドキュメント管理を手助けする「RAML」とは
            • オライリー調査で明らかに--Go、Rust、Ruby、Dartに関心高まる - ZDNet Japan

              印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます 非常に多くのプログラミング言語が使用されているため、プロの開発者も開発者を目指している人も、全力で取り組むべき言語を決めるのに苦労している。特に大変なのは、キャリアを方向づける特定の言語を習得、学習するときだ。テクノロジー教育企業のO'Reillyは先ごろ発表したレポートで、開発者の間で大きな関心を集めている言語を紹介した。 O'Reillyはこのレポート「Where Programming, Ops, AI, and the Cloud are Headed in 2021」のために、自社のオンライン学習、出版パートナー、学習モード、ライブのオンライントレーニングコース、バーチャルイベントのデータを分析した。 すべての言語の中で、学び

                オライリー調査で明らかに--Go、Rust、Ruby、Dartに関心高まる - ZDNet Japan
              • Rust言語でファームウェア、OS、言語処理系を実装して、CSS 2020で発表した - 未完成な論を綴るブログ

                先月、国内最大のセキュリティ研究会であるコンピュータセキュリティシンポジウム 2020(CSS 2020)が開催され、そこで、Rust言語を用いてファームウェア、OS、言語処理系を設計・実装した話を発表しました。本来、CSS 2020はリアルで開催されるはずでしたが、コロナ禍の影響でオンライン開催となり発表動画作成が求められました。せっかく作った動画をこのまま捨て置くのももったいないと思い、ここで供養したいと思います。 www.youtube.com 概要 内容は、Rust言語を用いて、AArch64のセキュアワールド内で動作するファームウェア、OS、プログラミング言語処理系を実装した話となります。と言っても、まだまだ基本的な部分しか実装しておらず、実現目標に対して2〜3割と言ったところですが、どうぞご笑覧ください。 ブート部分は多少アセンブリ言語を使っていますが、その他の部分はRustで

                  Rust言語でファームウェア、OS、言語処理系を実装して、CSS 2020で発表した - 未完成な論を綴るブログ
                • Rustに影響を与えた言語たち - Qiita

                  各カラムの意味は次のとおりです。言語の特徴は主にWikipediaを参考にしていますが、正確な分類は困難なため多少の独断と偏見が含まれていることをご了承ください。 登場年代 プログラミング言語が登場した年代です。前後3年の誤差は見逃してください FP(関数型プログラミング) 言語がFPを強くサポートしているかを示しています 程々にサポートしている場合は△を示しています OOP(オブジェクト指向プログラミング) 言語がOOPを強くサポートしているかを示しています 並行計算 アクターや CSP/π計算モデルの特徴を言語が強くサポートしているかを示しています 外部ライブラリを使えばできるよ!みたいなものは除外します 静的型付け 言語の最も主要な処理系が静的型付けをサポートしているかを示しています パラメータ多相 言語がパラメータ多相をサポートしているかを示しています ジェネリクス(Java)、テ

                    Rustに影響を与えた言語たち - Qiita
                  • Rust for Linuxでは独自のallocライブラリを使っている

                    Rustを第二言語として採用してデバイスドライバなどのモジュールをRustで書けるようにする「Rust for Linux」が近々マージされる予定だともLinus氏自身が発言しています。 そんな期待のかかるRust for Linuxですが、提案された当初は期待こそされていたものの、様々な懸念点も指摘されていました。 その1つが標準ライブラリの一部であるallocクレートの設計です。 このクレートはヒープ領域を扱うBox、Vec、StringなどRustではお馴染みの構造体を提供しています。 Rustの標準ライブラリはOSのサポートを前提とした構造体も多くあります。そのため、OSそのものを書くようなベアメタルプログラミングにおいて標準ライブラリをそのまま使うことはできません。 使えるのはcoreと呼ばれる依存関係のない全く無いライブラリがありますが、allocはOSのサポートが必要なヒープ

                      Rust for Linuxでは独自のallocライブラリを使っている
                    • 一休.comレストランのRustバックエンド開発の様子

                      Rust、何もわからない... #12の発表資料です

                        一休.comレストランのRustバックエンド開発の様子
                      • Dev Containerを使ってステップバイステップで作るPythonアプリケーション開発環境 - 電通総研 テックブログ

                        みなさんこんにちは、電通国際情報サービス(ISID)Xイノベーション本部ソフトウェアデザインセンターの佐藤太一です。 この記事では、VS CodeのDev Containerを使ってOSに依存しないPythonの開発環境を構築する方法をステップバイステップで丁寧に説明します。 VS Codeの利用経験があり、またPythonによるアプリケーション開発に興味のある方を想定読者として記述しています。Pythonの初心者から中級者向けを意識して書いていますので、意図して冗長な説明をしています。 すでにPythonによるアプリケーション開発に十分に詳しい方は、まずはまとめだけ読んでみてください。私自身それほどPythonのエコシステムに詳しいわけではありませんので、知識の抜け漏れは恐らくあるでしょう。そういった事に気が付いたら、XなどのSNSでこの記事のURLを付けてコメントをしていただけると幸い

                          Dev Containerを使ってステップバイステップで作るPythonアプリケーション開発環境 - 電通総研 テックブログ
                        • RustもJuliaやGoみたいに廃れて消えていく気がしている。 - Qiita

                          Juliaは一時期すごい流行って数値計算の王座になると期待されライブラリも大量に作られたけど、結果Pythonの座を置き換えるにはいたらなかった。Goもコンテナ化との相性がよて一時期すごい流行ったけど、なんだかんだみんなJavaとかPHPとかRubyとか書いてる。 Rustもここ数年すごい流行ってるけど、JuliaとかGoみたいに飽きられて廃れていく気がする。 流行に敏感な人がなんか面白い言語あるぞーと騒ぎ出す。 様々なライブラリが乱立して色々出来るようになる。 数年かけて言語そのものが良くなっていき、ライブラリも淘汰や共通化されて成熟していく。 成熟したライブラリの開発は飽きられてメンテナンスされなくなる。 メンテナンスされてないライブラリを使いたくないから誰もその言語に参入しなくなる。 結果として言語そのものが衰退して、もとの成熟していてメンテナンスされ続けている言語とライブラリをみん

                            RustもJuliaやGoみたいに廃れて消えていく気がしている。 - Qiita
                          • Infrastructure from Code (IfC) ツールまとめ - maybe daily dev notes

                            昨今Infrastructure from Code (IfC)という概念をよく耳にします。先日もAWSのGregor Hohpeが関連する記事を書いていました。 architectelevator.com この記事では、Infrastructure from Codeとはなにか簡単に紹介し、具体的にどのようなツールがあるか網羅的にまとめます。 Infrastructure from Codeとはなにか Infrastructure from Code (IfC) とは、その名の通り、Infrastructure as Code (IaC) に関連する概念です。IaCとの根本的な違いは、IaCは開発者がインフラを明示的に意識して構成を記述するのに対し、IfCでは開発者がインフラをできるだけ意識しないよう抽象化を試みていることです。これにより、差別化に繋がらない重労働ができる限り排除された高

                              Infrastructure from Code (IfC) ツールまとめ - maybe daily dev notes
                            • ニッチプログラマー

                              Twitter で “The Nitche Programmer” という記事が流れてきたので、自分もおそらくニッチプログラマーのくくりには入ると思うので雑に何か書いておこうと思います。 思ったことを適当に書いていくので読みにくいと思います。適当に流し読みしてください。 まとめニッチかどうかはどうでもいい。 ニッチプログラマーはじめてのちゃんとしたプログラミングは Python 2.2 あたりから始まり、その後 Erlang/OTP へ切り替えて 10 年以上 Erlang/OTP を書いてご飯を食べています。ここ数年は開発に注力はせず、ビジネス考える人になっています。 最近では WebRTC をメインでやっており、 Erlang/OTP + WebRTC という組み合わせであればおそらく日本では社員を除けば自分だけというくらいニッチです。世界的に見ても Erlang/OTP + WebR

                              • Rustハンズオン @ Rust CA 1 Day Youth Boot Camp

                                https://www.cyberagent.co.jp/careers/students/career_event/detail/id=26831

                                  Rustハンズオン @ Rust CA 1 Day Youth Boot Camp
                                • Rustを実践的に学ぶには

                                  Stack Overflowの愛され言語ランキングでここ最近ずっと一位のRustを、2020年の年末から本気を出して学んでます。ようやくまともに書けるようになったので、どんなやり方で学んだかを簡単にまとめたいと思います。 著名なRust関連の書籍は買いそろえて学習していたのですが、実際にモノ作ったほうが早いよねということで、ULID生成器を実装してみました。ちょっと前にScalaでも同様に作っていたので、ちょうどいい習作課題でした。 実際の実装は以下。 学習の進め方 書籍などの情報は、以下を中心に読みました。というか、一通りの概念を把握するという感じです。すでに何かしらのプログラミング言語を扱える人なら(Rustを第一言語にする人少なそうですが…)、どういった機能があるか、浅く理解しておくとよいと思います。そのうえで、実装の際に具体的な知識が必要ならば、「あ、このあたりはあの書籍に書いてあ

                                    Rustを実践的に学ぶには
                                  • Rust初心者がRustで全文検索サーバを作ってみた - Qiita

                                    情報検索・検索エンジン Advent Calendar 2019 の5日目の記事です。このAdvent Calendarを作った@takuya_aさんより、お誘いいただきました。 @minoru_osuka もし余裕あれば12/5の記事お願いします! https://t.co/YIA9tIB4Gj — takuya-a (@takuya_b) December 1, 2019 ということで、仕事とは別で個人的に始めたプロジェクトについて紹介できたらと思います。 私自身はApache Solrを好んで利用しています。 ただ、最近のサーバサイドの技術の移り変わりや、新しい開発言語の登場など、取り巻く環境が変化してきています。それらの習得も踏まえ、使ったことのない開発言語を用いて軽量な全文検索サーバを作り始めるという内容です。 開発した経緯 インフラの変化 ここ数年でインフラは大きく変化しました

                                      Rust初心者がRustで全文検索サーバを作ってみた - Qiita
                                    • Linux 6.1の注目機能「MGLRU」―メモリ管理に取り入れられたエイジングシステム | gihyo.jp

                                      Linus Torvaldsは12月11日(米国時間⁠)⁠、前週の告知どおりに「Linux 6.1」の正式リリースをアナウンスした。 Linux 6.1 -Linus Torvalds Linux 6.1はメインライン開発ではじめてRustを採用したことが大きな話題となったが、そのほかにもユーザ空間におけるメモリサニタイザーツールに似た動的エラー検出の「KMSAN」やB-treeベースのデータ構造「Maple Tree⁠」⁠、AMDの新しいPMFドライバのサポートなど多くのアップデートが行われている。Googleの開発者がメインラインへのマージを提案してきた「MGLRU(Multi-generational LRU⁠)⁠」もそのひとつで、古参のカーネル開発者であるAndrew MortonもMGLRUのメインライン化をバックアップしてきた。 Linuxカーネルではメモリ管理に「LRU(Le

                                        Linux 6.1の注目機能「MGLRU」―メモリ管理に取り入れられたエイジングシステム | gihyo.jp
                                      • オープンソースのWebAssemblyサーバレス基盤「Wasm Workers Server 1.0」正式リリース。RubyとPythonのWASMランタイムに対応し、Ruby/Pythonでの記述が可能に

                                        オープンソースのWebAssemblyサーバレス基盤「Wasm Workers Server 1.0」正式リリース。RubyとPythonのWASMランタイムに対応し、Ruby/Pythonでの記述が可能に VMware Wasm Labsは、Node.jsやDenoのようにWebAssemblyやJavaScriptで記述したWorkerをサーバサイドでイベントドリブンに実行できる「Wasm Workers Server」のバージョン1.0をリリースしました。 Wasm Workers Server v1.0.0 is out. We are happy to announce the support for Python, Ruby and more languages in the future! From now on, you can create worker-based se

                                          オープンソースのWebAssemblyサーバレス基盤「Wasm Workers Server 1.0」正式リリース。RubyとPythonのWASMランタイムに対応し、Ruby/Pythonでの記述が可能に
                                        • Go vs Rust : 特徴量DBに適するのはどっち!? (2020-04-14 実験追記) - ABEJA Tech Blog

                                          ABEJA で Research Engineer をやっている中川です.普段は論文読んだり,機械学習モデルを実装したり,インフラを構築したりしています.今回のブログでは,Insight for Retail の一機能として提供しているリピータ分析に用いる特徴量DBの改善に向けた言語選定について紹介します. ※ たくさんの方々からのコメントありがとうございます.いただいた観点をベースに「2020-04-14 追記」以下に実験を追加しました. モチベーション リピート分析では,任意の特徴量をクエリに最も類似した特徴量を数100msec以内に検索する必要があり,一般的なデータベースでは実現することが難しいという課題がありました.そこで,われわれは python で独自のインメモリデータベースを実装し運用してきました.このデータベースがサービスの成長に合わせて限界を迎えつつあるので,アルゴリズム

                                            Go vs Rust : 特徴量DBに適するのはどっち!? (2020-04-14 実験追記) - ABEJA Tech Blog
                                          • Wasmはなぜセキュアなのか?

                                            Wasmはなぜセキュアなのか? 前回Wasmのバイナリを読んでみたが、実行時にどのようにセキュアに実行しているのか気になったので調べてみた。 とりあえず今回も公式ドキュメントを見ながら整理しつつ、実際のコードも無理なく辿れそうなところはwasmerの実装を参考に見ていきたいと思う。 Wasmの目指すセキュリティ とりあえず公式の記載を脳死で読解していく。 The security model of WebAssembly has two important goals: (1) protect users from buggy or malicious modules, and (2) provide developers with useful primitives and mitigations for developing safe applications, within the

                                              Wasmはなぜセキュアなのか?
                                            • pythonパッケージ管理ツールryeを使う - 肉球でキーボード

                                              Pythonパッケージ管理ツール ryeの使い勝手がよかったので使用方法をまとめました。 ryeとは GitHub: https://github.com/mitsuhiko/rye flaskの作者である Armin Ronacher氏 (GitHubアカウント @mitsuhiko)が個人利用目的で作成した、Pythonのパッケージ関係管理ツールです。内部実装はRustです。 ryeが作成された思想がリポジトリ Should Rye Exist? のDiscussionページに書かれています。 Should Rye Exist?: XKCD #927 Disucssion中の図にあるように、従来のPythonのパッケージ管理は”様々な標準”が存在し、このばらつきを統一しようと新しくパッケージ管理ツールを導入しても、”新たな標準が追加されるだけ”となり、真のパッケージ管理の標準化を行えて

                                                pythonパッケージ管理ツールryeを使う - 肉球でキーボード
                                              • ロック好きなら高校生までに聴いておきたい古典100(ハードロックヘヴィメタル含む編)

                                                ハードロック、ヘヴィメタルが好きな高校生諸君、ネットの海に出るとスラッシュメタル四天王とか、プログレがどうとか、アニソンはメタルだとか、よくわからない言葉を目にすると思う。 そんなときは歴史を知ろう。故きを温ねて新しきを知る。以下の100枚を聞けばだいたいわかるようになるぞ。 これで物知り顔で蘊蓄垂れるおじさんにドヤ顔をやり返してやろう。 (おおむねアーティスト名アルファベット、五十音順。国内海外順不同。原則1アーティスト1枚) 1. Whatever People Say I Am, That's What I'm Not / Arctic Monkeys 2.Relationship Of Command / At The Drive-In 3.Slaughter Of The Soul / At The Gates 4.METAL RESISTANCE / Baby Metal 5.

                                                  ロック好きなら高校生までに聴いておきたい古典100(ハードロックヘヴィメタル含む編)
                                                • Rust製高速データフレームライブラリ、Polarsを試す | gihyo.jp

                                                  門脇@satoru_kadowakiです。今月のPython Monthly Topicsでは、Rust製の高速データフレームライブラリ Polars について紹介します。 Polarsとは Pythonでデータ分析に使用される主なライブラリに pandas があります。Polarsはpandasと同様にデータフレームというデータ構造オブジェクトを提供するサードパーティライブラリです。特にpandasを意識して作られており、メインページに「Lightning-fast DataFrame library for Rust and Python」とあるように、Rustによる高速処理を謳っています。 Polarsのリポジトリや関連ドキュメントは以下を参照してください。 Github: https://github.com/pola-rs/polars ユーザーガイド: https://pola

                                                    Rust製高速データフレームライブラリ、Polarsを試す | gihyo.jp
                                                  • Denoのフロントエンド開発の動向【2021年春】

                                                    はじめに ここ最近、Denoのフロントエンド向けのエコシステムについて、色々試してみたり、調査などをしていました。 そこで、この記事では、2021年現在のDenoのフロントエンド開発の状況であったり、所感などについてまとめます。 フレームワークについて Node.jsにおけるフロントエンド開発では、以下のフレームワーク[1]が使われることが多いと思います。 React Vue.js Preact これらのフレームワークは、すでにDenoでも動作します。 またこれらをベースにしたフレームワークがいくつか開発されています。 Aleph.js Aleph.jsはNext.jsに影響を受けたReactベースのフレームワークです。 以下のような機能が提供されています: HMRをサポートするdevサーバを提供 ファイルシステムベースのルーティング SSR/SSGをサポート CSS Modules 開発

                                                      Denoのフロントエンド開発の動向【2021年春】
                                                    • MoonBit が WebAssembly 時代の理想(の原型)だった

                                                      最近 moonbit という言語を知ったのですが、これが調べれば調べるほど好きになる言語だったので、紹介させてください。 文法的には GC 付きの Rust で、 WebAssembly にコンパイルされます。とくに CDN Edge Worker 上での実行を想定しているようです。もう好き。 注意: まだ若い言語なので、これから言語仕様がガンガン変わっていくと思われます。あくまで現時点での情報です。 tl;dr Pros だいたい GC あり Rust と捉えていい 文法面のキャッチアップが容易 ライフタイムの難しさを考えなくていい すでに vscode 拡張やパッケージマネージャ等のエコシステムが整っている Cons まだ安定していない / しばらくはソースコードが公開されない 現時点では学習リソースやパッケージ数が足りず、書き手の腕力が求められる はじめに: JS/TS/Rust へ

                                                        MoonBit が WebAssembly 時代の理想(の原型)だった
                                                      • なぜ Zig の採用を検討しているのか

                                                        かなり雑に書いてるので、雑に読んでください。 Bun が Zig で開発されていることを知り、そこから Zig を調べてみています。 調べていくと自分が求めていた言語っぽいというのがあり、社外では学生に QUIC や TLS 1.3 を Zig で OSS を開発してもらうお仕事を出したり、社内では実際に採用に向けて調査を進めています。 そもそもの目的自分の会社では Erlang VM を利用した製品をメインに利用しています。ただ Erlang VM 遅いんです。少なくとも暗号処理であれば Rust の方が 2 倍ほど速いです。Erlang VM 自体 JIT を採用したり、いろいろ頑張ってくれているのですが劇的な高速化というのは今すぐには難しいのが現実です。 そこで NIFs (Native Implemented Functions) を使って頑張るという戦略があります。早い話が Er

                                                        • 「Rustで始めるネットワークプログラミング」を出版しました。 - 電気ひつじ牧場

                                                          書籍をkindleとBOOTHで販売開始したので、内容の紹介と出版について書き連ねていきます。 内容紹介 出版したもの サンプル 対象読者について 各章について 1章「ようこそソケット通信の世界へ」 2章「通信を監視する」 3章「手づくりパケットでポートスキャン」 4章「ノンブロッキングなWEBサーバ」 5章「RFCから作るDHCPサーバ」 執筆あれこれ 執筆期間について 執筆ツールについて 表紙について 価格について プラットフォームについて 終わりに 内容紹介 出版したもの 「Rustで始めるネットワークプログラミング」をkindle(https://t.co/Mf98l0YgKS)とBOOTH(https://t.co/ilHIt1UEbi)で販売開始しました。 全101ページ/5章構成で、価格は¥500です。無料サンプル(https://t.co/NilMo1QAhL)もあります。

                                                            「Rustで始めるネットワークプログラミング」を出版しました。 - 電気ひつじ牧場
                                                          • Linuxカーネルが難しい?Rustで実装できそう!

                                                            「ついに、RustでLinuxカーネルを実装できる!」 待ち望んだ感を出してみましたが、2年前に記事を書いてから、すっかり忘れていました。LinuxカーネルのRustサポートについての意見を求められたら、「技術的には面白いけど、実用レベルではないね。」と、上から目線の回答でエンジニアレベルの高さをアピールするつもりでしたが、2年間の間、誰にも聞かれませんでした。 近々、LinuxカーネルにRustサポートが取り込まれそう、ということで、デバイスドライバを実装してみました。 Rust対応カーネルのコンパイルまずは、Rust対応を有効にしたLinuxカーネルをコンパイルする必要があります。「カーネルってコンパイルするものなの?」という読者は、ネットの長老たちに叡智を求めましょう。「インストール直後に、メモリ削減のために不要な機能を無効にして、カーネルコンパイルしたんじゃ。」というような、太古の

                                                              Linuxカーネルが難しい?Rustで実装できそう!
                                                            • RustでWasm Runtimeを実装する

                                                              Rustで"Hello World"を出力できる小さなWasm Runtimeをゼロから実装して、WasmとWASIの動作原理を理解する本です。

                                                                RustでWasm Runtimeを実装する
                                                              • CPUキャッシュがGoのコードに与える影響(翻訳)|TechRacho by BPS株式会社

                                                                繰り返しますが、正確な図はプロセッサモデルによって異なります。ここでは見積もりのため、以下の目安で考えます。メインメモリのアクセスに60ns(ナノ秒)かかり、L1キャッシュへのアクセス速度はその約50倍高速だとします。 さて、プロセッサの世界には「参照の局所性(locality of reference)」と呼ばれる重要な概念があります。プロセッサがメモリ上の特定の場所にアクセスするとき、以下のように予測を立てます。 近い将来、メモリ上の同じ場所にアクセスする可能性が非常に高い これは「時間的局所性(temporal locality)の法則」です 近い将来、メモリ上のその場所からごく近い場所にアクセスする可能性が非常に高い これは「空間的局所性(spatial locality)の法則」です CPUにキャッシュが存在する理由のひとつが、この時間的局所性です。では空間的局所性を高めるにはど

                                                                  CPUキャッシュがGoのコードに与える影響(翻訳)|TechRacho by BPS株式会社
                                                                • Writing Python like it’s Rust

                                                                  I started programming in Rust several years ago, and it has gradually changed the way I design programs in other programming languages, most notably in Python. Before I started using Rust, I was usually writing Python code in a very dynamic and type-loose way, without type hints, passing and returning dictionaries everywhere, and occasionally falling back to “stringly-typed” interfaces. However, a

                                                                  • Go言語を習得するために、Goちゃんねるを作った

                                                                    先週、A Tour of Go やってみた TIL というブログを書いてみた通り、Go言語を始めた。 で、ちまちま勉強をしていたのだが、つい最近たまたま ISUCON の過去問をやる機会があって Go のスコアを見たら初期値ですら、チューニング済みの他の言語のスコアを超えていて、絶対に習得するぞの気持ちにさせられた。 ちなみに私はどう言うわけかフロントエンドのソースコードをビルドしたら vite が走ってファイルハッシュが全部変わって、ベンチマークからアクセスできなくなって0点でした。対戦ありがとうございました。 なにはともあれ、本番は絶対にGoでやるぞの気持ちを新たに Go の習得に励んでいた。前のブログでは、文法が分かったから HTTPサーバー DB Connection / Migration 境界値チェックや型推論 テスト スキーマ駆動開発 コンテナデプロイ あたりをやってみたいと

                                                                      Go言語を習得するために、Goちゃんねるを作った
                                                                    • 「いい感じに成長する」エンジニアのキャリアと学び方 - 2023年オススメPython本を添えて - Lean Baseball

                                                                      このブログおよび, 登壇・アウトプットはゴリッゴリのエンジニア, 本職はコンサル企業のマネージャーとしてクラウドエンジニアリングのコンサルをやっている者です*1. この記事は, 当ブログの名物である, Pythonのオススメ書籍(と関連する技術書)の紹介エントリーです! ※去年の記事はこちら. 本年のエントリーでは「今最もいい感じなPython本」の紹介に加えて, キャリアごとに読むべき技術書(と学び方)の選び方 この年末に読んで欲しい技術書(Python本とそれ以外) 「エンジニアのキャリア形成的に期待値の考え方大事だよ」という話 この三本立てでご紹介できればと思います. というわけで, 本年のラインナップは以下の通りです. 要約すると キャリアレベルを考える オススメ技術書籍2023 ジュニア🔰 メンバー マネジメント ボード 結び - キャリアごとの期待値 【番外編】私の推し書籍2

                                                                        「いい感じに成長する」エンジニアのキャリアと学び方 - 2023年オススメPython本を添えて - Lean Baseball
                                                                      • Z80+C言語で16ビット機級の本格的なゲームが創れるゲーム機(VGS-Zero)を作ってみた - Qiita

                                                                        はじめに 2024年1月1日に VGS-Zero (Video Game System - Zero) という RaspberryPi Zero 2W のベアメタル環境で動作するオリジナルのゲーム機エミュレータと SDK を公開しました。 VGS-Zero は、RaspberryPi Zero 2W をテレビに HDMI ケーブルで接続し、USB ゲームパッドで遊ぶタイプ(据え置き型)の新しいゲーム機です。 無料でゲームを開発&販売ができる SDK も公開していて、開発したゲームを完全ロイヤリティフリーで自由に販売して頂くことができます。 なお、OS は Linux ではなく独自カーネルです。 特徴 VGS-Zero の特徴について、カーネル視点とゲーム機視点の両面から解説します。 独自カーネルの特徴 ラズパイ全般(※Picoを除く)は Linux で動かすのが一般的ですが、VGS-Zer

                                                                          Z80+C言語で16ビット機級の本格的なゲームが創れるゲーム機(VGS-Zero)を作ってみた - Qiita
                                                                        • Biome はじめました。

                                                                          モチベーション そもそも TypeScript や JSX に詳しくないのでどう書くのがいいのか悩みたくない ESLint や Prettier の設定を なんとなく 設定して使ってしまっている Formatter / Linter 関連のライブラリの内容を理解せずにアップデートしてしまっている 依存関係は減らしていきたい Rust で書かれた言語向けの高速なツールが好き Rye とか Ruff とか efmt とか Biome Biome は Rust で書かれた Formatter / Linter を含むツール。本当におかしいくらい早い。 全然大きくないが、以下のソースコードに適用したときの速度。 $ pnpm run fmt > biome format --write ./src Formatted 114 file(s) in 11ms $ pnpm run lint > bi

                                                                            Biome はじめました。
                                                                          • GitHub - spacedriveapp/spacedrive: Spacedrive is an open source cross-platform file explorer, powered by a virtual distributed filesystem written in Rust.

                                                                            A file explorer from the future. spacedrive.com » Download for macOS (Apple Silicon | Intel) · Windows · Linux · iOS · Android ~ Links for iOS & Android will be added once a release is available. ~ Spacedrive is an open source cross-platform file manager, powered by a virtual distributed filesystem (VDFS) written in Rust. UPDATE: Spacedrive is under active development, we are in the alpha stage an

                                                                              GitHub - spacedriveapp/spacedrive: Spacedrive is an open source cross-platform file explorer, powered by a virtual distributed filesystem written in Rust.
                                                                            • Rustのビルドを高速化する方法 | POSTD

                                                                              Rustコードのコンパイルが遅いことは誰でも知っています。しかし筆者は、世の中のほとんどのRustコードはコンパイルをもっと速くできると強く感じています。 例えば、つい最近の記事にこのように書かれていました。 一方、Rustでは、プロジェクトやCIサーバーの性能にもよりますが、 CIパイプラインの実行に15~45分かかります。 これは筆者には理解できません。GitHub Actions上にあるrust-analyzerのCIの所要時間は8分です。しかも、これは100万行の依存関係に加え、20万行の独自コードが記述されたとても大規模で複雑なプロジェクトでの話です。 確かに、Rustは根本的な部分で非常にコンパイルが遅いのは間違いありません。Rustはジェネリクスのジレンマにおいて「遅いコンパイラ」を選び、全体的な設計思想としてコンパイル時間よりもランタイムを優先しています(この点に関する優れ

                                                                                Rustのビルドを高速化する方法 | POSTD
                                                                              • Next.js 12について本気出して和訳してみた

                                                                                Next.js 12について本気出して和訳してみた Next.js 12がリリースされました!!!🎉 公式ページは英語となっておりますので、Next.js 12の内容を和訳していきます。 公式ページは以下となっております。 英語が苦手な方はこの記事を参考にしてください!!! ※本記事で使用している画像は公式ページのものです。 Next.js 12 2021年10月27日(水) Next.js Confで発表したように、Next.js 12は過去最大のリリースとなります。 Rustコンパイラー: Fast Refreshが3倍、そしてビルドが5倍速くなりました。 ミドルウェア(beta): Next.jsの柔軟性を高めるために、設定よりもコードを優先します。 React 18のサポート: ネイティブのNext.jsのAPIがサポートされ、サスペンスもサポートされています。 <Image /

                                                                                  Next.js 12について本気出して和訳してみた
                                                                                • 【話題沸騰中】軽量でお洒落なコマンドプロンプト拡張ライブラリ「Starship」を導入した話 - Hajimari Tech Blog| 株式会社Hajimari

                                                                                  こんにちは。 分からないことに出会ったら、ワクワクする inteeの 中野 です。 会社から新型MacBook Proを支給して貰ったので、 ターミナルのプロンプトをカスタマイズした話をしようと思います! Starshipとは Starshipとは、ターミナルのプロンプトをカスタマイズするプラグインです。 日本語翻訳が充実しており、可愛いデザインに惚れて、導入を決めました! Starshipの特徴 Rust言語で開発されており、動作が高速 設定ファイルで細かくカスタマイズ可能 bash / Zsh / Fish で使用可能 Git管理のプロジェクトであれば、ブランチ名や言語バージョン等が表示可能 ポップなカラースキーム・絵文字がカワイイ(超重要) 個人的に辛い開発時にエモい気持ちになりながら、開発できる体験を重要視しております🙇‍♀️ インストール 今回はMacで導入した為、Homebr

                                                                                    【話題沸騰中】軽量でお洒落なコマンドプロンプト拡張ライブラリ「Starship」を導入した話 - Hajimari Tech Blog| 株式会社Hajimari