Disciplined development ensures that content is placed in structured, semantic markup (XHTML) with separate layers for presentation (using CSS) and behavior (using DOM JavaScripting). The thoughtful use of technology -- such as unobtrusive, accessible JavaScript that degrades appropriately -- keeps your site reliable and available to your audience.
- Database queries using AJAX (asynchronous JavaScript and XML) and the DOM (document object model) that revert to non-AJAX form submissions when JavaScript is unavailable: weather records and Yellow Page business records
- Visual DHTML effects using JavaScript like object dragging, drag and drop, modal dialog, and expanding/collapsing navigation menu comments with JavaScript compression
- Informational effects like multiple-select form controls, star rating control, dynamic table manipulation, and image carousel
- CSS (cascading style sheets) and dynamic image rollovers, sprites
- Highlighted search results
- Adobe Flash animation and dynamically controlled ActionScript
- Flash promotional trailer, character animation
- Database-driven content from PHP and MySQL in XHTML pages and asynchronously using AJAX in Flash animation
- XML content (Google Sitemap, OpenSearch description, and RSS and Atom feeds); Flash video player with an XML playlist; JSON
- Other technologies: news feeds using cURL; Google Chart API
Besides developing custom PHP applications that serve dynamic HTML pages using JavaScript frameworks, experience includes work with open-source CRM, CMS, HRM, and ecommerce applications (such as Zen Cart and Joomla), developing within web application frameworks, maintaining databases with phpMyAdmin, and creating and running Google AdWords campaigns and AdSense advertising.
- JavaScript frameworks and tools include jQuery, the Yahoo! User Interface Library (YUI), Prototype with Scriptaculous, DOMAssistant, Ext, and the YUI compressor
- Web application frameworks include Ruby-on-Rails (controllers, views, irb, AJAX, Scriptaculous) and Django/Python (templates, AJAX, jQuery)
- Familiar with website localization and globalization techniques as implemented in the Zen Cart ecommerce application
- Practices that address security problems include strict GET and POST handling to mitigate cross-site request forgeries (CSRF) and JavaScript hijacking; validating and encoding user-supplied data to mitigate cross-site scripting (XSS) and SQL injection
- Apache mod_rewrite validates URLs, optimizes URLs for search engines, and blocks hotlinked images, access to directories, and undesirable spiders and spybots
- Cross-browser development supports Internet Explorer 6 and 7, FireFox, Safari, Opera, and Camino on Windows and Macintosh client platforms