Launchy

August 11, 2007

Recently I started playing with an application called Launchy. The idea behind Launchy is to allow the computer user to accomplish more things without taking their hands off the keyboard. From a usability and efficiency standpoint this makes a lot of sense. Frankly the more you can accomplish without a mouse the better. The problem with this idea though is the complexity of setting up new functionality and training yourself to use it. Since I just installed it a couple of days ago I can’t really talk about my experience but I hope to soon. In the mean time give Launchy a try and let me know what you think.

http://www.launchy.net

When you’re stuck…

August 11, 2007

As a programmer adding features to someone else’s code you are likely to run into problems. This happened to me this week when I was tasked with a feature request for a mobile device application. The idea seemed simple enough and had I written the program the data I needed would most likely have been readily available. That was not the case, every time I made an assumption on how the code was written I ended up being wrong.  After learning how the code worked I began working on my solution, adding properties and functions as I felt necessary. Finally I thought I had it finished so I started testing it. To my dismay, but not surprise, my new feature didn’t work right. It started by displaying the correct data but during a use-case test it didn’t update properly. Turns out that even more assumptions I had made were wrong. I know… what a shock! At this point I was frustrated so I tool a break and emailed a friend. When I got back to the code a much simpler and actually functional solution dawned on me. What’s worse it only took me 10 minutes to make the necessary changes instead of the 2 days my first solution took.

So what am I trying to convey here you ask? Take breaks–get your mind out of the problem and let your sub-conscience grind on it for a while. Everyone has something else they can be working on if they can’t take an actual break. Don’t get attached to your first idea, at least for me it’s usually wrong. Leave yourself open to other possibilities and try to follow the KISS (keep it simple, stupid) method. This will help make the job of future coders easier. Also, try not to blame the previous programmers who worked on the code. Complaining about the old code doesn’t solve the problem just wastes time that could be used fixing it. We all write bad code at some point in our career and be assured that someone will be cursing your handiwork maybe even be you.

I found this podcast on iTunes a couple of weeks ago. I’ve always had an affinity for Irish music so I had to check it out.

The host, Marc Gunn, does a good job of conveying the necessary information and keeping the show interesting while not overshadowing the music. He plays a mix of instrumental and vocal tracks keeping a good steady pace throughout the show.

I’ve checked out a lot of podcasts and this one is easily in my top 5!

So give it a look, I doubt you’ll be disappointed.

http://www.celticmusicpodcast.com/

Royale Noir: this theme turns your task bar dark gray, it’s pretty cool you should check it out! This is something else I run on all of my computers.

http://www.istartedsomething.com/20061029/royale-noir/

There’s a similar XP task bar theme released to coincide with the Zune, it’s gray also but I haven’t tried it yet. Look it up on Google if you are interested. A search for Royale Noir might turn it up, that’s how I found it.

A coworker pointed me to this powertoy recently. I’ve been using it for about two weeks now and I love it. It’s much easier to read text on my computer now. I’ve installed it on every computer I use. Trust me, it’s a small file and you won’t be disappointed.

http://www.microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx

Beginning to play with AJAX

January 22, 2007

A couple of weekends back I started toying around with AJAX. I’ve heard about it and read about it but didn’t really have an idea what it actually was. Frankly, I still don’t understand it well enough to start imagining possible ways I can use it. That’s okay though since I have no use for it now anyway. What I’ve learned so far is AJAX is best suited for WebApps that need to process data or talk to a database and the transaction will take a while. This is not something I have a use for personally and it’s not all that useful at work either. I really like the premise but I need to search harder for some good examples so I can really wrap my brain around it.

I did find two very basic pages that were very useful for creating my test pages. I will try to link those when I have some time to find them.

My thoughts on SharePoint

December 23, 2006

