無駄と文化

実用的ブログ

WP-Cron を cron から叩く

WP-Cron を cron から叩くとサイトの表示が若干軽くなるとのことでやってみた。 結論、問題なく動いている。 やりかた すでに多くの人が解説しているので割愛。 やるべきことは、 define('DISABLE_WP_CRON', true); を設定してデフォルトの動作を止める cron…

ラジオボタンのコーディングは

ラジオボタンのコーディングは、 <div> <input type="radio" name="foo" value="hoge"> <input type="radio" name="foo" value="fuga"> <input type="radio" name="foo" value="piyo"> </div> ではなく <div> <input type="hidden" name="foo" value=""> <input type="radio" name="foo" value="hoge"> </div>

質問箱への回答: 納得 と 受け入れ

真面目に答えます。 この質問には2つのモヤモヤが混ざってると思ってて。 ①は 受け入れてるにもかかわらず納得できていないという事 ②は 納得できてないのに受け入れてしまうという事 この2つは分けて考えた方がいいと思います。 ①受け入れてるにもかかわ…

不動点コンビネータで無名再帰を作る流れをおさらい

どうも、趣味で関数型言語を書いている者です。 長らく関数型言語やってなかったら無名再帰を忘れかけていたので、おさらいがてら不動点コンビネータで無名再帰を作る流れを書き下します。 以下、Haskell の文法で書かれたコードをもとに説明していきます。 …

サービス・プロジェクト改善のモチベーション

この記事は GYOMUハック/業務ハック Advent Calendar 2018 の5日目の記事です! 4日目の担当は Kouta Sasaki さん、6日目の担当は otoan_u さんです。 どうも、未経験からたったの7年でエンジニアになった三井です。 プログラムを書き始めて16年ほど、プログ…

チームのモチベーションを高める施策としての「夢見るユニコーン🦄」の導入について

チームの生産性を高めるためにはチーム全体の雰囲気が重要です。 ポジティブで「やれる」という期待にあふれたチームは高い生産性を発揮します。 チームでお互いに讃えあい、感謝を伝え、モチベーションを高める施策として「夢見るユニコーン」を導入してい…

魔法は無い

高度な技術は、ともすると魔法のように見えるものです。 実際、世の技術は「複雑さや煩雑さを隠ぺいしてシンプルに目的を達成するために発達してきた」という側面があるので、技術の裏側について詳しくない人からして魔法のように見えるのは当然と言えば当然…

JavaScript で、指定した範囲の整数をランダムに返す関数

やっていきましょう。 実装 /** * 指定した範囲の整数をランダムに取得する * * @param {number} min ランダムに取得したい整数の下限 * @param {number} max ランダムに取得したい整数の上限 * @returns {number} min 以上 max 以下の整数 */ function rand…

Scrapy のクロール実行時 win32api の ImportError でコケる (Windows10, Python 3.5.2, Scrapy 1.5.0)

Scrapy でバグっぽい挙動にぶつかったので状況と解決策の記録です。 クローラーの実行に失敗する いつものように Scrapy でクローラーを走らせようとしたらエラーでコケました。 エラーのログはこんな感じ。 2018-01-27 14:36:06 [scrapy.utils.log] INFO: S…

いろいろなパッケージから提供されている ListT モナド変換子の違いについて調べてみる

この記事は Haskell (その2) Advent Calendar 2017 の10日目の記事です。あけましておめでとうございます。 今回は ListT モナド変換子 について調べたことをまとめます。 hackage で検索をすると ListT と名の付くモナド変換子を提供しているパッケージは4…

Haskell でλ計算のインタプリタを作っていこう ~ その3. プリティプリンタ

引き続き Mogul という名前のλ計算インタプリタを作っていこうと思います。 前回、パーザを書いたのでソースコードから抽象構文木を生成することができるようになりました。さっそく抽象構文木をいじくり回して何かしらの処理を実装したいところですが、今回…

Haskellでλ計算のインタプリタを作っていこう ~ その2. パーザ

引き続き Mogul という名前のλ計算インタプリタを作っていこうと思います。 前回、λ式を表現するデータ型を定義したので、今回はパーザを書きます。ソースコードを読ませて抽象構文木を生成するところまでです。 ソースコード全体は GitHub に置いておきます…

Haskell でλ計算のインタプリタを作っていこう ~ その1. データ型

Haskell ネタです。 先日の記事で宣言したとおり、λ計算のインタプリタを作っていこうと思います。 ソースコード全体は GitHub に置いておきます。 github.com プロジェクト名は Mogul (モーグル) 。 なので作っていくインタプリタの名前も Mogul です。 全…

Apps Script を使ってスプレッドシートに Google アナリティクスのアカウントを一覧表示する

今回は Google アナリティクスのアカウント情報一覧をスプレッドシートに出力する方法をご紹介します。 アナリティクスは無料のプランでさえ 100 アカウントまでサイトを管理できるんですが、50 を越えてくると標準の管理画面ではさすがに見通しが悪くなって…

λ計算のインタプリタを作ろうとしている話

先月、八耐に参加してから 長年個人プロジェクトとして取り組み続けてきた『λ計算インタプリタを作りたい』という欲が再燃しています。 欲が燃えているのは結構なことなので、実際に作ろうと思います。その宣言のための記事です。 作ろうとしているもの λ計…

