My Articles & Videos

The Mike De La Loza Company

I'm Mike and I work independently as a software product developer. I started on December 13th, 2010 in Monterey, California, and now live in Anza, California. The scenic pictures you see in the background are from those two small towns.

I'm available for hire as a contractor.

My main development machine has 32GB of RAM, 500GB of SSD space, 4 processors, and two 23 inch monitors. It's ready with Windows 7 and can run multiple Linux VMs without any performance issues. Additionally, I have an 8GB RAM MacBook Pro that dual boots into both Windows 7 and OS X. I understand why log(n) is better than n and way better than (n^2). I occasionally produce instructional videos or articles on my blog. One of my blogposts is the #8 Google search result for "red black trees python".

Tech I work with: Linux, .NET, Apache, MySQL, Perl, Python, PHP, JavaScript, OpenGL, C/C++, Java, Scala, Visual Basic, MongoDB, PostgreSQL, Git, Ruby on Rails, Haml/Sass, jQuery, CoffeeScript, Android and Objective-C

I'm familiar with the platforms and APIs of EC2, Linode, Heroku, Smugmug, Chargify, and







Project Description is a web archival tool. It allows you to take a snapshot of any public page on the internet, and to save that page in your Capsul8 account for later viewing. The page is "frozen" in the state on the day and time you captured it. My role was to create this app from scratch. I laid down the original SQL schema, and wrote the archiving tool that takes incoming page archives, unzips them, and sends them into S3. I also wrote the original viewing GUI that has chapter-browsing features so that the user can group page archives, or chapters, into capsules.

Project Description is am ambitious web product that gives small businesses a dozen marketing tools that they would otherwise have to find across multiple products. It allows Groupon-like offers to be created and sent to customers, complete with credit card transaction support. A variety of other marketing tools are available. My role on this projet was brief due to costs, but I revamped their Image Editing tool. I integrated the Aviary editor so that users could upload and then perform a variety of transformations on an uploaded image. Or, they could pick from stock photography provided by Locbox and edit those images to meet their needs. These images are used when business owners create offers or newsletters to send to customers.

Project Description

PackageWright is a desktop application targeting the MCAD and ECAD engineering industries. It acts as a synchronization tool to go back and forth between engineering designs in separate MCAD and ECAD software tools. My role was to improve the matching toolkit that attempts to intelligently match 3D models of electrical components (capacitors, microprocessors, microcontrollers) with 2D ECAD footprints in an ECAD design. The desktop software communicates with a web repository of thousands of components, and my code had to intelligent query that repository, then rank the results as matches. Most of this task could be done by taking industry-recommended footprint hueristics and scoring prospective matches of pins and footprints. It tooks weeks of trial and error with the director of the project, but gradually their matching functions were greatly improved. There is a C++ core to Package Wright but all of my work had been done in Python.

Project Description

Bakecrafters is a brick and mortar food distribution small business. It serves hundreds of clients including schools and coffeeshops throughout the east coast. They have a database of their products and orders, and my job was to implement a cutting edge search engine for their prospective customers and also for their internal salesman. The search engine launches and searches immediately, in real time, as you type or make changes to your search criteria without you having to hit an Enter button or click 'Search' button. After every successful search, the browser history is updated, and the URL is made unique to your search criteria for easy cut & paste. The salesman for the company can also select items from their search result and prepare paper-friendly PDFs of the products, to print out and take in hand to leads. The PDF integration was done with the DocRaptor web service. Separate from the SQL database, Bakecrafters also has hundreds of images for their products, so I built a special admin interface for mass-uploading zip files full of images. Image processing is done with the Dragonfly gem.

Project Description is a directory of wedding photographers. Photographers create a public profile with a portfolio and contact information. Brides then come to the site to search for a photographer that is a good match - by cost, location, and of course quality of photography. This business is a classic B2C ambitious startup, created by two Dartmouth graduates. My immediate goals were to speed up database performance after the worldwide city database grew to hold hundreds of thousands of cities. I then implemented latitude and longitude search capability, so that a given iPhone's GPS coordinates could be used to find nearby photographers on the iPhone app. I moved the same functionality to the website so that web users could search within a given radius of the city. I added "infinite scrolling" so that users could get an ongoing list of photographers as they scrolled down, similar to Google Image search. I wrote the original integration with Smugmug, so that photographers could sync their smugmug profiles with their Snapknot portfolio.

