Saturday, October 18, 2008

Amusing Welcome Message in Windows Live Messenger

Amusing Welcome Message in Windows Live Messenger

Today I accidentally observed an amusing message like the below in Windows Live Messenger. It read as follows:

Welcome to Offline Instant Messaging!

Instant Messaging is almost used synonymously with online communication right? Offline messages is a failback feature which should chip-in only when the contact appears offline. Hence I feel that the word combination as 'Offline Instant Messaging' seems to be a little humorous paradoxical set.





What do you feel?

EasyTerm -- Cool Telnet Utility for Windows

EasyTerm -- Cool Telnet Utility for Windows

Many a times we would like to see if a particular network service is responding on a particular port and the handy tool that is available on Windows is telnet. Older Windows brought up a UI but which frequently used to hang whilst negotiating the network connection. Nowadays, Windows opens up a commandline telnet utility.

I just recalled about a cool telnet tool called EasyTerm which has a friendly UI with support for lot of features like the following:

  1. Remembers the entries
  2. DEC VT 100 Emulation
  3. Session Logging
  4. Clipboard Support
  5. Ability to print current display

ImageForge -- An Elegant MSPaint Replacer

ImageForge -- An Elegant MSPaint Replacer

How many times have you got irritated by the limitations of Microsoft Paint, the default little paint tool that ships with Window. At least two issues irritate me:

  1. It does not save the last used path.
  2. Save As GIF is not implemented properly and the image clarity collapses.

I just came across a freeware tool called ImageForge. Although it is a teaser product for its pro version, it does have good features for us to go for it:

Website: ImageForge

Features:

  1. Direct scanner support
  2. More Zoom Levels
  3. Powerful Image Rotation
  4. Ability to author AVI animations

I have just enumerated the common features required. For more details check out the website.

IE Copy Shortcut is driving me crazy ...

IE Copy Shortcut is driving me crazy ...

Whenever an email address with mailto: protocol is encountered, Mozilla FireFox automatically presents a link called 'Copy Email Address' and it just copies the email address into the system clipboard without mailto: and any other issues. But with Internet Explorer, the only option left around is 'Copy Shortcut' and it would include mailto:. Any mailclient does not accept this string literal and throws error.

Would Internet Explorer future versions address this anomaly?

GIMP -- Free Image Manipulation Tool

GIMP -- Free Image Manipulation Tool

We have been discussing about Irfanview sometime back. I just came across another similar tool called GIMP with much more enhanced features called Gimp. This is a freeware tool under GNU license. I am sharing with you a few thoughts about this tool.

Website: GIMP Website

Features:

  1. Flexible and Friendly UI
  2. Free Software
  3. Digital Enhancement of Images
  4. Distortion Correction
  5. Download sized around 15 mega bytes

Fortop Album Creator

Fortop Album Creator

A picture is worth thousand words. And a photo of a rare memory event is so very precious. We really need a good utility tool that can help us manage such treasured assets. Whilst researching on Fortop Products, I came across this tool called ForTop Album Creator.

Website: Fortop Album Creator

Features:

  1. Available in Free and as well Full Version
  2. Flexible Managing of Photos and their attributes
  3. Good Organizing of Folders into different categories
  4. Ability to publish to different websites.

Check it out for yourself.

Fortop SWF Resource Extractor

Fortop SWF Resource Extractor

Whilst trying out Fortop FLV Player, I found out a sister-product by Fortop which is also offered for free. This is called SWF Resources Extractor. It helps you to retrieve the audio and images embedded within the flash file.

Website: Fortop SWF Resources Extractor

Features:

  1. Smaller download footprint of around 1.5 MB
  2. Just pull your SWF into the software. It would display the resources which you can drag and drop to your desired location in your Windows Explorer.

Check it out for yourself.

Fortop Free FLV Player

Fortop Free FLV Player

Adding to the list of free FLV Players that we have been discussing of late, is Fortop Free FLV Player. I just thought I would write a couple of words on this software also for the benefit of everyone.

Website: Fortop Free FLV Player

Features:

  1. Just about half a MB download footprint (506 K)
  2. No complicated setup. You can just run the EXE and it plays.
  3. Support for diversified codecs
  4. It also supports extracting the audio portion of the FLV as MP3 format.
  5. FREE

Check it out for yourself.

Swiff -- A Free Standalone Flash Player

Swiff -- A Free Standalone Flash Player

Whenever you get a SWF file, currently the only way of playing them are the following:

  1. Write a quick HTML code to embed the SWF and play within the web browser. The HTML is required so that you view the SWF in correct dimensions without distortions.
  2. Drag and drop it into your favorite web browser but there might be little distortion since the SWF is stretched to full browser window.

I remember that Adobe was distributing a standalone version of Flash Player but currently I am not able to locate it. Besides more, the download footprint of Adobe products and the hunger for memory by Adobe family of products makes me to stay away from it. I have already moved to FoxIT PDF Reader. Here is a quick review about Swiff, which is a standalone flash player.

Website: Swiff Flash Player

Features:

  1. Player Seekbar
  2. OpenGL Hardware Acceleration
  3. Easy display of movie properties
  4. Small download footprint without complicated registry setup and complex DLLs.

Check it out for yourself.

Free Moyea FLV Player for Windows PC

Free Moyea FLV Player for Windows PC

We have been discussing about quite a number of desktop FLV players. A few of them for your quick review are:

  1. Wimpy Player

I just came across one more good FLV Player from Moyea (home of FLV Binder) and would like share a few words about it here.

Website: http://www.flvsoft.com/flv_player/feature

