Friday, December 28, 2007

Social Outcast

"Being a social outcast helps you stay concentrated on the really important things, like thinking and hacking." --Eric Raymond

Thursday, December 27, 2007

"Complexity kills. It sucks the life out of developers, it makes products difficult to plan, build and test, it introduces security challenges and it causes end-user and administrator frustration." --Ray Ozzie

Friday, December 21, 2007

"The quality of programmers is a decreasing function of the density of go to statements in the programs they produce." --Edsger W. Dijkstra

Thursday, December 20, 2007

"A most important, but also most elusive, aspect of any tool is its influence on the habits of those who train themselves in its use. If the tool is a programming language this influence is, whether we like it or not, an influence on our thinking habits." --Edsger Dijkstra

Wednesday, December 19, 2007

"As soon as we started programming, we found to our surprise that it wasn't as easy to get programs right as we had thought. Debugging had to be discovered. I can remember the exact instant when I realized that a large part of my life from then on was going to be spent in finding mistakes in my own programs."" --Maurice Wilkes

Tuesday, December 18, 2007

"Each pattern describes a problem which occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice." --Christopher Alexander

Monday, December 17, 2007

Egyptian Pyramid

"Most software today is very much like an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves." --Alan Kay

Thursday, December 13, 2007

"A test that reveals a bug has succeeded, not failed." --Boris Beizer

Wednesday, December 12, 2007

"Most software isn't designed. Rather, it emerges from the development team like a zombie emerging from a bubbling vat of Research and Development juice. When a discipline is hugging the ragged edge of technology, this might be expected, but most of today's software is comprised of mostly 'D' and very little 'R'." --Alan Cooper

Tuesday, December 11, 2007

"Your most unhappy customers are your greatest source of learning." --Bill Gates

Monday, December 10, 2007

"Real Programmers don't know how to cook. Grocery stores aren't open at three in the morning. Real Programmers survive on Twinkies and coffee." --Unknown

Friday, December 07, 2007

"A good programmer is someone who looks both ways before crossing a one-way street." --Doug Linder

Thursday, December 06, 2007

On Time Software

"More people have ascended bodily into heaven than have shipped great software on time." --Jim McCarthy

Wednesday, December 05, 2007

"Ugly programs are like ugly suspension bridges: they're much more liable to collapse than pretty ones, because the way humans (especially engineer-humans) perceive beauty is intimately related to our ability to process and understand complexity. A language that makes it hard to write elegant code makes it hard to write good code." --Eric S. Raymond

Tuesday, December 04, 2007

"A little known fact: the Strategy and State Patterns were twins separated at birth. As you know, the Strategy Pattern went on to create a wildly successful business around interchangeable algorithms. State, however, took the perhaps more noble path of helping objects to control their behavior by changing their internal state. He's often overheard telling his object clients, "Just repeat after me: I'm good enough, I'm smart enough, and doggonit..." --Head First Design Patterns

Monday, December 03, 2007

End of The World

"The most likely way for the world to be destroyed, most experts agree, is by accident. That's where we come in; we're computer professionals. We cause accidents." --Nathaniel Borenstein

Friday, November 30, 2007

"Any fool can write code that a computer can understand. Good programmers write code that humans can understand." --Martin Fowler

Wednesday, November 28, 2007

"How does a project get to be a year late? One day at a time." --Frederick P. Brooks

Tuesday, November 27, 2007

"Be mock'd and wonder'd at." --William Shakespeare

Monday, November 26, 2007

"Successful software always gets changed." --Frederick P. Brooks

Wednesday, November 21, 2007

"To err is human, but to really screw things up requires a computer." --Unknown

Tuesday, November 20, 2007

"I used to think real men subclassed everything. That was until I learned the power of extension at runtime, rather than at compile time. Now look at me!" --Head First Design Patterns: The Decorator Pattern

Monday, November 19, 2007

"When I am working on a problem, I never think about beauty. I think only of how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong." -R Buckminster Fuller

Friday, November 16, 2007

"Alzheimer's Law of Programming: Looking at code you wrote more than two weeks ago is like looking at code you are seeing for the first time." -Via Dan Hurvitz

