Rustで競プロしているときに、これやりたいときどうやるだっけ??となりがちなので、チートシートを作りました。 適宜更新・修正します。 AtCoderにおける入出力方法は以下の記事を参照にしてください。 Vec よく使うメソッド - enumerate forで配列をindexと一緒に回す。 let A = vec![3, 4, 5]; for (i, &a) in A.iter().enumerate() { println!("{} {}", i, a); } // 0 3 // 1 4 // 2 5 let N = 3; for i in (0..N).rev() { println!("{} ", i); } // 2 1 0 let A = vec![3, 4, 5]; for &a in A.iter().rev() { println!("{} ", a); } // 5 4
What is rustdoc? The standard Rust distribution ships with a tool called rustdoc. Its job is to generate documentation for Rust projects. On a fundamental level, Rustdoc takes as an argument either a crate root or a Markdown file, and produces HTML, CSS, and JavaScript. Basic usage Let's give it a try! Create a new project with Cargo: $ cargo new docs --lib $ cd docs In src/lib.rs, Cargo has gener
Introduction mdBook is a command line tool to create books with Markdown. It is ideal for creating product or API documentation, tutorials, course materials or anything that requires a clean, easily navigable and customizable presentation. Lightweight Markdown syntax helps you focus more on your content Integrated search support Color syntax highlighting for code blocks for many different language
Rustとは インストール Hello world Cargoプロジェクト キーワード コメント(//) 値 変数・定数(let, mut, const) 型 基本の型(bool, i16, char, str...) 型変換(as) 構造体(struct) 共用体(union) 列挙型(enum) タプル(tup) 配列(array) ベクタ(vec) ハッシュマップ(HashMap) 文字列(&str, String) 演算子(+ - ...) ヒープ領域(Box) スライス(&var[n..m]) 関数(fn) クロージャー(|...|{...}) マクロ(macro_rules!) 制御構文 条件分岐(if) 繰り返し(while) 繰り返し(for) ループ(loop) ループ制御(break, continue) マッチ(match) インプリメンテーション(impl) トレイ
Rust by Example Rust is a modern systems programming language focusing on safety, speed, and concurrency. It accomplishes these goals by being memory safe without using garbage collection. Rust by Example (RBE) is a collection of runnable examples that illustrate various Rust concepts and standard libraries. To get even more out of these examples, don't forget to install Rust locally and check out
The Rust Programming Language by Steve Klabnik and Carol Nichols, with contributions from the Rust Community This version of the text assumes you’re using Rust 1.76.0 (released 2024-02-08) or later. See the “Installation” section of Chapter 1 to install or update Rust. The HTML format is available online at https://doc.rust-lang.org/stable/book/ and offline with installations of Rust made with rus
新年あけましておめでとうございます。毎年この時期に更新している「私の情報収集法(2024年版)」を今年も公開します。 ■はじめに サイバー攻撃は国境を越えて発生するため、ランサムウェア、フィッシング、DDoS攻撃など、近年のサイバー脅威の常連となっている攻撃者(脅威アクター)が主に海外にいることを考えると、世界の脅威動向を理解することが年々重要になっています。 海外から日本の組織が受けるサイバー攻撃の多くでは、国際共同オペレーション等の一部のケースを除き、日本の警察が犯罪活動の協力者(出し子、買い子、送り子)を摘発することはあっても、サイバー攻撃の首謀者(コアメンバー)を逮捕するまで至るケースはほとんどありません。 誤解を恐れずに言えば、日本の組織は海外からの攻撃を受け続けているのに、海外で発生したインシデントや攻撃トレンドの把握が遅れ、対策が後手に回っているケースも多いように感じます。最
wit-bindgenとjcoでWebAssembly Component Modelに入門する #2023-04-18 WebAssembly Component Modelを追えていなかったのでHello World的なものを動かし概要を理解したい。 目次WebAssembly Component Model #WebAssembly/component-modelにspecは定義されており、現在のPhaseはPhase 1 - Feature Proposal (CG)となっている。 Goals #上記においてGoalsとして以下を挙げている。 ポータブルで効率的なバイナリフォーマットの定義ポータブルで仮想化可能なインターフェースのサポートWebAssemblyのユニークな価値提案の維持Component Modelの段階的定義MVP における usecase #またMVPにおけるu
Share Rust Types With TypeScript for WebAssembly in 30 Seconds In this article 💡 We'll learn why the official Rust and WebAssembly toolchain is not sufficient for TypeScript. 🤹 I'll show you how to auto-generate TypeScript definition with minimum change in your Rust code. 🧪 We'll refactor a real world WebAssembly library on npm together. Let's go. The Typing Problem with wasm-bindgen Generating
Rust 🦀 and WebAssembly 🕸 This small book describes how to use Rust and WebAssembly together. Who is this book for? This book is for anyone interested in compiling Rust to WebAssembly for fast, reliable code on the Web. You should know some Rust, and be familiar with JavaScript, HTML, and CSS. You don't need to be an expert in any of them. Don't know Rust yet? Start with The Rust Programming Lang
Then, at runtime, a custom low-level kernel will be automatically created for your specific implementation and will rival a handcrafted GPU implementation. The kernel consists of about 60 lines of WGSL WebGPU Shading Language, an extremely verbose lower level shader language you probably don't want to program your deep learning models in! As of now, our fusion strategy is only implemented for our
Skip to the content. clean-code-typescript Clean Code concepts adapted for TypeScript. Inspired from clean-code-javascript. Table of Contents Introduction Variables Functions Objects and Data Structures Classes SOLID Testing Concurrency Error Handling Formatting Comments Translations Introduction Software engineering principles, from Robert C. Martin’s book Clean Code, adapted for TypeScript. This
Writing NES Emulator in Rustというサイトがある。これはRustでファミコンエミュレータ(通称: NES)を実装する方法をステップバイステップで解説してくれる親切サイトだ。NES初心者でも比較的容易に取り組めるので自力でNESエミュレータの実装するのはちょっと...といった人に特におすすめ。自分は数年前にNESの実装にチャレンジしたが途中で挫折した経験もあったのだけど、このサイトで言われた通り少しずつ進めていくことでなんとか一通り実装をし終えることができた(まぁまだバグだらだけど...)。 今回はその中でも初心者が事前に知っておいたら良さそうと思った知識や概念なんかを雑に書いてみる。 ちなみに各構成要素の詳細な解説や仕様などについては日本語・英語問わず先人の遺産がネット上に大量に存在しているのでググってほしい。とりあえず自分が何回も参照したサイトだけ下記に列挙して
seiya nutaさん という方が書かれた、 Writing an OS in 1000 Lines という教材があります。 C言語を用いて、1000行未満で、 素朴なコンテキストスイッチ ページング ユーザーモード コマンドラインシェル ディスクデバイスドライバ ファイルの読み書き を実装するという驚異的な教材です。 今回はこの教材のカーネル部分をRustで再実装する、ということを行ってみました。 また、教材が取り扱うアーキテクチャがRISC-V 32bitだったので、64bit化もしてみました。 リポジトリは こちら です。 ./run.sh すれば立ち上がります。 教材から変更した部分 教材から次の部分を変更しました。 32bitから64bitへ変更 シェルをELFのままtarファイルシステムに詰め込み、ヘッダを解釈してロードする ユーザーランドのバイナリ生成において、clangか
オープンソースの金融データ取得/投資分析プラットフォームのOpenBB Terminalのインストールと基本的な使い方を紹介します。 はじめに Bloomberg(略称:BB)といえば世界トップの金融データ企業で、BB Terminalといえば外資系金融マンにはおなじみの伝統的で風変わりなインターフェースを持つ金融データの統合ソフトウェアです。これのオープンソース版を目指しているというOpenBBが最近注目を集めているのでメモとして記事にしました。 Bloombergターミナル??という方はYoutubeを検索してみてください。80年代風のIFに痺れること請け合いです。(独自コマンドと引き数を入力して画面を呼び出す流れはOpenBBも踏襲しています) https://www.youtube.com/watch?v=2ee-x6IXWK8 ドキュメントや、「使ってみた」的な記事が乏しいなかで
OpenBB Terminal v3.2.5 will be the last release made available. As we transition our focus to the OpenBB Platform, this repository will soon be rebranded as OpenBB-finance/OpenBBPlatform. However, we are committed to continuing our mission to democratize investment research by helping users and contributors with financial data integration and standardization. To achieve that, we are working on a n
Today the pokemon go plus that I requested has arrived I have proven that it is working correctly and now I have opened it Tomorrow I will solder the necessary cables see you tomorrow Hello everyone I am pleased to announce that we have completed the donation campaign, I have already requested a Pokemon Go Plus, as soon as I receive it I will update these logs and upload all the information thanks
TL;DR; You can clone a Pokemon GO Plus device that you own. I have managed to get the certification algorithm. However, there is a per device blob used (specific to a Bluetooth Mac Address) for key generation. I have not figured out how you can generate your own blob and key. Using other’s people blob may be blacklisted in the future (or Niantic may ban your account). Pokemon GO Plus, (which I wi
信号情報活用運転支援システム(TSPS)とは? 信号情報活用運転支援システム(TSPS)は、光ビーコンから取得した信号情報を用いて、 信号交差点を円滑に通行するための運転を支援するシステムです。 光ビーコンから取得できる信号情報と、自車の位置や速度の情報を用いて 車載機が交通状況や運転シーンに応じた適正な速度や情報の提供を行う仕組みです。 無駄な加速や急な減速をおさえ、ゆとりを持った安全でスムーズな走行や エコドライブによるCO2削減が期待できます。
*本記事は STORES Advent Calendar 2023 6日目の記事です こんにちは。セキュリティ本部のsohです。 現在、弊社ではスマホアプリ診断内製化の準備を進めています。 同じようにスマホアプリの脆弱性診断を内製化したい、というニーズがある会社は多く存在しますが、実際のところ、スマホアプリを対象とした脆弱性診断士の確保は困難であり、外部ベンダーの方にすべてお願いせざるを得ないケースも多いかと思います。 また、その情報の少なさから、スマホアプリ診断を実施したいと考えている開発者や脆弱性診断士にとっても、「何をやればいいのか」「何から始めればいいのか」がわからないものである場合は多いかと思います。 そこで、この記事では「スマホアプリ診断って実際何をしているのか」と疑問を持つ方をターゲットとして、一般的なスマホアプリ診断の検証要件や検証方法について解説します。 要件とガイドライ
Digitization部 Bill One Entry*1グループの秋山です。 はじめに Domain Modeling Made Functionalというスゴ本 補講:Make Illegal States Unrepresentable バックエンドの処理を抽象化する 手続き型プログラミングの典型例 課題1:制約のないエラーハンドリング 課題2:低い可読性 課題3:エラーハンドリングの低い網羅性 Railway Oriented Programming TypeScriptで型安全にエラーハンドリングする ステップ1:サブ関数の出力はResult型で表現する ステップ2:サブ関数にResult型を入力できるようにする ステップ3:サブ関数を連結する ステップ4:網羅的にエラーハンドリングする おわりに 付録 TypeScriptの全文サンプル はじめに エラーハンドリングは重要な処
はじめに こんにちは、VRoid部所属のエンジニアのyueです。 この度VRoid Hubで3Dモデルの配信サーバーの見直しを行い、技術選定から始めRustとZstandard (zstd)を採用した実装に切り替えました。 結論から見るに従来のNode.js製サーバーと比べて以下のことを実現しました。 最大のレスポンス時間が 1.5 ~ 2.5s から 300 ~ 400msまで低下 平均のレスポンス時間が 700 ~ 800ms から 150 ~ 200msまで低下 サーバーのCPU使用率が ~ 50% から ~ 10%まで低下 docker image のサイズが ~ 346mb から ~ 21mb程度まで削減 配信されるファイルサイズが平均 10 ~ 20% 軽量化されました レスポンス時間 CPU使用量 (上からAVG(MAX), AVG, AVG(MIN)) メモリー使用量に関し
Twilio SendGridサポートチームの菊田(@kikutaro_)です。最近、プログラミング言語の「Rust」を触り始めました。勉強の一環としてSendGridを使ったメール送信を試してみたので、ブログにまとめたいと思います。 Windows 10のDocker上に構築した以下の環境を利用しました。 Debian 11.4 Rust 1.63.0 lettreを使った送信 テキストメール SMTPによる送信はRust向けのメール送信ライブラリlettreを使いました。まずはRust標準のパッケージマネージャ「Cargo」で新規にプロジェクトを作成してlettreを追加します。 cargo new smtp Cargo.tomlに以下の内容を追記します。 ビルドするとなぜかエラーになってしまいました。 cargo build Compiling openssl-sys v0.9.75
Have you ever tried to compile a helloworld Rust program in --release mode? If yes, have you seen its binary size? Suffice to say, it’s not exactly small. Or at least it wasn’t small until recently. This post details how I found about the issue and my attempt to fix it in Cargo. Binary size analysis I’m a member of the (relatively recently established) #wg-binary-size working group, which is tryin
この記事は 株式会社ゆめみの23卒 Advent Calendar 2023 7日目の記事です。 今北産業 ファイル component.test.tsx を置くと、Storybook test runnerのように全部のStoryのスモークテストとインタラクションテストがVitestとjsdomでできるよ! ヘッドレスブラウザを使わずにテストできるので、CIやGit hookなど実行時間を少なくしたいシチュエーションで使えるよ! でもブラウザで実行していないから複雑なインタラクションテストやアクセシビリティテストなど、一部のテストが不安定になるかもね! 考えて使い分けよう Storybook をテストとして動かす Storybookでは、Storyファイルのplay 関数内にユーザのインタラクション(振る舞い)やアサーション(期待する結果)を記述することで、インタラクションテストを行うこ
この記事は 株式会社ゆめみの23卒 Advent Calendar 2023 8日目の記事です。 現代のWebフロントエンド開発において、コンポーネントの効率的な管理と可視化が求められる中、Storybookは開発者にとって欠かせないツールとなっています。Storybookは、コンポーネントをアプリケーションから隔離して単体で表示できるツールです。 しかし、このように有用なStorybookが「腐ってしまう」ことがあります。この記事で「腐る」とは、コンポーネントをStorybookに表示するための設定であるStoryが最新の状態に更新されていない、またはプロジェクトにとって負債になっている状態を指します。例えば、以下のような状態が「腐っている」状態にあたります。 npm run storybook するとそもそもエラーがでて表示されない Storyの存在しないコンポーネントやコンポーネント
質問されることが多いのでPostgreSQL初学者が運用を行うためにしっておく知識に必要な内容をまとめる。 PostgreSQLの基本的なアーキテクチャ PostgreSQLのアーキテクチャを知らないと自分がやっている作業が危険な作業かどうかわからないし、パラメータの意味もわからない。 そこで以下のリンクを読むと良い。 富士通が後述の資料を参考にまとめたのだろうなと思われる記事。 非常によくまとまっているのでわかりやすい。 www.fujitsu.com もっと細かく知りたいならPostgreSQL Internalsがおすすめ。 富士通の資料と重複するところがあるがこっちが本家。 Githubで管理されているので誤字脱字などあったら気軽にPRを出してほしい。 www.postgresqlinternals.org PostgreSQL Internalsが少し古いので最新事情で知りたい場
大分時間が経ってしまいましたが、2022/8/31 に開催された stand.fm 主催の TECH STAND #9 GitHub イベントに参加しました。 その際に呟いたやつが今回の記事の内容です 有り難いことに直ぐにフォロー頂きました。 あまり纏まった記事が見当たらなかったので、自分用のメモとしてまとめます。 他のCIにはあったアレ GitHub Actionsを利用する前は、TravisCIやCircleCIを利用していました。 移行してから随分使ってないので、記憶が定かではないのですが という機能が標準であった気がします。 この機能の名前は何と呼ぶのでしょうか?地味だけれども、ないと困るアレですw GitHub Actionsのリリース直後にこちらの機能と [ci skip] が使えずに後発なサービスなのにーと不満を覚えていました。 その後にアレの機能を実装したカスタムアクション
I recently realized stdout is much faster than stderr for Rust. Here are my findings after diving deep into this rabbit hole. I have been using the terminal (i.e. command-line) for most of my day-to-day things for a while now. I was always fascinated by the fact that how quick and convenient the command-line might be and that's why I'm a proponent of using CLI (command-line) or TUI (terminal user
''You Americans, you treat the Third World in the way an Iraqi peasant treats his new bride. Three days of honeymoon, and then it's off to the fields.'' (By Saddam Hussein) Oligarchs' superyachts have garnered widespread attention due to their large size and lavish interiors. Many of these vessels feature helipads, pools, cinemas, dedicated hangars for speedboats and luxury cars and enough luxurio
Air Warfare, Global, Land Warfare, Space North Korea’s hypersonic missile claims are credible, exclusive analysis shows A new analysis shows that a Jan. 11 North Korean missile test could well be a hypersonic weapon - and one that holds American bases in Japan in a new level of danger. As the US works to develop a hypersonic arsenal, North Korea has now claimed three different launches as successf
In 2017, we wrote a blog post on how we store billions of messages. We shared our journey of how we started out using MongoDB but migrated our data to Cassandra because we were looking for a database that was scalable, fault-tolerant, and relatively low maintenance. We knew we’d be growing, and we did! We wanted a database that grew alongside us, but hopefully, its maintenance needs wouldn’t grow
これまでもコンテナ関連の記事はそれなりに書いてきましたが、改めて最新事情に合わせて練り直したり見渡してみると、大きなところから小さなところまで選択肢が多すぎると感じました。 コンテナ系アーキテクチャを丸っと他所の構成で真似することって、おそらくほとんどなくて、参考にしつつ自分流に築き上げていくでしょうから、今回は築くにあたってどういう選択肢があるのかにフォーカスした変化系で攻めてみようと思った次第です:-) 目次 今年一発目の長いやつです。半分は学習教材用、半分は道楽なテイストです。 はじめに 基盤 インスタンス or コンテナ ECS or EKS on EC2 or FARGATE X86 or ARM64 ロードバランサー メンテナンス:ALB or ECS Service 共有 or 1環境毎 アクセスログ:ALB or WEBサーバー ECS / EKS デプロイ:Blue/Gr
だれでもできるシリーズとして、Rustでカーネルモジュールを実装しながら学んできましたが(役に立たないキャラクタデバイスドライバなど)、そろそろ実際に使える機能を実装したいころですよね! 今回は、筆者が実装したネットワークPHYドライバが、Rustで実装された初めてのデバイスドライバとしてLinuxカーネルに採用された話を紹介します。 誤解:LinuxカーネルがRustをサポート「LinuxカーネルがRustをサポートした」というニュースを見て、Rustのコードがどんどん採用されていると誤解している方もいるようです。このニュースは、「LinuxカーネルをRustでも書けるようになりましたが、実際に何かを実装するかどうかは未定」という意味です。Linuxカーネルは、メモリマネージメント、ネットワーク、暗号など、数多くのサブシステムで構成されており、それぞれのメンテナが、コードの採否を判断しま
世界初のハンドヘルド型セルフ・ポジショニング3Dレーザースキャナーのメーカー Creaform が新たに「HandySCAN BLACK | Elite Limited」を開発製造および校正工程の最適化により、Creaform は計測グレードを代表する 3D スキャナーのモデルで 12 ミクロンの精度を実現し、携帯型デバイスの新しい業界標準を打ち立てました。 2023年01月31日、ケベック州レヴィ — AMETEK, Inc. のビジネスユニットであり、ポータブル 3D 測定ソリューションとエンジニアリング・サービスの世界的リーダーである Creaform 社は、ポータブル測定機の業界標準である HandySCAN 3D|BLACK シリーズのラインアップに高精度ハンドヘルド・スキャナー HandySCAN BLACKTM|Elite Limited を追加することを発表しました。過去1
FreeScan Trioは、98本のレーザーラインと3機の5メガピクセルカメラシステムを搭載しており、最速1秒間に300万ポイントでの高速スキャンに対応。また、最大視野は650×580mmで、大型物のスキャンも最低限の回数でスキャンを完了できる。 1本のレーザーで深いポケットや穴などの死角がある工業製品でも正確にスキャンできる「シングルスキャンモード」、7本の平行レーザーと3つのカメラを用いて最短撮影距離0.01mmで、細部や複雑な部分のスキャンができる「ファインスキャンモード」、13本のクロスレーザーにより、650×580mmの視野で広範囲を効率的にスキャンできる「複数クロススキャンモード」、そして、98本のクロスレーザーで最大1秒間に300万ポイントの高速スキャンが可能な「98ラインスキャンモード」の4つのモードからスキャン方法を選択できる。
全国瞬時警報システム(Jアラート)の概要 全国瞬時警報システム(Jアラート)とは、弾道ミサイル情報、緊急地震速報、大津波警報など、対処に時間的余裕のない事態に関する情報を携帯電話等に配信される緊急速報メール、市町村防災行政無線等により、国から住民まで瞬時に伝達するシステムです。 弾道ミサイル落下時の行動や避難施設の場所等については内閣官房国民保護ポータルサイトにて確認いただくことが出来ます。 Jアラートで配信する情報のうち、特に緊急を要する情報については、市町村に設置されている防災行政無線等を自動起動させ、緊急情報を瞬時に伝達することとしています。 また、各種情報伝達手段は、情報の受け手の状況に応じた伝わりやすさ、伝達範囲(場所)、伝達可能な情報量、耐災害性、伝達の形態など、様々な点でそれぞれに特徴を有しているため、消防庁では、より多くの住民が迅速かつ確実に避難を実施できるよう、Jアラート
Diagram of the J-Alert system J-Alert (Japanese: J-ALERT/Jアラート, romanized: J Arāto; full name 全国瞬時警報システム, Zenkoku Shunji Keihō Shisutemu, 'National Early Warning System') is the early warning system used in Japan. J-Alert was launched in February 2007.[1] The system is designed to quickly inform the public of threats and emergencies such as earthquakes, severe weather, and other dangers. The syste
世界9カ国の核保有国は合計で約1万3000発分もの核弾頭を保有しており、アメリカが運用している核弾頭だけでも5425発に上ります。このような核兵器が、一体どのような仕組みで偶発的に爆発しないようになっているのかについて、科学系ニュースサイトのLive Scienceが専門家に取材した結果をまとめました。 What stops nuclear weapons from accidentally detonating? | Live Science https://www.livescience.com/what-stops-nuclear-weapons-from-accidentally-detonating アメリカ・ミドルベリー国際問題研究所で核不拡散の取り組みについて研究しているフィリップ・ブリーク氏によると、初期の核兵器が壊れやすく不安定なものだったのに対し、現代の核兵器は高い信頼
# Introduction # What is wgpu? Wgpu (opens new window) is a Rust implementation of the WebGPU API spec (opens new window). WebGPU is a specification published by the GPU for the Web Community Group. It aims to allow web code access to GPU functions in a safe and reliable manner. It does this by mimicking the Vulkan API, and translating that down to whatever API the host hardware is using (ie. Dire
Raw WebGPUAlain Galvan ·12/26/2019 @ 7:30 PM · Updated 2 days ago An overview on how to write a WebGPU application. Learn what key data structures and types are needed to draw in WebGPU. WebGPU is a new graphics API for the web that follows the architecture of modern computer graphics APIs such as Microsoft DirectX 12, Vulkan, and Apple Metal. This shift in paradigm for web graphics APIs allows us
最初に作ったのがCIAnalyzerです。なるべくツール自体の運用の手間がかからないように常駐サーバー無し、データの保存先と可視化はマネージドサービスを使う前提で設計しました。具体的にはデータの保存先をBigQueryとすることによって自前でDBを管理する必要をなくし、webhookを受けるのではなくcronで定期的にAPIを叩くことで常駐サーバーを不要にし、データの可視化はBigQueryと簡単に連携できてマネージドサービスであるLooker Studioを使用する前提としました。 CIAnalyzerのアーキテクチャ CIAnalyzerを作ったきっかけはAzure Pipelineの分析機能に感銘を受けたことで、それと同等の分析を当時自分が業務とプライベートで使用していたJenkins, CircleCI, Bitrise, GitHub Actionsでも可能にしたいと思って開発を
第1回 CPUは数百本の足を持つトランジスタのかたまり 第一回目は、CPUを物理的・電気的な部品として解説します。パソコンに使用されるCPUの外観は、数百本の足(ソケットに挿すピン)を持ち、1億個を超えるトランジスタを集積したICで、VLSI(大規模集積回路)と呼ばれます。今回は、このCPUを外側から眺めて、物理的な仕組みや電気的な働きを説明します。 CPUの構造 CPUの解説の最初に、CPUの構造を概観します。そのために少し遠回りですが、ICの製造方法に触れておきます。 ICの製造方法 ICの材料にもっとも多く使われるのはシリコンです。土や砂の主成分であり入手しやすい事や、動作が安定していること、その絶縁膜が半導体に適しているという理由からです。 実際に材料として使われるのはシリコンが酸化物と結びついた珪石です。珪石をいくつかの工程を経て、高純度化(純度99.999999999、イレブン
Interest in fusion energy is surging today in response to the world’s desperate need for abundant clean power. At least 43 private companies are now pursuing the goal of safely fusing two atomic nuclei to form a heavier nucleus while releasing energy. Nevertheless, the standard deuterium-tritium (D-T) reaction at the core of fusion reactors comes along with its own set of big, long-term problems.
米国の核融合スタートアップであるHelion Energy(ヘリオン・エナジー)が、同社として第7世代となる磁場反転配位(Field-Reversed Configuration:FRC)型核融合実験設備である「Polaris(ポラリス)」の一部を稼働させ、FRC型プラズマを作成したとブログなどで明らかにした(図1)。いわゆる「ファーストプラズマ」である。2023年11月末に成功したようだ。 今後は、これらの実験データに基づいて装置を改修し、核融合出力の向上を目指すという。早ければ2024年中に発電実験を始める計画だ。 プラズマパルスを頻繁に生成して衝突させる FRC型核融合は、トカマク型核融合でも、レーザー核融合でもない第3の核融合発電方式といえる。具体的には、まず、装置の両端でドーナツ状のプラズマパルス(プラズモイドともいう)を生成する。このプラズマはそれ自体が一種の電磁石になっており
FRC( Field-Reversed Configuration )型プラズマを利用する核融合発電の概要とメリットを示した。FRC型プラズマ(またはプラズモイド)はドーナツ状の自律した磁場中にプラズマを閉じ込めたもの(a)。磁場のうち、ドーナツの大きな輪に沿った成分Btは2つのプラズマで反対方向を向いている。これら2つを衝突させると、Bt成分が打ち消し合って加熱が進む。この方式の長所は大きく3つある(b)。1つは、原理上、トカマク式などより弱い磁場でプラズマの強い閉じ込めができること。これにより、装置をよりコンパクトに、あるいは高温の実現が可能になる。より高温を実現できることで2つめのメリット、つまりD-3He反応やp-11B反応といった中性子が出ない核融合反応も実現可能になると考えられている。これは、安全性が高いだけでなく、炉の素材や構造を大幅に簡素にできる。コストをかけられない実験装
Web Content Accessibility Guidelines (WCAG) 2.1 W3C Recommendation 21 September 2023 More details about this document This version: https://www.w3.org/TR/2023/REC-WCAG21-20230921/ Latest published version: https://www.w3.org/TR/WCAG21/ Latest editor's draft:https://w3c.github.io/wcag/guidelines/22/ History: https://www.w3.org/standards/history/WCAG21/ Commit history Implementation report: https://
Accessible Rich Internet Applications (WAI-ARIA) 1.2 日本語訳 W3C Recommendation 06 June 2023 More details about this document This version: https://www.w3.org/TR/2023/REC-wai-aria-1.2-20230606/ Latest published version: https://www.w3.org/TR/wai-aria-1.2/ Latest editor's draft:https://w3c.github.io/aria/ History: https://www.w3.org/standards/history/wai-aria-1.2 Commit history Implementation report:
完全な初心者はこちらから!ウェブ入門ウェブ入門基本的なソフトウェアのインストールウェブサイトをどんな外見にするかファイルの扱いHTML の基本CSS の基本JavaScript の基本ウェブサイトの公開ウェブのしくみHTML — Structuring the webHTML概論HTML 入門HTML を始めようヘッド部には何が入る? HTML のメタデータHTML テキストの基礎ハイパーリンクの作成高度なテキスト整形文書とウェブサイトの構造HTML のデバッグ手紙のマークアップコンテンツのページの構造化Multimedia and embeddingマルチメディアとその埋め込みHTML の画像動画と音声のコンテンツobject から iframe まで — その他の埋め込み技術ウェブへのベクターグラフィックの追加レスポンシブ画像Mozilla のスプラッシュページHTML tablesH
What is an Algorithm?An algorithm is a set of rules that takes in one or more inputs, then performs inner calculations and data manipulations and returns an output or a set of outputs. In short, algorithms make life easy. From complex data manipulations and hashes, to simple arithmetic, algorithms follow a set of steps to produce a useful result. One example of an algorithm would be a simple funct
オープンソースの4G/5GシステムであるOpenAirInterface(以下OAI)の登場により、「無線通信の民主化」が進展してきました。とはいえ、実際にOAIで環境を構築するには様々なハードルが存在していて、まだまだ敷居が高いのではないかと思います。弊社はこの4年程の間、OAIを利用した環境構築のノウハウを積み重ねてきました。本コラムでその一部をご紹介します。 ノートPCの選定 5G環境で使用するPCは、そこそこ高い演算処理能力が必要となります。できるだけ高スペックのCPUを搭載したPCを選んでください。NVIDIA社がOAIに加盟したため、一部の高負荷な演算処理をGPUにオフロードする動きが活発化しているようですが、いまのところGPUは必須ではありません。ただし、CPUについては例えばIntelの第10世代以降のCore i7以上のチップを選んでおくと安心できると思います。OAIはF
オープンソースとして公開されている基地局やコアネットワーク用のソフトウエアとソフトウエア無線機を組み合わせることで4G/5Gネットワークを構築できる(出所:日経クロステックが作成) 4G、5Gのオープンソースプロジェクトが続々 5万円程度で売られている汎用(はんよう)のソフトウエア無線機を、USB 3.0経由でパソコンやサーバーに接続する。パソコンやサーバー上で、オープンソースとして公開されている4Gや5Gの基地局(eNB、gNB)ソフトウエアを実行。さらにもう一台、コアネットワークの役割を果たすパソコンやサーバーを用意し、こちらもオープンソースとして公開されているEPC(Evolved Packet Core)や5G Core(5GC)のソフトウエアを実行する――。 これだけで、誰もが低価格に4Gや5Gの一通りのネットワーク構成を試せる時代が訪れている。ここに来て、4Gや5Gの基地局やコ
Installation (for standard modern project) npm install react-icons --save Usage import { FaBeer } from 'react-icons/fa'; class Question extends React.Component { render() { return <h3> Lets go for a <FaBeer />? </h3> } } Installation (for meteorjs, gatsbyjs, etc) If your project grows in size, this option is available. This method has the trade-off that it takes a long time to install the package.
Conformant OpenGL® ES 3.1 drivers are now available for M1- and M2-family GPUs. That means the drivers are compatible with any OpenGL ES 3.1 application. Interested? Just install Linux! For existing Asahi Linux users, upgrade your system with dnf upgrade (Fedora) or pacman -Syu (Arch) for the latest drivers. Our reverse-engineered, free and open source graphics drivers are the world’s only conform
Hello everyone, Asahi Lina here!✨ marcan asked me to write an article about the M1 GPU, so here we are~! It’s been a long road over the past few months and there’s a lot to cover, so I hope you enjoy it! What’s a GPU?You probably know what a GPU is, but do you know how they work under the hood? Let’s take a look! Almost all modern GPUs have the same main components: A bunch of shader cores, which
はじめに このオンラインブックは執筆中です。完成版ではありません。フィードバックフォーム この本には一冊の本に盛り込むにはやや欲張りな内容を詰め込みました。本書では、C言語で書かれたソースコードをアセンブリ言語に変換するプログラム、つまりCコンパイラを作成します。コンパイラそのものもCを使って開発します。当面の目標はセルフホスト、すなわち自作コンパイラでそれ自身のソースコードをコンパイルできるようにすることです。 この本では、コンパイラの説明の難易度が急に上がりすぎないように、様々なトピックを本書全体を通じて次第に掘り下げていくという形で説明することにしました。その理由は次のとおりです。 コンパイラは、構文解析、中間パス、コード生成といった複数のステージに概念的に分割することができます。よくある教科書的アプローチでは、それぞれのトピックについて章を立てて解説を行うことになりますが、そのよう
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く