How to get equivalent proxy-classes to implement a shared interface

After reading the great patterns book i was talking about earlier i soon ran into a problem that at first seemed pattern-like but was not after some examination.

The case that we are integrating against a back end AS400 system, via Microsoft Transaction Integrator. The “problem” is that the department that is responsible for the integration is creating a web service for each program (“method”) we are accessing. I brushed on this in an earlier post about naming those web services.

A lot of the stuff we are sending back and forth are equivalent but not the same, for example an header that all methods expect. They are equivalent but not the same since they are located in different namespaces, since the header are generated once for each web service.

So what we wanted was to create an interface that all the headers could implement. To create...

Read More

Great Silverlight 2.0 Tutorial

Everybody who knows me knows my feelings on doing complex WebGUI. In short I think it is stupid - and also I have never met a developer yet who can show me a robust and simple way of managing the events of a web page. It is always, always fixes like; hidden fields, setting stuff in pre-render etc etc.

So my personal opinion of this is - don’t do it! Web is for simple stuff. The moment a request about a tab control or thing posting back is being said I would raise a big warning flag. You’ll get into trouble. (Of course I can only speak for ASP.NET, and love to be convinced otherwise).

Luckily there is help on the way.

  • You could either stick with simple HTML and use ASP.NET MVC which removes all the crazy event-handling from the ASP.NET WebForm model. Basically this solution could...
Read More

Design patterns II

During the last three weeks or so I’ve been reading a great book, Head First Design Patterns. Now I have finished it!

As i said earlier; This is the best, funniest and most informative IT-related book I’ve ever read - and that is quite a few if you count my years at the university.

I have tried to wrap my brain around Design Patterns many times but failed, often due to the very academical language that is used when you speak about such abstract thing. I cannot count the number of times I got an “aaah”, “so it was this simple?” or “finally!”-feeling while reading this book.

Thank you!

Now if the Head First team only could put out some .NET stuff and I’ll be buying lots and lots of those.

Read More

Sweet brass bander

I can’t withhold this sweet picture. It is from the Youth Brass Band Championships in Great Britain held last weekend. Note that she’s not even holding a normal cornet, it is smaller than a regular cornet. But she is still playing a singing E. What a concentrated face!

Read More

Sprint demo, cold and speed

I’m back - yesterday was a day with speed since we had to prepare the Scrum demo we’re going to hold today. And as frosting on the cake I caught a cold (kind of).

Well, nothing to do about that - the sprint demo today will be running smoothly even if I am a bit slower than usual.

The night at the shelter was quite quiet (:)) for me. I got to go to bed at around 2345 and woke up 7 hours later without a single disturbance, part from a soar throat. A very small contribution from me.

UPDATED The demo was a success! The product owner said that she wanted to do “the wave”, which was quite a good reception, don’t you think.

Read More

A night at the shelter

Tonight I am sleeping at the Salvation Army shelter for homeless in Stockholm. It is a very good way for me to take part the most important work that the Salvation Army does, and that I am embarrising seldom involved in.

Feels fine for now - I hope I don’t mess things up, though. There are a lot of things to keep track of and the people I am serving are used to a certain standard and certain ways. I hope I don’t let them down.

Bye for now - I’ll get back to you after the night.

Read More

What is SOA? What is SOAP-RPC?

The now almost age-old question; “but what is SOA then?” has been out for debate at the office where I am right now. It must be stated that this is a gang of developers and quite often the questions bubbles down to; “but this line of code then, is this SOA?”.

I took some time over the weekend and though about it - and came to the conclusion that you cannot answerer that question because the question is not correct in itself. SOA has to do with switching position and behold your world from another angle, was my conclusion.

And lo and behold; today I found an article that explained a lot of stuff surronding this for me: http://wisdomofganesh.blogspot.com/2008/02/deciding-characteristic-of-soa.html

Great explanation of the differences between SOA and SOAP-RPC.

Read More

WCF - wsdl configurations explained

OK - after an intensive coding session I can now proudly say that I understand 4 attributes of the WCF configurations (of the 1200 + that exists ;))

The attributes that you should set are:

  • ServiceBehavior.Namespace - this get generated as the targetNamepace in the wsdl (instead of http://tempuri.org/). Also you should use this namespace in the endpoint, with the bindingNamespace-attribute in the config-file: <endpoint bindingNamespace="https://www.marcusoft.net/Services/" />
  • ServiceBehavior.ConfigurationName - this is the name that you use as service name in the configuration file: <service name="OffertTjanst" \>
  • ServiceBehavior.Name - the name property has solely to do with the generated wsdl-file. It is generated as the Name-attribute in the wsdl-file: <wsdl:definitions name="ListDataTjanst" ...
  • ServiceContract.ConfigurationName - (note: this is on the interface, service contract, all other attributes are on the service implementation) this name is used to reference the interface in...
Read More