タグ

Perlに関するlove0hateのブックマーク (89)

  • googleのエンジニアが書いたPerlの入門記事を紹介してほしいと依頼されたので紹介するよ - Perl入門ゼミ

    1ヶ月ちょっとくらい前に、僕のgmailの方に「googleエンジニアが150時間」かけて書いたPerlの入門記事を紹介してほしいというメールが来た。YAPCなどがあって忙しかったが、ようやく落ち着いたので紹介するよ。僕の英語のブログの方でも紹介予定だけど、先にここで紹介しておく。 PERL Tutorial for Beginners - Complete Guide シリコンバレーのエンジニアは、Perlを紹介してくれることが少なかったような気がするけれど、最近は、Google APPエンジンのところでPerlに対応したことを伝えてくれたり、Amazon人工知能のスケーラブルなMXNetクラウドでは、Perlのライブラリを公式に加えてくれたりしている。 そして、一か月くらい前には、googleのベテランのエンジニアが、Perlの入門記事を150時間かけて書いているのを、まとめたので

    googleのエンジニアが書いたPerlの入門記事を紹介してほしいと依頼されたので紹介するよ - Perl入門ゼミ
  • YAPC::Fukuokaで「新時代のテストフレームワークTest2」という話をしました - アリ

    speakerdeck.com トークの内容はTest2の導入から便利情報を紹介したりしました。少しでもTest2使う人が増えるといいですね。 スライド中にも触れていますが、基的にはTest2に移行するにあたってはTest2::Plugin::UTF8を使うようにすれば大丈夫かなと思います。 一部Test::ClassのハックをTest2に対応するといった特殊な例も紹介しました。スライドでは時間の都合上省いたのですが、Test::Classは意外と扱いが難しく、テストファイルから読み込まれるモジュールでTest::Moreを直接使っていると$TODOが動かなくなるというケースもありました。Test::Moreのokを直接呼んでいる場合はTest2::APIのcontextで書き換える必要があります。 また、Test::Warningsでテスト中で警告が出ていたらfailする機能(Test

    YAPC::Fukuokaで「新時代のテストフレームワークTest2」という話をしました - アリ
  • 【2016年度版】このPerlハマりどころがすごい!100連発 - Hatena Developer Blog

    はじめに autovivificationを避ける myと後置ifを同時に使ってはならない return;で返る値は空のリスト 正規表現によるバリデーションでは\Aと\zを使おう '0' は偽で評価される each は中断した時、中断した時点の状態が残り続ける おわりに はじめに こんにちは。アプリケーションエンジニアの id:t_kyt です。 春です。Perlを始めるにはいい季節ですね。Perl始めていますか? どの言語にもハマりどころというものがありますがPerlも例外ではありません。というわけで今回はPerlを始めた人がハマりがちなポイントを幾つか紹介したいと思います。 この記事ははてなの教科書程度の知識を前提としています。またモジュールに依存しない部分に絞りました。 github.com autovivificationを避ける autovivificationとはundefの入

    【2016年度版】このPerlハマりどころがすごい!100連発 - Hatena Developer Blog
  • pelletkachels | blog over bedrijven en feitjes en de pelletkachel

    Welkom bij Pelletkachels.nl, jouw ultieme bron voor alles wat met pelletkachels te maken heeft! Maar we zijn meer dan alleen een platform voor het bespreken van warmtebronnen. Bij Pelletkachels.nl geloven we dat het delen van kennis en ervaringen over bedrijven en gebeurtenissen ook essentieel is voor het creëren van een betrokken en geïnformeerde gemeenschap. In dit blog duiken we dieper in de we

    pelletkachels | blog over bedrijven en feitjes en de pelletkachel
  • Pythonや機械学習、そして言語の競争について – 極めて主観的な見地から | POSTD

    (訳注:2016/1/5、いただいた翻訳フィードバックを元に記事を修正いたしました。) よくある主観的で痛烈な意見を題名に付けたクリックベイト(クリック誘導)記事だろうと思われた方、そのとおりです。以前指導してくれた教授から教わったある洞察/処世術は、些細でありながら私の人生を変えるマントラとなったのですが、私がこの記事を書いたのはそれによるものです。「同じタスクを3回以上繰り返す必要があるなら、スクリプトを書いて自動化せよ」 そろそろ、このブログはなんだろうと思い始めているのではないでしょうか。半年振りに記事を書いたのですから。ツイッターで書いた Musings on social network platforms(ソーシャル・ネットワークプラットフォームについてじっくり考える) はさておき、この半年の間書き物をしていないというのはうそです。正確には、400ページの を書きました。

    Pythonや機械学習、そして言語の競争について – 極めて主観的な見地から | POSTD
  • YAPCでおもしろ発表してきた - hitode909の日記

    YAPCおもしろ発表してきた. はてなブログの開発を振り返って設計の進化と最高の設計を紹介するという話. speakerdeck.com なぜか大人気発表みたいになってて,会場満員で,すみませんこんなところに来ていただいてすみませんというかんじだった. 紹介したはこちら.予約投稿で仕込んであって,発表終わったら,こちらから買ってくださいとかやろうと思ってたけど,すっかり忘れてた. YAPCの発表で紹介した - hitode909の日記 質問たくさんいただいて,よいかんじにおさまったと思う. 「難しくて挫折するという問題がありますよね」「歯をい縛って実装しろって書いてあった」 #yapcasiaE— そらは (@sora_h) 2015, 8月 21 Q: 「コメントの良い書き方は?」 A: 「オブジェクト指向入門下巻に書いてあります」 ↓ 「買って読みます。」 #yapcasiaE

    YAPCでおもしろ発表してきた - hitode909の日記
    love0hate
    love0hate 2015/08/21
    今のプロジェクトが似たような状態になっていて共感できすぎるけど、その現状が辛いと感じているので胃が痛くなってきた。
  • はてなブックマーク in Scala

    2015-08-01 Scala関西 Summit 2015 発表資料 (関係モナドについて発表後に公開したコードなどへのリンクのスライドを追加)

    はてなブックマーク in Scala
  • Perlの上にも三年 〜 ずっとイケてるサービスを作り続ける技術 〜 - YAPC::Asia Tokyo 2015

    Three years on Perl ~ The technology to developing cool web service ~ Accepted #yapcasiaE Vote! Tweet 発表者は,この三年間はてなブログというイケてるPerlのサービスの開発に携ってきました… Perlの最新を追い求め続けた三年間でした… なにも分からず,SQLをコピペし続けた数ヶ月… つらいことも,たのしいことも,みんな分かちあったコードベース… 救いを求め,藁にもすがる思いで,朝も夜も読み続けたオブジェクト指向入門…… 偶然発見して,これだと思ったドメイン駆動設計…… 苦しみの軌跡と,現在最高の設計を紹介します………!!!!!!! 当時最強のフレームワーク それまでの,社内フレームワーク 鳴り物入りで登場した,当時最強のフレームワーク 社内でも歓迎されたが…… 最強のフレームワーク vs

  • ソースコード以外もとにかくテストする。もしくはカバレッジだけではダメだという話 | おそらくはそれさえも平凡な日々

    あなたはプロジェクトのソースコードに対して適切にCIを回しているかもしれません。定期的にコードカバレッジの測定も行い、90%以上もしくは100%の数字を出しているかもしれません。 しかし果たしてそれで十分でしょうか?もしくはコードカバレッジだけにとらわれすぎていないでしょうか? 監視とは(システムに対する)継続的なテストである、というのは筆者の尊敬する奥一穂氏の言葉ですが、その逆もしかりで 「テストとはプロジェクトに対する継続的な監視である」 ということも言えます。 その観点に立ってみると、プロジェクトのソースコード以外にもテストが必要なものがたくさんあることに気づくでしょう。以下に実際に筆者が自分のプロジェクトの中でソースコード以外にテストを書き、CIを回していたものを挙げてみます。 アプリケーション設定ファイルのテスト 開発中に番用の設定ファイルを使うことはないため、番用の設定ファ

    ソースコード以外もとにかくテストする。もしくはカバレッジだけではダメだという話 | おそらくはそれさえも平凡な日々
    love0hate
    love0hate 2014/12/25
    人間もテストするといいのかな
  • 38才からのプログラミング入門 - the code to rock

    こちらは Perl入学式 Advent Calendar 2014 の4日目の記事です。 昨日は @xtetsuji さんの「いつもの風景」でした。 お寿司いいですね。 はじめに さて、「Perl入学式」はプログラミング初心者およびPerl入門者のための無料の勉強会です。 最近の傾向としては、他のプログラミング言語の経験はあるけれどPerlには馴染みがないから来た、という参加者も少なくないようですが、僕自身はプログラミング自体まったくの初心者という段階から参加し始めました。 ただ、ひとくちに「初心者」と言っても、「子供の時期から学ぶのか、大人になってから学ぶのか」では大きな違いがあると感じます。 よって以下では、自分の体験にもとづいて、後者の「大人」(とくには30代以降の社会人)がプログラミングに初めて触れることについて、徒然に書いてみたいと思います。 極私的な入門記 僕は現在、39才+7

    38才からのプログラミング入門 - the code to rock
    love0hate
    love0hate 2014/12/04
    普段からPerl書いてる身からしても、もっとオーソドックスな言語でプログラミング入門したほうがいいとおもいまふ
  • YAPC::Asia Tokyo 2015, Aug 20, 21, 22

    2015 8/20(木)、8/21(金)、8/22(土) 真夏に熱いカンファレンスを御届けします! 8/20 18:00~ : 前夜祭 8/21 10:00~ : Day 1 8/22 10:00~ : Day 2 世界最大のYAPCが最後の大花火をぶちあげに今年ももどってきました!YAPCはYet Another Perl Conferenceの略で、Perlに関するカンファレンス・・・いや、お祭りです!Perlだけに限らず、様々な分野のギーク達が集まり技術の話と楽しさに満ちた三日間のお祭りが開かれます。Perlに関連する事に興味がなくとも心配する必要は全くありません、YAPC::Asia Tokyo 2015は技術者であれば誰でも楽しめるカンファレンスです。 今年も様々なゲストを集めて熱いトークが交わされます。世界中のギーク達がどんな事を今を考えているのか行っているのか、是非皆様も体験

  • mixi Engineers’ Blog » OpenSSLの暗号文をJava/Perl/Rubyで開く

    秘密鍵やプライベートな情報などを秘匿するためにパスワードでデータを暗号化・復号したい場合があります。このとき、暗号化と復号するアプリケーションが同じであれば簡単ですが、例えばCで暗号化してJavaPerlRubyで復号するといった風に異なるプラットフォームで暗号データをやりとりする場合には、いくつか気 をつけなければいけないポイントがあります。 OpenSSLによる暗号化 OpenSSLはWebサーバのSSL/TLSサポートに利用されますが、その他にも付属しているopensslコマンドから基的な暗号アルゴリズムを利用できます。次のような簡単なコマンドで、パスワードを使ってデータを暗号化したり復号したりすることができます: $ echo 'Hello World!' | openssl enc -e -aes-128-cbc > cipher.txt enter aes-128-cbc

    mixi Engineers’ Blog » OpenSSLの暗号文をJava/Perl/Rubyで開く
  • [Perl] 作成したモジュールをCPANで公開する手順

    久しぶりに Perl モジュールを作成してみた ので、せっかくなので CPAN にアップロードしてみました、の手順をメモ。 もともと、2002年に CPAN へのアップロードサイト PAUSE 用のアカウントは 作ってあったけど、実際に自作モジュールを CPAN で公開してもらったことはなかったので、 実は今回が初挑戦でした。 もし↓に間違っている点がありましたら、ご指摘いただけると幸いです。>識者の方 配布用のモジュールを作成する まず第一歩は、 perlnewmod - 新しいモジュールを配布するには を熟読すること。 モジュール .pm ファイルと、 そのアーカイブ .tar.gz ファイル を作成するのが最初です。 中身は以下のようなファイル構成になりました。 lib/XML/TreePP.pm # Perlモジュール体 Makefile.PL # ほぼh2xsで生成したそのまま

  • prove についてのおさらい - Articles Advent Calendar 2011 Test

    はじめに 忘年会シーズンまっただ中で皆さんは毎日お酒を飲んでいることでしょうが、僕は友達が少ないため忘年会とか全然無いので財布はまだホットな状態なんですが、なぜ僕の妹は小鳩ちゃんじゃないんだっていうかそもそも妹いないしもう死ぬって感じの xaicron です。こんにちは。 そろそろ prove について簡単に説明しときますよっと。 prove のよく使うオプション prove にはいっぱいオプションがあるんですが、ここではよく使いそうなやつをピックアップして紹介しちゃいますよ! -v, --verbose # いっぱい出力する -l, --lib # lib を INC についかする perl -Ilib 相当 -b, --blib # blib/lib とか blib/arch を INC につかする -Mblib 相当 -c, --color # カラフルになる! MSWin32 だと

    prove についてのおさらい - Articles Advent Calendar 2011 Test
    love0hate
    love0hate 2014/10/25
    Test::Pretty使うときは-PPretty -v
  • Test-Pretty - Prettify the Test::More's output - tokuhirom's blog

    Test::Pretty is a prettifier for Test::More. When you are writing a test case such as following: use strict; use warnings; use utf8; use Test::More; subtest 'MessageFilter' => sub { my $filter = MessageFilter->new('foo'); subtest 'should detect message with NG word' => sub { ok($filter->detect('hello from foo')); }; subtest 'should not detect message without NG word' => sub { ok(!$filter->detect('

  • PerlでTDD(テスト駆動開発)するなら覚えておきたいCPANモジュール群 | hirobanex.net

    最近、久しぶりに新規コードを書いたんですが、そのテスト書く中でTest::Mock::Guardってモジュール使って便利だったんで、ここらで、動作確認テストを書く上でいいな(使ってみたいな)って思ったモジュール群やテスト関連ネタを個人的なメモとしてまとめておきたいと思います。 いいなって思うPerlの動作確認テスト系CPANモジュール群 私が実際に普段使っているものから、これいいなー使ってみたいなーと思うものまで、一覧にまとめて見ました。結構いろんなモジュール使わないと、いい具合にTDDってできないものだと思います。 入門編 モジュール名 概要 参考日語記事

  • Perl の Mixin / Catalyst のプラグインの仕組み - naoyaのはてなダイアリー

    何とタイムリーな記事。まつもとさんが「仕様の継承」と「実装の継承」について語っているので勝手にまとめてみる。 まつもとさんがITProに書いた記事がきっかけになったのか、最近 Mixin に関する話題をよく目にする、気がします。 Perl は多重継承をサポートする一方で、Exporter を使った Mixin も可能です。この辺はmiyagawa さんのメールマガジンのバックナンバーに詳しく書いてあります。 Object-Oriented Programming with Perl Vol.29 - Exporter による Mixin Object-Oriented Programming with Perl Vol.30 - Exporter::Lite Exporter で関数を export しつつ、それを import した側で、関数ではなくインスタンスメソッドとしてそれを利用す

    Perl の Mixin / Catalyst のプラグインの仕組み - naoyaのはてなダイアリー
  • そろそろPerl4に関して一言いっとくか(クラシカルPerl入門) - Atzy->getLog()

    仕事Perlを使うことになり、先週から久々に(格的に)使ってみました。大体プログラミング言語なんてものは特殊なやつを除けばどれも根は同じなので、それ自体で詰まるということはありません。 が、10数年ぶりのPerlを使いながら、懐かしいことを思い出してみました。思えば遠くへ来たものだ。 アンパサンド Perl5以降では当然のようにサブルーチンを hoge() と呼び出しますが、Perl4では &hoge と呼び出します。 my!our! Perl4では、my*1だとかありませんし、our*2ももちろんありません。 当然ながら、localを使います。 myはまさにレキシカルスコープ、ourはパッケージローカルな変数となります。で、Perl4に存在した(というか、今も存在しますが)localというのは、特殊なグローバル変数。その時点でグローバル変数の値を置き換えてしまい、ブロックを出た後で

    そろそろPerl4に関して一言いっとくか(クラシカルPerl入門) - Atzy->getLog()
  • HTML::Element と HTML::TreeBuilder で盆栽 - @kyanny's blog

    HTML::Element とか HTML::TreeBuilder で HTML 構文木をいじることを盆栽と呼ぶらしいですが、最近よく盆栽してていろいろ覚えたことがあるのでメモ。 as_HTML() で HTML エンティティに変換させない HTML::Element#as_HTML を呼ぶと HTML 文字列が返るのだけど、これを引数なしで呼ぶと "all unsafe characters" が HTML エンティティに変換(エンコード)される。これは普通あまり望ましくないので(変換などせずそのまま出して欲しいことのほうが多い)、それを回避するには my $html = $elem->as_HTML('');と、空文字列を渡してやる。 HTML::TreeBuilder のインスタンスに対して as_HTML() を呼ぶと タグをつけられてしまう これはサブクラスの HTML::Tr

    HTML::Element と HTML::TreeBuilder で盆栽 - @kyanny's blog
  • ファイルハンドルの概念を理解する - Perl入門ゼミ

    Perl › ファイル入出力 › here Perlにおけるファイルハンドルの概念はややこしいので、解説しておきます。 ファイルハンドルは実体ではなくて概念的なもの Perlでファイルハンドルといった場合は、Perlがファイルハンドルとして認識する複数の実体のことをいっています。ファイルハンドルという実体があるわけではないのです。 Perlが、ファイルハンドルとして認識するもの シンボル( FH ) 型グロブ( *FH ) 型グロブへのリファレンス( \*FH ) IO::Handleクラスのオブジェクト IO::Handleオブジェクトを継承したクラスのオブジェクト( IO::File など ) Perlが、ファイルハンドルとして認識するものは、上記の5つです。以下の記述はすべて有効です。 # 1. シンボル FH open(FH, "<", $file) or die "$!"; #

    ファイルハンドルの概念を理解する - Perl入門ゼミ