heisel.org

Blogmarks
  • A wealth of knowl­edge on kanban – From the Lean and Kanban blog comes a very long, but infor­ma­tion rich, pre­sen­ta­tion on the kanban prin­ci­ples, dif­fer­en­ti­a­tion from scrum, and a lot of good prac­ti­cal examples.
  • ongo­ing · Test-​Driven Heresy – I'm nor­mally a "you must absolutely write your tests first" guy, but I can see the argu­ment that on a new project/component you may be more effi­cient scratch­ing around and then writ­ing tests. But what­ever you do, by god, write tests before the code goes into production.
  • Boeing and Dream­liner Trou­bles – Print – Port​fo​lio.com – An inter­est­ing tale: a lean prac­ti­tioner had shep­herded the 777 through Boeing. But man­age­ment changes and a focus on cost cut­ting drove him out and it sounds like the 787 is in trou­ble. Even more inter­est­ing, the prac­ti­tioner left Boeing for Ford, and his lean changes there allowed them to forgo bailout funds. Since McDonnel-​Douglas was my home­time aero­space com­pany I feel bad that they "infected" Boeing…
  • Adding value in the new news ecosys­tem « BuzzMa­chine – "So I imag­ine a news orga­ni­za­tion cre­at­ing a kind of anti-​wiki – a dynamic, col­lab­o­ra­tive Snopes: a list of what we don’t know so we can see what is uncon­firmed and so these things can be con­firmed – so jour­nal­ists can add journalism." That rings true with a descrip­tion of jour­nal­ism I heard at Geor­gia Tech's Com­pu­ta­tional Jour­nal­ism con­fer­ence: "Journalism is the sci­ence of verification…"

Pywatch: Run tests when your code changes

Saturday | June 20, 2009 | 11:08 am  

I’m happy to announce that pywatch is ready for use, I think.

What does it do? It’s both a Python module and a com­mand line client that allow you to run arbi­trary shell com­mands when­ever changes occur in a list of spec­i­fied files.

Here’s an exam­ple:

pywatch --help
Usage: pywatch [options] "command" file1 file2 ...

Options: -h, --help show this help message and exit -v, --verbose Output timestamp when commands are run. chris@pinko:~/Code/pywatch$ pywatch -v ./bin/test src/pywatch/watcher.py src/pywatch/tests.py

Running commands at 2009-06-20 12:00:13.226711 Running zope.testing.testrunner.layer.UnitTests tests: Set up zope.testing.testrunner.layer.UnitTests in 0.000 seconds. Ran 4 tests with 0 failures and 0 errors in 2.003 seconds. Tearing down left over layers: Tear down zope.testing.testrunner.layer.UnitTests in 0.000 seconds.

Running commands at 2009-06-20 12:00:34.422557 Test-module import failures:

Module: pywatch.tests

Traceback (most recent call last): File "/home/chris/Code/pywatch/src/pywatch/tests.py", line 1, in import makethistestblowup ImportError: No module named makethistestblowup

Test-modules with import problems: pywatch.tests Total: 0 tests, 0 failures, 0 errors in 0.000 seconds.

Running commands at 2009-06-20 12:00:44.600708 Running zope.testing.testrunner.layer.UnitTests tests: Set up zope.testing.testrunner.layer.UnitTests in 0.000 seconds. Ran 4 tests with 0 failures and 0 errors in 2.006 seconds. Tearing down left over layers: Tear down zope.testing.testrunner.layer.UnitTests in 0.000 seconds.

So far I’ve been using it to auto­mat­i­cally run tests on per­sonal projects, includ­ing pywatch and base­boards.

You could use it to run other arbi­trary com­mands when­ever you change a file, but run­ning tests was the par­tic­u­lar itch I was trying to scratch.

It’s avail­able at GitHub and PyPI

Permalink | Comments (0) | Categories: Programming, Projects, Python, Pywatch

Blogmarks

django-baseboard updated to 0.3

Saturday | June 13, 2009 | 11:41 am  

I’m happy to announce that django-​baseboard has been updated to 0.3

Here’s what’s new:

  • Better error han­dling and report­ing for the man­age­ment commands/cron jobs
  • Projects are no longer required to have an RSS feed for­eign key (bugfix from 0.2)
  • Project.project_url returns the Base­camp project’s home­page URL (because Project.basecamp_url can be any valid URL within a project entered by a user)
  • baseboard.helpers.update_summaries takes and honors a net­work time­out argu­ment (defaults to 20 seconds)
  • Projects now have RSS­Feed for­eign keys — suit­able for dis­play­ing a Trac change log or a project blog, etc.

If you were fol­low­ing along on GitHub then you’ve already got the last three changes. If you were using the offi­cial PyPi relese then I, ahem, forgot to upload ver­sion 0.2.

But now there’s 0.3 which is a whole tenth better than 0.2, and a whop­ping two-​tenths better than 0.1.

Permalink | Comments (0) | Categories: BasecampReporting, Management, Projects, Python, Technology

Blogmarks
  • Remote log­ging with Python log­ging and Django – I don't know why, but we've yet to find some­thing at work that's beg­ging to have addi­tional log­ging in our Django apps. But if we did, this would be a great way to do it. We log our (few) 500 errors out to the apache error_log and use an app to grep that and notify us of problems.

Disclaimer: I work at The Atlanta Journal-Constitution. The opinions expressed here are my own, and do not reflect those of the AJC, Cox Newspapers, Cox Enterprises nor any other party.

Mail carrier N. Sorenson delivering Christmas mail through the snow. (Chicago Daily News/Chicago Historical Society)