Monday, 26 December 2011

Process management for software development companies

Our bugtracker system has grown far beyond bugtracking, and that is the time where you need to realize, that bugtracking is not much different from managing a construction site, a catering company or many other kinds of businesses. It's all about automating the process, and this requires a generic process-automation tool, and not a bugtracker. So, why do people still get and install bugtracking software? I see several reasons:

1) The bugtracker screenshots shows data that end-users can relate to. If you see a screenshot with states, buttons and text that is similar to what you need, it feels comfortable. There are fewer things to check, than if the screenshot doesn't show anything that relates to what you want the software to do.

2) Integration with your existing tools. Things are much easier when things are integrated, right?

However, sometimes we need to make a choice, between what is right to do, and what is easy to do. If you can save 100 mandays by investing 10 mandays, it becomes a no-brainer. Well, if you can convince yourself, that the most tempting screenshot does not represent the right solution. It also requires that you know the alternatives, and most software developers never heard about process management tools like Joget or Bonita.

We have a list of possible tools to choose between, but we have not decided, yet. If you know good process management and production planning tools that make Bugzilla, Jira, Mantis, Team Foundation Server and Redmine look old, leave a comment.

Saturday, 23 July 2011

Google+ is a different approach

Many try to compare Facebook with Google+, and often they conclude that Facebook har more friends, so they will not switch to Google+.

However, Google+ should not be analyzed as a Facebook killer. It isn't. Facebook has a huge head start, and even though Google+ has grown extremely fast, most current users were already gmail users. For those that do not have Google accounts, Google+ is not as obvious.

It is not a good idea to compare two systems using a one-dimensional good/bad scale, there is much more to comparisons than that. Initially, Facebook really annoyed me, because each country in Europe had it's own network, and you could only be part of one network. Then, they removed that feature, and few people really noticed. Then they added groups, then they hid them well, then they added friend lists, then they added "Top news" and so on. The core of Facebook, that has persisted all the way, is a friend list and posts, and the ability to keep the profile 100% out of search engines.

Google+ has a different approach. The core seems to be the friend list and circles, but the friend list can include people that do not acknowledge the friendship. The profile contains part that cannot be hidden from the public, such as the name and photo. So, the list of friends works differently and the circles are part of the core user experience. By doing that, Google+ will be able to do other things than what Facebook can do, and generate a different user experience. It's like comparing a bird with a human - both have skills that the others have not, but some skills overlap.

There is no doubt that Google will integrate their services further. The Google+ account is used almost everywhere, from blogs to email, and circles are now supported by Picasaweb, Google Latitude, Huddle and Hangout, but will probably also come to Google Docs, and maybe we will see Google Groups reinvented as "Shared circles". So, instead of sending emails to the scout parents, you can now post on Google+, and some will receive the messages there, some will receive it by e-mail. Those that have Google+ accounts will be able to discuss the message online, immediately, without spamming people's mail boxes. And you can keep it totally separated from your Golf club while still handling messages from both in the same place.

So, what does Google+ kill? Well, currently, not much. But it will improve sharing of information, especially among people that already have Google accounts. But because the fundamental mechanisms are more advanced than on Facebook, more can be built on it. Facebook will continue to have the advantage of size for quite some time, which should technically put it in the position of being able to compete well, but because of Facebook's reputation, many may not perceive it as a serious way to share important stuff.

Will people have time for Google+? I believe that they will, because it can be a more efficient way of spending time, than looking into e-mails and various other online forums.

Monday, 6 June 2011

Is WPF+Silverlight dead on Windows?

Does anybody still remember WinForms? If you think WinForms is old outdated technology, and WPF is the new and cozy, you might want to go on Youtube and look at the Windows 8 previews. Microsoft was dead serious when they embraced HTML5 and JavaScript last year, HTML5 and JavaScript seems to be the new toolkit for writing GUIs for Windows. In case that you wonder how JavaScript relates to other programming languages, have a quick look at StackOverflow's question on strangest language features. My personal favorite is the one about the JavaScript truth table.

A quick Google search informs, that:

* Microsoft is very quiet on WPF development. I guess they have to be, in order to support the new HTML5 strategy.
* Discussions on blogs about WPF+Silverlight contain a lot of "It will still run on Windows 8" - but not "This is how apps should be built today" or "WPF is still Microsoft's strategy for making Windows 8 apps"

I am not surprised. Microsoft keeps renewing itself, by abandoning old development tools. It has been this way ever since... well... forever. Who knows, maybe they will invent a new paradigm for NUMA cpus, that abandons compatibility with programming languages based on Garbage Collection. Or they will adopt Python and a new version of C++ as their new primary development languages. If you're in doubt whether these statements are jokes from my side or not, don't worry. I'm in doubt, too, and Microsoft does not really explain the choices this time. Explanations don't seem necessary any more, other things are more important, things move on, and "developers, developers, developers" is history.

Interestingly, Delphi 1 source code made in 1996 still compiles with Delphi XE today, with the same GUI forms, and it still outperforms .net and Java on speed, while having a similar complexity level and developer productivity. Now, this is impressive technology.