One month ago, I wrote the first line of code for the new Tabulas front-end (if you're keeping count, this is the 3rd rewrite of stuff I've already written since 2.0). About 230KB lines of code later, I wrapped up the first version of the new Tabulas front-end! Amusingly, this was a success because it achieved the exact same outcome as before (so if you go to your new site and go, "Wow, this looks exactly the same!" I've succeeded. How often in life can I say that preserving the status quo is a good thing?)

You can try out the new front-end at http://username.tabulas.net/ (mine is: http://roy.tabulas.net) This is only a temporary holding place until I transition the main www.tabulas.com code to the new stuff. Do not share this URL; you can use it daily to do your friends reading or whatever else, though.

Some changes you'll see:

  • Nested albums (if you're using the new control panel) in gallery (I have 3 nested albums in this album!)
  • Awesomely clean URLs (but all your old URLs will work fine with fancy HTTP 301 redirects so you don't have to lift a finger!)
  • New "links" section which makes searching your links easier
  • Your own subdomain! (domain aliasing coming soon!)
  • Ability to specify comments as HTML (since "<" would break comments)

Some changes you don't see:

  • Completely new backend - I have much more confidence in this code and my ability to maintain it (code maintenance is why I keep falling behind on working on new Tabulas features)
  • Tons of meta-caching - there were a few suspect queries in past versions of Tabulas which worked with large datasets, but now all the queries are guaranteed to work within a smaller dataset, which is a big relief for me

This version is slightly speedier than the old version - I was hoping to get a significant improvement to page speed, but it wasn't to be. You can view the page execution time in the HTML source.

The most expensive query is getting your friends page. My goal was to get that thing down to about 150 milliseconds processing time (in PHP). Mine is currently clocking in the 140ms range prior to caching (once it caches, I get around 50ms).

It's pretty sad it took 4 weeks to get to almost exactly where I was before, but now I have a ton of awesome building blocks in place to continue with my plans for Tabulas.

Posted by roy on August 19, 2007 at 09:36 PM in Web Development, Tabulas | 5 Comments

Related Entries

Linked Entries

These are Tabulas entries which have linked to this particular entry.

Want to comment with Tabulas?. Please login.

Comment posted on August 21st, 2007 at 09:22 PM
This is AWESOME.
Comment posted on August 21st, 2007 at 07:14 AM
do you have to insert titles now since the page url depends on it? =)
Comment posted on August 21st, 2007 at 10:15 AM
no, it defaults to @id for no titles

han (guest)

Comment posted on August 21st, 2007 at 07:06 AM
i can just use xanga if you want...
Comment posted on August 21st, 2007 at 06:57 AM
Congrats man. That looks fantastic.