Archive

Author Archive

The Big Moo Canoe wrapup

July 5th, 2008

As I had reported earlier on, my cousin Rob was planning a charity canoe event called “The Big Moo Canoe” to support Heifer International. Last month, he burned a solid 22,000 calories to complete the 250 mile route. He has a nice wrapup page for the event.

Donations are still open until July 20th, and Rob is hoping to turn this into an event that more people can take part in next year (send him email if you’re interested!)

Great job, Rob!

Random

MichiPUG this week: ZODB

June 30th, 2008

The Michigan Python Users Group (MichiPUG) monthly meeting is coming up this Thursday, July 3rd at 7PM. This month, I’ll be speaking about the Zope Object Database (ZODB). Unlike last month’s meeting, where I led us in a random experiment with Google App Engine, I actually have some experience with the ZODB.

I’ll be demonstrating use of the ZODB and will talk about concurrency, replication, packing, etc. If you’re not familiar with the ZODB (and you’re somewhere near Ann Arbor!), this is a useful topic to get to know, because the ZODB is great for a variety of situations.

Python ,

Feed testing… please ignore…

June 23rd, 2008

Sorry for the noise.

PythonWeb

“Why Do I need To Sign This?” : Alex Russell on contributor agreements

June 11th, 2008

Anyone who runs a significant open source project should read this, especially if you don’t currently require your contributors to send in any kind of agreement:


So why have it? Why create the barrier to entry for newcomers who just want to pitch in? I have great sympathy for the impatient potential contributor huffing “why do I need to sign this, anyway?”, so this blog post is an effort to boil it down.
[From “Why Do I need To Sign This?”]

I’ve spoken with Alex a couple of times about open source intellectual property, and he’s definitely given this a lot of thought. For a project the size of Dojo, involving many very large contributors, having something like Dojo’s CLA seems critical for keeping the IP clean.

With TurboGears, from the beginning, I’ve required people to send in a simple contributor agreement and this sums up why: “One of the best aspects of the CLA process is that it gets people who are contributing to think about what it means to contribute.”. Significant open source projects that people depend on need to have contributors that are serious about maintaining the project’s quality and the project’s IP. Making people aware of this responsibility from the get-go is a big positive.

I’m posting this in hopes that more of my friends in open source software will keep these things in mind as their projects grow and the outside code contributions increase.

Python, Software Development , ,

Articles of Impeachment against Bush

June 10th, 2008

news.google.com had among the top stories that Dennis Kucinich has filed Articles of Impeachment against George W. Bush. You wouldn’t know it from looking at CNN.com, which includes such politically charged stories as John McCain promising to “veto every beer”. Maybe Lee Stranahan is right and what’s needed is iPeachment ‘08 (3G).

Though Bush is certainly worthy of impeachment, I cannot imagine these proceedings getting very far during an election year.

Politics

Apple didn’t ship anything!

June 10th, 2008

I’m an Apple fanboy. Not for any religious reasons, mind you. I’m a fanboy because they’ve been doing an amazing job of design these past few years.

Yesterday was the latest of Steve Jobs’ signature keynote addresses. I didn’t watch it, but I saw the play-by-play from MacRumors. I need not go into the details of what was announced, given that Apple gets millions in cheap publicity whenever Steve does one of these keynotes. As usual, the products look great, more revenue, profit and marketshare coming, yadda yadda.

I was disappointed, though, that Apple didn’t ship anything yesterday. It’s very hard to get your product plan to line up with a specific event like WWDC, and I’d be surprised if early product roadmaps pointed to a release at WWDC. In this case, there was the added complexity of the iPhone 3G requiring the iPhone 2.0 software and that it didn’t make sense to launch MobileMe without the iPhone 2.0 software. And the iPhone 2.0 software can’t launch until the AppStore is ready. That’s a lot of dependencies.

As a user of their products, I still would like to have had the iPhone 2.0 software now, though. The Apple of a couple years ago more often than not seemed to ship products on the day they were announced.

Technology

Easy, Repeatable Building/Deployment of Python+Dojo Projects

June 5th, 2008

My latest substantial blog post is now up: SitePen Blog » Easy, Repeatable Building/Deployment of Python+Dojo Projects

Dojo on the client and Python on the server make for a great combination. They’re easy, productive and powerful. In this article, I’ll show you how to use Python + Dojo to cut the number of requests to your server by 95% and simplify development and deployment while you’re at it.

JavaScript, Paver, Python ,

MichiPUG on Thursday: Google App Engine

June 3rd, 2008

We’ve settled on a topic for the coming Michigan Python Users Group meeting: Google App Engine. We do not have a speaker, so this will be a combination of discussion and exploration. I have written some App Engine code, and I’m guessing that others that will be attending have, too, so it’s not all trial-and-error.

Following our usual formal (first Thursday of the month), the meeting will be on June 5th at 7PM at SRT Solutions in downtown Ann Arbor. There are parking structures nearby (4th and Washington and Liberty Square are both close), and there is usually free street parking on Ann Street near the police station.

See you there!

Python , ,

TurboGears Web Services gets a new maintainer

May 22nd, 2008

Justin Davis has just announced that Christophe de Vienne is the new maintainer of the TurboGears Web Services (TGWS) project. Thank you Christophe for carrying this project forward! I consider it a good sign for a project’s health when it can make the transition between maintainers, which is something both TurboGears and TGWS have done.

TGWS, if you’re not familiar with it, is a multiprotocol web services extension for TurboGears 1.

Python

Paver 0.8: new options features, doctools features and bug fixes

May 20th, 2008

For various reasons, I released Paver 0.7.3 on Friday and Paver 0.8 yesterday. I have an idea of what the coming 1.0’s zc.buildout integration will be like, and I think it will be quite cool and useful.

In the meantime, though, I’ve got some new features that set the stage for things I need to do in 1.0. Specifically, you can now pass in a dictionary in your options search ordering. So, you can pull options from any source you’ve got at the time the task is running and stick them at the front of the line. I expect to use this in buildout options handling.

A nice new feature is the ability to set options on the command line. You can do something like:

paver some.option=hello task1 some.option=goodbye task2

Doing that, paver will set some.option to hello, run task1 and then change the option to goodbye before running task2.

The new cog.include_markers and cog.delete_code options allow you to remove Cog’s markers from the output and instead put a nicer bit of text to say where the snippet of code came from. Letting the user know where a sample code snippet came from is quite valuable, so I want to make it possible to do so in as pleasing a way as possible.

For Paver’s Getting Started Guide, I ended up not using the new include_markers feature and instead just changed the Cog delimiters. I did this because Paver runs shell commands in addition to including file sections when generating the docs. I wanted those shell commands to be included. I think the new markers are more pleasant to look at, and I’ll be curious to get feedback since I heard from more than one person that the Cog delimiters looked like they were left in by mistake.

Paver is starting to get some traction as it has picked up its first patches from outsiders, and I’ve started to get some feedback on breakage from Windows users (fixed in 0.8). Mark let me put Paver into TurboGears 2, and I think it will help out there, so that will introduce quite a number more people to the project. As always, come and join us on the mailing list if you have any questions or problems!

Python, TurboGears