ブックマーク / www.clear-code.com (6)

  • Ruby on Railsと素のPostgreSQLで日本語全文検索 - 2020-12-22 - ククログ

    PostgreSQLに超高速な日語全文検索機能を追加するPGroongaを開発している須藤です。今回はPGroongaやpg_bigmなど拡張モジュールを使わずにPostgreSQLの組み込み機能だけで日語全文検索を実現する方法を紹介します。PGroongaを使う方法はRuby on RailsでPostgreSQLとPGroongaを使って日語全文検索を実現する方法を参照してください。 Heroku PostgresなどDBaaSとして提供されているPostgreSQLではPGroongaを使えません。(DBaaSとして提供しているベンダーがPGroongaをインストールしてくれないから。)PostgreSQLの組み込み機能だけでは日語全文検索を満足に実現することができないので、DBaaSのPostgreSQLを使っていると次のように日語全文検索で困ってしまいます。 日人のプ

    Ruby on Railsと素のPostgreSQLで日本語全文検索 - 2020-12-22 - ククログ
  • 2019年5月4日前後から発生しているFirefoxのアドオン無効化問題の詳細な解説 - 2019-05-07 - ククログ

    「Firefox」でインストール済みアドオンが利用不能になる問題が発生中 - 窓の杜やFirefox 66.0.4 リリース、拡張機能全滅問題を修正 | スラド ITなどで既報の通り、2019年5月4日前後から一般向けのリリース版Firefoxでアドオンを一切使用できない状態が発生していました。緊急の修正版としてリリースされたFirefox 66.0.4およびFirefox ESR60.6.2で現象は既に解消されており、また、既にインストール済みのFirefoxに対してもホットフィックスが順次展開されていますが、記事では今回の問題の技術的な詳細を解説します。 ユーザー側で取れる対応 まず最初に、ユーザー側で取れる対応をまとめておきます。 Firefox 66.0.4以降またはFirefox ESR60.6.2以降に更新する。 「Firefox調査」を通じて hotfix-update-x

    2019年5月4日前後から発生しているFirefoxのアドオン無効化問題の詳細な解説 - 2019-05-07 - ククログ
    kybernetes
    kybernetes 2019/05/07
    対応案1,アウトでは。
  • Ruby用単体テストフレームワークtest-unitでのデータ駆動テストの紹介 - 2013-01-23 - ククログ

    test-unitRuby用のxUnit系の単体テストフレームワークです。2.3.1からデータ駆動テスト機能が追加されていたのですが、2.5.3まではリファレンスに記述がなく、知る人ぞ知る機能でした。 2013-01-23にリリースされた2.5.4ではデータ駆動テスト機能についてのドキュメントが追加されています。 データ駆動テスト自体の説明はUxUを用いたデータ駆動テストの記述を参照してください。 Cucumberのscenario outlinesに似ていると言えばピンと来る人もいるのではないでしょうか。 Cucumberのscenario outlinesも前述のククログ記事の通り、テストのデータとロジックを分離しているのでデータ駆動テストの一種と言えます。 今回は、データ駆動テストを導入した例を見ながらtest-unitでのデータ駆動テスト機能の使い方を紹介します。なお、以降の説明

    Ruby用単体テストフレームワークtest-unitでのデータ駆動テストの紹介 - 2013-01-23 - ククログ
  • シェルスクリプトで「ビルドスクリプト」を作る時に便利なテクニック - ククログ(2012-10-11)

    プログラムの種類によっては、そのまま実行できるものと、実行できるようにするために「ビルド」が必要なものとがあります。Cなどのコンパイルが必要な言語で書かれたプログラムは当然ビルドが必要ですし、コンパイルが不要な言語であっても、インストーラパッケージを作るというビルド作業が必要な場合はあります。 ビルド作業の自動化のためのツールとしてmakeなどがありますが、そこまで格的な事をやる必要がない場合は、シェルスクリプトで「ビルドスクリプト」を作るのが手軽でおすすめです。この記事では、そのような場合に役立つシェルスクリプトのテクニックを4つご紹介します。 エラーの気付きやすさとデバッグのしやすさを高める メッセージに色を付ける シェル関数をライブラリにする 一時的に作業ディレクトリの中に入る エラーの気付きやすさとデバッグのしやすさを高める はじめに紹介するテクニックは問題が発生した時に気づきや

    シェルスクリプトで「ビルドスクリプト」を作る時に便利なテクニック - ククログ(2012-10-11)
  • 思い出せるチケットの書き方: 「動機」、「ゴール」、「実現案」 - 2012-07-12 - ククログ

    ソフトウェア開発を支援するために、やりたいことや問題を管理するシステムがあります。例えば、Bugzilla1やRedmine2、GitHubなどがそのような機能を持っています。システムごとにやりたいことや問題の呼び方が違います。例えば、Bugzillaでは「バグ」、Redmineでは「チケット」、GitHubでは「Issue」と呼んでいます。ここではRedmineと同じ「チケット」と呼び方を使うことにします。 今回紹介するのは、後からチケットを見たときに、チケットを書いた時に知っていた情報を思い出せるようなチケットの書き方です。 このような書き方は、プロトタイプのような「作って終わり」とか「短期間の開発」というようなソフトウェアでは必要がないでしょう。また、後述の通り、「チケット駆動開発」にも使えないでしょう。継続的に開発を続けていくソフトウェアの開発のように、やりたいことや問題はあるけど

    思い出せるチケットの書き方: 「動機」、「ゴール」、「実現案」 - 2012-07-12 - ククログ
  • Ubuntu PCをルータ代わりにして、新しくLANを構築してみる - 2010-11-19 - ククログ

    以下のような構成のLANを手早く作りたい、という場面が時々あります。 既存のLAN(192.168.1.0/24) ↑ ルータ1→新しく作るLAN 1(192.168.200.0/24) ↓ ルータ2→新しく作るLAN 2(192.168.201.0/24) クリアコードはOSSの導入サポートも行っていますので、クリーンな検証用環境としてこのような構成のネットワークを新たに用意して作業をする、という事がよくあります。今回は、新たなネットワーク機器を購入せずに普通のPCを組み合わせてこのようなネットワークを構築する方法を紹介したいと思います。 前提 現時点では既存のLANのみがあり、そこに新たに2つのLANを別々に構築して冒頭のような構成にしたい、という状況にあるとします。 既存のLANはルータを介して既にインターネットに繋がっている。 新しく作る2つのLANからもインターネットに繋がるよう

    Ubuntu PCをルータ代わりにして、新しくLANを構築してみる - 2010-11-19 - ククログ
  • 1