Thursday, 31 July 2014

Software project estimation will always be hard

Software estimation has always been an issue. There's just no way around it, as long as people demand to know long in advance how long a software project is going to take, and especially if they'll get upset if it takes longer. While I appreciate that finance and budgets work a certain way - you have this much money, this much time and this project to do, is it possible? - I also recognise that software is notoriously difficult to predict.

We don't even have a great way to measure software project size. If you're building a bridge, you know how long it will have to be to go from here to there. Estimating a software project is like asking how many blueprints will be needed to design the bridge, but without any clear definition of "blueprint", or even "how many". Probably the best measurement to use is a nebulous Task, which must be broken down far enough that it will probably take an average programmer less than a day to do, and can be clearly seen to be done or not done (never, ever "90% done").

The problem is generating that task list. At that stage of a project, you won't know how big the project is, nor how complex the tasks it requires. To find that out, I think you just have to start. You might not even get a good idea of how large and complex a software project is until it's a quarter of the way complete. The most honest and accurate answer to the feasibility of the project at the beginning is "I can't know".

It seems the only way to get good at estimating software is to spend years trying and failing first, until you develop a good enough intuition about project sizes and how to break them down into tasks.

Once you do have that task list, however, you can start projecting a finish date by using "velocity charts". If you have a record of all your required tasks, then you can track how many are active at any given time and, as long as you're completing them at a rate faster than you're adding them, that graph will, eventually reach zero. If you add a margin around that, based on how far out it is, then you'll get a range estimate for your release date. As that date nears, you'll get more and more certain about exactly when all your tasks will be complete.

Mokalus of Borg

PS - A velocity chart can be depressing if it only goes up.
PPS - Or even if it just stays level.

Wednesday, 30 July 2014

Pros and cons of cloud desktops for business

I think there might be something to the idea of company desktop environments stored in the cloud, as long as they are available offline, too. It obliterates the problems of BYOD policies, because the work environment is secured in the cloud, separate from the hardware. Whether the company or the employee provides the hardware is irrelevant. It neatly separates personal and work environments, even to the point of the preferred operating systems being irrelevant. It assists in remote work, too, because now you don't need to supply remote connection software and support that for everyone. In or out of the office, you're using the same environment with the same capabilities. It also means it's very easy to upgrade or downgrade a user's computer power as needed - you just have to adjust the settings on their cloud desktop.

It does raise some concerns, however. First, cloud desktops are probably going to be slow and frustrating to use, so they'll be worse in that way than local desktops. That's the way most people will care about. Second, it does put an extra burden (or maybe a different burden) on IT support, because now they need to make sure everyone can access the remote desktops from whatever is their host system of choice. That could be a problem. Third, it's harder to trust remote storage for some businesses, especially since government agencies can just wander in and copy the data whenever they want. Storing everything in the cloud is a risk for them.

Mokalus of Borg

PS - I haven't heard of anyone trying this.
PPS - One big reason would be the huge expense involved at today's rates.

Tuesday, 29 July 2014

Pre-funding TV show rescues from cancellation

What if, instead of petitions or letter-writing campaigns to save our favourite TV shows from cancellation, we just ran our own Kickstarter funding drives? That way, assuming the audience is there, when the network calls "cancel", we can respond with "Oh, yeah? Here's your next season funded right now. UNCANCELLED!" I'd get behind this. In fact, I'd be happy for some shows to put some cash in escrow in case of cancellation - an emergency fund, if you will.

It's not without problems, of course. First, how do you trust that this cash is going to the right people in the first place? What would be to stop someone setting up a fund, slapping the name "Firefly" on it, then pocketing some cash and disappearing, before a trademark dispute can even be raised? Second, you don't want the emergency fund to be the lazy fallback position. If the studio hears that there's a few million dollars held in trust, they might be less likely to greenlight the next season with their own money. Just say its cancelled, grab the rescue fund and carry on. Zero investment, full profit. Third, you want to get the rights right. You don't want fans swooping in droves to save a cancelled show, only to have the network pick it back up and, again, pocket the profits. If the angel investors are the show's fans, they should get a cut of the profits for funding like this. Point 3 should cancel out point 2. Unless you paid in, you don't get cash out. Fourth, and perhaps the biggest problem, by the time the public hears about a show being cancelled, it's way too late to save it. By then, the props and costumes are warehoused, recycled or pillaged, the sets are torn down and the stages reassigned, plus the writers, actors and other crew are looking for their next gig. The network completely dismantles a show, then makes the press release to say it's over, and then the fans cry out in an uproar. We need to get in just at the point where the studio decides their money is better spent elsewhere.