Thursday, November 15, 2007

"Trying to get into the details seems to be a religious issue -- nearly everybody is convinced that every style but their own is ugly and unreadable.  Leave out the "but their own" and they're probably right…" --Jerry Coffin

Wednesday, November 14, 2007

"Just because the standard provides a cliff in front of you, you are not necessarily required to jump off it." --Norman Diamond

Tuesday, November 13, 2007

"Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris." --Larry Wall

Monday, November 12, 2007

"When someone says, 'I want a programming language in which I need only say what I want done,' give him a lollipop." --Alan Perlis

Friday, November 09, 2007

"Trying to outsmart a compiler defeats much of the purpose of using one." --Kernighan & Plauger

Thursday, November 08, 2007

"Computers are good at following instructions, but not at reading your mind." --Donald Knuth

Wednesday, November 07, 2007

"Good programmers use their brains, but good guidelines save us having to think out every case." --Francis Glassborow

Tuesday, November 06, 2007

"It is practically impossible to teach good programming style to students that have had prior exposure to Basic; as potential programmers they are mentally mutilated beyond hope of regeneration." --Edsger Dijkstra

Monday, November 05, 2007

"If cars evolved at the same rate as computers, they'd cost a quarter, run for a year on a half-gallon of gas, and crash once a day, killing everyone inside." --Unknown

Friday, November 02, 2007

"Two things are infinite: the universe and human stupidity; and I'm not sure about the universe." --Albert Einstein

Thursday, November 01, 2007

"Of course my password is the same as my pet's name. My macaw's name was Q47pY!3, but I change it every 90 days." --Unknown

Wednesday, October 31, 2007

"In My Egotistical Opinion, most people's C programs should be indented six feet downward and covered with dirt." --Blair P. Houghton

Tuesday, October 30, 2007

"Programming can be fun, so can cryptography; however they should not be combined." --Kreitzberg and Shneiderman

Monday, October 29, 2007

"You can't have great software without a great team, and most software teams behave like dysfunctional families." --Jim McCarthy

Friday, October 26, 2007

"Computer Science: solving today's problems tomorrow." --Unknown

Thursday, October 25, 2007

"XP is the answer to the question, 'How little can we do and still build great software?'" --Unknown

Wednesday, October 24, 2007

"You'll get no argument from me on the fundamental value of unit testing. Even the most trivially basic unit test, as shown in the code sample above, is a huge step up from the testing most developers perform-- which is to say, most developers don't test at all! They key in a few values at random and click a few buttons. If they don't get any unhandled exceptions, that code is ready for QA!" --Jeff Atwood

Tuesday, October 23, 2007

"If the code is poor quality, have it fixed, don't paper over the problem." --Unknown

Monday, October 22, 2007

"The software isn't finished until the last user is dead." --Unknown

Thursday, October 18, 2007

"Manual testing is immoral. Not only is it high stress, tedious, and error prone; it's just wrong to turn humans into machines." --Uncle Bob

Wednesday, October 17, 2007

"The goal of Computer Science is to build something that will last at least until we've finished building it." --Unknown

Tuesday, October 16, 2007

"All programmers are playwrights and all computers are lousy actors." --Unknown

Monday, October 15, 2007

"The bitterness of poor quality remains long after the sweetness of meeting the schedule has been forgotten." --Unknown

Thursday, October 11, 2007

Real Programmer Week: "Real Programmers don't need comments—the code is obvious." --Unknown

Wednesday, October 10, 2007

Real Programmer Week: "Real Programmers don't write specs—users should consider themselves lucky to get any programs at all, and take what they get." --Unknown

Tuesday, October 09, 2007

Real Programmer Week: "Real Programmers never work 9 to 5. If they are around at 9 AM, it's because they were up all night." --Unknown

Monday, October 08, 2007

Real Programmer Week: "Real Programmers can write five page long DO loops without getting confused." --Unknown

Thursday, October 04, 2007

McConnell week: "A brute force solution that works is better than an elegant solution that doesn't work." --Steve McConnell

Wednesday, October 03, 2007

McConnell Week: "In software, the chain isn't as strong as its weakest link; it's as weak as all the weak links multiplied together." --Steve McConnell

