I’ve been signed to a new contract with my current client, on a new project working on self-service grocery again. This one should carry me well into next year, but I’m always keeping my eyes open just in case.
ShareRipsaw COM Interface, First Pass
In this installment of the Ripsaw article series we’ll finally get to write some code. We’ve already gotten a pretty good idea about how we want to implement the core Ripsaw library, so now we’re going to define enough of the COM interface that we can create a simple test script that will eventually be used to exercise the library.
Continue reading ‘Ripsaw COM Interface, First Pass’ »
ShareRefining Ripsaw’s Design
In my last entry in the Ripsaw article series, I discussed some of the design goals for Ripsaw. In this article I’ll flesh out the design a little more and discuss specific implementation possibilities.
To bring you up to speed, Ripsaw is a log-viewing utility for Windows that I initially wrote about six years ago, but never released widely. I’ve decided to rewrite it and discuss each step of the rewrite here.
Continue reading ‘Refining Ripsaw’s Design’ »
Busy Until January
I’ve been assigned to a new project through the end of 2009 so I’m unavailable for now, but if I’m not picked up for an extension I’ll be looking for new projects in 2010. Take a look at my resume and let me know if I might be a good fit for any contract or consulting opportunities in your organization. I’m currently W-2 with a small consulting company, but I’m open to 1099 or corp-to-corp starting next year.
ShareDesign Goals for Ripsaw
In this installment of the Ripsaw project series I’ll sketch out some of my design goals for the new version of Ripsaw, and the rationale for those goals.
Continue reading ‘Design Goals for Ripsaw’ »
A New Article Series: Ripsaw
Several years ago I wrote a Windows application called “Ripsaw” that implemented the basic functionality of the Unix tail utility in a graphical application, with a few twists of my own. I had intended to release the application as an open-source project, and although I still use the tool quite a bit I never got around to giving it the necessary polish for a public release. I’ve only shared it with a few friends and co-workers.
I’ve just downloaded Beta 2 of Microsoft Visual Studio 2010, and I’ve decided to create a new version of Ripsaw from the ground up so that I can become familiar with the new IDE and compiler. Besides being a chance to finally get Ripsaw right, this will also be an opportunity to create a series of articles on how I develop a complete application, from the first ideas through design, implementation, testing, and release. I’ll walk you through all of the design decisions and trade-offs, the problems I run into along the way, and the development methodologies I use.
I would really appreciate your feedback, ideas, suggestions, and criticisms. This is going to be fun!
ShareDoes Your Company Need a Consultant?
My current project is coming to an end, and although I’m looking at a couple of new projects to pick up, I thought it might be prudent to update my resume. If my skills look like they might be a match for a need you have in your company, please let me know!
ShareThe Hitchhiker’s Guide to UI Design
Larry Osterman talked about Windows 7 user interface changes in a post today, and it generated a minor comment storm, in which I participated. He talked about some buttons that used to be obvious buttons in Windows Vista, but which were made “flat” in Windows 7 so that they’re no longer obviously buttons until the user hovers over them with a mouse.
I gave my opinion a couple of times, coming down on the side of non-flat buttons. The whole discussion, though, reminded me of a couple of passages from The Hitchhiker’s Guide To the Galaxy that describe the design of the ship The Heart of Gold.
The cabin was mostly white, oblong, and about the size of a smallish restaurant. In fact it wasn’t perfectly oblong: the two long walls were raked round in a slight parallel curve, and all the angles and corners of the cabin were contoured in excitingly chunky shapes. The truth of the matter is that it would have been a great deal simpler and more practical to build the cabin as an ordinary three-dimensional oblong room, but then the designers would have got miserable.
That sounds like everything I dislike about UI design these days, particularly in Flash and Silverlight apps where designers feel compelled to recreate UI widgets that behave almost, but not quite, entirely unlike standard widgets.
A loud clatter of gunk music flooded through the Heart of Gold cabin as Zaphod searched the sub-etha radio wave bands for news of himself. The machine was rather difficult to operate. For years radios had been operated by means of pressing buttons and turning dials; then as the technology became more sophisticated the controls were made touch-sensitive — you merely had to brush the panels with your fingers; now all you had to do was wave your hand in the general direction of the components and hope. It saved a lot of muscular expenditure, of course, but meant that you had to sit infuriatingly still if you wanted to keep listening to the same program.
That sounds a lot like where flat buttons are headed. In fact, it sounds strikingly like an iPod.
ShareAn API is Forever
An API is an interface. Those of you that have worked with COM already know that once an interface is published, it can never, ever change. Ever. Not until the end of time. The reason is that some bit of code somewhere is going to be using that interface, and if you change it you’ve just broken that code. Of course, not changing an interface also means not deleting a portion of it.
Continue reading ‘An API is Forever’ »
ShareUseless Gadget Features
I guess I would never make it as the CEO of some electronic gadget company, because I would never dream of loading down every gadget with a web browser and a picture viewer. I love my Nintendo Wii; I’ve spent hours playing Mario Kart or bowling with the kids. I even got Wii Fit, though I use the Balance Board more for Shaun White Snowboarding (and get a better workout doing it). But I’ve never looked at pictures on my Wii. I’ve only browsed the web just to see what it looks like, and whether a couple of my sites were readable (not very).
So, I’m dying to know why gadget companies feel that it’s necessary to load down every product with useless stuff like this? If a professional geek like me doesn’t even bother to use these features, then who is using them?
I’d much rather see gadget makers spend some time and resources on the core functionality of their gadgets (do you hear me, phone people?) than on browsing, social networking, or photo viewing.
Share