Pages

Sunday, November 16, 2008

livemocha - a success story of social network + e-learning

Image representing LiveMocha as depicted in Cr...
Recently, social network is emerging as a new trend. You can see a lot of social networks over the world: MySpace, Facebook, ... They appear like stars after Big Bang. Each social network has its mission in the real world (not only on Internet). The strength of social network is its community. When you have a big community, that means you have a big chance to get more money!

Actually, social network is only a type of model (a social model on Internet). If you can find a good idea to apply into a social network, that means you created a new model. For a long time, I tried my best to do that (invent new thing with social network). When researching, I found some of my "new" ideas exists in the real world. One of them is: combine social network with e-learning.

This type of social network appear recently. I strongly believe that this is a good model for e-learning. One of success web site applied this model is:

http://www.livemocha.com

The idea behind is very simple: "learning new language by friends over the world".
It creates a big community who wants to learn language by communication directly.

I found a very interesting analyzing in the CEO's blog of livemocha

Based on various research reports that I have seen, this is a market that is well over $20 billion in size with over 350 million people all over the globe learning a variety of different languages. In many countries, people can double their income by learning English because they can get more attractive jobs in industry. And the need has become even stronger given increasing trends towards globalization, immigration and travel.


Currently, Livemocha secures $6 million in funding led by Maveron.
Do you think this idea is interesting?

Saturday, November 15, 2008

Google Analytic example - How business view can help you ?

Yesterday, I received a request from a customer: create a tool to track statistic data on email campaigns. We must find the solution with cheapest price and lowest development cost.

Actually, I've used a lot of statistic tracking tools like: Google Analytics, SiteMetter, ... However, I thought that these are tools for web sites (not for email) because the real mechanism behind these tools is: the client (browser) must run a piece of Javascript to send statistic data into their server.
With email client, we can not run script because of some limitations regarding security.


I get in stuck.
How to solve this issue?
The CTO told me: I see that some companies use Google Analytic to track statistic data related to their marketing email campaigns.
Oh, really? I can not believe in that.
Search on Google, and this is the result:

http://www.epikone.com/blog/2008/11/04/email-tracking-with-google-analytics/

This is just a very simple idea: adding parametters into the link we want to track in email content. When user reads the email and open the link, Google Analytics will track this.
To view statistic data, user will use the filtering parameters to select data they want to view.

Oh! my god. Great
Actually, this is not a quite 100% good solution. However, it can make use of Google Analytic in a new way.



I think this is invented by a business man, NOT from any developers or technicians.
WHY I said that?
NO developer can find this - because they always think about complete and quite 100% good solutions.
In the mind of a business man, he wants to make use of everything. So, tricks are good ways save his money and make use of everything was available.

Do you want to be a developer with good business mind? I am trying my best to be that.

Web Standards Curriculum - Good course for web developer

Web standard is fundamental knowledge that all web developers need to know. I am going to look for a course about this for training in my company. Fortunately, I found this course in Opera developer community: "Web Standards Curriculum"

Web Standards Curriculum, a course designed to give anyone a solid grounding in web design/development, no matter who they are—it is completely free to use, accessible, and assumes no previous knowledge.

You can find this course here:

http://dev.opera.com/articles/view/1-introduction-to-the-web-standards-cur


About the author of this course

Picture of the article author Chris Mills

Chris Mills is a developer relations manager for Opera—he edits and publishes articles on dev.opera.com and labs.opera.com, liaises with the community to raise awareness of Opera and collect feedback, and evangelises about Opera software wherever he can. He is also the organiser and editor of the Web Standards Curriculum.

Outside of work, he is an extremely avid music fan, enjoying playing and listening to a wide variety of music, including metal, folk, punk, electronica, prog, and more. His main band at the moment is the mighty Conquest of Steel.



I hope this course is useful to you!

Tuesday, November 11, 2008

Domain brainstorming and tools

As you known, domain brainstorming is one of first steps when you want to set up a new web site. How to choose a good domain? That's a very good question.
To do this step, you should ask your friends about keywords related to your business that they think first. The rest task is "combine keywords and choose the best name that are still available on Internet".
You can check some guidelines here for this. Actually, that's not simple!

Fortunately, there are some tools to help you check available domains and give you some good suggest names.

BustAName - gives the widest range of available options: it mixes the given keywords, gives synonyms for each one, adds prefixes and suffixes, shows both singular and plural versions, drops last vowel, checks for both hyphen- and non-hyphen versions. The tool dynamically checks for 3 top level domains: .com, .net and .org

Domize - shows information on domain names availability one-character shorter than the one specified (covers 3 TLDs: .com, .net, .org).

PickyDomains.com — PickyDomains employs actual people who suggest names for your domain. The process begins by registering with the service, providing a description of your site, keywords and your preferences. Once your account is setup, they start suggesting names and you either flag them as “Like” or “Dislike”. As soon as you find a name you want, you “pick” the name and register it. The service costs $50.00 per domain name and you are charged only if you register a domain. My experience has been spotty. They certainly can come up with great names, but there is no consistency in the quality of names. But since you are not charged if you don’t register the name, it does not hurt to try. The good thing about using this service is that it makes you think hard about what your site should be about.

