Dear mde,
My answer is based on web research supplemented by personal experience
with web development.
When you're building a database-driven website like eBay or GA, you'll
want a developer who is conversant in SQL, the universal language of
relational databases. This developer should have practical experience
with one of the leading database management systems, such as PostgreSQL,
MySQL, DB2, or Oracle.
PostgreSQL
http://www.postgresql.org/
MySQL
http://www.mysql.com/
DB2
http://www-306.ibm.com/software/data/db2/
Oracle
http://www.oracle.com/index.html
The database needs some way to talk to users via the web interface at
the front end. You therefore want developers who are comfortable with
HTML interfaces and with CGI form processing. For the fancier interface
effects, you may want JavaScript skills as well, though eBay and GA do
not rely on JavaScript. PHP is useful when it comes to generating web
pages on the fly, and XML works well as an intermediate format between
the SQL of the database and the HTML of the web page.
PHP
http://www.php.net/
O'Reilly: What is XML?
http://www.xml.com/pub/a/98/10/guide0.html
There has been much talk lately about AJAX (Asynchronous JavaScript
and XML) implementations for a slick Web 2.0 experience, but I have not
seen any major marketplace sites that use AJAX. In great part, this is
because AJAX makes it difficult to preserve back-button functionality
and other important features of order-form navigation.
Content With Style: Fixing the Back Button and Enabling Bookmarking for
AJAX Apps
http://www.contentwithstyle.co.uk/Articles/38/
To do the heavy-duty processing work that ultimately connects the
web interface at the front end to the database at the back end, the
standard practice is to use a scripting language such as Python, Ruby,
or Perl. These are general-purpose programming languages that let you
accomplish the same things as C++ and Java, but they offer a great deal of
built-in web and database functionality. Scripts are easier to read and
friendlier to work with than traditional programming languages, leading
to more easily maintainable code and shorter development times. This is
why developing a web marketplace typically calls for extensive work in
one or more of these scripting languages.
Python
http://www.python.org/
Ruby
http://www.ruby-lang.org/en/
Perl
http://www.perl.org/
To summarize, I would look for the following skills and experience if
I wanted to hire developers to build a web marketplace.
database programming:
SQL database skills required
PostgreSQL, MySQL, DB2, or Oracle experience preferred
web interface:
HTML, CGI skills required
PHP, JavaScript, and XML experience preferred
application scripting:
Python, Ruby, or Perl required
I have enjoyed answering your question. If you have any concerns about
the accuracy or completeness of my research, please advise me through
a Clarification Request and allow me the opportunity to fully meet your
needs before you rate this answer.
Regards,
leapinglizard
Search strategy:
sql database development
://www.google.com/search?hs=E7b&hl=en&lr=&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&q=sql+database+development&btnG=Search
ajax breaks back button
://www.google.com/search?q=ajax+breaks+back+button&start=0&ie=utf-8&oe=utf-8&client=firefox-a&rls=org.mozilla:en-US:official
script language web development
://www.google.com/search?hl=en&lr=&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&q=script+language+web+development&btnG=Search |
Request for Answer Clarification by
mde-ga
on
12 May 2006 13:50 PDT
Thanks for the thorough overview, leapinglizard.
But what I am really looking for is specifically what application
scripting language (Python, Ruby, Php or Perl) and database management
systems (PostgreSQL,
MySQL, DB2, or Oracle) should they have practical experience in if the
desire is to build a system that is secure and scalable . Ease of
development (cost) is a concern as well.
|
Clarification of Answer by
leapinglizard-ga
on
12 May 2006 14:13 PDT
In my considered opinion, Python is the most mature language among the
major scripting languages and the one best suited to fast,
maintainable development of middleware systems. Google is known to use
Python extensively.
At the front end, you can ignore JavaScript and AJAX, and focus on CGI
form processing and PHP page generation. Yahoo's pages are generated
largely with PHP, which they adopted for maintainability and
scalability after scrapping an elaborate C/C++ system.
Among the major database management systems, my preference is for
PostgreSQL. MySQL is more popular than PostgreSQL but somewhat less
scalable. In any case, developers proficient in SQL will be
comfortable with both, so SQL is the main skill to look for.
The bottom line is that HTML and CGI skills are a must. As for
specific application platforms, I recommend Python, PHP, and
PostgreSQL.
leapinglizard
|