小学生の自由研究に最適…かもしれない中央卸売市場の卸売数量をMySQLで扱う

築地市場から豊洲市場への移転に関して、諸々を調べていた時にちょうどよさそうな大量データをみつけたので、紹介がてら。 中央卸売市場の卸売数量は公開されている いわゆる築地とか豊洲とかの卸売市場は都が経営をしていて、もろもろの情報は以下で公開されています。 東京都中央卸売市場日報 http://www.shijou-nippo.metro.tokyo.jp/ 2004年から記録があるので10年以上のデータを取得できます。が、あまり多くても仕方がないのでひとまず5年間分(2013年1月から2018年11月)までの青果と水産のデータをとってきました。 ページを探っていくと、こんな形でテーブルで表示されています。これをCSV形式でダウンロードができます。 CSV形式とはいえ、こんな風にテーブルからとってきたような形のCSV形式なので(一応カンマ区切りにはなっている)ちょっと扱いにくいのです。 公開さ … 続きを読む

カテゴリー: 開発 | コメントする

プロジェクトマネジメントに科学的根拠を付加する仮説

某所で「PMBOK は科学的根拠がない」という話をしたけど、そこは経験則に沿うところが多いからだ。だからマネジメント自体が経験と勘が重要視される。たぶん AI に期待が大きいというのもそこかも。 だから、物理法則と統計を利用して不確定性を確率として扱えばよいだろう、という話が先に続く。 — Tomoaki Masuda (@moonmile) 2018年10月23日 PMBOK に科学的根拠がない、というのは「知識体系」として網羅はしているけれど、そこに数学的な根拠とか確率の話がでてこないからだ。何をもってして「プロジェクトの成功」を決めるのかは実はそれぞれなんだけど、プロジェクトの最初に QCD(機能、コスト、納期)を決めておいて、 プロジェクト終了時に要件や機能を満たしている 予算/コストをオーバーしていない。 納期が守られている ということをプロジェクトの「成功」と仮定してよいだろう … 続きを読む

カテゴリー: 開発, OpenCCPM | コメントする

PHP7 上に WordPress を入れたときは php-xmlrpc を有効にする

タイトル通りですが、半日ほどハマったのでメモ書き WordPress から XML-RPC を使って投稿するとエラーになる 以前、作っていた WpPost https://github.com/moonmile/WpPost を markdown に対応しようかと思って、新しく建てた openccpm.com につなげようとすると、エラーになりました。このブログ moonmile.net/blog は XML-RPC で投稿できているので大丈夫なんですが、なぜか新しく立てたほうにはできない。 試しに Open Live Writer を使ってつなげようとするも、アカウント作成のときや URL を指定するときに「parse error. not well formed」と出て「-32700」なエラーコードが返されます。どうやら、送っている XML のフォーマットがダメということなんですが、ど … 続きを読む

カテゴリー: 開発 | コメントする

ユーザーコントロール内で更新した値を親の ViewModel に反映させる方法

MVVM でユーザーコントロールを作るときに微妙にハマるのがユーザーコントロールです。例えば、ユーザーコントロール内に TextBox を貼り付けておいて、外側の ViewModel からユーザーコントロールに値を設定することはできるのですが、逆にユーザーコントロール内の TextBox に入力された値を ViewModel の反映しようとすると難儀します。というか、難儀していたのだけど、解決できたので書き残しておきます。 UserControl に対して ViewModel 側からバインドしたい場合は、DependencyProperty を使って依存関係プロパティを作って設定します。表示のための TextBlock とか DataGrid を使ったリスト表示の場合は、これで十分なのであまり問題はないのですが、さて、UserControl 内に貼り付けた TextBox から ViewM … 続きを読む

カテゴリー: C# | コメントする

正しい「PDCAサイクル」の知識を得るために

