Posts

Showing posts from May, 2011

Uber's Michelangelo vs. Netflix's Metaflow

  Uber's Michelangelo vs. Netflix's Metaflow Michelangelo Pain point Without michelangelo, each team at uber that uses ML (that’s all of them - every interaction with the ride or eats app involves ML) would need to build their own data pipelines, feature stores, training clusters, model storage, etc.  It would take each team copious amounts of time to maintain and improve their systems, and common patterns/best practices would be hard to learn.  In addition, the highest priority use cases (business critical, e.g. rider/driver matching) would themselves need to ensure they have enough compute/storage/engineering resources to operate (outages, scale peaks, etc.), which would results in organizational complexity and constant prioritization battles between managers/directors/etc. Solution Michelangelo provides a single platform that makes the most common and most business critical ML use cases simple and intuitive for builders to use, while still allowing self-serve extensibi...

SQL Server 2005 Hidden Install of Express Tools

A few weeks ago I was given the long-winded task of installing all of the necessary software on my new remote developer cpu at my shiny new job.  All went well until - GASP! - SQL Server 2005 refused to complete its installation. Now there were actually 2 problems with the install.  You see, it would hang while the status window read "Setting File Security" and it stayed there for what seemed like forever.  This was happening because the remote machine was connected to a network which was monumentally large (it's a pretty large organization) and the install was trying to find all the nodes in the network.  There's a patch for this type of problem that can be used with the installation, but if this is the only problem, the user can also just wait it out.  Which is what I chose to do.  And then the real problem showed up. After 2-3 hours of waiting (I had other work to do..honest) the installation finally "completed" by giving me an error message saying s...

Adobe Flex 3.0 - Passing parameters to event listeners - actionscript

So I just started this job, and I'm writing an application that lets users view photos and tag them, giving descriptions of the tags as well.  I was trying to add an event listener to a Text object, when I realized there was no way to add a parameter to it!  Because the addEventListener function goes like this: var itemToPass:Object; textObject.addEventListener(MouseEvent.MOUSE_OVER, callbackListenerFunction); there was no way to pass a parameter, except for the event object, which is passed automatically.  Of course you could use an anonymous function for the callback, like this: var itemToPass:Object; textObject.addEventListener(MouseEvent.MOUSE_OVER, function(event:Event):void {     callbackListenerFunction(itemToPass); }); And this will work in many cases.  But the underlying problem is still there!  You see, if you change the value of itemToPass later on in the current code block, then the value that's passed into callbackListenerFunct...