Clojure's Journey: From Simplicity to Enterprise Maturity Jordan Miller discusses the evolution of the Clojure ecosystem, from Rich Hickey's initial vision tackling complexity to its current status as a mature enterprise solution. He explains key philosophies, highlights pivotal moments like the "Simple Made Easy" talk, and showcases the vibrant Clojure community and its innovative tools.
を2年前くらいに作ったのだけど、久々にGoogle Closure Libraryを使いたくなって、そうなるとテストも書かないとなので引っ張りだして使おうと思ったのですが、なにせ2年前に作ったものなので、ソースコードはレガシー感が漂ってて、使ってるPhantomJSのAPIもdeprecatedになっていたりしたのでいろいろ直してアップデート(リポジトリ名も少し変更)。 waka/closure-library-phantomjs 単一のテストファイルのテストでもマルチテストランナーを使った複数テストファイルのテストでも同じ使い方です。 詳しい使い方やオプションは、READMEに書いた。 最近Mochaでテストを書くことが多いのですが、出力形式をいろいろ選べるの楽しくていいなと思ったので、インターフェース切ってリポーターをいくつか使えるようにした。 実際よく使うのは、見やすいSpec形式と
認証まわりで確実に必要になるハッシュの生成方法を調べてみました。 確認のためPHPを使っています。 調べたのは以下。 md5 sha1 sha256 Bcrypt PBKDF2 Node.jsで使いそうな文字列操作ライブラリ - ZeBeVogue別館も参考まで。 md5 安全面において使うべきではないですが、既存のシステムでも使われてるかも知れませんので。 cryptoを使います。 var crypto = require('crypto') , md5sum = crypto.createHash('md5') , arg = process.argv[2]; console.log(arg); md5sum.update(arg); console.log(md5sum.digest('hex')); 検証してみます。 $ node md5.js hoge hoge ea703e7a
node.js v0.8.0が出た。すぐにv0.8.1になった v0.8.0の特徴 すげぇ速くなったよ より安定したよ 子プロセス起動時の引数指定が変わったよ クラスターモジュールが最高っす ドメインモジュールが追加されたよ REPL(対話型node)が良くなったよ ビルドシステムがwafからgypになったよ いろいろ変わったな v0.8.1の特徴 V8エンジンを上げたよ。 v3.11.10.12 npmを上げたよ。 v1.1.33 いろいろ修正したよ セットアップ node.js v0.8.1のインストール手順です。 $ . .nvm/nvm.sh $ nvm install v0.8.1 $ nvm use v0.8.1 v0.8.1 $ npm -v 1.1.33 $ npm update クラスターモジュールを試す v0.8.0の目玉であるクラスターモジュールを試してみたいと思いま
WebSocketやchrome.socket、AudioやVideo APIなどが進んできたせいで、JavaScriptで生データを触ることが増えてきています。 その時に使えるのがArrayBufferというオブジェクトなんですがいまいち整理がついてないので、MDNを訳しながら、まとめてみました。 ちなみにMDNでは Webアプリケーションがパワフルになってくるに連れて、audioやvideoの操作などの機能や、WebSocketsを用いた生データのアクセスなどが追加され、その結果、早く・容易に生のバイナリデータをJavaScirptコードで扱うことのできる機能が必要なことが明確になって来ました過去には文字列として生データを扱い、charCodeAt()を用いてデータバッファからバイトを読み取るようなこともされていました。 とあります。この機能がArrayBufferですね。 Typed
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
A lightweight, component-based JavaScript framework for assigning behavior to DOM nodes.Flight A lightweight, component-based JavaScript framework from Twitter View on GitHub Overview Flight is a lightweight, component-based JavaScript framework that maps behavior to DOM nodes. Twitter uses it for their web applications. By way of example, we've including a simple email client demo (browse the sou
はじめに ちょっとデプロイしてスマホで確認したい、皆に見てもらって感想が欲しい、とにかく直ぐにデプロイしたい。そんな時に便利なgrunt.js用のタスクのgrunt-rsyncです。 rsyncコマンド知ってますか? 僕は知りませんでした(汗。ファイル群の同期を取る用途のコマンドです割と古くからあるみたいです。多くのUnix系環境にデフォルトで入っているようです。名前の通り、ファイルの同期を取るのがこのコマンドの仕事で、ローカル同士でもリモートともSCP経由などで同期を取れるようです。 詳しくはWikiで。 grunt-rsyncパッケージ rsyncwrapperというrsync用のパッケージを使用しているgrunt用タスクです。もっとシンプルにrsyncをラップしている grunt-rsync-2 というのも存在しますが、コピーに失敗してもがエラーが出なかったのでこちらの方がいいと思い
どれがこれであれがどれだ。なんか JavaScript の this について揉めてるらしいので燃料投下することにした。これで何度目だよチキショー。早いとこ学習しやがれ。 this は4種類もない this は1つだ。 「this はレシーバを指す」 これだけだ。 レシーバの指し方が複数ある 複数あるのはこっちだ。覚えておけ。 receiver.method() method.call(receiver) method.apply(receiver) method.bind(receiver)() new Constructor() 上4つは見たままだ。一番下は少し特殊だが、新しく生成されたオブジェクトがレシーバになる。以下の様なコードを思い浮かべるとわかりやすい。 function Constructor () {} var receiver = Object.create(Constr
Maybeモナド モナドが少し理解できるようになったので、JavaScriptでMaybeモナドを作ってみました。この記事で使われているソースはGitHubにあります。 使ってみる 上記のモナドを使ってみます。サンプルは id:kazu-yamamoto さんのMaybe モナドの秘密 - あどけない話を参考にさせていただきました。 次のように名前と親を格納したデーターがあるとします。Bobの親はDave、その親はSteve、その親はTonyです。Tonyの親は不明 (undefined) です。 // 親子を表すデーター var tony = { name: "Tony", parent: undefined }; var steve = { name: "Steve", parent: tony }; var dave = { name: "Dave", parent: steve};
最近 JavaScript の this キーワードについての記事をいくつか見かけて 「そういや自分も昔 this キーワードについて記事を書いたなー」 と思って 古い記事 を見返してみたのですが、関数呼び出しのことしか説明してなかったので改めて this キーワードの全般的な話を書いておこうかと思います。 本記事は ECMA-262 5.1th に基づいています。 初心者向けの this キーワードの使い方の指針を示しているわけでも JavaScript 処理系の実装の説明をしているわけでもなく、JavaScript 言語コアの仕様を説明していることに注意してください。 ECMA-262 5.1th : JavaScript の言語コア部分 (ECMAScript) の言語仕様 (バージョン 5.1) 初心者向けの this キーワード周りの指針 この記事の最後の 「まとめ」 に、自分が
爆速JSONPはJavaScriptのコーディングレスでJSONPで取得したデータを表示する処理を行うライブラリです。 去年くらいからのYahooはとりあえず何でも爆速をつけておこう的な雰囲気が感じられますが、ついにオープンソース・ソフトウェアまで爆速がつくようになりました。今回はJSONPを使った表示処理エンジンである爆速JSONPを紹介します。 サンプル。電力消費量を取得しています。 ソースです。取得したJSONデータをテンプレートとして当てはめています。 爆速JSONPはデータをJSONPを使って取得し、その結果を予め決められたテンプレートに埋め込んで表示する仕組みです。data-*要素を使っており、JavaScriptのコードを書かずに実装できてしまうのが利点です。 爆速JSONPはJavaScript製、MIT Licenseのオープンソース・ソフトウェアです。 MOONGIFT
var x = {}; console.log(x + 0 == x - 0) var x = []; console.log(x + 0 == x - 0) var x = (function(){}); console.log(x + 0 == x - 0) var x = null; console.log(x + 0 == x - 0) var x = undefined; console.log(x + 0 == x - 0) var x = Infinity; console.log(x + 0 == x - 0) var x = Array; console.log(x + 0 == x - 0) var x = 0; console.log(x + 0 == x - 0) var x = false; console.log(x + 0 == x - 0) var x =
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く