History API

適当にhistory#pushStateとhistory#replaceStateとonpopstateイベントを試した。
しばらく使ってなかったけど、generator-prototyping便利かも。

を何回か読み直したらだいたい理解出来た気がする。
どうせ自分でSPAのページ作るなり、実践しないと覚えられないし理解できないんだし、とりあえず今は何となく理解できた感じで良しとしておくのが一番なのかな。

普通の日記

風邪引いてる。のどをやられた後に、鼻をやられた。今は大分良くなって来た。はやく夏になってほしい。


あと最近ちょっと忙しい。忙しい……というよりかは、やりたいことが多すぎて手が回らない、と言った方が正しいかもしれない。
でも、おかげで計画とかあまりしないタイプ(趣味ではね)なのだけど、計画を立てないとどうにも先に進まないことがわかってるので計画を立てるようになった。
遅々としながらも一応進んでいるような気がしてる。……ような気がしてる?振り返りも必要なのかも。

最近のこととか

新年おめでとうございます、から一週間も経つのに何も記事を書かないのもどうなのかなーと普通の日記のようなものを書いておく。

Redis入門 インメモリKVSによる高速データ管理

Redis入門 インメモリKVSによる高速データ管理

Redis入門 インメモリKVSによる高速データ管理

買った……けど読んでない。今更ながらRedisちゃんと使えるようになりたいなーと。
WebSocketと相性抜群だと思うのだけど、今更WebSocketってなんか遅すぎというかなんというか。
とはいえリアルタイムウェブとか言われてるけど正直自分も含めて使い道に困ってる感があるというか。

Media Queries

iPad mini Retinaを買ったのだけど、それで自分のサイトを見たらデザイン崩れまくりでがっかりした……
なのでMedia Queriesを駆使してなんとかレスポンシブでなくても良いのだけどいい感じにしていきたい。
とはいえlinkタグのmedia属性に書くくらいしかしてこなかったので、ちゃんとMedia Queriesを勉強しようかと。
でもちょっと調べた感じだとやっぱり基礎的なCSSに関する知識が必要な感じなのでそこを鍛えることが一番なんだろうなあ。

Starry de utauyo

https://soundcloud.com/catsyama/starry-de-utauyo-capsule-x
今のお気に入り。

12月のまとめと今年のまとめ

12月も2013年も、今日で終わり。2013年最後のまとめ。

12月のまとめ

  • HTML5 Conference 2013に行ってきた
  • Node.js Advent Calendar 3日目を書いた
  • はてなエンジニアブロガー祭りに行ってきた
  • CodeIQ / 「名簿の並べ替えをやってみよう」を解いた
  • マスタリングnginxを読んだ

今月は勉強会が多かったかな?と言っても2つなのだけど。

  • リリースしたもの
    • cookie.js
    • alternate-stylesheets.js

以前作っていたstylesheetselector.jsというライブラリにあったクラスを、それぞれに分離させただけなのだけど……
cookie.jsがちゃんとした作りでないので、リファクタリングしたい。
それとalternate-stylesheet"s".jsがbowerに登録した後に気になった。なんで"s"付けたんだろう。

2013年のまとめ

今年は本厄でした。でもその割には悪いことは2つくらいしか思い当たらないし、良いことの方が多かったかなと思います。白山さまにお祓いしてもらったおかげ?
風呂場で転んで眉間を打って出血大サービスしたりとか、PHPソースコードを読んで調査してたら趣味呼ばわりされたりとか、奇数回・偶数回で意見が正反対になる意味の分からないコードレビューとか、社内コード規約でswitch文を禁止されたりとか、無名関数を直接引数に渡すとコードが読みにくいから一度変数に入れろと言われたりとか、ユニットテストのテストケースの内容をすべてExcelに書き直すとか、それくらいでしょうか。
風呂場で転んだ以外に関しては、「ああ、もうここに居てはいけないんだな」と思って行動するきっかけとなったので、それぞれの事柄は良くなかったにしても、結果的には良かったのかなあと。


