Developers summit 2012 1日目 参加メモ その2

[16-C-5] JavaScript 最新事情 - 開発者なら知っておきたい次世代 JavaScript - (浅井 智也 氏)

2012/02/16 デブサミ2012【16-C-5】JavaScript 最新事情 - 開発者なら知っておきたい次世代 JavaScript - #devsumiC

ECMAScript 5th
IE9以降でサポート

後方互換スクリプト

  • Augment.js
  • ddr-ecma5
  • es5-shim

Native JSON

  • IE8+、その他広くサポート

Array Extra

  • 配列操作メソッドを追加
  • IE6〜8 Augment.jsで後方互換

Function.prototype.bind

Strict Mode

  • よくあるミスをエラーとして検出
  • IE9未サポート
    • 頭に "use strict" と書けばよい
    • 関数単位でも利用できる
    • with使用禁止
    • arguments.caller/callee使用禁止

Getter & Setter

seal & freeze

  • オブジェクトを静的に
    • 間違って書き換えることを禁止
  • seal : 代入は可能、プロパティ追加は禁止
  • freeze : 代入、追加禁止

about:ECMAScript 5th

ECMAScript 6th
目標

  • より書きやすい言語
  • テスト可能な仕様へ
  • 相互運用性を向上
  • バージョニングは単純に
  • 静的検証も可能に

現時点ではFirefoxChromeが一部だけ実装。

後方互換スクリプト

  • es6-shim

Simple Maps

  • 他の言語にもあるMap
  • Firefox12+, Chrome18+

Simple Set

  • 他の言語にもあるSet
  • Firefox12+, Chrome18+

Weak Maps

  • GCを制御するためのもの

Proxy

const,let & Block Scope

  • constで逆に遅くなることもある

Destructuring(分割代入)

for-ofループ

  • 配列の要素をとるループ

Typed Array

  • 型固定配列で高速数値演算
  • IE9非サポート

JavaScript.Future


[16-A-6] いまどきのi18nのはなし (藤本 真樹 氏)

2012/02/16 デブサミ2012【16-A-6】いまどきのi18nのはなし #devsumiA

いまこそi18nな理由

  • SmartPhoneではFeaturePhoneとは異なり、世界中で利用される/利用できる

What's i18n

  • 国際化(i18n):ソフトウェアから言語ないし文化に固有な特性やエンコーディングに依存する部分を切り離す(一つのバイナリ/アプリケーショニンスタンスで複数言語の切り替えができる)
  • 地域化(l10n):地域固有の構成部分や翻訳テキストを追加することによって、ソフトウェアを特定の地域や文化に対応させる

Codes/Encodings

  • NFC/NFD...
  • 絵文字

Environment/OS

Standards

  • BCP 47(RFC 5646) - 言語タグ

Word Order

  • 語順が言語によって変わってくる

Locales

  • Number format
  • 書式と元号

Layouts

  • 言語により表示幅は当然異なる

Other Fromats

  • 画像のボタンとか…

JavaScript, CSS...

  • JavaScript
    • jAlert("alerts in English")
    • サーバサイドでMessageFormat?
    • キャッシュされたり
    • ユーザの言語切り替えがあったり

Bi-Di

  • 4億人/世界5位 なので対応しなくてはならない
  • レイアウトも逆

Collation

  • sortがめんどい

Currency

  • どちらかというとProduct, Businessの話
  • 地域によるARPUの違い

Formats
数値以外にも

  • 複数形
  • 住所フォーマット
  • 電話番号
  • etc

Timezone

Culture

  • 宗教
    • 国別のFeature Flagで対応することが多いらしい

Politics

  • 世界には何か国存在する?

Legal

  • 国によって法律が違う
    • 「成人」の扱い
    • 個人情報の扱い
    • コンテンツ監査

How to i18n
Basics

  • Message Format w/ ICU
  • UTF-8
  • TimezoneはUTC(サーバなど)
    • MySQLならDateよりはDatetime
    • 表示はClientでJSで調整するのが主流かも(Google Closureにすてきなライブラリが)

Desirable

  • Feature Flag
  • IP Geolocation
  • And Bi-Di...

Source Code

  • Replace Japanese literals w/ MessageFormatter, etc

Temlates

  • Just adding encoding conversion filter will work

RDBMS(MySQL)

  • Incremental Update


[16-A-7] あの人の自分戦略を聞きたい! (和田 卓人 氏 / 小泉 守義 氏 / 市谷 聡啓 氏 / 倉貫 義人 氏 / 川口 耕介 氏 / 高橋 征義 氏 / bleis-tift 氏 / 高井 直人 氏)

2012/02/16 デブサミ2012【16-A-7】あの人の自分戦略を聞きたい! #devsumiA

私と自分戦略 (クックパッド 高井 直人 氏)

時代背景を認識したうえで、自分の理想を実現するためにセルフブランディングする

自分戦略のための3つのポイント
1. シンプルに時代をとらえる
- ムーアの法則
- 人口オーナス:日本の競争力は低下し、市場はシュリンクしていく

業務システムとインターネットサービスの重なり合う領域が今後の成長分野
業務システムおよび関連する受託開発はなくなる

2. 理想を管理する

  • ダイエットのコツ
    • 目標を設定する
    • 体重そのものではなく、傾きを管理する

理想について考える

  • どういう社会になってほしいのか
  • 家族や友人の幸福にどうやったら寄与するのか
  • 自分の能力を使ってできることは何か

傾きを管理する

  • 今の仕事を積み重ねることで理想に近づけるか

3.セルフブランディング

  • 実力を価値ある状態にすること

希少性

  • 数が少ないものは価値が高い
  • 時代背景を認識したうえで…

自分戦略しましょうか (bleis-tift 氏)

その1. 自分の好きなことを見つけ、それに結びつける
- 単純に、好きじゃないと続かない
その2. 学び続ける姿勢
その3. アウトプットする
- アウトプットするとインプットの量も増え、質も上がる
- 反応をもらったり、誤解を訂正してもらえる
- アウトプットするだけでなく、アウトプットを広める

アウトプットはさらなるインプットと、さらなるアウトプットを引き起こす

わたしの自分戦略 (高橋 征義 氏)
技術は目的ではなく手段
とはいえ技術力重要

  • コード読んだり
  • 本読んだり

つじつまをあわせる
終わりよければすべてよし

あのひとの自分戦略を聞きたい (川口 耕介 氏)

失敗には理由があるが成功には理由がない

  • 匿名 -1
  • サービス公開 -1
  • 英語 +1

オーナーシップとスタートアップとビジネスガーデンについて (倉貫 義人 氏)

ビジョン

  • 顧客企業の真のパートナーとして価値を提供し続ける
  • プログラマを一生の仕事にする、高みを目指し続ける
  • いつまでも、いつからでも夢に挑戦できる社会にする

ガラパゴスなキャリア戦略

  • 自分を取り巻く環境も自分の価値
  • 自分にしか駅内価値を見つける
  • 正々堂々と社外活動をする

オーナーシップ

  • 会社と自分を対等に考える

月と、戦略 (市谷 聡啓 氏)
自分の特定の目標のために自分を運用する

主観によって世界が変わる

人生の節目に現れる人がいる

小泉 守義 氏
過学習」「局所解」に陥ると生き残れない

自分の立ち位置をベンチマークする

世界を知る

複数の見方を覚える
多くの人と話をする
プロトコルを覚える

そしてそれを楽しむ