テクノロジー

技術について書きます

ISUCON 10 本戦で 28,628 点を獲得して 7 位だったふりかえり

チーム「ヌルポインターマリアユニバース」として id:wtatsuru id:Pasta-K と出てきました。最終スコアは 28,628 点で、fail してない中では 7 位。ISUCON にちゃんと出場したのは前回が初めてで、そのときは予選でボコボコにされて終わってしまったんだけど…

#isucon #isucon10 予選参加記: 決勝行けましたの巻

最終スコア 2335 で本戦出場です。スコアそのものは不完全燃焼感が否めないけどクッソ嬉しい。 isucon.net github.com レポジトリはこれ。チーム名は「ヌルポインターマリアユニバース」*1、メンバーは漏れと id:wtatsuru id:Pasta-K。やったことはこの repo…

ffmpeg でオーディオ入力のラウドネスをリアルタイムに計測する

ffmpeg のオーディオフィルタには、EBU R 128 で採用されているアルゴリズム (ITU-R BS.1770) を用いて音声のラウドネスを計測できるものがある*1。 EBU R 128 - Wikipedia https://ffmpeg.org/ffmpeg-filters.html#ebur128-1 これと、ffmpeg のオーディオ入…

Certbot を使って Let's Encrypt の staging 環境用アカウントの取得だけをやる方法

Certbot を使うと、証明書の発行などは実行せずに、Let's Encrypt など ACME プロトコルに対応しているサービスのアカウントの発行だけする、というのが簡単にできる。証明書の自動更新システムで使いたい練習用のアカウント情報だけを作りたい、というよう…

GitHub からやってくる通知メールを文脈ごとに Gmail のフィルタでさばく

GitHub からメールでやってくる通知には、通知の種別によって CC: なメールアドレスが設定されている。 GitHub will Cc you if you're subscribed to a conversation. The second Cc email address matches the notification reason. The suffix for these n…

JPEG には大きく分けて 2 種類ある

JPEG は Joint Photographics Expert Group の略で (パソコンの大先生的知識) (以下略) ファイル形式としての JPEG は、中身の雰囲気でだいたい 2 つに分けられるっぽい JPEG2000 とかはまったく関係なく、我々がふだん JPEG と呼んでいる物体に関する話題で…

Next.js で Google Analytics を使う・2019年冬

これは はてなエンジニア Advent Calendar 2019 14日目の記事です。 昨日は id:takuji31 さんの Kotlin Coroutinesをテストする - Takuji->find; でした。 最近は仕事で Next.js を使っているのですが、その中で Google Analytics による計測をどうするかと…

YouTube でテックカンファレンスの動画を見ながら Scrapbox にメモを取るのが結構よい

ので年末年始にそういうのをやっていた。アニメを半クール分 or 映画を 1 本見る、GCP の動画を 2 本くらい見る、酒を飲む、ウーバーイーツで飯が届く、みたいな黄金サイクル。 scrapbox.io 最近はいろいろあり BigQuery を使おうとしているものの、これまで…

既存サービスでグロースハック的なことをやっていくとき、アプリケーションエンジニアとしてのとっかかり

最近は、はてなブログでグロースハック的なことをやっている id:polamjag です。このエントリははてなエンジニア Advent Calendar 2018 の 20 日目のために書かれました。昨日のエントリは SRE の id:hokkai7go さんによる re:Invent2018に行ってきました - …

Atom で各種フォントサイズを Retina ディスプレイかどうかによって変える

Atom とかだと CSS のメディアクエリ使えばモニタの DPI ごとにフォントサイズ変えられるじゃん— ■ (@polamjag) 2017年1月11日 macOS だと基本的には devicePixelRatio は 1 か 2 のはずだけど、なんとなくこんな感じで書いたやつを使ってる: // Retina でな…

HTML の kbd 要素

キーボードインプット要素(<kbd>)はコンピューターへのユーザーの入力コードを表します。要素名はキーボードの略語ですが、音声入力や手書き入力などの他の入力方法も含みます。多くのデフォルトスタイルは、等幅フォントのインラインで表示するものとなってい</kbd>…

はてなサマーインターン 2016 で バリバリがんばり!大・開・発!!! してきたレポ

hatenacorp.jp はてなサマーインターン2016 の "スイスイSwift! バリバリがんばり! 大・開・発!!!" でおなじみ iOS 実践開発コース に参加してきましたので、以下はその報告ということになります。 慣例にならって適当に自己紹介をすると、 Swift でまともに…

Internet Sampler のご紹介, そして理論と実践

この記事は クソアプリ Advent Calendar 2015 3 日目の記事です。 今最もアツい SaaS (Sampler as a Service) こと Internet Sampler について紹介します。 Internet Sampler は、インターネット越しに皆でワイワイ使えるサンプラーの実装です。ここでいうサ…

クラサバ両方 Linux な環境においてリモートで録画中の TS ファイルを追っかけストリーミング再生することについて

録画サーバも視聴クライアントも両方 Linux なので、Windows 環境でよく使われるツールが使えないという状況下での思考です。ちなみに録画サーバは Chinachu on Ubuntu 14.04, クライアントは Arch Linux です。 TS over HTTP ではなく over CIFS で行けばよ…

FreeNAS とか NAS4Free なマシンに刺さっている WD Green の IntelliPark を止める最も簡単な方法

FreeNAS や NAS4Free 内で新たにパッケージをインストールしたりするのは、結構面倒な上に筋があまり良くない感がある *1 ので、Arch Linux のインストール用起動ディスクを使ってやっていくことにします。 大抵のそういう起動ディスクでは、その環境内でパ…

変態ウィンドウマネージャ情報などが集まる Reddit の /r/unixporn について

Reddit というインターネット掲示板みたいなやつがあって、それについての説明は省きますが、そこの subreddit (2ch で言う板みたいなやつ) に /r/unixporn というやつがあります。 www.reddit.com そこでは、*NIX 上で最強のデスクトップ環境を実現せんとす…

インターネットサンプラー作った

作りました: Internet Sampler (注意: 音が出る可能性があります) polamjag/internet-samplergithub.com どういうやつかというと、ただ単にボタンをクリックすると音が鳴るウェブサイトです。自分がクリックすると当然音が鳴るわけですが、このサイトを同時…

Traktor と iTunes のプレイリストを共有するウェブアプリ (Traxlist) 作った

http://traxlist.polamjag.info/ です。Twitter でログインするとアップロードボタンが現れます。アップロードしたやつはこういう感じになります: soundfloor. 2014 のやつ by polamjag - Traxlist // Share playlist with listeners なぜこういうのを作った…

ブラウザで一面にドカッと表示される svg の作り方 (ただし IE は除く)

1. svg を用意する 2. svg をテキストエディタで開く おそらく存在するであろう svg タグの width 要素と height 要素を消す 3. 出来上がり 4. お好みでデプロイする ・ิω・ิ.ヒモ.jp *1 *2 *1:Apache とか Nginx で、Index ディレクティブ的な奴をいい感じ…

Linux とかで PDF を結合とか n-up とかするコマンドたち

我々大学生にとっては、授業資料持ち込み可とされた試験に持ち込む資料をいかに効率的に印刷するかということは死活問題であります。先日も、ある試験に Linux の man ページを厚さ 1cm ぶんほど持ち込もうとしていた人を見ました。 それはさておき、一見プ…

Linux でスクリーンを動画としてキャプチャ (screencast) & アニメ gif 化

要は Gyazo GIF (gifzo) みたいなことをするぞという話です。 まず、スクリーンのキャプチャですが、自分の環境 (Antergos/Arch Linux + Xfce) だと SimpleScreenRecorder というアプリケーションを使うと一番いい感じに撮影できます。 なお、Istanbul が次…

Launch Control XL のノブのとこの LED を制御する

備忘録です。 Launch Control XL のノブのとこの LED を制御するには、System Exclusive Message を発射する必要があります。 詳細はググると出てくる公式の Developer Guide (PDF注意) を読んでいただきたいのですが、一応。 下のような MIDI メッセージを…

5人以上で共同開発するときに Git のプライベートレポジトリを無料でホストするのは GitLab.com が最強っぽい

2020-05-01 追記: GitHub もほとんどいろいろ無料になりつつあり、別にそっちでええやんという感じがしています github.blog GitLab といえば、GitHub の OSS クローンの雄として有名ですが、実はサービスとしての GitLab: GitLab.com というものも存在しま…

Arch Linux のインストーライメージを常時携帯するのに最適な USB メモリ

昨年、出先で炎上中に Arch Linux なマシンの /home な ext4 が爆発するという惨事がありましたが、手元に Arch Linux のインストーライメージを焼いた USB メモリがあったおかげでいい感じにいい感じ出来ました。 Arch Linux のインストーライメージには、…

Arch Linux をデスクトップ用途でインストールする

何入れたか忘れるので備忘録. とりあえず xorg とかと yaourt をインストールするとこまで終わってることを前提. パッケージ選んでる基準はほとんど好みです.デスクトップ環境には Xfce を使用します.パネルとかで使う細々したパッケージやアプリケーシ…

zsh で キーアサインをアンバインドする

bindkey -r '^T' とかいう風にするとできます.'^T' のとこを任意のキーバインドに変えてください. \M-x で Esc-x, ^X \C-x で Control-x といった具合です. 詳しくは zsh: 18. Zsh Line Editor に書いてあります.

mikutter Advent Calender 2013 5日目: どこでもいっしょ

この記事は mikutter Advent Calender 5日目 ですみなさんは,外出先で mikutter を使うときに,どのマシンを使っていますか? ThinkPad ですね,わかります.ただ,ThinkPad は (物理的に) 重く,モデルによってはでかいので,ちょっと出かける時なんかに持…

Arch Linux で Debian / Ubuntu のパッケージ (.deb) をインストールする

まず,yaourt で AUR から deb パッケージを扱うコマンドである dpkg をインストールします. $ yaorut dpkg 次に,dpkg コマンドを使って deb パッケージをインストールします.(-i オプションは依存関係を無視してインストールするオプションです) # dpkg …

Eject Advent Calender 2013 4日目: モバイル Eject 革命を夢見て

この記事は Eject Advent Calender 2013 4日目です. 自己紹介 こんにちは,そして多分はじめまして.polamjag と申します. 本来なら今日はあっきいさんが2度目の登板の予定だったのですが,急遽ネタができてしまったので参加させていただくことにしました…

Traktor Audio 2 は PulseAudio でそのまま使える

% uname -srvmp Linux 3.12.1-3-ARCH #1 SMP PREEMPT Tue Nov 26 11:17:02 CET 2013 x86_64 unknown % lsusb | grep Naative Instruments Bus 001 Device 005: ID 17cc:041d Native Instruments % yaourt -Q | grep pulse multilib/lib32-libpulse 4.0-6 ext…