タグ

ブックマーク / yosuke-furukawa.hatenablog.com (11)

  • JavaScript が読み込まれる前でもWeb Applicationを動かす - from scratch

    今回は最近取り組んでいる、 JavaScript が読み込まれる前であっても「ちゃんと」 Web Application が動作するように作る話をします。 Server Side Rendering における注意点と対策 BFFを使ってServer Side Rendering をすることに数年前から取り組んでいます。 まずはSSRをやる上での注意点と対策について紹介します。 SSRをすることはSEOのためだと思われがちですが、個人的にはSEOのためにしているわけではなく、 First View を向上するため(特に First Meaningful Paint を向上するため)にやっています。 First View SEOとSSRに関しては Google が最近出したこの記事の SEO Considerations 節が詳しいです。ここでは説明しません。 SSRをしない、Client S

    JavaScript が読み込まれる前でもWeb Applicationを動かす - from scratch
  • Node.js における設計ミス By Ryan Dahl - from scratch

    Ryan Dahl は Node.js の original author ですが、彼の作ったプロダクト deno に関するトークが jsconf.eu 2018 でありました。 Node.js にずっと関わってきた僕が見て非常に興奮するような話だったので、しばらくぶりにブログに書き起こすことにしました。 背景 Ryan Dahl は2009年に Node.js の話を初めて公の場に公開しました。その時の「公の場」というのが「jsconf.eu 2009」です。 www.youtube.com Video: Node.js by Ryan Dahl - JSConf.eu - 2009 この発表から Node.js が広まり、今やサーバのみならず、IoTデバイス、デスクトップアプリなど、様々なところで動作しています。 で、今回はその発表から9年の歳月が経過し、Node.jsに対しての設計不

    Node.js における設計ミス By Ryan Dahl - from scratch
  • npm v5 がリリースされた - from scratch

    npm v5 The npm Blog — v5.0.0 npm に v5 がやっとリリースされました。この npm v5 は既に明日リリース予定の Node v8 にバンドルされる予定です。 かいつまんで、機能を紹介します。 Notable Changes package-lock.json!!! faster than npm v4 no more --save option Offline mode sha512 support package-lock.json!!! npm v4 まで問題だった npm-shrinkwrap の問題 を解消するための新しい lock ファイルが生まれました。 shrinkwrap は依存ライブラリを固定するための機能です。npm v4 までは shrinkwrap で固定していましたが、新しく npm v5 になってからはshrinkwrap は

    npm v5 がリリースされた - from scratch
  • ソフトウェア例え話、格言、小噺 - from scratch

    2016年になってから色んなソフトウェアエンジニアの人と話してきて、その中で3人から聞いた例え話、格言、小噺が面白かったので、僕の中だけで留めておかずに開放しておく。 息継ぎをするには『まず息を吐く』という例え話 水泳で息継ぎをするなら『まず息を吐きなさい』と教わるらしい。これは息を吐かずにどこかで息を貯めてしまうと、ちゃんと息を吸えないという事を意味してる。息を吐くと苦しくなって顔は絶対に水面に出る。 これと同じことがソフトウェアの学習にも言える。 つまりまずアウトプットする、なんでも良い。作ったものをGitHubに公開するとか、発表するとか、ブログやQiitaに書くとか。ちゃんとアウトプットしたものはフィードバックがあり、そのフィードバックを受ける(PRやissue, 質問, マサカリ etc)、どんどん吐き出していくと吸わないとネタがなくなるので、吸い込むためにまたインプットする。

    ソフトウェア例え話、格言、小噺 - from scratch
    kenzy_n
    kenzy_n 2016/12/31
    片づけなければ新しいものは入りにくくなる
  • io.js v3.0.0 がリリースされました。 - from scratch

    io.js v3.0.0. がリリースされました。めでたい! iojs.org さらにめでたいことに、次のv4.0.0リリースはとうとうお待ちかねの Node.js との converged されたバージョンになります。 既にコアメンバーは v4.0.0 のリリースに向けて動き出しています。 今回の v3.0.0 は v4.0.0 、つまり converged される Node.js のアルファ版という位置づけです。 v2.0.0 から v3.0.0 がリリースされるまでに作られた機能を振り返っていきましょう。 --trace-sync-io オプションが追加される (v2.1.0) --trace-sync-io オプションが追加されました。これは、fs.readFileSyncやexistSync といった 同期的に動作するコードを見つけてwarnings を出すオプションです。 No

    io.js v3.0.0 がリリースされました。 - from scratch
    kenzy_n
    kenzy_n 2015/08/07
  • Stream今昔物語 - from scratch

    この記事は Node.js Advent Calendar 2014 の 1日目の記事です。 こんにちは、代表です。 Stream大好きなみんなのためにStreamの過去と現在、そして未来についてお話するよ!! Streamを何故使うのかっていう話と歴史的な話をします!! Streamとは データの流れを扱うための抽象化されたモジュールです。もうみんな耳にタコかもしれませんが、Streamを使うとデータの流れを綺麗に書くことができます。ちなみに今に始まった概念ではなくて、C++にもC#にもStreamがありますし、Java8の新機能にもStreamがあります。「データを扱うときの抽象化された流れ」を指す広義のStreamという意味では今日の言語ではだいたい実装されています。 Node.jsでは、以下のリンクが参考になるでしょう。 Node.js の Stream API で「データの流れ」

    Stream今昔物語 - from scratch
  • npmのあまり知られてない機能 10選 - from scratch

    なんか最近Twitterとか職場でも「npmの機能でそんなのあったんだ」って言われること多いので、説明していきます。 ちなみにタイトルにとりあえず10選って書いたけど、あんまりたくさん思いついてないのに、10選って書いてしまったので最後の方は微妙かもしれません。 1. npm installは npm i でも同じことができる まぁ単純なショートカットですね。isntallとかtypoしてても空気読んでくれるんですが、短いほうがいいよねってことで。 # npm installって書くのも $ npm install socket.io #npm i って書くのも同じ $ npm i socket.io # ちなみに --saveは -S, --save-devは -D にできる $ npm i socket.io -S $ npm i mocha -Dショートカット小ネタ。 2. npm

    npmのあまり知られてない機能 10選 - from scratch
  • LevelDB入門 (基本編) - from scratch

    さて、今回は比較的新しいデータストアであるLevelDBについてまとめてみました。 LevelDBは1年ほど前からNode.js界隈ではブームが来ていて、理由がよくわかっていなかったんですが、まとめている内に分かるかなと思ってまとめました。今回はNode.js無関係でLevelDBの基礎的なことだけ調査した結果をまとめてみました。 Node.jsで使ってみる話は後に回します。 LevelDBとは? key-value型のデータストアの一つです。 Googleの研究者である、Jeff DeanとSanjey Ghemawatが開発し、2011年に公表されました。C++で書かれており、多くのプログラミング言語でbindingsが書かれています。もちろん、JavaScript/Node.jsでも書かれています。 LevelDBGoogle のBigTableをベースにしたアーキテクチャを持

    LevelDB入門 (基本編) - from scratch
  • Unix Philosophy と Node.jsのモジュールの作り方 - from scratch

    The Art of UNIX Programming 作者: Eric S.Raymond,長尾高弘出版社/メーカー: アスキー発売日: 2007/06/19メディア: 大型購入: 4人 クリック: 91回この商品を含むブログ (62件) を見る TL;DR Unix Philosophyにおいては、「一つのことをうまくやり、協調する仕組みを持つ」という事が大事 Node.jsのモジュールにおいても同じで、「一つのことをうまくやる、Stream APIで協調する」と良い 「一つのことをうまくやる」にはどうするのが良いのか、ということで substack のモジュール実装例 Simple と Easyの違い ちょっと今回長くて文字が多いので、最初と最後にまとめを用意しました。時間がない方はこれを読むだけでもいいかと。 Unix Philosophy さてさて、Unix Philosoph

    Unix Philosophy と Node.jsのモジュールの作り方 - from scratch
  • #JSオジサン でハイブリッド時代のCIツールの発表してきた - from scratch

    いやー、めっちゃ楽しかったわ、JSオジサン。 もう色々と感想ブログは出てるけど、僕も一言で感想を言うと以下の様な感じです。 #JSオジサン 楽しかった。ギャルにも会えたし、typescriptオジサンにも会えた。ECMA-262 Edition 5.1を読むも貰えたし、じゃんけんに勝ってエコバックも貰えた。50-60位の中規模なカンファレンスだとやっぱり話が濃くなるから良かった。— Yosuke FURUKAWA (@yosuke_furukawa) March 27, 2014 実際名前は知ってても顔を見たことない人もちゃんと話したことない人も多くて、そういう人たちと知り合えたのがやっぱり大きかった。 僕が発表した内容 ここ最近、substack wayでモジュールを書くことを実践してます。 当は上のリンクにあるsubstack wayの話をすごくしたかったんですが、5分で伝えきれる

    #JSオジサン でハイブリッド時代のCIツールの発表してきた - from scratch
  • Docker + Jenkins + travis.yml parser 作って Travis っぽいものを作った話 - from scratch

    年末にDocker触ってて、これをうまく活かせば、副作用を無視した使い捨てのテスト環境が作れるんじゃねーかな、という意識が高まったのですが、手を付けられずにうにゃうにゃしてました。 そうこうする内に yahooのデベロッパーの方からJenkins with Dockerというタイトルの発表があり、ほぼ僕のやりたい事のベースができていたので、これをforkして、travis.yml parserや若干のバグフィックスを入れてもう少しだけTravisに近づけてみました。 ちなみにこれは 社内 Immutable Infrastructure ハッカソンした時の成果物です。 Immutable Infrastructure Hackathon at :D を開催したら、configspec の敷居が高いのでコミッタになっていました - sonots:blog 今回の成果物に関して、詳しくはここを

    Docker + Jenkins + travis.yml parser 作って Travis っぽいものを作った話 - from scratch
  • 1