Clicky

October 30, 2008
@ 03:03 PM

After releasing ASP.NET MVC previews, URLs have found more important role in web applications. If many developers used to show URLs like /products/showproducts.aspx?pid=14 or /products/14.aspx or even products/14/ in past, now MVC lovers are going to use more friendly URLs like /products/notebook/sony/fz-490; that’s much better. But what if your main language is not English?!

For example assume you’re developing a Persian web application to show news items. Now what to do with URLs? Will you let site administrator add an English translation for headline to show in URL and build a URL like this: /news/2008/8/8/this-is-a-headline/ or show native language words in URL (e.g.: /news/1387/8/8/این-یک-سرخط-خبر-است/)? I chatted to Simone about this and he suggested me use full English URLs instead of a combination of Persian/English characters. He also thought it’s better to keep a unity among all URLs and not to use English URLs somewhere in your application and use non-English (or a combination of both) somewhere else. I agree with him on this and personally I prefer English URLs too.

Another point is that Persian characters are not extended from English and are totally different. For example Simone told me they have characters like à è ò in Italian language but this chars have equivalents like a e o and even if you show URL using native language and characters, you can have equivalent URLs and map them to each other using a simple URL rewriting (So you can satisfy both fans of native and English URLs!); but in Persian language we don’t have this option! Everything will be shown in Persian languages and there is no solution to convert it to a similar English characters URL.

Now let’s take a look at this issue from another point of view: SEO. What is search engine crawlers’ behavior against non-English URLs? Is it better to use native words or not? I have no idea about this because I’m not a SEO expert; so I invite you participate in this discussion by leaving a comment. What is your opinion? What solution you suggest to reach a standard way?

As I told Simone, there aren’t many Persian sites in which they use Persian words in URLs but we have some exceptions too. e.g. Persian Wikipedia (http://fa.wikipedia.org/wiki/صفحهٔ_اصلی). (+ PS: Referencing Keyvan's post, there are non-English domain names too; e.g. Pedram's Persian domain name (www.پدرام.com))

 

 

P.S.: Simone invited me to write a blog post about this and open a discussion and also suggested me to talk to Keyvan about it. So, Keyvan, I would be appreciated and so glad if you participate on this topic ;-)


P.S. (2): My dear friend Keyvan accepted my invitation to join this thread and wrote a nice blog post about it. Please read this post as well.


 
Categories: ASP.NET MVC | i18n | Web | Web 2.0

Recently (and specially after Web 2.0 revolution) many websites started to use more complicated CAPTCHA solutions on their websites in order to prevent spam and bot attacks. There are many free solutions and tools for users and developers to implement CAPTCHA technology in their applications. There are also many ASP.NET controls and components for this approach but many of them are so simple to hijack or don't offer features that these days we see on professional websites (some features like reload function, voice, etc.).

A few days ago I found a link to reCAPTCHA on Yahoo!. reCAPTCHA is a free (but professional) tool for basic users and also developers. To use this service you should first signup, receive an API Key for your website (you can receive as many as you need) and use one of easy-to-install plugnins provided. And good news for ASP.NET developers is that you can download and use a server side control and enjoy reCAPTCHA with two lines of code! The API Key guarantees your website and prevents attackers collect answers from visitors and use them. There are three different themes to choose.

If you want to use reCAPTCHA on a Web 2.0 website you can use AJAX API just by adding this line of code to you html or webform file: I strongly suggest you download and test this tool in your web applications.


Quick Links: reCAPTCHA.net | Live Demo | Why reCAPTCHA | Signup | reCAPTCHA.NET Control | Email Protection With reCAPTCHA


 
Categories: .NET General | AJAX | Security | Web | Web 2.0 | Web Services

October 3, 2007
@ 02:07 PM
Omar Al Zabir has recently listed 10 cool articles about ASP.NET, AJAX, ... which he has published this year. From my personal view these articles are interesting:


 
Categories: .NET General | AJAX | ASP.NET | Security | Web | Web 2.0 | Web Development

Sometimes it happend that you want to search for something on the web and don't find your desired results in your favorite search engine, you may decide to try another search engine to find the answer. Here's a better and easier way for such times!

metacrawler.com is a website which enjoys metasearch technology to gather best results from various search engines including Google, Yahoo! Search, MSN Search, Ask Jeeves, About, MIVA, LookSmart and more.

You can see all results from all search engines together or select a search engine and see its results only.


 
Categories: Web

September 25, 2007
@ 05:46 PM
Since its launch, Gmail has been one of the most popular free email services on the web. Ease of use, huge storage space, amazing AJAX interface, POP3 features, etc. make Gmail a good choice for those who look for a free email service.

