Tuesday, December 23, 2014

versioning

Versioning



Elemcam is using a modified semantic versioning scheme. Summary:
Given a version number MAJOR.MINOR.PATCH, elemcam will increment the:
  1. MAJOR version when user interface is altered in anyway beyond the cosmetic,
  2. MINOR version when a capability is altered without any change to the user interface, and
  3. PATCH version when bugs are fixed or minor cosmetic updates to the user interface. 


Because elemcam must always be backwards compatible, semantic versioning out of the box does not apply. 

Tuesday, December 16, 2014

planned features

Planned Features



  1. Optimizations to allow for quicker uploads/downloads
  2. Audio detection and alerting with configurable sensitivity.
  3. Starter subscription with free seven day trial.
  4. Face detection and alerting.
  5. Upgrade to the adaptive bitrate algorithms to include "catch-up" metering.
  6. Configurable motion detection regions.
  7. Device configuration via elemcam.com
  8. Advanced scheduler to allow for timed recordings, detection's, and uploads.
  9. More hardware support including flash and secondary cameras.
  10. Configurable audio prompts emanating from the device.
  11. Configurable flash prompts emanating from the device.
  12. Upgraded content management via elemcam.com
  13. User configured directory selection - not just internal/external cache locations.
  14. One time additional quota packs purchases.

Thursday, December 11, 2014

motivation

Good things come to those who ... code



Plain and simple, I like to build things. Normally I run out of steam before a product is complete. I've often wondered about why that is. I think I can distill it down to one factor : passion.



On many of my projects I just run out of steam because I just don't fully believe in it. For instance my last project I was going to write an app that would allow you to compare hospital prices for common procedures. I completed the back-end, seeded it with open source medicare and geospatial data. Thought I would sell it for .99 cents on the app stores. But ran out of steam when it came to building the clients. It dawned on me that never again would I embark on a project I wasn't going to be all in on.

Fast forward half a year and I am fussing around with with a few of my IP cameras that were misbehaving. The network configuration on those things are typically a nightmare, and setting up a DVR system never materialized for me. I was thinking of purchasing a couple of Dropcam cameras, but really wasn't digging the overall cost for the system. Then I thought, heck I've got a few Android devices laying around, I'm sure someone has written a surveillance service for Android.  At a minimum I was looking for a discreet recording, motion detection, and most importantly cloud DVR. To my surprise there was nothing out there that fit the bill. Usually I would just move on and look for the next best thing. But in this case I just didn't want to settle. So I sat down and penciled in the first outline that would become elemcam.

Launch

http://blog.phdlabs.com/failure-to-launch/


Hello World



Elemcam just launched and I needed a platform to share upcoming features, bug fixes, and some developer centric observations. Warning! I am an engineer first and foremost so bare with me on my grammatical mistakes.

I'm going to discuss motivation in my next post but I wanted to quickly note that launch does not mean done. For elemcam, launch has always meant that the core product is stable and polished enough to be exposed to the world. 

From the very beginning I targeted a certain feature set for launch and was tireless in containing the creep. Now that launch has occurred and the first goal achieved I will be working on a set of exciting features which I will outline in an upcoming post. 

The core mission behind elemcam is to provide a simple and secure surveillance platform. With that in mind all upcoming features will be weighed and prioritized against the core tenets of simplicity, security, and stability.