Features:

  1. Play support for online and local FLVs
  2. Supports different FLV file types
  3. Supports 0.5x, 1x, 2x and Full Screen
  4. Manages Audio Distortions and ensures high quality playback
  5. Playlists and Favorites support
  6. Friendly UI

Check it out for yourself

Free FLV Binder

Free FLV Binder

Sometime back we have been discussing about MP3 Multiplexer. A few readers were asking me if I can try researching and getting some tool which could support FLV files in the similar way. I just thought of sharing the good news that I have found out a cool tool which takes as input more number of FLV files and outputs a single FLV file which is a combination of all inputs. Here is a brief review on the same.

Website: FLV Binder

Features:

  1. A friendlier commandline tool and hence you can expect a superfast performance.
  2. Very small download footprint of 100 KB alone. Your system download manager can just like that grab it like anything.

Check it out fo yourself

Hi-Q Recorder -- An elegant sound recording solution for Windows

Hi-Q Recorder -- An elegant sound recording solution for Windows

I have been trying to get some recording using the default Windows recorder but it seems to be severely handicapped at least with respect to the following:

  1. Media format that it can save
  2. Duration of recording
  3. UI and Customization Flexibility

If you get onto your favorite search engine, you would just get only shareware making you shell out heavy bucks for bulky software and at times ending up sending invites to spyware in the system. I just came across a cute and little software called Hi-Q Recorder which comes with both free and premium versions. The free version could cater to our most usage demands at least with respect to sound format (MP3) and a friendly UI. I just thought I would write a brief review on the tool for the benefit of other readers:

Website: Hi-Q Recorder -- An elegant sound recording solution for Windows

Features:

  1. Available in Free and Premium Versions. Free supports MP3 while premium supports many different formats also along with enhanced quality of recording.
  2. Realtime Recording of Streaming Audio, Internet Radio, WebCasts etc.
  3. Customize your MP3 bit rate easily.
  4. Automatic Timestamp Naming of the file

Check it out for yourself

UltiDev Cassini -- A Convincing Cute Web Server for inspiring ASP.NET Development

UltiDev Cassini -- A Convincing Cute Web Server for inspiring ASP.NET Development

I just came across a cute web browser called UltiDev Cassini, which provides a quick and easy way to build redistributable ASP.NET applications without any dependency on IIS Web Server. Unlike IIS and other web server solutions, this is very compact with smaller download footprint and runtime memory demands. I just thought I would write a brief and little review for the benefit of other ASP.NET web developer fraternity.

  1. Can run as Windows Service and hence would not clutter your System Tray with unnecessary icons
  2. Friendly and flexible UI
  3. Supports multiple versions of ASP.NET

This serves as a great boon for Windows XP Home users since IIS does not install over there. Check it out for yourself to appreciate its greatness and reap the rewarding benefits and bountiful grace of this elegant cute compact little web server

Wednesday, October 15, 2008

Environment.ExitCode -- Just not any value any more

Environment.ExitCode -- Just not any value any more

Whenever we write a quick console application in C#, we may just use Environment.Exit to come out of the application. But how many of us religiously follow what exit code to give to the method as parameter other than just feed in either 0 or 1. I just thought of sharing with you the exit code article in C/C++ which everyone of us should start religiously following to to make the code more disciplined, standardized and maintainable: Exit Codes with Special Meanings

Keep your code neat and clean ...

Keep your code neat and clean ...

The responsibility of a developer does not end by just unit testing the application and throwing it away. He has to ensure that the application performs at a superior pace and exceeds user expectations in every possible way. Towards this, I would say, the following minimum steps are required:

  1. During code maintenance, always run tools like FxCop to ensure that stale and junk entries are not inadvertently crept in.
  2. Run a step-by-step code review and have peer code review process chipped in so that the quality of the code output is upheld at the highest level.
A laxity in this would mean a slow leeching or deterioration of code quality and reduction in the maintainability of the code.

Tuesday, October 14, 2008

Bad Bad IE! No donuts for you!!

Bad Bad IE! No donuts for you!!

In reasons more than one, I feel that Internet Explorer is no longer a trusted web browser in my desktop. At least the following reasons I see and prefer Mozilla Firefox strongly. I am not offending other software but the quality of the web browser is fast deteriorating.

  1. Sometimes after typing a long long post when you submit, just to present that weird 'Action Canceled' page, it just forgets the form posting. When you reload the page, the website would say there is no contents submitted and we have to fill the form again. Interestingly, when you hit the back button, you would only be presented with 'Page Expired'.

    At least today, the sluggish slow Internet Connection made me to retype a blog post two times. And FireFox, automatically reposts after a confirmation.
  2. Internet Explorer supports ActiveX and sometimes when malicious websites are able to implant malicious software, you can not confidently navigate to bank and other important websites.
Internet Explorer 8 seems to be promising but it is still in beta. Let us wait and see how it is going to turn up!

Thursday, October 09, 2008

CTRL+TAB Enhancement for FireFox

CTRL+TAB Enhancement for FireFox

I just came across a cool addon for FireFox which is called CTRL+TAB. You can check out the homepage of this tool here. I just thought I would give a brief review of the tool here for the benefit of other readers:

  1. Support for Tab Listings across FireFox instances
  2. Preview of the Tab content
  3. Tabs are picked for the sequence in the order of Most Recently Visited.
  4. More enhanced and granular tab control
  5. Free Software
  6. Supports upto FF 3.0

OpenItOnline -- FF AddOn empowering it to manage Office Documents

