株式会社クリアコード > ククログ

ククログ


OSS Gate東京ワークショップ2017-07-29を開催 #oss_gate

東京のワークショップでは久しぶりに進行役をした須藤です。

2017年07月29日にクラウドワークスさんOSS Gate東京ワークショップを開催しました。そういえば、今回は集合写真を撮り忘れましたね。。。

数回前からYassLab安川さんさんが進行の録画にチャレンジしていましたが、今回はかなり完成度の高いものができました!YouTubeでOSS Gate ワークショップ (完全収録版)というプレイリストを公開しているので、どんな様子か知りたい方は見てみてください。

また、今回から説明用の資料を1つのスライドにまとめました。サポーター向けの説明が足りなそうという課題はありますが、これまでより進行がしやすくなりました。

あと、今回は作業時間を1時間+1時間に短くしてみました。(これまでは1時間+2時間30分とか。)同じ日に開催していたOSS Gate京都ワークショップでも同じような時間配分だったりします。やってみて、アンケートで参加者に感触を聞いた感じでは、進め方次第では1時間でもいけそうな感触を得ました。

今月は大阪でワークショップ東京でミートアップが開催されます。

来月は高専生向けのワークショップが東京で開催されます。(メインターゲットが高専生なだけで高専生以外も参加できます。)

OSS Gateワークショップに興味がある方は一度どこかのイベントに参加して、参加者の人と話をしてみるとよいと思います。実際に自分で体験することで理解が深まりますし、まわりの人と話すことで協力しやすくなります。

企業で開催したい(社員がOSSの開発に参加することを支援したい)場合はクリアコードにお問い合わせください。有償で平日日中での開催を支援しています。

2017-08-01

MySQL・PostgreSQL上で動かす全文検索エンジン「Groonga」セミナー - Mroonga・PGroongaを使った全文検索システムの実装方法 #groonga #mysql #mariadb #postgresql

cairo色付きフォントサポートが入ったので、今回のスライドではNoto Color Emojiを使ってRabbitで色付きの絵文字を表示した須藤です。

2017年8月1日にMySQL・PostgreSQL上で動かす全文検索エンジン「Groonga」セミナーを開催しました。今回は業務でGroonga(Mroonga・PGroonga)を使いたい人向けのイベントだったので平日の午後に開催しました。

関連リンク:

内容

これまでのMroonga・PGroongaの紹介資料では、速さや機能を紹介するまとめ方が多かったのですが、今回の資料は「イマドキの全文検索システムを作るにはこんなSQLを使えばよい」というまとめ方にしました。逆引きレシピのようなまとめ方です。

話の流れは次のようになっています。全文検索システムを作る機会がある人は参考になるはずです。

  • イマドキの全文検索システムとは?
  • ミドルウェアの選び方は?判断基準は?
    • 全文検索サーバーを使う?
    • RDBMSだけでがんばる?
    • RDBMSに全文検索エンジンを組み込む?
  • イマドキの全文検索システムに必要な以下の機能をMroonga・PGroongaで実装するには?
    • 全文検索機能
    • キーワードハイライト機能
    • 周辺テキスト表示機能
    • 入力補完機能(今回はPGroongaのみ)
    • 同義語展開機能(今回はPGroongaのみ)
    • 関連文書の表示機能
  • 構造化された文書を検索対象にするには?
    • 構造化された文書の例:オフィス文書(Word・Excel・PowerPoint・LibreOfficeなどで作成した文書)
    • 構造化された文書の例:HTML(ヘッダー・フッター・サイドバーのテキストを取り除くなど、単にbody.innertTextの値を取得するだけではノイズが増えるので、いろいろケアが必要)
    • 構造化された文書の例:PDF
    • HTTPでテキスト抽出・スクリーンショット作成できるChupaTextの紹介
    • Dockerで使う:chupa-text-docker
    • Vagrantで使う:chupa-text-vagrant

まとめ

Mroonga・PGroongaでイマドキの全文検索システムを作る方法を紹介するセミナーを開催しました。クリアコードは全文検索システムの受託開発・設計支援・開発支援・障害調査支援など全文検索関係のもろもろをサポートするサービスを提供しています。とりあえず話を聞いて欲しいというレベルからでも結構ですので困っていることがあればお問い合わせください。

タグ: Groonga
2017-08-02

「クリアコードをいい感じにする人」の採用を開始

代表取締役の須藤です。コードを書いたり、社外向けの活動をしたり、クリアコードをいい感じにしたりしています。このうち、「クリアコードをいい感じにする」活動を主な業務とする人の採用活動を始めました。職種は「クリアコードをいい感じにする人」です。このような活動をする人が世間でどのような職種として呼ばれているのかわかっていないのでこんな職種名になっています。

クリアコードは以下の2つの両立を大事にしています。

  • お金を稼ぐこと(フリーソフトウェアを「継続的に」推進していくために必要だから)
  • フリーソフトウェアの推進