今年の前半は、とにかくモノを作ろうとしていた気がします。というのも、

表に出さなければ、あなた以外の人にそれは存在しないも同じだからだ。

404 Blog Not Found:Don't be shy and show your code - 紹介 - Webサービスのつくり方

がずっと頭に残っていたからというか……
確か来年でプログラミングを初めて10年になるのだけど、長くプログラミングをしている割には特に何も残せていないので、そろそろモノを残したいと思っていたり、これまで以上にいろんな人に認知してもらいたいと思っていて。
モノを残すにしても、いきなり大きなものは作れないだろうから、小さいものを少しずつ作っていきたいなあと思っていたら、npmモジュールがいくつかできました。いくつかは思っていたよりも使ってもらえてるみたいなので、まあ良かったかなと思うのでした。
来年はもっと大きなものを、ライブラリでなくてアプリケーションとか、サービスとかを作っていきたいものです。


今年の後半は、転職に向けてバタバタしてたのと、勉強会に出てたというのと、割と仕事が忙しかった記憶しかなくて。
初めての転職と、初めての引っ越しと。実家から出たのは……二回目かな。いずれも一人暮らしではないわけだけど。

Grunt

今年の6月くらいまでは全然使えなかったのだけど、出来るだけ使うようにしたらいつの間にか手放せなくなってた。
デファクトスタンダードになっていってるし、これからは使うだけでなくてプラグインを作る側になりたいかも。

Jade, Stylus

今年、意外と使った!特にJadeはお仕事でもかなり活躍してる。
でもまだまだ使いこなせてなかったりする。来年も使っていくだろうし、慣れていきたいなー。

npm

上にも書いた通り、いろいろモジュールを登録したりした。

CodeIQ

去年の冬くらいからしばらく使ってなかったのだけど、気まぐれに使ってみたらあれよあれよという間に上京することに……
でもまあ、なんだかよくわからないJavaPHPを書き続けるよりも、周囲に期待されながらJavaScript書いてた方がいいから良かったかも。
忙しいけど、前よりは充実してるし、やりたいことは大体できてるし、来年も良い環境のまま続いてることを祈る。


そういえばpaizaはJavaScript対応はまだなのかな?
PHPJavaは正直もう書きたくないし、Rubyはちょっとしか書けないし、PythonPerlC++は書けないし。CとC#はバリバリ書ける訳でもないし。
JavaScriptばっかり書いてないで、他の言語も触れってことなのかも。でもJavaScriptの次に触りたいのはGo言語かJSXかTypeScriptなのでどれも書けないね……

Qiita

細かいTipsみたいなことはQiitaに書くことにした。そのせいもあり、はてなダイアリーの更新が減った気もするのだけど……
でも面倒で放置した記事とかもあったので、なんとか書き溜めたりしていけば両方とも良い感じに使っていけるんじゃないかなーと希望的観測。

まとめ?

まとまってない気がするけど、年末でいろいろ忙しいからしょうがないということにしてこの辺で終わり。
来年はモノを作るのもの大事だけど、今までみたく記事を書き残していきたいなあと思うのでした。
あと料理できるようになりたい(これは今年の目標だったのだけど……)のと、そろそろ彼女が欲しいかも。

マスタリングnginx

マスタリングNginx

マスタリングNginx

を読みました。


普段、よく使っている訳ではないのでさっぱりわからず……
でもまあ、設定に関しては詳しく書いてあるので、使うようになったらとても重宝するのではないかなーと思います。
正直、nginxを使う必要にかられている訳ではないので(たまにローカルプロキシとして使ってるくらい)今は特によいかなと……
httpdが欲しくなったらnode.jsで書くか、mongoose httpdとか使うような気がします。

名簿の並べ替えをやってみよう

https://codeiq.jp/ace/yanai_masakazu/q528
実行速度とか考えずに、パッパっと書いたコードです。

