ITエンジニア/デザイナ向けにオープンソースを毎日紹介

プログラミング言語 - Rustの記事一覧

プレミアムユーザー限定記事

MOONGIFTプレミアムは、月額500円の有料サービスです。詳細はこちらから

もっと見る

List

  • 2019/05/08

rustynes - Rust/WebAssemblyで作られたファミコンエミュレータ

プログラムを覚える上でWikiや掲示板を作ってみるのは良いネタですが、バイナリファイルの扱いを覚えたりする時には何を題材にすると良いでしょうか。敷居は高いですがチャレンジしてみて欲しいのがファミコンエミュレータです。多くのプログラミング言語でファミコンエミュレータが作られていますが、今回はWebブラウザ上で動作するru...

List

  • 2019/04/30

ijk - 本物のプログラマ向けのエディタ

プログラミングエディタは何を使っているでしょうか。古くはVimやEmacs、最近ではAtomやVS Codeがよく使われています。有名なエディタはたくさんありますが、それでも絶対的なものは出てきません。プログラマは常に自分にとって使いやすいエディタを求め続けています。今回はijkというエディタを紹介します。まだ開発中で...

List

  • 2019/04/21

Sonic - Elasticsearch代替を目指す軽量な検索エンジン

検索エンジンはユーザのイベントで利用するだけに限りません。例えばMOONGIFTの場合はレコメンデーションにも使っています。Webサイトにおいて検索エンジンは必須と言えるでしょう。よく知られているものとしてはElasticsearchがありますが、今回はその代替としてSonicを紹介します。## Sonicの使い方実際...

List

  • 2019/04/19

Citybound - Webブラウザで遊べるシムシティ

シムシティ系のゲームは時間を食いつぶす、非常に危険なゲームです。ちょっとした変化に目を配り、すぐに対処しないと再生するのも難しくなります。その上で確実な成長を続けなければならず、戦略性が問われます。そんなシムシティに類する新しいゲームの紹介です。なんとマルチプレイヤーをターゲットに開発されています。## Citybou...

List

  • 2019/04/04

wasm-module - RustのWebAssemblyの中でDOMを扱う

個人的にWebAssemblyには強く期待しており、その中でもGoが有力だと感じています。それはGoのWebAssemblyではDOMやJavaScript APIが使えるからです。駆使すればWebアプリケーション全体のコードをGoで書けるのです。これがRustにもないのが残念でした。しかしwasm-moduleが新し...

List

  • 2019/03/29

Svgbob Editor - Web上でアスキーダイアログをWYSIWYGで描く

プログラマはドローアプリケーションを扱うのが苦手です(偏見)。メンテナンスするのも面倒ですし、簡単な図であればテキストで罫線を使った方が簡単に書けるでしょう。後は罫線が自動的にドローされれば良いだけです。そこで使ってみたいのがSvgbob Editorです。罫線で描いたアスキーダイアログをSVGに変換してくれるソフトウ...

List

  • 2019/03/12

Tickeys - macOSの打刻音を変更

昔のタイプライターでは入力する度に音が鳴ります。ノスタルジックですが、格好良いと思う人も多いのではないでしょうか。そんな打刻音を再現するテキストエディタもあります。しかしTickeysは違います。すべてのアプリケーションにおけるキーボード入力にサウンドを追加してくれるソフトウェアです。## Tickeysの使い方設定画...

None

  • 2019/02/26

swc - Babelの18倍高速なJavaScriptコンバータ

JavaScriptはそのまま書くのではなく、書いた後に変換して使うケースが増えています。例えばTypeScriptであったり、Babelを使って新しいJavaScriptの仕様を使えるようにする、ReactのJSXを変換するといった具合です。そんな変換処理は実行速度が命です。遅いと変更するのが面倒になり、更新してから...

List

  • 2019/02/03

Ternimal - 虫注意!幼虫っぽい動きをシミュレーション

虫注意!ディープラーニングはコンピュータ上で脳の動きをシミュレーションするものです。同様にロボットなどにおいても生物の動きや体の構造が使われたりします。生物から学べるポイントは無数にあります。今回はそんな生物の動きをターミナル上で再現するTernimalを紹介します。## Ternimalの使い方この動きは人によっては...

None

  • 2019/01/26

license-generator - オープンソースのライセンスファイルを生成

オープンソースの肝と言えるのがライセンスです。正しいライセンスを選択して設定すること、これがオープンソースとして認められる唯一の方法です。しかしライセンスは実に多彩で、80種類を超えます

