Rustが、コードのスタイルガイド「Rust Style Guide」と自動整形ツールを導入する理由。コードをめぐる議論を省き、メンタルの負担を減らし、プログラマを参加しやすくする Mozillaが中心となってオープンソースで開発されている言語「Rust」の最新バージョン「Rust 1.24」がリリースされました。 Rust言語は、C言語のように低レベルのシステム開発向けに作られた言語。不正なメモリ領域を指すポインターなどを許容しない安全なメモリ管理と、マルチスレッド実行においてデータ競合を排除した高い並列性を実現している点が特長です。Mozillaの新型高速ブラウザエンジン「Servo」の開発などに使われていることが知られています。 Rust 1.24では、コードのフォーマットツール「rustfmt」のプレビュー版が導入され、インクリメンタルコンパイルがデフォルトでオンになりました。 コ
こんにちは。リサーチ・アンド・イノベーションの中村(konk303)と申します。 いわゆる「railsおじさん」的な立場で、主にサーバーサイドの開発をしています。 Introduction 本稿ではQiitaのイミュータブルデータモデルと webアプリケーションにおける現実解にインスパイアされて、弊社でのイミュータブルデータへの取り組み(とその苦しみ)を紹介したいと思います。 qiita.com イミュータブルデータモデルとは? まるっと引用。 イミュータブルデータモデルと webアプリケーションにおける現実解 - Qiita 詳細はリンクに譲りますが、「履歴を全て残すようなデータ設計にし、 UPDATE を廃することで情報の追跡可能性を確保、堅牢な設計にする」モデリング手法です。 原則この手法に従うと、そうそう汚いモデルにはならないという優れもの(雑) です。イベントが起こる度に新規レコ
クラウドへの移行を含むデータセンター(以下DC)移行事例を基に、WebサービスをDC移行するための基本的な技術要素を紹介します。具体的には移行手順、データベースのデータ移行、ネットワーク、DNSなどです。 最近、社内で大規模なDC移行を実施しつつあり、DC移行とはなにかをメンバーへ共有するための文章でもあります。 ちなみに、この記事はHosting Casual Talks #4の発表内容を書き下ろしたものです。 移行事例 サービスAの事例 移行前 移行ステップ1 移行ステップ2 移行ステップ3 サービスBの事例 システム概要 フェーズ1: メインシステムとマイクロサービス型DBの移行 フェーズ2: その他のマイクロサービスの移行 移行のための技術要素 既存データの移行 新規データの移行 サービスドメインのDNSレコード変更 内部エンドポイントの変更 IPアドレス参照の場合 FQDN参照の
Me trying to handle state and structure in large applications When writing large-scale applications, managing the state of the frontend can be quite hard. For Vue.js applications, for example, there is a plugin called Vuex that offers state management in a really simple way , and suggests using the following application structure: Vuex recommended application structure If you are curious about an
TypeScriptは型がついたJavaScriptです。プログラミングにおいて型があることの恩恵は大きく、近頃AltJSの代表格として人気を集めています。TypeScriptはもともと型のないJavaScriptで書かれるコードに型を付けることを使命としていることもあり、たまに変な型が追加されます。例えばTypeScript2.8で追加されたconditional typesはずいぶん注目を集めました。これによってTypeScriptの型システムの表現力が広がりましたが、一方でTypeScriptを書いている人の中には、よく分からない型が増えてついて行けない、一部の人たちが長くてよく分からない型定義を書いて喜んでいるだけと思っている方もいるのではないでしょうか。実際、健全にJavaScriptを書いていれば、自分でそのような変な型を書くことはあまり多くありません。 そこで、この記事ではT
I recently wrote a log file writer that allows for multiple non-sequential writes to an O_DIRECT file handle on XFS. Specifically, it dispatches 4 (configurable) concurrent writes, then does a join of the page-aligned buffer writes. That file writer handles timed-based flushing policy, so that you can have a reasonable idea of when your data actually makes it to disk by either exceeding capacity (
libdill: Structured Concurrency for C Home Download Documentation Tutorials FAQ Tutorial: Using libdill sockets This tutorial is meant as an introduction to libdill socket library. We are going to develop a simple version of wget utility, that can be used to download webpages from the net. To avoid parsing the URLs our program will accept 3 parameters: A protocol (either http or https), the server
Authentication and authorization of Pipeline users with OAuth2 and </br>Vault Security series: Authentication and authorization of Pipeline users with OAuth2 and Vault Dynamic credentials with Vault using Kubernetes Service Accounts Dynamic SSH with Vault and Pipeline Secure Kubernetes Deployments with Vault and Pipeline Policy enforcement on K8s with Pipeline The Vault swiss-army knife The Banzai
海外旅行をする人が必ず持つべきクレジットカードの決定版は? 国際ブランド、付帯保険、旅行中の特典、カードを選ぶポイントは様々。 海外40ヵ国以上を訪れた旅のプロがヨーロッパ向けクレカの選び方とおすすめを伝授している人気記事をチェック! 旅行をたくさんするのが好き、そんな旅行先でたくさん写真を撮って持ち帰りたい!そう思う人はたくさんいるはず。 一方、カメラそんな詳しくないしどれを買っていいのかもよくわからない、なんていう悩みを抱えて最後の一歩を踏み出せず結局スマホで我慢しちゃっている人も多いはず。 私は現在欧州に在住中のため、日本からはなかなか行けないような辺鄙なところも含め旅行してはこのブログで紹介していますが、やはりその際重要なのがカメラ。 今までソニーのミラーレスやCannonのフルサイズ一眼などを浮気をしながらも、長い時間をかけてベストなカメラ選びをしてきました。 そんな私が最終的に
2. 自己紹介 - @mhiramat - Linaro Ltdというところで働いています - Linuxカーネルのトレーサ部分のメンテナなど - 普段はarm系を気に掛けている 2 3. 落ち着こう 現状、Spectre (Variant 1/2) は動作が解析され、緩和策が進んでいる。 - 根本対策はないが、緩和策はある - いくつかはコンパイラの修正を伴うので、ユーザバイナリを含めて必要なものは総入 れ替えになる覚悟が必要 - 修正は安定版カーネルに順次取り込まれているので4.4, 4.9, 4.14はなんとかなりそ う。(とは言え、大きな修正で今も不具合報告が上がっている) - ディストロカーネルも出来るだけ最新版を採用しよう。 - これはlivepatchでは修正できない。再起動は必須。 - 出来る限り最新版のGCCとLinuxに入れ替えよう。(まだ開発は続いている) - 一部問
数ヶ月卒論で取り組んだ程度の知識で恐縮ですが、本記事ではadversarial perturbationの研究の全体像が把握できることを目指します。敵対的摂動はadversarial perturbationの直訳で(必要にかられて)僕が勝手に呼んでいるだけの用語です。この記事はなるべく短くまとめますが、需要があればもう少し長い記事も書くかもしれないです。 index 敵対的摂動とは 敵対的摂動を作る 敵対的摂動から守る 敵対的摂動とは – 有名なのは下の図ですね。出典:Explaining and Harnessing Adversarial Examples. 概要をざっくり説明すると、人の目には見えないノイズを加えることでネットワークの出力をコントロールできてセキュリティ上やばいという話です。 ガードレールに自動運転者を突っ込ませるとかstop signを無視させるとか自動検知システ
The English version of this article is available here: medium.com 2/4(日)に、去年のRubyKaigiが終わった直後の新幹線で開発を始め10月に公開したJITコンパイラをRubyのtrunk (2.6.0-dev) にマージし、昨日TD Tech Talk 2018で以下のような内容の発表をしました。 speakerdeck.com まだそれほど速くできていないということもあり、私はTwitterでのみ共有して満足していたのですが、海外の方がいくつか記事を書いてくださいました。 Playing with ruby's new JIT: MJIT - John Hawthorn Ruby’s New JIT – Square Corner Blog – Medium とても丁寧に書かれているので、私の記事がわかりにくければ
概要: Rustのパニック機構は異常終了の処理を安全に行うためにある。この動作を詳しくみていく。 パニックとは何か Rustには2つの異なる例外処理機構があります。 発生源 対処方法 例 パニック プログラミングエラー 原則として捕捉しない assert!() 境界外参照 Result 例外的な入力 必要に応じて捕捉 I/Oエラー (File::read) パースエラー (str::parse) パニックとResultの関係についてはTRPL第2版第9章、未定義動作とパニックの関係についてはRustonomiconのUnwindingの章などが参考になります。 パニックを想定した安全性 Rustではたとえパニック状態でも未定義動作だけは絶対に避ける必要があります。そのため以下の関数は不健全 (unsound)です。 use std::ptr; // この関数はRustではunsound (
はじめに こんにちは。新規事業開発室の山口 (@yamarkz) です。 2月15日(金)に弊社Gunosyのスキップヒルを会場に blockchain.tokyo #5 が開催されました! 本記事ではイベントの内容をまとめてご紹介します。 勉強会は資料を見直し復習するまでが勉強会だと思います(勝手に思ってます)ので、本記事で復習していただき理解を深めていただければなと思います。 はじめに 発表 マイニングプールのプロトコルと攻撃手法 Sidechain, NiPoPoW 詳解 BTC支払い Lightning Talks ブロックチェーンで5000兆円欲しい!! Dappsを支えるオラクル DAGで表現するお気持ちネットワーク / Okimochi まとめと所感 宣伝 発表 マイニングプールのプロトコルと攻撃手法 マイニングプールの収益配分と攻撃手法 from mosa siru www
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く