2018年11月11日日曜日

Haskell Day 2018 に参加してきた

ここ数年子育てで忙しく、なかなか勉強会に出れなかったのですが、久しぶりに行ってきました、非常に楽しかったのと、さらにhaskell最高って感じになって帰ってきました。


haskellを導入した話


後半で出てくる、HRR(Haskell relational record)は以前ちょっとやってみようと思いつつ今まで放置していたので、これを期にしっかりやってみようと思い、そんな話の中で、esqueletoがinvalidなsqlを吐くとか知らない情報もいただけたので良かった。

Servantで実現する高速かつ安全なAPI開発


実際に業務Servantを導入しているということでお話をききました、自分はYesodをチョロッと触った程度でServantをガチに触ったことないので、おもしろそうだなと感じた。YesodとServantってPythonでいうDjangoとFlaskみたな関係なのか。ただ、やっぱりhaskellの抽象化と型検査がガチガチに効いてる感があって非常に良かった。

並列並行言語Haskell


これはちょっと高度な話題で、半分ぐらい置いていかれてたがおもしろかった。多少、Haskellによる並列・並行プログラミングは読んでいたのでチョイチョイは理解できましたが、STMとかMVarとか適当な理解力のまま、放置していることもあるので、また暇を見つけて読もうかと...ただ、haskellのやり方は普通の言語のそれとは違って、綺麗に書けてるので気に入ってるかな、例えば評価戦略と実際の処理を分けて書いたりとか、このセッションは自分の勉強不足が身に染みた内容でした。

Semigroupとは?Monoid?環?


Haskellをやっていくといつしか遭遇するやつ、自分はまともに数学なんかやったこと無いので、数学的な話とか数式が出てきて完全に置いていかれるんだけどモナドとかやる上で必要。ただセッション自体が私なんかでも分かるように説明されていたので、非常に勉強になった。haskellをしっかり身につけたいなら一読した方がいいスライドだと個人的に思う。

gloss: 動かして遊んで学ぶHaskell


graphicsを使って遊びながら簡単に学べそうで、自分の子供にもそのうちやらせてみようかななんて感じた。でも業務でも、データをグラフ化したり視覚化するのに使えそうなので、一度いじって見ようかと感じている。

最後に


ちょっと簡単過ぎるけど、今回いってさらにhaskellを使い倒してみたくなったhaskell素人中年ジジィーになった感じでヤバい、主催者の方々、登壇の方々、有難うございました。

諸事情で最後までセッションを聞けなかったのは残念でしたが、またチョイチョイ顔を出すのでよろしくお願いします。

2018年9月20日木曜日

両耳イヤホン買いました

イヤホンが壊れて、片耳しか聞こえなくなってしまったので、両耳で聞ける、両耳イヤホンを買いました。
なにしろ、前のイヤホンはジャックから両耳まで線があるもんで、右手にビール左手にスマホという状況で、非常にウザい感じになる。

電話でもかかってきたら、もう、どうしていいかわからず、身を任せて車内を彷徨うばかり...

そういう理由で、IEEE802.15.1で規格化されている、ブルーチューシュな両耳イヤホンを購入


 スマホがSony製なのでこれ、お値段も6000円程度、ビックカメラのポイントが3000円程度あったので、安く買えました。

これで、両耳で音楽が聞けます、ただ、電話もイヤホン部についているボタンを押せば、通話ができるのですが、両手が塞がっているので状況が変わらないことに、今気ずきました。

Stereo出力なので、両耳で聞けるイヤホンを買ってください、片耳イヤホンを2つかってもジャックを挿すところはひとつです。

 

2018年8月29日水曜日

祝、双子と一緒に、Solaris11.4でた、とりあえずLocal Repository作っとけ

Solaris11.4でたよ


双子出てきた! 

と思ったら、

Solaris11.4でた!

って感じになってめでたいので、記念にローカルリポジトリ作った


Solaris11.4のインストールは熟練のSolaris遣いの偉い人にお願いして、私はローカルリポジトで我慢します、いろいろzoneとかゴリゴリ作る人はあった方がいいかも。

まずダウンロード


https://www.oracle.com/technetwork/server-storage/solaris11/downloads/local-repository-2245081.html
ここいって全部ダウンロードしてくる、

自分はsolaris 11.3のzone作ってそこにリポジトリ作ったよ

