NTFS Junction Points
Charles and John are talking about junction points, which are an NTFS feature let you create directory aliases.
I’ve implemented the ideas that Charles presented to succesfully work with a project that uses an interface based plugin architecture. All projects were in the same solution in VS.NET. However, since the main application referenced the extensibility layer, but never the actual plugin itself, I was constantly having to move the plugin file over to my main application’s bin\debug folder.
Using the command junction "\main project\bin\debug" "\plugin project\bin\debug", I now always have the latest version of the particular plugin that Im working on available when I compile and debug my solution.
As John states, even though this is an NTFS feature, Windows does not ship with a tool that can create junction points, so you can use either the linkd tool from the Windows 2000 Resource Kit, or Mark Russinovich’s junction utility.
Textpattern
Textpattern public gamma 1.11 is now available.
I’ve installed this in a test environment, and so far, I have to say that this looks incredible. The whole thing is dynamic, unlike MovableType where even the smallest change to your templates takes an entire site rebuild. With Textpattern, changes are viewed instantly.
They also include a very nice web user interface (screenshot) for posting. When you are ready to publish your post, the content is automatically converted to XHTML. When you’re composing your articles you can toggle between three views of the article (plain text, XHTML, and a rendered preview).
Link management (screenshot) is also greatly simplified. You can maintain categories of links and output them at any point in your template just by using the very simple Textpattern tags (in this case, ).
Dean has implemented a very elegant CSS editor (screenshot) right into the administrative tools.
At this point, I only have a few things prohibiting me from switching this site to Textpattern:
- As of this writing, there is no tool for importing entries from MovableType into Textpattern. I have seen on their forums though, that they are working on this.
- No XML-RPC interface, as of yet. This may be possible through the API that we can see documentation on shortly.
- No pingback/trackback support. This is not really a deal killer for me though.
OmniaMea
The fine folks at JetBrains have published another EAP, this one for OmniaMea.
OmniaMea is a personal information management tool that provides one convenient environment for working with email (via an Outlook plugin), instant messages, newsgroups, bookmarks, RSS feeds, local files and contact lists. OmniaMea allows you to browse a multitude of information resources, use full-text search and organize everything according to your needs, tasks or habits.
Give this a shot and create your own private Google today. Keep in mind that this is currently under development and there is a lot more in the works for this tool.
David’s finally online
JetBrains Resharper now available
The early access build of JetBrain’s Resharper is out today. It is supposed to add advanced code editing and refactoring features for C# developers using VS.NET.
http://www.jetbrains.net/resharper
The username and password are both “eapuser”, without the quotation marks. Currently, this works only with VS.NET 2003, although subsequent builds should target VS.NET 2002 as well.
Keep in mind that this is a very early build, however, they anticipate publishing a new build every one or two weeks, so make sure to check back often.
Update: Ive made a compulsory run through this and I gotta say WOW. This is unbelievable. I cant believe how much easier this will make development. Having never used the Java IDE, this came as a total shock to my system.
A few things that I see that are missing and Im sure will be addressed in a subsequent build are:
- the lack of refactorings. Currently, only the rename refactor is supported.
- limited in the amount of predefined live templates, however, the built in ones are pretty cool CTRL-J alta converts an ArrayList to an array
Surround with is pretty cool. Highlight a section of code, and hit CTRL-ALT-J and you get a list of things you can surround that block of code with (ie: if, while, do, for, and lock).
Finding usages of a method or type is greatly simplified as well. Previously, I used CTRL-SHIFT-F (search in files) and searched for the method I wanted. However, now I just highlight the method and hit ALT-F7. A window pops up showing me all the places that the method is referenced.
Easily highlight a whole word by clicking CTRL-W. Navigate between methods in your class using ALT-UPARROW and ALT-DOWNARROW. CTRL-B goes to the declaration, CTRL-U goes to the base, and CTRL-ALT-B goes to the inheritors.
I know Ive just briefly touched on the features of this, and Im sure I’ll have plenty more to say about this fantastic tool as I continue to use it.
For now though, if you’re doing C# development with VS.NET 2003, do yourself a favor and grab this. This is way too nice to pass up.
Update: The new build (65) is now online, which contains the following changes:
- Fixed bug with loading some libraries
- Changed behaviour of code completion
- New source: #region…#endregion
- Lots of small bugs resolved
- “Introduce Variable” (CTRL-ALT-V)
MySQL Administrator
The long awaited MySQL Administrator for Linux and Microsoft Windows is now finally available.
This is provided under the GNU General Public License (GPL), provided as is without warranty. Source code is also available.
I like what I see so far… If you’re using MySQL, make sure and give this one a look. This is the nicest admin tool Ive seen for MySQL so far.
VSLive! — San Francisco
So, I’m going to be at VSLive in San Francisco on March 23rd through March 27th. Are there any other people out in the blogsphere that will be down in that area that weekend? Perhaps we can get together for a dinner or something.
Tracking down bugs
Chris Pratley has a gem of a post today discussing how Microsoft is dealing with bugs. His post is an excellent foray into why bugs are so hard to track down and the steps they are taking to resolve them.
He’s even got a wonderful counter for the often-heard argument of how open source is much more secure because so many more people look at the code.
Sizer
Ever do any work where you have to fit a specified screen width? For example, a project Im working on at work is spec’d to fit on an 800×600 browser window. The laptop I’m developing on runs at 1900×1200, so until now, there was no real easy way to validate the page layout.
I stumbled across Sizer a few days ago, and it has been a god-send.
From the Sizer website:
Sizer is a freeware utility that allows you to resize any window to an exact, predefined size. This is extremely useful when designing web pages, as it allows you to see how the page will look when viewed at a smaller size. The utility is also handy when compiling screen-shots for documentation, using Sizer allows you to easily maintain the same window size across screen grabs.
Hover your mouse over the sizing grip, right-click and pick a resolution. The default supported resolutions are 640×480, 800×600 and 1024×768. However, Sizer is configurable so that you can specify any resolution you wish in the configuration dialogs.
This is a must for any developer’s toolbox.


