# Tuesday, 08 April 2008

BizTalk-MsgBoxViewerRecently we had some BizTalk issues that kept puzzling us, and in the end we turned to Microsoft Support and opened a Service Request. As always we were asked to collect different kinds of information for the supporter to help us solve our issue. However this time the supporter asked for something we had not previously been asked for: a report from the MsgBoxViewer tool.

To be honest I did not know the MsgBoxView tool when asked for the report, but I quickly started appreciating the tool after downloading it.

The tool is created by the Jean-Pierre Auconie, who is Tech Lead in the European MS BizTalk Support team. In his job as a BizTalk Support team member Jean-Pierre found himself mailing the same SQL scripts to clients over and over to collect data from the BizTalk databases, to help solve their issues.

He found the approach laborious, and eventually decided to include everything in a tool; the MsgBoxViewer was born. The name is a bit misleading though, as the tool does a lot more than just looking in the MessageBox database. Pretty much anything you would ever need to know about your BizTalk installation is included. You get several comprehensive reports including a summary report and your installation is validated against best practices and recommendation providing warnings and of different severity. I.e. very useful to get a quick overview when taking over a BizTalk installation you have not performed yourself.

If the MsgBoxViewer is not already in your BizTalk toolbox I strongly recommend you to go get it right away. It can really be a big help in your work with BizTalk Server – especially when something is not quite behaving as expected. Needless to say that as soon as we provided the report to the supporter it was only a matter of hours before our issue was solved.

Tuesday, 08 April 2008 20:09:02 (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback
# Wednesday, 09 January 2008

One year ago we tried to formalize the hosting of technical brown bag sessions at Vertica. After a couple of run-ups this time should be the real deal. We would take turns delivering a short session for our colleagues. A list of potential topics was created and someone was selected as responsible for the scheduling.

And now as the calendar says 2008 we can mark the one year anniversary of the “Vertica Beer & Learn Sessions”. Yep, you guessed it: We switched the lunch with a beer :o)

Marking this significant day I have decided to write a little more about our way of doing things as well as our considerations.

The topics for the sessions can be anything that has relevance to our daily work. A new technology that has been used, a project that has been completed, the use of new features in a product etc. We have even had the sales director talk about sales, in relation to our work as developers and consultants.

Right from the start we set the following four guidelines for the sessions:

  1. We would aim for bi-weekly sessions on Friday afternoons (which hopefully sort of explains the Beer part and of the name). This would be often enough to create a flow and still not over-ambitious so we couldn’t keep up.
  2. The sessions should be no more than one hour. We try to aim for 45 minutes, but usually it takes a little longer as soon as the questions start coming.
  3. Hosting a session should not require more than two hours of preparation. More time indicates that the host needs to perform research, and that is not the purpose. Also if more than two hours are required it might be a sign that the session will take more than 45 to 60 minutes to host.
  4. Being a presenter is optional. Obviously it would be great if everyone would like to present, however we have to recognize that people are different, and I do not believe anything good will come from forcing anybody to present.

Obviously it is not possible to make an expert of out anybody in such a short time regardless of the topic, but that really hasn’t been the purpose. The overall purposes of hosting these sessions have been:

  • General knowledge of technologies and products related to our work. A broad knowledge will help both during development as well as when talking with customers. The more possibilities you know of, the better solutions you will be able to propose.
  • Increased communication skills. In our work communication skills is at least just as important as technical skills. That is one of the reasons why we hire developers and not programmers.
  • Better understanding of what our colleagues work with. Getting straight to the person who is most likely to have a solution to a frustrating problem saves time for everyone.
  • Hosting the sessions Friday afternoon with a beer or two obviously there is also a social aspect to the sessions.

Now, after one year, I am quite satisfied with the results. A total of 16 sessions have been held (we had a two month break during the summer vacation period) and we have talked about everything from Business Activity Monitoring to Commerce Server and from Microsoft integration technologies to new language features in C# 2.0 and 3.0. Overall I think we have succeeded in attaining our goals with the sessions and they will continue in the New Year. The first sessions have already been scheduled and I am looking forward to continuing what I believe is a success.

I have heard of several others companies hosting similar sessions. Some during breakfast, others during lunch, and still others like ours on Friday afternoons. Feel free to leave a comment about the sessions at your work. The best way to improve what is being done is to share and learn from each other.

Wednesday, 09 January 2008 21:31:06 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |   |  Trackback
# Saturday, 29 December 2007

