北海道苫小牧市出身の初老PGが書くブログ

永遠のプログラマを夢見る、苫小牧市出身のおじさんのちらしの裏

【朗報】健康になるために酒を辞める必要はなかった

前回の健康診断で、高脂血症のため要治療というショッキングな結果が出た。どうせ医者に行けば禁酒しろと言われると思い、2018年は完全に酒を絶った。本当に一滴たりとも酒は飲んでいない。 そして一年後の健康診断の結果がこちら。 健康診断の結果 変わって…

django.urlsのコードリーディング

django ではURLのルーティングを django.urls パッケージで処理している。このパッケージのソースはなかなか読みにくいので、読むための手がかりを記しておく。 バージョンは2.1を仮定していることに注意1。 クラス階層 django.urls パッケージでは継承もイ…

今日は YAPC::Tokyo 2019 の日です

YAPC::Tokyo 2019 に来ましたので、自分用のメモを残します。 オープニング / @magnolia_k_ さん 拍手の練習 普段は 吉祥寺.pm してます Hokkaido, Kansai, Fkuoka, Okinawa と回ってきた Tokyo に戻ってきた 「報恩謝徳」 恩送り:誰かから受けた恩を他の人…

今日は YAPC::Tokyo 2019 前夜祭 の日です

YAPC::Tokyo 2019 前夜祭 LTソン presented by 吉祥寺.pm に参加予定ですので、自分用のメモを残します。 吉祥寺.pm 提供です トーク4本、LT6本 懇親会参加率が高い 4年続いている #yapcjapan と #kichijojipm 飛び入り歓迎 技術イベントスポンサーやってい…

WSL上でcircleci local executeをするための試行錯誤

ハマったのでメモ。 大前提として、 WSL と Docker for Windows をうまく連携しておく必要がある。 以下のような手順。 qiita.com ただし、 Bash on WindowsでDockerを使えて便利になったけど相対パスを指定すると不具合が出る についてはもっと楽な解決法が…

2018年までのまとめ

年末に書こうと思ってたけど、ニンテンドースイッチで遊んでたら書くの面倒になって書かなかったのだけど、まとめておかないと数年後には忘れてしまいそうなのでメモっておく。 2016年 子守 Haskell入門の執筆開始 12月に Surface Studio を買う 2017年 子守…

python3のmapはリストを返さない

cols_upper = map(str.upper, "a,B,c".split(",")) cols_lower = map(str.lower, cols_upper) for c in cols_lower: print(c) for c in cols_upper: print(c) python2 だと動く。 A B C a b c python3だと動かない。 A B C python3では戻り値がイテレータに…

MariaDBでPythonのmysqlclientモジュールをビルド

昔はそうではなかったようだが、最近は MariaDB のパッケージに mysql_config が入っておらず、そのままでは mysqlclient モジュールがビルドできない。 Mac の場合の対処法はここに書いてある。 stackoverflow.com Ubuntu (on WSL) の場合も基本は一緒。 $ …

今日は "GO GLOBAL" meetup #1 の日です

"GO GLOBAL" meetup #1 に参加していますので、自分用のメモを残しておきます。 コーディング試験Codility運用の実態と実績 / @k0000i さん コーディング試験とは : コンピュータサイエンスの理解度を見る amazon, Intel, EA など 多数の言語に対応。VBとか …

今日は Haskell Day 2018 の日です

Haskell Day 2018 に来ましたので、自分用のメモを残しておきます。タグは #HaskellDay です。 作りながら学ぶHaskell入門 / @igrep さん 会場、懇親会のスポンサーは IIJ 様 (ありがとうございます!) mmlh コマンドで各自進める 課題の自動添削、たまにヒ…

inline-java パッケージを WSL へインストール

ハマってガチャガチャしたので間違いあるかもしれないけどメモ。 まずjavaをインストール。入れるのは default-jdk のほうがいい気もする。 $ sudo apt install openjdk-9-jre-headless $ sudo apt install openjdk-9-jdk-headless jvm パッケージを入れるの…

今日は Roppongi.pm #1 の日です

六本木.pm に来ていますので、適当にメモします。 オープニング 吉祥寺.pm + Okinawa.pm = 六本木.pm 六本木で Okinawa.pm やればいいや 飲食自由、フリードリンク ハッシュタグは #roppongipm ラクダがピンクだった頃の思い出 / @yoshiyuki_kondo さん Cプ…

"アルゴリズムクイックリファレンス" のノート (2)

p.4 の貪欲法。素朴なアルゴリズムよりこちらの実装のほうが楽に思える。 github.com 前回の遅いアルゴリズムとの速度比較。 variance introduced by outliers が大きくていいのかは気になる。貪欲法の方が 2,000 倍以上速いので、むしろ前回の slow の実装…

"アルゴリズムクイックリファレンス" のノート

p.3 の convex hull の素朴解。 https://github.com/hiratara/hs-nutshell-algorithm-examples/blob/master/src/Main.hs 正しいかわからないので、plotしておく(案の定バグってたので修正してある)。 道具は datahaskell に従った。具体的には、乱数に mwc-p…

"The Elements of Statistical Learning" のノート

