koko_uのブックマーク (121)

  • サマータイムで日本中の電波時計がゴミになる(かも)という話 – mzsm.me

    先日、安倍首相が2時間時刻を進めるサマータイムの導入検討を自民党に指示したという報道がありました。 実は、このサマータイムが導入されると、我々の生活に身近なある物をすべて買い換えなければならなくなるかもしれません。 というか既にタイトルでネタバレしているのですが、そのある物とは、電波時計です。 定期的に自動で時刻を合わせてくれるため、手動で時刻を合わせる手間がなく大変便利な時計なのですが、実は、現行の電波時計では現在検討が進められている2時間のサマータイムには対応できないのです。 電波時計の仕組み 電波時計は、「情報通信研究機構(略称:NICT)」という国の機関が送信している「JJY」という無線局の電波を受信して正確な時刻を取得します。 NICTは「日標準時」を決定・維持している、まさに日の時を司っている機関です。 何年かに一度行われる「うるう秒」の挿入のとき、大きなデジタル時計の前で

    koko_u
    koko_u 2018/08/08
  • From Perl to Haskell - YAPC::Asia Tokyo 2014

    POE、AnyEventと経て開発してきた個人サービスのPerlスクリプトをHaskellで書き換えた経験をもとに、Haskellを使ったアプリケーション開発の基礎的な内容を解説します。主に以下のトピックを含みます。 WEBサーバ JSON, XML 非同期処理 書き直す際の障壁 (IO、ループ、正規表現、グローバル変数、etc) (I rewrote my Perl and AnyEvent script in Haskell. Based on this experience, I talk about the application development in Haskell.)

    From Perl to Haskell - YAPC::Asia Tokyo 2014
    koko_u
    koko_u 2015/06/19
  • 普通のことを普通にやれば、いいプログラムになる - YAPC::Asia Tokyo 2014

    私は Yahoo JAPAN に所属し YDN (Yahoo!ディスプレイアドネットワーク) を担当しています。 先日、この YDN の crawler を perl で一から書き直しました。 これまでの crawler のコードといえば、いわゆるレガシーコードと化していて、開発者の多くがそのコードに触るのに二の足を踏んでいる状況でした。 一方、レガシーコードとは言っても、それは要求されている仕事をなんとかこなしており、だからこそ長らく放置されてきました。 おそらくみなさんの会社にもこういったコード、システムは少なからずあるのではないでしょうか。 私は、このレガシーコードを一から書き直しました。これにどれほどの意味があるのか、という疑問も当然わきます。実際、書き直しているとき何度も自問自答しました。また一方で、以前のプログラムよりいいプログラムが当に自分に書けるのかという不安もありました

    普通のことを普通にやれば、いいプログラムになる - YAPC::Asia Tokyo 2014
    koko_u
    koko_u 2015/06/19
  • エンジニアの技術力評価は難しい? - 相互評価制度を約4年やってみたけど、わりと良い感じかもしれない - - YAPC::Asia Tokyo 2014

    TL;DR 4年間やってきたCTOが語る CTOが制度設計、全エンジニアの最終評価はCTOを経由 現場の声、事業責任者の声 内容 エンジニア技術力を評価するのって難しいですよね。 評価する側がエンジニアではない場合は特に難しいと思います。 そこで、VOYAGE GROUPでは2011年7月から技術力評価会という名のエンジニアの相互評価制度を導入しました。 約4年やってみて、わりと良い感じだと思っています。 ただ、チームごとに最適な技術を選択する方針なので Perl はもちろん、PHPRubyPythonなどのLL言語、さらにErlang、Scala、Schemeなども使っていたり、ネイティブアプリ開発やデータ分析など会社内で実績・知見が溜まっていない技術もどんどん増えてきて大変という課題もあり、毎回改善を重ねてますがまだまだやれる余地があると考えてます。 このトークでは、VOYAGE

    エンジニアの技術力評価は難しい? - 相互評価制度を約4年やってみたけど、わりと良い感じかもしれない - - YAPC::Asia Tokyo 2014
    koko_u
    koko_u 2015/06/19
  • エンジニアのためのめっちゃわかりやすい会計入門 - YAPC::Asia Tokyo 2014

    自社の決算書を読んだことはありますか?「負債」と「借金」の違いはわかりますか?ニュースで報道される「経常利益」の意味はわかりますか? エンジニアに敬遠されがちな「会計」「複式簿記」「決算書」などについて、めっちゃわかりやすくお話したいと思います 私は某大手自動車メーカで管理会計をやっていた経験があります。 また、フリーランスとして確定申告を自力で数年間やリ続けてきました。 会計を知れば、経営層やビジネスサイドとの意思疎通がより円滑になり、会社のことがよくわかるようになります。 また転職する前に決算書を見て企業の健康状態を把握できたり、独立して確定申告したりできるので、実利的なメリットはとても大きいです。 会計の世界はソフトウェアと違って変化が非常に少ないため、一度身につけた知識が一生使えるのもよいところです。 たのしく会計を学びましょう! こういう人に聞いて欲しい 自社の決算書を読めるよう

    エンジニアのためのめっちゃわかりやすい会計入門 - YAPC::Asia Tokyo 2014
    koko_u
    koko_u 2015/06/05
  • 異業種から飛びこめ! シロウト・プログラミングの方法と実践 - YAPC::Asia Tokyo 2014

    私は今年40才の編集者です。業務の上では、とくにプログラミングを必要とする場面もなければ、身近に手となるプログラマがいるわけでもありませんが、一昨年の春にふとプログラミング入門を志し、その年のYAPC::Asia in Tokyo 2013に参加しました。 「プログラミング入門」と一口に言っても、その対象は子供・学生・IT企業の新入社員・ITスキルとは無縁の仕事に就いている人……など様々でしょう。 そしてまた、それらの層によって求められている内容も異なるはずですが、なぜか世にある「プログラミング入門」情報の多くは、「子供」や「学生」、あるいは「IT企業の新入社員」といった、その後の人生でプログラミング技術を用いて生きていく人を対象としたものに偏っているか、そもそもそれらを混同して扱っているものが大半であるように思われます。 しかし実際には、そこから漏れた層にこそ、多くの潜在的な「プログラ

    異業種から飛びこめ! シロウト・プログラミングの方法と実践 - YAPC::Asia Tokyo 2014
    koko_u
    koko_u 2015/06/05
  • Perl6 on JVM: It works?? - YAPC::Asia Tokyo 2015

    Perl6 のリリースが近づいてくる中で、いい加減触ってみるか! という方も多いと思います。 一方で、Perl6 ってライブラリが全然ないし、なにもできること無いんじゃないの? という感想をお持ちの方もいらっしゃることでしょう。 そんなことはありません。 Perl6 は JVM 上で動くんです! 実は! JVM で動くってことはあんなライブラリ、こんなライブラリも利用できるってことなの?? ってきになってきますよね。 セッションでは JVM で動く Perl6 を利用して、どのようなことができるのか、どの程度 java のライブラリを活用できるのか、といったことについてご紹介したいと思います。

    koko_u
    koko_u 2015/06/05
  • POSIX原理主義 ― どこでも動く、20年動く、コピー一発デプロイ完了、な理想郷はシェルスクリプトで築かれる - YAPC::Asia Tokyo 2014

    POSIX原理主義 ― どこでも動く、20年動く、コピー一発デプロイ完了、な理想郷はシェルスクリプトで築かれる ■デプロイやその後の保守に苦しむプログラマー・運用管理者へ プログラム書いたけど、デプロイ(インストール)で躓いて半日ムダにしたとか、依存している言語やライブラリーのバージョンアップをしたら動かなくなって2,3日死にそうになった、などの痛い目に散々遭ってきた人々を救済する理想郷、 その名は「POSIX原理主義」。 この主義に改宗すれば、誰しも、 どのUNIXマシンに持っていっても動く(空間からの解放) 10年、20年の長期に渡り、メンテナンスフリーで動く(時代からの解放) デプロイは、コピー一発、えっ終わり!? という、今ドキの業界からするととても信じられない恩恵を享受できる。特に最初の2つを指して「時空を超えた可搬性」と呼ぶ。 ■POSIX原理主義とは何か? > POSIX(I

    POSIX原理主義 ― どこでも動く、20年動く、コピー一発デプロイ完了、な理想郷はシェルスクリプトで築かれる - YAPC::Asia Tokyo 2014
    koko_u
    koko_u 2015/06/03
  • Adventures in Refactoring - YAPC::Asia Tokyo 2015

    At GitHub, we've refactored a lot of projects in the last couple of years, some big, some small. In this talk, we'll cover some techniques for different kinds of refactorings and some nifty Ruby libraries we've made to help us out. Then we'll spend a bit of time pondering why language designers aren't helping us out with this everyday task.

  • privateメンバに外部から非侵入的にアクセスする - redboltzの日記

    はじめに C++では通常、クラスのprivateメンバに外部からアクセスすることができない。 アクセスするためには、friend関数やfriendクラスを用いる。 しかし、 http://bloglitb.blogspot.com/2010/07/access-to-private-members-thats-easy.html で話題となり、Daveが、 https://gist.github.com/1528856 にエッセンスを抽出したコードを起こしているが、privateメンバに外部から合法的にアクセスする方法がある。 Daveのコードのコメントだけで必要十分かもしれないが、私は理解するのにかなり時間がかかってしまったので、その経緯を忘れないためにもここに書いておきたいと思う。 メンバポインタの復習 まずは、このコードを見て欲しい。 http://ideone.com/dGRqg

    koko_u
    koko_u 2015/02/02
  • Perl 5.20 - 20歳のPerl 5 - YAPC::Asia Tokyo 2014

    1987年12月18日にリリースされたPerlは、2007年に20歳の誕生日を迎えました。そのときリリースされたPerl 5.10には、featureプラグマや、//演算子、スマートマッチ、正規表現の再帰パターンやネームドキャプチャなど多数の新機能が盛り込まれ、内部的にも大幅な書き換えが行われて、節目の年にふさわしい画期的なリリースとなりました。 あれから7年。今年の10月には「Perl 5」が20歳の誕生日を迎えます。先日、今年度の最新安定版となるPerl 5.20がリリースされましたが、このPerl 5.20も、signatureのサポートが盛り込まれるなど、節目の年にふさわしい重要な意味をもつリリースとなりました。 今年は残念ながら「パンプキン」であるRicardo Signes氏のご都合がつかないようなので、Perl 5.20で何が変わったか、そしていま何が変わりつつあるか、一ウオ

    koko_u
    koko_u 2014/07/06
  • Perlの静的解析入門とPerlリファクタリングツールApp::PRTのご紹介 - YAPC::Asia Tokyo 2014

    古来より,Perlのソースコードをリファクタリングすると言えば,テキストエディタでソースコードをちまちま人間が書き換えるスタイルが一般的でした. 私は,Perlのソースコードをリファクタリングするためのツールである,Perlリファクタリングツール App::PRTを開発し,CPANで公開しています. App::PRTを用いることで,トークンの置換,メソッドの移動や削除,クラスのリネームなどをうまくすばやく行うことができます. トークでは, Perlのリファクタリング界隈の振り返り PPIを用いた静的解析の入門 静的解析を使ったアート活動 App::PRTの機能,使い方,ちょっとしたコツ 実サービスに対するApp::PRTを使った全自動リファクタリングの事例 などをご紹介します.

    koko_u
    koko_u 2014/07/04
  • Perl5 meta programming - YAPC::Asia Tokyo 2014

    メタプログラミングと言えばrubyが有名です。しかし、perl5でもメタプログラミングを行う事は十分に可能です。 メタプログラミングはプログラミングの可能性を広げるための技術の1つです。 メタプログラミングの世界ではプログラムでプログラムを作ります。たとえば、全てのメソッドにデバッグコードを追加したいとき、あなたはすべてのメソッドのソースコードを変更する必要はありません。 我々にはメタプログラミングがあります!メタプログラミングを用いることで僅かなコードにより目的を達成することが出来るでしょう。 メタプログラミングをマスターすれば、恐らくいくつかのコードはよりシンプルにすることが可能です。 メタプログラミングは現代の開発において必須のスキルと言えるでしょう。 このセクションでは以下の要素をもとにperl5でメタプログラミングを行う原理とその具体的な手法について説明します。 string e

    koko_u
    koko_u 2014/07/02
  • オープンソースの開発現場 - Perl 5.20 のSubroutine Signaturesが来るまでの奮闘の軌跡 - YAPC::Asia Tokyo 2014

    Working With Opensource - Struggles For Perl 5.20 Subroutine Signatures Perl 5.20ではとうとうPerlにsubroutine signaturesが入りました。ですが、その裏ではこの機能をマージしてもらうための長く苦しい戦いを戦った一人の男がいたのです… トークではsubroutine signaturesについてではなく、subroutine signaturesを気でPerl5に追加しようとした男、Peter Martini氏の視点から、最初の提案から5.20としてリリースされまでの約2年に渡る奮闘の軌跡を追って紹介したいと思います。 トークは新規に立ち上げたばかりの若い開発コミュニティに参加するだけではなかなか見る事ができない、歴史ある開発コミュニティとのコミュニケーションや対立、目的を達するために

    koko_u
    koko_u 2014/06/05
  • Vim実践入門 Perl編 - YAPC::Asia Tokyo 2013

    トークではVimの基礎を中心としながら、Perlのコーディングを便利にする様々な設定やプラグインの導入などを初心者の方でもわかりやすいチュートリアル形式で説明します。 よくある「それVimでできるよ?すごいでしょ?(それVim)」 というトークではなく、 Vimを使ったことがないけど興味はある 使ってみたけど挫折した もう一度Vimを基礎から勉強し直したい Vimのプラグインに手を出すことに二の足を踏んでいる そういえば他人がVimを使ってる光景をあまり見たことがない etc... というような方のために、実際にVimを操作しながら1から説明していきます。 (当日は入力しているキーを表示するツールを導入して、口頭だけでなく視覚的にも操作がわかるように工夫したプレゼンを行う予定です。) 逆に、すでにVimを使いこなしている、というような方にはあまり新しい情報はないかもしれません。 持ち物

    koko_u
    koko_u 2013/07/02
  • Perl 6 オブジェクト指向プログラミング - YAPC::Asia Tokyo 2013

    Perl 6 でのオブジェクト指向プログラミングについて話します。 Perl 6 について Perl 6 でのオブジェクト指向に有用な機能 オブジェクト指向という観点での Perl との違い Perl 6 でのオブジェクト指向の実例 などについて触れる予定です。 前提知識をあまり必要としないトークを目指します。

    koko_u
    koko_u 2013/06/30
  • Perl Entrance

    koko_u
    koko_u 2013/06/30
  • uiautomatorを試してみた #android_tec - やらなイカ?

    Android SDKに追加されたUIテスティングツール uiautomator を試してみたのでメモ。 要件 ADT r21以上 API Level 16以上(Android 4.1) が必要です。 テスト実行までの手順 テストプロジェクトの作成 1. Eclipseで新規Javaプロジェクトを作る 2. プロジェクトのProperties > Java Build Path > Libraries 2.1 "Add Library..." > "JUnit"を選択してNext -> JUnit3を選択してFinish 2.2 "Add External JARs..." > /platforms/android-17/下のandroid.jarとuiautomator.jarを追加 テストケースの作成 テストクラスは、com.android.uiautomator.testrunner

    uiautomatorを試してみた #android_tec - やらなイカ?
    koko_u
    koko_u 2012/11/28
  • Perlで補完のきくインタラクティブシェル - Cside::Weblog

    2012-11-13 Perlで補完のきくインタラクティブシェル perl すなわちRubyでいうpry相当のもの。Perlのインタラクティブシェルは たくさんある のだけれど、自分は Devel::REPL を使っているのでそれを推したい。 Devel::REPL Devel::REPL の何がいいかというと モジュール名やメソッド名の補完がきく もうこれに尽きる。デフォルトでは補完が若干貧弱なので、 ~/.repl/repl.rc を こんな感じ にすればとりあえず快適に使えます。 Examples モジュール名補完メソッド名補完coderefもよしなにdump Devel::REPL を拡張したいとき Devel::REPL::Plugin::* もっと軽いのでいいやって気分のとき Eval::WithLexicals の tinyrepl が軽いのでそっち使ってます。 Cside

    koko_u
    koko_u 2012/11/14
  • 設計と実装の狭間で - 急がば回れ、選ぶなら近道

    ・現状 ・・・相変わらず溝は埋まっていません。希望の星と目されたDSLは現時点ではかなりの不発弾に近い感じで、設計系クラスターはあまり元気がないですね。翻って見れば、設計と実装が最も近かった時代は、なんのことはなくて、自分も含めて(懐古趣味の老人を除いた)皆さんが毛嫌いするCOBOL+汎用機の時代だったかもしれないという意見すら出る惨状です。あの時代以降、 UMLが登場し、まさに銀の弾丸状態で、それ以降Unified Processやら何やらが、インフルエンザの如く流行りました。ま、その延長上に今のアジャイルまでの流れがあるわけですが、気がついてみれば、これほど設計と実装が離れてしまった時代もないという状態になってしまっています。・・・設計と実装の狭間は、相変わらず埋まっていない気がします。 ここへ来て、実装技術の多様化は、カンブリア紀を思わせる拡大の一途になっています。開発環境のみならず

    設計と実装の狭間で - 急がば回れ、選ぶなら近道
    koko_u
    koko_u 2012/11/12