OpenItOnline -- FF AddOn empowering it to manage Office Documents

I just came across an impressive FireFox AddOn called 'OpenItOnline'. The purpose of this addon is to achieve opening of office documents in FireFox without needing to download to the local system and the play around locally thus inviting the downside of bandwidth usage and virus infections.

A brief review of this tool is below:

  1. Supports FF upto 3.0
  2. Free to use
  3. Avoids the necessity of complicated software install and thus license and other issues
  4. Manages Office Documents (OpenOffice and Word Types) and Images
  5. Colloborates with Google Docs, Zoho and ThinkFree
  6. Now it also seems to support GoogleApps

I just thought I would share the same with other readers so that they can empower their FireFox with this good addon.

Internet Explorer Vs FireFox -- A quick Web Surfer's Review

Internet Explorer Vs FireFox -- A quick Web Surfer's Review

I just thought I would share a few points that I came across with the latest versions of Internet Explorer and FireFox. When I say latest versions, I am using the RTM and not the BETA products for consideration.

  1. Both the web browsers support tabbed browsing. But when you right click and choose 'Open in New Tab', IE squeezes the new tab adjacent to the same tab whilst FireFox creates the tab at the end of the tab panel.
  2. When I keep using CTRL+F4 to close all the tabs, FF ignores the key when only one tab is open. However, IE mimics the key as ALT+F4 for the single tab and closes the window itself.
  3. IE is rather sluggish to start when it has a lot of toolbars installed and you can observe a lot of screen jumps before we actually can type in the content/address bar into the web browser. FF is rather more responsive in this approach.
  4. When tabs crash the browser, FF gives an option to restore the tabs on next start whereas this crash recovery is mysteriously missing in Internet Explorer.
  5. When attemtping to close the browser with multiple tabs, FF additionally gives an option to restore the tabs on next startup as part of the confirmation window. This feature is absent in Internet Explorer.
  6. Developer Aides:
    1. Internet Explorer Developer Toolbar for Internet Explorer
    2. FireBug for FireFox
  7. Html Rich Text Area normally works like a charm in Internet Explorer but FireFox shortcuts and configuring them is little involved process.
  8. Updates are simpler and faster with FireFox but by virtue of complex setup of Internet Explorer, it is rather an involved process.
  9. Support Channels:
    1. Internet Explorer Newsgroup as part of Microsoft Communities
    2. FireFox Forums

Zoho Project -- Online Project Management Suite

Zoho Project -- Online Project Management Suite

I just thought of writing a small review on Zoho Project, which strives to support one project for free in the free version and more projects as per plan purchased for higher versions. At least for startup and small companies, freelancers this would be a great boon. Here goes a brief review on what Zoho Project strives to achieve.

  1. The standard single signon of Zoho enables use of Zoho Project also
  2. The Free Plan entitles you to manage one project over its complete lifecycle. The plans only limit the number of projects but does not seem to limit any features in it whatsoever.
  3. Granular Management of Tasks in the Project
    1. It supports grouping up of related tasks into a tasklist to track deadlines
  4. Flexible Project Document Management
    1. Upload and maintain documents along with the project
    2. Edit documents in hosted sister services like Zoho Writer and other office productivity suites from Zoho
    3. Supports versioning of documents
    4. Tag support for document to facilitate faster searching and retrieval at a later point of time
  5. Time Tracking
    1. Flexible and clearer time tracking enabled for all team members in the project
    2. Timesheet and billing can be linked to Zoho Invoice
  6. Reports using Gantt Chart to assess progress of the project
  7. Notifications of deadlines by email
  8. Support for archival of older projects
  9. Web-based management of the entire project

Review of Webmail from Zoho Office Productivity Suite

Review of Webmail from Zoho Office Productivity Suite

Zoho has launched a free unlimited storage email service recently which can be accessed from here. Just thought I would write a brief review on the webservice for the benefit of other readers. I have this review in quick bullet points for the easy reading and convenient comprehension by everyone.
  1. The standard Zoho Single Signon for other Zoho Applications could be used for Zoho Mail also. But the first time, the email specific configuration needs to be submitted.
  2. It supports both Folders and Label Views to categorize emails
  3. Zoho Mail is powered by a good and aggressive spam filters to keep the mailbox clean
  4. Zoho Mail is supported by a good round-the-clock forum over here.
  5. Zoho Mail claims to even support personalized sub domains. However, I have not tried this in depth.
  6. Friendly views for emails at least to support the following:
    1. All Mails
    2. Unread
    3. Archive
    4. Flagged
  7. Compose Screen allows to set the following in a simpler way:
    1. Request Read Reciepts
    2. Toggle Mail Priority
    3. Simpler way to set encoding
    4. Support for a larger set of encoding
    5. Flexible Rich Text Editor
  8. Support for POP3 Accounts to be fetched in just one click.

Free Web Application Vulnerability Scanner from Acunetix

Free Web Application Vulnerability Scanner from Acunetix

I came across a tool called 'Acunetix Web Vulnerability Scanner' recently whilst searching for something. I really feel that every web developer should have a copy of at least the freeware to run their website/application through it before giving it to the customer. Today's websites are exposed to a lot of attacks from hackers. A few of the more common ways include Cross Site Scripting, SQL Injection etc. Careless development and callous configuration of web server might seriously jeopardize the security of the website. In these circumstances, the tools like those from Acunetix lends a great helping hand in pin-pointing at the exact problem.

  1. Free download is available
  2. Smaller download and memory footprint
  3. Easier to use since it allows you to browse the application first while it records and then replays back.
  4. Checks against SQL Injection and Cross Site Scripting
  5. Inspects coding horrors that lead to Cross Site Scripting

