チラウラヤーン3号

その辺のプログラマーのチラ裏です。

出身地は石川県だけど、金沢ではない。能登の穴水という田舎町。地元の和菓子というと、穴水町が元祖の銘菓ではないようだけど、えんがらまんじゅう がうまい。うまいけど、餅は、都会の人へのお土産としてはなんか敬遠されがちで…。能登に来てもらって食べるのが一番なのだと思う。

東京へのお土産には金沢のお菓子を選ぶことも多い。金沢の和菓子といえば、中田屋のきんつばが有名だけど、他にも森八や、うら田などの有名店がある。先日、金沢在住の友人から頂いて美味しかったのが、うら田の「さい川」。金沢には「犀川」というよく知られた川があり、その名にあやかったのだと思う。

www.urata-k.co.jp

富山県の銘菓、月世界 (つきせかい) を薄くして最中で挟んだようなお菓子。口溶けがよく、ついつい手が伸びて何個も食べてしまう。

電気グルーヴの名曲 Volcanic Drumbeats のベースが高速グルーヴでこういう曲がもっと聴きたいと思い、ベーシストを調べたけど分からず。前に調べた気がするのだけど検索で見つからない。

「ベースを〜〜さんに弾いてもらって、ループさせて…」的なことを卓球が言ってた気がしたのだが。

頑張って検索を続けていると、こんな素敵なページを見つけた!

A

卓球「ハード・ミニマルにボーカルが乗った曲ってこれまで聴いたことがなかったんで、最初は4分打ちのキックの曲だったんですけど、そのオケに合わせてまりんがドラムセットを叩いたらこれも今まで聴いたことがないいい感じだったんです。だったらドラムの人に叩いてもらおうと思って、山木秀夫さんに叩いてもらったんです。そしたら、それが素晴らしくて生ドラムの方向にシフトして、コンセプトも変わってしまった」(キースぺ)

実際には山木秀夫氏の叩いたドラムをReCycle!でバラして使用している。 ベースは、卓球がサーフ・コースターズのリミックスをやったときの素材をReCycle!でバラして、別のレコードのベースと組み合わせたもの。ベースのグリッサンドはMC-404。

卓球「音色は似てたんですけど、全く別のフレーズになってますね。このベースの作り方は他の曲でも結構やりました」

歌詞は卓球と瀧がラジカセでオケを聴きながら書いたもの。

もしかして前に見たのはこのページかも…

あー!サーフコースターズのベースだったのか!「別のレコード」ってなんだろ。MC-404はワウペダル?オートワウ…ワウペダルだけど、グリッサンドができる…?

じゃー、こういうベースが聴きたければ、手当たり次第にグルーヴィーなベースラインをサンプリングしてバラして組み合わせると良いのか。ドリルンベースなるワードも見つけたのだが、ああいうスクエアプッシャー的なのは、ちょっと今聴きたいのとは違うんだよなぁ…。会社のベーシストさんに聞いてみよう。

AndroidのWebViewでHTML5 video mp4 再生は無理っぽい。 ドキュメントに従ったりstackoverflowに書かれているヒントをやってみたけど…。うう。

追記: どうやらm3u8 streamなど、ストリームmime/tyepにもよるようだ。。。。

AndroidManifest.xml

<application
    android:hardwareAccelerated="true">
    ....
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
package com.example.yukiyokoyama.webviewtest

import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.webkit.CookieManager
import android.webkit.WebChromeClient
import android.webkit.WebView


class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val myWebView = findViewById(R.id.webview) as WebView
        CookieManager.getInstance().setAcceptCookie(true);
        CookieManager.getInstance().setAcceptThirdPartyCookies(myWebView, true);
        val webSettings = myWebView.settings
        webSettings.javaScriptEnabled = true
        webSettings.domStorageEnabled = true
        webSettings.allowFileAccess = true
        webSettings.mediaPlaybackRequiresUserGesture = false
        webSettings.loadWithOverviewMode = true
        webSettings.useWideViewPort = true
        webSettings.builtInZoomControls = true

        myWebView.webChromeClient = WebChromeClient()
        myWebView.loadUrl("https://www.quirksmode.org/html5/tests/video.html")
        WebView.setWebContentsDebuggingEnabled(true);
    }
}

ツライ人を相手にする場合、その人が神か仏の化身で自分を試そうとしてると思え、という発想に感心した。まあ、その、最終的に神が汝を救済するかどうかは知る由もないものの。とても才能のある人でも夭折したりする。

pythonの一番勉強になりそうなossプロダクトは?という質問をたまに見かけるけど、ちゃんとossのコード追ったことないから分からない。

requests, bottle, flaskあたりかな?

あとは、標準付属してるライブラリ達かな?

今日のgist


‪5時に夢中の中村うさぎの降板については‬、美保純の印象を著しく損ねたし、アレクまでいなくなって心底残念だ。降板の采配を下した方は不明を恥じてほしい。



「ジック少額短期保険」の解約申請依頼が来た。シノケングループのようだ。半年前の同棲解消に伴い、アパートを退去したときに何か漏れていたのだろうか。シノケンの家賃保証は使っていたが、アンビションに解約手続きをした際に同時に手続きされているはず。これはそれとは別の何かなのか。とりあえず解約申請書は書いたが…本当にゼロゼロ物件は、というかアンビションは二度と使うまい。知人がもしアンビションを使うようなことがあれば全力で止める。


def fn1(a, b, c=True):
    pass


def fn2(a, b, *, c=True):
    pass


if __name__ == '__main__':
    fn1(1, 2, 3)
    fn2(1, 2, 3)
  • fn1() は 3c=3 として受け取ります。
  • fn2() は c=3 のように、引数のキーワードを明示的に指定しないと第三引数が受け取れないようになっています。

shutil.py とか見ると使われてて、調べた。たしかにこの仕組をたまに使いたいときある。

ペアプロしたり、モブプロしたり。3人でやるモブプログラミングは本当に楽しかった。データ分析プロダクトに手を入れるタスクで、私はpythonをある程度書き慣れたドライバーとして、もう1人はデータ分析ロジックのナビゲーターとして、もう1人はpythonは初心者だけど、上級プログラマで、ナビゲーターとして。

バランスがちょうどよかった。だんだんペアプロ、ライブコーディングに慣れてきた。一緒にガヤガヤやると、共有も同時にできて良いし、プログラミングのスタイルや思考様式まで伝わるので、なんというか、すごい。

個人的にはあとは、アジャイル系のフレームワークが自分の中で形骸化されてしまっていて、実感が伴ってないのをなんとかしたい。

Python 文字化け 特定

得られたテキストがバイト列だとして

content.decode('utf8', 'replace').replace('\ufffd', '__INVALID_CHAR__')

して、 __INVALID_CHAR__ で検索。 (replaceしないで、 � で検索してもいいっちゃいいけど)