どうも巷で「PDCAを回す」ってのが相当誤解されているようなので、正しい知識としての「PDCAサイクル」の話を書き残しておきます。カッコつきなのは、正しい知識のほうに重きがあるので、PDCA サイクル自体が有用であるか否かはここでは論じません。というか、ノウハウってのは適材適所があるので、うまく開発プロセスの中(会社の独自文化もあるだろうし各々の状況もある)にはまり込めば「PDCA は使えるよ」って形になるけど、はまらなければ「PDCA は使えない」って形になるだけ。うまいところに使って正しい形で PDCA を活用してください(場合によっては活用しないでください)ってのが主旨です。 PDCA とは何か? そもそも PDCA とは何か?という前提があるので(いろいろなパロディを面白がるためには元ネタの知識が必要なのだ)、念のため書いておきます。 Plan(計画) Do(実行) Check(計 … 続きを読む

カテゴリー: 開発 | 正しい「PDCAサイクル」の知識を得るために はコメントを受け付けていません。

ジェラルド・M・ワインバーグ追悼

随分間が開いてしまったが、書かないとそのまま通り過ぎてしまいそうなので1時間ほど書き留めておこう。 「ライト、ついてますか」で有名なワインバーグではあるけれど、私にとっては「コンサルタントの道具箱」と「プログラミングの心理学」のワインバーグだったりする。一時期、彼の主催するコンサルタントの集まりに行きたいと思ったこともあったが、まあ、それは昔のことではある。 おそらく私がワインバーグ氏を知ってきちんと彼の本を読み込み始めたのは、ワインバーグの各著書がブームを過ぎた頃だと思っている。2000年頃に会社の受託開発での各プロセスに疑問を持った私は、なんらかの形で開発プロセスを改善したいと模索した。アジャイル開発のはしりもあり XP があり TDD もありオブジェクト指向もあり UML もありと様々な道具立てが出てきた頃でもあるのだが、私の興味はもっと人間の動きに近いところの「ピープルウェア」と心 … 続きを読む

カテゴリー: 雑談 | ジェラルド・M・ワインバーグ追悼 はコメントを受け付けていません。

Scratchから飛び出してSmalltalkを学ぼう(準備編)

これを実際にSmalltalk(Squeak)で書くとこんな感じになります。 pic.twitter.com/5TbLgPVltO — アベ先生 (CV: 阿部和広) (@abee2) 2018年10月5日 先日書いた記事に返事を頂いて、そうか、Scratch 1.4 の中身は Smalltalk(Squeak)なのだからそっちで試してみることができるんだ。ということで、ちょっと Smalltalk を数日動かしてみる。 何処から手を付ければよいのか? 真面目にやるのであれば、教科書とかチュートリアルをやればいいんでしょうが、そもそも Smalltalk を今更まじめに見る気はないし(と思っておりましたよ)、オブジェクト指向のメッセージングのところだけ見ておきたいので、何かよい実例はないのかと思い探してみました。Google で初心者解説回りをさがしてもよいのですが、今だとアドベントカレン … 続きを読む

カテゴリー: 開発, Smalltalk | Scratchから飛び出してSmalltalkを学ぼう(準備編) はコメントを受け付けていません。

System.Net.HttpListener が .NET Core の時だけメモリリークっぽい現象になる件の解決策

FireScratch を C# で作っていた時に発覚したメモリーリックっぽい現象に当たったので、珍しく issue https://github.com/dotnet/corefx/issues/32454 を立てました。 サーバーのほうで、.NET Core か .NET Framework を使って以下のような簡易 HTTP サーバーを作ります。 これに対して、テスト用にアクセスするクライアントを作っておきます。 これを動かしておくと、.NET Framework の時にはサーバーのメモリが程よい大きさで止まるのですが、.NET Core のほうは、がんがんとメモリを食い潰してしまって最後にサーバーが倒れます。だいたい1時間ぐらい放置しておくと落ちます。 同じコードで、.NET Framework と .NET Core の挙動が異なるので、.NET Core の HttpListe … 続きを読む

カテゴリー: C# | System.Net.HttpListener が .NET Core の時だけメモリリークっぽい現象になる件の解決策 はコメントを受け付けていません。

いっせーのせで学ぶ Scratch のブロードキャストメッセージ

Scratch のメッセージングは、普通のオブジェクト指向言語と変わっていて(Scratch 自体はれっきとした「オブジェクト指向言語」、内部は Smalltalk だったわけだし)、メッセージをブロードキャストで投げます。ブロードキャストメッセージとは何か?そもそもブロードキャストってどういう動きをするのか?と言えば、 普通のメッセージは、送り手のクラスがあって、受け手のクラスがある。値を送る(参照でもいいけど)という1対1のイメージですね。いわゆる 受け手.method( 値 ) で、受け手のクラスに送るパターンです。 これがブロードキャストになると、1対多の関係になって、送り手.method( 値 ) のイメージになります。 この図だと、送り手が複数の受け手に対して送るので、1対1の関係を増やしたような感じになりますが、実際のところはメッセージをブロードキャストで送るってのは、中間的 … 続きを読む

カテゴリー: Scratch | いっせーのせで学ぶ Scratch のブロードキャストメッセージ はコメントを受け付けていません。

WPFで Web Speech API を使ってみよう!

クレウスさんの、 C#は倒しにくいけどJSならなんとかなる。 帰ったらnode.jsと戦う。 — クレウス@VRChat (@kleus_balut) 2018年9月28日 なところから、Web Speech API がブラウザ上で使えることが分かったので試してみるの巻です。 Web Speech APIの実装 – Speech Synthesis API | CodeGrid https://app.codegrid.net/entry/2016-web-speech-api-1 ブラウザ上で Web Speech API を使って文章の読み上げができる、って話は聞いてことはあったのですが、これ OS の機能をブラウザから呼び出している訳ではなくて、ブラウザの内部機能として実装されている、という話だったのですね。なので、Google Chrome で読み上げると Google … 続きを読む

カテゴリー: C# | WPFで Web Speech API を使ってみよう! はコメントを受け付けていません。