News
Children
Having kids means you hear sentences around the house that you would never hear uttered otherwise.
On safety From the four year old:
Why is there blood and bandages all over the bathroom? Answer: The 13 year old just got a real Swiss Army knife for his birthday. With real Swiss blades. Which can really cut not-so-Swiss hands. Which he tried to bandage up himself to avoid the embarassment. Apparently the embarassment wasn't deep enough to compel him to try to hide the incident by actually cleaning up after himself.
News
Sparklines Update
The sparklines generator has been updated to offer a new graph type: impulse. This is similar to a discrete graph , but the lines extend all the way down to zero .
Note I said "zero", and not "the bottom of the graph". That lets me introduce another often requested feature, the ability to make graphs like this: . All lines in an impulse graph are plotted from zero, and if you put a lower limit for your data that is negative, then negative data points are plotted down from zero.
News
WSGIDispatcher
Introducing WSGIDispatcher [code][docs][tests]. It's just like Luke Arno's Selector, except for the following:
The license is MIT. It does not use setuptools. It has no external dependencies. It has unit tests. Regular expressions are compiled lazily. Non-regex path expression are treated as string matches, not regular expressions. You can mix and match templates and regular expressions in the same instance of Dispatcher(). Hooking up applications that handle all methods doesn't require _ANY_.
News
First Atom Publishing Protocol Interop Notes
So the first Atom Publishing Protocol Interop meeting took place over the past two days. The event was hosted by Google, and I'd like to extend a big Thank You to DeWitt and the rest of the Googlers for hosting this event. The food and facilities were great, though it appears 20 guests in a single room seemed to tromp the guest wi-fi network. It was great to meet so many people face to face after all this time.
News
Atom Returns to Socialtext
Chris Dent:
...so I went off and implemented a good start at Atom support in the REST API. w00t!
Monday and Tuesday there is an APP Interop Event at Google. I wish I had done this work sooner, as I would have liked to show up. I can make a Socialtext server and service document available, if there is interest. I'm interested.
News
Scaling Matters Twitter
Alex Payne:
The problem is that more instances of Rails (running as part of a Mongrel cluster, in our case) means more requests to your database. At this point in time there’s no facility in Rails to talk to more than one database at a time. The solutions to this are caching the hell out of everything and setting up multiple read-only slave databases, neither of which are quick fixes to implement.
News
Megadata Follow-up
I posted a couple days ago about megadata data stores.
As an aside, I intentionally chose a really awful name, "megadata", since I know I'm bad at naming. Come on, I named one piece of software the Italian word for trash. I was hoping that someone would come up with a better name for me. Unfortunately, it appears that 'megadata' is sticking. I'm sorry.
Anyway, I got a lot of good comments, but for some reason the discussion veered off into RDF, which I don't see as providing a solution.
News
Atom Publishing Protocol Interop Event
There will be an Atom Publishing Protocol Interop Event at Google April 16th and 17th, see the wiki for more details. The price of admission is a client and/or server implementation to test against. I'll have both my Python client and server implementations. See you there. Yes, two full days of testing.
Yes, we'll have to figure out what to do Monday evening.
Yes, Byrne has already suggested a game of werewolf.
News
ETech '07 Summary - Part 1
Ok, so the first thing I learned from ETech is that not only can I not live-blog, I can't even blog tidbits through the day. I had been to ETech last year and presumed that it was just intense because I was only there for 36 hours, and that there was no way that that intensity could be sustained for four days. I was wrong. Before going on I'd like to take a little tanget and talk about my undergraduate education.
News
Robaccia inspired?
I know what babelfish told me, but could a native speaker of French tell me what's going on on this page? Thanks!
Hi Joe, What do you want to know exactly? This is some tutored work for students. Each group of students has to rewrite the examples given in the first two sections (and yes, it really looks like Robaccia; but it says Cette introduction s'inspire très fortement de l'article Why so many Python web frameworks?
News
Toys and tools
My 12 year old just showed me how to install custom brushes in Gimp. Does the product you use when you're 12 influence the product you use when you're 22?
This is the first sign of old age :-)
More seriously, kids are not afraid of computers and technology anymore. My 4-year old daughter and 2-year old son routinely use the computer, satellite TV, DVD player, etc. like most kids of their age.
News
Tidbits from ETech07
My typing skills, and ability to stay focused, don't permit me to live blog ETech, but I will occasionally share some tidbits I pick up the sessions. Longer writeups will require more digesting. [Updated periodically throughout the day.]
Werner Vogels gave a presentation on EC2, S3 and SQS. One thing I learned is that there are no bandwidth charges when you use S3 from EC2. etech07
News
APP BoF at ETech
I'll be moderating a BOF for the Atom Publishing Protocol at ETech tomorrow, Tuesday March 27. I'll be there! Posted by Edward O'Connor on 2007-03-26 No, wait, I won't be there. :/ Previous dinner plans. Posted by Edward O'Connor on 2007-03-27
News
Pudge Mailing List
cavorite:
Pudge is a documentation system for Python that generates documentation files from docstrings and uses Restructured Text syntax. You can see a running example in Python Paste. Maybe you could give it a try.
Pudge does look promising. I was able to successfully pull the code from subversion, and after a small patch ;) to setup.py, I was able to install it: Index: setup.py =================================================================== --- setup.py (revision 134) +++ setup.
News
REST Tip Deep etags give you more benefits.
ETags, or entity-tags, are an important part of HTTP, being a critical part of caching, and also used in "conditional" requests. So what is an etag? Entity tag The ETag response-header field value, an entity tag, provides for an "opaque" cache validator. That's not very helpful, is it? The easiest way to think of an etag is as an MD5 or SHA1 hash of all the bytes in a representation.
News
SocialText launches an appliance
Well, to be precise, SocialText launched an appliance a little while back, now they have a Managed Service Appliance. So a customer can buy a wiki in a box, have that data behind their firewall, but still outsource the maintenance of that box back to SocialText. Think of all those other services out there that enterprises would never use because they don't want to lose control of their data, this seems like an interesting approach.
News
Five things I hate about Python
Jacob Kaplan-Moss:
I completely agree with Brian that you can’t trust any advocate who doesn’t know enough to find stuff to hate. Given that I spend a lot of time advocating Python, writing down what I hate seems a good exercise.
I'm flattered to see httplib2 listed as one of the libraries Jacob would want in the standard library. I agree almost completely with his list, though I would have folded #4 and #5 together into a single request for abstract base classes.
News
Cheeserater
Found via my referrer logs, Cheeserater, a Django based application that lets you rate Python packages listed in the cheeseshop. Oddly, selector, which has a rather sparse cheeseshop entry, doesn't show up in a search. Sadly, my first impulse was to get an account and vote down setuptools. I wish I had the bandwidth to try to help, but I don't. Instead, I'll just repeat my advice: If you are maintaining a package that uses setuptools for install, please provide a distuils alternative.
News
Constraints preceed performance
REST REST provides a set of architectural constraints that, when applied as a whole, emphasizes scalability of component interactions, generality of interfaces, independent deployment of components, and intermediary components to reduce interaction latency, enforce security, and encapsulate legacy systems.
GFS We treat component failures as the norm rather than the exception, optimize for huge files that are mostly appended to (perhaps concurrently) and then read (usually sequen- tially), and both extend and relax the standard file system interface to improve the overall system.