The Elements of Statistical Learning . chap. 2 supervised learning と unsupervised learning inputs predictors, independent variables, features とも言う outputs responses, dependent variables, targets とも言う quantitative qualitative : 有…

LTS-12.1でhpack-convertコンパイルできないんすよねー

そんなこともあろうかと、forkして lts-12.1 ブランチ用意しておきましたので。 github.com まあ、ただの変換ツールなので、古いLTSでビルドしても構わない気はするけど、新しいマシンだと ghc インストールさせたりするのだるかったので。 ということで、手…

Haskell入門のサンプルコードのLTS-12.0対応

つい半年前に最新のLTSへ対応したばかりなのに、気がつくと LTS-12.0 が出て、 ghc-8.4 を Stack から使えるようになった。コミュニティが活発で、非常にありがたいことである。 ということで、 Haskell入門 のサンプルもLTS-12.0に対応させたブランチを用意…

今日は第15回 Cloud Application Platformアーキテクチャの日です

今日は第15回 Cloud Application Platformアーキテクチャの日です 第15回 Cloud Application Platformアーキテクチャ にお邪魔しています。 Cloud Application Platformアーキテクチャ / asami224 さん ディスカッション用のスライドです Cloud Application …

Dist::Milla で cpanfile に書かれた依存モジュールの解決

チュートリアル にも書いてないし、やった記憶もない。昔からこうだっけ? $ milla listdeps | cpanm 依存モジュールが入ったら、 milla build とか milla test とか。 Test::Pod とか必要だったら、 listdeps に --author とかつければ良い。

windowでGCPのcloud shellを使う

windows の chrome で GCP の cloud shell を使おうとすると、 Ctrl-t, Ctrl-n, Ctrl-w あたりをブラウザのショートカットに食われて発狂しそうになって困ってたんだけど、 SSH for Google Cloud Platform で解決できることを知った。 ちなむと gcloud alpha…

WSLのubuntuにDist::Millaを入れる

WSL のubuntuにDist::Millaを入れたときのメモ。plenv、perl5.26.1、cpanmくらいまではすんなり入った。 割と試行錯誤して入れたから、他にも必要かも。 $ perl -v This is perl 5, version 26, subversion 1 (v5.26.1) built for x86_64-linux ..略.. # Dis…

.NETがむずかしい

MSのエコシステムがよくわからなくていろいろ調べている。調べたのはこんなところ。 .NET のランタイム環境は複数ある Windows では、.NET Framework と .NET core macOS では、mono と .NET core mono はCLIで扱える ( mono コマンド) .NET core はCLIで扱…

F#とUnityを学んでいる

せっかくWindowsマシンを使っているのだからMSの開発環境のエコシステムにどっぷり浸かってみたいと常々思っていたのだが、ようやく最近触り始めた。 まず、F#については Beginning F# 4.0 を読んでいる。F#はOCamlをベースにしていると聞いていてずっと興味…

スライド公開: YAPC::Okinawa 2018 事業を支えるPerl

スペシャルセッションで、弊社のプロダクト開発の現場について話してきました。

今日はYAPC::Okinawa 2018 ONNASONの日です

YAPC::Okinawa 2018 ONNASON に参加していますので、自分用のメモを残しておきます。 オープニング / @codehex さん めんそーれ! A会場は飲食禁止 モバイルルータは電源切ってね 赤いリストバンドの人を撮影しないで JPAの行動規範を守ってね #yapcjapan に…

Haskell入門のサンプルコードの最新LTS対応

拙著 Haskell入門 のサンプルコードは lts-8.24 にしか対応していなかったので、現時点の最新である lts-10.6 に対応させた。変更したのはすべてライブラリがアップデートされたのを追随したもの。 master ではなく lts-10 というブランチにしてあるので、注…

Re: 凸頂点の数 横へな2016.4.2 問題

凸頂点の数 。30分。 今回は共通化したいところをグッとこらえてコピペ。前回まで初めから抽象化にこだわって問題を解いていたが、具象例が集まってからのほうが良い抽象化ができることから、60分という時間を考えると抽象化はし過ぎないほうが良い選択だと…

Re: ぴったり含む長方形 横へな2016.3.5 問題

ぴったり含む長方形 。点1個から帰納的に最小の長方形を出そうと方針を誤り、敗北。 方針変換後は45分。これはさらに15分かけて足切りを入れたもの。そもそも点を累積して数えるようにすればもっと速い。 package Pire; use strict; use warnings; use Expor…

Re: まわせ! Bouwkamp!! 横へな2016.2.6 問題

まわせ! Bouwkamp!! に挑戦したが、惜敗。90分かかった。 正攻法で挑むと楽しい良問ではあったが、意外に手数が多い。 package Bouwkamp; use strict; use warnings; use Exporter qw(import); our @EXPORT_OK = qw(solve); sub decode_bouwkamp ($) { my @r…

Re: 不良セクタの隣〜 横へな 2014.3.7 問題

不良セクタの隣 の問題で肩慣らし。 以下はとりあえずテスト通しただけの状態そのままのコード。単体テスト含めてフルスクラッチからで45分くらい。場当たり的にモジュール化したので、無駄が多い。 初め「複数の」を見落としてて、最後に方針転換したけど、…