I’ve spent the last month or so playing with Windows SharePoint Services. In total I’ve probably spent 20-30 hours working with it so I’m by no means an expert. SharePoint is a fascinating product allowing organizations to easily setup intranet or web based portals. You can setup sites for departments, teams, projects, basically whatever you want. There are quite a few templates that have different features based on the purpose of the template. Some of the available features include Blogs, Wikis, document libraries, to-do lists, calendars, surveys, etc. Most of this is fairly simple to setup but the management interface is not intuitive.

I’ve also spent a decent amount of time researching SharePoint on the web but I have yet to find a good resource for beginners. Most of the documentation assumes a certain baseline of knowledge but doesn’t describe what that baseline is. I would appreciate it if someone would leave a comment with good resources if they know of any.

My company is planning to convert our entire intranet into SharePoint with the hopes that the features and interface will make things easier and more productive for each department. From what little I’ve learned so far I think there is some potential of this actually happening. However, there will be some resistance from the employees that have been there longer. We are hoping that each department will be able to take ownership of their intranet presence so IS can worry about other things.

So far I like SharePoint but I will need to go to a class or get a good book to build my baseline knowledge. My IS department will probably get pretty good use of the document library, wiki, and site building features. Most likely we will create a new site for each project we have so other departments can see our progress and have easy access to our requirements documents. Since we are still just starting this process I’m not entirely sure where we will end up but I like where we are heading right now.

Back to Earth

October 3, 2006

I had one of those moments today where you find out you did something really stupid and it causes other people problems. I’ve had a few little projects flip-flopping in importance at work. A couple of report families, some software maintenance tasks, and a big project. Last week we finally deployed all of my reports, I’ve been working on these off-and-on since May. My reports were not very complex but having to start and stop working on them so often left me unorganized for my deployment. Along with these reports I had to setup several new tables, stored procedures, functions, and a trigger in our production database. I have a decent amount of experience with tables, a little with stored procedures, even less with user-defined functions and none with triggers.

Today I found out that my trigger was keeping our sales and marketing department from making some necessary changes to some of the products we sell. Oops! One of their guys contacted our IS Help-desk who forwarded the bug on to our senior-most developer. I doubt it took him long to track down but it turned out that I had been trying to access a non-existent temp. table in my trigger. I remember thinking I was surprised that my trigger parsed because I was unsure about my use of that temp. table, but I forgot about it soon after. Once he fixed my trigger sales and marketing were able to finish their work and move on.

So now that I’ve seen what I did wrong and the havoc it caused I feel nice and stupid now. Of course this feeling will fade soon, well, as long as those coworkers of mine that read this blog don’t tease me about it, but it still sucks.

CSS and Web Design

September 14, 2006

For starters I am a programmer and not a designer. However, as a programmer in a company that doesn’t employ a designer for internal projects I end up being a designer too. Because of these two facts I end up doing things I’m not trained for nor am I even good at.

At work I’ve been creating an ASP.NET application that will be accessed through a current production app built in Delphi. This is all fine and dandy but I’ve never developed a web application. Well that’s a lie, I’ve done an extremely basic Wiki type page for personal use, but that is it. So I’ve created my business objects (classes) and I have them attached to my ASPX pages. My data is showing up great, my buttons work, my links work, but my CSS is fighting me tooth and nail. I’ve worked with CSS a lot and I have a basic understanding of it, but I waste so much time just trying to get tables, divs, spans, etc formatted correctly. I would love to find an application that would help alleviate some of this frustration, so if you know of one please let me know!

Granted I am complaining here but CSS is really a great technology and I wouldn’t give it up unless there was something better. Conceptually CSS isn’t even difficult but when you start dealing with n-degree nested elements things get tricky!

My only suggestion is use a good and specific naming convention through your entire website. This includes pages, style-sheets, scripts, etc., this will help you keep everything straight. If necessary refactor early and often, this will save time later when you have hundreds of lines of HTML and style settings.

To finish I conquered all of my formatting problems today, but now I have to deal with usability on some complex database user interface elements, in a limited resolution (1024×768). Granted that’s pretty big but my useful space is much smaller since the browser control is buried in a pane on another application.