Thanks for taking the time to comment, happy to hear that! Haha well, I agree that I'm not sure if those are appropriate for a talk at the Dart Summit, but I can try to give some insight here in this thread instead.
Why?
It's a bit of a long story this whole thing but I try to summarize a little bit. I think it's easier to understand if you get some context, I started to study electrical engineering / computer engineer at the University, starting at the very low level of electronic and overtime worked my way up the stack or so to speak from doing PCB design and programming MCU's/FPGA's to a growing interest in computer science, or at least the practical side of CS. As I learned more programming I also got very interested in programming languages, also computer architecture and operating systems. So much fun and interesting things to learn about. To get a better sense I could mention my bachelor thesis, it was a bit overkill for a bachelor thesis but I designed a Network on a chip (NoC) design specification optimized for use on FPGAs. If I could have picked a "dream job" at the time I was studying I would have wanted to build a new processor architecture, or a programming language. Neither of these options felt very realistic based on where I lived and the general state of the markets of so to speak, both areas are mostly "good enough" that it's very hard to introduce anything new and even if you would try it costs a lot of time and money.
So... What can you do, around year 2012 in technology that is somehow similar to these areas and at the same time where it's possible to implement a business model that can support all the development effort? Because I also thought starting a business would be fun, to not be restricted to a single narrow engineering role and instead get the chance to build something new. My answer? "The cloud"... I thought a good alternative was to build a PaaS platform, although that idea did not really come until after I had learned about Dart I think. I remember the first time I saw a YouTube video from Google IO when they talked about App Engine, long before I heard of Dart, and I have since always thought that the technology behind it seemed very interesting, I think you can say that I found the whole concept and design of a big system that manages all these resources mostly autonomously very intriguing. If you think about it, building a PaaS platform from the ground up is not that different from some form of cross between computer architecture and an operating system, although the components involved are somewhat different. It's not the same, but maybe you can see the similar appeal. With this said, I did not get the idea of building a PaaS until after I discovered Dart and I was not looking for a reason to build a PaaS at the time either. I can not say exactly why I got the idea, but I think it was the opportunist in me who saw so much potential in the Dart programming language on both the client and the server, and yet Google was focusing all their resources on Dart in the browser. I guess it was that perceived window of opportunity that made me get the idea and start the journey that has lead me to where I am today.
From hobby project to venture funded company to today
My involvement got more serious over time during a 2 year period from the summer of 2012 and forward. Those first two years I more or less was studying on paper to get financial aid and loan from the government while in practice I was spending most of my time work on this project... Some of the things I did in the very early days never made it into the wild or was later replaced/redesigned. I did for example implemented an SCGI server for Dart that was never released publicly long before Dart's http server came alone, the release of the http server package of course made using SCGI pointless (and having a built in http server is a better way to do it I think). I also more or less implemented two different container technologies on top of existing constructs on both Linux and FreeBSD to later replace them with tooling around Docker containers to fix/improve init, networking and storage of those instead (again, when I did my own implementations Docker did not exists). It was not because Docker added anything critical really, it was more about less maintenance and updating the technology over time, there are of course various benefits of using the "de facto standard", Docker in this case. I should add that at the end of the summer / start of autumn 2012 a friend of mine joined me in this project that would later evolve into a company, Andreas. During the summer of 2014 Andreas and I got into a 3 month accelerator like program, we basically got three months with pay to work on this project and pitch afterwards to investors. Again skipping some details, we got that investment at the end of 2014 and started working more officially with this as a full time job at the end of that year even though in practice we had been working full time for a longer period. Andreas later left the company in June 2015, I will not go into details here but it was of course a little sad that it ended up that way, but it was fun the time it lasted and we went our separate ways on good terms. From last summer up until now I have done loooots of development of the things described in the architecture overview above, the homepage, the dart API server, the client side lib, the RPC layer and many more things has been developed this last year, it literately feels like the time is just flying away. Anyhow it's very nice that the service is up now since the end of June and I have lots of new interesting stuff in the pipeline for the future!
Open source and business
This is a topic that I have studied quite closely over the years, as this post already has gotten a little bit out of hand I should try to keep it short. There is no plans to open source the core technology at this time. I would find it interesting and fun to do so, but I'm doubtful that it would be a good move from a business point of view. In this particular case you could also question the usefulness, as our system is designed for running on a very big scale, certain design decisions involved might not be optimal for a sort of single developer setup. It's a fairly big distributed system, and with any such system there will always be lots and lots of trade offs, because by nature you can't optimize for every use case. So yeah even if we would open source everything, I'm not sure how useful the core system would be, for most people I think it's most useful when packaged up and delivered as a service.
Something that I am considering however, is to maybe open source the client library to interface with the platform and maybe also whole CLI app. Those pieces I feel could be more useful and also less "risky" for what it's worth. I personally like the idea of a service that provides an open API and an open source client lib even though the core remains closed behind an API. Having the option to do some small custom things on your own I think can be useful. I have not fully decided on this subject yet, but we'll see, the client lib and CLI app might get open sourced. I have also played with the idea of open sourcing the company website, not the SPA app but the www site, not sure if it would be wise or useful but I have thought about it.
Cheers, Robert