Nov 06
I was not present at the conference yesterday, so this is actually my second day here, and that also explains why there were no post from yesterday. Another explanation could have been that I was lazy, but that is not the case this time…
Well, over to what this post is all about: the conference. The keynote was held by Scott Hanselman. He gave an excellent talk about effectiveness and efficiency. Some really good stuff to bring back from that speech. Will try to list some of the techniques and tools he mentioned in a later blog post.
I will also summarize the rest of the sessions I attended today very soon here…
Great conference!
Tweet This Post
Oct 08
I have been kind of lazy writing this blog lately. After keeping it up pretty okay during summer, the pace has now slowed to a minimum. I think it can be partly explained by the fact that I have been using Twitter for some of the stuff I used to write here and that my new HTC Hero Android phone made tweeting more convenient than ever…
My intentions are to use this blog for subjects that cannot easily be said in 140 characters and twitter for the short, more daily stuff…
Well, so what has happened since last time. Since I have solely been using NetBeans the last couple of years for Java development, I decided to give Eclipse Gallileo a chance. It took me an hour of frustration to conclude that it still sucks for Maven based projects. Why it should be so hard is beyond my comprehension! In NetBeans, you just choose open project, selects the pom.xml file and everything is fine. Dependencies are resolved as they are defined in Maven, no stupid .classpath, .project and .settings rubbish created that makes Eclipse to totally hick-up if a dependency is changed.
Apart from my unsuccessful flirt with Eclipse, I have continued development of KanbanFX. It has been converted to a maven project and besided the information on Kenai, I have created a page for it here where you can try it out. Kanban is increasing in popularity, @henrikkniberg had 300 people on his Kanban vs Scrum session at JAOO this week.
Tweet This Post
Sep 03
I really like the simplicity in Kanban. It should be enough for most small projects, and especially AO teams. Even though all you really need as tool support is a white-board and a couple of post-it notes, larger organizations often require you to hook into existing tools for requirement management, issue tracking etc.
I have not been able to find any tool fulfilling this need, so I decided to create on myself. Thereby, KanbanFX was born!
KanbanFX is a JavaFX implementation of a Kanban board. Source code and a very limited demo version is available on Kenai:
http://kenai.com/projects/kanbanfx.
Please join the project if you want to contribute. I am pretty sure that I will need help with at least the graphical elements when we get to that…
Tweet This Post
Aug 26
One of the new words buzzing around in the software industry these days is Kanban. Most people have heard of, or is using, some variant of Scrum or ScrumButt, but Kanban is still pretty new. Henrik Kniberg has written a great article where he compares Kanban and Scrum: Kanban vs Scrum – a practical guide.
In short, Kanban is the Less-is-more cousin of Scrum.
Kanban prescribes only three constraints:
- Visualize the workflow
- Limit WIP (Work In Progress)
- Measure the lead time
The rest is up to you. Kanban does not exclude Scrum or vice versa. Read the article, inspect and adapt and find what is best for you and your organization.
Tweet This Post
Jul 17
I wrote about JUnit Max in a previous post. In that post I commented that I was not sure if people were willing to pay $2/month for it. It turned out that I was right. Kent Beck just announced that he has deadpooled JUnit Max.
It is kind of sad that it seems impossible to sell such a great product, but I guess we have got used to that all tools are free. If I look at myself, I would rather have to pay one-time license fee for it than a $2/month subscription. Too much hassle filing expense reports every month for such a small amount.
That said, I actually never tried it since it was not available for NetBeans. Please remember us NetBeans folks next time! Maybe we are easier to get money from than the Eclipse guys…
Tweet This Post
Jun 26
Rebecca Parsons and Martin Fowler gave a keynote on Agilists and Architects at QCon last year. The video from the keynote is available at InfoQ. In their talk they talk about how the role of the architect is different in an agile environment. Among other things they mentioned the importance of transparency. It is much better to have a system that makes visible what is actually happening, rather than tell what should happen and then try to force it through. A lot of architects could benefit from having that attitude. I wrote a post about the Agile Architect back in February.
Another thing they said, which is fairly obvious, but nevertheless done wrong again and again, is how to focus on reuse. If you are going to get reuse, you do not get it by building something reusable and expect people to go ahead and use it. It is much more effective to build something that is actually usable and then harvest reusable things from that.
Tweet This Post
Apr 28
Kenai is Sun’s connected developer destination. It is a integrated suite of developer services where you can host your open source projects. Currently the following features are supported:
- Source Code Management (Subversion, Mercurial, and Git)
- Issue Tracking (Jira and Bugzilla)
- Wiki
- Forums
- Mailing Lists
- Download facility for documents
- Evolving integration with NetBeans
When you create an account at Kenai, you can host up to five projects for free. I imported two of my hobby projects to try it out, and I liked it. See wikipedia for a comparison of open source software hosting facilities.
Tweet This Post
Feb 04
Most agile methodologies does not mention anything about the role of the architect. The team is supposed to be self-managed and take care of everything, including architecture.
“Big Design Upfront is to be avoided at all costs!”
But what about technical debt? Wouldn’t it be nice if someone had the big picture? Someone who knows the key technologies and standards to use and makes sure that central mechanisms such as error handling are handled conformly?
This has always been some of the focus areas of a software architect. But how does an agile architect differ from a “traditional” one?
In my view, the traditional, high-tower, ivory architect is long dead anyway, so the role of an agile architect is just the same as that of any architect independent of what kind of development methodology that is being used – agile or not. You have to be pragmatic, know the technologies used, be able to communicate through code with developers (no-one likes PowerPoint anyway…) as well as being close to the business stakeholders.
Tweet This Post
Jan 28
In the post The Decline and Fall of Agile, James Shore highlights some of the problems with introducing agile methodologies.
“Scrum is popular because it’s easy–and that’s part of the problem.”
It is a great blog post, and I am sure that you will feel familiar with the descriptions if you have been applying Scrum or other agile methodologies in real life. I certainly do!
Tweet This Post
Dec 03
In an earlier post, I wrote about ScrumWorks. After having used it on a couple of projects I have gathered some thoughts here.
I usually prefer the good old whiteboard with post-its or an Excel sheet to track progress and generate burndown charts. But ScrumWorks has proved to be an excellent alternative to these old techniques. Developers find it pretty easy to use, and ScrumMasters get a pleasent user interface and a nice burndown chart almost for free.
So what is the downside? Well, sooner or later you will be asked by management to report progress. And managers are usually not willing (or capable) to using any unfamiliar tools, so you end up exporting the data to make some burndown chart or excel sheet available for them. This type of status reporting is overhead (or waste in lean terminology) and boring.
Luckily, ScrumWorks has a decent Web Services API which makes it fairly easy to extract the information you want. For example generate live burndown charts automatically on a wiki, or use the task information in ScrumWork to verify valid commit comments in a Subversion hook script. Imagination is the only limit…
Tweet This Post