Python's packages and modules are -- generally -- quite elegant.
They're relatively easy to manage. The __init__.py file (to make a module into a package) is very elegant. And stuff can be put into the __init__.py file to create a kind of top-level or header module in a larger package …
more ...After all, programmers are all lazy and stupid.
Got his complaint recently.
"Developers on a fairly routine basis check in code into the wrong branch."
Followed by a common form of the lazy and stupid complaint. "Someone should think about which branch is used for what and when." Clearly "someone …
more ...I had a recent conversation with some folks who were desperate to "processize" everything. They were asking about Scrum Master certification and what standards organizations define the "official" Scrum method.
Interestingly, I also saw a cool column in Better Software magazine, called "Scrumdamentalism" on the same basic question.
In my …
more ...I find that some people spend way too much time doing "meta" programming. I prefer to use someone's framework rather than (a) write my own or (b) extend theirs. I prefer to learn their features (and quirks).
Having disclaimed an interest in meta programming, I do have to participate in …
more ...I haven't written new C code since the turn of the millennium. Since then it's been almost all Java and Python. Along with Java and Python come JUnit and Python's unittest module.
I've grown completely dependent on unit testing.
I'm looking at some C code, and I want a unit …
more ...Had a knock-down drag-out fight with another architect recently over "status" and "priority".
She claimed that the backlog priority and the status where the same thing. I claimed that you can easily have this.
Priority: 1, Status: Not Started
Priority: 2, Status: In Process
Priority: 3, Status: Completed
See? It's …
more ...On StackOverflow you can read numerous questions on "flattening" nested lists in Python.
They all have a similar form.
"How do I flatten this list [ [ 1, 2, 3 ], [ 4, 5, 6 ], ... , [ 98, 99, 100 ] ]?"
The answers include list comprehensions, itertools, and other clever variants.
[STRIKEOUT:All] Much of which is …
more ...This isn't computer forensics; it's something much simpler.
A colleague has been struck down with a disease (or won the lottery) and won't be back to work any time soon. Worse, they did not use SVN to do daily check-ins. Their laptop has the latest and greatest. As well as …
more ...Many folks ask about Agile project planning and total cost. As our internal project managers wrestle with this, there are a lot of questions.
Mostly these questions are rejections of incremental delivery ("All or Nothing") or rejections of flexibility ("Total Total Cost"). We'll look at these rejections in detail.
Traditional …
more ...