General Tips

Bookmarking for e-reading devices(Kindle and IPad)

Our family has Kindle and IPad, and periodically I had to use one or another. Normally I prefer IPad, but Kindle has 2 advantages - on a light sun it’s much easy to read Kindle screen, and it also have free free wireless internet(but browser is quite limitted),when for my IPad wi-fi is required. A few monthes ago I’ve wrote a post about Kindle and ability to transfer articles using Instapaper add-on http://www.wordcycler.com/h... . I beleive that it’s the most convinient way to pass html files...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Put reusable code into libraries to share between projects

I’ve recently read the post The Mooney Project » Reusable Code Is Bad. Also I disagree with the title of the post, most of the issues in the text are valid and important. Mike Mooney is mostly talking of creating customizable applications, that have hundreds of configuration settings. Most close to my opinion is a comment from Geoff H Design libraries for reuse, glue code to bind together, and logic code to call libraries through the glue. When I am writing an individual method, I am asking myself,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Copy HTML documents to Kindle DX

I’ve tried to work out, is it good to use email@free.kindle.com to convert and send documents to Kindle DX. Amazon description is not very clear, and it’s not obvious, that DX doesn’t support WiFi. Finally I understood, that sending to email@free.kindle.com just sends the email to your email address attempting to convert attachments to azw fromat. You can then transfer the document to your Kindle through the USB cable. Keep in mind that IE support to send html page in email body, but not directly...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Search systems on desktop/enterprise level

I've put together a few links regarding search systems on desktop/enterprise level Best Desktop Search Software – Reviews and Comparison Enterprise Desktop Search Tools Matrix Desktop Search Tools Matrix Search Appliance Comparison Matrix http://desktop.google.com/f...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Search engine optimization Links

Below there are a few links, that I used for my Search engine optimization research for PrintPagesOnline site. : http://websearch.about.com/... Keyword Selection Guidelines Where To Use Keywords Google Search Engine Optimization http://websearch.about.com/... http://en.wikipedia.org/wik... http://www.google.com/suppo... And more technical links: URL Rewriting Using...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Do not check-in DEBUG specific code.

We are using .Net Remoting to interact beteeen client and back end server. I needed to call a method from services class. For debugging purposes I decided to create the class directly. It was easier to debug without starting extra back-end process. The code was like the following: IMyServices services = (IMyServices)RemotingHelper... #if DEBUG services = new MyServices(); #endif // Process the task services.ProcessItems(Items... During the development I checked...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Use HashSet instead of "seen" Hashtable.

In our code (originally created in .Net 1.1) there are a few examples of "seen" Hashtable pattern Hashtable seen = new Hashtable(); for (int i = 0; i < nCount; i++) { if (seen[key] == null) { //Do the changes seen.Add(key, key); } } It's better to use type-safe HashSet: HashSet<string> seen = new HashSet<string>(); for (int i = 0; i < nCount; i++) { if (!seen.Contains(key)) { //Do the changes seen.Add(key); } }...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Don't Repeat Yourself(DRY principle) when modifying existing function

If there is an existing non-trivial function and you need to change it , do NOT copy and paste it , but modify to satisfy new requirements. You may be need to split a big function into small ones and call them in different order or with different parameters. Often you need just to add extra parameter to the function and have if-else branches depending on a new parameter. In some cases new change is actually a fix of the problem, that applicable to all usages of the function. Remember that "Copy and...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Code reviews and coding recommendations

We don't have code reviews, but sometimes I have to tell the team quite obvious coding recommendations. There are a few examples: 1. We should do the check if array element is available before access it: E.g. BAD: string departureCity = Flight[0].StartPoint; GOOD: if (Flight.Rows.Count <= 0) { WarningMessageEvent.Raise("... <= 0"); return; } string departureCity = Flight[0].StartPoint; 2. Keep separate functionality in small functions, rather than add morre code to existing functions,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Developers should avoid smart-quotes in Word

We had a Word document, describing steps, based on MSDN instructions Use the Windows Workflow Tracking Service I desided to create batch file createWorkflowTrackingDB.bat to create Database: @echo Change name of Database server if required @echo press control-Z to stop batch @pause sqlcmd -S localhost -E -Q "create database WorkflowTracking" c: cd "C:\WINDOWS\Microsoft.NET\F... Workflow Foundation\SQL\EN" sqlcmd -S localhost -E -d WorkflowTracking -i Tracking_Schema.sql sqlcmd -S...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

«February»
SunMonTueWedThuFriSat
2930311234
567891011
12131415161718
19202122232425
26272829123
45678910