Optemo is expanding its team

July 15th, 2010

Optemo is expanding its development team and needs you:

We are looking for an experienced and passionate software developer to create quality software for online retailers. Our Ruby on Rails-based software provides a novel way for shoppers to navigate product catalogs. The right candidate should be a knowledgable software developer with a proven track record. Please note that our team develops with Macs.

Responsibilities:

  • Software development
  • Integration with multiple web services
  • Optimization
  • Failsafe deployment
  • Code Testing

Required Skills:

  • BS or BA in computer science or a related field
  • 3+ years software development experience
  • Proficiency with Linux and Mac OSX

Desired Skills:

  • Ruby on Rails proficiency
  • JavaScript and AJAX

Bonus Skills:

  • Open-source development

Optemo will help people shop building supplies

April 21st, 2010

Optemo is working with BuildDirect.com to deliever a one-of-a-kind solution for shopping building supplies. The solution will enhance the way customers will search for hard word floors, cabinet, decks and …

Optemo is going to assist many first time builders or home renovators to shop building supplies online at a much lower price.  Retailers such as BuildDirect.com has really made it possible to make supplies available online at a lower rate. And now Optemo is helping shoppers to get the help they would get at brick-and-mortar stores.

The commerical trial of the Discovery Browser is sucessfuly completed!

January 22nd, 2010

At the end of last year we completed the trial of the Discovery Browser on BestBuy.ca. During the trail, Buy Canada had 40% higher conversion and 100% larger basket size with shoppers using the Discovery Browser! Moreover, we received positive feedback from online shoppers. Stay tuned for more news on the Discovery Browser.

Google Commerce Search

November 6th, 2009

Just two days ago, Google unveiled their new product; commerce search (http://www.google.com/commercesearch/)

The introduction of Google’s new product is a validation of our target market. Similar to us, they provide a search and navigation solution for online retailers.
However, their commerce search has not yet solved a great pain, the problem of navigating large catalogues! Although it could be an affordable improvement, Google’s commerce search does not add much to the online retailers that already provide keyword and attribute driven search.

Optemo’s Discovery Browser provides a novel technology that makes it possible to efficiently navigate large product catalogs. The example based navigation of the Discovery Browser enables retailers to carry ever larger inventories and deliver a product-centric shopping process that resembles the in-store experience.

We’re live on BestBuy.ca

October 19th, 2009
We are pleased to announce that Optemo is working together with BestBuy Canada. We have recently launched a commercial trial in the digital cameras department of bestbuy.ca. Shoppers will love our new way of finding their favorite camera by browsing cameras based on similarity. No longer is there a reason to click through pages and pages of camera listings. We have redesigned our website and will post the newest happenings there.

We are pleased to announce that Optemo is working together with BestBuy Canada. We have recently launched a commercial trial in the digital cameras department of bestbuy.ca. Shoppers will love our new way of finding their favorite camera by browsing cameras based on similarity. No longer is there a reason to click through pages and pages of camera listings.

Since BestBuy is performing a test only 50% of the users get to see the Discovery Browser. Therefore, if you don’t see the banner please just clear your browser cookies and try again.

Facebook Connect Login Logout for Ruby on Rails

July 28th, 2009

This article explains how to achieve seamless implementation of login-logout using Facebook Connect with Ruby on Rails.

FConnectShort

Motivation-

In an effort to add Facebook Connect to my Rails website, I referred to various online resources. I found out that there were several tutorials that helped in setting up a facebook application and configuring the settings to the point that one could display a Facebook Connect Login Button (eg. the Facebook Developers website), but had a hard time figuring out how to proceed thereon and implement the complete login-logout logic. This article describes the approach I took, and my motivation for sharing it is to help first-timers get a seamless login-logout working easily, as well as to invite suggestions for improvement in this approach.

Assumption-

You were able to create a <fb:login-button>. If not, please refer to- http://www.facebook.com/video/video.php?v=630563174283?

Demonstration-

Working application (and a good destination for buying laser printers, by the way): www.laserprinterhub.com

Procedure-

Step1: Login processing
Step2: The logout button
Step3: Logout processing.

Step 1: Login processing

We want that when the login button is clicked, first the user should be authenticated to facebook, then a controller method should get called (where we can perform some user sign-in processing) and then the user should be directed back to the page s/he logged in from.

In the view file, my login-button looks like-

loginpage.html.erb:
<fb:login-button onlogin=”window.location.href=’/login/do_login’;”> </fb:login-button>

Here’s what my do_login method looks like:

login_controller.rb
def do_login
# Retrieve the user’s facebook user id
fbid = cookies[$AppKey +"_user"] # $AppKey is a global constant that stores the value of the application key
# Perform sign-in operations
# …
redirect_to request.referer
end

The redirect_to at the end of the method redirects the user back to the page that s/he logged in from.

Step 2: The logout button

For logout, I display a simple logout link. This link should be visible whenever the user is logged in. So, we modify the view (where we displayed the login button) so that we first check whether or not the user is logged in and accordingly display the logout or login button as follows:

loginpage.html.erb:
<% if !cookies[$AppKey +"_user"].nil? %>
<!– if user is logged in, display user name and logout link –>
<fb:name uid=’loggedinuser’ useyou=’false’ firstnameonly=’true’></fb:name>
<a href=”#” id=”linkUserLogout”> logout </a>
<% else %>
<fb:login-button onlogin=”window.location.href=’/login/do_login’;”> </fb:login-button>
<% end %>

Step 3: Logout processing

We want that when the user clicks on the logout link, a controller method should get called where we can perform some session related operations, then the user should be logged out of our application and facebook, and finally the user should get redirected to some page. To achieve this, we create an AJAX call that makes a GET request to the controller method as follows:

public/application.js
$(document).ready(function() {
$(”#linkUserLogout”).click(function(){
$.get(’/login/do_logout’);
FB.Connect.logoutAndRedirect(”/homepage”);
return false;
});
});

When the logout button is clicked, this AJAX method gets called that makes a GET request to the do_logout method of login controller. In this method we can perform any session related tasks that we wish. After this method returns, the FB.Connect.logoutAndRedirect() method terminates the facebook session and redirects the user to the homepage, and finally the “return false” instructs javascript not to follow the ‘href’ attribute of the logout link.

Conclusion-

This is just one of the several ways in which a login-logout mechanism can be achieved. I am still learning a lot about Ruby on Rails, so my approach might not be the best one. Questions and improvements are most welcome. I hope you find it useful.

Welcome

July 28th, 2009

We’re a startup company located in beautiful Vancouver, BC. Our goal is to make life easier for all you pj shoppers out there! We want to make online shopping more convenient and actually an enjoyable experience. Please go try out our current showcase of our discovery browser at laserprinterhub.com.

Our discovery browser lets users explore the entire space of products. We group all the products according to similar specs which makes it easier for the shopper to understand what’s available. When a group seems like a good fit, the shopper can click to explore that group and narrow down their search for the perfect product. In this way searching through 700 products can be done is as little as 4 clicks. This is much better than the standard listing available on most shopping websites.