I'm finding out that you damn near create a damn near eco-system with the python language. A garden of eden if you will. Why stop a simple file system operations, create your own build script, build server, web services, web site, and I'm sure it won't stop there.
I have less fear with the language than I did with Perl or PHP. I don't think that it should be granted to those that have suffered through some prerequisite period of more structured languages before taking a crack at developing one of these ecosystems ... at least not now in the world of test-driven development. With python supporting unit tests there is really nothing to stop you. Well maybe you. I'm still wresting with creating a decently structured package. I apparently fail at grasping at how to make a python file that is dependent on other files capable of being called and calling itself without an overly complicated import structure.
I let the Rhino out of the gate and it is tearing through some code at work. While the cost at the moment is a bit of a burden, I believe the amount of mocks I stash will save me quite a bit of time in the future.
On the side, I am putting the final touches on a build system that isn't quite as magical as buildbot or some of the other OSS alternatives but has been an excellent python exercise. Some useful extensions on the default python ConfigParser that allows you to specify a template to validate configurations, split the configuration into two configurations (base/override or core/changing portion), and allow you to build values from other values in that section (already supported) and other sections. I also needed a custom loghandler to plug into the python logging libraries that dropped everything out in XML for later consumption by a nice XSLT.
None of that will be explained in more detail. There have been a few fancy things that I have been doing at work that I have felt like documenting with some detail. In a blog of sorts. However, there is tremendous effort to deliver correctly on that promise and at the moment I would rather be implementing then reflecting.
I have less fear with the language than I did with Perl or PHP. I don't think that it should be granted to those that have suffered through some prerequisite period of more structured languages before taking a crack at developing one of these ecosystems ... at least not now in the world of test-driven development. With python supporting unit tests there is really nothing to stop you. Well maybe you. I'm still wresting with creating a decently structured package. I apparently fail at grasping at how to make a python file that is dependent on other files capable of being called and calling itself without an overly complicated import structure.
I let the Rhino out of the gate and it is tearing through some code at work. While the cost at the moment is a bit of a burden, I believe the amount of mocks I stash will save me quite a bit of time in the future.
On the side, I am putting the final touches on a build system that isn't quite as magical as buildbot or some of the other OSS alternatives but has been an excellent python exercise. Some useful extensions on the default python ConfigParser that allows you to specify a template to validate configurations, split the configuration into two configurations (base/override or core/changing portion), and allow you to build values from other values in that section (already supported) and other sections. I also needed a custom loghandler to plug into the python logging libraries that dropped everything out in XML for later consumption by a nice XSLT.
None of that will be explained in more detail. There have been a few fancy things that I have been doing at work that I have felt like documenting with some detail. In a blog of sorts. However, there is tremendous effort to deliver correctly on that promise and at the moment I would rather be implementing then reflecting.