Happy Programmers

According to the Secret Society of Happiness (http://www.sohp.com/) today, August 8th is National Happiness Day. It got me to wondering, as a developer or IT professional, what makes you happy?

For me it can be the little things. When I added a third monitor to my setup at work, I was happy.

When I get “that” problematic section of code working, I’m happy.

When I learn about a new .Net class and learn it’s in’s and outs, I’m happy.

When I get to learn some new tech, such as SOA (Service Oriented Architecture), I’m happy.

When I get to hang out with other geeks and get into really arcane conversations about the nuances of some technology, I’m happy.

When I’m driving down the road, with no accidents to block my way, listening to a new podcast, I’m happy.

Most of all though, is when I meet with a user to find his needs, then in a few hours can come up with a solution for him. To hear the user say “wow, I spent hours gathering that data every week, now I can get it in a matter of minutes. You’ve saved me hours of work.” That makes me happy.

What makes you happy?

As a side note, I also have to wonder, if it’s a “secret” society, why do they have a website?

Announcing the SOA Society

I’m pleased to announce the formation of Alabama’s newest user group, the SOA Society. The group will focus on Service Oriented Architecture, and educate its members on all aspects of SOA including design, implementation, development, maintenance.

In addition the group will cover the business side of SOA. We seek to educate enterprise leaders on topics like return on investment, creating business cases for implementing SOA, and encouraging a culture of designing systems from the outside in.

Our audience will be broad, we want to appeal to everyone from developers to IT managers to business owners, evangelizing the benefits of SOA as not only an internal productivity tool but a sales tool for interacting with your customers.

We plan to hold our first member drive at Birmingham Alabama’s TechBirmingham (http://www.techbirmingham.com/) TechMixer in October 2007. Monthly meetings will then begin the same month, in the Birmingham area.

But you don’t have to wait! If you would like to get involved with the formation of the new group, or simply want to be added to the e-mail list shoot me an e-mail at arcanecode at gmail dot com. This is a community based group, and we welcome the involvement of the community!

Just Code It

Jeff Atwood has an interesting post on his Coding Horror site entitled “Yes, But What Have You *Done*?” ( http://www.codinghorror.com/blog/archives/000809.html ). Programmers, Jeff says tend to be natural introverts, and left to their natural devices will migrate toward head down coding.

“But it is possible to go too far in the other direction, too. It’s much rarer, because it bucks the natural introversion of most software developers, but it does happen. Take me, for example. Sometimes I worry that I spend more time talking about programming than actually programming.”

I know how Jeff feels. In my role as a development lead I spend a lot of time in meetings, or talking to other developers about their projects. As a result I wind up spending a lot of time late at night doing coding, just to keep up with the latest and greatest techniques.

The need for code experience directly resulted in one of my “How To Be A Better Developer…” ( https://arcanecode.wordpress.com/2007/07/13/being-a-better-developer-in-6-months/ ) pledges.

I will work all the code samples in the book. Reading is one thing, but doing is even better. Personally, I find I get a better understanding when I actually type in the code samples and run them. And not just run what’s in the book, but tweak it, experiment with it.

I’m amazed at the number of times I meet some guy who comes across as a self proclaimed expert on a subject. When I quiz the person or try to ask tough questions, it turns out said individual read a book, but never actually wrote any code. Book learning is great, I certainly buy enough books every year to know, but there’s no substitute for doing.

When learning something new, start with the samples. Work it, tweak it, understand it. Then, if appropriate use it on your project at work. If it’s not appropriate, find someone else’s project that it would be a good fit for. Offer to work a few hours unpaid overtime and contribute some code to their project. They’d probably be grateful for the help, and might repay with some pointers and critiques.

Can’t find an appropriate project at work? There are thousands of open source projects out there, find one where you could contribute. Or look around the community; find a charity that needs some programming done.

It’s easier than you think to find some real world places to apply your coding skills. So what are you waiting for, just code it!

Happy Birthday

Hard as it is to believe, today, August 5th 2007, marks one year since I started the blog. I admit the first few months were a bit slow when it came to posts, but it’s really taken off since late October of 2006.

The biggest surprise to me is how much I’ve enjoyed blogging. Everyday I try to learn something new. Being able to take what I’ve learned and talk about it on the blog only reinforces my understanding and, I hope, adds some value to you the reader.

I do admit that I tend to be all over the place with my content. I guess it’s a reflection of both my interests and what I have to deal with on a daily basis. As a development team lead, I lend a helping hand to everyone’s projects. So on any given day I’m jumping back and forth between ASP.Net, WinForms, Windows Services, Web Services, AJAX, C#, VB, Java, SQL Server Data Warehousing tools (SSIS, Reporting Services), and Oracle, to name a few.

I think though that even if work didn’t require the broad range it did, I’d probably still be working in all of it. I find it all fascinating, AJAX, WPF, WCF, Linux, Virtualization, SOA, there just doesn’t seem to be enough hours in the day to keep track of it all. There’s so much cool technology out there I feel like the proverbial kid in a candy store.

Let me close by saying thanks. Thanks to all of you who visited, sent e-mails, and posted comments. It’s been a great year and I look forward to many more.

Robert / Arcane Code

Design From The Outside In – Establishing a New SOA Focused User Group

For those in the Birmingham, Alabama area, some colleagues and I are in the process of establishing a new user group. This group will focus on Service Oriented Architecture – SOA. While we plan to cover all aspects, from the top level design down to the nitty gritty details, our main focus will be in the architecture area.

If you have an interest in SOA, experience with it, are passionate about it, or just want to learn more we’d love to get your feedback. We hope to finalize a group name, establish meeting locations and dates, and begin getting programs lined up in the very near future.

For more info just e-mail me, arcanecode at gmail dot com.

The UI of the Future

At yesterdays IPSA meeting (http://ipsaonline.org) our local MVP Todd Miranda (http://www.nxtdimension.com/blog/) gave a great presentation on XAML. My coworker Bin and I both felt it was an hour of our time well invested. I don’t know of many other ways we could have learned as much with the same investment of our time.

Coincidentally just yesterday I was in the book store and picked up a book on AJAX (Introduction AJAX for ASP.Net by Dino Esposito). Not too long ago we rolled out the AJAX for ASP.Net libraries on all of our ASP.Net servers, and I’ve wanted to dig into it.

It got me to thinking about user interfaces and the technology we used to create them. Not too long ago it was all text based. Just recently we showed a young collegue and old DOS based application still in use. Her reaction was “Did people actually used to use that?”

Windows made it better, with a standard set of controls that we could easily drop onto our forms. As Todd pointed out in his presentation today though, any attempt to change the basic appearance of these items could take thousands of lines of code.

With the introduction of XAML, I firmly believe we are on the verge of a new revolution in user interface design. It seems to have been a bit slow to start, but all it will take is that one “killer app” done in XAML to rock the boat. The recent introduction of Silverlight (formerly WPF/E) and it’s use of XAML will only serve to increase it’s popularity.

So where will we be in 10 years? I think under the covers compilers will be generating a lot of AJAX code, but I’m not so sure that we’ll be coding a lot of Javascript to deal with it. I feel a lot will be handled for you.

Of the two, right now I’d say XAML will be the more predominant player. I think the code generation tools will improve, but I feel a good, basic understanding of what’s going on with XAML will be crucial to every developer.

DVD Burning Under Vista: Grab & Burn

As much as I’ve enjoyed Vista, the one area I haven’t enjoyed is the DVD burning capabilities. They require an amount of empty disk space equal to one DVD. Usually by the point I need to burn a DVD it’s because my drive is full! Further, it’s slow, and not real friendly. As such I began a quest for an app that would let me burn DVDs / CDs under Vista, and was inexpensive. After a lot of searching I found just the tool.


Grab & Burn from RocketDivision ( http://www.rocketdivision.com/download_grabandburn.html ) has flavors for both Linux and Windows. It uses a wizard interface to step you through all of the various tasks. You can create an ISO, or burn a disk from an ISO, or take files and burn directly to disk without going through the ISO step. It also doesn’t require you have a lot of empty disk space, a critical thing for someone like me who often fills his drive up before he realizes it.

In addition to the file burning abilities Grab & Burn also has some interesting copy abilities. It will do a standard disc copy, a handy feature. When I burn my photos to a disc, I always burn two copies, one for my wife and one to leave at work as an “off site backup”. Family members also wind up getting copies at some point.

It also has the ability to convert 8.5 gig DVDs down to 4 gig ones by removing things like menus and extras. It also says it can master new DVDs out of your videos and the like.

To be honest I have not yet tried these last two features, I’ve been thrilled with the basic capabilities of being able to create data disks so quickly and easily.

Best of all, RocketDivision is giving the software for free, so the price is perfect. It’s easy to install, light weight, and fast. Even if you are already using another product consider downloading and checking it out. I’ve used it on both XP and Vista so far with great success.