I just thought I would share this review with other peer web developers so that everyone can grab a copy of this tool to strenghten their web applications' fortresses.

Compact Coding should not hamper readability

Compact Coding should not hamper readability

One of the most important coding practice that programmers believe is to have the conditions compacted to prevent a larger amount of code block on a particular condition. For example,

if (condition)
//do something
else if (condition)
// do something
else if (condition)
// do (something)
else if (condition)
// do something
else
// do something.

This is the startup style of writing the logic. There are two other ways of writing the same block.

  1. Ternary Operator: We can have nested ?: to bring in these conditions and these would get squeezed into a single line. For the compiler, it is fine as long as the parenthesis is properly closed and the syntax is adhered to. For when it comes to debugging an issue or maintaining this code at a later point of time, even for the same developer down the line after six months, it would really be a severe nightmare.
  2. Switch Case:

    switch (condition)
    {
    case expr1:
    //do something
    break;
    case expr2:
    //do something
    break;
    case expr3:
    //do something
    break;
    case expr4:
    //do something
    break;
    default:
    break;
    }

    I would say switch-case is more cleaner in the following perspectives:
    1. The condition is just evaluated once and the individual expressions are just matched later.
    2. The code flow is quickly comprehendable by any one at a later point of time.

The art of coding is to get the thing done not only correctly but also in a clear unambigous terms.

Wednesday, October 08, 2008

Free Online Color Picker

Free Online Color Picker

For webmasters on the move, updating and customizing their web pages with respect to fancy things like color is little difficult. They need to have all related tools in their laptop which occupies a lot of space. I just came across a free service from YellowPipe which strives to address this requirement.

Webservice: Yellowpipe Free Online Color Convertor

Features:

  1. Free Service
  2. Online Hosted Service and hence no software to download and install
  3. Native Color Palette to chose colors from
  4. Brief note on Dithering and other display concepts

Free Online Robots.Txt Generator

Free Online Robots.Txt Generator

For many amateur and startup webmasters configuring robots.txt is a little tedious task. Robots.txt is a simple plain vanilla text file in the root directory of a website to allow/deny web crawlers to particular locations of the website.

For a complete comprehensive discussion of robots.txt, check out Web Robots.txt here. I just came across a free tool which supports online generation of robots.txt

Webservice: Yellowpipe Robots Txt Generator

Features:

  1. Free
  2. Online hosted webservice
  3. Supports 'Deny All'
  4. Supports Configuration of Specific Folders
  5. Supports Configuration of Compiled List of Robots

Quick HTML Embedding for JavaScript

Quick HTML Embedding for JavaScript

There are cases in our web applications where we would be needing to open a window in JavaScript and stream out contents dynamically from within JavaScript. This becomes tedious with escape/unescape of quotes/delimiters etc. The process become intensively tedious if the document to be written significantly large.

I just came across a free online HTML convertor webservice which addresses this need.

Webservice: Yellowpipe HTML Convertor

Features:

  1. Free
  2. Online and hence anywhere to use service
  3. Supports conversion of free form HTML to
    1. JavaScript
    2. ASP
    3. PHP
  4. Quick Copy of Generated Content to System Clipboard

I hope this would be of tremendous importance to web application developers in enhancing their development efforts.

Free Online Meta Tag Generator

Free Online Meta Tag Generator

Meta tags have been traditionally the established method for communicating the products and services to the web users through the various crawlers and search engines. Writing an effective meta tag is really a great art. There are specialized consultants who also charge hefty fee for meta tags and SEOs. For the benefit of startup and small companies, I would like to share a free online meta tag generator service.

Web Service: Yellow pipe Meta Tag Generator

Features:

  1. Free service
  2. Online Service and hence can be used anytime and anywhere
  3. Supported Fields:
    1. Author
    2. Copyright
    3. Site Owner
    4. Creator
    5. Publisher
    6. Date of Latest Publication
    7. Rating
    8. Robot Support
    9. Robot Revisit Request
    10. Keywords
    11. Description

I hope this would be a great tool for many people to enhance their pages for free with best meta tag choices.

Free SEO Suite

Free SEO Suite

Search engine optimization (SEO) has been a promising business for many enterprises. Ensuring the appearance of the products for an enterprise on major internet crawlers has been an ever-growing need for enterprises. For the benefit of startup companes, YellowPipe seemed to have brought a Free Search Engine Optimization Suite.

Webservice: Free SEO Suite

Advantages:

1) Free
2) Detailed Ranking Reports from Alexa, Google etc.
3) Server Discovery
4) Count of backlinks
5) Count of indexed pages
6) Critical keywords
7) Meta Keywords and Description

Free Online LinkChecker from YellowPipe

Free Online LinkChecker from YellowPipe

For any webmasters having broken links on the webpage is really a nightmare. It would really bring bad impression in the minds of visitors. Towards this, there are quite a free services that offer checking of websites for any broken links. But a number of them are chargeable and not free. I just came across a free service towards this need and just thought I would share the same with other readers too.

Webservice: Yellowpipe Online Link Checker

Advantages:

  1. Comprehensive online link checker
  2. Online service. Hence checks for any Internet website.
  3. Free for all

Let us try to make the best use of the websites and support YellowPipe by encouraging them.

Lynx Online View of Web Pages

Lynx Online View of Web Pages

A few minutes back, we saw the advantages of Lynx Web Browser. But for people are too busy to download and configure the browser, there is an easy option. They can check out Online Viewer similar to Lynx Text Browser.

