Programming / Consulting
Although this site is primarily for photography, since my professional life is programming, it'd be incomplete without a section for programming and consulting info. In a nutshell: I have a broad range of experience and have been working with Java and/or web-related technologies since I was an undergrad in 1999.
Projects
- merge-gps-exif, a Java project to take GPS data and automatically merge it into image files based on the timestamps of the GPS fixes and image capture dates.
- Flickr Semantic / Machine Tagger, a PHP/AJAX/Web Services application to search semantically using Flickr's Machine Tags, and more importantly, add semantic machine tags to your images on Flickr.
Experience
- Java / J2EE: EJB, JDBC, Hibernate, WebSphere, Tomcat, JBoss, Axis, MQ, JMS, etc.
- Tools etc.: Maven, Ant, Eclipse, Subversion, CVS
- Web: PHP, ASP / ASP.NET, ColdFusion, JavaScript, AJAX
- Database: MySQL, MS SQL Server, Sybase, Oracle
- Operating Systems: Linux and Unix varieties and Windows
- MS Computer Science student at UMBC
When I consult on web development projects, I generally use PHP and MySQL: they're free, they scale, and both have an enormous knowledge base worldwide (and more importantly: on Google). I've done and enjoy doing Java, C#.NET, and ColdFusion consulting as well, however. For my full-time employers over the past several years, I've mostly used Java and its surrounding technologies: data layers, web services, queueing, telematics, real-time message processing, thick desktop apps, and a fair amount of database tuning.
I also have experience with AJAX and some "Web 2.0" technologies. The photography section of this website is written using semantic tags--aka "machine tags", essentially an RDFa triple store--CSS, PHP, and AJAX. The triple store is implemented using Flickr's machine tags, and images are also hosted there. (Creating a nasty dependency on Flickr, I know, but I'm confident enough in the Yahoo! folks to keep their servers up at least as much as my hosting provider!)
Additionally, I wrote a draggable map interface similar to Google Maps using JavaScript, AJAX, ESRI GIS software, Java, and ColdFusion. Unfortunately, I'm not able to actually show the mapping software since the company I wrote it for understandably wants people to pay for their services.
If you need help with a project and think I might be able to help, send me an email and we can discuss details.
Portfolio
Here are some links to work I've done. Unfortunately I can't link to some of the Java development because it's not really web-oriented, so you'll have to take my word for it.
Artromick's eMAR Software
Senior Software Engineer on the eMAR project. Primarily responsible for server-side related services using lots of Hibernate, JBoss, Oracle, custom serialization techniques, and a unique approach to data retrieval using a succinct graph dot notation similar to MVEL or OGNL.
PHH Arval's Onboard GIS System
I was a Senior Java Developer for PHH's GIS offering, aptly titled Onboard GIS. Again, primarily responsible for server-side services including real-time message processing (MQ and WebSphere), but also the above-mentioned Google Maps-like draggable maps architecture.
Seinberg's Flickr Semantic Tagger
A semantic tagging mechanism that uses your Flickr account and allows you to add/edit/removed semantic content in the form of machine tags in an easy drag-n-drop interface. This is still in pre-pre-alpha stages, and I haven't spent any time refining the interface, but it's stable and usable and -- if I do say so -- pretty neat.
Here are simple, clean websites I made for small businesses a few years ago.
Ramelle MaCoy
Ramelle is a hypnotist in Pennsylvania. He uses his website for contact information, to sell promotional DVDs, and to post information relating to his shows and hypnosis.
Property Professionals
My landlord when I lived in Lancaster, PA. PPI wanted a website to dynamically list and maintain their property information and for residents to submit maintenance requests. This website and its admin area doubles as both PPI's client-facing front end as well as its inventory system.
Tractor Trading
This website was done for Karl Diffenderfer and Shire Interactive. It is a website for selling tractors and tractor equipment online.






