Politics, Weather, Photography, and the Dog
Monday 21 April 2014

I don't know how this little snippet of code got into a project at work (despite the temptation to look at the file's history):

Search = Search.Replace("Search…", "");

// Perform a search that depends on the Search member being an empty string
// Display the list of things you find

First, I can't fathom why the original developer made the search method dependent on a hard-coded string.

Second, as soon as the first user hit this code after switching her user profile to display Japanese, the search failed.

The fix was crushingly simple:

var localizedSearchPrompt = GetLocalizedString("SearchPrompt");
Search = Search.Replace(localizedSearchPrompt, string.Empty);

(The GetLocalizedString method in this sample is actually a stub for the code that gets the string in the current user's language.)

The moral of the story is: avoid hard-coded strings, just like you've been taught since you started programming.

Monday 21 April 2014 15:31:25 CDT (UTC-05:00)  |  | Software | Work#
Search
On this page....
Head-scratching software bug
Countdowns
The Daily Parker +3234d 22h 28m
To London 23d 23h 51m
Parker's 9th birthday 266d 14h 46m
My next birthday 347d 18h 51m
Categories
Aviation (329) Baseball (110) Best Bars (6) Biking (44) Chicago (880) Cubs (197) Duke (132) Geography (324) Higher Ground (5) Jokes (282) Kitchen Sink (631) London (45) Parker (188) Daily (204) Photography (140) Politics (302) US (1073) World (251) Raleigh (20) Readings (8) Religion (64) San Francisco (86) Software (198) Blogs (72) Business (224) Cloud (89) Cool links (131) Security (98) Travel (189) Weather (682) Astronomy (79) Windows Azure (59) Work (48) Writing (8)
Links
Archive
<September 2014>
SunMonTueWedThuFriSat
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011
Full archive
Blogroll
About
David Braverman and Parker
David Braverman is a software developer in Chicago, and the creator of Weather Now. Parker is the most adorable dog on the planet, 80% of the time.
Legal
All content Copyright ©2014 David Braverman.
Creative Commons License
The Daily Parker by David Braverman is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 United States License, excluding photographs, which may not be republished unless otherwise noted.
Admin Login
Sign In
Blog Stats
Total Posts: 4475
This Year: 373
This Month: 28
This Week: 0
Comments: 0