Test::Deep, Test::Fatal, Test::Mock::Guard などが持つ機能を内包
こんにちは!株式会社VOYAGE MARKETINGで働くエンジニアの yopidax です。 約20年ほど続くサービス、ECナビの技術的負債の返済に取り組んでいます。 ecnavi.jp 今回は直近で、レガシーコードを大量に削除したので、そのアプローチをご紹介したいと思います。 目次 目次 解析の対象と抱える課題 アプローチ 実行されるファイルを洗い出す ログを出力するモジュール 実行 ログのサンプル いざ、大量削除 Perlファイルをgrepする リリース単位を細かくする 結果 工数 実績 まとめ 合わせて読みたい 解析の対象と抱える課題 ECナビを長年支える、Perlで書かれたバッチが対象です。コードはGitLabのリポジトリで管理されていて、規模をまとめるとこんな感じです。 ファイルの数 バッチ関連全体 : 3,315 うち、Perlファイル(.pm, .pl) : 1,111 P
SEE ALSO: blog.perlassociation.org なぜ平成も終わるこのご時世に?と思う方もいらっしゃると思います。 思いの丈を書いてみます。 昨今のWeb開発のトレンドとしては、動的型付け言語から静的型付け言語へシフトが進んでいます。 また、PaaS/SaaS/FaaSの普及により言語選択よりも技術選択とそのアーキテクチャがより重要になってきており、 *1いちプログラミング言語の重要性というものは、(特に動的型付け言語においては)昔ほど重要ではなくなっているのが実情かと思います。 その中でもPerlは、人気度でいえば比較的低い言語といえるでしょう。 LLと呼ばれる言語の中で最低の人気と言っても間違いではないかもしれません。 ひどいときには、1987年に作られたPerlと1959年に作られたCOBOLが並べて語られることすらあります。*2 それでも、ぼくはPerlが好きで
この記事は Perl Advent Calendar 2018の15日目の記事です。 (キリの良いところまでできたのと、記事が書かれていなかったので代打投稿) Custom Runtime のリリースにより、AWS Lambda 上でPerlが動くようになりました。 PerlをAWS Lambdaで動かす 次は AWS Lambda + CGI でサーバーレスだな... — Ichinose Shogo (@shogo82148) 2018年12月8日 ということで、やっていきましょう。 できたもの 動かすのはもちろん、 CGIアクセスカウンター 。 なんと嬉しいことに、最近になって WwwCounter の新バージョン(Ver3.16)がリリースされ、 Perl 5.26 に対応しました! 2018-11-11 perl 5.26に対応。(Ver3.16) 更新履歴によれば一つ前の Ve
新しいことにチャレンジしてみようシリーズとして、始めてみることにした。 きっかけわー、h4とか使っちゃった。で、理由としては「いつかはプログラミングを学びたい」と思っていたから。いま34歳だけど、プログラマ35歳定年説(あれどこいった)とかウケるーと思っているので、いい機会だし、やろうと思った時が始め時だと思うので始めます。人生の中で何か始めたいと思った時、遅いってことはないはず。 あとはこの本読んでこんな感想書いたりしたから。 Webサービスなんていくらでも作れるし、俺もあなたも自由だし、世界はきっとあなたを待っている。のかも。 - 941::blog まぁ、世界を変えるってことなんですよね。俺が変えてやる!とかじゃなくて「自分が変われば世界は変わる」っていう意味ですけどね。 やりたいこと > 941@941 イチからプログラミング勉強するならどうやって学ぶのがいいんだろう。本買ってやっ
はじめに:これは誰のための記事か? Perl で書かれた比較的大きなスクリプトやプロジェクトを保守する必要のある人. Perl 5 との戦い Perl5 (以下 Perl) といえば一時期 CGI を作るための標準的な技術として Web の開発で利用されたり、テキスト処理用の言語として昔から広く使用されている言語です。 かつてはサーバー上で CGI を動作させるために Perl でなければならない というような状態がありましたが、近年では Ruby on Rails や PHP 製のフレームワークなどがサーバー上で普通に利用できるようになっており、かつてのような Perl が必要とされる ようなシチュエーションは減ってきているかと思います。 また、オブジェクト指向プログラミングや関数型プログラミングをサポートする新しい言語が普及してきている現在では、新規の開発に Perl を採用するメリッ
この記事はPerl Advent Calendar 2017の11日目の記事です。 昨日はtsucchiさんのMinion についてでした。Minionはv8からadmin uiが付属するようになったらしいので使わねばと思っていたところでした。 さて今日は、先日僕がメンテナになりリリースしたMouseとText::Xslateについて なぜメンテナになりリリースしようと思ったか どういう変更をしたか を書きたいと思います。 なぜメンテナになりリリースしようと思ったか MouseはShawn M Mooreさん作のPerl5に本格的なオブジェクト指向プログラミングを導入するものです。 Text::Xslateはgfxさん作の高速なtemplateエンジンです。 この2つのモジュールはどちらも広く使われていて、Perl5が今後も実用的な言語であるためにはなくてはならないものです。一方でオリジナ
モジュールメンテナンスを通じて感じる最近のPerl
All slide content and descriptions are owned by their creators.
先週末、はてな社内の勉強会で構造学習、特に実装が簡単な構造化パーセプトロンについて発表しました。発表資料と説明用にサンプルで書いたPerlの品詞タグ付けのコードへのリンクを張っておきます。 今日からできる構造学習(主に構造化パーセプトロンについて) from syou6162 structured_perceptron/structured_perceptron.pl at master · syou6162/structured_perceptron 「えっ、Perlかよ」という人がいるといけないので、Clojureで構造化パーセプトロンを使った係り受け解析のサンプルコードへのリンクも張っておきます(2種類あります)。PerlもClojureもあれば8割くらいの人はカバーできそうなので、安心ですね。 syou6162/simple_shift_reduce_parsing syou616
こんにちは、Webアプリケーションエンジニアのid:nanto_viです。 Webアプリケーションを作っていると、「全角文字と半角文字を統一したい」「ユーザーの入力から漢字を抜き出したい」といったテキスト処理を行う場面にたびたび遭遇します。はてなではWebアプリケーションのサーバー側プログラミング言語としてPerlを多く使っていますが、PerlならこのようなときにUnicodeプロパティを用いた正規表現パターンで柔軟な処理が可能です。 Unicodeプロパティ 現在、ほとんどのプラットフォームで採用されている文字集合がUnicodeです。Unicodeでは文字だけでなくその文字の様々な特性(プロパティ)も定められており、テキスト処理の基礎情報として活用できます。 Perl正規表現でのUnicodeプロパティの利用 Perlの正規表現では、\p{Property_Name=Value}のよう
tl;dr: こういうカンファレンスやりたいと思ってるんだけど、一緒にやろう!手伝うよ!スポンサーになるよ!って人いませんか? また、2月くらいに食事会・雑談会をしたいと思います。興味ある方は連絡ください! YAPC::Asia Tokyo 2015を終えてカンファレンス運営のことを毎晩考えずに済むようになって4ヶ月が経とうとしている。 やってみないとわからないと思うけど予算があってその範囲内におさめるのではなく、何もないところから始めてその分のお金を集めて…って結構胃にくる。なのでそれについて考えなくてよい日々というのは本当に静かで素晴らしかった。カンファレンス運営をする必要がなかったので真面目にエンジニアしてました。 でもボチボチ充電も出来てきました。なのでここいらでbuildersconについてまじめに考え始めたい。そして願わくば賛同者がいればそろそろ準備のために動き出したい。 Wh
Perlの開発者であるLarry Wall氏が、ブリュッセルで開催中のオープンソース開発者カンファレンス「FOSDEM」において、2月1日(現地時間)に、同氏が2015年に61歳の誕生日を迎えることを明らかにするとともに、Perl 6.0のバージョン1.0を2015年のクリスマスにリリースすると発言した。 Perlは現在、最新バージョンであるPerl 5系列と、開発中のPerl 6系列に分岐しており、Perl 6の開発は2000年のスタート以来、難航している。なお、Perl 6では言語仕様の大幅な変更が行われており、Perl 4やPerl 5との後方互換性が失われる。 今回のLarry Wall氏の発言について、Perl開発者の中には懐疑的な見方もあり、今回の発言によって、2015年のクリスマスにPerl 6のバージョン1.0が確実にリリースされるわけではないが、バージョン1.0について語
■JavaScript JavaScripter(ジャバスクリプター) JSer(ジェイサー) ■Flash Flasher(フラッシャー) ■PHP PHPer(ペチパー) ■Perl Perler(パーラー) Perl Monger(パール・モンガー) ■Python Pythonista(パイソニスタ) Pythonian(パイソニアン) Pythonist(パイソニスト) Pythoner(パイソナー) ■Ruby Rubyist(ルビイスト) ■JAVA JAVAer(ジャバー) ■Scala Scalalian(スカラリアン) ■LISP LISPer(リスパー) ■COBOL COBOLer(コボラー) ■Haskell Haskeller(ハスケラー)
Pelletkachels waren ooit eenvoudige apparaten voor verwarming, maar ze hebben een opmerkelijke evolutie doorgemaakt sinds hun bescheiden begin in de jaren ’80 van de vorige eeuw. In dit artikel duiken we diep in de geschiedenis van pelletkachel, bespreken we de belangrijkste mijlpalen en ontwikkelingen op het gebied van subsidiemogelijkheden en werpen we een blik op de transformatie tot moderne en
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く