八耐 in 東京 に参加してきました。

福岡で働いていた頃からの友人である 岩本くんに声を掛けてもらったので 八時間耐久作品制作会(仮) in 東京 に参加してきました。 ふり返りつつレポートしてみます。

Python3 で言語処理100本ノック 2015 - 第3章

乾・岡崎研究室が公開している 言語処理100本ノック 2015 に取り組んで行きます。 使用する言語は Python3 です。 第3章です。一部の方が大好きな 正規表現 の章です。 私は…、あんまり好きじゃないですね。 第3章: 正規表現 Wikipediaの記事を以下のフォー…

数学を教わってみて思うこと ~ ベイズ統計学入門レポート

先月から すうがくぶんかのベイズ統計学入門 に通っています。 もちろん無料講座とかではなく月謝が掛かるタイプのもので、自腹でお金を出してます。 (向上心があって素晴らしいと評価してくれる方は今度会ったときにコーヒーでも奢ってください。学びをフィ…

Python3 で言語処理100本ノック 2015 - 第2章

まさか続くとは。 乾・岡崎研究室が公開している 言語処理100本ノック 2015 に取り組んで行きます。 使用する言語は Python3 です。 第2章まで出来たんでまとめます。 第2章: UNIXコマンドの基礎 hightemp.txtは,日本の最高気温の記録を「都道府県」「地点…

JavaScript のデータを CSV で保存する

意外と需要のある JavaScript のデータを CSV として保存するスニペットを書き留めます。 var data = [ ['name' , 'age', 'gender'], ['Andrew', 26 , 'male' ], ['Lisa' , 21 , 'female'], ['Fred' , 41 , 'male' ], ] このような多重配列を元にして、 この…

Python3 で言語処理100本ノック 2015 - 第1章

乾・岡崎研究室が公開している 言語処理100本ノック 2015 に取り組んで行きます。 使用する言語は Python3 です。 第1章から第10章で構成されているのでまずは第1章から。 ではスタート。 00. 文字列の逆順 文字列"stressed"の文字を逆に(末尾から先頭に向…

Python で日時計算 ~ 月初とか月末とか N ヵ月前とか

Python で日付計算と言えば datetime モジュールですね。まぁまぁ便利なんですが、標準では 月初 や 月末 を求めることができません。 なのでちょっとしたユーティリティコードとして書いておきました。 N ヶ月後・N ヶ月前 add_month() は N ヶ月後の同日同…

一手間加えた INSERT - レコードが未登録のとき、登録済みのとき、

DB にレコードを INSERT するとき、一手間加えて 未登録の場合に限って登録 や 登録済みなら一部フィールドだけ上書き などしたくなりますよね。 ここ最近、そのような SQL を書くことが多かったのでメモしておきます。 ちなみに MySQL の独自構文などもバリ…

Scrapy+AWS LambdaでWeb定点観測のイレギュラーに立ち向かう

この記事は クローラー/Webスクレイピング Advent Calendar 2016 の10日目の記事です。 9日目は @hotu_ta さん、11日目は @TakesxiSximada さん でした。 Web スクレイピングはイレギュラーとの戦いです。特にそれが Web 定点観測のためのスクレイピングで…

optparse-declarative のコードリーディングから型レベルプログラミングを学ぶ

この記事は Haskell Advent Calendar 2016 の9日目の記事です。 とか云ってもう11日ですね、ホントすみません。 8日目は @phi16_ さん、10日目は @bra_cat_ket さん でした。 Haskell を書き始めてはや5年、Monad や Applicative は使いこなしているけど、そ…

Python2 で日本語(Unicode)対応の PrettyPrint

通常、print はユニコード文字列であっても読みやすく表示してくれます。 print(u"ほげ") # => ほげ しかし pprint モジュールの pprint() を使うと、なぜだかユニコード文字列がエスケープされるようになります。 pprint.pprint(u"ほげ") # => u'\u307b\u30…

JavaScript のコールスタックが溢れていたのをどうにかしたら JS 要らなくなった話

約5ヶ月前にこんな記事を書いたわけですが、 blog.mudatobunka.org この記事が今になってよく見られるようになってます。 先週までは毎日1桁のPVをコツコツを積み重ねていたのが本日だけで130PVです。 どこかの誰かに拾っていただいたんでしょうね。はてブも…

毎月数時間を要していたスキャンデータ整理をOCRで自動化した

企業活動をするなかで見積書や請求書といった書類を発送するシーンは多いですよね。 私が勤める会社でもそういった書類をクライアントに郵送していますが、郵送する前の書類をスキャンしてスキャンデータを残しておく決まりになっています。 書類を作るのに…

Lazy_K で九九表のすべてのマスの和

前回の記事で [九九表のすべてのマスの和を求める問題] をいろいろな言語で書きました。 記事の最後でそのうち Lazy_K でも書きます的な事を宣言しておいたんですが、この度そのコードが完成しましたのでご報告します。

九九表のすべてのマスの和

takatoh 様 が同じ問題を Ruby と Scheme で解いてくださいました。許可を得て転記させていたいています。 Ruby 版の簡素さはさすがという感じです。そして、Scheme 版の S式 は慣れないと読めないし分からないのが面白いですね。takatoh 様、本当にありがと…