I think the sole weakness of Gmail is its very simple user interface. There were some movements to improve Gmail UI; for example Gmail Skins and Better Gmail extensions for FireFox. These days a blog post appeared on various blogs and websites such as Mashabale, Googling Google and BlogoWogo talking about a new Gmail UI. Everything started from a "Newer Version" word translation request on Google In Your Language program that was found by a user [See this image].

After Gmail Mobile inhancements in these days, it seems that Google wants to surprise their users with a great work in near future. We should wait!


P.S.: I think from the beauty point of view, only Google Analytics is pretty and eye catching and all other just offer powerfull features not a good looking environment!


 
Categories: AJAX | Web | Web 2.0

September 12, 2007
@ 04:00 PM

It's a few months that Yahoo! and MSN (or Live) users can use a single Messenger to communicate with their friends. If you have a Yahoo! ID and use Yahoo! Messenger then you can add your friends which have an MSN Messenger or Live ID and vice versa. But many users still use Messengers other than Yahoo! and Live. For example Google Talk have recently found many spectators because of its simple and fast desktop client and ease of use, or many old Internet users still prefer their AOL account.

In addition, if you have multiple IDs in various networks and you have to use all of them at same time you need to have at least 3 messengers (GTalk, Yahoo or Live and AIM). It is equal to waste of memory and resources of your PC. So what the solution is?

Recently I found meebo.com, a web based Instant Messaging service for Yahoo!, MSN, AIM and Google Talk. You can enter your login information and start instant messaging immediately in one browser page. meebo uses AJAX to communicate with server and has a user friendly environment.

You can also chat with other meebo users in its rooms, use meebome.com on your personal website to chat with your visitors and more.

 

UPDATE: Forgot to mention that meebo supports many languages including Persian and also support ICQ and Jabber.


 
Categories: AJAX | General | Web

Yesterday, I was talking to Nima about some new web development tools he has found out these days. One of amazing open-source tools he introduced to me was Rico. Today morning I saw a link to Rico at del.icio.us too. So you can guess how popular it became! (Many links have been made, you see!).

As seen on Rico's web site, Rico in an open-source JavaScript library for creating rich internet applications. It provides full Ajax support, darg 'n drop management and a cinematic effects library.

To see how Rico can reduce your time, take a look at one of its demos here. You have a colored box built using a DIV tag and want to round its corners. Use complicated CSS? Use four images at the corners? Other solutions...? Rico answers: new Rico.Effect.Round( tagName, className, options). Yes, finished!

Many other effects are available too and you can use it in you own applications. Save your time!

Rico: Home | Demos | Features | Download


 
Categories: AJAX | Download | Web | Web Development

February 18, 2006
@ 12:58 PM
From today, I will post my cool links which I find during my daily web surf at del.icio.us/sharplife. [Subscribe to its feed if you like.]


 
Categories: Personal | SharpLife.NET | Web

Code Project is one of my favorite web sites on the internet. I think that the level of articles and the freshness of news which are published on this web site is so much better than other web sites.
Code Project holds an online poll every week and announce its results. The questions that are asked in these polls and the answers sometimes are so funny and sometimes so usefull and technical.

This week question was "Where do you get your IT news?" and the answers:

Option Votes %
Online news sites 528 73.8
RSS feeds 219 30.6
Email newsletters 250 35.0
Podcasts 24 3.4
Webcasts 45 6.3
Blogs 181 25.3
Internet radio 12 1.7
Discussion boards 164 22.9
Responses 715

Two things are interesting to me in this result. First: RSS feeds are still in the 3rd place after Web Sites and Newsletters, and second: Blogs are in the 4th place. If you compare this situation with our country (Iran) results, I think that Blogs can be at the 1st or 2nd place but yet there is no favor in RSS Reader softwares and web sites among Iranian non-professional users.

If we deeply look at these results we find out that most Code Project users are professional web users and developers that should be interested in RSS readers and Blogs; but in real world we see another result! What do you think...?

...

These days I'm busy with a web application project which should be shipped in two Persian and English languages. In this project I decided to build a real multi-lingual web site which can be easily extended to other languages in future. I had read many articles about internationalization in ASP.NET before but never used them. On of best articles I found about i18n in ASP.NET is a 3-part article series from Code Project. You can read them here: Part 1, Part 2 and Part3.

The core concept in i18n in ASP.NET (esp. in ver. 1.x) are resource files (with .ascx extension) and satellite assemblies.

In this series of articles Karl Sequin suggested not using satellite assemblies and build a resource manager from beginning. The reason he don't like resource files and satellite assemblies is that because resource files are compiled into satellite assembiles, if you want to change a small word in translated files you should stop your web server or web site and upload new .dll files. I believe that in large scale projects he is absolutely right but in my case resource files are better choice.

If you like to know more about i18n in ASP.NET 2.0 you should take a look at Part 3 which Provider Factory Pattern are discussed.


 
Categories: ASP.NET | i18n | Web