タグ

ブックマーク / miyagawa.co (14)

  • Joining Fastly

    I’m very excited to tell you that today is my first day at Fastly as a software engineer. As a long time Fastly user myself, I’m thrilled to be part of the fast growing CDN that powers many sites, and am pretty glad to be able to work with so many good friends from Six Apart, Cookpad as well as new and old friends from Perl and Ruby community. I continue to be in San Francisco, and the HQ is a few

    hide_o_55
    hide_o_55 2015/09/22
  • YAPC::Asia 2015

    PHP帝国は滅んでいない。新たなる希望を待ち、逆襲の機会を虎視眈々とねらっている」 遠い昔、はるか彼方の銀河系で…はなくて、去年、私は 私が愛するPHPはまだまだイケてる! とホールで叫び、なんと皆様からベストトーク賞をいただけたYAPC::Asia Tokyo 2014から1年が経ちました。 あれからPHPに新しい事は起こったか?勿論起こりましたし、さらに 起こりつつあります! 皆さんに是非お届けしなければ!ということで、今年もPHPの話をさせてください! 次のPHPは5.6から一気に7にバージョンアップされます 。「5.6の次が7って、おくればせながら流行にのってメジャーバージョンを切り捨てて5.7を7にしただけじゃないか?」なんてことはなく、メジャーバージョンアップにふさわしく変わります。 PHPなりに 高速に、安全に、パワフルに 生まれ変わりを果たそうとしています。その 来たるべ

  • Carmel

    I shipped a few trial versions of Carmel to CPAN. Carmel is intended to be a successor of Carton, with a better internal structure and an interesting architecture change. As a starter, here’s how Carton works: use local::lib and cpanm’s -L option to install modules locally to ./local Scan meta/install.json file cpanm created under ./local and create a snapshot file for the next run, if there’s a s

  • How I Learn Chinese

    I started learning Chinese a couple of months ago now. The motivation was obviously seeing Mark Zuckerberg giving his talk in Chinese in Beijing, and just thought I would be able to do that as well. Plus as a frequent traveler to Taiwan, I always wanted to learn the language, although with enough Kanji knowledge as a regular Japanese I had been able to spend my time without any Chinese knowledge a

    hide_o_55
    hide_o_55 2014/12/31
  • Perl UTF-8 crash course

    I’ve been seeing the occurrences of perl programmers not understanding perl’s very simple (and sometimes buggy but easily fixable) handling of Unicode strings. I confess I had the same misunderstanding until 6–7 years ago, and don’t want everyone to repeat the same mistake. Let’s forget what you know for 5 minutes, and take this simple course. 1. print($a, $b) and print($a . $b); Let’s forget, for

  • Carton 1.0 is released

    Carton v1.0.0 is released on CPAN. Since the first announcement at YAPC::NA 2011, I’m sure it has taken more time than necessary, but after my attempt to grok Ruby’s bundler more, i refactored and rewrote most of the code, and I think it’s usable for the most of production apps. I’ve been using it on my production website that handles millions of requests, and I know a lot of businesses use carton

  • Milla, a Dist::Zilla profile that doesn’t suck (screencast)

    Ok, that was a little link bait title. I’ve been a big fan of Module::Install — it automatically figures out the metadata of my module with just all_from, and does the right thing creating META files. Then it bundles itself in inc/ so that if you install from CPAN you don’t need to have Module::Install pre-installed. But not everybody likes it, especially contributors who need to install plugins b

  • Perl versions usage stats (with cpanm)

    A week ago I added a neat little feature in cpanm 1.6004 to report its perl versions in User-Agent strings (regardless of whether it uses LWP, curl, wget or HTTP::Tiny) in addition to cpanm’s own version. One week later, there seems more than 60% of the users seem to have upgraded (including people who runs curl -L cpanmin.us which always run the latest stable), and we get a pretty interesting num

  • stop shipping MYMETA to CPAN

    You’re a new CPAN author (congratulations!) or you have an old distribution that is about to be updated for the first time in years, and you find MYMETA.yml and MYMETA.json in your working directory that git or shipit warns about. You think: What are these files? Should I package these files? tl;dr — add MYMETA.yml and MYMETA.json to .gitignore and MANIFEST.SKIP (if you have one), and do not inclu

  • shipit — trial

    ShipIt 0.60 is released, and it now supports — trial option to make a TRIAL release on CPAN. TRIAL release is a (new) way to make a developer release on CPAN, without messing with the $VERSION string to contain “_”. You don’t need to deal with _ at all in the .pm files, Changes or anywhere. If you want to make a new developer release, just bump the version to a normal version (like 1.50), and run

  • Do not ship modules with Module::Install 1.04

    tl;dr: if your module is shipped with Module::Install 1.04 bundled, it will cause issues with perl 5.16 and creates bad MYMETA depending on a devel release of MakeMaker. Package the latest Module::Install and ship to CPAN? kthxbye A module bundling Module::Install 1.04 (exactly the version 1.04) has a fix from me to detect a correct version of MakeMaker you’re running. Unfortunately that fix uncov

  • Plack 1.0 and the future

    I’m proud and excited to announce the long-awaited release of Plack 1.0 on CPAN. This is our 120th release since we started this project on October 2009 and has commits from 92 developers (counting with git log and including duplicates from different email address). Congratulations to everyone involved in the project! Why now? The previous release was 0.9991, it was obvious we were running out of

  • Handling SIGQUIT to gracefully shutdown Starman

    Link: Handling SIGQUIT to gracefully shutdown Starman Implemented QUIT handler to gracefully shutdown Starman workers (and full graceful restart with Server::Starter) — one of the ugliest monkeypatch I’ve written in a few months. HUPのリスタート処理がlinux環境で app.psgi 以外のファイルパスを使っていた場合にうまく動いていなかったのを直したのと同時に、Server::Starter対応の部分で、デフォルトでTERMを受け取ったらgraceful shutdownしないといけないのが、そこが実装されてなかったのに気づいた。というわけで、SIGQUIT

  • Changing the HUP handling in Starman

    Link: Changing the HUP handling in Starman Starman is one of the most popular HTTP preforking servers for PSGI/Plack, and its handling of HUP signals to do graceful restarts has been broken for a couple of months in certain environments. There are many reasons for the breakage, one of which is the change in our own Plack ecosystem on how to manage @ARGV and the other is how fragile and insane the

    hide_o_55
    hide_o_55 2011/12/02
    StarmanのHUPの扱いが変更。--preload-appとgraceful restartを一緒に使う場合はServer::Startaerを使う
  • 1