we at Valohai (https://valohai.com/) do check all the mentioned feature boxes and do serve a lot of startups
* data stores: automatic download/upload to/from AWS S3, Azure Blob, Google Cloud Storage, OpenStack Swift or stores that implements S3-like interface
* interactive environments: we do have notebook hosting with automatic orchestration
* training: history, comparisons, parameters, hyperparameter tuning with Optuna, Hyperopt or custom optimizer (https://github.com/valohai/optimo); additionally visualizations about training progress and hardware resource monitoring
* serving for production: our deployments allow you to build, push, manage and monitor HTTP/S based services on Kubernetes clusters (https://docs.valohai.com/core-concepts/deployments/) but you can just as easily download your model and deploy it yourself as your use-case requires
* a permission system: we have organization management with teams and such, but your mileage may vary depending how fine grained control you need
* software heritage: all runs are containerized and how they was ran is recorded so everything is reproducible if the base image and data exist at the original source, we also keep track of data heritage (what files X were used to produce these files Y https://valohai.com/patch-notes/2019-09-03/)
Essentially your whole machine learning pipeline under one roof; from data preprocessing and training to deployment and monitoring. Also, we are technically agnostic, you can just as easily run Python/Julia/C++ or Unity engine to generate synthetic datasets (https://www.youtube.com/watch?v=QxMuWuk_W10)
not self-service or free though; our technical support team handles all the setup and maintenance
let me know if you have questions about Valohai or MLOps (https://valohai.com/mlops/) in general, I've seen quite a lot of projects and pipelines as I work at Valohai as an ML engineer helping our customers to setup end-to-end ML pipelines
Joel is definitely not alone, I agree wholeheartedly with everything mentioned in the slides.
I'd like to highlight that Notebooks do have use in pre-production while your are exploring data subset and trying out your initial hypothesis. But please, don't throw away decades of software development best practices and reliability for mere development convenience.
Unity is very popular for creating 3D mobile games; easy exporting to all the major platforms and a visual editor. If you are a junior programmer, I'd recommend Unity even if you are doing 2D. More advanced developers might find themselves fighting against the design philosophy of components and game objects in Unity, kinda like Entity System, but not quite. The engine design makes debugging harder. Note that all Unity games run in a 3D scene even if it's purely 2D so the raw performance and battery drainage is worse than in pure 2D game engines.
Haxe+OpenFL, Haxe+OpenFL+Flixel and Haxe+OpenFL+HaxePunk combos are all good if you need to do lower level stuff like manipulating video buffer, which is rare but can give you pretty unique visual effects. Multiplatform support is working, but I wouldn't say it's great in these.
Cocos2d-x is good for physic based 2D games. Good performance and a great tool in the hands of more advanced programmers. Multiplatform support is better than in Haxe but worse than in Unity.
I'll also note that development environment setup is a lot more painful in Haxe and Cocos2d-x compared to Unity.
Source: my experience. Consume the information with a grain of salt.
* data stores: automatic download/upload to/from AWS S3, Azure Blob, Google Cloud Storage, OpenStack Swift or stores that implements S3-like interface
* interactive environments: we do have notebook hosting with automatic orchestration
* training: history, comparisons, parameters, hyperparameter tuning with Optuna, Hyperopt or custom optimizer (https://github.com/valohai/optimo); additionally visualizations about training progress and hardware resource monitoring
* serving for production: our deployments allow you to build, push, manage and monitor HTTP/S based services on Kubernetes clusters (https://docs.valohai.com/core-concepts/deployments/) but you can just as easily download your model and deploy it yourself as your use-case requires
* a permission system: we have organization management with teams and such, but your mileage may vary depending how fine grained control you need
* software heritage: all runs are containerized and how they was ran is recorded so everything is reproducible if the base image and data exist at the original source, we also keep track of data heritage (what files X were used to produce these files Y https://valohai.com/patch-notes/2019-09-03/)
* labeling system/UI: full web UI, command line client and a REST API (https://docs.valohai.com/valohai-api/) but no labeling tools though
Essentially your whole machine learning pipeline under one roof; from data preprocessing and training to deployment and monitoring. Also, we are technically agnostic, you can just as easily run Python/Julia/C++ or Unity engine to generate synthetic datasets (https://www.youtube.com/watch?v=QxMuWuk_W10)
not self-service or free though; our technical support team handles all the setup and maintenance
let me know if you have questions about Valohai or MLOps (https://valohai.com/mlops/) in general, I've seen quite a lot of projects and pipelines as I work at Valohai as an ML engineer helping our customers to setup end-to-end ML pipelines