Website: Yellowpipe Lynx Viewer

Advantages:

  1. No download required
  2. Visualization of web pages as it appears in Lynx Browser (without images and scripting)
  3. Free for all

Lynx -- Text Only Browser

Lynx -- Text Only Browser

We are in broadband age. But that does not mean we should pack our pages too much with fancy unwarranted graphics which only serve to distract the users from focussing on the actual content of the page and also wasting both server and browser bandwidth. For these reasons and to assess our website's layout capability without any images, we have a text browser called Lynx. There had been a time when Lynx was a very famous browser for colleges and even some ISPs were giving Text Browsing accounts in India.

Just thought I would share the download URL of Lynx for the benefit of other readers. You can download a copy of Lynx from here.

Advantages of Lynx Browser:

  1. Valuable save of time
  2. Focus on content
  3. Saving of Internet Bandwidth
    1. For web surfers
    2. For web users

I hope this would be a very useful tool for everyone.

Quick Download of YouTube Videos as MP3 Songs

Quick Download of YouTube Videos as MP3 Songs

When there is a good video in YouTube and you would like to have a copy of the same archived for your offline viewing purposes, it is better if you could grab a MP3 version if you are not so particular with the video also. This is particularly applicable when the video is just a kind of static pictures and it is the music or song which is more important. I came across an online web service which facilitates this quick and easy download of YouTube Videos into MP3 songs.

Website: http://www.flvto.com/

Features:

  1. Convert by URL
  2. File Upload and Convert

This is a great service by FlvTo but before making use of the same be sure to comply with the following three things:

  1. Adhere to FlvTerms of Service
  2. Adhere to the Copyright Policies of YouTube
  3. Adhere to YouTube Terms of Service

Search Web 10 Years Back

Search Web 10 Years Back

On the occasion of 10th birthday of Google, they have brought back the index page that they had ten years back. Now you can search and get the results that were there about ten years back in 2001. Check out Google in 2001 here. Some of the features of this search are:

  1. A quick link to the Internet Archive page from the search results
  2. A comprehensive Search 2001 FAQ.

Powerful and Flexible Open Source Proxy Solution

Powerful and Flexible Open Source Proxy Solution

Be it a small organization or a gigantic large enterprise, it is the responsibility of the management and the helpdesk to ensure that their network is secure and employee productivity is upheld the highest level without being carried over by mundane distractions of the Internet. There has been a number of Web Filtering and caching solutions like Barracuda Web Filter, WebSense etc. but for a typical small organization, these are prohibitively costly. I just thought I would review a still powerful but opensource proxy solution called Squid which helps address all of these needs.

  1. Powerful web caching model
  2. Enhanced Server Acceleration
  3. Powerful Access Controls
    1. Granular Bandwidth Download Control
    2. Access Restrictions to various websites
  4. Free Opensource under GNU GPL
  5. Availability: Windows and Unix

You can grab a copy of Squid and learn more about it from here.

'Not all codepaths return a value' -- Good Catch Error of C# Compiler

'Not all codepaths return a value' -- Good Catch Error of C# Compiler

In most programming languages particularly when writing functions that involve complex conditions to evaluate and iterations to process, it is really a nightmare when we need to exit from the function from more than one place. Unless the function has a return type of void, it is going to be a pain for the caller of the function since if the exit in the callee is not accompanied by a proper return value, there is going to be an undefined (aka) NULL for the caller which it needs to handle.

I just wanted to share that in C#, the compiler catches this potential issue and flags it as an error 'Not all codepaths return a value'. Now you know and you can be sure to visit and review all exits from the function and ensure that the return is accompanied by a proper value to the return variable.

Stricter and Sharper CSharp with Switch Statements :: A Cool Feature for Other Language Compilers to Emulate

Stricter and Sharper CSharp with Switch Statements :: A Cool Feature for Other Language Compilers to Emulate

The most cute and lovely feature of C#, in contrast with other languages is the mandate that it places on 'break' statement in switch constructs. This saves great time and effort in inadvertant overlook of break statement and control executing all the case blocks. Now, if there is no break construct between two case blocks, compiler would shout an error like 'Control can not fall through between constructs'. One exception being, you can have blank case statements.

case 1:
case 2:
case 3:

can be deemed valid. However, if there is even one line of executable statement in any case, it has to be either followed by a break. If you really want the next case to be executed, you can try using a goto statement.

Just thought I would share this feature with other readers and I hope other languages also would try emulating this in their compilers.

Cool Java Feature Desired in Other Languages

Cool Java Feature Desired in Other Languages

In the Java language exception handling, I like the way the compiler demands you to handle exceptions. You have two choices:

  1. Handle the exception yourself
  2. Declare that the method/class would throw the exception at the declaration level.

This way, I feel the code would be more disciplined. With our C#, the runtime takes the onus on the pretext of giving flexibility to the developer. But the downside is that lazy developers leave some conditions unhandled and as a result, the users would be caught unaware with dreaded yellow screens and error pages. Just thought, if there is a way at least if application frameworks could bring in this feature or if future versions of C# compiler try including a support for this throws construct.

Elegant 'MailTo' Replacement

Elegant 'MailTo' Replacement

MailTo tags have become a bane to all websites since spammers run spam robots which crawl the web to capture the email addresses, add to their catalogs and send spams to them. I just thought of sharing with others a simple JavaScript function which would trigger open the default email client instead of having mailto: embedded in the HTML Page.

Just have the following function included in your webpage

<script language='Javascript'>
function WriteMailTo(user,domain)
{
location.replace ('mailto:'+user+'@'+domain);
}
</script>

