Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

目的 Chrome M60(Canary) でフラグ付きで ES 2015 の ES Modules が動くようになったので、試す。 ServiceWorker と Babel 前提で、エッジな構成で今のバンドル環境を無理矢理シミュレートしてみて、今との比較で現実的なマイグレーションパスを探しておくことにした。 成果物 uupaaさんの WebApp2 をスケルトンとしてお借りしました。 なにができるか まるで browserify/webpack でビルドしてるかのようにこのコードが動く。ブラウザ上だけど babel も動く。 /* @flow */ import { combineReducers } from 'redux' // import external import sub from './sub' // import internal sub() console.log(
2つのテキストの差分を取得する テキストの差分を取得するメソッドは、Diff::LCS.sdiff と Diff::LCS.diff の2つがある。複数行の文字列を比較した場合の2つのメソッドの違いは以下のとおり。 Diff::LCS.sdiff 比較結果を1文字ずつ表示する。 Diff::LCS.diff 比較した結果、違いがあった行について、違いがあった箇所のみ表示する。 実行結果 require 'diff/lcs' # [比較1] Diff::LCS.sdiff で text_a と text_b を比較 # text_a との比較結果が sdiffs 変数に格納される sdiffs = Diff::LCS.sdiff(text_a, text_b) sdiffs.each do |sdiff| p sdiff end # ["=", [0, "a"], [0, "a"]] # [
ということで、このテーマを連作にするつもりもなかったのに、既に第3回目になってしまったのだ。 おさらいすると、日本の大企業は個人に権限がないため決断が遅く、変化の激しい時代に追従できなかったことで、次第に没落していった。 またIT企業が自社の強力なソフトウェアを無償公開し、多数のエンジニアたちが競って利用することで、さらに改良が続きITの進化速度は一層加速していく。 で、前回の宿題なのだが、なぜIT企業・ソフトウェア会社は、せっかく莫大な投資をして開発したソフトウェアを、無償で公開するのだろうか?そして、優秀なソフトウェア・エンジニアたちは、なぜ自分の貴重なノウハウを他人に教えようとするのだろうか? ま~この素朴な疑問に対して、正解があるわけではない。ただ、エンジニアの性分なら我が輩もエンジニアだったので理解はできる。エンジニアは、基本的に人に教えてあげたいもんだ。特に自分しか知らないよう
Shopifyが出しているBootsnapというgemがあります。説明に書いてある通り、巨大なRuby / Railsのアプリを高速化する為のgemらしいです。 何をやってくれるかというと、Ruby, Active Support、YAMLのメソッドの呼び出しの最適化、及び、キャッシュをしてくれる、というものらしいです。 なお、1.0.0の時点でサポートしているプラットフォームはMacOSとLinuxだけです。Windowsは未対応。 また、Rubyは2.3.0以上のみサポートしています。 require 'bootsnap' Bootsnap.setup( cache_dir: 'tmp/cache', # Path to your cache development_mode: ENV['MY_ENV'] == 'development', load_path_cache: true,
先日包除原理を使う必要が出てきた時にまとめたものがありますので共有させて頂きます。 包除原理とは、詳しくは 包除原理 - Wikipedia を参照ですが、簡単に言うと中学の次のような数学の集合問題をシステマティック解く方法です: 学校の中でアメフト部に所属している生徒は100人、合唱部に所属している生徒は10人、アメフト部と合唱部両方に所属している生徒は5人の時、合唱部またはアメフト部に所属している生徒は何人か? 複数のクラブに所属するのは現実にありえないかもしれませんが、ここではアメリカンドラマ グリー のような学校と考えましょう。 視覚で把握してみる 教科書には数式と共に大抵次のベン図が載っていました: $ |A \cup B| = |A| + |B| - |A \cap B|$ 数式なんか覚えなくても、見ただけで計算は十分可能です。$A, B$ の領域を均一に色を塗ることを考えます
追記: 結局パッケージにしてしまった。。。 https://atom.io/packages/hydrogen-helpers Atom のパッケージ Hydrogen を使い始めた。 目的は JavaScript のお勉強を加速するために、サンプルコードスニペットを手早く理解するためだ。 これまで、理解の難しいコードは自作の transformer パッケージで Atom から直接実行していたが、 hydrogen を試してみようと思い立った。いちいち debug プリント( console.log ) 入れるのが辛くなってきた。 もともと、Vim を使っていた頃、vim-ruby-xmpfilter というのを作って使っていた( 単なる rcodetools/xmpfilter 自体の wrapper) これとワークフローを実現したかった。 実現したい Workflow コードをセレク
元記事 以前こちらの記事で、requireで書ける node.js や browserify に対応し かつ、素のHTMLでのscriptタグリンクでも動作するような モジュールの書き方をまとめました。 JavaScriptの名前空間とモジュール分割方法 require(node.js/browserify) HTMLScriptタグ WSH フル対応 - Qiita モジュールを作成する場合は、このようにしておいた方が、様々な環境用に提供できる汎用的なライブラリにできます。 ただ、これは呼び出し側では、HTMLのscriptタグを使う場合には、グローバル唯一の名前空間を使うという、やり方でした。 require のない環境でも require を使えるようにする 今回は require のない環境でも require 使えるようにして、モジュール側の汎用性だけではなく、モジュールを使用す
Android の世界には FCM (Firebase Cloud Messaing) という、Android 端末に push notification を送るためのプロトコルがある。そして、Ruby の世界には fcm gem という、そのプロトコルを簡単に叩くためのライブラリが存在する。 この fcm という、まるで Google 公式 gem であるかのような名前なのだが、全然公式ではないし、コードを読んでみるとこれがかなりやばい。具体的に何がやばいかというと、 必要もなく httparty gem と json gem に依存している。 Persistent connections を使っていないので、とてつもなく遅い。 単にコードの質が低い。 このレベルだとpull request を送って改善するのも無理そうだし(json gem を依存関係から削除するというのは PR 送っ
先日久々にブログを書いたところたくさんの賛否両論コメントをいただきびびったみやしたんくです。 その節はみなさまありがとうございました。大変励みになりました!今後はどんどんブログ書いていきまっせ~! …と言いながらすでに前回のブログから2ヶ月経ってしまっているというね。toksatoさんに怒られちゃいましたよ!ごめんて! さて許してもらえたところで本日はtoksatoさんとの交換日記第二弾です。 交換日記についてはこちらtoksatoさんが書いてくれた記事で詳細を説明しているのでよろしければご覧ください。 toksato.hatenablog.com toksatoさんが「なかのひと」になってからtoksatoさんと飲みにいったりメッセンジャーだったりで受託の制作会社との違いという話をたくさんしました。 そんな中で自分たちの会社の強みとか価値をすごく考えているときに思ったことをまとめてみまし
さて、今回は先日投稿したこちらのWebサイトの作り方についての続編を書こうと思います。 Webサイトの作り方と言っても一言ではまとめきれないので…今後も書いていきたいと考えております。もし良ければどうぞお付き合いください。 Webサイトの作り方ついて個人的まとめ -デザイン編私はデザイン制作に携わって早いもので15年以上にもなります。そんな私が個人的にWebサイトを0から制作する場合の工程を何回かに分けて少し... 前回までは横幅とカラムレイアウトを決めてデザインを作り込みましょう!とかなり強引なまとめになってしまいましたが。。今回はもう少し先に進んだ具体的な話をしたいと思います。 Webデザインって難しいですよね?でもある程度コツをつかめば伝えたい表現をすることができます。
概要 HTML/CSS/JavaScriptが書きたい?じゃあCodePenでしょ!! ということで基本の使い方とすごいところを語ります。 What is CodePen? HTML/CSS/JSのコードを、ブラウザ上で編集しながら実行結果が確認できる最強ツールです。 コードを保存して公開することもできるので、ポートフォリオとしてコードを公開している人や、誰かの書いた素晴らしいコードを参考にしてコーディングを行うことができます。 How to Start CodePen! 1. Sign up ボタンを押します! 【URL】 https://codepen.io/ 2.Free プランをクリックします! 3.入力&Submit! 4.Save&Continueをクリック! 5.アカウント作成完了! 他にも色々 フォークする 参考になりそうなコードをフォーク(コピー)して自分のアカウントで編
サーバ監視サービスMackerelにおいて開発中の、高解像度・長期間のサーバメトリック収集を実現するための新しい時系列データベースDiamondを紹介します。具体的には、Amazon ElastiCache、Amazon DynamoDB、Amazon S3を組み合わせ、Amazon Kinesis StreamsとAWS Lambdaによりコンポーネント間を接続した、階層構造のデータストアアーキテクチャの設計と実装を解説します。 2018/06/05 追記: この記事の内容をWSA研#2でより一般的なアーキテクチャレベルでの貢献として書き直しました。 サーバレス時代におけるヘテロジニアス時系列データベースアーキテクチャ - ゆううきブログ はじめに 先日開催されたAWS Summit Tokyo 2017にて、「時系列データベースという概念をクラウドの技で再構築する」というタイトルで登壇
Node.js 8.0が公開。npm 5.0バンドル、Node.js API搭載、WHATWG URLパーサーを正式サポートなど Node.js 8.0では、パッケージマネージャとして最新のnpm 5.0をバンドル。npm 5.0ではキャッシュ機構のコードがリライトされて高速になるなどの強化が行われています。下記はnpm 5.0と以前のバージョンの速度比較を行っているツイートです。 With #npm5 about to come out, I thought I'd update those benchmarks. Here's the npm5 code I'm working on, vs [email protected] on a popular repo pic.twitter.com/KWPfbpE46p — ✨11x gayer Kat✨ (@maybekatz) 2017
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く