Project Description is a massive form automation app, and much more. It receives 750,000 requests a day from hundreds of school districts in the United States. Most K-12 teachers do professional development for a variety of reasons - salary increases or legal requirements - and this app tracks their progress. Despite some of the code being 10 years old, it is a phenomenal achievement in dynamic form generation. Users can build their own input forms from scratch, almost like a modern web developer does by writing the SQL and input forms from scratch. Only, My Learning Plan lets the user build forms with a web GUI, without a programming language. Other products in the company have taken this concept to a new level, but this remains the main backbone for the company. My job has been to take over core responsibility for this application. I've written about 20,000 lines of business logic for this app to begin the labor of porting old COM+ and classic ASP code to the "new" .NET world. I've had to research how to put a "hole" in the bottom of their ASP that allows information to flow in and out of the .NET and Entity Framework (ORM-mapped) world. Furthermore, I've begun setting up REST web services and friendly .NET assemblies for internal developers, so that other applications in the company's infrastructure can take advantage of this database backbone with modern interfaces.

Project Description

Quagress is my product. I am product designer and developer. It is an app for tracking metrics in your personal life. You can use it to track money spent eating out, weight lifting progress at the gym, how fast you can swim the butterfly stroke 100 meters, or how happy you feel on a scale of 1 to 10. You can track anything quantifiable. It provides a visual graph which you can pan across and highlight to see how you were in a specific week or month this year. Your data logs can be private, shared with friends you specify, or published publicly for others to see at a private URL. As part of this app, I created a 2D Graphing library from scratch, using the HTML5 Canvas technology. Quagress also has Android and iOS interfaces in development.

Project Description

Glider eliminates distracting emails for $9/month. For customers to get over 50 emails a day, Glider moves emails sent by robots, typically by 3rd party merchants, into a separate folders, skipping the Inbox, so that the user may browse these emails on their own time. Emails from friends of theirs take a much higher priority and are left in the Inbox. Users barely interact with the website at all - most of the mail processing happens on our servers which monitor email 24/7, and we deliver a graphical user interface within Gmail itself with our Google Chrome Extension. The user never has to leave Gmail to make payments or see account status, providing a much slicker user interface than what users typically get with 99% of web services. Glider has been the highest quality product that I have worked on. I have prepared both functional and technical specifications to guide development and catch surprises, employed Trello liberally to track progress on features, and I've written over 80% of the code myself. I've written extensive background job processing which interacts with Gmail through their IMAP interface. I've also written the Google Chrome Extension from the ground up, having to learn Extension policies along the way, so that our application does not conflict with other Gmail Chrome Extensions like Rapportive or Boomerang.

Technologies Used

Ruby on Rails 3, MySQL, Amazon S3, Heroku, jQuery

Technologies Used

Ruby on Rails 3.1, Aviary Image Editor, Coffescript, Javascript, jQuery

Technologies Used

Python, Eclipse, Qt

Technologies Used

Ruby on Rails 3.0, CoffeeScript, Sass, DragonFly, DocRaptor, jQuery, Haml, HTML5 History

Technologies Used

Ruby on Rails 2.3, MySQL 5.x, Spatial coordinate support, Paperclip, Linode, Chargify, Smugmug, HAML, REST, jQuery

Technologies Used

.NET 4.0, ExtJS, Entity Framework 4, C#, IIS 7.0, Classic ASP, Visual Basic 6.0, COM+

Technologies Used

CoffeeScript, Rails, Heroku, MySQL, Git, Canvas, HTML5, jQuery, HAML, S3, Jammit, iOS, Android

Technologies Used

Email, Gmail IMAP, Google Chrome Extension, Stripe, Bayesian Classification, Ruby on Rails, CoffeeScript, SASS, Delayed Job, Heroku