並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 1589件

新着順 人気順

cargoの検索結果1 - 40 件 / 1589件

  • pipとpipenvとpoetryの技術的・歴史的背景とその展望 - Stimulator

    - はじめに - Pythonのパッケージ管理ツールは、長らく乱世にあると言える。 特にpip、pipenv、poetryというツールの登場シーン前後では、多くの変革がもたらされた。 本記事は、Pythonパッケージ管理ツールであるpip、pipenv、poetryの3つに着目し、それぞれのツールに対してフラットな背景、技術的な説明を示しながら、所属企業内にてpoetry移行大臣として1年活動した上での経験、移行の意図について綴り、今後のPythonパッケージ管理の展望について妄想するものである。 注意:本記事はPythonパッケージ管理のベストプラクティスを主張する記事ではありません。背景を理解し自らの開発環境や状態に応じて適切に技術選定できるソフトウェアエンジニアこそ良いソフトウェアエンジニアであると筆者は考えています。 重要なポイントのみ把握したい場合は、各章の最後のまとめを読んで頂

      pipとpipenvとpoetryの技術的・歴史的背景とその展望 - Stimulator
    • VSCodeの拡張機能、なに使ってますか? はてなエンジニア世論調査 #2 - Hatena Developer Blog

      こんにちは、Webアプリケーションエンジニアのid:hogashiです。 半年ほど前に公開した「開発環境のフォントなに使ってますか?」に続く、はてなエンジニア世論調査の第2回「VSCodeの拡張機能、なに使ってますか?」です。 ソースコードエディタであるVisual Studio Code(以下、VSCode)は多くのエンジニアに利用されています。VSCodeにはソースコードのシンタックスハイライトやデバッグなど、さまざまな拡張機能をインストールして使うことができますが、公開されている拡張機能は膨大にあります。 その中から、はてなのエンジニアはどんな拡張機能をインストールして、日頃の開発に使っているのでしょうか? 前回と同様にアンケート調査してみました。 アンケート方法 アンケート結果から見える人気の機能拡張 6割の拡張機能は1人だけが使用 人によってかなり異なるインストール数 興味深いコ

        VSCodeの拡張機能、なに使ってますか? はてなエンジニア世論調査 #2 - Hatena Developer Blog
      • cargo『池上彰氏の「国の借金デマ」に反論します。』

        cargo official blog powered by ameba クラブ系ユニットcargoのオフィシャルブログ Official Site : www.cargo-jp.com 先日、またまた池上彰さんがやらかし、ツイッターで話題になっていました。 池上さんはもうこの手の財務省の大嘘プロパガンダを定期的に宣伝するための工作員となってしまったのですかね…。 問題の放送は15日のものですが、この悪質な「国の借金デマ」を何度も垂れ流しているわけですから、BPO行きは確実です。 なぜ我々がこんなにもマスコミの「国の借金デマ」をしつこく非難するのかと言いますと、この「国の借金デマ」が人を不幸にするからです。 その例として、相模原で障碍者数十人を殺傷した植松被告が「国の借金が大変なので、生産性のない者を安楽死させる」として凶行に及んだ件が挙げられるでしょう。 「国の借金は返さなければいけない

          cargo『池上彰氏の「国の借金デマ」に反論します。』
        • Linuxメモ : あると便利かもしれないRust製コマンドラインツール - もた日記

          インストール方法 bat ripgrep, ripgrep-all fd, fselect starship exa, lsd, nat nushell navi, tealdeer delta hyperfine xsv, csview py-spy bandwhich, gping, ht, dog hexyl, bingrep broot tokei genact, globe, glitchcat monolith shellharden fnm, volta pastel gitui, onefetch, git-interactive-rebase-tool skim watchexec dust, diskonaut, dua-cli, dutree zoxide ytop, bottom, zenith mcfly sd, desed topgrade pueue proc

            Linuxメモ : あると便利かもしれないRust製コマンドラインツール - もた日記
          • 高校生が作った有料サービスがちょっと儲かったのでいろいろ書く

            Discordの有料読み上げBotを運営している高校3年生です。公開2年目で月に12kほど利益が出ています。 最大4つのボイスチャットで読み上げ可能 可用性99% Webダッシュボード などの機能があります。Discordを使っている方がいれば、ぜひ導入していただけるとうれしいです。 コミュニティの宣伝 未踏ジュニアに採択された採択者で、未踏ジュニアに挑戦したい方向けのコミュニティを始めました!約12人の採択者と話をしたり、質問できます!ぜひ共有していただけると幸いです🙏 なぜ作ることにしたのか? 昔(4年前)頃から無料のDiscordの読み上げBotは存在していましたが、どれも使う人数が多すぎて制限があったり、読み上げが遅くなったりするという問題がありました。そこで、有料の読み上げBotを運営することにしました。 料金体系 一律で月500円/20万文字のサブスクリプションにしました。g

              高校生が作った有料サービスがちょっと儲かったのでいろいろ書く
            • お気に入りのコマンドラインツールを淡々と紹介する

              めちゃくちゃ良い記事でした。 「OSS は使っていることを公言するだけでも貢献になる」と songmu さんが言っていたので、私も貢献したいと思います。 僕も貢献したいのでよく使うコマンドラインツールを紹介していきます。 特定のプログラミング言語等に依存するツールは省いています。 actionlint - GitHub Actions の Workflow ファイルの静的検査 GitHub Actions の Workflow ファイルの静的検査ツールです。 かなり精度が高く、色々な設定ミスを検知してくれます。 エラーメッセージも見やすくて助かります。 aicommits - コミットメッセージを自動生成 変更内容を元に自動でコミットメッセージを AI が生成してくれるツールです。 コミットをする前にちゃんと確認してくれるのも安心感があって良いです。 cLive - ターミナル操作を自動化

                お気に入りのコマンドラインツールを淡々と紹介する
              • とほほのRust入門 - とほほのWWW入門

                「ラスト」と読みます。 Mozilla に従事するグレイドン・ホアレが個人的に開発していましたが、のちに Mozilla の公式プロジェクトとなりました。 2021年には、AWS, Google, Huawei, Microsoft, Mozilla がメンバーとなる Rust Foundation に権利が委譲されました。 Rust は「錆(さび)」を意味します。開発チームに自転車乗りが多く、ロゴも自転車のさび付きチェーリングを元にしています。 C言語やC++に変わる言語として開発されました。 Stack Overflow で2016~2019年の間「最も愛されているプログラミング言語」として1位を獲得しています。 Firefox の Servo(HTMLレンダリングエンジン)も Rust で開発されています。 if ... や while ... なども式として評価することができます。

                • Rustの良質な学習リソースをまとめる - BioErrorLog Tech Blog

                  Rustの勉強に良さげな学習リソースをまとめます。 はじめに Rust学習リソースまとめ The Rust Programming Language Tour of Rust Rust by Example The Rust Reference The Cargo Book Crate docs Rust API Guidelines Rust Design Patterns The Rustonomicon Secure Rust Guidelines Command line apps in Rust おわりに 参考 はじめに こんにちは、@bioerrorlogです。 最近、Rustを触り始めました。 多様な領域で盛り上がりを見せているRustですが、私は最近ハマっているブロックチェーンのエコシステムでRustが使われることが直接の理由となり、Rustに入門しました。 Rustは学習

                    Rustの良質な学習リソースをまとめる - BioErrorLog Tech Blog
                  • 【2021】モダンなPython開発環境の紹介 - Qiita

                    📌 はじめに Pythonで開発を行うにあたり、リンタやフォーマッタ、パッケージマネージャ等のツールの選定は非常に重要な問題です。一方で歴史的な経緯もあり、沢山の選択肢から何を選ぶべきか情報がまとまっていないように感じました。この記事では2021年9月時点でモダンと言えるであろう開発環境を紹介します。基本的にはシェアが高いこと、著名なパッケージで使用されていることを主な選定理由としており、また特定のエディタに依存しないことを前提とします。 本記事で紹介する内容は一つのテンプレートに近く、必要に応じてカスタマイズするもよし、そのまま使ってもよし、として参考になればと思います。(CI/CDについてはPythonとは独立した問題なので触れません。またドキュメント生成はSphinxを推しますが、必須ではないので今回は割愛します。) 📄 要約 "モダン"な開発環境を箇条で列挙すると下記の通りです

                      【2021】モダンなPython開発環境の紹介 - Qiita
                    • カメラバッグ見せてください! 撮影スタイルの異なる7人が、愛用カメラバッグ&中身を大公開 #ソレドコ - ソレドコ

                      アウトドアとカメラが趣味のブロガー、OKPと申します。 カメラ・写真が趣味の人間にとって、何かとなじみ深い「○○沼」。有名なのは、気になるレンズを次々に購入してしまう「レンズ沼」ですが、今回はカメラとは切っても切り離せないアイテムである「カメラバッグ沼」の世界をご案内しようと思います。 はじめに伝えておきたいのは、人によってベストなカメラバッグは異なるということ。そもそも、撮影対象も撮影スタイルもさまざまですし(スナップ、風景、ポートレート、動物……)カメラバッグに求める条件にしても、形状(タイプ)、携行性、容量、耐久性から、デザイン、素材、価格まで、挙げだしたら切りがありません。 筆者が愛用するカメラバッグ さらに、撮影目的や機材の量によって、数種類のカメラバッグを使い分けることは当たり前。筆者本人も、街でのスナップ、登山、取材旅行では、使うカメラもカメラバッグも変わります。 なので、今

                        カメラバッグ見せてください! 撮影スタイルの異なる7人が、愛用カメラバッグ&中身を大公開 #ソレドコ - ソレドコ
                      • Rustの非同期プログラミングをマスターする - OPTiM TECH BLOG

                        こんにちは、R&Dチームの齋藤(@aznhe21)です。 さあみなさん、ついにこの時がやってまいりました。 本日2019/11/8にリリースされたRust 1.39により、あらゆる環境で最高速な非同期プログラミングが可能になりました。 新たな時代に乗り遅れないよう、今のうちにRustでの非同期プログラミングをマスターしておきましょう。 なお、この記事は、先日開催したOPTiM TECH BLOG Meetupの内容を大幅に加筆修正した上でエントリに仕上げたものです。 まず最初に伝えたいこと 非同期の歴史 Rustの非同期プログラミングの歴史 Rust 1.0以前 Rust 1.0 〜Rust 1.3 Rust 1.2あたり Rust 1.11あたり Rust 1.26あたり Rust 1.36 Rust 1.39 Rustの非同期プログラミングの特徴 ゼロコスト抽象化 プラットフォーム非依

                          Rustの非同期プログラミングをマスターする - OPTiM TECH BLOG
                        • 僕の考えた最強の Python 開発環境 (2024)

                          はじめに こんにちは, 普段は情報科学専攻の大学院生をしながらバックエンドエンジニアをやっている @koki-algebra です. 普段は Go をよく書いているのですが, 大学でやっている機械学習の研究では Python を使うことがほとんどです. Go のエコシステムに慣れきった私は Python の混沌とした環境に耐えきれず, 最強の開発環境を整えることを決意しました. 具体的には Package Manager, Formatter, Linter, Type Checker, Test Tool を選定し, VSCode の DevContainer を用いてポータビリティに優れた開発環境を作ることを目指します. また, Deep Learning では GPU が必須である場合が多いので, GPU 環境も同時に整えたいと思います. 以下のレポジトリが今回考えた開発環境のテンプ

                            僕の考えた最強の Python 開発環境 (2024)
                          • 安全なシステムプログラミング言語Rustへの招待 | κeenのHappy Hacκing Blog

                            # 安全なシステムプログラミング言語Rustへの招待 ---------------------- [IIJ Labセミナー](https://iijlab-seminars.connpass.com/event/152079/) === # About Me --------- ![κeenのアイコン](/images/kappa.png) * κeen * [@blackenedgold](https://twitter.com/blackenedgold) * Github: [KeenS](https://github.com/KeenS) * GitLab: [blackenedgold](https://gitlab.com/blackenedgold) * [Idein Inc.](https://idein.jp/)のエンジニア + 2年半くらい仕事でRustを書いている

                            • OSはどうやってP-coreとE-coreを使い分けているのか - Blog posts by @retrage

                              Alder Lake以降のIntel CPUでは、P-coreとE-coreの2種類のコアが搭載されている。 P-coreは性能重視、E-coreは省電力重視という位置づけで、OSがうまくこれらのコアを使い分けることで、消費電力と性能の両立が図られている。 ここまでの話は広く知られているが、実際にどのようにしてOSに対してコアの使い分けをさせているのかの実装レベルでの解説は (少なくとも日本語では) ほぼ存在しないようなので調べてみた。 OSから見たP-coreとE-core OSの役割の一つとしてプロセススケジューリングがあり、どのプロセスをいつどれぐらいの期間どのCPUコアで実行するかを決める。OSができるだけ効率よくプロセスをスケジューリングするためには、CPUコアの性能や消費電力の違いを考慮したスケジューリングが必要になる。そこで、Intel CPUではOSに対して次の2つの情報を

                                OSはどうやってP-coreとE-coreを使い分けているのか - Blog posts by @retrage
                              • ターミナル用 UTF-8 テキストエディタを Rust でスクラッチからつくった - はやくプログラムになりたい

                                言語処理系やテキストエディタなどのプログラミングツールが好きなので,その周辺を趣味で触ってます.Vim を Wasm にポートするために Vim の実装を読んだりはしているのですが,フルスクラッチでテキストエディタをつくったことはありませんでした. 今年のお盆はめちゃ暑かったので,引きこもって夏休みの自由工作的に Rust でテキストエディタをつくっていたという話です.普段ターミナルで作業しているので,つくるのもターミナル向けテキストエディタです.最近 vim.wasm で C と TypeScript ばかりだったので,そろそろまた Rust か Go を書きたかったのですが,Go はすでに micro という良さそうなテキストエディタ実装があったので,Rust で書いてみることにしました. まずは Build Your Own Text Editor というガイドを利用して,1000行

                                  ターミナル用 UTF-8 テキストエディタを Rust でスクラッチからつくった - はやくプログラムになりたい
                                • 使いやすさを重視したHTMLスクレイピングライブラリを作った - 純粋関数型雑記帳

                                  TL:DR レポジトリ https://github.com/tanakh/easy-scraper ドキュメント 背景 このところ訳あってRustでHTMLからデータを抽出するコードを書いていたのですが、 既存のスクレイピングライブラリが(個人的には)どれもいまいち使いやすくないなあと思っていました。 HTMLから望みのデータを取り出すのはいろいろやり方があるかと思いますが、 ツリーを自力でトラバースするのはさすがにあまりにも面倒です。 近頃人気のライブラリを見てみますと、CSSセレクターで目的のノードを選択して、 その周辺のノードをたどるコードを書いて、 欲しい情報を取り出すという感じのものが多いようです。 RustにもHTMLのDOMツリーをCSSセレクターで検索して見つかったノードをイテレーターで返してくれたりする、 scraperというライブラリがあります。 例えば、<li>要素

                                    使いやすさを重視したHTMLスクレイピングライブラリを作った - 純粋関数型雑記帳
                                  • Rust Cookbook for Beginners - CADDi Tech Blog

                                    こんにちは😉 @ryokotmngです。 今日は社内ドキュメントの、Rust初心者向けのクックブックを公開しようと思います。 私自身コードを書くのに四苦八苦していた頃にとても助けられたので、Rustをはじめたばかりの方の参考になれば嬉しいです。 目次 [toc] はじめに この記事では、The Bookに記載されている知識を前提としています。 Rustを全く書いたことがない方は、先に読んでみることをお勧めします。 サンプルコードが結構長いこと、実行環境があった方が良い内容も多いことから、サンプルコードは大体Rust Playgroundのリンクとなっています。 ぜひご自身で修正して遊んでみてください。 単位つきの計算を型で厳格に縛る 例えば複数の長さの単位 (mm, cm, mなど) を扱う場合に、単位が合っていない長さ同士の計算をする場合、単位を揃える必要がありますね。 この時、最終的

                                      Rust Cookbook for Beginners - CADDi Tech Blog
                                    • お前らのコミットは汚い - Qiita

                                      お前らのXXXXは<ネガティブな形容詞>シリーズ で失礼します。 日頃gitをお使いの皆様におかれましては、キレイなコミットを心がけていらっしゃいますでしょうか。 私も心がけてはいますが、なかなか難しいものがあります。 参考までにこちら、最近業務で書いたプルリクエストのコミットログです。 控えめに言って汚いと思われたかと思います。 ではキレイなコミットの例を。 プルリクエストというのは、やはり先達の方に見ていただいてご指摘いただこうというものですから、 当然コミットハッシュもゾロ目等でキレイにするというのがマナーです。 では今回はこのキレイなコミットをどうやって作るのか、という話を書きます (ショート)コミットハッシュ コミットハッシュとは、gitのコミットごとに生成される、40桁の[0-9a-f]からなる文字列です。 お手元のリポジトリ上で git log --format=%H を叩く

                                        お前らのコミットは汚い - Qiita
                                      • 大学でRustを教えた話 - 未完成な論を綴るブログ

                                        このブログ記事は、Advent Calender 2020, Rust 3、23日目の記事となります。自分は現在大学で教員をしていまして、セキュリティ系の研究室に所属しています。現在はセキュリティの講義を担当しており、そこでRust言語を教えているため、その内容を紹介しようと思います。 はじめに 皆さんご存知のようにソフトウェアの脆弱性は今でも大きな問題となっていますが、それを完全ではないにしろ根本から解決するための技術的手法として型システムが注目されています。型システムの考え自体は古くからありますが、最近ではRust言語が登場し、OSなどいわゆる低レイヤーなソフトウェアも型システムの恩恵を預かることができるようになってきました。SMTソルバや定理証明などと言った難しい(かつ面白い)手法でC言語やC++言語で書かれたソフトウェアを解析する方法もありますが、セキュアソフトウェアを語る上では、

                                          大学でRustを教えた話 - 未完成な論を綴るブログ
                                        • 4輪の特定小型原付!「スズライド」「スズカーゴ」をスズキが参考出品【ジャパンモビリティショー2023】 - Webikeプラス

                                          スズキは10月に開催される「ジャパンモビリティショー2023」にて、新コンセプトの参考出品車を一挙に発表する。この中でもひと際異彩を放つ4輪車「SUZU-RIDE(スズライド)」と「SUZU-CARGO(スズカーゴ)」は、様々な使い方ができる新型電動モビリティだ。 市販予定はまだないが、車体のサイズや各種保安部品から「特定小型原付」に相当するモデルになるのは間違いない。近い将来、レジャーや日常生活で身近に触れることができるかも!?

                                            4輪の特定小型原付!「スズライド」「スズカーゴ」をスズキが参考出品【ジャパンモビリティショー2023】 - Webikeプラス
                                          • プログラミングに必要なブレイクスルー

                                            Yoyo Code (Matyáš Racek's blog)より。 ソフトウェアの開発方法を劇的に変えるには、いくつかのブレイクスルーが必要だと感じています。ブレイクスルーといった場合、それは大きなブレイクスルーを意味します。例えば、「構造化プログラミング」のブレイクスルーのようなもので、プログラミングに対する私たちの考え方を完全に変えてしまうようなものです。ここでは、それに関するいくつかの見解とアイデアを紹介します。 グルーコードや定型文を書くのは無駄だ 私が書くコードのほとんどは、面白いことはするわけではなく、定型文か、サブシステム同士を繋ぐための糊のようなものです。この種のコードは、すでに何度も書かれていて、これからも何度も書かれるような気がします。それなのに、なぜまた書かなければならないのでしょうか? 問題は、コードがかなり異なっていることで、通常は既存のコードをそのまま使うこと

                                            • えっちな grep をつくった - はやくプログラムになりたい

                                              H(uman-friendly) な grep コマンド hgrep をつくりました. github.com '\w+ で検索した時の出力 ファイルを特定のパターンで検索し,マッチした箇所を構文ハイライトしたコード片で表示します.超ざっくり言うと,ripgrep で検索して bat でマッチ箇所付近を表示するような感じです. grep -C によるコンテキスト表示に似ていますが,マッチ行が近い時は1つのコード片にまとめる,周囲何行を表示するかをヒューリスティックに少し賢く決めているなど,ちょっと出力は工夫しています. 動機 手元のリポジトリでコードを検索する時は 単純に grep で検索してマッチ結果を眺める grep | fzf のように検索結果を fzf で絞り込んだりプレビューする vim $(grep -l ...) のように検索結果をエディタで開く あたりを使い分けているのですが

                                                えっちな grep をつくった - はやくプログラムになりたい
                                              • また make の話してる(2020年9月14日) - なにもわからない

                                                私の大好きな Makefile の話が盛り上がっていたのでまとめました。 「やめてね。」って方はお声がけください。 同じ会社にいるけど、真逆の感想を持っている。Makefile読まないと副作用が分からないし、Rakefile/package.jsonだけで済むのに無駄に1つレイヤ増えていて、Makefileできたときからいる人は楽だけど、途中から入った人にとっては学習コストが高い。 https://t.co/EXtmI3xl72— 神速 (@sinsoku_listy) 2020年9月13日 golangでMakefileを使うのは分かる。 ただ、RubyやNode.jsのリポジトリなら $ git clone xxx $ cd xxx $ bundle install && rake もしくは npm install && npm test で環境構築ができることを期待する。— 神速 (

                                                  また make の話してる(2020年9月14日) - なにもわからない
                                                • RustでWebアプリケーションのバックエンドを開発するには ─ 型システムの堅牢性と柔軟性を業務システムにも!|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                                  ハイクラス求人TOPIT記事一覧RustでWebアプリケーションのバックエンドを開発するには ─ 型システムの堅牢性と柔軟性を業務システムにも! RustでWebアプリケーションのバックエンドを開発するには ─ 型システムの堅牢性と柔軟性を業務システムにも! 安全性に大きな特徴があるプログラミング言語Rustは、C言語やC++に代わるシステム記述言語として注目されてきました。しかし、その安全性とパフォーマンスの高さにより、ビジネスアプリケーションの構築にも採用されています。この記事ではキャディ株式会社による事例を紹介します。 こんにちは。キャディ株式会社バックエンドエンジニアの松田と申します。 キャディ株式会社では、「モノづくり産業のポテンシャルを解放する」をミッションとして、製造業分野に関連するさまざまなソフトウェアの開発を行っています。また、そのための主要な開発言語としてRustを採用

                                                    RustでWebアプリケーションのバックエンドを開発するには ─ 型システムの堅牢性と柔軟性を業務システムにも!|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                                  • 中学生が開発したガムテープ剥がし機「熱ぺろん」とはなにか

                                                    先日、とある中学校の先生からメールをいただいた。 ざっくり言うと、その先生が顧問をしている物理研究部の生徒さんたちが「ダンボールに貼られたガムテープを簡単に剥がせる装置」を作っているんだけど、文房具ライターの立場から何かアドバイスをもらえませんか?というものだ。 えー、なにそれなにそれ、気になる。役に立つコメントができるかは分かんないけど、ひとまず実物を見せてもらいに行こう。 1973年京都生まれ。色物文具愛好家、文具ライター。小学生の頃、勉強も運動も見た目も普通の人間がクラスでちやほやされるにはどうすれば良いかを考え抜いた結果「面白い文具を自慢する」という結論に辿り着き、そのまま今に至る。(動画インタビュー) 前の記事:自宅にファンシー文具店の在庫全部ってどんな感じ? > 個人サイト イロブン Twitter:tech_k ガムテープ剥がし装置を作った中学生って、どういう人たちなのか お

                                                      中学生が開発したガムテープ剥がし機「熱ぺろん」とはなにか
                                                    • Single Page Applications using Rust

                                                      WebAssembly (wasm) allows code written in languages other than JavaScript to run on browsers. If you haven’t been paying attention, all the major browsers support wasm and globally more than 90% of users have browsers that can run wasm. Since Rust compiles to wasm, is it possible to build SPAs (Single Page Applications) purely in Rust and without writing a single line of JavaScript? The short answ

                                                        Single Page Applications using Rust
                                                      • 私の Rust 学習記録 2021

                                                        ※ この記事は 2021/10 時点での内容です。 社内勉強会で 2021 年に発表した内容で、外部公開しようと思って寝かせてしまっていました。 記事としての鮮度は落ちてますが、頑張って書いたものなので Zenn に公開しておきます。 概要 社内異動を機に業務で Rust を書けることになった私の Rust 学習記録です。 今までの言語経験はメインが Ruby、少し JS/TS、趣味で Go をやっていたぐらいです。 学習の方針 なんでもかんでも Rust で書く。 Rust は GC のないシステムプログラミング言語として大体 C 言語と同等のレイヤーからカバーできるので、書こうと思えば OS から Web アプリまで書ける。 yew のような UI 構築用のライブラリもあるので、フロントエンド開発もできる。 というわけでなんでもかんでも Rust で書ける。 リポジトリ運用 デプロイの

                                                          私の Rust 学習記録 2021
                                                        • RustではじめるWebAssembly入門~JavaScriptを超える高速なWebアプリ開発を実践しよう

                                                          本連載では、Webブラウザー上でJavaScriptとともに動作できるバイナリ形式のプログラムファイル「WebAssembly」を、Rustプログラミング言語で実装する方法について、順を追って説明していきます。初回となる今回は、WebAssemblyの概要を説明するとともに、Rustを利用した簡単なサンプルで、実装方法のイメージを紹介します。 はじめに 現在、Webフロントエンド開発においては、ページ構造を表すHTML、スタイルを表すCSSとともに、挙動を実装するためにJavaScriptが利用されます。JavaScriptの登場当初はWebページに動きをつける程度の扱いでしたが、その後の言語仕様の拡張や、WebブラウザーでのJavaScript実行速度の向上、Node.jsなどWebブラウザー以外でJavaScriptを動作させる環境の登場などにより、本格的なプログラミング言語としてその

                                                            RustではじめるWebAssembly入門~JavaScriptを超える高速なWebアプリ開発を実践しよう
                                                          • 静的サイトに特化した全文検索ライブラリ「Pagefind」、さくらのレンタルサーバで動かしてみた

                                                            先日、静的サイトに特化した全文検索ライブラリとして「Pagefind」というソフトウェアがあることを、下記の記事が話題になったことで知りました。 参考:静的サイトに特化した検索ライブラリ Pagefind を試す | grip on minds 実は、いまお読みのPublickeyはまさに、Movable TypeというCMSを用いて生成された静的なWebサイトです。現在、PublickeyではGoogleが提供している「Googleカスタム検索エンジン」を全文検索エンジンとして採用しています(右上の虫眼鏡アイコンから呼び出せます)。 しかしPublickeyでは以前からGoogleに依存しない、自前の全文検索エンジンを持てないかと模索しており、まさにPagefindは私が探し求めていたソフトウェアだったと言えます。 そこでさっそくPagefindがPublickeyに導入できるかどうか、

                                                              静的サイトに特化した全文検索ライブラリ「Pagefind」、さくらのレンタルサーバで動かしてみた
                                                            • 動かして学ぶ! Rustの言語仕様

                                                              はじめに 本連載では、Webフロントエンド開発において注目されているバイナリ形式のプログラムファイルWebAssemblyを、Rustで実装して活用する方法を説明しています。前回記事では、WebAssemblyに至るまでのWebフロントエンド高速化の歴史を紹介するとともに、RustでWebAssemblyを実装する大まかな流れを説明しました。 本記事では、WebAssemblyの実装で必要となるRust言語の基礎を説明していきます。 対象読者 話題のRust言語について学びたい方 動的なWebページにさらなる速度を求める方 WebAssemblyに興味があるが、Rustのハードルが高いと思っている方 必要な環境 本記事のサンプルコードは、以下の環境で動作を確認しています。 Windows 10 64bit版 rustup 1.24.3 cargo 1.55.0 サンプルコードを実行するには

                                                                動かして学ぶ! Rustの言語仕様
                                                              • RustでJSONパーサーをフルスクラッチで実装する - Qiita

                                                                この記事はRust Advent Calendar 2021 カレンダー2の1日目の記事です。 はじめに エンジニアは一度はJSONパーサーをフルスクラッチで実装したほうが良いという天啓を受け、RFC 8259を読みつつRustでJSONパーサーを実装してみました。パーサーの実装は面白く勉強になり満足しましたが折角なのでhands-on形式の記事にしようと思いこの記事を書きました。 Rustの基本的な文法が分かる方向けに記事を書きましたが、これからRustを勉強してみたい方にもぜひ挑戦してほしいです。 複雑な機能は使っていないので、分からない文法や標準ライブラリは公式ドキュメントを読めば十分補完できると思います。 The Rust Programming Language 日本語版 Rust by Example 日本語版 monkey-json 本記事ではRustでJSONパーサー(mo

                                                                  RustでJSONパーサーをフルスクラッチで実装する - Qiita
                                                                • 「ゼロからのOS自作入門」を Rust でやる (第1章~第4章) - gifnksmの雑多なメモ

                                                                  ゼロからのOS自作入門 を 一通り写経 したところ、 Rust に移植したくなったのでやっていきます。 次回: 「ゼロからのOS自作入門」を Rust でやる (第5章) - gifnksmの雑多なメモ 関連記事一覧: ゼロからのOS自作入門 カテゴリーの記事一覧 - gifnksmの雑多なメモ github.com Rust で OS なので名前は "錆OS" です。安直です。 "sabios" でざっとググったところ、スペイン語で "賢い" って意味があるようです。 良いですね。 クレバーな実装を目指したいところです。 方針 「ゼロからのOS自作入門」の章立てに沿って1章から順番に実装していきます。 C++ で一通り写経は完了しているので完成形の OS と関係ない節はスキップしていきます。 せっかく Rust で実装するので安全性や抽象化という点で MikanOS との差異を出せたら良

                                                                    「ゼロからのOS自作入門」を Rust でやる (第1章~第4章) - gifnksmの雑多なメモ
                                                                  • 壮大な景色の悪路とiPhoneの手振れ補正が両方仕事をするとなぜか「安い合成」みたいになります「こんなんなるん!?」「補正すごいな」

                                                                    佐藤健寿 @x51 近著「CARGO CULT」 https://t.co/NaXjBvASTD https://t.co/2QJlaCnMdQ <お問い合わせ> info@kikai.org 佐藤健寿展「奇界/世界」次回は2024/4- 米子市美術館で開催↓ https://t.co/u9vkoDnpbD

                                                                      壮大な景色の悪路とiPhoneの手振れ補正が両方仕事をするとなぜか「安い合成」みたいになります「こんなんなるん!?」「補正すごいな」
                                                                    • ゼロからのOS自作入門をRustで実装した

                                                                      概要 OSを座学・書籍で学ぶだけでなく実際に作ってみたくて、またRustでなにかを作りたくて、 ゼロからのOS自作入門(以下みかん本)で作るMikanOSをRustで実装しました[1]。 先駆者はいくつか見かけましたが、最後まで実装されている方は見つけられず、 もしRustで実装しようとしてハマっている人や途中で諦めてしまった方がいれば参考になるかと思い、記事を書きました。 実装者のレベル 一応、私のレベル感を書いておきます。 OSの開発経験はなく、低レイヤーっぽい開発経験もひとつだけ Nand2tetris Rustは以下のように多少の経験はあるが業務で利用したことはなし the book はほぼ読んで写経した Rustで始めるTCP自作入門 はやった Programming Rust, 2nd Edition は気になるところを読んだ というような感じで、OS開発もRustも経験が浅い

                                                                        ゼロからのOS自作入門をRustで実装した
                                                                      • 【競プロ】Python使いがRustを「完全に理解する」までのTips - Qiita

                                                                        2023年AtCoder言語アップデートにより、Rustの環境は大きく変化しました。そのため、本記事はフリーズさせ、後日、2023年版に対応した記事を新規作成したいと思います。 筆者は、競プロのアルゴはPythonを使いつつ、マラソンはRustを使っております。前者は発想を短時間にコードにすることを重視し、後者はコーディングに時間をかけてでも高速性を確保したいからです。 その際、Pythonでできたアレを、Rustでどう書くんだっけ、と悩むことが多く、悩んだ結果を自分メモを兼ねてTipsにすることにしました。競プロに出てくるパターンを多く収録していますが、競プロ目的以外でも参考になるかと思います。とりありず、ざっと記述してみましたが、そのうち増やしたり、章立てを変えたりするかも知れません。 なお、参照がーとかトレイトがーとか、Rustそのものの入門には言及していませんので、適宜、別の記事や

                                                                          【競プロ】Python使いがRustを「完全に理解する」までのTips - Qiita
                                                                        • N番目の素数を求める - すぎゃーんメモ

                                                                          SNSなどで話題になっていたので調べてみたら勉強になったのでメモ。 環境 Pythonでの実装例 例1 例2 例3 エラトステネスの篩 Rustでの実装例 試し割り法 エラトステネスの篩 アトキンの篩 おまけ: GMP Benchmark 高速化のテクニック 上限個数を見積もる Wheel factorization オチ Repository References 環境 手元のMacBook Pro 13-inchの開発機で実験した。 2.8 GHz Intel Core i7 16 GB 2133 MHz LPDDR3 Pythonでの実装例 例1 最も単純に「2以上p未満のすべての数で割ってみて余りが0にならなかったら素数」とする、brute force 的なアプローチ。 import cProfile import io import pstats import sys def m

                                                                            N番目の素数を求める - すぎゃーんメモ
                                                                          • Rust開発時の便利ツールたち

                                                                            前書き Rustを書くときに便利なツールをまとめた記事が無い気がしたので作成。(ちゃんと探してないので既にあるかも) 公式ツール cargo パッケージマネージャ 基本だけどとても便利なツール 一度はThe Cargo Bookを読んでおくことを推奨。 rustfmt フォーマッター cargo fmt でもフォーマットの修正が出来る。(こっちを使うことが多い) clippy lintツール こう書いたほうが良いよという提案もしてくれるので便利。 cargo clippy --fix を使うと自動で直してくれる。 rust-analyzer Language Server rls もあるが、(最近は?) rust-analyzer の方がメジャーな気がする。 追記 : RLSは非推奨になりました。RLS Deprecation 非公式ツール cargo-watch ソースコードの変更を検知

                                                                              Rust開発時の便利ツールたち
                                                                            • 増えていく「キャンプギア」の収納、どうしてる? 都市部に住むキャンパーたちに自宅収納術を見せてもらった #ソレドコ - ソレドコ

                                                                              キャンプにハマった人が悩みがちなのが、自宅でのキャンプギアの収納。 倉庫などを借りない場合、特に都市部に住んでいると、住居スペースの問題で収納できる場所も限られていることが多いです。 さらに、ただ収納するだけでなく、キャンプ場へ持って行くための取り出しやすさも重要となると、キャンプを始めたばかりの人は「どうやって収納すればいいのか……」と壁にぶつかってしまうかもしれません。 そこで今回は、東京近郊の限られた住居スペースに住む3人のキャンパーが、自宅でのキャンプギア収納術を紹介! テントやチェアといった大物から、調理器具をはじめとする小物まで、長さや大きさが異なるさまざまなギアを収納するコツを教えていただきました。 スタイルによってギアの数や種類なども異なりますが、今回は「ソロキャンプ」「 2人でのキャンプ」がメインの方に登場してもらいます。 「これからギアを買いそろえていきたいけど、我が家

                                                                                増えていく「キャンプギア」の収納、どうしてる? 都市部に住むキャンパーたちに自宅収納術を見せてもらった #ソレドコ - ソレドコ
                                                                              • ランサムウエアによる名古屋港のシステム障害についてまとめてみた - piyolog

                                                                                2023年7月5日、名古屋港統一ターミナルシステム(NUTS / Nagoya United Terminal System)でシステム障害が発生しており、システムを管理する名古屋港湾協会は障害原因がランサムウエアによるものと公表しました。ここでは関連する情報をまとめます。 ランサムウエアによる国内初の物流影響事例か システム障害が起きたのは名古屋港湾協会が管理する名古屋港統一ターミナルシステム(NUTS)。名古屋港の5つのターミナル(飛鳥ふ頭北、NCB、飛鳥ふ頭南、TCB、鍋田ふ頭)と集中管理ゲート、荷役機器、NACCS、NUTS-Webをネットワークでつなぎ、船からの積み下ろし、プランニング、コンテナ保管、搬出入、ヤード作業、保税管理を行うシステム。*1 NUTSは1999年に導入されこれまで大きな障害が起きたことがなく、また2022年8月からシステム移行が行われ2023年1月に新シス

                                                                                  ランサムウエアによる名古屋港のシステム障害についてまとめてみた - piyolog
                                                                                • RustでAPIサーバーを書くのが思ったより良い

                                                                                  最近いろんなところで採用事例が増えてきたRustですが、Webサービス開発でのAPIサーバーを書くのにRustは向いてないと言われたりします。Rustの第一のターゲットはシステムプログラミングでありGCがないためAPIサーバー開発でシビアなメモリ管理はしたくないというのは一理あるのですが、RustでAPIサーバーの開発を実際にやってみるとむしろ開発体験が結構いいなと感じます。パフォーマンスのために難しい所有権を無理にがんばるみたいなマイナスのイメージはほとんど当てはまらなかったです。 Rustの難しいライフタイム、所有権があまり出てこない Rustにおいて難しいとされるライフタイム、所有権といった概念があり私も書く前はかなり身構えていたのですが、これに苦しむことは思ったよりも少ないです。その要因はWebサーバーで扱う処理のほとんどがリクエスト・レスポンスモデルでデータの流れが一方向でシンプ

                                                                                    RustでAPIサーバーを書くのが思ったより良い