Entries For: October 2008
2008-10-12
Erlang!
I was in Barnes & Noble and was looking hard to find a book about something I didn't already master (or at least hadn't already bought a book about)... and I found it!
Programming Erlang. As a pseudo-mathematician, I must say -- wow. I love languages like Lisp, and now Erlang, that really get down, dirty, and relatively close to the theory. Loops? Forget them! Variable variables? Forget them! Recursion? Embrace it! Anonymous functions and Lambda definitions? Embrace them! Sounds strange? Sure, but its refreshing, but do take my opinion with a grain of salt -- I used to program in TCL ;-)
Needless to say, I'm looking now at web development and hosting solutions around Erlang... Yaws, ErlyWeb, and Erlang Web. Most likely, we'll be supporting these in short order.
2008-10-08
Upgrading your Rails version
By default, we do not upgrade customer's Rails applications to newer releases of Rails. We have noticed that a large number of customers haven't been upgrading, and just want to make sure that customers know how to do so!
Simply edit your application's config/environment.rb as such to specify the version you would like to upgrade to:
-RAILS_GEM_VERSION = '1.1.6'
+RAILS_GEM_VERSION = '2.1.1'
Then, run 'rake rails:update' from with in your application's directory.
Notable upgrades for you would be:
1.2.0
1.2.6
2.0.0
2.0.4
2.1.0
2.1.1
Other versions can be available as well, but these are the earliest and latest point-releases available within each major release at the time of this writing.
Django 1.0 'admin' interface
We've had a few customers asking about why their Django admin interface is no longer working, since the upgrade to Django 1.0.
Changes in Django 1.0 required a couple changes to the url.py file in order to access the admin view. Here is an example of how to modify the file:
# Add following lines for 1.0 compat, to top of file
from django.conf.urls.defaults import *
from django.contrib import admin
import os
admin.autodiscover()
# and then under urlpatterns, eg:
urlpatterns = patterns('',
# Remove old entry, eg:
# (r'^admin/', include('django.contrib.admin.urls')),
# Add new entry, eg:
('^admin/(.*)', admin.site.root),
Python update plan
Python 2.6 and 3.0 will soon be released, and it is important that this transition is as smooth as possible. To facilitate that, we ask that customers please make sure that all of their scripts (including their Zope startup script) refer to a specific python version, a la: "/usr/bin/python2.4"
For compatability, we've left Python 2.4 as the default on our servers. Soon, python 2.5 or even 2.6 will be the default. We do warn that if customers do not specify a specific Python executable, they may automatically be switched to newer Python releases as they become available.
Our support department will gladly assist customers prior to, and during the upgrade & migration period.