タグ

ブックマーク / blog.katty.in (7)

  • JavaScriptの時刻の扱いが3倍くらい楽になるMoment.js

    JavaScriptの時刻オブジェクトといえばDateですが、扱いが少し面倒くさい場合があります。Moment.jsというライブラリを使うと、かなり楽になります。 Moment.js JavaScriptのDateオブジェクトと即変換できる Momentのオブジェクトは、いつでもJavaScriptのDateオブジェクトに変換できます。 moment().toDate(); 逆にJavaScriptのDateオブジェクトからMomentオブジェクトに変換するのも一発です。 moment(new Date()); 既存のシステムとの繋ぎの部分は、JavaScriptのDateオブジェクトに変換することで対応できるので、すぐにMomentを組み込み可能です。 フォーマットが柔軟 JavaScriptのDateオブジェクトは、文字列を引数に渡すと、パースしてくれるのですが、パース可能な文字列に制

    JavaScriptの時刻の扱いが3倍くらい楽になるMoment.js
  • UUIDはなぜ、分散環境で好き勝手に生成しても衝突しないのか。RFC4122規格とUUIDの性質。

    UUID の Version の見分け方 さきほどのPHPのプログラムは、パラメータにUUID_TYPE_RANDOMを渡しているので、バージョン4と思われます。 uuid_createのソースコードを覗いてみる ちょっと遊びの領域に突入しますが、uuid_createのソースコードを覗いてみます。一部を抜粋します。 /* {{{ proto string uuid_create([int uuid_type]) Generate a new UUID */ PHP_FUNCTION(uuid_create) { // ...(略)... do { uuid_t uuid; char uuid_str[37]; switch(uuid_type) { // ...(略)... case UUID_TYPE_DCE_RANDOM: uuid_generate_random(uuid); br

    UUIDはなぜ、分散環境で好き勝手に生成しても衝突しないのか。RFC4122規格とUUIDの性質。
  • 可視化ライブラリD3.jsの設計が素晴らしすぎる。 | 三度の飯とエレクトロン

    最近名前を聞くことが多くなってきたD3.jsを試してみています。 まだ使い始めたばかりですが、D3.jsの設計の素晴らしさに感動しています。 データを与えればグラフが表示されるというような単純なものではないので、敷居が高く感じていましたが、設計を知るほどによく出来ていて驚きます。 D3.jsとは何か? そもそも、D3.jsとはなんでしょう? D3.js – Data-Driven Documents D3.jsは、データをブラウザで可視化するためのライブラリです。 単なるグラフライブラリではなく、もっと抽象的な「可視化」を扱うのが特徴です。 抽象的なレイヤーを扱うので、ライブラリと言っても機能より設計が重要で、D3.jsが支持されている理由はその設計の素晴らしさにあります。実際に描画しながら、その設計の違いについて考えていきます。 企業の時価総額と営業利益の関係をプロット 例題として、企業

    可視化ライブラリD3.jsの設計が素晴らしすぎる。 | 三度の飯とエレクトロン
  • PHPを数行書きながらフレームワークを理解する

    フレームワークと強そうですが、ものすごく単純化して考えると、以下の1行に集約されます。 View(Action($_GET['url'])); これは何をしているかというと? どこにアクセスされているかを取得する。 ($_GET[‘url’]) 必要な処理を施す。 (Action) 処理の結果を表示する。 (View) どこにアクセスされているかを取得する 思い切って、.htaccessに次のように書いてしまいます。 RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] これは「どんなURLを叩いても全てindex.phpを呼ぶ」というものです。(そこに既にファイルが存在しなければ

    PHPを数行書きながらフレームワークを理解する
  • 広告業界と無関係な僕がさっぱり理解できないアドテク用語を調べた。

    厳密には無関係ということはないのですが、僕は直接的に広告に関連のある事業をやっているわけではありません。しかし、最近アドテクの世界が面白くて、基的なことから勉強しています。 インターネット広告はテクノロジーのかたまり インターネットはテクノロジーの世界です。そして、この世界でとても大きなお金を生んでいるのが広告です。 今をときめくGoogleもFacebookも広告で収益を上げている企業です。日でも同様にインターネット広告の市場規模はとても巨大で、1兆円程度とのことです。 必然的に、広告という世界には、インターネットの業界のテクノロジーが結集します。だから、技術的にも、とてもおもしろいです。 広告はどこからやってくるのか? 広告とは、これのことですよね。 そもそもは、これがどうして表示されるのか、というを調べていました。調べてみると、裏側にはとんでもない世界が広がっていました。 純広告

    広告業界と無関係な僕がさっぱり理解できないアドテク用語を調べた。
  • プログラマが考える劇的に効率が上がるExcelシートの作り方

    そこそこの複雑な計算をするのにExcelはものすごく便利です。何かのプログラミング言語を使って書いたら1時間くらいかかるような計算が、ものの数分でシート上にできあがります。 この素晴らしいExcelを、より使いやすくするワザを、プログラマ的な視点から書きたいと思います。 拡張性のないシート そういうわけで、Excelは素晴らしいんですが、使う人によってはなんとも「拡張性のないシート」ができあがります。 僕はプログラマなので、こういう素晴らしいツールを使いはじめると、どうしても拡張性とか保守性みたいなものが気になってしまいます。プログラマは同じことを繰り返すのが苦手です。シートにデータを入力してから完成形ができあがるまでに人手を使うことを避けて、全部を自動化したくなります。 次のようなことをしていたら、Excelを正しく使えていないような気がします。 途中で電卓を使って計算してセルを埋めてい

    プログラマが考える劇的に効率が上がるExcelシートの作り方
  • WEB APIのURL設計のトレンドはこれだ!WEB APIのURL設計まとめ

    APIのURL設計をしようと思い、その前に有名サービスのAPIのURL設計がどうなっているのかについて調べました。 一覧を載せた後に、「多数派なURL設計」を書きたいと思います。

    WEB APIのURL設計のトレンドはこれだ!WEB APIのURL設計まとめ
  • 1