Daily WTF editor Remy Porter has a (rare) rant up today about software development processes. I'd like all my project management friends to read it:
[L]et’s just say the actual truth: Process is important, and it doesn’t have to suck. And let’s add onto that: process is never a cure for a problem, but it might be a treatment.
Let’s be honest, managing developers is like herding cats, and you need to point them all in the same direction by giving them some sort of guidance and organizing principle. Processes are a way to scale up an organization, a way to build towards consistent results, and a way to simplify the daily job of your developers. With that in mind, I want to talk about development processes and how organizations can make process work for them, with the following guidelines.
It's a rant, to be sure, but a good one.
In the last 48 hours, I've upgraded my laptop and surface to Office 2016 and my phone to Android 5.0 and 5.1. Apparently T-Mobile wants to make sure the Lollipop update works before giving you all the bug fixes, which seems strange to me.
All four update events went swimmingly, except that one of my Outlook add-ins doesn't work anymore. Pity. I mean, it's not like Outlook 2016 was in previews for six months or anything...
I just Googled a problem I'm having setting up a continuous-integration build, because I've had this problem before and wanted to review how I solved it before. Google took me to my own blog on the second hit. (The first hit was the entry I cross-posted on my old employer's blog.)
Why even bother with my own memory?
I'm still doing some R&D with BlogEngine.NET, and I keep finding strange behaviors. This is, of course, part of the fun of open-source software: with many contributors, you get many coding styles. You also don't get a lot of consistency without a single over-mind at the top.
My latest head scratch was about how labels work. I won't go into too many details, except to say, re-saving a code file with no changes in it shouldn't change the behavior of the code file. I'm still puzzling that out.
In any event, it's possible that I may have a stable-enough build with all of the features I want ready in a couple of weeks.
Of course, there's this little matter of 4,941 posts to migrate... That should be fun.
Because Microsoft has deprecated 2011-era database servers, my weather demo Weather Now needed a new database. And now it has one.
Migrating all 8 million records (7.2 million places included) took about 36 hours on an Azure VM. Since I migrated entirely within the U.S. East data center, there were no data transfer charges, but having a couple of VMs running for the weekend probably will cost me a few dollars more this month.
While I was at it, I upgraded the app to the latest Azure and Inner Drive packages, which mainly just fixed minor bugs.
The actual deployment of the updated code was boring, as it should be.
Since development of DasBlog petered out in 2012, and since I have an entire (size A1) Azure VM dedicated solely to hosting The Daily Parker, I've been looking for a new blog engine for this blog.
The requirements are pretty broad:
- Written in .NET
- Open source or source code available for download
- Can use SQL Server as a data source (instead of the local file system, like DasBlog)
- Can deploy to an Azure Web App (to get it off the VM)
- Still in active development
- Modern appearance and user experience
See? Look-and-feel is in there somewhere. But mainly I want something I can play with.
I'm still evaluating them. This list was really helpful, and pointed me towards the successor to DasBlog, BlogEngine.NET. Mads Kristensen's newest blog engine, MiniBlog, has potential, but it doesn't seem ready for prime time yet.
The changes will come at some point in the next few months, assuming I have time to play with some options and modify the chosen engine to support a few features I want, like time zone support and location tagging. I also want to see about adding completely new features, like Google Timeline integration, or private journals and events, which require encryption and other security measures that blog engines don't usually have. Not to mention the possibility of using DocumentDB as a data source...
Stay tuned. The Daily Parker's 10th birthday is coming in November.
Twenty years ago today, Microsoft released Windows 95. It's hard to explain how revolutionary the OS was at the time.
To celebrate the anniversary, Microsoft is offering a free Rolling Stones song. Trust me; it makes sense.
And here, for your listening enjoyment, is the Microsoft sound.A And C-Net's coverage of the day:
Just some of the news stories I haven't got time to read this morning:
I will now continue doing tasks from two jobs ago while I think about things I'd like to do for my current job.
I'm reviewing a book I read about nine years ago, Why Software Sucks...and What You Can Do About It by David Platt. It feels like re-reading Keynes in 2008: really much more familiar than one would want, because no one seems to have learned much. From Chapter 1:
As with many areas of computing, user interface design is a highly specialized skill, of which most programmers know nothing. They become programmers because they're good at communicating with a microprocessor... But the user interface, by definition, exists to communicate with an entirely different piece of hardware and software: a live human being. It should not surprise anyone that the skill of talking with the logical, error-free, stupid chip is completely different from the skill of talking with the irrational, error-prone, intelligent human. ...
Because they're laboring under the misconception that their users are like them, programmers make two main mistakes when they design user interfaces. They value control more than ease of use, concentrating on making complex things possible instead of making simple things simple. And they expect users to learn and understand the internal workings of their programs, instead of the other way around.
The book is a little dated (October 2006), so some more, ah, concrete thinkers may have trouble getting past the 2006-era examples. But just like the idea that government investment can get an economy out of recession, the ideas in the book are still relevant and timely. Unfortunately.
OK, I think the Fitbit "sensitive" sleep setting has to go. Last night, I know I slept for longer than my Fitbit believes I did:
I think it's interpreting very slight arm movements as actual restlessness, whereas it used to ignore most of them. If I'd only gotten four hours of sleep last night, I'd have crashed at my desk already.
I'm setting it back to "normal" sensitivity now. Let's see what it shows tomorrow.