受講された方、サポーターの方、お疲れ様でした。講師をやったジャージの人です。スライド中の練習問題と復習問題ですが、昨年夏に書いた解答例をblogに掲載しています。sironekotoro.hateblo.jpあと、時々つかったスライドも置いておきます。docs.google.com以下、うちが用意していた資料です。Perl入学式では、HTMLの簡単な知識は所与のものという体でやってきたのですが、そうでない方もいる・・・ということで準備していたMarkdownです。Bitbucketmojoliciousで寿司を回転させるソースです。github.com昨年夏に作った「最終問題」例です。探すなら未公開物件ネットminimo(ミニモ)|美容院・美容室・サロンのスタッフを予約MVCのモデルを考えつつ、Webにどのような情報が送られ、処理されて表示されているか?を考えてみると良いと思います。mojoliciousでfizzbuzz今回の講義中、うちが詰まってしまったmojoliciousでfizzbuzzのコード、リベンジ編です。3パターン用意してみました。gist.github.comPerl入学式を卒業したら?Perl入学式の卒業後、読んで自習してみると良いかも?という本については以下のエントリにリストアップしています。sironekotoro.hateblo.jp何度か言及しましたが、Perl入学式を修了すれば「初めてのPerl」で挫折することはありません。現在、カリキュラムの順番入れ替えをと講義テキストの改版を進めています。新カリキュラムの構成は以下となっています。3周目の参加も歓迎します。時間が空いての再参加ももちろん歓迎です。Perlが実行できる環境にある場合、15時からの参加をお勧めします。第1回の開催が告知されています。Perl入学式くんに襲われてる通天閣のイラスト、いいですねperl-entrance-osaka.connpass.comまた、サポーターとしてPerl入学式を一緒に運営・盛り上げていってくれる方も募集中です。教えたり、一緒に考えることで学びはとても深くなります。受講された方、サポーターの方、お疲れ様でした。講師をやったジャージの人です。スライド中の練習問題と復習問題ですが、昨年夏に書いた解答例をblogに掲載しています。sironekotoro.hateblo.jpあと、時々つかったスライドも置いておきます。恒例となったピザ会のお題です。「サラリーマン川柳」のサイトから川柳を集め、それを元に「上の句」「中の句」「下の句」で分割し、ランダムに組み合わせ、新たな俳句を生成せよ!というものevent.dai-ichi-life.co.jp__DATA__セクションにそのまま俳句コピっておっけーというレギュレーションだったので、サクッと出来たのがこちら。Bitbucket下はWebから持ってきて10句を表示する版。(httpsのサイトへのアクセスが必要なので、IO::Socket::SSLとNet::SSLeayが必要。)ルビ部分の削除をサブルーチンに分離し、ルビの削除と俳句部分の抜き出しに正規表現を利用しています。第5回ですが、3月30日(土曜日)を予定しています。今回、時間が余れば以下の第5回予告編スライドを投入したかったのですが、存外時間が押して紹介できなかったので、ここで紹介して供養しまする。いるのと使うのでは違う公開鍵暗号方式については基本情報処理試験とかでやるんで概要はわかってるつもりなんだけど、それを使ってリモートサーバにログインできるよう設定するとかは別の話なんだよなー。先輩2「大丈夫そう」うち「!?」VPS内のApacheが外からの80番リクエストを受け、それをバックエンドのサービス(8081番で待ってる)に振り分ける、という設定をしていることが分からなかった。2019年2月8日チャットで本物のワンライナーが流れてくるという福利厚生がある。2019でid:xtetsujiさんよりから紹介いただいたものです。さんのめでたい話は御本人からお知らせがあるはず。2019ということで、16年ちょっと勤めた富士通コミュニケーションサービス株式会社を退職し、シーサー株式会社に転職しました。2013に触発されたところから始まっています。それから5年ちょっと。いまスポンサーのページを確認したのですが、ちゃんとシーサー株式会社がいますね。2013正直、参加までは「リファレンスもよく理解していない自分が参加してもいいんだろうか・・・」って思ってましたが、何ができて、何が目標になれそうなのか、を測ることができました。参加して本当によかったです。当時、自分がPerl入学式でサポーターや講師をするとは思っていませんでした。技術職としてYAPCのスポンサー企業に転職するとも思っていなかったので、人生ってわからんって感じです。strict忘れを指摘してくれたid:uzullaさん。uzullaさんのオブジェクト指向についての記事が好きで年に何回か見返してます。懇親会で「そろそろサポーターどう?」と誘ってくれたid:xtetsujiさん「卒業後にどう勉強していいか分からない」という人はサポーターに回るのがオススメですね。2017年3月4日ほか、当時講師やサポーターを務めてくれた方々、本当にありがとうございます。Perl入学式を終えてから2013年度のPerl入学式を終えた後ですが、AmazonでPerl本を新しい順に買い、それを写経したりしていました。sironekotoro.hateblo.jp当然、写経だけでは飽きてくるので、自分の作りたいものを作ります。作れない!とか、もっとスマートな書き方があるはず!うちが知らないだけ!となったタイミングで本の学習に戻っていくということを繰り返しました。時には脇道にそれてJavascriptを勉強したり、興味のあるものを好きに勉強して、自分の作りたいものを作っていきました。qiita.comまた、YAPCは欠かさず参加しておりました。トークがその時わからなくても、そのうち「わかった!」ってなる時が来るかもしれない・・・し、何よりもエンジニアたちがワイワイ楽しそうにやってるあの雰囲気、とても良いんですよね。スタッフの方々のおかげです。ありがとうございます。Perl入学式のサポーターとなってからは、このブログに残すようにしてます。sironekotoro.hateblo.jp初出社2月1日が初出社だったのですが、入社の手続きと社給Macの環境構築で1日が終わりました。いえ、入社の手続きの半分くらいは入社日以前にSmartHRで終わっており、楽ができました。煩雑な人事労務管理を楽にするサービス、それ自体が福利厚生と感じました。来週からは個人に用意されている仮想サーバの本格的な環境構築に進みます。それに合わせて、週末の自習もサーバー側を意識したものになりそうです。前職の退職時にいただいた図書カードやAmazonギフト券を早速利用します。ありがとうございます。転職にあたり、うちに声をかけてくれたid:tecklさんは「恒温動物を変温動物にする」ような作業で大変そうな中、要所要所でサポートしてもらい助かりました。2019年2月1日Perl入学式にも現場で利用されているPerlの知見をお伝えしていきたいと思います。今後ともよろしくおねがいします。Onnnasonからずっと楽しみにしてた東京での開催。yapcjapan.orgうちが見たセッションの裏番組も気になるセッションで、毎回自分が分裂するかYoutube録画が欲しいと思います。先程のゲスト講演の資料です~。ゲストトークとのことでベストトーク対象には無かったけど、あったら1票入れてたなぁ。例として上がる「取引コストの高い組織」がまさに今いる自分のところであり、前のめりで聞いておりました。2019年1月26日これはスライド中のシステムは時間を経ると次第に交換できなくなり、コントロールを喪失するを見てのツイート。うちのクライアント、うちのいるグループについてのコントロールを喪失しており、うちらの言われるがままにするしかなく・・・しかも、うちらが知見も経験も技術も独占してるよなぁ・・・ってことを思いながらのツイートでした。広木さんの本もオススメです。gihyo.jpYAPC座談会2016年、札幌でのリブートから大阪、博多、沖縄と開催されてきたYAPC::Japanの実行委員長さんたちの座談会。同じYAPCでありつつも、各地域ごとに課題や特色や狙いがあり、そんで楽しんでもらおう!的なホスピタリティ精神溢れる話ばっかで、すごいよかったです。会場押さえるのも、メンバー揃えるんも、スポンサー探しも、大変なんだなぁ。Tech」のプロダクト、Garuda(ガルーダ)の紹介。入力された情報に応じて最適なsolverを提案し、その解をさらに別のsolverに渡して望む解を求めて行く、というようなシステム(うちの理解力ではこの辺りが限界あとのそのsolverはPerlはじめ、様々な言語で記述が可能(Garudaで利用する形式のラッパーで包む必要はある)。デモでは細胞の情報をインプットし、細胞内の酵素の構成図(オブジェクト図みたいだった)、その酵素に薬物を投与した時の反応をグラフで表示、というのをポンポンポンと進めていく様を実演。大学・企業での導入もされており、あぁ、こうやって研究が進められていってるんだなぁってのを垣間見ることができました。萩原さんspeakerdeck.comお若いのに堂々とした話ぶりと落ち着きぶり。練習したんか、学生時代通してそういう経験積んできたのか、立派でした。萩原さんが関わっているminimoはmojoliciousで動いているってことで、Perl入学式でもそのことは伝えていきます。自分たちが学んでいるフレームワークが実世界で稼働してるよ!ってのはモチベーション高くなると思うんですよね。LTで紹介されるid:xtetsujiさんの「2018年のPerl入学式報告」で紹介していただきました。キッカケに企業への転職したものです。なにか聞きたいことがあれば、上下アディダスの紺スポーツウェアのおっさんがうちです。さんに改めて「すぐわかるオブジェクト指向Perl」についてのお礼(出版してくれてありがとうございます!的な)を伝えました。この本は「自分が欲しかったけど無かったから書いた」というようなことを話していて、あ、さっきtokuhiromさんのキーノートでも同じことを言っていたなぁ、と思うなどしました。他、ここしばらく姿を見せてない、精神的なPerl恩師の方の消息を聞いて回るなどしておりました。報恩謝徳・恩送りしていくPerlという言語からもPerlコミュニティからもたくさん色々なもの(環境や知識とか)をいただいているという実感はあるので、次の世代や他の人にもそういうものを伝えていきます。次回は未定とのことですが、懇親会中にどっからから「京都!」って声が聞こえてきた気もするんですが気のせいかもしれない。2次会で「京都でYAPCはする...するが、具体的な場所の指定まではしていない。そのことをどうか諸君らも思い出していただきたい。東京では各回の講義終了後にピザ会(ピザ&ジュース代は参加者負担)を開催しており、そこで受講者さんと雑談などをしております。さんから課題が出てそれをコードで解決する、という試みを行っています。各日の上位5つの検索語を表示し前日と順位に変動があれば、それを示す印をつけるというもの・・・だった気がします(曖昧しかし、うちの実力不足で当日できたのは非公式APIから特定の日のデータを取得するJSON形式のデータをPerlのデータ構造(リファレンス)に変換する関連する記事のタイトルを表示する(!?)まででした。最後の「関連する記事のタイトルを表示する(!?)」なんですが、当時は完全に勘違いしており、検索語を取ることができませんでした。結果、無念のタイムアップとなったのでした。作ってみたが・・・2019年01月01日〜18日までで、連続した日に現れる検索ワードは「純烈」が2019年01月10日と翌2019年01月11日・・・のみ!これは、完全に同じ単語が連続した日に現れた場合、という条件でしか抽出できなかったのが原因。2019と、検索ワードとしては同一ではないので、別の検索語と判断してしまったわけです。これらの語を「同じ意味をもつ語」として、「箱根駅伝」が3日連続して検索語に登場した、と判断するには文字列を分解して他の検索語とのマッチ率を見て同一の話題の単語か?を判断する・・・って工程が必要になるんかなぁ?ちょっと今の自分にはハードル高そうです・・・Googleトレンドを非公式APIから取得し、各日のランキングをとり、以前に出現してたらその日と順位も表示するこのままでは悔しいので、同じ検索ワードが過去にランキング入りした場合、前回登場した日付と順位を表示する、ということにしてみます。同じ検索ワードが連続していない日に出てくることがあります。1位]といったような表示が出るようにしてみました。bitbucket.org一応、プログラム本文にコメントをいっぱい書いてみたんですが、これ、うち自身も3ヶ月後に見て「何言ってるんだこの人・・・」ってなるパターンな気がします。時系列順に表示するだけであれば、日付をkeyとして、valueには順位順に検索ワードを格納した配列リファレンスを入れるデータ構造でいけます。];しかし、このデータ構造だけでは、検索ワードが過去のいつ出現したかを調べるときに大変です。1日前のハッシュkeyを把握するvalueをデリファレンスし、検索ワードが配列リファレンスに格納されているかを調べる1日前で見つからなければ、さらに前日に遡り調べるこれを繰り返すのは厳しいです。100日とか計算するとして、100日目の検索ワードが1日目に出現していた場合、過去99日遡って探すことになります。見つかれば良いですが、見つからなかったら・・・?計算量も多そう。いうことで、検索語そのものをkeyとするデータ構造を作ります。valueには2つのリファレンスを入れます。いう文字列をkeyとしてvalueに配列リファレンスを格納。この配列リファレンスに1つ以上の要素がある場合には、過去複数回出現している判断。あればそれが前回の出現日という処理をしています。1つのデータ構造では難しいなぁ、と思ったら同じデータが入っていてもkeyを変えた構造のデータを作ってみるという感じです。うちが最近勉強しているSQLだと同じレコードに別名をつけて副問い合わせをする、みたいな感じですかね。実装力やデータ構造力が高ければ、もっと簡単になりそうな気がするんですが、気がするだけでその具体的な道筋が見えない・・・ってのが今のうちの現在地です。※第4回でやる「サブルーチン」を導入すると、コードの見栄えがもう少しスッキリするはず。おまけ昨日のチーム内プログラミング勉強会で出した課題より1問。出さないとペイしない。1/3なので、ボーナス抜きでは普通に負ける。受講された方、サポーターの方、お疲れ様でした。講師をやったジャージの人です。スライド中の練習問題と復習問題ですが、昨年夏に書いた解答例をblogに掲載しています。sironekotoro.hateblo.jpあと、時々つかったスライドも置いておきます。docs.google.comリファレンスは難しいリファレンス、自分も苦労した覚えがあります。いうか、リファレンスがあると何が便利になるのか?何が良くなるのか?が、まずわからなかった。自分が複雑なデータ構造を扱うことはないと思ってました。「すっぱいブドウ」の話ではないですが、リファレンス使わなくてもいいもんね!と思っていたものです。その時は斜に構えたままでしたが、Perlに慣れ、自分がしたいことを実現するためにはリファレンス使えばいけそう!となってから一気に理解が進みました。リファレンスは教えるのも難しいリファレンス、Perl入学式の現在のテキストでは、「リファレンスじゃないとできないことがある」「便利だから使う」ってな感じで進めています。しながら捻り出しているのがリファレンスの「たとえ」です。「変数が格納されているメモリのアドレス」という説明でわかる人はそれで良いのですが、「メモリのアドレス」でわかる初心者さんがどれほどいるのか。「C言語のポインタのようなもの」といっても、C言語もポインタも知らなければ伝えられません。そもそも、うち自身がC言語は名前だけ、ポインタも「Perlのリファレンスみたいなやつ?」って程度の理解です。通すことで1つの座標(緯度経度)に定まるように、配列やハッシュをリファレンスにすることで一つのスカラーとして扱うことができる」という言い方とスライドを用意しました。雑多な人間の属性と値(ハッシュ)がGPSを通すことで1つの座標(スカラー)になるハッシュをリファレンス化することで1つのスカラーになるもし、リファレンスについて良い言い回しや、こういう例えはどうだろう?ってのがあれば是非教えてください。以前のエントリでも書きましたが、深澤千尋さんの「すぐわかるオブジェクト指向Perl」これがいいです。gihyo.jpタイトルにはないですが、この本の半分程度がPerlのリファレンスについての説明に当てられています。これは、Perlのオブジェクト指向はハッシュリファレンスを利用するためなのですが、微に入り細に入り、噛み砕いて説明してくれている良い本です。2019」が今週末に開催です。様々なPerlやシステムについてのセッションが多数行われるイベントです。参加ください!yapcjapan.orgyukicoderyukicoder.me講義の後のピザ会で紹介したyukicoderです。うちもサポーターのmotiさんから教えてもらいました。練習する目的で運営されています。ことですが、★1つのレベルの問題であれば、Perl入学式第1回〜第3回の内容で解けるものもあります。下記の初心者向けチュートリアルから始めてみてください。yukicoder.mePerl入学式の課題で物足りない、とか、プログラムで問題を解くことを習慣にしたい、という方にもオススメです。Googleトレンドの非公式APIから情報を取ってきていい感じにする恒例、ピザ回のお題です。別エントリであげます。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。