これを「継続的に」今よりももっとうまくやれる私たちになりたいと思っています。「クリアコードをいい感じにする」というのはこれを実現するための活動です。

たとえば、今は次のような活動をしています。

  • 1ヶ月に1度クリアコードメンバー全員から個別に最近の話を聞く
    • どうやったら「もっといい感じ」になりそうかの情報集め
    • 困っていることがあったら解決に協力
  • クリアコードメンバーから集めた情報を元に「もっといい感じ」になることにつながりそうな活動の考案
  • 問題解決を練習する場の用意
    • 問題を1つ設定し、決められた期間内に解決案を出し、実際にそれを実施し、問題を解決する
    • 「お金を稼ぐこと」と「フリーソフトウェアの推進」をいい感じに両立するための練習
    • お客さんはこれらの両立が大事ではないことが多いので、お客さんの要望をそのまま実現するだけでは両立が難しい。そのため、お客さんの本当の問題を理解し、クリアコードが大事なことも両立もするしお客さんもいい感じになる解決案を提案し、それを実施することで両立をがんばっている。それをよりいい感じにできるようになるための練習。
  • 他にもいろいろ…

今抱えている課題は、これらの「クリアコードをいい感じにする」活動に継続的に十分な時間を確保できていないことです。今はこのような活動をしていますが、今後も同じことをやっていればよいというものではありません。私たち自身が変わっていくからです。私たちに合わせて活動内容も変わっていくはずです。そのようなことに必要な時間を確保できていません。

そこで「クリアコードをいい感じにする」活動を主な業務とする人の採用を始めました。「クリアコードをいい感じにする」活動は継続的に取り組むべき重要な活動だと考えているからです。

採用情報は「クリアコードをいい感じにする人」の採用情報にまとめました。私たちはどういう人が「クリアコードをいい感じにする」活動をするのに向いている人なのかまだわかっていません。採用情報にも「わかっていないことがいろいろあるので一緒に考えながらうまくできるようになりましょう」と書いてあります。

そのような職種ですが、興味のある方はぜひ以下のような内容のメールを私に送ってください。一度お話しましょう!

To: kou@clear-code.com
Subject: 会社説明会参加希望

名前: ○○××
職種:「クリアコードをいい感じにする人」
備考: (希望日時などがあれば)
タグ: 会社
2017-08-18

Redmine大阪 第17回勉強会 - 全文検索でRedmineをさらに活用! #RedmineOsaka

大阪に行くのは今年3回目な須藤です。1回目が2017年2月25日のOSS Gate大阪ワークショップ、2回目が2017年5月27日の関西Ruby会議2017、そして3回目の今回がRedmine大阪 第17回勉強会です。

関連リンク:

内容

発表内容は2017年5月13日に開催されたredmine.tokyo第12回勉強会の発表内容をアップデートしたものです。

Redmineの全文検索機能はLIKEベースで実現されていて、「どのくらい検索クエリーに適合していそうか」の概念がないため、「それっぽい検索結果を上位に並び替える」ことができません。そのため、探している情報はヒットしているけど、検索結果の中からなかなか見つけられない、という状態になりがちです。

Groongaベースの全文検索プラグインを導入すると「それっぽい検索結果を上位に並び替える」ため、探している情報をすぐに見つけられるようになります。

これだけだと「Redmineの不便なところを解消した」というレベルなのですが、このプラグインで目指しているものはもっと先にあります。ユーザーの手間をできるだけ減らしつつ、必要なときに必要な情報をユーザーに提供することを目指しています。

現在開発を進めているのが類似issue検索です。閲覧中のissueと似ているissueを自動で検索して表示する機能です。

有効に活用されているRedmineには過去の問題対応の詳細が記録されています。新しく問題が発生したとき、以前は類似の問題にどのように対応したかがわかると、新しい問題にも素早く適切に対応できます。

現在のRedmineの機能では、過去に類似の問題があったかどうかは人が明示的に探さなくてはいけません。人が探す場合、なにかキーワードを知らなければいけません。既存メンバーは「そういえば似たような問題があったな…」という記憶からキーワードを手繰り寄せられるかもしれませんが、新しく入ってきたメンバーにはそれはできません。

大量のデータから検索するのは機械が得意な処理です。データを活用して機械が人をサポートする方法の1つが類似issue検索です。現在の実装は、単に字面だけで類似度を計算していますが、今後は、字面だけでなく意味で類似度を計算する、テキストデータだけでなくメタデータも使って類似度を計算するなど、有用なデータを活用して精度をあげていく予定です。

類似issue検索はデータを活用して機械が人をサポートする1つのアプローチに過ぎません。類似issue検索以外にもRedmine内のデータを活用して人がより有意義なことに時間を使えるようにしていきたいです。

