|
Joseph Oster Web Application Programmer DHTML / JavaScript / JSP / PHP www.wingo.com - Hanalei, Kauai, Hawaii |
![]() |
| Jul 2009: Sep 2009 |
Curriki is an online environment created to support the development and free distribution of world-class educational materials for grades K-12. Did maintenance, repairs and enhancements on legacy code, including CSS, ExtJS and Velocity Templates on the XWiki platform. |
| Aug 2008: Jun 2009 |
Converted static HTML design to functional web application in a Django/Python environment. The goal: to "make it easy to find partners by creating a unique web-based application that expertly matches potential licensees of drugs and medical devices with new technology based on scientific compatibility". Interactive features include a create/edit process for describing technologies, a search/alert process for creating queries, a browse process to sort through technology listings; multi-row DHTML forms, AJAX, auto-suggest/complete, term validation, ranking, favorites, introductions and profile pages. Commonly used tools: HomeSite editor, jQuery JavaScript library |
| Sep 2007: Jan 2008 |
StealthCo.com
(real name not disclosed) , video account management - Palo Alto, CA Created a JavaScript DHTML widget for a VLC media player plugin and a web site to support it. The widget could be embedded anywhere (private web pages, blogs, etc.), so it used dynamic SCRIPT tags instead of AJAX to communicate with the server. It could be "skinned" using CSS and configured w/ options (auto-start, channel to play, controls, etc.); the viewing area could be re-sized and the width/height ratio changed for each video. Sidebar of widget showed other channels, mouse-over "tooltip" for channel status and schedule of videos to follow. Web site included AJAX sign-up/login w/ email verification and approval for private alpha, captcha image verification, feedback, video upload page with AJAX progress bar, extensive "My Channels" editing page w/ drag/drop for arranging videos in sequence, ranking and comments, profile page, fixed width or "liquid" layout. Implemented "image server" scripts to create and cache different size jpeg images from original source, for both video "covers" and profile images. Users could change channels but not start them "on demand", so multiple progress bars were used to display each channel's current position. Created a series of PHP-5 Classes for major server-side components and a 'ViewerEmulate' utility to act as a typical User, unit testing all the features and logging the results. Commonly used tools: HomeSite editor |
| Feb 2007: Jun 2007 |
Worked with UX team and visual designer on total re-model of Engage.com - Extensively revised 300+ JSP pages (HTML, CSS, JavaScript, JSTL and custom tags) to new design and style guide, added AJAX and DHTML features including animated actions, "hover profiles", dynamic menus and "tooltip" dialogs (variable size boxes that appear and disappear as needed with PNG-24 drop shadows, style and behavior differences), new "front door" AJAX sign-up / sign-in process and related edit profile pages, chopped designer's Photoshop graphics for "pixel perfect" page layout, site navigation, some aspects of Spring framework. Commonly used tools: HomeSite editor, Eclipse editor w/ CVS and Tomcat plugin Java Development Tools, Photoshop |
| Aug 2006: Oct 2006 |
Created a fully functional DHTML/AJAX-based prototype for photo and video sharing. Features include: thumbnail browsing with filtering ("Most Popular", "Most Recent", etc.), tag cloud, DHTML 'Viewer' for full size photos and playing videos without leaving thumbnails page, Ranking, "Pass It On", "Add to Favorites", folders ("collections"), drag & drop to arrange sequence of thumbnails, edit title description tags, single and multi-file uploads with progress bar and text, "My Channel" and view/edit profile, personalized CSS, AJAX login, sign-up (registration). Commonly used tools: HomeSite editor, Subversion source control |
| Jan 2006: Aug 2006 |
Implemented a DHTML / Ajax "geography slider" to select one's locale and then widen or narrow search results by moving the slider. Implemented Ajax update of search results by adding or removing "tags" from the search. Implemented "Edit Item Flow", a multi-page process that allows Users to create their own HTML content using a Rich Text Editor (WysiwygPro), to upload images for their content, to add rich media "attachments" with video and audio players, to assign tags from an Ajax updated "tag cloud", and to edit other meta data related to each item. Commonly used tools: HomeSite editor, Subversion source control |
| Jan 2006: Mar 2006 |
"The Internet Memory Book - Collaborate with family and friends to turn photos and memories into a beautiful hardbound book." Developed a DHTML / Ajax based editing system that shows the User exactly what the finished book will look like at all times. Graphic views generated with LaTeX show two pages side by side, precisely as they will appear when printed. Moving the mouse shows "hot spots" that can be edited by clicking to invoke "widgets" for titles, captions, text and photos. Photos are placed and repositioned using drag and drop from a "tray" of uploaded images. Powerful and intuitive crop, zoom and rotate features are available. A book can be re-organized by dragging and dropping whole sections of the Table of Contents, including moving sections between different levels in an arbitrary hierarchy. Commonly used tools: HomeSite editor |
| Nov 2005: Jan 2006 |
Implemented and heavily customized a Yahoo! Store to deliver personalized digital content in the form of astrology reports, including real time export of orders and delivery of "product". A link on the confirmation page leads the User to immediately and securely view the customized reports using birth date info entered before the sale was completed. A "tiny URL" system was used to hide the personal information and prevent hacking. Developed a report template system to transform XML versions of the reports to HTML with graphic elements. Commonly used tools: HomeSite editor, Subversion source control |
| Aug 2005: Nov 2005 |
IMVU offers a 3D chat client using animated characters called avatars. A developer community of members creates and sells enhancements that allow avatars to be highly personalized. Implemented AJAX editing features to personalize the public profile pages of each registered user. Created widgets for setting text, background colors and images, panel borders for each panel header, panel body and the page itself, custom HTML / CSS content in each panel body. Drag & drop to re-arrange panels within and between columns. Graphic "stickers" attached to panels (with paginated "find lost stickers" feature) were exchanged between users, along with gifts for use by one's 3D avatar, and developed into a major micro-transaction business. Import profile from 'myspace.com', "safe mode" to disable custom content for debugging, inline help and gallery upload features. Hand coded DHTML, CSS, JavaScript classes for a variety of AJAX "widgets", including drop down menus for each panel, PHP integration to personalize each page using IMVU's SQL API (MySQL database), implemented a page using AJAX to edit the contents of a 'My music' panel using search results from Amazon.com and enhanced a Google map showing the location of avatars currently online at IMVU. Commonly used tools: HomeSite editor, CVS source control, Reactor Server, phpMyAdmin |
| Jul 2005: Aug 2005 |
SnapJot.com
- Palo Alto, CA Extensive functional prototyping in JSP, DHTML and AJAX; site design and navigation, creating "jots" and "stories" using a Rich-Text-Editor, uploading media - none of it appears on their current web site... |
| Oct 2004: Mar 2005 |
Hired by the UI Design Lead to do rapid prototyping of DHTML features and pages related to a major new "Server Groups" component of the Opsware Command Center (OCC). Also worked in production code to implement many of the prototype pages for the "Darwin" release of OCC in Spring 2005. Advanced JavaScript and JSP programming, DHTML, XML processing in both JavaScript and Java; 4.5 months. For the prototyping phase, I created dozens of XML files to represent navigable views of a hierarchical structure of nested groups (each with certain properties) containing servers (each with many "columns" of data to display). Then, first with JavaScript and pure DHTML and later with JSP on Tomcat, parsed those XML files and presented increasingly refined and detailed versions of display and navigation, row selection, menu toolbar and popup modal dialog features as defined in a very elaborate written spec (which itself was evolving along with the work). Did benchmarking and JavaScript optimization at this point to test performance with "thousands" of rows. In the production phase, I spent another two months working with others to translate the prototypes I had created into working pages in the Opsware Command Center (OCC). Replaced XML sample data with calls to Java APIs, implemented reliable "transactions" for "New / Copy / Move" and other modal dialogs, converted all text to i18N resources, enhanced DHTML and JavaScript functionality. Besides my primary focus on new pages for creating and managing groups of servers, I also contributed significant JavaScript/DHTML and JSP programming to enhancing two existing pages for groups: the "Install Wizard Confirmation Screen" and "Attached Nodes Tab". Commonly used tools: HomeSite editor, ClearCase source control, JBoss/Server, XML for <SCRIPT>, javax.xml.parsers, Photoshop, ClearQuest |
| Aug 2003: May 2004 |
Application programming on the
Sprint PCS Vision Picture MailSM web site
(and here),
primarily "front end" features using JSP, Java and JavaScript programming, custom and
JSTL tags, XML documents,
Struts/Tiles coding, CSS and HTML layout.
![]() drag me!
|
| Nov 2002: Apr 2003 |
Responsible for creation and maintenance of around 80 JSP pages, doing JSP / Java and JavaScript programming, advanced DHTML including insert, delete and re-sequencing of TABLE rows in the browser, alternate screen layouts of FORM fields based on User input (all without refreshing the page from the server), fixed column headings with scrolling TABLE rows, advanced CSS using positioned content, browser validation of FORM data, User interface design, minor modifications to servlets. JSP application programming on a Spend Management system for eBreviate, part of the A. T. Kearney Procurement Solutions unit. Spend Management Technology is a database that accepts and consolidates data feeds from multiple historical accounts payable systems to track spend across the enterprise by division, business unit, supplier, and category/commodity. It allows companies to identify and monitor compliance of negotiated agreements, provides comprehensive spend information on company/subsidiary relationships to fully aggregate and leverage spend, and facilitates the management of T&E and P-card (Procard) spending. Commonly used tools: HomeSite editor, Perforce, WebLogic server, Bugzilla, IntelliJ, Photoshop, Ant, Cygwin, WinSCP |
| Apr 2000: Nov 2001 |
Photography-oriented web site, "film quality prints from your digital camera", personalized photo greeting cards, framed prints and other products, manipulation of images, borders, cropping, address book, shopping cart, etc. Participated in two major revisions of the Shutterfly web site over a period of 19 months. As member of small "front end" team, focused primarily on JSP ("Java Server Pages") and JavaScript programming in a BEA WebLogic environment. Produced "rapid functional prototype" and final production web pages on a regular, short schedule (2..4 weeks). HTML page layout, style sheets, PhotoShop work, JavaScript and Java application programming were used to accomplish the following tasks:
Commonly used tools: HomeSite editor, Perforce, WebLogic server, Bugzilla, WS_FTP Pro, Photoshop |
| Jan 2000: Mar 2000 |
netSyndicate.net (now Syntrio.com) -
San Francisco, CA Produced two new courseware modules from scratch using dynamic HTML in JavaScript functions, positioned LAYERs and Drag&Drop features. JavaScript programming, HTML layout, maintenance of existing code including ASP pages in administrative tracking system. Re-architected the way online courseware modules communicate with back-end tracking system. Eliminated all but one ASP page per module and integrated stand-alone and "tracking" versions of existing modules into single versions working with or without custom content and tracking (tremendous reduction in maintenance!). Introduced text scripted multiple choice quiz builder using JavaScript DHTML layout and scoring. Updated many old courseware pages with clean simple FRAMESET-based JavaScript code. Contributed to new company web site including Perl scripts. |
| 1995..1999 (present) |
Wingo.com Web Site Design
- Sausalito, Santa Rosa, Half Moon Bay, Santa Cruz, Kauai (HI)
|
| 1990..1995 |
CAM Data Systems, Inc.
- Fountain Valley, CA After being acquired by this former competitor, I continued to lead development of the PROFIT$ Merchandising System described below. Implemented reliable unattended document handling between remote store locations for Purchase Orders, Receivers and Transfers. Developed automated client-server utilities using existing "pMail" wide area network (see below) for continuous upgrading of large installed User base (thousands of stores), enhanced reporting features for large multi-store operations (30..50, 255 max), and other major functional improvements throughout the application. Software and computer hardware sales related to the PROFIT$ product grew from four to seven million dollars per year during this period. |
| 1981..1990 |
MicroStrategies, Inc. - Millis, MA (Boston area) Created the PROFIT$ Merchandising System, a proprietary Point-Of-Sale Inventory and Reporting system for single or multi-store retail shoe and clothing outlets. Systems sold widely in the U.S., Canada, Mexico, and the Caribbean (with international currency exchange and display issues!). Was software architect and chief among a team that grew to five programmers. The PROFIT$ product eventually supported dozens of software and hardware support technicians, sales people, assorted executives and generated 20+ million dollars in gross sales. (see CAM Data above) Among other things, two key features made PROFIT$ unique at the time:
UCSD Pascal, an academic leap of the mid '70s similar in portability to today's Java, was used to achieve a powerful multi-user, multi-store application that could be distributed without re-compiling(!) across a variety of hardware (Intel, Motorola) and operating systems including single and multi-user DOS, Atari machines, Novell Networks and large UNIX networks. A massive library of general purpose programming tools including database, list and screen handling features was created to support the PROFIT$ application (and others), many using object-oriented techniques pioneered in Smalltalk and Modula-2, translated to Pascal. Implemented first on early "super-micro" computers using an SQL relational database, performance and data integrity demands eventually dictated a proprietary variable size record file system ("VSDO"), optimized for highest performance on UNIX systems. Complete with appropriate file maintenance utilities and supporting multi-partition files far larger than the limits imposed by the UCSD pSystem, this key development allowed PROFIT$ to grow with the demands of customers having 30..50 stores (255 max) and from 100 to 4000+ receipts per store in a single day. With Jon Bondy, designed and implemented "pMail", a peer to peer Wide-Area-Network for unattended file and data (message) transfers between remote stores, including object code updates of all software. Logical messaging between applications on machines in remote locations supported easy, reliable, distributed database updates. Implemented in 1986 using the portable pSystem and direct dial, point to point modems, prior to development of the commercial Internet as we know it today. |
| 1980..1981 |
Satellite Telecommunications Systems - Washington, D.C.
|
| 1979..1980 |
Pabon, Simms, & Smith - Washington, D.C. Extensive re-write of "ZMT Tape" mail analysis software (Fortran and BASIC) used by regional mail sorting centers of the U.S. Postal Service ("ADPT" for MPLSM - Multi-position Letter Sorting Machine). Did entire job myself; no need for additional budgeted staff. Then ported these applications and data for all offices from one main-frame system (SBS) to another (Tymeshare, Inc.) |
| Home |