None

  • 2019/01/10

eureka - 忘れる前にメモ

アイディアはふとした表紙に思いつきます。しかし、頭から消え去るのもまた一瞬です。そのため、覚えている内に書き出しておかなければなりません。メモを探していたり、ファイルを保存している暇はないのです。そこで使ってみたいのがeurekaです。ターミナル操作中に思いついたアイディアを即座にメモできる、そんなソフトウェアです。#...

List

  • 2019/01/07

sandspiel - 破壊的楽しみもある箱庭シミュレータ

シムシティやライフゲームなどの箱庭ゲームは自分の思い描く世界を作り、疑似体験できるのが魅力です。そして時には災害やアクシデントを発生させて、苦労して築いてきた世界を壊してしまう楽しさもあります。今回紹介するsandspielは規模こそ小さいですが、自然現象のシミュレーションができる箱庭となっています。## sandsp...

List

  • 2019/01/04

wasmer - WebAssemblyをローカルで実行

WebAssemblyはWebと冠があるものの、もはやWebだけのものではなくなっています。Node.jsでは元々CUIでも実行できる状態でしたし、PHPでWebAssemblyを実行できるphp-ext-wasmもあります。今回紹介するのは様々なソフトウェアをWebAssembly化し、ローカルで実行できるwasme...

None

  • 2018/12/04

jsc - Rustで書かれたJavaScriptコンパイラ

JavaScriptを利用できる場面は広がっていますが、実行するためにはJavaScript実行エンジンたるv8などが必要です。また、スクリプト言語なので実行時に解釈されるため、実行速度は若干遅くなるでしょう。今回紹介するjscはそんな限界を超えるかも知れないソフトウェアです。Rustで書かれたJavaScriptコン...

List

  • 2018/11/10

Remacs - EmacsをRustにポート

Emacsは単なるプログラミングエディタではなく、一つの環境です。常時立ち上げておくのが当たり前で、常に使い続けているものでしょう。今なお多くの開発者が使っていますが、若干の古くささを感じている人もいるかも知れません。そこで使ってみたいのがRemacsです。EmacsをRustにポーティングしたソフトウェアになります。...

List

  • 2018/11/08

Oxipng - PNG画像を小さく

画面解像度が上がるのに合わせて画像サイズはどんどん肥大化しています。今や一つの画像が数MBというのも当たり前になっており、ネットワーク帯域を逼迫しています。モバイルネットワーク環境下では特にそう感じることでしょう。そこで使ってみたいのがOxipngです。PNGの画像サイズを小さくしてくれるソフトウェアです。## Oxi...

List

  • 2018/10/26

Team - Rust製。ツイートやスニペットも投稿できるQiitaクローン

Qiitaを企業内のメモやブログで使っているところは多いかと思います。しかし内容によっては公にできなかったり、企業のセキュリティへの考え方によって、Qiitaへの投稿が制限されている場合もあるでしょう。そこで使ってみたいのがクローン系のソフトウェアです。今回はRust作られたTeamを紹介します。## Teamの使い方...

None

  • 2018/10/06

Wasabi - WebAssemblyにインジェクションしてデバッグを促進

WebAssemblyにDOMなどのWebブラウザのAPIが追加されるというニュースが出ました。これでさらに利用が拡大していくことでしょう。そんなWebAssemblyにはテキスト版とバイナリ版が存在します。そのテキスト版であれば、まだ人にも理解しやすいものです。そしてWasabiを使えば実行時にインジェクションしてデ...

None

  • 2018/09/17

cloak - CUIで認証用コードを管理

Webサービスのセキュリティを守る上で多要素認証は欠かせないものになっています。その一つとしてコード生成アプリの利用があります。大抵QRコードを読み込んで、アプリに登録するという方法を使っています。今回紹介するcloakはアプリではなくCUIで使える多要素認証アプリとなっています。## cloakの使い方QRコードを読...

List

  • 2018/08/11

Zemeroth - 2D/ターンベースの戦略ゲーム

アクションゲームなどは一瞬の油断も許されず、常に指や目を動かし続けなければなりません。それに対して戦略系のゲームは多少時間をかけつつも、最適な手を考えることができます。個人的には忙しくない分、戦略系の方が好きです。モンスターと人間とでターンベースで戦うゲームがZemerothです。武器の種類などが異なり、戦略的思考が求...