そこを目指すためにはデータが必要不可欠です。クリアコード内のデータだけでは足りません。Redmine内のデータを活用してもっと自分たちの活動を有意義にしていきたい方はぜひ開発にご協力ください。開発に協力する方法はいろいろあります。たとえば、「自分たちのRedmineのデータを活用して自分たちの活動を有意義にするサポートをして欲しい」という仕事をクリアコードに発注する方法があります。この方法では、発注者には自分たちの活動をより有意義にできるというメリットがあり、クリアコードにはお金を得られる・現実のデータを使って現実の人たちの活動を支援するノウハウを得られるというメリットがあります。

私たちは成果(この場合は改良したプラグイン)をだれでも自由に利用できるようにします。「自分たちがお金を払って改良した分を他の会社がお金を払わずに使えるようになるのは損だ」と考える人も多いかと思いますが、実際は損になることはほとんどありません。

たとえば、メンテナンスコストが下がるので、運用後の費用面で得になります。一社向けに提供するソフトウェアのメンテナンスコストは当然一社で持つことになります。一方、大勢が利用するソフトウェアのメンテナンスコストは大勢で持ちます。そのため、だれでも自由に使えるようにした方がメンテナンスコストが下がるのです。

他社が使える状態になったとしても、すぐに追いつかれるわけではありません。他社はノウハウがない状態からのスタートになるからです。しかも、自分たちのノウハウを公開しても損にはなりません。情報は発信しているところに集まります。ノウハウを公開することで新しいノウハウを得やすくなります。他社が自社のノウハウを得られても、自社にはもっとノウハウが集まります。他社を抑えることを頑張るよりも、自社がより伸びることを頑張る方が結果として得をします。

Redmine内のデータを活用してもっと自分たちの活動を有意義にしていきたい方はぜひお問い合わせください。一緒に実現しましょう。

まとめ

Redmine大阪 第17回勉強会でRedmine用の全文検索プラグインを紹介しました。単にいい感じの全文検索機能を提供するだけでなく、検索を軸にRedmineを使っている人たちの活動をいい感じにすることを目指しています。もっとRedmineを活用したい方はお問い合わせください。検索まわりはもちろん、Redmine本体の修正・改良や既存のRedmineプラグインの修正・改良もできますし、新規プラグインを開発して問題を解決することもできます。もちろん、変更部分はRedmine本体やプラグインの開発元にフィードバックします。

タグ: Groonga
2017-08-27

DebConf17のオススメのセッションを紹介します

はじめに

今年のDebConf*1はカナダのモントリオールで今月の6日から12日にかけてDebConf17として開催されました。

都合が合わなくて参加できなかった人でも、セッションのアーカイブが公開されているのであとから視聴することができます。(もちろん諸事情から非公開となっているものもあります。)

今回は、DebConf17の数あるセッションの中からオススメのアーカイブを1つ紹介します。 なお、先日開催された東京エリアDebian勉強会(2017/08/19)のDebConf17参加報告で該当のセッションについて教えてもらいました。 次回の東京エリアDebian勉強会は9/16(土)に新宿で開催とのことです。*2

GnuPG 2.1 Explained for Everyone

g新部さんによるセッションです。

発表資料と当日の映像は以下からたどることができます。

このセッションでは、GnuPGのDebianにおける採用状況や各種リリースバージョンの説明、そしてGnuPG 2.1の新機能とそのアーキテクチャ変更についてデモをまじえて解説していました。

見どころは、GnuPG 2.1でのアーキテクチャー変更に伴い、サブコンポーネントに分割された話を実際にロールプレイで紹介している部分です。ちょうどg新部さんはご家族でDebConf17に参加されたようで、発表の際もご家族でGnuPGのサブコンポーネントの振る舞いを分担してわかりやすくデモしていました。娘さんがgpg役を、息子さんはdirmngr役を務める、といった具合です。*3

まとめ

今回は、DebConf17のアーカイブの中からオススメのセッションを1つ紹介しました。 他にもたくさんのセッションのビデオが公開されています。*4 興味があれば、あれこれみておくといいかもしれません。*5

*1 DebConfはDebian開発者が一同に集う開発者向けのイベント。

*2 POMERA DM200にdebianをインストールしてみた話が聞けるようですね。Debian関連で質問したいことなどあれば、ふらっと参加してみるのもよいでしょう。

*3 セッションのデモ中、息子のひろしくんはちょっと飽きていたようです。ご家族で何度も練習したのでしょうか。

*4 DebConf17のセッションのアーカイブは http://meetings-archive.debian.net/pub/debian-meetings/2017/debconf17/ からまとめてダウンロードすることもできるようになっています。

*5 セッションのアーカイブはWebM VP8コーデックなのでFirefoxでも視聴に支障はありません。VP9にする話もあるようですが、Firefoxのサポート次第でしょうか。

2017-08-28

«前月 最新記事 翌月»
タグ:
年・日ごとに見る
2008|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|