2017年4月29日土曜日

自動で文字を掘り起こすソフトウェアを作った

プログラマの生産性

プログラマは、できる人とできない人で生産性が100倍とか異なると言われています。実際にはそれ以上の差があるでしょう。

それでは、非プログラマとプログラマに、ある作業をやらせたら、一体何倍の差がつくのでしょうか。それは、作業によるでしょうが、作業が単純であればあるほど、途方も無い差がつくでしょう。

テキストから文字を取り出すという仕事

あなたは、あなたが行っている作業がルーチン化できるかどうか考えたことがありますか?もしもその作業に、テキストから文字を取り出す、という要素が少しでもあるならば、あなたは一瞬でその作業を終わらすことができるかもしれません。
会社の英雄になってもいいし、定時までの時間にマインスイーパーしてもいいし(うそ!たぶん契約違反)、残業なしで早く帰ってもっと有意義な時間を過ごすことができるでしょう。

このブログでは、テキスト抽出という作業にフォーカスを当てて、これを自動化する方法を説明したいと思います。なぜならば、とある経緯から、ソフトウェアができてしまったからです。

大量のPDFから情報を取り出すという苦行

今年の2月、知り合いから、「PDFから必要な情報を抜き出して、エクセルに表として取り込みたいので、手伝ってくれ」という話がありました。わたしは、プログラミング言語と正規表現を使えばできるから、この機会に勉強してみたらどうかと勧めたのですが、やはり普通の人には学習コストが高いようで、進む気配が無かったため、結局わたしが全部やってしまうことになりました。
実際、これを手作業でやろうとすると苦行でしかありません。かといって、このためだけにプログラミングを学ぶのは現実的ではありません。
このような経緯から、非プログラマでも扱えるようなソフトウェアがあったらよいのに、と思ったのです。

そして、4月の中旬に、わたしが好きなプログラミング言語であるHaskellを使って、テキストから必要な文字列を取り出し、いい感じに出力するソフトウェアを作ってみたわけです。

もじ堀ノ助

そのソフトウェアに、”もじ堀ノ助”という名前を付けてみました。
文字を掘る犬が連想できるように。花咲か爺さんに出てくる犬みたいな。

現状では、テキストで抽出するパターンを記述する必要があり、非プログラマに完全に優しいとは言いがたいですが、プログラムを勉強するよりも学習コストはかなり低いと思います。

今回はここまでです。
次回は、作ったソフトウェアが秘めたパワーを紹介したいです。

とりあえず、ソフトウェアの公式ページリンクを貼っておきますね。

公式ページ

こっちは、先走ってQiitaで使い方を説明した記事

非プログラマのためのテキスト抽出・整形ツール「もじ堀ノ助」


0 件のコメント:

コメントを投稿