function yourCode(obj, key) {
  // 漢字と読みのペアを読みでソートします
  var pairs = getPairs_(obj.kannji, obj.yomi).sort(function(a, b) {
    return a.yomi > b.yomi;
  });

  // ソートしたペアの配列から漢字と読みを
  // それぞれの配列にして返します
  return {
    kannji: pairs.map(function(value) {
      return value.kannji;
    }),
    yomi: pairs.map(function(value) {
      return value.yomi;
    })
  };

  // 2つの配列から同じ添字の値を
  // ペアとした配列を生成して返します
  function getPairs_(kannjiArray, yomiArray) {
    var result = [],
        i;

    // 配列の長さが異なっていた場合は例外をスローします
    if (kannjiArray.length !== yomiArray.length) {
      throw new RangeError('array length not to match');
    }

    i = kannjiArray.length;

    while (i--) {
      result.unshift({
        kannji: kannjiArray[i],
        yomi: yomiArray[i]
      });
    }

    return result;
  }
}

はてなエンジニアブロガー祭りに行ってきたよ

はてなエンジニアブロガー祭りに行ってきました。
確か申し込み締め切りの二日前くらいにこのイベントのことを知って、駄目だろうなーとは思いつつ最近ピザ食べてないしタダメシだし、と応募したら当たってしまったので行ってきました。はてなさんどういう抽選したんですか……
場所はMicrosoft品川本社で、6月にあったRubyHiroba 2013の会場の場所だった気がします。確か。半年前のことだけどもう覚えてない。


ハッシュタグは「#エンジニアブロガー祭り」で、これをブログのタイトルか記事に書いておくと、はてなさんがエゴサーチして(?)まとめてくれるそうです。と言っていた気がします。


以下はメモしたもの。意味不明でも気にしない。

エンジニアが今すぐはてなブログを使う10の理由 / id:onishi

高速にドッグフードを食べる方法 / id:hitode909

  • 長い話が苦手
  • LT 5連発のような内容
  • ドッグフードについて
    • 日々のドッグフード感
  • ドッグフーディング
    • ブログ継続期間767日
  • 毎週リリース + 告知
    • めでたさ
    • ええやん
    • みんな食べましょう
  • 高速にドッグフードを食べる風景
    • はてなスター
    • 使いにくいところを自分たちでより良くできる
    • 見たまま編集
      • ユーザの大半は見たまま編集
      • スタッフははてな記法で書いていた
      • 見たまま編集では出来ないことが多い
      • 見たまま編集を常用することにした
    • 結果
      • 画像リサイズが付いた
      • 引用ボタンが付いた
    • ドッグフードを効率よく食べよう
  • 新たなドッグフードを作る様子
  • カテゴリ編集
  • テスト
    • Jenkins
    • 全ブランチテスト
    • 並列化
  • devhost
    • ブランチ毎のホストを立てる仕組み
    • スタッフが見たときだけ機能が増える
  • ドッグフードを支える情報収集
    • 知りたい
      • 要望
      • 感想
      • 不具合
        • 教えてもらう
        • エラー出るの見てる
    • エゴサーチ
    • エラーログ
      • 結構収集している
    • クリックを観察する
      • 行動を観察する
      • Kibanaを使っていたり
  • ドッグフードを支える画像フォーマット
    • Gyazo GIF
      • 機能追加してどんな風になったかGIFで見せる
    • めでたさを伝える
  • 質問
    • 機能改善を挙げた人と実装者は同じなのか?
    • 社員でドッグフーディングすると慣れていくが対策などは?
      • 社員の行動の方を変える
      • 元々日記を書いていなかったが、開発するようになってはてなブログを使うようになった

休憩

フリードリンクで紅茶花伝もらった。一番人気だったようで、帰り際に見たときは無くなってた。

ブログとエンジニアと私

自己紹介
  • id:a666666
    • 2006年くらいから使っている
    • Quipper
  • id:shu223
    • iOS開発者
    • 今年から個人的なことも書き始めた
      • 昔の苦労話とか
    • 去年までカヤック
      • 今はAppSocially
