# Sunday, January 25, 2009

BookshelfSome time ago my colleague Morten Bock did a Beer & Learn session at Vertica about jQuery. It was a very inspiring session and since I hardly ever get to code at my work anymore, but still enjoy it, I decided to start a small hobby project just to learn a little more about jQuery.

The result has now been published, and is a small (read: minor) bookshelf application equipped with book I have read, and recommend for others to read. I have previously written two book reviews on this blog - Peopleware and In Search of Stupidity - but realized that I will not have a persistence to keep writing reviews of the books I read.

Instead I will add those I feel I can recommend to my bookshelf for everyone to see. The first 10 books have already been added spanning topics from software engineering in general to Web Design and Management.

One final note before the link to the bookshelf: I do realize I am not a UX designer :o)

Now go check out the bookshelf if interested.

Sunday, January 25, 2009 1:21:13 PM (GMT Standard Time, UTC+00:00)  #    Disclaimer  |   |  Trackback
# Saturday, August 30, 2008
Ever had the need to export either all BizTalk applications or all binding files from a BizTalk Server installation? You can use this little SQL script to generate a BTSTAST script automatic this process for you.

Simply open SQL Server Management Studio, connect to your database server and open a new query window. Paste the script, hit CTRL+T to have the result output as text and F5 to run it.

Remove the lines with dashes (-) and (XX row(s) affected) and copy the remaining lines to a .bat file of your choice. Run the bat script, sit back and watch the export process :o)

DECLARE @MSIPATH VARCHAR(50);
DECLARE @BINDINGPATH VARCHAR(50);

-- Set paths for exported files
SET @MSIPATH = 'C:\Backup\' + CONVERT(VARCHAR(8), GETDATE(), 112) + '\MSI\';
SET @BINDINGPATH = 'C:\Backup\' + CONVERT(VARCHAR(8), GETDATE(), 112) + '\Bindings\';

-- Generate script for exporting MSI packages
SELECT
    'BTSTASK ExportApp -ApplicationName:"' + nvcName + '" -Package:"' + @MSIPATH + nvcName + '.msi"'
FROM
    [BizTalkMgmtDb].[dbo].[bts_application]
WHERE
    isDefault <> 1
AND
    isSystem <> 1;

-- Generate script for exporting binding files
SELECT
    'BTSTASK ExportBindings -ApplicationName:"' + nvcName + '" -Destination:"' + @BINDINGPATH + nvcName + '.xml"'
FROM
    [BizTalkMgmtDb].[dbo].[bts_application]
WHERE
    isDefault <> 1
AND
    isSystem <> 1;

SELECT 'PAUSE';


Saturday, August 30, 2008 10:07:10 AM (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback
# Sunday, April 13, 2008

Every developer knows the feeling: you get so absorbed in your work that you completely forget everything else, including time and the people around you. You have entered the flow, the zone or whatever else people like to call it, and you become one with you work. It’s a great experience and a rewarding feeling.

But then, out of nowhere, you pulled back out of flow, distracted and maybe even forced to change your focus. At a lot of companies, including Vertica, people work in an open office space. There are a lot of good things to be said about open office spaces, but it can, at the same time, also be the origin of a lot of factors and happenings that can pull you out of the flow or even completely prevent you from getting into it the first place. In this post I have put down some things I am already doing, as well as would like to do in the future, to give me and my colleagues the best conditions for getting into the flow.

The desktop - the virtual and physical

More and more programs uses different sorts of alerts to inform about new happenings. I.e. as default Outlook shows an alert whenever a new mail arrives including sender information and the first couple of line of the mail. When you send an email you cannot expect immediate response anyway, so there is really no reason for this alert as I see it. I still get the small envelope in my System tray though, but I have moved my email client to my secondary monitor, so the inconvenience is as limited as possible.

Another application very good at generating alerts is Windows Live Messenger. With a comprehensive contact list you can get a lot of "signing in"-alerts. Maybe not enough to pull you out of the flow, but annoying anyway. Luckily they are easily disabled.

As opposed to alerts that only bother the one receiving then, the phone has the ability to bother even more people, especially in open office spaces. Turning down the volume of the ring tone as much as possible helps not to disturb others to much. I also use the DND function on the phone, both when not at my desk and also when I just want to get some work done. When I am not at my desk there is not reason for my phone to bother anyone else when ringing.

I would also love to have software phones. This would remove the annoying ringing for anyone else than the person who's phone is ringing and also providing even more features helping productivity.

The Office and the Colleagues

Interruptions by colleagues is also a common way to be pulled out of the flow. It is always a thin line when you should ask for help, and when you should search for the information yourself. I recommend being very deliberate about when to contact colleagues and maybe even try to time it, so you ask questions when people are interrupted in their work anyway, maybe going to get coffee or something similar. Also it is certainly okay to say no, when asked if you have two minutes for helping someone.

If you have individual offices you would be able to close the door to signal that you would not want to be disturbed, but is it a bit more difficult with open office spaces.

I also know of a company with an open office space environment who have equipped all monitors with a small flag, that anyone can raise if the do not want to be disturbed. A simple and easy way to communicate to your colleagues that you are working and they should stay away for now. It is also said to be working quite well.

Read More

A lot of people has written about the flow and how to get into it. One place to start reading the That Voodo You Do. Also I have previously written about Peopleware that definitely also is a recommended read.

If you have initiatives that help you getting and staying in the flow feel free to drop a line in the comments.

Sunday, April 13, 2008 1:21:51 PM (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback
# Tuesday, April 08, 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, April 08, 2008 8:09:02 PM (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback
# Wednesday, January 09, 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, January 09, 2008 9:31:06 PM (GMT Standard Time, UTC+00:00)  #    Disclaimer  |   |  Trackback
# Saturday, December 29, 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, December 29, 2007 4:57:26 PM (GMT Standard Time, UTC+00:00)  #    Disclaimer  |   |  Trackback
# Sunday, October 28, 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, October 28, 2007 4:24:52 PM (GMT Standard Time, UTC+00:00)  #    Disclaimer  |   |  Trackback
# Wednesday, October 24, 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, October 24, 2007 4:15:39 PM (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback
# Thursday, October 18, 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, October 18, 2007 10:04:14 PM (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback
# Wednesday, October 10, 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, October 10, 2007 7:07:14 PM (GMT Daylight Time, UTC+01:00)  #    Disclaimer  |   |  Trackback