root@repo114:/share# ls -l
total 20267487
-rw-r--r--   1 500      500         4317  8月 29日  04:16 README-zipped-repo.txt
-rwxr-xr-x   1 500      500        12262  8月 29日  04:16 install-repo.ksh
-rw-r--r--   1 500      500      1968246581  8月 29日  04:17 sol-11_4-repo_1of5.zip
-rw-r--r--   1 500      500      1814619737  8月 29日  04:18 sol-11_4-repo_2of5.zip
-rw-r--r--   1 500      500      1772147401  8月 29日  04:19 sol-11_4-repo_3of5.zip
-rw-r--r--   1 500      500      2132702935  8月 29日  04:20 sol-11_4-repo_4of5.zip
-rw-r--r--   1 500      500      1939943920  8月 29日  04:21 sol-11_4-repo_5of5.zip
-rw-r--r--   1 500      500          495  8月 29日  04:21 sol-11_4-repo_digest.txt

リポジトリのファイルシステムを作成する


リポジトリデータを格納するファイルシステムを作成する
zone # zfs create -o mountpoint=/var/pkglocal rpool/pkglocal
そしたら作成する、同時にisoも作っておく
root@repo114:/share# ./install-repo.ksh -d /var/pkglocal -I
Using sol-11_4-repo download.
Uncompressing sol-11_4-repo_1of5.zip...done.
Uncompressing sol-11_4-repo_2of5.zip...done.
Uncompressing sol-11_4-repo_3of5.zip...done.
Uncompressing sol-11_4-repo_4of5.zip...done.
Uncompressing sol-11_4-repo_5of5.zip...done.
Repository can be found in /var/pkglocal.
Building ISO image...done.
ISO image can be found at:
/share/sol-11_4-repo.iso
Instructions for using the ISO image can be found at:
/var/pkglocal/README-repo-iso.txt
root@repo114:/share#
終わると、/var/pkglocalが初期化されてるので、pkg serverを起動する

root@repo114:~# svccfg -s application/pkg/server setprop pkg/inst_root=/var/pkglocal
root@repo114:~# svccfg -s application/pkg/server setprop pkg/readonly=true
root@repo114:~# svccfg -s application/pkg/server setprop pkg/port=80
root@repo114:~# svcadm refresh application/pkg/server
root@repo114:~# svcadm enable application/pkg/server
root@repo114:~# svcs -xv
ブラウザで、「http://192.168.0.20/」が見れればOK



Solaris11.4のpublisherを設定する


root@sol114-dev:~# pkg publisher
パブリッシャー              タイプ ステータス P 場所
solaris                     起点   オンライン F http://pkg.oracle.com/solaris/release/
ローカルのリポジトリに変更する
root@sol114-dev:~# pkg set-publisher -M '*' -G '*' -g http://192.168.0.20/ solaris
root@sol114-dev:~# pkg publisher
パブリッシャー              タイプ ステータス P 場所
solaris                     起点   オンライン F http://192.168.0.20/
完了、試しにzoneを作ってみる
root@sol114-dev:~# zonecfg -z bare create
root@sol114-dev:~# zoneadm -z bare install
次の ZFS ファイルシステムが作成されました:
    rpool/VARSHARE/zones/bare
Progress being logged to /var/log/zones/zoneadm.20180828T212530Z.bare.install
       Image: Preparing at /system/zones/bare/root.

 Install Log: /system/volatile/install.1381/install_log
 AI Manifest: /tmp/manifest.xml.kI3ood
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml
    Zonename: bare
Installation: Starting ...

        Creating IPS image
Startup linked: 1/1 done
        Installing packages from:
            solaris
                origin:  http://192.168.0.20/
Creating Plan (Package planning: 106/415): /
library/ncurses                       92/415   13732/65388  113.1/428.2  510k/s
...
...
root@sol114-dev:~# zonecfg -z bare create
root@sol114-dev:~# zoneadm -z bare install
次の ZFS ファイルシステムが作成されました:
    rpool/VARSHARE/zones/bare
    Progress being logged to /var/log/zones/zoneadm.20180828T212530Z.bare.install
   Image: Preparing at /system/zones/bare/root.

外見るよりは早いので試してみてください、なんかいろいろ新機能入ってるし、やっぱsolarisは実機がほしいな...だれかくれ..