Tuesday, October 02, 2007

McConnell Week: "It's better to wait for a productive programmer to become available than it is to wait for the first available programmer to become productive." --Steve McConnell

Monday, October 01, 2007

McConnell Week: "Good code is its own best documentation. As you're about to add a comment, ask yourself, 'How can I improve the code so that this comment isn't needed?' Improve the code and then document it to make it even clearer." --Steve McConnell

Friday, September 28, 2007

"There comes a time in the history of any project when it becomes necessary to shoot the engineers and begin production." --Unknown

Thursday, September 27, 2007

"At the source of every error which is blamed on the computer, you will find at least two human errors, including the error of blaming it on the computer." --Unknown

Wednesday, September 26, 2007

"One of the things that tools can do is to help bad designers create ghastly designs much more quickly than they ever could in the past." --Grady Booch

Tuesday, September 25, 2007

"Why bother with subroutines when you can type fast?" --Vaughn Rokosz

Monday, September 24, 2007

"Computer geek: an asocial, malodorous, pasty-faced monomaniac with all the personality of a cheese-grater." --Jargon Files

Friday, September 21, 2007

"...the cost of adding a feature isn't just the time it takes to code it. The cost also includes the addition of an obstacle to future expansion. … The trick is to pick the features that don't fight each other."  --John Carmack

Thursday, September 20, 2007

"Mostly, when you see programmers, they aren't doing anything. One of the attractive things about programmers is that you cannot tell whether or not they are working simply by looking at them. Very often they're sitting there seemingly drinking coffee and gossiping, or just staring into space. What the programmer is trying to do is get a handle on all the individual and unrelated ideas that are scampering around in his head." --Charles M Strauss

Wednesday, September 19, 2007

"bug, n: An elusive creature living in a program that makes it incorrect. The activity of "debugging", or removing bugs from a program, ends when people get tired of doing it, not when the bugs are removed." --Datamation

Tuesday, September 18, 2007

"The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures." --Frederick P Brooks Jr

Monday, September 17, 2007

"Imitating paper on a computer screen is like tearing the wings off a 747 and using it as a bus on the highway." --Ted Nelson

Friday, September 14, 2007

"A common mistake that people make when trying to design something completely foolproof was to underestimate the ingenuity of complete fools." --Douglas Adams

Wednesday, September 12, 2007

"Design adds value faster than it adds cost." --Joel Spolsky

Tuesday, September 11, 2007

"If you cannot grok the overall structure of a program while taking a shower, you are not ready to code it." --Richard Pattis

Friday, September 07, 2007

"Much of the Web is like an anthill built by ants on LSD." --Jakob Nielsen

Thursday, September 06, 2007

"Designers must do two seemingly contradictory things at the same time: They must design for perfection, and they must design as though errors are inevitable. And they must do the second without compromising the first." --Bob Colwell

Wednesday, September 05, 2007

"It is easier to change the specification to fit the program than vice versa." --Alan Perlis

Tuesday, September 04, 2007

"It's OK to figure out murder mysteries, but you shouldn't need to figure out code. You should be able to read it." --Steve C McConnell

Thursday, August 30, 2007

"We try to solve the problem by rushing through the design process so that enough time is left at the end of the project to uncover the errors that were made because we rushed through the design process." --Glenford J. Myers

Wednesday, August 29, 2007

"Computers allow you to make more mistakes faster than any other invention in human history with the possible exception of handguns and tequila." --Mitch Ratcliffe

Tuesday, August 28, 2007

"Less than 10% of the code has to do with the ostensible purpose of the system; the rest deals with input-output, data validation, data structure maintenance, and other housekeeping." --Mary Shaw

Monday, August 27, 2007

"From a programmer's point of view, the user is a peripheral that types when you issue a read request."  -P. Williams

Friday, August 24, 2007

"Programs must be written for people to read, and only incidentally for machines to execute." --Abelson & Sussman

Thursday, August 23, 2007

"Caching hides many sins". -Steven Smith

Wednesday, August 22, 2007

"The perfect project plan is possible if one first documents a list of all the unknowns." --Bill Langley

Tuesday, August 21, 2007

