June 2007 - Posts

Three Things I Learned About Software WHILE NOT in College

As per Scott's request, here are my three things…

Things I Learned about Software in College

  1. I've never been to college. Considering all the completely untrained college graduates I've worked with I don't think most colleges are teaching them much about software.

Things I Learned about Software While Not in College

  1. Quality is everything. You may think quality is something you can trade off but you're only trading off something else equally important such as reliability, performance or security.
  2. Know your operating system. You can be the most amazing C++/C#/Java/VB/Ruby/VBScript wonder child but if you don't know how your operating system works you're just flying blind.
  3. Domain-specific languages are great but... Languages like SQL and XAML are amazing at what they do but computer users generally want applications that tie a bunch of different domains together and make it appear seamless. You need some really strong glue that bonds well with all of these different domains and devices and can also talk efficiently to your operating system and runtime. C++ has always been good at this.

© 2007 Kenny Kerr

Posted by KennyKerr with 1 comment(s)

Looking Forward to Window Clippings 2.1

I haven’t been able to work on Window Clippings too much over the last month as I’ve been focusing on my day job as well as other projects such as a new column for MSDN Magazine starting next month. I am however planning the 2.1 release of Window Clippings and thought I’d quickly let you know what’s tentatively in store! As always your feedback is very much valued and helps drive the direction of this product.

This is mostly a minor release (as indicated by the version number) but there are a few new features/improvements that folks have requested. Check out the following screenshot illustrating the capture screen’s new context menu.

As you can see, I’ve added a few more convenience functions that folks have requested.

The new “Send To” submenu allows you to override the default action sequence and instead direct the captured image to a single “Send To” action. This is handy if you’re frequently needing to change the destination of your images and don’t want to reconfigure Window Clippings every time.

You should also notice the addition of “Open Storage Folder” that was previously only available from the notification icon’s context menu.

The selection mode is now persistent. So if you change the selection mode from “Select Windows” to “Crop Selection”, the next time you open the capture screen it will default to “Crop Selection”.

This release will also likely include a few more built-in add-ins. Currently I’m considering providing a built-in version of the “Add watermark” .NET add-in that I released as a sample add-in with source code. I’m also considering providing a “Send to Amazon S3” add-in that will automate the process of sending images to Amazon’s S3 storage service.

Other than those features and improvements it will include a variety of minor bug fixes and performance improvements that I have made along the way.

I look forward to hearing what you think of this upcoming release.

© 2007 Kenny Kerr

Posted by KennyKerr with 9 comment(s)
Filed under:

Notebook Needed

As some of you know, we’re moving to England at the beginning of August which leaves just 6 weeks here in Canada. I had planned on purchasing a new notebook before leaving but held off for a variety of reasons. Of course now I’m worried that I’ve waited too long. I can’t imagine being stranded in a new country without a computer – the horror!

The other challenge is that I’ve had my heart set on a ThinkPad T61. I’ve always used Dell notebooks which are OK but not great and have just heard endless praise for the T60/61 notebooks. Of course now that it comes down to ordering I’m just hearing endless horror stories about Lenovo’s order fulfillment and endless shipping delays whereas Dell generally rocks at fulfilling orders quickly and efficiently in my experience.

Anyway, I’m considering getting either the Dell Latitude D630 or the Lenovo ThinkPad T61 with as little RAM as possible and then bulk up on 4GB of RAM from a local supplier (since the vendors have this insane desire to charge over $1000 for 4GB – ridiculous).

What should I do?

© 2007 Kenny Kerr

Posted by KennyKerr with 8 comment(s)

Security: Applying Cryptography Using The CNG API In Windows Vista

My next article for MSDN Magazine is now available. Its part of the July 2007 issue of the magazine and covers the new cryptography platform introduced in Windows Vista.

Security: Applying Cryptography Using The CNG API In Windows Vista

Windows Vista introduces a new cryptography API to replace the old CryptoAPI, which has its roots in the early versions of Windows NT and Windows 95. Cryptography Next Generation (CNG) is meant to be a long-term replacement for the CryptoAPI, providing substitutes for all of the cryptographic primitives it offered. CNG supports all of the algorithms provided by the CryptoAPI, but goes much further and includes many new algorithms and a much more flexible design, providing developers with greater control over how cryptographic operations are performed and how algorithms work together to perform various operations.

Enjoy!

If you’re looking for one of my previous articles here is a complete list of them for you to browse through.

© 2007 Kenny Kerr

Posted by KennyKerr with no comments
Filed under: , , ,

Send your Window Clippings images to an FTP server

Ari Glaizel just sent me this neat add-in for Window Clippings that he created to send images to an FTP server. It is a well thought-out add-in making it immediately useful to folks that do a lot of web publishing or blogging.

The upload address indicates where the add-in will send the image and the source address is used to optionally build a URL that can then be used to reference this location via HTTP and can then be directly inserted into an HTML document or blog post.

Download sendtoftp.zip, copy the files to the directory containing WindowClippings.exe, and register the add-in on the Add-Ins tab of the Window Clippings options window. Although Ari doesn’t have a blog at the moment, I’m sure he’ll be happy to respond to any comments you leave on this blog post.

Thanks Ari!

For those folks running Vista with UAC turned off, I have added support for add-in registration for this scenario. It will be available in the 2.1 release.

© 2007 Kenny Kerr

Posted by KennyKerr with 9 comment(s)
Filed under:

Add watermarks to your Window Clippings images

I wrote this add-in last night using the .NET Framework mostly to serve as an example of how easy it is to write add-ins for Window Clippings, but also because I think it’s a useful add-in for those who like to add watermarks to their published images. So if you’re interesting in writing your own add-ins, take a look at the C# project to see what’s involved. If you’re just interested in using the add-in then here’s what you do:

Start by downloading and opening FilterWatermark.zip. Then copy Kerr.WindowClippings.FilterWatermark.dll and WindowClippings.dll to the same directory where WindowClippings.exe is located (WindowClippings.dll is used by WindowClippings.exe to register .NET add-ins).

Now open the Window Clippings Options window and select the Add-Ins tab. Click the Register Add-In button and select Kerr.WindowClippings.FilterWatermark.dll. You should see a new Add watermark add-in listed in the Filter group (Add watermark is implemented as a filter add-in).

You can now select the General tab to insert Add watermark into your action sequence:

Remember that actions are executed from top to bottom. You can also combine different filters to produce various effects.

The next step is to set your watermark preferences. Just select Add watermark and click the Settings button. The settings window initially looks like this:

 

You can then browse for an image to use and set the alignment however you wish:

Apply your changes and then create a window clipping! Here’s an example:

The code itself is straightforward. The FilterWatermark class represents the filter add-in itself, as it derives from Kerr.WindowClippings.Filter and implements the Process method. The FilterWatermarkWindow class implements the add-in’s settings window. Finally, Helpers.DrawWatermark provides the logic for drawing the watermark and is used for both the preview in the settings window as well as by the add-in itself.

The add-in could do with some work. I thought of adding an option to set the margin for the watermark, but I hope it is enough to serve as an example of writing a filter add-in and inspire you to write your own add-ins!

Go to http://www.windowclippings.com/Developers/ for more information on developing add-ins.

I will post examples of Send To and Save As add-ins soon. Stay tuned!

© 2007 Kenny Kerr

Posted by KennyKerr with 14 comment(s)
Filed under: ,
More Posts