Hi,
I wasn't using tensorflow demo code - it is too demo-specific and written in typescript (which is nice, but ...).
As of programming, I coded gradient boosting in an hour or so - as I've done that many times before in python, this was an easy part. Later ~2 hours were spent on adding parameters / features to GB.
Most of the time was spent on proper visualization (different plotting libs are slow or too complicated, so I finished up with doing everything with canvas using some tricks), some code optimization and correct layout + support of mobile devices (so demo should be working on most mobile devices). And this took a week or even more.
To sum up, time is usually spent on something ridiculous (wrong event handling, wrong plotting, wrong layout), not on math or machine learning :)