Mokalus of Borg

PS - If we can get in at that point, this might work.
PPS - Or we might learn that TV is way more expensive than we thought.

Monday, 28 July 2014

Urban camouflage

Urban camouflage doesn't mean blending in with buildings. It means blending in with people. If you want to be camouflaged in an urban setting, you don't use the same tactics as for jungle or desert camouflage, where you try to blend into the background. You should try to look like people who belong there. Boring people not worth a second look.

Mokalus of Borg

PS - That's how real ninjas did it.
PPS - Apparently.

Friday, 25 July 2014

Blu-Ray doesn't work for me

I have, as yet, not had a single Blu-Ray movie play all the way through without some kind of issue on my Panasonic player. I've been encouraged to update the firmware, which never seemed to change anything (after all, the main point of firmware updates is to make sure the player refuses to operate in the circumstances that Hollywood dictates, so I can't imagine it ever adding functionality or fixing anything significant), and sometimes the discs still refuse to even load afterwards. There have always been entire scenes that wouldn't play at all. For example, the middle of The Internship when they go out on the town, or the entire last 20 minutes of Vampire Academy.

I know it's not the player itself, at least in general, because DVDs have zero issues. Not one, not ever, except with badly scratched rentals. All my own well-cared-for discs play perfectly every time.

This is why I blame the Blu-Ray standard itself, and I won't be buying any more of those discs. It's been noted that Blu-Ray demand is falling in the USA much faster than Sony anticipated. Some people think this is because of Netflix and streaming services. Personally, I think Blu-Ray is doing everything it can to self-destruct, and this is just the "Mission Accomplished" moment.

Mokalus of Borg

PS - Plus, streaming services can be pretty great.
PPS - Or they can be terrible, like Ultraviolet.

Thursday, 24 July 2014

Unique language sarcasm tones

I read recently that the sound of sarcasm is different in every language. You might think that verbal sarcasm would be easy to detect regardless of the language, but that's just not the case. This does, however, make sense of a story Arj Barker told about performing in Germany. His sarcasm-based comedy didn't quite seem to hit the mark, and even allowing for the idea that English might have been his audience's second language, this would better explain why they didn't seem to get it: they didn't know how to listen for the English-speaking sarcasm tone.

Mokalus of Borg

PS - Fortunately, on the internet, we can all detect sarcasm in text perfectly.
PPS - Just like that.

Wednesday, 23 July 2014

Facebook Save proves Facebook doesn't like to share

I'm not a huge fan of the way Facebook wants to be a "roach motel" on the internet: content checks in, it doesn't check out. It's a problem on the mobile app more than the desktop website, because sometimes I'll see an article I want to read, or a video I want to watch, but I can't right now. From that point of view, I'm glad they've introduced "Facebook Save", which is a glorified bookmarking feature to let you save an article for reading later, into a special feed on the Facebook site.

What bothers me is that this plays straight into their roach motel business model. See, there are plenty of other bookmarking tools out there, and plenty of services to save articles to read later. I use one of them often. It's called Pocket, and it's fantastic. This Facebook one could very easily be replaced by Pocket, if only the Facebook mobile app had a "share" function that worked with the normal Android "share" channel, instead of assuming that Facebook is the only place I would ever want to share something I found on Facebook.

This was clearly not the easier path for Zuckerberg Incorporated. Adding a whole new level of functionality to Facebook should not be the default behaviour. It's big, it's potentially buggy, and it reinvents the wheel. The only reason to behave this way is to avoid the suggestion that there's anything on the web but Facebook itself. In other words, Facebook went to a lot of trouble and expense to keep you on their site, rather than learning to share.

Mokalus of Borg

PS - I've checked for the new function but I can't find it yet.
PPS - Functions like this tend to roll out slowly.