New Radiant Website

Posted by Doug Tue, 28 Aug 2007 09:38:00 GMT

blah blah blah (lawyers made me change this) has been going through a major re-branding effort for the last long time. This morning we’re launching a major re-write of our main application. There’s a pretty cool on-line demo that shows off our new sexiness.

Simultaneously we’re rebranding our website and also restructuring most of our internal item catalog. Pretty much everyone in the company has been involved in this effort in some way. After months of work, we’re live!

The new website is running Radiant from index to thank you page. We have a web service for handling all of the EC business logic and multiple user facing web sites that connect to the service for managing their cart. We’ve written a “store behavior” to handle this xml-rpc client interface with Radiant.

This actually isn’t our first production Radiant site. Our first was our Japanese RosettaWorld. That site isn’t getting near the traffic that our US site does though. The US site runs steady-state at about 5 user sessions per second. We had a bit of a problem serving our CSS and JavaScript out of Radiant. It was causing a session hit that forced an update to the DB. Turns out that was a pretty big bottleneck in our load testing. As a fix, we just moved those files out of Radiant for this rollout. I’m sure there’s some in-Radiant solution to tell it not to track sessions on those pages. We’ll figure that out for this next release.

Hopefully, after all the stress of getting this release done we can take a collective deep breath. However, I’m guessing it’s more likely we’ll be scrambling to make all kinds of tweaks and such.

Posted in  | Tags ,  | 7 comments

Rails without ActiveRecord

Posted by Doug Wed, 08 Aug 2007 13:02:00 GMT

It’s supposed to be easy to turn off ActiveRecord and have a database-less app. The word is it’s possible in rails 1.1.x, but not with vanilla rails 1.2.x. To get your environment to load with rails 1.2, you still need a database.yml and the database created (even though it can be empty). That seems a bit silly to me. If you want a database-less app, you don’t want to have to create a database and maintain a connection to that database. There’s two problems I’ve worked around to get a true database-less app with rails 1.2.

Theoretically all you have to do is set

Rails::Initializer.run do |config|
  config.frameworks -= [:active_record]
end

The first problem is whiny nil requires ActiveRecord. By default config.whiny_nils is set to false. However, both config/environments/development.rb and config/environments/test.rb both explicitly set it to true. What I did was just comment out those assignments in the respective files. Besides detecting when you call ActiveRecord methods on nil, whiny_nil will also detect when you call Array methods on nil. By turning off whiny_nil, you loose the ability to easily detect when you’re treating nil like an Array.

The second problem is that the Rails initializer requires AcriveRecord to load the observers. This is documented in ticket #6795 on the Rails trac. It seems a bit kludgy, but what I did was redefine the load_observers method before I run the initializer in my environment.rb:

require File.join(File.dirname(__FILE__), 'boot')

module Rails
  class Initializer
    def load_observers
      ActiveRecord::Base.instantiate_observers if 
          configuration.frameworks.include?(:active_record)
    end
  end
end

Rails::Initializer.run do |config|
...

There are several reasons for wanting a database-less rails app. The ticket above references using something like CVS or Subversion as a datastore and using rails’ ActionPack to drive an interface. I’ll get into my own uses in another post soon.

Posted in  | 1 comment

RubyConf 2006

Posted by Doug Fri, 20 Oct 2006 14:52:16 GMT

Doug Alcorn I’m here in Denver for RubyConf 2006. Most of the people I only know online. So I’m walking around introducing myself to various folks. Some I already knew and some are new. I wanted to make a point of speaking to Nathaniel Talbot. I saw him at breakfast and walked over to re-introduce myself. There were a couple other guys there with him whom I also introduced myself. One of them introduced himself simply as “Matz”. Pause. Click. “Oh, hey! Thanks, man.”

BTW, if you can hear my voice and want to hook up to talk about emacs and ruby or something, let me know. I’m ‘lathinet’ on AIM. My cell is 513-295-2844.

Posted in ,  | Tags ,  | 1 comment

Older posts: 1 2 3 4 ... 14

Copyright 2001 - 2005 by Lathi.net and Doug Alcorn

Creative Commons, Some Rights Reserved Ruby on Rails Developer Powered by Debian GNU/Linux Powered by Typo