And whereever you want to invoke the mailto, just called WriteMailTo('user','example.com') and the user's default email client should be launching (if configured) without any hassles.

The Most Quickest and Easiest Way to generate random numbers with JavaScript

The Most Quickest and Easiest Way to generate random numbers with JavaScript

When we use XmlHttp Calls and dynamic images we should ensure that the web browser does not cache the resources. Towards this, we resort to having the URLs to be unique. To achieve this end, we need to have some kind of random content to be appended to the URL to make the browser feel that the particular resource URL is unique.

This is achieved in JavaScript by a quick and simple call to Math.Random(); method.

<Script>
alert (Math.Random());
</Script>

Keep executing the above function continously. At least to a significant extent, you should be getting unique numbers each time and this number you can try appending as a querystring in the URL to make it unique.

An effective way to Null-And-Void Browser Back Button Effect

An effective way to Null-And-Void Browser Back Button Effect

Handling browser back buttons is always been a great nightmare for web developer fraternity worldwide. But a little fiddling into JavaScript, can get one a great asset that helps one to tide over this issue. The location object of JavaScript has a method called replace which takes a URL as a parameter. When invoked, it replaces the current history entry with the new one and hence the browser back button item would actually contain the new URL.

Example:

1) You are currently in http://www.yourwebsite.com/test.html .
2) In window.onLoad, call
location.replace("test2.html")

The web browser would move into test2.html however, the back button would no longer contain an entry for test.html. You can inspect the contents of history in back button by pulling the small arrow in the browser back button.

Tuesday, October 07, 2008

Graceful Presentation of Web Pages in Different Screen Resolutions

Graceful Presentation of Web Pages in Different Screen Resolutions

The greatest problem that confronts any webmaster is that his website should be able to render in a diversity of web browsers with plethora of screen resolutions. There are plenty ways of having our web pages complying to the different resolutions by way of CSS. But there are occasions, when our application develops an enhanced level of affinity to a particular resolution say 1024x764. In those cases, we are pressed into a situation of detecting the resolution of the user and advising him that our application is geared to support only a specific resolution.

How-To Detect Resolution in Javascript?

There is a simpler way to detect screen resolution in JavaScript.

<Script Language='JavaScript'>
alert ("Your screen dimensions are " + screen.availWidth + " and " + screen.availHeight);
</Script>

Based upon the values returned by availWidth and availHeight, you can do further comparisons and alert the user accordingly.

Detect Silverlight Availability in the Web Browser with a simple JavaScript

Detect Silverlight Availability in the Web Browser with a simple JavaScript

Silverlight is fast getting popular but when we rollout our website with Silverlight features, we should ensure that our users are informe gracefully if they don't have Silverlight installed. Fortunately, the core silverlight functionality is given by Microsoft as a simple JavaScript library. We just need to refer the silverlight.js and then call a simple property. If it returns true, we know that Silverlight is installed on the web browser.

1) Get Silverlight.js from here and refer it from your webpage after duly publishing it to your web page.
2) <Script Language="JavaScript">
if (Silverlight.isInstalled)
alert ("Congrats. Your web browser is enabled with Silverlight Runtime");
</Script>

The most simplest way of detecting 'Cookies Enabled' with a User's Web Browser

The most simplest way of detecting 'Cookies Enabled' with a User's Web Browser

The cookies are the most tastiest and most desired snacks for everyone. Even on the information highway, cookies are the most used to fill the gap of stateless HTTP. However, due to privacy and security reasons, many users may still opt for disabling the cookies. When we have our application constrained in such a way that cookie support is mandatory, we need to ensure that we seamlessly detect support of cookie in the web browser and alert user accordingly.

Fortunately, with JavaScript, a simple function call is enough to detect and tell whether cookie support is enabled or not.

<Script Language="JavaScript">
if (navigator.cookieEnabled)
alert ("Your web browser has cookies enabled");
else
alert ("Oops. Your web browser seems to be refusing cookies");
</Script>

It is that simple as saying 1,2, 3 right?

Debug.WriteLine to the rescue of 'e is not declared but not used ...'

Debug.WriteLine to the rescue of 'e is not declared but not used ...'

While using C# as our prime programming language and with try catch statement, we often end up having a compiler warning like the exception variable is declared but not used. Having a compiler warning is like dangerous since we saw sometime back that we should treat compiler warnings as errors as a good programming practice. But in this case, to handle this elegantly, we can make use of System.Diagnostics namespace which has a class called Debug

try
{
//Your code block ...
}
catch (ApplicationException ee)
{
Debug.WriteLine (ee.Message);
}

By default, Debug.WriteLine is wired to your output window of Visual Studio IDE and hence this would also be easing your debugging effort. I hear that a few would be thinking that we can use catch without the parenthesis. I strongly discourage this practice since during debugging and if you are to examine the exception, this becomes a little trickier.

Easy and Flexible Hexadecimal Conversion in JavaScript

Easy and Flexible Hexadecimal Conversion in JavaScript

Recently, I came across someone asking about converting a number to its hexadecimal equivalent using JavaScript. I just thought of sharing what I helped them with other readers since it involves a very simple function toString() in JavaScript but lesser known to all.

The following simple code snippet demonstrates the ease of conversion of decimal to hexadecimal in JavaScript:

<script language='Javascript'>
var intSrc = 25;
alert (intSrc.toString(16));
</script>

Other conversions:
  1. toString(2) establishes decimal to binary conversion
  2. toString(8) achieves decimal to octal conversion

