タグ

2013年12月30日のブックマーク (9件)

  • WEB+DB PRESS Vol.78に「フロントエンドの国際化」について書いた! - teppeis blog

    先週発売されたWEB+DB PRESS Vol.78のJavaScript連載にて、「フロントエンドの国際化」をテーマに記事を書きました! 内容はこんな感じです。 国際化の基 I18NとL10N ロケール タイムゾーン フロントエンドにおける国際化 メッセージリソースの管理 数値や日付のフォーマット CLDRとICU JavaScriptにおける文字コードの罠 JavaScriptにおけるタイムゾーンの罠 JavaScript国際化関連ライブラリ i18next Numeral.js Moment.js & Moment Timezone ECMAScript 6 Internationalization API 前半ではソフトウェアの国際化で使われる基概念と、最近のフロントエンド領域で国際化を行うときに課題となるポイントを解説しています。 中盤ではいくつかの定番ライブラリを紹介し、最

    WEB+DB PRESS Vol.78に「フロントエンドの国際化」について書いた! - teppeis blog
    teppeis
    teppeis 2013/12/30
    年末はWEB+DB PRESSを読もう!(ポエム付き)
  • JSX誕生秘話

    ※この記事は、JSX Advent Calendar 2013の一部です。 今日は12月24日、クリスマス・イヴです。それにちなんで、JSXがいかにして生まれたのか、というお話をしましょう。 元々は、2012年2月17日にさかのぼります。私は翔泳社開催の「Developers Summit 2012」の講演が終了し、登壇者の皆様と控え室で歓談しながら10周年コラボパーティの開場を待っておりました。そこでJenkinsの生みの親である川口耕介さんとお話をする機会がありまして、もう付き合いが20年近くになるんですかね、まあ会うたびにお互いに歯に衣を着せないで相手を容赦なくディスるんです。 で、そのとき私は川口さんに「お前まだJavaScriptなんて書いてんの?型がない言語を使うとか正気か?(意訳)」というツッコミを受けまして、もう完敗だったわけです…。 というわけでその場(控え室)で川口さん

    teppeis
    teppeis 2013/12/30
  • VagrantとSSDなVPS(Digital Ocean)で1時間1円の使い捨て高速サーバ環境を構築する - Glide Note

    今年の初めくらいから個人的な技術検証にはSSDで動作が速く、1時間1円で料金が安いのと ロケーションをSan Franciscoにするとsshでもレスポンスが悪くないので、全部Digital Oceanを使っている。(徳丸先生が紹介する前から使っていたんだ!) Digital OceanについてはRebuild: 2: Rails, Redis, VPS (Kenn Ejima)の42分くらいから言及されてます。必聴です。 使ってる旧型のMacBookAirみたいな貧弱なマシンだとローカルでVM動かすとファン回りまくりとかで泣きたくなるので、Digital Oceanだと泣かずに済んで快適。 そんで今日Vagrant経由でDigital Ocean利用すると、コマンドラインから必要なときに新規インスタンス(Droplet)作って、 検証終わったら削除という手軽な使い捨て高速サーバ環境が利用

  • プレースホルダー周りのセレクター

    フォームのプレースホルダー周りのセレクターは、今のところウェブ標準では:placeholder-shown擬似クラスとして定義されている。つまりプレースホルダー文字列が表示されているかどうかという状態を反映するもの。どうやらInternet Explorer 11はこれを踏襲した実装のようだ。対してChrome 31やFirefox 25では擬似要素として実装されており、プレースホルダーそのものを表現するセレクターになっている。できることはあまり変わらないのだけど、例えば背景画像の開始位置とかでズレが生じる。 以下のようなスタイルがあたっている入力ボックスにプレースホルダーが表示されているとする。 input[type="text"] { padding-left: 1em; } 左に1emの余白を取っているだけ。この場合、入力文字列は1emのところから表示されることになる。プレースホルダ

    プレースホルダー周りのセレクター
    teppeis
    teppeis 2013/12/30
  • ソフトウェアにうまい前提を与える - はこべにっき ♨

    ソフトウェア機能が、普通はユーザはこういう利用方法はしないだろう、という前提にもとづいて作られていることがある。 先日の経験を例に上げると、ちょっと理由があって自分のGmailの全メール一度にアーカイブ操作をしてみようとしたことがある。メールは8万件くらいあった。普通のユーザは一度に8万件もアーカイブ操作をしたりしないと思う。 実際に操作を実行してみたところ、「実行しています」というようなメッセージがしばらく表示された後、「リクエストの実行に問題が出ているようです」というようなメッセージが表示されてしまった。メッセージの内容は不安に感じるところがあったが、結果としては、すべてのメールがちゃんとアーカイブされため、大きな不満はなかった。 ユーザがこういうめちゃくちゃなことをすることは稀であり、一般的なリクエストのタイムアウトを過ぎたために、UIが問題を報告したのだと思う。実際にソフトウェアを

    ソフトウェアにうまい前提を与える - はこべにっき ♨
    teppeis
    teppeis 2013/12/30
    要求レベルとシステムの複雑性のバランス。前提条件の設定によるコントロール。それをスムーズに行うためのコミュニケーション環境。
  • cybozu.com security challenge 評価ポイントいただきました

    WEB系の情報セキュリティ関連の学習メモです。メモなので他情報のポインタだけ、とかの卑怯な記事もあります。 ※2020.9 注記:ブログの解説記事は内容が古くなっております。OWASP ZAPなどのソフトウェアの解説は現行バージョンの仕様から乖離している可能性があります。 このところmixiの脆弱性検査とcybozu.com security challengeをやっていたのですが、それぞれで成果が一応出たので書いてみます。 まずはcybozu.com security challengeのほう。 cybozu.com security challengeというのは、サイボウズのcybozu.com上の「kintone」というサービスなどに存在する脆弱性を見つけ出すことを競うコンテストで、賞金が高額だったりしたせいか、セキュリティ界隈の方々のtwitterで話題になっていました。 コンテ

  • 「作らない」開発 サイボウズkintoneを利用した新型スタイル - Qiita

    デザイン・操作性、そしてセキュリティ・・・と、昨今のWebシステムに求められるものは多く、自前で開発するのはますます大変、なにより高くつくようになってきています。 それらを「作らない」で、あるもの=クラウド上のサービスを利用して開発してしまおう、というのが今回のお話です。システム構成としては、フロントとしてクラウドサービスを使用しデータはAPIで連携するイメージです。 こうした開発のスタイルは、下記のようなメリットがあります。 開発者にとってのメリット 各種ブラウザ対応やセキュリティ対策といった、面倒だが手を抜けない部分を自前で開発しなくて済む サービス側で提供される機能は作る必要がないので、コアな機能の開発集中できる 画面の操作性やデザインといったところでもめなくて済む ユーザーにとってのメリット 実際動かせるものができるまでが、安い&速い 不要になったらすぐに辞められる(=必要な期間だ

    「作らない」開発 サイボウズkintoneを利用した新型スタイル - Qiita
  • 2013年、漫画ベスト30 - From The Inside

    今年も素晴らしい漫画がたくさん出ましたね。10作品に収まらなくて、最終的に30作品を並べることにしました。楽しい。2013年1月1日から2013年12月28日までに出版された単行から選出しています。では30位から。 30位 ▽ 武富健治『惨殺半島赤目村』(1) 『鈴木先生』の武富健治さんによる新作は、趣味全開っぽい「閉鎖的な村でのサスペンスもの」。都会からやってきた医師・三沢が、かつての観光開発の失敗を聞かされたり(朽ち果てた観覧車!)、村社会の困難に直面したり(住人が集まる居酒屋で「どうも」で挨拶を済ませたら「礼儀を知らん男やのう……」とか詰め寄られちゃう)、謎の事件に巻き込まれたり(子どもが崖に突き落とされたり行方不明になったり)、村の暗部っぽい風習を見つけちゃったり(隔絶された集落と、村営の娼婦小屋)しつつ、自らのサイコメトリー能力で真実に辿り着こうとするが……という正直なところ設

    2013年、漫画ベスト30 - From The Inside
  • EventEmitterの代わりにEventEmitter2を使う - from scratch

    このエントリをNode.js Advent Calendarにするか迷いましたが、Advent Calendarとしてはちょっとマニアックだったので、没になった方もアップします。ブログエントリの大掃除中です。 Node.jsを使うならEventEmitterを知っとくべし、という記事とかありますが、EventEmitter使ってるといくつか疑問に当たりますよね。 EventEmitterおさらい EventEmitterの基的な機能をおさらいしておくと、EventEmitterというのは、イベントという単位で処理を行えるようにするためのモジュールで、イベントの受発信を行うことで非同期プログラミングを行いやすくするもの。 emitでイベントを発行 onで発行したイベントを受信 removeListenerでイベントを消すことができる onceで一回だけイベントを受信することができる で、こ

    EventEmitterの代わりにEventEmitter2を使う - from scratch
    teppeis
    teppeis 2013/12/30
    ブラウザで使えるのかー。今度からこれにしよう。