I found a blog post
describing London Web Frameworks Night
, which took place on 11/17/2005 at the University of Westminster. Jabbering Giraffe
reports on presentation of three web frameworks: Catalyst
, Django
, And Ruby on Rails
.
It is an interesting read. Author remarks that Django’s Admin ("with lots of Ajax and JavaScript goodness") was the main object of envy of other frameworks. Another interesting remark was how good Rails people are at marketing.
I was able to work more on OpenWrt GUI. Alpha release seems inevitable now. I’ll try to publish it during this weekend.
I added back the main applet, which serves as a menu for all other applets. More network configuration-related applets are added. Status applet is cleaned up considerably: all less important information was moved to tooltips. Here is a new screenshot for your viewing pleasure:

Stay tuned for upcoming alpha release!
Last time I visited New Orleans on July 23, 2005 on my way to Florida. It was a short visit. I planned to stop again on my way back, but I didn’t have time. "New Orleans is not going anywhere. I can do it some other time." One month later Hurricane Katrina made landfall devastating New Orleans.
I am looking at pictures I took during that brief stay — everything is so peaceful. It was about noon. Streets were practically empty. Tourists were sleeping late after crazy night on Rue Bourbon.
As you all know Django has new shiny RSS framework
. This change breaks my simple RSS tutorial
and I am glad that it happened! To tell you the whole truth, it breaks only "The Simple Way" to do RSS in Django replacing it with even simpler one. "The Smart Way" RSS still works as you can see on my web site. Like I predicted the feedgenerator is still around and it learned some new tricks: it can produce Atom feed now! I am going to update the tutorial recreating old examples with new RSS framework. It will be fun!
Recently I looked at the stats of my web site. DreamHost
provides Analog 6.0
. I supplemented it with awstats
. Plus there are some other means to analyze the traffic. Let’s put it this way: I know my average reader. I thought I did. Anyway I found a few surprises.
The country list includes 77 countries. Out of 193. Not bad for a personal blog. Practically all Eurasian countries, and countries of both Americas are in the list. Australia, New Zealand, and many island countries are there as well. Only 2 countries from Africa: South Africa and Senegal. Pity.
As of today i18n branch of Django is merged back to trunk. What is i18n? It is an abbreviation of the big word "internationalization". l10n ("localization") is a sibling of i18n. In practice it means that now you and I can do truly international multi-language web sites without much hassle. While this is more important for big corporations and international organizations, it is a big step for Django’s truly international community. Let’s thank Hugo
(the engine behind this effort), all participating developers, and all translators for their monumental effort to make it a reality.
New TinyMCE 2.0RC4 is out. It fixes numerous bugs, which never bit me. Is it going to be the last RC before actual release? Who know. Grab it
while it is hot!
I didn’t have a lot of time this weekend. So I decided to implement the simplest part of upcoming OpenWrt GUI (webui) — hosts editor. It is a perfect candidate to write something in 15 minutes or less — it has almost no "business" logic in it: read/edit/verify/write cycle. The hardest part was to learn how to upload dynamically generated files without writing them to disk first.
It turned out to be very simple. Right now it is implemented using Dojo
’s versatile dojo.io.bind()
facility and some external code.
Update: this document is officially obsolete — alpha is released
!
Please download it again: /webui-0.1-pre-alpha.ipk — two debug files made their ways to the release messing things up. Now it is fixed and I hope it’ll work for you.
DreamHost
has switched to Python 2.4.1. Now python is the alias for python2.4. Yay!
Update: checked it again — nope, python is the alias for python2.3. But python2.4 is available as well.
Update: this document is officially obsolete — alpha is released
!
Finally I released a preview: /webui-0.1-pre-alpha.ipk!
I included two information applets and a simple network configuration applet. I think it would be enough for a proof of concept. I borrowed heavily from nbd’s webif
. So if it works for you, it is due to his OpenWrt expertise. If it doesn’t, it is my fault.
Both webif and webui can be installed side by side:
Finally I found time to finish it up. It is pre-alpha quality now, but shows the direction.
The only problem is a packaging. I didn’t mean OpenWrt
’s IPKG. I am talking about creating a custom build of Dojo
to reduce the foot print. Dojo has a special provision for that but so far I was not able to do it getting some strange errors. I hope I’ll get some help from developers.
I’ve migrated my sites to new Django admin. It is easy to do but make sure that you followed instructions closely. Small mistakes can cost you a lot of head-scratching time. You can find the instructions at the bottom of Backwards-incompatible changes
.
New refactoring has totally made sense. Meanwhile Robert Wittams & Co is working on new-admin (note the hyphen). Django’s admin is a very nice app (now it is an app!). I hope I could reuse some pieces of upcoming new-admin in my apps. If I remember correctly it was the main driving force behind branching.
DreamHost
has installed Python 2.4.1. Somehow I didn’t see it before. Default python goes to Python 2.3.5. Use python2.4 instead.
As you know I bricked
my wireless router. All simple things were tried without any positive effect. Kaloz (of OpenWrt fame) has advised me to try JTAG
. It’s a very simple thing: you need a computer, a proper software, and JTAG cable, which can be self-made
. Obviously the last part is the crucial one.
I made a trip to my friendly neighborhood Altex
store and bought all necessary parts: 4 100 Ohm resistors, male & female 14 pin IDC connectors (they didn’t have 12 pin ones, which were modified later using cutters), 25 pin male SUB-D, and 3’ 25 pin male to female cable — I figured I’ll make extremely short JTAG "cable" and attach it to short printer cable. The last item was the most expensive part: $3.99. It took me about 5 minutes to put everything together.
In his blog post Ian Maurer shares a very slick way to run unit tests with SQLite’s in-memory database. Check it out: http://itmaurer.com/blog/?p=2
Simple, elegant, practical.
Today I have good news and bad news.
The good news is tonight I was able to work on AJAX OpenWrt GUI a little bit more. It is coming together. I coded my first applet. It shows current stats, nothing fancy.
The bad news is I bricked my router apparently by running nvram show repeatedly. I suspect that nvram is corrupted beyond salvation. I have to reset it somehow. I tried simple recipies listed in OpenWrt Wiki
but no luck so far. I’ll try to revive it on weekend. I have a feeling that my future lies with JTAG. Until the router is up I cannot debug OpenWrt GUI.
O.K. I migrated to InnoDB using backup/restore. So far so good.
Don’t forget to replace all "MyISAM" to "InnoDB" in your backup files before restoring them to new databases.