タグ

ブックマーク / mizchi.hatenablog.com (10)

  • Swift ファーストインプレッション - mizchi's blog

    とりあえずThe Swift Programming Language読んで、実際に自分で少し書いてみた感想。 諸事情でAppleにiOSデベロッパーとしてお布施していたので Xcode6beta落として少し書いてみた。プロジェクトスケルトンをswiftで生成できるので、そのコードを眺めたりしていた。 ファーストインプレッション Immutable脳の人が設計したっぽい。 スクリプト言語っぽい構文に、型注釈。これはGoとシンタックス上の設計思想が似ているんだと思う。 基的にImmutableな設計でありながら、オブジェクト指向を採用しており、Scalaっぽいマルチパラダイム感がある。Scalaの人は好きになりそう。 型推論のおかげで動的型付け言語触ってきた人にも抵抗がない感じになってる。推論のおかげで静的型付け言語が動的型っぽくみえるのはHaskellとかOCaml方面の雰囲気。 LLV

    Swift ファーストインプレッション - mizchi's blog
    idejunp
    idejunp 2014/06/03
  • 読者最適化し過ぎるとポルノを書いてる気分になる - mizchi's blog

    こういう言い方はちょっと傲慢なんだけど、最近は記事の中身より、mizchiっていう名前のほうが先行してしまい、何書いてもバズってしまって拡散される傾向がある気がしている。 セルフブランディングの成果といえばそうなんだけども、最近は敢えて推敲せず適当な文体で読みにくくしたり、トレーサビリティを落としてソーシャル避けしたところで、コンテンツを投下していることがある。それによってバイアスのないコンテンツ評価をみようとしている。 pplog とか、昨日の 気づいたらプログラマになってた話 とか。 次の記事書いたら消えるpplogにブクマつける人とかいたり、bespoke.jsで生成したスライドはスライド毎のパーマリンクごとにブクマが分散して伸びにくかったりした。bespoke.jsについては結果論だけど 書き手は読者によって強化学習される エンジニアに向けた記事は読者のレベルからか自浄性が高く、ど

    読者最適化し過ぎるとポルノを書いてる気分になる - mizchi's blog
    idejunp
    idejunp 2014/03/31
  • なぜクライアントJavaScriptの単体テストを書くのが難しいか、考えてみた - mizchi's blog

    ってsinonのスタブ漏れを探しながら何度目かわからない感じにキレてた。 とにかく仕事でJSのテスト書くのが辛いので考えてみる。比較的JSのテストに慣れてる自分ですら辛いのだから、世界はもっと辛いに間違いない。サーバーサイドのnode.jsの話ではない。 JavaScriptで完結しない 構造がHTMLの構造と密結合している。装飾や位置、表示/非表示はCSSによって制御されている。 クライアントJSはHTMLと密結合しており、CSSからビューは影響を受ける。それらがネットワークの結果を受け非同期に振る舞いを帰る。その最終的な値を取得するのが難しい。 もちろんサーバーサイドだってDBやネットワークという外部リソースを扱うが、モックの手法が確立しているし、局所的な複雑度は、JSの方がはるかに多い。 言語仕様が貧弱 mochaやjsmineはrspecを真似てるけど、質的にJavaScript

    なぜクライアントJavaScriptの単体テストを書くのが難しいか、考えてみた - mizchi's blog
    idejunp
    idejunp 2014/02/04
  • 「CoffeeScriptの関数は明示的にreturnしてはいけない理由」を探す暇あったら他にやるべきことあるのでは? - mizchi's blog

    CoffeeScriptの関数は明示的にreturnするべき | CreativeStyle 当に遅いのか、それを確かめましょう。 適当にでっちあげたコードです f1 = -> for i in [1, 2, 3] for j in [4, 5, 6] i + j f2 = -> for i in [1, 2, 3] for j in [4, 5, 6] i + j return console.time "f1" for i in [1..100000] then f1() console.timeEnd "f1" console.time "f2" for i in [1..100000] then f2() console.timeEnd "f2" 実行してみます $ coffee hoge.coffee f1: 105ms f2: 4ms 約26倍違う、ということがわかります。

    「CoffeeScriptの関数は明示的にreturnしてはいけない理由」を探す暇あったら他にやるべきことあるのでは? - mizchi's blog
    idejunp
    idejunp 2013/12/16
  • サブカルとインターネットと教養主義と反知性主義 - mizchi's blog

    大人になるにつれ文化的な教養に対してある種の精神的成熟を要求されるようになる圧力なんとなく感じてて、面倒なんだけど自分も他人に対してそういうの要求している気がしているし、自分に対して自分は要求を満たしていないという不満があり、いろいろ面倒臭い感じになってる— もっと大きな存在の一部 (@mizchi) 2013, 11月 23 サブカル界隈って地元の文化的な圧力から逃げ出してきた人が多いと思うんだけど、「良い大人はJ-POPなんか聞かない。クラブミュージックを抑えてて当たり前」みたいな雰囲気を彼ら自身が作ってしまっており、音楽嫌いじゃないが深く掘ることを諦めてつべランダム再生してるような自分は知識がない— もっと大きな存在の一部 (@mizchi) 2013, 11月 23 会話である種の文化を要求されて、それに応えられないと落胆させてしまうのである程度は応えたいと思うんだけど、ある程

    サブカルとインターネットと教養主義と反知性主義 - mizchi's blog
    idejunp
    idejunp 2013/11/28
  • ウェブエンジニアの生存戦略 - mizchi's blog

    最近、この話題について経営者目線の話が多かったので、エンジニアのスキル獲得戦略とその最大化という観点から話をする。 まず目下のウェブエンジニアとして一番の課題は、「35歳定年説をどう乗り切るか」、ということだろう。もちろん、みんな35歳定年説なんてのが、まやかしであるとはわかっている。若い業界だったウェブ業界も成立してからだいぶ経ち、結果として平均年齢が押し上げられ、自然と35歳以上のエンジニアも増えてきた。 問題は、人月という概念によって、できる人間とそうでない人間の区別がされていないことだ。ウェブエンジニアとしての悲哀や業界の歪みはここにあると思う。下手に謙遜したりして話をややこしくする前に言ってしまうと、自分をできる側の人間として話をする。 生産性を測る確固としたメトリクスがないのも事実だと思うが、すくなくとも熟達した人間と未経験者がおなじ1人月というのは、到底ありえない話だと思う。

    ウェブエンジニアの生存戦略 - mizchi's blog
    idejunp
    idejunp 2013/11/10
  • すごいおっさん as a service - mizchi's blog

    小学生の時、自分が女の子殴ったとかそんな理由で学級会開かれて(実際は意図せず箒の柄があたっただけなんだけど)、バカらしくなって自分では仏頂面決め込んだつもりでいたら、ニヤニヤしてんなふざけんな!って言われて教師に思いっきりぶん殴られたことある— 性格は糞 (@mizchi) 2013, 10月 9 意図せず箒の柄があたったのを被害妄想で殴られたと思ってしまういじめられがちな女子と、意図せず当たったという主張が認められない程度には教師に信頼されてない生徒だったので、学級会悲惨だった— 性格は糞 (@mizchi) 2013, 10月 9 素行が悪いのは事実だったけど仏頂面のつもりが笑ってるつもりに見えるのはだいぶ面倒アレだなと思ったけどたぶん25になっても何か考えてる時は常にニヤニヤしてるらしいので全く直ってない— 性格は糞 (@mizchi) 2013, 10月 9 教師に対する不信、小6

    すごいおっさん as a service - mizchi's blog
    idejunp
    idejunp 2013/10/15
  • 世の中のHTML5アプリケーションが糞だから、俺が「初期化」の作り方を教えてやんよ - mizchi's blog

    2chまとめみたいなタイトルにしてみた。(してみたかった) HTML5のアーキテクチャと初期化とキャッシュの考え方が、「ウェブエンジニア」は当に出来てない。 とくにソシャゲをウェブビューに貼ってスマホ対応しました系。当にダメ。 じゃあどうするか?基的に「初期化」の考え方を直せばどうにかなる。 (この記事はBackboneを使うときに考えてることだけど、他でも一緒だと思う) 前提 シングルページアプリケーション セマンティクスやSEOは考慮しない 基哲学 共通モデルの初期化を徹底的に行う サーバーにリクエストを投げるのは最小限 クライアントでサーバーモデルのキャッシュを作り、更新が期待されるまで再取得しない 理由 いくらDOMの最適化したところでUXに影響が大きいのはサーバーリクエスト(200~2000ms)で、プログラミング段階で辛さがあつまるのは非同期処理の部分。 プログラマとし

    世の中のHTML5アプリケーションが糞だから、俺が「初期化」の作り方を教えてやんよ - mizchi's blog
    idejunp
    idejunp 2013/09/27
  • ソースコード上の主語は誰か、という話 - mizchi's blog

    ふとTwitterで投げたらリプライたくさんきた これ素朴な質問なんだけど、ソースコードで英語でコメント書くとき、守護はIなのかWeなのかコードそのもので受動態で書くのか、どっちなの— 性格は糞 (@mizchi) 2013, 9月 23 @mizchi 一行目は主語無し(命令形)、長い説明をつける場合は 1.言い訳がましいコメントは I を主語に 2. 誰かと合意済みの事柄は We を主語に 3. 仕様に沿う振る舞いに変更する場合は It should be ~ などコード自体が主語であるように、と書いてる— Kensuke Nagae (@kyanny) 2013, 9月 23 @mizchi "add …": このコードは…を足します、"added …" このコードは…で足されました、"adding …" このコードは…を足しています— 中村氏 (@r7kamura) 2013, 9

    ソースコード上の主語は誰か、という話 - mizchi's blog
    idejunp
    idejunp 2013/09/24
  • Web系エンジニア1年半ですが、このたびは転職する運びとなりまして、各位に連絡させていただきます - mizchi's blog

    みんなが好きな転職エントリです。 mizchiくんのフォロー/フォロワー傾向を見張っているが、そんな古典的な手段が通じるかとばかりにガードされている— mala (@bulkneets) 2013, 9月 5 8月で株式会社Aimingを退職し、9月からQuipperに転職しました。 Quipper Quipperは端的に言うと教育ベンチャーです。自分で紹介するのもアレなのでググってください。ロンドン30人、日20人ぐらいの会社です。 ちょうどいいのでブログも http://d.hatena.ne.jp/mizchi/ からはてなブログへ引っ越しますね。 転職理由 前職で色々としがらみを感じるようになって不満を感じていたところ、自分が気になっていたエンジニアが続々とQuipperに入社しているのを観測していて、気になっていました。 で、@kyanny こと刺し身ブーメランさんに連絡をとっ

    idejunp
    idejunp 2013/09/07
  • 1