Sphinx 0.9.7-RC2 released, Ruby API updated

Posted by Dmytro Shteflyuk on under Ruby & Rails

Today I found that Sphinx search engine has been updated. Major new features include:

  • extended query mode with boolean, field limits, phrases, and proximity support (eg.: @title "hello world"~10 | @body example program);
  • extended sorting mode (eg.: @weight DESC @id ASC);
  • combined phrase+statistical ranking which takes words frequencies into account (currently in extended mode only);
  • official Python API;
  • contributed Perl and Ruby APIs.

I have updated Sphinx Client Library along with Sphinx 0.9.7-RC2 Windows build.

Using Sphinx search engine in Ruby on Rails

Posted by Dmytro Shteflyuk on under Ruby & Rails

Almost all Web-applications needs data search logic and really often this logic should have full-text search capabilities. If you are using MySQL database, you can use its FULLTEXT search, but it’s not efficient when you have a large amout of data. In this case third party search engines used, and one of them (and I think, the most efficient) is Sphinx. In this article I’ll present my port of Sphinx client library for Ruby and show how to use it.

Read the rest of entry »

Ruby on Rails related cheat sheets

Posted by Dmytro Shteflyuk on under Ruby & Rails

There are couple of cheat sheets about Ruby on Rails and related technologies can be found in the web. I decided to collect all of them (almost all) in one post just to keep them in mind. All of them are in full color PDFs or PNGs.

Read the rest of entry »

Encoding media files in Ruby using ffmpeg/mencoder with progress tracking

Posted by Dmytro Shteflyuk on under Ruby & Rails

In my current project I need to encode media files from any format to several predefined. Furthermore I need to track progress and show it for the customer. I don’t want to describe wich media formats I need and what troubles with converting (maybe it will be my future posts, if anybody interested), instead I will describe common idea how to implement encoder scripts and how to track progress.

Read the rest of entry »