Online diff tool

Found this nugget today when comparing numerous of very long SQL-strings. Yeah, yeah – I know; data access is a solved problem – but this app still got them. In spades! And I also agree with the developer of the tool: “Now, although pretty much every IDE (and various stand-alone products) have sophisticated diff utilities built in (like Eclipse), my favourite, I got very tired of having to create two files just to paste in fragments of code or other bits of texts just in order to perform a diff and see the differences highlighted.” Except for the Eclipse-part maybe. The diff tool worked great and helped me a lot yesterday. And probably today… and the day after that, and the day…
Read More

The value of an ubiquitous language

A few days back we had a mail-wise discussion on the subject; why should we care about an ubiquitous language? For me the question falls into two parts; for the whole company/business or for the application. An ubiquitous language or common domain model for a complete business have never felt right with me. I know, I know; I have been defending it, striving for it and even forced it on some customers – but I don’t like it! It will never work! The same entity, (customer) for example, can have very different meanings in different context. A better and much more detailed discussion can be found here: http://devlicio.us/blogs/casey/archive/2009/05/14/commercial-suicide-integration-at-the-database-level.aspx And in Dan North’s excellent SOA for the rest of us An ubiquitous language for an application is a completely different thing and is something that I think should be strived for. But that basically means that all the members of the...
Read More

Life changing events

Often you can’t see them until afterwards… the events that really changed the course of your life. But in retrospect you can almost always point a single point in time when your life took a certain path. Yesterday wasn’t one of those event. I know exactly when it happened. 15:12 2009-11-25. We are going to have a second child. So we went to the ultrasound examination to see that everything was in order. And it was. The nurse: He is the divider-wall (sorry but the non-techie English). Me (thinking): I never heard about no divider-wall when Albert was in there. Nurse: And here is the first fetus. Me: Ok… the first one. Nice…. What! First one! After that the nurse had to leave us. Two takes longer than one. So I told Elin; that just now, that was a life changing event. So we’re going to have TWINS! In April!...
Read More

DataSource in Oracle Connectionstrings

I had already forgot about this one… The Oracle-way of doing things is different and feels quite old to me. Here is a short recap, it’s just for me later on – you could probably skip the next paragraph… Normally you configure your Oracle client (ODP.NET for example) to use a datasource. This is datasource is then searched for in a file called tnsnames.ora. In tnsnames.ora you’ll find the server, port etc. that is needed to connect to the database. However – this means that you’ll need to make sure that tnsnames.ora is present and correctly configured on all the servers you plan to deploy your app on. So – glad to be back with you – instead of this ugly tnsnames.ora thing you can put all of that information into your connectionstring: <connectionstrings> <add name="ConnectionName" connectionstring="Data Source=(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = hostname.host.se)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME...
Read More

Moving items between listboxes with JQuery

OK – this was so special and lucky… Being a newbie at JQuery I was wondering on how to move items between listboxes. Well a quick search later and this popped up: http://www.codedigest.com/CodeDigest/90-How-to-Add--Remove-ListItems-from-one-ListBox-to-Another-Using-JQuery-.aspx Answering the question in two seconds. Internet is wonderful thing and without Google I couldn’t function as a contractor.
Read More

Testing ASP.NET MVC application with Session state

I ran into trouble when I tried to use Session-state in an ASP.NET MVC application. The hit came when I tried to write a unit test for the Action-method that stored stuff in the Session-object. For a short while I found myself pondering that, but then I ran home to mummy – MVC Contrib. My God – they have much useful in there. The thing that save me this time was the TestHelper, that solved exactly my problem. Installed in three minutes and up and running again in five. Great!
Read More

Agile testing – some thoughts after an excellent Elevate-evening

Yesterday was another Elevate-evening and again I was impressed by the diversity and knowledge of the consultants of Avega. The theme for last night was; Agile Testing. This is an area that has confused and frustrated (is that a word?) me for some time. I haven’t got it to work in any of the agile teams I have been leading. Here are sample of my failures (as in failure is good – an opportunities to learn :)); No testers and no testing in the team. This was a disaster. We did agile development but when we were done a 3 month testing phase took place. Sounds a lot like waterfall to me. And we didn’t harvest any of the goodness that agile can bring. Testers in the team – but not doing agile testing. So we decided to move testers into the team. But they had to keep up with...
Read More

When is good – decide already!

I been involved in many meeting booking activities during the last month. And it’s always the same – you send dates back and forth and finally decide. If you have read Lean Software Development by the Poppendiecks you know about Set-based problem solving. The WhenIsGood-website uses this approach to decide on an available meeting time, in a very simple and low-impact fashion. Look for yourself at their introduction video.
Read More