So why would you want to read an almost 10 year old book about managing teams in the computer industry? And that is only the 2nd edition – the 1st edition was published 20 years ago. What relevance could a book that old have in our industry? The answer is crystal clear after you read in: it has a huge relevance.

In 34 chapters – or stories as the authors Tom DeMarco and Timothy Lister call them – divided into 6 parts, the reader is taken through the different aspects of creating productive projects and teams. Reading the book the word “stories” is even more saying, as a lot of the chapters are spiced up by the authors own war stories to emphasized the point even more. Nice real life stories that I believe most of us working in IT can relate to.

There is no beating around the bush, but everything is straight to the point explained in a language even a manager ought to be able to understand: increased to decreased productivity. In order to further emphasize the points they are often supported by research results.

I like to think of Vertica as the best place there is to work at. But even if this is the case, I also have to accept that there are still things we can do to make it an even better place to work and it’s something we are aware of and work with on an almost daily basis. Several times reading the book I found myself having to stop every time I had read just one story. I just couldn’t concentrate on reading on, because my mind kept wondering of thinking about how we could put the concepts explained in the previous story to work at Vertica.

Obviously in a book of this age there are things that may no longer be relevant. The intercom paging system might no longer be the biggest source of disturbance. Even so, there is still room for improvement in a lot of organizations. Why is it that when my phone is ringing it has to disturb everyone else in the room? And that if I happen not to be there to pick it up, it keeps doing so every 3 seconds for half a minute? I bet everyone knew from the first ring, that someone was calling.

Although the book is targeted heavily towards software engineering projects, you'll find that much of what DeMarco and Lister say apply to projects where creativity and analytical skills are required.

As is often the case with books like this everything seem so obvious when you read it. Nonetheless, not many people follow the guidelines, which is basically why a book this age is still highly relevant. During my career I have met countless managers that could benefit hugely from reading this book (that is of course if they would follow the advice in it). Not only managers at the companies I have worked at, but also managers at companies, that have been customers at the companies I have worked at. The potential in a lot of organizations that could be emancipated just by following some of the guidelines is just mind-blowing. Not to speak of the increased employee satisfaction, ability to attract new employees etc. In continuation of this I also considered the book as the company Christmas present to customers this year.

 Reading the book gave me a lot of ideas on how to make my workplace even better. We will not be able to implement every one of these right away, but as mentioned earlier it is continuously process. I don’t think you are done with this book after just reading it once. It is definitely a book that you can take out every one or two years and reread.

Saturday, 29 December 2007 16:57:26 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |   |  Trackback
# Sunday, 28 October 2007

After a long run-up, friend, colleague, and partner at Vertica, Troels Riisbrich, is now online with his new blog, riisbrich.dk. Troels is leading the BPI team at Vertica, and if it has to do with BizTalk Server, Troels knows it. He’s the architectural master mind of several of the bigger BizTalk solutions at Vertica, and always an inspiring teammate to discuss both overall designs as well as small technical subtleties with.

This coming week Troels is attending the Microsoft SOA & Business Process Conference on the Microsoft campus in Redmond, and hopefully we will be able to follow his adventures on the blog. Other than that he will be blogging about BizTalk as well as everything else that gets him excited.

Sunday, 28 October 2007 16:24:52 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |   |  Trackback
# Wednesday, 24 October 2007

At Vertica it has been a tradition to, approximately once a year, go on a company outing. This trip is used as team building, but also to discuss issues related to our work. We talk about the past year as well as the directions for the coming year. Though the CEO do go through the past years financial results, results is not limited to finances.

We also take the opportunity to catch up on all the things that has happened the past year. A company is (or at least should be) going through a constant evolution. During your everyday work there might be a tendency to forget some of all the achievements being attained. Though everyone does their best to remember to appreciate ones colleagues, when they have outdone themselves once again, an extra opportunity to look at each other and say “Damn, we are good!” is always welcome.

This year we also had presentations from sales as well as a Project Manager. As a consultant it is always interesting to hear what is going on in the sales department. Sales people and consultants can have a strained relationship, but a lot of it also has to do with being prejudged. As is always the case with prejudices, conversation and information are the best way to overcome them. Changes are that you might even learn something from it.

As I believe is the case for pretty much all other (IT) companies, we are also continuously working on improving our process model at Vertica. Therefore we also had a Project Manager do a presentation on the latest development with this work.