"Rules of Optimization: Rule 1: Don't do it. Rule 2 (for experts only): Don't do it yet." --M.A. Jackson

Monday, August 20, 2007

"More computing sins are committed in the name of efficiency (without necessarily achieving it) than for any other single reason - including blind stupidity." --W.A. Wulf

Wednesday, August 15, 2007

"You must have the wrong version." --Unknown

Tuesday, August 14, 2007

"There must be something wrong with your data" --Unknown

Monday, August 13, 2007

"If your project doesn't work, look for the part that you didn't think was important." --Arthur Bloch

Friday, August 10, 2007

"That's the thing about people who think they hate computers. What they really hate is lousy programmers." --Larry Niven and Jerry Pournelle

Thursday, August 09, 2007

"Ninety percent of everything is crud." --Sturgeon's Revelation

Wednesday, August 08, 2007

"There are 10 kinds of people in this world....Those who understand binary and those who don't." --Unknown

Tuesday, August 07, 2007

"Unreproducible bugs are the biggest pests." --Elijah Manor

Monday, August 06, 2007

"Software programs are like humans. The difference is that when program stops responding you can always kill it with no regrets."  -Rustam M. Bunyadov

Friday, August 03, 2007

"A task always takes longer than you expect, even when you take into account Hofstadter's Law." --Hofstadter's Law

Thursday, August 02, 2007

"Any piece of software reflects the organizational structure that produced it." --Conway's Law

Wednesday, August 01, 2007

YSlow Firebug Plugin

Yahoo has released a great tool, YSlow, that integrates into Firebug and analyzes web pages to determine possible performance issues.

For more information about this great new web development tool check out its features and screenshots.
"Software gets slower faster than hardware gets faster." --Wirth's Law

Tuesday, July 31, 2007

Firefox Popup Window Resize

For some reason, some popups in Firefox have been opening with the wrong size for the content displayed and the resize feature was disabled for the windows.

After some research, I found that in Firefox you can override this behavior by changing one of the many user preferences.

To do this

  1. Type about:config in the location bar and press enter

  2. Search for the "dom.disable_window_open_feature.resizable" entry

  3. Change the boolean value from false to true


Setting this to true will prevent a window from disabling the resize feature.
"Given enough eyeballs, all bugs are shallow." --Linus's Law

Monday, July 30, 2007

"Adding manpower to a late software project makes it later." --Brook's Law

Friday, July 27, 2007

"First, solve the problem. Then, write the code." --John Johnson

Thursday, July 26, 2007

"The computers do what you tell them to do, not what you want them to do." --Alexander Atanasov

Wednesday, July 25, 2007

"If you can read this, thank a Software Developer." --Abounader Joseph

Tuesday, July 24, 2007

"We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil." --Donald Knuth

Monday, July 23, 2007

"You can't manage what you can't control, and you can't control what you don't measure."  -Tom DeMarco

Friday, July 20, 2007

"Software is a place where dreams are planted and nightmares harvested, an abstract, mystical swamp where terrible demons compete with magical panaceas, a world of werewolves and silver bullets." --Brad J. Cox

Thursday, July 19, 2007

"There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult." -- C.A.R. Hoare

Wednesday, July 18, 2007

"Measuring programming progress by lines of code is like measuring aircraft building progress by weight." --Bill Gates

Tuesday, July 17, 2007

Skinning Custom Control

I was trying to add a skin entry for a custom control that I made, but I kept getting the following error

"The control type 'ASP.controls_customerpicker_ascx' cannot be themed."

Surely I can skin my own control! After research, trial, and error I stumbled upon the solution that worked.

Adding the "[Themeable(true)]" attribute to my custom control class fixed my issue. Yippee!

"Good specifications will always improve programmer productivity far better than any programming tool or technique." -Milt Bryce

Monday, July 16, 2007

Program Definition

"program, n.: A magic spell cast over a computer allowing it to turn one's input into error messages. tr.v. To engage in a pastime similar to banging one's head against a wall, but with fewer opportunities for reward." --Unknown

Friday, July 13, 2007

"I released a piece of software once on a Friday 13th and vowed never to do it again." --Unknown

Thursday, July 12, 2007

