Wednesday, November 23, 2005

Open Source Technology Implementation

Here is an example of what an opensource implmentation can look like:

Servers powered by Debian Linux
Database powered by MySQL/InnoDB
Web site powered by Apache
Servlets powered by Tomcat
Search powered by Lucene
Search highlighting powered by Mark Harwood
Recommendations powered by CoFE

So opensource implementations have definately been successful in the marketspace, providing fast, reliable, extendable, and robust solutions. So why should companies purchase software?

In some cases opensource solutions provide a no-brainer options, such as using Linux, Struts. In other cases(which occurs more often) the pros and cons are much tricky.

Here are some perspectives that should be considered while making critical decisions on off-the-shelf versus opensource purchases:

- Technology: Do you have technical expertise to support the opensource implementations?
- Support: Is there a support vendor for the product, and how will it be maintained?
- Company: What are the future plans, and supportors of the opensource product?
- Price: How expensive is the off-the-shelf equivalant of the opensource solution?
- Features: What additional features does the off-the-shelf equivalant provide?

Please share your opensource experiences.

Monday, November 21, 2005

The Pragmatic Web

Websites can be complex, confusing, overwhelming, or simply unusable.

A pragmatic website will have the following bare essentials:

- Keeps the need of the users in mind, rather than just look at the information available.

- Gives intiutive suggestions to user, so the interaction is a learning experience

- Is Predictable and Consistent, so similar actions behave similarly throughout the site

- Gives the user some easy paths to navigate, and option to explore complex features

- UI Looks robust and clean. Simple colors, but various sections are well separated by tabs, tables, colors

- Bread Crumbs indicate where the user is, and what the page is displaying

- Search is simple, and results are customized based on needs of the users

- Menus are divided based on usage of site, so overall options for users are manageable

Friday, November 11, 2005

Problem Solving Techniques

Techniques to help solve problems that are difficult to solve, or have multiple solutions:

- Think from Fresh Perspective

- Talk it over with a colleague

- Think simple

- Think possibility & probability of error. Solution base on that

- Ask yourself questions

- Throw What-if scenarios

- Consider your instinct

- Think about what worked in the past, and what failed