Debating a hero

Today I did something that I never dared before - I posted a comment on an article that I read in ComputerSweden</a>. Nothing scary there - but the article was written by one of the IT-heros of Sweden, Ivar Jacobsson. He invented RUP and has been a busy debater and writer. His column was about Scrum and how it’s “coming apart” (my translation). You can read it here (in Swedish). Here are my comment and Ivar’s promptly answer. The last row was something extra: “Marcus, you’re welcome to write to me directly” :) I can’t miss out on that opportunity, can I.
Read More

Sprint Planner Helper – Session 25

Today I will continue working on the model, surrounding Sprints, and of course drive it forward with tests. I came to realize today that I am now converted. I am now a TDD guy. I will do tests even if it’s not required of me. And the reason is security and speed. I have gone from coding along with no worries – the tester will find (any) bugs for me… Then I heard of unit-testing and started to write some – just for fun in the start (yeah – pretty sick). After a while I didn’t dare to check in any code that I couldn’t prove with some test – but a wrote the code first. And after a while of doing that, I was so feed up with running behind with the tests that thought I’ll give true TDD a chance. What I pretty soon came to realize is...
Read More

In Control V - Cactus Cuties

Here is a clip of a group of girls, the Cactus Cuties, that sings the American National Anthem in the most wonderful way. They are just spot on in their parts – and the balance is just amazing. I don’t care that is sugar-sweet and patriotic, music-making like this always makes me happy.
Read More

Sprint Planner Helper – Session 24

My detour for learning ASP.NET MVC is coming to an end. I cannot say that I fully know the framework but I have a much better understanding of it now and that will hopefully help me keep the tempo up. I have a few things left (such as editing product backlog items) surrounding the product. But I will leave them for later. I am so long back to the DDD that this project also is aiming to learn me. The third item of my user stories is a biggie and it concerns Sprints – the main object of my domain model. 3. As user I can create a sprint that represent a sprint in which some items of the product backlog is to be realized. The sprint has a goal description and a start, stop and demo-date and the team members with availability (in %), absent hours and focus factor...
Read More

UpdateModel, FormCollection and unit test

I ran into some problems with a Action Controller method that accepted an FormCollection. Inside the method I use UpdateModel to get the values from the form into the model-class. Here is a skeleton implementation of the method: [UPDATED] **Some insightful comments by Steve made me do some changes to this code. I have now updated it. The tip had to do with if the ValueProvider should be set on the Controller in the test or in the actual Action-method. I finally opted for the latter and changed it into this (significant code in **bold). \[AcceptVerbs(HttpVerbs.Post)\] public ActionResult Create(FormCollection form) { // Create ViewData ProductForm viewData = new ProductForm(new Product(), productOwnerRepository.Find().ToList());   try { **UpdateModel(viewData, form.ToValueProvider());**   // Get the productowner for the selected product-owner id viewData.Product.Owner = productOwnerRepository.GetById(viewData.SelectedOwnerID);   // add new product to the repository productRepository.Add(viewData.Product); productRepository.Save();   // Go back to the list return RedirectToAction("Index"); } catch...
Read More

Årets höjdare 2009

Yesterday night Avega had a party. Great fun as always and this night also presented the Avega Band which was great (rock band mind you, I didn’t play). There were a number of awards handed out during the evening (SM i Affärsnytta among others). I was truly amazed when I was rewarded the “Årets höjdare” (Avegean of the year, kinda…)!!! Last year it was Joakim Sundén who is a great guy and really has put Avega on the IT-map of Sweden. It is a reward that is voted on by the consultants of Avega. Being completely taken off guard the only thing I could say at the time was also the only thing I really felt: I am always very humbled when meeting my colleagues in a group since you immediately can notice the level of knowledge that exists in the firm. And that group of people voted for me...
Read More

Sprint Planner Helper – Session 23

This has been the longest of my sessions so far and by far. It has actually stretched over 4 separate “hours” and almost a week since my schedule has been busy with other stuff. It had to do with me getting stuck on a thing the ASP.NET MVC framework that I didn’t get. This was related to the way the framework binds the data in the view to the values posted, and the UpdateModel method etc. To make a long story short I have posted an item in the MVC-forum, and got some truly great feedback from Alberto. I recommend you reading it. Go on. Do it now. Ok – from all this I learned some very useful lessons; the most important was to use a separate ViewModel. That is – create classes that are streamlined to fit the view that the controller is exposing. you can do some pretty...
Read More

He walks!

He has been close for a couple of months now but today Albert took the first real steps. He went back and forth between Elin and me. It was quite an experience to see him take control of the balance and how he was filled with confidence as he went along.
Read More

Sprint Planner Helper – Session 22

I have had some serious thoughts on what to do next in my project. On one hand I want to update the way I am doing the GUI for the product and product backlog. Right now I am warm and learning a lot about ASP.NET MVC so it feels quite good to continue there. And on the other hand this is first and foremost a DDD-learning experience and I have got stuck for a while in the ASP.NET MVC trench. And finally since I only have one hour a either way will take me on a detour from the other track. What to do? After some serious consideration I decided to spend today’s session on a DDD-thingy that I ran into in the walkthrough. I want to implement the “IsValid and GetRuleValidations”-pattern. And include it in my BaseRepository Save-method. That will be enough for today – I think. [Coding with...
Read More

Ruby on Rails – supercool demo

Here is a demo of the famous Ruby On Rails framework that is just mind-blowing. http://media.rubyonrails.org/video/rails_blog_2.mov I can’t wait until the ASP.NET MVC framework comes up with something similar. Amazing. Truly amazing. Maybe I should switch gears…
Read More