The Ternary Operator in VB

The Ternary Operator in VB

Similar to C# and JavaScript, we can actually have the powerful ternary operator in VB also. The ternary operator is an elegant way of replacing multi-line if else elseif statement blocks. For example in JavaScript

if (blnIsTrueFalse)
t = 'true'
else
t = 'false'

can be compressed as

t = (blnIsTrueFalse)?'true':'false'.

Quite interestingly there is a lesser known function in VB called IIF which supports this too. The syntax of the function is

IIF(expression, truepart, falsepart).

Unfortunately, VBScript does not support this feature and hence we may need to simulate the IIF function manually by wrapping the if then elseif block using a custom function.

Scripted Input Form in WebPages

Scripted Input Form in WebPages

I just came across a query in a forum where a user was asking about getting input from the user through a built messagebox like InputBox in VB. A few replies I observed were negative.. I just thought of sharing this with other readers that JavaScript does support something similar to InputBox in VB. It is called 'prompt' function.

Example:

<Script Language='JavaScript'>
var strUserName = prompt("What is your name?", "Internet User");
</Script>

This puts up a dialog for the user with the question 'What is your name' and the textbox is prefilled with the default value 'Internet User'. The user can edit the value and click OK. If the user presses CANCEL or hits ESCAPE button, a NULL is returned to the caller.

Warning: Web browser would warn and stop the script with a popdown information bar on encountering a scripted input and a user-level confirmation is required when this control is used on a webpage.

Monday, October 06, 2008

Visual Studio Spell Checker AddIn

Visual Studio Spell Checker AddIn

Broken code irritates and intimidates the compiler. Similarly broken languages irritates us. When a developer writes a code with variable names and comments having a very substandard language, people who get to see the code and maintain it get disturbed very deeply.

I just thought I would share a quick and easy spell checker addin that could help us tide over this menace:

Software: StudioSpell
Vendor: http://www.keyoti.com/products/studiospell/

Features:

  1. Quick Summary Screen
  2. Prechecks the files before running through any documents.
  3. Checks the API documentation
  4. Checks even the string literals with C# or Javascript
  5. Hyperlink URLs are Ignored
  6. Duplicate Word warning
  7. Customizable

The software is not free but it is really a very useful value addition for any development environment.

Visual Studio way of reminding you to complete sections of code ...

Visual Studio way of reminding you to complete sections of code ...

Sometimes in a hurry we might have given a sample implementation or a temporary workaround to a problem in the code and would be planning a full-fledged implementation at a later date. But in a complex and busy schedules we would normally forget it.

To avoid those cases, Visual Studio lends a great helping hand by way of TODO tokens. We can simply have a //TODO comment and the Visual Studio TaskList can help us to review the list of TODOs in our project at a later point of time.

This way, we can ensure that the code does not get left with assumptions and hardcodes for a longer period and such syndrome are addressed on priority as we get time.

JavaScript -- The Definitive Guide (A Quick Review)

JavaScript -- The Definitive Guide (A Quick Review)

Webpages are growing to be more interactive in every form and feature. To enable this requirement, JavaScript is the most essential form of interactivity that any developer can think upon. For those beginners and advance programmers alike, having a good handy JavaScript reference for a quick lookup is normally a great boon. I just thought I would share a book which fills this gap.

JavaScript -- The Definitive Guide by David Flanagan (Oreilly Publishers)

The book is really impressive and innovative in bringing any one to levels and then enhancing their standards since it has a defined approach mentioned in the Table of Contents:

  1. General Introduction to the Language like constructs, loops etc.
  2. Interoperability with Web Browsers
  3. Utility functions
    1. Page Validation
    2. DHTML Effects
    3. Data Persistence using Cookies
  4. Introduction to AJAX
  5. Client Side Graphics using SVG, CSS and VML
  6. Interoperability with other technologies like Flash and ActiveX

The book has a simple language with which it progresses and hence makes the developer feel comfortable in going through the same.

You can simply get pages of the book for preview from Google Books. Once you are satisfied, grab a copy of the book from either Amazon.com or your local bookshop.

Quick Tip to workaround Ad Signatures in Mail To Blogger

Quick Tip to workaround Ad Signatures in Mail To Blogger

Many of we bloggers who have activated the 'MailToBlogger' feature with http://www.blogger.com/ suffer from one issue. When we send an email to blogger from a free email service like MSN Hotmail, the web service appends an advertisement footer.

When you continuously post using MailToBlogger and over the period of time if there are more number of advertisements, there is a chance that Blogger might think of your blog as commercial advertisement.

The previous weekend, I found out a very good Google Blogger Help Page article which overcomes this menace. You can check out the tip over here.

Just put #end at the end of your post and the signature would not appear in the blog entry that is posted to your blog.

Quest Connect 2008 -- Global Virtual Event on October 22nd and 23rd 2008

Quest Connect 2008 -- Global Virtual Event on October 22nd and 23rd 2008

I learnt from Quest Software website that they are planning to organize Quest Connect 2008, a global virtual event on 22nd and 23rd of October, 2008. At least noting down from the events page, the following are the topics of interaction and learning:

  1. Active Directory
  2. Desktop and Server Virtualization
  3. Identity Management

They have also planned to give hourly gift cards from Amazon and various other online shops. The registration is free. Check it out here.

Saturday, October 04, 2008

[Software Review] Picassa Albums

[Software Review] Picassa Albums
I was just searching for some good desktop photo organizer. The latest Picassa from Google seems to have got enhanced to a greater extent. Some of the cool new features that impressed me are:
  1. Automatic WMV Movie Creation from the Photos
  2. Sync with the Website