Some people, when confronted with a problem, think "I know, I'll use  regular expressions." Now they have two problems. --Jamie Zawinski

Wednesday, July 11, 2007

"Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Programmers combine theory and practice: Nothing works and they don't know why." --Unknown

Tuesday, July 10, 2007

"One of my most productive days was throwing away 1000 lines of code." --Ken Thompson

Monday, July 09, 2007

"If engineers built buildings the way programmers wrote programs, the first woodpecker to come along would destroy civilization." --Unknown

Friday, July 06, 2007

"Imagine if every Thursday your shoes exploded if you tied them the usual way. This happens to us all the time with computers, and nobody thinks of complaining." -- Jeff Raskin

Thursday, July 05, 2007

Perfect Design

"You know you've achieved perfection in design, not when you have nothing more to add, but when you have nothing more to take away." --Antoine de Saint-Exupery, Wind, Sand and Stars

Tuesday, July 03, 2007

"Controlling complexity is the essence of computer programming." -Brian W. Kernighan

Monday, July 02, 2007

"If it's worth asking the user, it's worth the program remembering." -Alan Cooper

Friday, June 29, 2007

"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning." -Rich Cook

Thursday, June 28, 2007

"No amount of elegant programming or technology will solve a problem if it is improperly specified or understood to begin with." -Milt Bryce

Wednesday, June 27, 2007

"There is nothing more unproductive than to build something efficiently that should not have been built at all." -Milt Bryce

Tuesday, June 26, 2007

"The art of programming lies in that nether region between the hopeful wishes of an elegant architecture and the hard grindstone of technical details." -Andrew Hunt and David Thomas

Monday, June 25, 2007

Love Deadlines

"I love deadlines. I like the whooshing sound they make as they fly by." --Douglas Adams

Friday, June 22, 2007

"When I am working on a problem, I never think about beauty. I think only of how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong." --R Buckminster Fuller

Thursday, June 21, 2007

"In a room full of top software designers, if any two of them agree, that's a majority." --Bill Curtis

Wednesday, June 20, 2007

Walking on Water

"Walking on water and developing software from a specification are easy if both are frozen." --Edward V Berard

Tuesday, June 19, 2007

"If debugging is the process of removing bugs, then programming must be the process of putting them in?" --Unknown

Monday, June 18, 2007

"If the code and the comments disagree, then both are probably wrong." --Norm Schryer

Friday, June 15, 2007

"Software and cathedrals are much the same - first we build them, then we pray." --Unknown

Thursday, June 14, 2007

"Testing can only prove the presence of bugs, not their absence." --Edsger Dijkstra

Wednesday, June 13, 2007

"Any code of your own that you haven't looked at for six or more months might as well have been written by someone else." --Eagleson's law

Custom Validators for Composite Controls

I have created several custom composite controls (containing multiple input fields) and validators for our website at work.

I needed the SetFocusOnError property to work on my custom validators, but it didn't work by default. 

I started to dig through ASP.NET's JavaScript code and found that if my custom composite control was enclosed in a table tag (instead of the default div tag) that the JavaScript would search the table tag for input controls.

The following code will change the default enclosed tag from a div to a table.

public class LengthEditor : CompositeControl
{
protected override HtmlTextWriterTag TagKey
{
get { return HtmlTextWriterTag.Table; }
}
}

Tuesday, June 12, 2007

Safari on Windows

Steve Jobs just announced that Safari 3 has a Public Beta available for the Windows platform. You can grab the beta at Apple's download website.

The Safari 3 Public Beta claims that it is...

"The fastest web browser on any platform, Safari loads pages up to 2 times faster than Internet Explorer 7 and up to 1.6 times faster than Firefox 2.

And it executes JavaScript up to 2.8 times faster than Internet Explorer 7 and up to 1.6 times faster than Firefox 2."


I am interested to see how the population responds to the new Windows Safari 3 browser. I wonder what changes, if any I will need to make to my websites to support Safari 3.
"There are only two industries that refer to their customers as 'users'." --Edward Tufte

Monday, June 11, 2007

"Before software can be reusable it first has to be usable." --Ralph Johnson

Friday, June 08, 2007