ブログを始めたきっかけ
  • id:shu223
    • カヤック時代
    • 技術力が全くない
    • マネージャに行かずにプレーヤとして行きたいと先輩に話した
      • 「ブログでも始めてみたら」と言われ嫌々始めた
    • モヒカンが怖かった
    • 三ヶ月毎日書いた
      • 反応されないように誰もいないところで記事を書いた
    • 三ヶ月後からは自信がついてきて怖さもなくなった
  • id:a666666
ブログの書き方・いつ書いていたのか
  • id:a666666
    • 帰って寝る前に書く
    • 三時間くらい経っていたりする
    • 一人の時間に
  • id:shu223
    • iOS7リリース時とか、本を出したときとか、
    • 予定として記事を書く時間をとったりとか
    • タイミングをとっている
    • お蔵入りになる記事もかなり多い
  • id:a666666
    • 書いたら公開せずにはいられない
+ id:hyoshiok + id:t-wada
長く書き続けることのメリット
  • id:t-wada
    • 昔の自分を見れる
    • そのとき自分が考えていたことが残る
  • id:hyoshiok
    • 読者は誰か?
    • 自分
    • マサカリが飛んでこない程度に
  • id:shu223
    • 前職を辞めた理由
      • 海外で働きたいから
    • ブログに海外で働きたいと書いた
    • 海外で起業する日本人に声をかけてもらった
    • 界隈の有名人に「ブログ読んでます」と言われる
    • 本を書くお話をもらったりとか
  • id:a666666
    • 転職の時に「刺身の人ね」的な
    • レジュメとか書く必要がない
    • 英語で記事を書いている理由
      • Quipperはロンドンで起業された
      • どこで読まれるのかわからない
      • 情報発信を意識しているものは英語で
  • id:hyoshiok
    • 英語使わないと英語力下がる
    • 社内のSNSは英語で書いている
    • プレゼンテーションのパワポは英語
  • id:t-wada
    • Agailに関することとか
  1. いろいろなオファーが来るようになった
  2. オファーのための資料を書く
  3. 発表後に資料をブログに書く
  4. 編集者などがその記事を読む
  5. ループ
  • いろいろな人にブログを見られるので思ったことが書けなくなる
  • 裏ブログがある
    • 厳格なルールで書いている
    • 飲んで記憶を失った次の日の朝、一行だけ書く
  • id:a666666
    • 裏ブログがある
    • 非公開ではないので探せば出てくる
    • 日記と奥さんへの愚痴
    • メインの読者は奥さん
  • id:shu223
    • メイン以外に2つくらいある
質問

感想とか

id:hitode909さんの発表の「めでたさ」とか「ええやん」などの表現がとても面白かった上に、発表としてはとてもまともでためになるものだったのがすごいなーと思ったりした。
東京Node学園祭2013の時もほろよいがあって、今回も少ないながらもほろよいがあって助かった。ビール苦くて苦手。ほろよい広めていってほしい。はてなブログPro一年コース契約のid:nisemono_san / @eseharaさんもほろよいを飲んでた。
去年まで割と記事を書いていた(つもり)一方で、モノを残せていなかったので今年はモノを作ることに注力していたのだけど、そのせいで記事が全然書けていなかったりした。で、モノを残すのも良いのだけどやっぱり程よく記事も書いた方が良いよなあとは思っていて、今回のイベントで再認識させられたというか。
技術ネタ以外のことも書いていたりするけれど、どちらかと言えば技術ネタの割合が多くなるようにしたいのだけど。そもそも更新が少ないのはなんかちょっと、と思ってきたので普段の生活のことでも書こうかな。
という感じ。とかいろいろ書いておいて、tumblrに引っ越そうとか、自作の静的ブログツール作ろうとか考えてたりする。いずれにせよエンジニアにとって(エンジニアでなくても?)記事書くのは大事な感じする。とかテキトーなこと書いておく。
あ、あとwifi用意されてなかったのだけど、WiMAXで「着た」とツイートしたあとから人が増えてモバイルルータも増えたせいなのか、WiMAXつながらなくなったので全くインターネットできなくてつらかった。wifi欲しかった。