Obviously we also had time for some more social related activities such as an Edinburgh city tour, a ghost walk, and a 4x4 Jeep safari in the highlands. We even went to a typical Scottish night out with dancers, back pipe players, and of course the mandatory haggis. Interestingly enough, apparently it is only tourists that do the typical Scottish night out. At least all the Scottish people were somewhere else. Nonetheless we had a good time :o)

The whole trip was thoroughly documented by camera, and if interested you can see some of the photos in the Scotland 2007 photo gallery.

Wednesday, 24 October 2007 16:15:39 (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback
# Thursday, 18 October 2007

A few of weeks ago I got back from my summer vacation. For the first time ever I have been in South America - and it was certainly not the last time. With backpacks my girlfriend and I travelled around Ecuador for three weeks.

The diversity of the country is simply amazing, and that goes for pretty much everything: people, culture, climate, and nature. Truely a fantastic place. And we didn’t even do the Galapagos Islands. Not because we didn’t want to, but because it would have added another week to the trip as well as set us back another couple of grand per person. At some point you have to stop – and it’s also a great reason to come back :o)

The main stops during the trip were Quito, Napo Wildlife Center in the Amazon jungle, Rio Bamba, Baños, Cuenca, and Montañita. From Rio Bamba we did the famous Devils Nose train ride. Unfortunately due to an accident a few months earlier, there was no riding on the roof as is normally the standard practice. None the less it was a spectacular ride down the Andes.

Traveling with two digital cameras and a girlfriend very fond of photography, we ended up with 500+ photos. Digital cameras sure is a great thing, but it certainly also generates some hours in front of the computer sorting everything when you get back. It’s a nice way to relive the holiday though.

So far all I have managed is to have a small Ecuador photo gallery uploaded that you can check out if interested.

  