"You're bound to be unhappy if you optimize everything." --Donald Knuth

Thursday, June 07, 2007

"Without requirements or design programming is the art of adding bugs to an empty text file." --Louis Srygley

Wednesday, June 06, 2007

"A program is a device used to convert data into error messages." --Unknown

Tuesday, June 05, 2007

"Beware of bugs in the above code; I have only proved it correct, not tried it." --Donald Knuth

Monday, June 04, 2007

"The trouble with programmers is that you can never tell what a programmer is doing until it's too late." --Seymour Cray

Wednesday, May 30, 2007

"Real Programmers always confuse Christmas and Halloween because Oct31 == Dec25." --Andrew Rutherford

Tuesday, May 29, 2007

"For every complex problem there is an answer that is clear, simple, and wrong." --H L Mencken

Friday, May 25, 2007

"My software never has bugs. It just develops random features." --Any Developer

Thursday, May 24, 2007

"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." --Brian W. Kernighan

Wednesday, May 23, 2007

"The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time." --Tom Cargill

Tuesday, May 22, 2007

standards, n.: The principles we use to reject other people's code.

Thursday, May 17, 2007

6 Phases of a Project

"The Six Phases of a Project: 1. Enthusiasm 2. Disillusionment 3. Panic 4. Search for the Guilty 5. Punishment of the Innocent 6. Praise for non-participants." --Unknown

Wednesday, May 16, 2007

"I haven't touched that module in weeks!" --Any Developer

Tuesday, May 15, 2007

Error Free Code

"It's hard enough to find an error in your code when you're looking for it; it's even harder when you've assumed your code is error-free." --Steve McConnell

Monday, May 14, 2007

"If you lie to the compiler, it will get its revenge." --Henry Spencer

Friday, May 11, 2007

"There is not now, and never will be, a language in which it is the least bit difficult to write bad programs." --Flon's Law

Thursday, May 10, 2007

"640 K ought to be enough for anybody." --Bill Gates, 1981

Wednesday, May 09, 2007

"You start coding. I'll go find out what they want." --Computer analyst to programmer

Tuesday, May 08, 2007

"Copy and paste is a design error." --David Parnas

Monday, May 07, 2007

"It works on my machine." --Any Developer

Friday, May 04, 2007

"Computer programmers never die... they just byte the dust." --Unknown

Thursday, May 03, 2007

"Hey! It compiles! Ship it!" --Unknown

Wednesday, May 02, 2007

Beta is Latin for "still doesn't work." --Unknown

Tuesday, May 01, 2007

"Real programmers don't document. If it was hard to write, it should be hard to understand." --Unknown

Monday, April 30, 2007

Programmer: An ingenious device that converts caffeine into code.

Friday, April 27, 2007

Picture Memory

"A picture may be worth a thousand words but it uses up a thousand times more memory!" --Unknown

Monday, April 02, 2007

Folder Names with Parentheses

At work we recently branched our code so we can work on two releases at once. For some reason the newly branched code started to behave strangely.

After I started working on the new branched code I noticed that I was no longer getting line numbers in the Error List panel from Visual Studio 2005. When multiple people are working on the same code-base its pretty hard to isolate and fix errors and warnings when you have no idea which file or line they exist. This became old quick, so I decided to try and isolate the issue. I intentionally made a compiler bug and then selectively started deleting files one by one hoping the file and line number will show for the error. I got down to only one file in the site and the situation still occurred!

For some reason I decided to copy the code and put it in another location. I was surprised when it started working correctly, but I was frustrated because I didn't know why. I got so desperate that I used Microsoft's SynchToy to synchronize my code from both folder locations. I didn't like the solution, but I was glad to have my error file and line numbers back.

It turns out that the problem was with having two parentheses in the folder name where the web project resided. The branched code we are using has two parenthesis in the name to indicate the release we are working on. To get around the issue, I just overrode my local StarTeam settings to checkout to a different folder structure and everything works fine now.

You can reference Scott's blog for more information about this Crazy Parenthesis Bug.

Monday, March 19, 2007

More Keyboard Shortcuts

A friend of mine is planning to go mouseless...

He just installed Launchy ( which I just installed and its awesome ) to help launch applications and ReSharper to help him when he develops.

