- Started 100 days of Code on 12/31/2017
- Things I’ve Learned / Worked on
The Tasting Party web app was a new concept that would allow customers to create and host their own tasting event using a wine starter kit that my company provided. The main features of the tasting party app included:
The main features of the tasting party app that had to be included were:
- Create a wine tasting party as a host
- View all your tasting parties as a host
- Edit an existing tasting party as a host
- RSVP to a wine tasting party as an invitee
- Send email notifications for upcoming parties, RSVP emails to host and invitees, event reminders, changes to the parties
I decided that we should build this app using a REST API approach, we prototyped the whole project in a 2-night hackathon using the MEAN stack. I enjoy rapid prototyping before building out a project because you can test out the technology and help to understand where you might get stuck. I was the lead developer on the project and had 2 other front-end developers on the project.
- Appcelerator Arrow – to build the API’s using NodeJS – hosted in the cloud
- Postmark – Transactional email for web apps with a really nice REST API
- Compose – A cloud-based database service with backups, we used Mongodb
The app’s features include:
- Browse your favorites and not for me list
- Browse your purchase history list
- Browse your ratings list
- Quickly snap a photo of a wine that you are drinking and rate it, favorite it, or add it to your dislikes list
- Purchase a wine from the above lists or one that you take a picture of
The app has a feature to allow customers to take a picture of a wine bottle and get more information about the product and/or purchase it. I built an API wrapper using the Appcelerator Arrow platform to integrate the Tineye Image Recognition API into the mobile app. The API allows the customer’s photos to be backed up in the cloud, which also allows the Direct Wines team to go back later and tag any pictures that were not matched at the time the customer took them. The photos are also sent up to tineye for image recognition matching. I built a nodejs app that allows Direct Wines to easily upload reference images to the image recognition database and also get reporting on successful matches and tagging back customer’s photos to the database to help improve the match rate.
This was a fun project that allowed us to work with Third Party REST API’s, Mobile apps and learn new technology, all with only 2 people on the app development team. My future goal would be to convert this to a React Native app.
The project took about 6 months to complete, which included analysis, requirements, design and development. We deployed this app to the US and UK app stores in May 2016.
The Case Cobbler web app an internal tool we use to build product case images using a set of templates, this was originally a PHP app developed by an outside agency. I decided to re-develop the app using the MEAN (Mongo Express Angular Node) stack.
The old tool was limited in features, so I took the rebuild as an opportunity to add new features that included:
- Ability to easily add new templates
- Automatic resizing (we have 3 different sized images, the previous tool only produced 1 image and a designer would have to resize the other 2)
- Case images are uploaded directly to production when completed
- All completed cases configurations are stored in MongoDB
- MongoDB (local instance on the server)
- AngularJS for the front-end views
This project took about 1 month to build and was very challenging, I had never worked with ImageMagick before and had only a few interactions with Node. What drew me to node was the fact that I could access the file system and use ImageMagick in the command line to do all the image processing. I also used Node to move the completed files to production, the team was very happy with the new tool.
The My Wine Cellar project was developed using REST API’s and the AngularJS framework. The goal of the project was to give customers a place where they could record favorites, rate their purchases, see all their purchases in one list, add their dislikes and quickly reorder their favorite wines. The project has been very successful in a number of ways.
I was responsible for pushing the backend team to implement REST API’s as it would give the front-end team more flexibility in building a better customer experience. The REST API approach has definitely been the correct one and since this project we have been able to build more exciting features using the REST API’s and different JS frameworks.
The project took about 3 months to complete, it was built to be used by all markets (10 websites) and went live in April 2013.
I was the lead on the mobile web strategy (project management, design, build and maintaining) for 8 mobile websites for US (4 sites), AU (3 sites), and HK (1 site) markets utilizing Mobify Co-development solution and manage vendor relationship.
- Mobify Cloud Software
- NodeJS build tools
The project took 1 year and was completed in 2013. The project was such a success that Mobify did a case study on it, you can watch it here.
The project took 9 months and was completed in 2011.