Picassa 3 which is currently in BETA also seems to have good Video Tutorial from Google Channel. You can check out this from here. Now, it also supports MAC tools for Apple OS users. Check out about the same here.

The Flock Social Web Browser

The Flock Social Web Browser

For those Netscape fans, it has been a little sad news after Netscape browser got discontinued by AOL a few months back. But there is some solace or comfort for them since AOL continues to support a new browser called 'Flock', built on Mozilla FireFox.

You can check out updates to Flock over here. As observed from The Flock website, it also ships with a lot of addons to extend the basic browser functionality.

Free OpenSolaris CD from Sun Microsystems

Free OpenSolaris CD from Sun Microsystems

Whilst casually browsing the Internet, I came across the FREE OpenSolaris CD offering from Sun Microsystems. Of course, if you afford to have a fast Internet Connection, they do have a download opton to avoid delays due to mailout. If you are interested in the FREE OpenSolaris CD, check out this page for more details.

The delivery schedules, as mentioned in the website are as below:
  1. US Delivery - 2 to 5 days
  2. Europe - 5 to 7 days
  3. Latin America - 2 weeks
  4. Asia/Africa - 4 weeks

Microsoft India's 'Dial A Software'

Microsoft India's 'Dial A Software'
I was casually browsing Microsoft India website and came across the new service initiative called Dial a Software. This seems to be a really good promising initiative from Microsoft from the following perspectives:
  1. Easy and flexible availability of software across the country
  2. Minimizing the Software Piracy since now genuine software resellers are spread across the subcontinent.

I just thought I would share this with other readers so that people can now take benefit of this initiative without succumbing to illicit merchants trying to sell you pirated software.

Get a sneak preview of 'What is new in InstallShield 2009'

Get a sneak preview of 'What is new in InstallShield 2009'

I just learnt of a webcast download from Acresso Software on the new features that are being planning to be launched in InstallSheild 2009. Some of the quick and cool features promised thereto are:

  1. Support to latest Windows technologies
  2. Cost-Effective Installation Solutions
  3. Ease of Use

Towards encouraging more downloads, the download page at CodeProject also provides for $50 (Canadian Dollars) if you stand to win the contests. Check out the register and download page at CodeProject over here.

Professional Developer Conference 2008 between October 26 and October 30 at LA Convention Center

Professional Developer Conference 2008 between October 26 and October 30 at LA Convention Center

I recently came to know of the PDC 2008 registrations opening up for the conference that is organized from October 26, 2008 through October 30, 2008 at LA Convention Center this year. The organizers have setup this exclusive website over here, to provide for more information on this conference on the following topics like

  1. Agenda of the conference
  2. FAQ
  3. Registration Details
  4. Charges

Perhaps I just thought I would share this news with other readers so that people who can able to schedule to participate can register and benefit from the conference.

IndiaStudyChannel launches Community Website Program

IndiaStudyChannel launches Community Website Program

The premiere Indian educational service website, http://www.indiastudychannel.com/ catering to the requirements of college admission seekers and helping out people with information on higher education, now has brought out a new concept in their website called 'Communities'. You can check out this from their website here. As far as I could analyse the following are the salient features of this program:

  1. Exclusive Community website for our school, college or neighborhood
  2. Free Registration and Management of Communities
  3. Revenue generation options through 'Revenue Sharing Programme' of India Study Channel
  4. Customized Discussion Forum within the Communities

I just thought I would share this with other readers so that more people can get benefitted from the same.

Google Developer Days -- Worldwide Events

Google Developer Days -- Worldwide Events

I was just casually browsing through Google Code website and came across the worldwide developer days events that Google is trying to organize the whole of September and October. You can actually check out this URL on Google Developer Days 2008 for more details.

They are planning to cover topics on Google Gears, Maps and other Google Labs products. Let us try to register at the venue which is closer to us and benefit from the same.

Silverlight Tutorials from Dotnetspider

Silverlight Tutorials from Dotnetspider

Dotnetspider has again brought in an innovative set of tutorials on the most promising technology from Microsoft -- Silverlight. The premiere Indian technology website, aimed at fresh graduates and helping them to grow up in their software development and career upliftment skills has brought in another set of world class tutorials on this technology, in an easy to understand fashion.

You can check out the silverlight tutorials in dotnetspider.


Friday, October 03, 2008

Standard TrackBack for Blogs and Websites

Standard TrackBack for Blogs and Websites

There are so many different blog engines and websites. Whilst a significant of them support trackback concept, there has been a small gap that a small learning curve exists in getting to know the depth of trackback mechanism whilst attempting to fully use them. Taking it further, if the blog service does not support it, then those authors become sad.

I just came across a free service from http://www.trackbackr.com/ which offer TrackBack service for any blog or website and it just needs the author to insert a snippet of code without any necessity of complicated programming. I am sure this would be of tremendous help to everyone.

Wednesday, October 01, 2008

"Best Kept Secrets of Peer Code Review" -- Free Book

"Best Kept Secrets of Peer Code Review" -- Free Book

I just got to know of from a tech newsletter of CodeProject about a free book campaign that is being launched by SmartBear Software.  Within USA and Canada, they are offering this book free of charge and the submission page says that the book would reach the recipient within 15 days. International deliveries are charged at $10 per order.

Check out the book ordering page over here.

[Imported from Blogdrive]Online Virus Scanners

Online Virus Scanners Virus Scanners are no longer difficult to install, tedious to configure. There are easy to use Online Virus Scanne...