Here are some other helpful c# Shortcuts you can use for developement. Another useful resource I found was a blog entry on CyberNetNews listing shortcuts for many other applications.

Personally, from my start menu I have isolated the entries that I use most often and assigned shortcut keys to them. For example, I have the Shortcut key property on the link from "Start->Programs->Mozilla Firefox->Mozilla Firefox" defined as "Ctrl + Shift + F".

If you know of any other great tools or techniques for going mouseless, please leave a comment and share it with others.

Monday, March 12, 2007

How to Run a Root Site in VS2005

One of the first things I do when installing Visual Studio 2005 is to setup my system to run off a root site with a static port instead of letting Visual Studio create an automatic web server port.

If you have Visual Studio Service Pack 1 installed then you can use the following SP1 instructions, otherwise, you can use these pre-SP1 instructions.

Friday, March 09, 2007

Debugging XSLT Files in VS 2005

One of the many features of Visual Studio that I enjoy is the ability to debug through XML/XSL transformations. This has helped me several times figure debug through complicated XSL files.

If you haven't used this feature or it sounds interesting, please see the following instructions by Microsoft.

Thursday, February 01, 2007

ASP.NET 2.0 Page LifeCycle

A while back I was looking for a detailed explanation of ASP.NET 2.0's Page LifeCycle. After a bit of searching I finally ran across an excellent chart created by Leon Andrianarivony.

His chart is the best visual depiction of ASP.NET 2.0's Page LifeCycle that I have seen yet. I'd be interested in any others you might have seen or created.

Tuesday, January 30, 2007

ASP.NET AJAX 1.0 Released

I jumped on the ASP.NET AJAX bandwagon when the Release Candidate came out. I've heard a lot about it ever since it was called 'ATLAS', but I had never played around with it until recently.

The Official 1.0 Release version came out on January 23, 2005 and the Full Source Code became available today.

Along with the framework, you can download the AJAX Control Toolkit. You can demonstrate the controls from this toolkit on their test website.

I am quite impressed at the easy, speed, stability, and breadth of the framework and controls. If you haven't played around with this yet, then you are missing out on some excitement!

Wednesday, January 17, 2007

Firebug 1.0 Beta

For those of you who use Firefox, you should check out the Firebug 1.0 beta extension! I had used the old version for quite some time, but I was blown away with the great enhancments in the 1.0 beta version.

Here are some of its features...

Here is what Rich Strahl had to say about it...
"I’ve been using Visual Studio’s JavaScript debugging most of the time, but with Firebug in this state I’ve been able to move most of my debugging – except for IE specific issues which are unfortunately quite common – into Firebug.

Highly recommended."

Friday, January 12, 2007

ASP.NET AJAX Cheet Sheets

For those of you who are using ASP.NET AJAX, Milan Negovan has created some FREE Cheat Sheets for the client JavaScript libraries.

He has compiled sheets for the Array, Boolean, Date, Error, Number, Object, and String JavaScript Base Type Extensions.

These ASP.NET AJAX cheet sheets are available on Milan Negovan's Website.

Thank you Milan, and keep up the great work!

Thursday, January 11, 2007

IE Developer Toolbar Beta 3

There is a new version of the IE Developer Toolbar from Microsoft!

"This Beta 3 version of the toolbar contains functionality and stability enhancements over previous versions, including:

  • Style Tracer: Right mouse click on a style value for an element and select Style Tracer to find the style rule that is effecting that value.

  • CSS Selector Matches: View a report of all style rules set and how many times they are used on the current page.

  • View Source: View the formatted and syntax colored source of the original page, currently rendered page, element or element with the styles that are effecting it."


To view some screenshots of these new features check out the Microsoft IE Blog.

Wednesday, January 10, 2007

Resource Refactoring Tool

By default, Visual Studio has a way to localize the text in a ASP.NET page, but there is no tool for extracting the text from the code behind or app_code files, until now!

There is a great new program, The Resource Refactoring Tool, that helps you localize your .NET applictions.

Most recently, they have added support for localizing the code behind files in a Web Applications... which is what I have been waiting for.

I installed and tested the tool and it is has been very handy.