タグ

ブックマーク / www.kaoriya.net (5)

  • 2021年後半の自作キーボードの歩み — KaoriYa

    自作キーボードを始めてちょうど1年。 前回の報告より約7か月。 その遍歴を振り返ってみたいと思います。 はじめに 2020年12月3日の夜中に人生初の自作キーボードに組み立て始めました。 そのまま徹夜をしてちょうど1年前の今日12月4日に自分だけのErgoDashを手にしました。 (前回の記事参照) 怒涛の如くキーボードを組み立てたことを紹介した前回の報告記事から約7か月間、 私が何をやっていたのかダイジェストで振り返ってみます。 そして記事の終盤にはコミックマーケット99における頒布物の宣伝があります。 4月下旬~5月上旬 まず何と言ってもその後HHKBを置き換えて常用することになる YUIOP60HH4 が完成しました。 現場でYUIOP60HH4がHHKBを置き換える瞬間 YUIOP60HH4 は、 自作キーボード活動を続けてる際に出会った Everglide Dark Jadeキー

    2021年後半の自作キーボードの歩み — KaoriYa
    mztns
    mztns 2021/12/12
  • テストのためだけに`interface`を書きたくないでござる — KaoriYa

    golangでテストのためだけにinterfaceを書くのが死ぬほど嫌だったので編み出した技を紹介します。 TL;DR テスト(=mock)のためだけにinterfaceは切りたくない 型エイリアスとビルドタグを組み合わせるとinterfaceがなくてもモックが作れる この手法に必要なモックを自動生成するプログラムを作った interfaceは当に必要なシーンで使うべき Background 現在モックを使った単体テストは一般的です。 Javaでの例を挙げると、モックしたいコンポーネントについて予めinterfaceを定義しておき、モックではそのインターフェースを実装するのが定石です。 しかしgolangのinterfaceはJavaなどのそれとは若干性質が異なるため、テスト=モックのためだけにinterfaceを書くのはオーバーワーク気味です。 そうテストのためだけにinterface

    mztns
    mztns 2020/01/22
  • golang は ゆるふわに JSON を扱えまぁす! — KaoriYa

    以下のツイートにもある通り、一見 golang は struct を定義しないと JSON を扱えないように見えます。他にも似たようなツイートをチラホラと見かけましたが、それらは全部誤解です。そこでこの記事では、golang でゆるふわ (structを定義せず) に JSON を扱う方法を紹介します。 golangrubyのようにゆるふわにJSONは扱えない? https://t.co/olsryDHc5G — bamchoh (@bamchoh) 2016年6月24日 この記事では入力の json.Unmarshal() を取り扱いますが、出力の json.Marshal() にも応用できます。 TL;DR json.Unmarshal() には *interface{} を渡せます interface{} は dproxy を使うと、値のアクセスで楽ができます json.Unmar

  • jQueryのメモリーリークの傾向と対策 — KaoriYa

    Web開発にとても便利なjQueryですが、 実はメモリーリークを誘発しやすい構造であることは あまり知られていないようです。 記事ではメモリーリークが発生する傾向と対策を紹介します。 皆さんjQueryは使ったことありますよね。Webでの開発ではとても便利で、ほぼ必須と言っても過言ではありません。しかしながらこのjQueryはメモリーリークを誘発しやすい構造であることはあまり知られていません。 GCのあるJavaScriptでメモリーリークが発生するとは何を言っとるんだ、と思われる向きもあるやもしれません。しかしGCがあっても、もう使わなくなったオブジェクトを配列やテーブル(Object)にしまいこんでいて、それを回収するタイミングが存在しなければ積もり積もってメモリを圧迫する、メモリーリークとなりうるというのは想像に難くないでしょう。jQueryで起こりうるメモリーリークはそのような

    mztns
    mztns 2014/03/31
  • codic-vim プラグイン — KaoriYa

    年もよろしくお願いします。ということでコードを書く際のネーミング辞書 codic をVimから使えるようにするプラグイン codic-vim を書きました。 codic はプログラムを書く上でプログラマを悩ませるクラス名や変数名の命名を助ける目的で作られたWebサービスで、APIこそありませんがその辞書データをクリエイティブ・コモンズのもとに公開してくれています。 インストール 香り屋版Vimを使っているならば バージョン 0.9 のzip をダウンロードして解凍し、出てきた codic-vim ディレクトリをそのまま $VIM/plugins ディレクトリに置けばインストールは完了です。次回Vimを起動した時から codic-vim が有効になります。もしくは普通のプラグインと同じようにマネージャを使っても良いでしょう。 使い方 使い方はとっても簡単で、調べたい単語の上にカーソルを合わ

    mztns
    mztns 2014/01/06
  • 1