タグ

2019年1月6日のブックマーク (23件)

  • Firecrackerをなるべく手頃に試せる場所を探す | DevelopersIO

    ども、ゲストの大瀧です。 みなさーん、Firecrackerはもう試しましたか?Developers.IOでも既に以下のブログで動作させた記事が上がっています。 Firecrackerをさわって大量のmicroVMを立ち上げてみた #reinvent | DevelopersIO Firecracker をオンプレ環境で動かしてみた #reinvent | DevelopersIO 1目ではベアメタルインスタンスのi3.metal、2目ではMacBook Airの例ですね。FirecrackerはマイクロVMを実行する仕組みとしてLinuxのハイパーバイザであるKVMに依存するため、一般的な仮想マシン環境では動かせないのがちょっと敷居高めなのですよね。そこでブログでは手頃にFirecrackerを試せるクラウドサービスをいくつかご紹介したいと思います。 安価なベアメタルインスタンスや

    Firecrackerをなるべく手頃に試せる場所を探す | DevelopersIO
    lugecy
    lugecy 2019/01/06
  • https://indivtubers.com/archives/4221

    https://indivtubers.com/archives/4221
    lugecy
    lugecy 2019/01/06
  • ようてん on Twitter: "よかった https://t.co/nxVWLVaR2t"

    lugecy
    lugecy 2019/01/06
  • PHP-FIGのHTTP処理標準の設計はなぜPSR-7/15/17になったのか

    PHPカンファレンス2018 発表資料です

    PHP-FIGのHTTP処理標準の設計はなぜPSR-7/15/17になったのか
  • Javaバージョン別の改元(新元号)対応まとめ - Qiita

    はじめに 改元が2019年5月1日、新元号が「令和」と4月1日に発表されました。新元号の発表が1ヵ月前の4月1日に予定されています (4/1見直し) 関連する記事は「Javaで新元号に対応する」などがありますが、Java SE 8(以下、単にJava 8のように表記)からのDate and Time APIに対応していなかったり、それ以外のブログなどでも古い情報が多いため、改めてなるべく網羅的かつ実践的となるよう、まとめてみることにしました。 ※記事は改元対応が完了するであろう2019年5月くらいまでは随時更新する予定です。 誤りや補足などあれば適宜コメントなどでご指摘ください。 (3/24追記) 2019年3月21日(米国時間)にOracle社のブログ記事「A new (Japanese) era for Java!」(日語翻訳)が公開され、2019年4月16日(米国時間)に予定され

    Javaバージョン別の改元(新元号)対応まとめ - Qiita
  • 切り取り線 on Twitter: "✄------------ AM 12:00 -----------✄"

    ✄------------ AM 12:00 -----------✄

    切り取り線 on Twitter: "✄------------ AM 12:00 -----------✄"
  • Golang製アプリケーションの性能監視 〜 mackerel-plugin-gostats を読み解く - えいのうにっき

    この記事は、Mackerel アドベントカレンダー(全部CRE)の17日目の記事です。今回も、『プラグイン読み解きシリーズ』でいきたいと思います。題材は、mackerel-plugin-gostats! github.com 当記事が前提とするバージョン この記事を書いている今の最新版である、mackerel-agent-plugins の v0.53.0 を前提としています。 Releases · mackerelio/mackerel-agent-plugins · GitHub また、このプラグインが利用しているパッケージ、fukata/golang-stats-api-handlerのバージョンはv1.0.0を前提としています。 github.com どんなプラグイン? このプラグインは、Goで書かれたアプリケーションが消費しているCPUやメモリリソースの状況、GC回数、gorou

    Golang製アプリケーションの性能監視 〜 mackerel-plugin-gostats を読み解く - えいのうにっき
  • Devirtualization (脱仮想化)

    今日は一般論として「仮想メソッドは避けれるなら避けたい」という話と、 .NET Core 2.1 で仮想メソッドの「devirtualization」(脱仮想化)のための最適化が入っているという話。 仮想メソッドのコスト 多くのプログラミング言語で、 いわゆる多態的な動作の実現のために、 仮想呼び出し(virtual call)という機能が提供されています。 仮想呼び出しは、仮想関数テーブルを使った実装が一般的です。 テーブルを使った実装には以下のような利点があります。 後からクラスが増えても呼び出し側コードには変更が必要ない 分岐の数がどれだけ増えても呼び出しにかかる時間が一定 ただし、仮想呼び出しには以下のようなコストがかかります。 テーブルを引くために間接参照が増える ちなみに、今の .NET Coreの実装だとテーブルは2段構造になってるらしく、間接参照は2回 インライン展開が効か

    Devirtualization (脱仮想化)
  • Redmine テーマのつくりかた – アカベコマイリ

    記事は Redmine Advent Calendar 2018 の 17 日目です。Redmine テーマ開発について書きます。 Redmine テーマとは? Redmine を機能拡張する方法としてプラグインとテーマが提供されている。 プラグインは RedmineAPIDB を直に参照・操作可能なので高度な用途に向く。テーマは CSS と画像、JavaScript など Web フロントエンド技術のみで開発され、外観の変更や Web ブラウザーで可能な範囲の簡単なカスタマイズを担当する。 プラグインは高度な機能拡張を可能とする反面、開発の難易度も高い。バグや Redmine 体との互換問題が起きるとシステムそのものが動作しなくなる危険性もある。そのため上級者向きといえよう。エンド ユーザーとして利用するにしても慎重な管理を要求される。 テーマの機能は Web ブラウザー

  • 故郷である岡山に帰ったら必ず足を運んでいるところ - えいのうにっき

    こんにちは、岡山出身のa-knowです! 大元小学校・桑田中学校・岡山高等学校、にそれぞれ通っておりました!大安寺高校に行きたかった......!大都会岡山 Advent Calendar 2018の17日目の記事として、このエントリーを書かせていただいております! 「岡山に帰ったら必ず足を運んでいるところ」というタイトルなのですが、僕が実家のある岡山に帰省するときといえば、ここ数年はもっぱら年末年始の数日間に限られるのですが、そんな限られた日程のなかでも必ず足を運んでいるところを、今日はご紹介したいなと思います! 麺蔵人(めんくらんど) うどん屋さんです!駐車場にある、巨大な水車が目印! かも川手延素麺 麺蔵人(めんくらんど) | 浅口観光協会|おいでよ、はまるよ、浅口へ! ここの "たまかけうどん" は絶品です。というか、それ以外べたことがない。こんな↓写真日記も書いてますね(2年前

    故郷である岡山に帰ったら必ず足を運んでいるところ - えいのうにっき
    lugecy
    lugecy 2019/01/06
  • Big Sky :: gocode やめます(そして Language Server へ)

    はじめに まず始めに言っておかなければなりません。 gocode 今まで当にありがとう この記事は、Go 言語歴10年になる僕がこれまで愛用してきた Go 言語のコード補完ソフトウェア gocode の歴史と功績、そして今、gocode 自らがその役割を終えようとしている姿をぜひ皆さんに知って頂きたいという思いから Go Advent Calendar 2018 の記事として起こしました。この記事では gocode が歩んできた歴史と苦悩を少しでも皆さんに分かる様に解説させて頂きつつ、そして次にやってくる Go 言語のコード補完の未来についてご紹介したいと思います。Vim について多めに書かれていますが、Visual Studio Code での Go 開発にも影響する話です。 gocode とは gocode は nsf 氏が開発した Go 言語のコード補完サーバです。 GitHub

    Big Sky :: gocode やめます(そして Language Server へ)
  • 複数人巡回セールスマン問題 | Webシステム開発/教育ソリューションのタイムインターメディア

    2人での巡回セールスマン問題は、以下のように考えると、できる。 上は、両端がない循環しない紐状のルートの場合である。 これの両端の2つの街の間の距離も加え、全体でリング状になるとしたのが一般的な巡回セールスマン問題である。 ここでは、その下側のように、両端にベース(基地)を加えたものを考え、それらの間の距離も考えることにする。 すると、①がセールスマン1の巡回路になり、②がセールスマン②の巡回路になる。 これで、二人のセールスマンの巡回路が決まるので、その長さを求め、最小化すべきものを計算することで、いままでと同様に遺伝的アルゴリズムにより、二人巡回セールスマン問題が解ける。 これが分かれば、次のように考えると3人巡回セールスマン問題も解ける。 3人の場合には、両端のない経路を考える時点で、既にベース(基地)が2つ入っている。 この場合、単にベースを2つ、その他の街を1つずつの並べ替えを考

    複数人巡回セールスマン問題 | Webシステム開発/教育ソリューションのタイムインターメディア
  • 静的なデータの ReadOnlySpan 最適化

    今日は C# コンパイラーのレベルの最適化(割と最近の追加)。 静的な byte データ列をプログラム中で使いたいとき、どう書くのが効率良いかといいかという話になります。 静的な byte データ 例えば、以下のようなコードを考えます。 using System; public class Program { static void Main() { var data = new byte[] { 65, 66, 67, 68, 69, 70, 71, 72 }; foreach (var x in data) Console.WriteLine(x); } } data の中身は全て定数です。 なので、コンパイルすると、定数として DLL 中に埋め込まれます。 コンパイル結果の DLL を適当にエディターででも開いてみると、以下のような文字列が見つかると思います。 (65~72 は 'A

    静的なデータの ReadOnlySpan 最適化
  • あーありがち - 失敗を認めて頑張るべきところと失敗のない安全性を重視すべきところ

    あるいは Kanazawa.rb meetup #76 に行ってきたよ の話。 割といつも言ってることと同じなんだけど、まぁせっかくなので。 エンジニアが集まると なんでそんなものになってしまったのか? みたいな話で割と盛り上がれるわけですよ。 それ要る!? みたいなやつ。 そういうのを避けるために自分は「インフラは持つべきではない、全部PaaSかフルマネージドにしろ」という選択を数年前にしたんだけど、最近は「バックオフィス業務で独自に開発はすべきでない、そもそも開発を外部に依頼するのは難しいし、独自に作らなきゃいけないものなんてほとんどない」と思っている。 で、これって、結局「余計な失敗をしない」ということなのだろうなぁと思っている。 何か作れば、何かやれば、それには失敗がつきものだ。避けようがない。そしてその失敗をなくすためには実はかなり大きな、時に測定不能なコストが発生する。 なぜか

  • 組織にいながら、自由に働く。仲山進也著、読了、濫読日記風 2018、その30 - 未来のいつか/hyoshiokの日記

    組織にいながら、自由に働く。 仕事の不安が「夢中」に変わる「加減乗除(+-×÷)の法則」を読んだ。 働き方改革だ。書は楽天大学学長、仲山進也さんの待望の書だ。 仲山さんは楽天の中でも「がくちょ」と呼ばれる名物社員だ。自由に飄々としていられる。その秘密の一端を垣間見させてくれるのが書だ。 自分も自由に生きたい、自由に働きたいと思っている人は多いと思う。その指南書になるのか、ならないのか。 なるとも言えるし、なかなか難しいとも言える。 自由を獲得するためにはそれなりのスキル(?)が必要だ。 それが働き方の「加減乗除」という4ステージだ。(10ページ) 「加」できることを増やす 「減」好みではない作業を減らして、強みに集中する 「乗」磨き上げた強みに、別の強みを掛け合わせる 「除」(因数分解して)一つの作業をしていると複数の仕事が同時に進むようにする いろいろと働き方のヒントが満ちている。

    組織にいながら、自由に働く。仲山進也著、読了、濫読日記風 2018、その30 - 未来のいつか/hyoshiokの日記
    lugecy
    lugecy 2019/01/06
  • 図書館に訊け!、井上真琴著、読了、濫読日記風 2018、その29 - 未来のいつか/hyoshiokの日記

    図書館に訊け! (ちくま新書)を読んだ。 図書館が好きだ。地域の図書館が好きだ。学校の図書館が好きだ。子供の頃から好きだった。 好きなわりには図書館を使いこなしていない。図書館の良さを引き出しきれていない。そんな気がする。 図書館仕事や調べ物をするツールとしてどのように使うか、そのような視点で書は書かれている。 もちろん、図書館を大好きながいっぱいある場所として特に目的もなく棚を眺めたりぶらぶらする場所として使ってもいいが、書はそのような立場ではなく、あくまでも調べ物をする場所としての使い方を紹介している。 ネットには様々な情報が溢れているが、ご存知の通り玉石混合だ。書籍の場合、編集というプロセスを経ているので、最低限の品質は担保されている。書籍ならではの網羅性や一貫性もある。 今だに読まれている名著には名著なりの理由がある。時間という激しい選別から生き残っただけの生命力が名著には

    図書館に訊け!、井上真琴著、読了、濫読日記風 2018、その29 - 未来のいつか/hyoshiokの日記
    lugecy
    lugecy 2019/01/06
  • L'eclat des jours(2018-12-15)

    _ 日銀日記読了 通勤中にぽつぽつ読んでいた岩田規久男の日銀日記を読了。 ここ数年のお金の動きが手に取るようにわかるという点でおもしろかったし、困難に知力で立ち向かう点が感動的で大いに力づけられる。 今の日政治と経済、これらが世界や世代や(ある意味)文化とどうかかわるかといった多角的な意味からもすさまじくおもしろい。 最初はとにかく日銀が2%にコミットするという点に集中される。就任前から安倍がデフレ対策をすると明言したことが好感されて円安株高へ向かいつつあるためにシナリオ通りの動きに見える。 ここで、内閣(安倍自民党)-官僚(財務省)-日銀が基的には節度を守ってお互いの領分でそれぞれの政治を行うということが明示される。相当驚いた。内閣と官僚は不可分かと思っていたし(が、考えてみたら民主党政権時にむしろ平然と敵対することがあるということもわかっていたな)、日銀-金融庁-財務省というのは

  • 配列のダウンキャスト

    今日は Unsafe クラスを使った配列の最適化の話。 object[] .NET Framework 1.x 時代からある古い API の中にはいくつか、 当は T 型の配列なのに object[] で戻り値を返してくるようなメソッドがいくつかあります。 object[]とまでは言わないものの、基底クラスの配列で返すメソッドは多いです。 1.x 時代にはジェネリクスがなかったせいなんですが、今となっては不便ではあります。 例: マルチキャスト デリゲート 例を1個。 C# のデリゲートは、複数のメソッドを += で繋いで、一斉に呼び出すという機能があり、 これをマルチキャスト デリゲートと言います。 例えば以下のコードは、 Action f = null; foreach (var i in new[] { 1, 2, 3, 4, 5 }) { f += () => Console.W

    配列のダウンキャスト
  • 地味そうで地味じゃない、少し地味な便利機能3選【Mackerelアドベントカレンダー2018(全部CRE)15日目】 - えいのうにっき

    この記事は、Mackerel アドベントカレンダー(全部CRE)の15日目の記事です。 このアドベントカレンダーも無事、折返しを通り過ぎ、終わりも見えてきた今日このごろ、日は小ネタ記事でお茶を濁したいと思います。 このプラグインを使いたいんだけど、メトリック数は抑えたい...... そんなとき、ありませんか? Mackerelでは、1ホストあたりのメトリック上限が200となっており、万一それを超えた場合、超過メトリック200個ごとに、1ホスト分の利用として換算されます。 mackerel.io 通常このメトリック数は、mackerel-agent 単体を入れた状態で30個いかないくらいで、あとはプラグインを設定していくとメトリック数が増える形になります。 GitHub - mackerelio/mackerel-agent-plugins: Plugins for mackerel-ag

    地味そうで地味じゃない、少し地味な便利機能3選【Mackerelアドベントカレンダー2018(全部CRE)15日目】 - えいのうにっき
  • Big Sky :: flatten() に再帰は必要ない

    先日、mopp さんが Vim に flatten() を追加するプルリクエストを追加してくれたのだけど、その時の記憶を整理する為に書く自分の為の記事。 add flatten() to flatten list by mopp - Pull Request #3676 - vim/vim - GitHub I'm a bit confused by the maxdepth argument. I would expect it to specify the maximum depth of the r... https://github.com/vim/vim/pull/3676 Vim script のリストは以下の様に、異なる型が混在できる。Ruby や他のスクリプト言語でも一般的。そしてスクリプト言語には一般的にリストを平坦化する為の flatten という関数ないしはメソッドが

    Big Sky :: flatten() に再帰は必要ない
  • System.Runtime.CompilerServices.Unsafe

    昨日から始まった在庫一掃処分セール的なブログなんですが、結構な頻度で「Unsafe クラス」ってのが出てきます。 以下のパッケージに含まれているもので、こいつをを参照すれば、通常の C# では書けないようなどぎつい unsafe な真似がし放題になります。 System.Runtime.CompilerServices.Unsafe これの登場はもう結構前なんですけども、そういえばちゃんとした説明をしたことなかったなと。 .NET の IL は意外とやりたい放題 上記パッケージにはパッケージ名と同じUnsafeというクラスが入っています。 このUnsafeクラス、ソースコードはこんな感じ: System.Runtime.CompilerServices.Unsafe.il ILアセンブリ実装です。 C# では書けなくても、IL なら何も特別なことをしなくてもやりたい放題。 要するに、.NE

    System.Runtime.CompilerServices.Unsafe
  • 2019-01-01のJS: WebdriverIO v5、Rollup 1.0、Rust + WebAssembly + WebWorker

    JSer.info #416 - WebDriverを扱うテストフレームワークであるWebdriverIO v5がリリースされました。 WebdriverIO v5 Released · WebdriverIO webdriverio/CHANGELOG.md at master · webdriverio/webdriverio パッケージ構造やAPI周りの変更が行われています。 基的なパッケージが@wdioに移動され、同梱されていたCLIが@wdio/cliに移動しています。 API周りではコマンドがselectorを受け取らないようになり、メソッドチェーンではなくasync/awaitベースに変更されています。 // v4ではセレクタを渡せた browser.click('#elem') // v5からはelementを取得してから操作する const elem = $('#ele

    2019-01-01のJS: WebdriverIO v5、Rollup 1.0、Rust + WebAssembly + WebWorker
  • WSLのI/Oが遅いことに対するMS技術者からの回答

    情報源: Major performance (I/O?) issue in /mnt/* and in ~ (home) · Issue #873 · Microsoft/WSL · GitHub WSLのI/Oが遅いというGitHub issueに対するMSの技術者の回答が、遅いと言うより早くできていない理由についてまとめられています。 以下は私の考えです。 まず、初めに理解しておかなければならないことは、WSLのファイルシステムはUnix File Systemとは縁も所縁もないNTFSファイルシステム上にPOSIX互換のUnix File System(UFS)がエミュレートされている事です。WSLは、このためにNTFSとUFSとの差を一つ一つ埋めるようにエミュレートしなければなりません。WSL上のプログラムより、File I/Oの割り込みがある度にこれらの処理を通るので当然遅くな

    WSLのI/Oが遅いことに対するMS技術者からの回答