Thursday, 18 October 2007 22:04:14 (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback
# Wednesday, 10 October 2007

Highly recommended by two of my favorite bloggers, Joel Spolsky and Erik Sink it was with a great deal of expectation, I started out reading this book. The book is subtitled “Over 20 Years of High-Tech Marketing Disasters”, and what can be more entertaining than reading about other people’s mistakes?

Not much, I would soon discover! In an extremely funny and lively style, the author Merrill R. Chapman, takes the reader through twelve chapters, each introduced by a nice cartoon drawing and describing a not so successful part of our proud industry’s history.

At the same time as I was rolling my eyes because of the mistakes made by managers of some of the biggest software companies in the world, I also found myself laughing out loud because of the hilariously funny descriptions of the obvious stupidity. Chapman having worked or consulted for several of the companies mentioned, enabling him spice everything up with personal anecdotes of both situations and people, just adds to the entertainment.

Several of the stories are from about the time, when I was first entering the industry. I remember many of the companies mentioned and also using their products. Companies and products that either completely or almost completely have disappeared from the public eye today.

Today the story very often is that the evil company from Redmond has used its monopoly to crush everyone else. But reading this book makes it clear how a lot of the companies went through a huge effort in order to practically obliterate themselves, and more or less serving the monopoly to Microsoft.

Why is it that today Apple has to make its living from selling iPods and not computers? And where exactly did Borland, Netscape, Novell, and WordPerfect go? Once shining stars of the software industry? These are just some of the companies that qualified for the book about stupidity. And don’t worry – obviously Microsoft also made it.

Being a marketing specialist Chapman does not just point fingers and make fun. Two further chapters titled “On Avoiding Stupidity” and “Stupid Analysis” give insight on both the main causes of failure in the software industry, as well as how the disasters in the first twelve chapters could have been avoided. Two interesting chapters, offering both detailed and easy understandable analysis, which I am sure a lot of (former) CEOs would have liked to read.

Though the title of this book may indicate that it is for the people in marketing and sales, the target group is far broader than that. It is a good read for everyone interested in the computer industry – and especially the history. As always the history is a very good way to explain why things are as they are today.

If you are interested the book has its own website where you can read more reviews. You can also read Joel Spolsky’s foreword to the first edition in his blog.

About seven years ago when everybody was having a great time riding the dot com wave, I was working as a developer at a company that truly lived up to the expectations of IT companies of that time. In the development team we had a saying that we used over and over again. It described those times, just as it describes the stories in this book:

“It’s funny ‘cause it's true!”.

Wednesday, 10 October 2007 19:07:14 (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback
# Wednesday, 03 October 2007

As mentioned some time ago in my post Training – Expense or Investment I had been setting up some In-house Commerce Server training for the eCommerce Team with former Commerce Server Product Manager Max Akbar.

Max was at the office for three days, and though expectations were extremely high, he even managed to top them. Not being a Commerce Server developed, I only sat in on the BizTalk integration part, where we got a good discussion about the Commerce Server BizTalk Adapters. As these behave quite differently from practically all other adapters, there were a lot to talk about.

The whole team where equally excited about the training, and both Søren and Brian have already posted blog entries with their experiences of the three days.

In order not for everything to be only technical, we all went out for dinner one night, as you can see from the picture below. Not only the eCommerce Team and Max, but everyone at Vertica were invited – even the Sales Director and the CEO :o)

Following this success we will definitely try to arrange more in-house training. The whole team together with a highly qualified trainer for several days is extremely valuable, both from a technical as well as a social perspective.

Currently we have started looking for someone to provide BizTalk R2 training with specific focus on the new EDI features. I already know of QuickLearn providing Deep Dive BizTalk courses, and all, but the newest member of the BPI team, have already attended their course. However, I would like some training with even more focus on the EDI features, than QuickLearn has expressed, they were able to provide. So if you happen to know someone you are more than welcome to leave a comment or send me a mail.

Wednesday, 03 October 2007 20:50:08 (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback

For some time I have been wondering what assemblies exactly are included when a MSI package is exported in BizTalk. When moving assemblies for one environment to another I had noticed, that I didn’t always get the latest version of the assembly included in the package.

For BizTalk to function properly the assemblies must be deployed to the Global Assembly Cache (GAC). This copy of the assembly is the one actually being used during execution, but apparently it wasn’t the one being included in the MSI package. However, In the BizTalk Administration Console for an application’s resources there are both a Source Location as well as a Destination Location pointing to a copy of the assemblies as well. Thus my first thought was that perhaps, it was one of these that were included in the MSI package.

To test this I tried to delete first one of them, and then the other. Either way I was still able to generate the MSI package, which meant that it were neither of these that were being used.

Increasingly puzzled I ended up turning to the good old newsgroups for some help. It took BizTalk MVP Tomas Restrepo less than 1½ hour to point me to an explanation, and apparently I was not the only one a bit puzzled by this. The explanation was another blog post by Richard Seroter titled Preventing Stale Artifacts in BizTalk Application Packages.

In here he explains what is actually going on when assemblies are deployed and how the MSI packages are generated. Interestingly and, at least to me, also quite surprising as first are, that the assemblies are added to a CAB file and stored in a table in the BizTalkMgmtDb database. For the full explanation I encourage you to read the post.

One obvious advantage of storing this information in the database is of course that you can be sure that in a multi-server environment regardless of which server you use to generate your MSI package will always be exactly the same. However, whether this is the only reason for the implementation I do not know.

Wednesday, 03 October 2007 19:23:22 (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback
# Tuesday, 02 October 2007

About one and a half year ago Vertica moved to a new office. In the very beginning the office was a single room of about 12m² in an apartment shared with another company. Being five people with laptops, as well as a couple of workstations playing the role of servers, in a room of that size was a rather cozy and intimate experience (as well as hot and at times probably also smelly). Luckily we soon took over the entire apartment giving us a lot more breathing space.

As more people joined the team and the company grew, space got more and more cramped, and eventually it was time to move to a new location. The new location was two newly renovated floors in a building right in the center of Aarhus. The main part of the two floors was open office space allowing rather custom seating.

Already before moving into an office spread between two floors, we were very conscious that though people would be divided physically the company should not be divided mentally. One of the things to ensure this was that every now and then we would change the seating. It should never become our floor vs. their floor or something like that. Also, though developers are part of a team, all team members should not necessarily sit right next to each other.

There is a little bit of fixed seating though, as the Sales Director and CEO both have “real” offices with a door that close. They simply talk too much (on the phone most of the time), so we need a way to screen them from the rest of us.

Now you may already have guessed from the title of this post, that the title of this blog was not the most future-proof choice - once again it has been time to shake things up a bit. This time we have decided to have all developers on one floor (the second) and Project Managers, the Sales Director and the CEO on the other (the third). This way we hope to have an even greater synergy between developers. A nice side effect from this, at least from a developer perspective, is that since the Project Managers also often are rather busy on the phone, this is also no longer disturbing.

I do not intend, however, to change the name of the blog, nor do I intend to hand it over to some other Hansen working of living on a third floor, so for now Hansen on Third is written by Hansen on Second.

Tuesday, 02 October 2007 21:04:49 (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback