読者です 読者をやめる 読者になる 読者になる

平常運転

アニソンが好き

過去記事とかは記事一覧で見れます

YAPC::Kansai 2017 OSAKA で Perl 6 で Web Application Framework をつくる、というトークをしました

3/4 に行われた YAPC::Kansai で Perl6 の話をしてきました。 "Perl6 で Web Application Framework をつくる" というタイトルで、 Sinatra っぽい簡易 Web フレームワークの簡易実装 Sixatra を紹介する、という発表でした。speakerdeck.comyapcjapan.orgよ…

macOS 上の Go 1.8 でクロスコンパイルしたバイナリが QNAP で動かなくて困っている

だいたいのことはタイトルで言い尽くした。 Docker でビルドする、という workaround で凌いでいるけど、根本的な原因も解決策も分かっていない……

Perl 6 のモジュールエコシステムの話とモジュールを公開する話 (2016年12月版)

このエントリは はてなエンジニアアドベントカレンダー2016の13日目のエントリです。12日目のエントリは追って書かれる見込みです。 それぞれ力のこもったエントリが並んでいるところ恐縮ですが、 Perl 6 の話をカジュアルにしようと思います。そして、この…

YAPC::Hokkaido 2016 に行ってきた("Publishing a Perl6 Module" というタイトルで LT した)

YAPC::Hokkaido 2016 SAPPORO京都から行ってきました。というか飛行機欠航で翌日振り替えになったので、このエントリを書いている12/11夜時点ではまだ北海道にいます。明日の朝飛行機が飛ぶことを祈っています。なので現時点では京都から「来ています」の方…

エンジニア立ち居振舞い: プルリクエストは全部見る

お題「エンジニア立ち居振舞い」だいたいタイトルが全て。GitHub (or GitHub Enterprise) で仕事をしているので、コードに誰かが何か変更を加えようとするときはプルリクエストを出すことになる。普段仕事をするとき、仕事のリポジトリに誰かがプルリクエス…

Perl6 で特定のモジュールがどのリポジトリから提供されているか調べる

そうです Perl6 です。Perl6 のモジュールは github の perl6/ecosystem というリポジトリで管理されており、新しいモジュールを登録するには、そのモジュールのメタ情報の URL を perl6/ecosystem にコミットするとよい、ということになっている。 この辺に…

Travis CI で go のバイナリを GitHub Releases に上げるようにした

特別目新しい話は多分ないと思うけど、まあやったので。 リポジトリ mackerel-plugin-darwin-battery という Mackerel 用のエージェント。 github.comこの記事で書いたやつ。 astj.hatenablog.comgo のバイナリを作るので GitHub release にアップロードでき…

Google Apps Script で DropBox の使用量を Mackerel のサービスメトリックに投稿する

Mackerel のサービスメトリックを投稿する環境についていろいろ考えると投稿スクリプトを動かし続ける環境を用意するのが面倒になりがちなのだけど、外部の Web サービスなどからさっと API で取れる情報であれば Google Apps Script (以下 GAS)で動かすのが…

Vagrant 1.8.5 で Linux box に公開鍵認証で ssh できなくなる(ことがある)バグがある

追記(2016/11/04) Vagrant 1.8.6 で無事直っていたようだった。 以下古い中身 ちょっと遊びに、と思って手元に Vagrant を新しくセットアップして bento/centos6.7 の box をセットアップしたところ、vagrant up がAuthentication failure で止まってしまう…

MacBook を Mackerel で監視し始めた & mackerel-plugin-darwin-battery を書いた

QNAP を譲り受けることになって、折角なので QNAP の監視を Mackerel でやろうと思い立ったものの、肝心の QNAP のセットアップに失敗した。QNAPセットアップ失敗によって全ての意欲を失って缶ビール空けた— じゅりあすは9/18蛙音でした (@ast_j) 2016年6月1…

Perl6 の DBDish::mysql でクライアント側と異なる time_zone に接続すると insert/update した際の DateTime のタイムゾーンがずれる

最近 Perl6 を勉強してる。当然仕事で使うわけではなくて、単純な趣味です。DBDish::mysql::StatementHandle では、 INSERT や UPDATE のために DateTime 型を文字列に展開する時に、DateTime.localで実行環境のローカルのタイムゾーンに展開してから更新す…

Plack 1.0040 で Plack::Middleware::AcceessLog::Timed のログフォーマットが一部変わることになる

Perl の話です。 Perl で Web アプリケーションを書くならほぼ確実にお世話になるであろう Plack が提供するモジュールのバグを見つけて修正が取り込まれました。このバグ修正で非互換の変更が入ったので、その話を書いています。github.com依存モジュール(A…

Macとnon-Macな*nixで共通のシェルスクリプト内でホストの名前解決をする

タイトルの通りです。 *nixの便利コマンドgetentを使うと、こういう感じで/etc/hostsを見たりDNSサーバに問い合わせたりしつつ名前解決してくれる。(getent自体は名前解決専用のツールではないので、他にもいろいろな情報を引くことが出来るけど今回は割愛) …

vagrant を 1.5くらいから 1.8.1 までバージョンアップした際にぶっこわれた環境を取り戻す

久々にvagrantを使おうとしたところ、Virtual Boxのバージョンを上げた都合でvagrantもバージョンアップしないといけなくなり、その結果ぶっ壊れた環境を立て直したのでその話をします

雑にgit cloneして管理していたリポジトリ群をghq管理下に移行してスッキリさせる

このエントリは はてなデベロッパーアドベントカレンダーの21日目のエントリです。 developer.hatenastaff.comid:motemen さん作のリポジトリ管理ツールであるところの ghq を最近ようやく使い始めたところ大変便利だったのですが、いかんせん手元の~/work/…

ISUCON5の本選に参加して惨敗しました

タイトルの通りです。 先日行われた、Iikanjini Speed Up Contestの略であるところのISUCON5の本選にはてなの若手エンジニア3人によるチーム「はむちゃん」で参加し、見事惨敗してきました。最後のスコア計測時に再起動試験をクリアできなかったので最終スコ…

ISUCON 5の予選に参加して全体5位で通過しました

久しぶりにエンジニアっぽい話題を書きます。

Shibuya Perl Mongersテクニカルトーク#17 で Test::WWW::Stub というCPANモジュールについてLTしました

Shibuya Perl Mongers : Shibuya Perl Mongersテクニカルトーク#17ということで、6/2に行われたShibuya Perl Mongersテクニカルトーク#17 でLT発表しました。僕のLT発表は、しばらく前にCPANモジュールとして公開したPerlモジュール、Test::WWW::Stubの宣伝…

capistrano3 を使ってデプロイしていてrepo_urlを変更する

追記 2015 03/25 14:20頃に末尾に追記しました 表題の通り。capistrano3でデプロイするとき、リポジトリのurlはconfig/deploy.rbにこういう感じで書くと思う。 set :scm, :git set :repo_url, 'git@github.com:MYNAME/MYPROJECT.git' ここで、リポジトリサー…

Server::Starterの0.17以下のバージョンでは特定の条件下でHUPを送ってもプロセスが入れ替わらないことがあった

要約 Server::Starterの0.17以下のバージョン(とStarlet)によって動かしているときに無限ループ等でいつまでも処理の終わらないリクエストが発生すると、アプリケーションプロセスの再起動のためのHUPシグナルをServer::Starterが正しく処理してくれないこと…

Herokuとwerckerによる継続的インテグレーション・自動デプロイでperlのwebアプリケーションを開発する

この記事ははてなエンジニアアドベントカレンダー2014の17日目です。昨日は id:cockscomb による Swiftでenumとジェネリクスを活用したかっこいいAPIクライアントを書く でした。 このエントリでは、CIツールのwerckerとアプリケーションプラットフォームのh…

carton使っててperlのバージョン下げたときに./local/消してなかったから破滅した話

経緯 plenv+cartonで管理しているプロジェクトで、最初5.20.0でcarton install+carton execしてたんだけど、よく見たら5.20.0じゃなくて5.18.2で動かすべきだったので(その辺は色々経緯があった)plenv local 5.18.2してやり直したら妙なエラーが出た。 Perl …