Web 2.0 Name Generator: This is a fun and easy website to use, especially if you just want a cool sounding name for your soon to be media empire. Simply go to the site and click on “Generate Name” and the site generates cool names.

PsychicWhois - covers a wide variety of TLDs (.com, .net, .org, .biz, .info, .us) and provides a lot of alternative domain name suggestions based on your previous searches and related terms.

Thesaurus.com: This is probably one of the more useful ways to pick a name. I usually start by jotting down a few key words, and start entering them into the thesaurus. The thesaurus kind of helps you to think about your name from different angles because of the various synonyms it suggests. Unlike Microsoft Word, thesaurus.com suggest synonyms that are similar in meaning but are divergent enough to make you think - its a great brainstorming tool.

Ajaxwhois.com: This site allows you to search for domain name availabilty. It is fast and very easy to use.

I like bustaname.com most. However, you can try all above tools to select your best choice.
Good luck

Monday, November 10, 2008

Apply accessibility to web projects

Recently, I see there' re many persons misunderstand about Accessibility. Someone can not distinguish it with Usability. So, I post this entry to help you have a general overview about this.
I also post some ideas related to the way we apply Accessibility into web project under 2 views: Company view and Project view.


Outline of this post:

  1. What is accessibility?

    1. WCAG (Web Content Accessibility Guidelines)

    2. ATAG (Authoring Tool Accessibility Guidelines)

    3. UAAG (User Agent Accessibility Guidelines)

    4. EARL (Evaluation and Report Language)

    5. WAI-ARIA (Accessible Rich Internet Application)

  2. Why we need to support accessibility?
  3. How to apply accessibility?


What is accessibility?


This is the Web accessibility definition from W3C


Web accessibility means that people with disabilities can use the Web. More specifically, Web accessibility means that people with disabilities can perceive, understand, navigate, and interact with the Web, and that they can contribute to the Web. Web accessibility also benefits others, including older people with changing abilities due to aging.

You can find here some scenarios that People with Disabilities Using the Web

From now, when we talk about Accessibility - we're talking about the ways to support people with disabilities to use the web.
So, do not confuse this definition with Usability.

Web standards for Accessibility


W3C composed a standard for Accessibility called WAI. These are a collection of guidelines to help us create web site and tools to support Accessibility.
There are 5 standard groups in WAI

1. WCAG (Web Content Accessibility Guidelines):
These are guidelines for web content. If we are a web based solution company - we should follow this. I need to explain to you more detail about this because this is what we have to support in our web projects.
In this document, there are 14 guidelines:
Each guideline has one or many checkpoints with 3 types of priority: 1(MUST) , 2 (SHOULD), 3 (MAY).

If you can support all checkpoints with level 1, you get Conformance Level "A".
If you can support all checkpoints with level 1, 2, you get Conformance Level "Double-A".
If you can support all checkpoints with level 1, 2,3 you get Conformance Level "Triple-A".
2. ATAG (Authoring Tool Accessibility Guidelines)
These are accessibility guidelines for tool to create content. Eg: WYSIWYG Editors, media tools, ...
3. UAAG (User Agent Accessibility Guidelines)
These are accessibility guideline for Web browsers, media players, and other user agent.
4. EARL (Evaluation and Report Language)
Evaluation and Report Language (EARL) is a machine-readable format for expressing test results. The primary motivation for developing EARL is to facilitate the processing of test results, such as those generated by Web accessibility evaluation tools, using a vendor-neutral and platform-independent format.
5. WAI-ARIA (Accessible Rich Internet Application)
WAI-ARIA, the Accessible Rich Internet Applications Suite, defines a way to make Web content and Web applications more accessible to people with disabilities. It especially helps with dynamic content and advanced user interface controls developed with Ajax, HTML, JavaScript, and related technologies

Why we need to support Accessibility?



  • Provide equal access and equal opportunity to people with disabilities

  • Web accessibility is required by laws and policies in some cases. You can see here some list of relevant laws and policies around the world

  • This is a new trend in 2.0 web sites. If you can support this, it is an added value to your customer.


How to apply accessibility?


In my point of view, I think we have 2 views to apply this.

Apply under organization view


The first thing we need to do is: training for web developers about Accessibility and its importance. Your developers must understand about WHY they need to follow it.

Second, you should have HTML coding standard document. This is a guideline to help your development team can follow it and transfer to the new one. Before doing this step, you should select the conformance level that your company will support by default. Actually, I haven't seen any site get the Conformance Level "Triple-A" (except http://www.w3.org/WAI/)

Apply under project view


If you want to apply WCAG. You should create a process to support this. In my point of view, the simple process should have 3 below roles:
1. HTML designer: he/she must make sure the output HTML design follow WCAG standard.
2. Web developer: he/she must apply HTML design into the code by proper way that create the final version matching WCAG standard.
3. Content checker or QC: check the final output.
4. Content developer: when your site is deployed into production, content developer takes responsibility of creating/editing content. He must has knowledge about Accessibility to follow that.
As a process, you must have document, guidelines and checklist to support it.
Roles in process are up to you. I just raise some default roles in a simple way. You can create your customized version to follow the default support conformance level (of your company) in WCAG.
Good luck!