Skip to the content Back to Top

Some while ago, shortly after MSN/Windows Live Messenger stopped acting like an IM/chat client and more like a blinkity ad delivery platform*, I decided to look for an alternative. 

TrillianCropperCapture[39]

http://www.ceruleanstudios.com/

Trillian supports AIM, ICQ, MSN, Yahoo Messenger and IRC. It's small and fast and I used it for a year before it finally annoyed me for the last time by not remembering my window preferences. It also tended to lose my MSN password more often than I thought reasonable. Still better than MSN by a long chalk.

Pidginlogo_pidgin

http://pidgin.im/

I just switched to Pidgin this week. It supports *many* (16) protocols including MSN, Yahoo, AIM, ICQ, GoogleTalk, and others I've never heard of, plus it has a fat pigeon icon, which counts for a lot. Pidgin runs on Windows and *nix, and there is a port for OS X. It's an open source project released under the GNU General Public License, and I like to support that kind of initiative. The interface is as fresh and clean as a Spring morning.

 

* Not just the ads. The following pile of of dung is from the Windows Live Messenger home page. Make a difference by getting advertised at? Uh... no.

CropperCapture[2]

This post's categories

Quoting some comments in Jeff Atwood's "Revinventing the Clipboard" blog post:

What I dislike the most, about the clipboard, is the really bad behaviour in VS. Say you cut something, then you try to past it elsewhere but you hit the C instead of the V (without any text selected) and bravo, you've lost your clipboard content! You now have to undo 3 or 4 times to re-start the manipulation. This is anti-productive at the most.

Fabian on January 22, 2008 03:01 AM

Fabian: That one gets me too, but the good news is that you can turn off that behaviour in Visual Studio.

Go to Tools->Options...->Text Editor->All Languages->General and untick "Apply Cut Copy commands to blank lines when there is no selection"

(I guess this goes towards what Jeff was saying about software having reasonable defaults).

GrahamStw on January 22, 2008 03:10 AM

It's one of those things that I never remember how to reset so here it is. Glory Hallelujah.

And btw, using ClipX and loving it (and yes, the beta seems to work fine in Vista).

Update: the title of this post is probably misleading as it's not all the steps for using SubSonic. There's plenty of material out there already on that (for i.e. how to set your build provider for Web Site Projects, how to set your config files for class libraries or Web Application Projects, how to set up your database, etc.) - the best place to start looking for that info is www.subsonicproject.com. This post refers to how to get using the subsonic.exe from within Visual Studio to regenerate your code on demand.

I've been using SubSonic for one of my latest projects and I really like what I've seen thus far. I'll save a further review for a possible other post, but since I've just repaved my machine and I'm setting everything back up again, I had forgotten how to configure the Visual Studio IDE to easily regenerate code using SubSonic (with a Web Application Project or Class Library - not the auto build provider).

Rob Conery has a good Webcast on how to do it all (if you haven't viewed it yet, head over now and do so), but it's a little tedious to work your way through the whole Webcast in order to pick out tool setup instructions. Therefore, I figured I'd jot down how to set up SubSonic DAL generation scripts for easy generation of code in Web Application Projects or Class Libraries. In other words, instead of having to open a command prompt all the time and specify what you want generated and where etc., just create some toolbar items and/or macros to do it for you on demand right in the Visual Studio IDE.

 

Reference External Tool

  • Tools -> External Tools -> Add
  • Settings for new External Tool:
    • Title: SubSonic DAL
    • Command (to your local sonic.exe location): C:\Program Files\SubSonic\SubSonic 2.0.3\SubCommander\sonic.exe
    • Arguments (means execute the generate command to, in my case, a generated directory in my class library - in other words, where my web.config/app.config file is with all SubSonic config options set): generate /out Generated
    • Initial Directory: $(ProjectDir)
    • Use Ouput window: checked
    • Prompt for arguments: checked (optional)

      image 

 

 

Create SubSonic toolbar with SubSonic DAL button (optional)

  • Right-click anywhere on blank menu bar and select "Customize"
  • Click "New" for new toolbar and save as "SubSonic":

    image 
  • Switch to Commands tab and then select category "Tools"
  • Select External Command n where n is the position of your newly referenced SubSonic DAL tool in the Tools menu:

    image 
    In the screen shot above, it's External Command 6. On a new machine with nothing else on it, the number will be External Command 2 as there's only one other tool before it in the menu (Dotfuscator Community Edition).
  • Drag and drop External Command n to the floating SubSonic menu you had just created:

    image 
  • When you now press close on the Customize dialogue, your SubSonic menu should now reflect your tool name. In this case that would be "SubSonic DAL."
  • Drag your floating toolbar to wherever you want it on your menu bar. Now, to generate code you can click on it from the Tools dropdown menu, or directly on your menu bar. Of course, you could just go further and create a macro.
  • Note: make sure you're actually in your SubSonic project where your app.config is located when you execute the command - nothing bad will happen if you don't...it's just that nothing good (code generation) will happen either.

 

 

Create another external tool that runs the SubSonic DB versioning command (scripts schema and data for your database!)

  • Do exactly as above for the SubSonic DAL tool, but instead put in the command "version /out \DB"

 

This post's categories

Koders.com is a search engine that searches a large library of open source code. It's also a product you can purchase and point at your own codebase, but it's the easy access to all manner of reusable code, in just about any language, that has my beanie propellor whirling.

You can rather quickly find out how other developers have used method X in a given API, for instance. Seeing .NET examples in use in the wild is a much more potent educational tool than than the skeletal examples on MSDN, personally speaking.

You can also look for working examples of a concept. How have others approached solving problem Y? A browse through the relevant search results can show you real code being used in real life. Because honestly, if you are faced with a tough nut to crack, chances are someone else has already cracked it.

It gets better, because not only can you learn from your research, you can pick it up and use it wholesale. Or at the least, adapt the solution to your specific needs.

So the ability to search for code is, alone and all by itself, very useful. But you can you also browse through entire software projects! Holy crap. I spent some time just grazing:

Koders also provides a Firefox search engine plug-in, and a Visual Studio plug-in: Koders Plug-Ins. I am cozying up to both.

This post's categories

To use Notepad2 as your default notepad application, follow the instructions found at http://www.mattberther.com/?p=828. Much easier than making things work in XP.

  1. Download and extract Notepad2.
  2. Rename Notepad2.exe to notepad.exe.
  3. Find c:\windows\notepad.exe and c:\windows\system32\notepad.exe and set the owner to ‘Administrators’, and grant Administrators full control.
  4. Using Windows Explorer, drag and drop the renamed notepad2.exe to c:\windows and c:\windows\system32.
Categories

Let Us Help You!

We're Librarians - We Love to Help People