My name is Ismael Chang Ghalimi. I build the STOIC platform. I am a stoic, and this blog is my agora.

Instance Migration

This message was sent to all our Kickstarter backers this morning:

We have now started the process of migrating instances to the new Cloud Foundryplatform recently released by Pivotal. This process will take a week or two. During that time, instances will be unavailable. Once the migration is complete, instances will run the latest version of our software, which provides a brand-new user interface, and many features that we’ve been working on over the past couple of months.

Clearly, this migration has taken a lot more time than originally anticipated. There are a few reasons for it. First, we moved from one database to another (from PostgreSQL to ElasticSearch). Second, we moved from a single-tenant deployment model to a multi-tenant one. Third, our recent Dojo sessions introduced many new features that added some instability to the product. One thing leading to another, we could not get to a stable release that would allow us to upgrade instances earlier. Please accept our apologies for this delay.

That being said, we ran our last scheduled Dojo session this past week, and we’re not planning to have another one before September. Therefore, we have two months to stabilize the product. We’ve clearly passed the Minimum Viable Product line (and sailed far beyond), and we’re now focusing all our resources on finishing the features that we started and fixing all the bugs that we can find. In other words, we’ll have a busy Summer…

In a week or two, you should get your new instance up and running. It should be a lot more stable than past instances, with many new features, but we won’t be able to guarantee the integrity of your data for another month or two. Therefore, during that transition period, you should plan on making backups of your data on a regular basis. Fortunately, we implemented a way to do that in a single click of the mouse. We’re also testing the scalability of our platform in pretty aggressive ways. At present time, we have an object with 1 million records (1GB), and we should be able to get to 10 millions pretty soon (10GB), with the rather ambitious goal of reaching 1 billion (1TB) by the end of the year.

While we’re finishing this migration, you might want to take a look at some of the new features that will be available soon:

Thank you for your patience and support!

The STOIC Team

Instance upgrades

While our software is getting more and more robust, a lot of work remains to be done before we can upgrade the instances of our Kickstarter backers and early adopters. Part of the delay is caused by Cloud Foundry, which was recently upgraded from its original beta configuration. The new configuration introduced quite a few changes. Many of these changes are rather welcome, but others are a bit restrictive, and we’re still making our way through them. We hope to be in a position to upgrade all instances within a week or two. Stay tuned…

Quick update

The past few days have been pretty busy, hence our recent radio silence. With Jim away for a week, we’ve paused the development of our email automation framework, with the goal of resuming it early next week. In the meantime, we’ve been working on advanced relationships, dashboards, UI re-factoring, password encryption, and a few other things. Nothing fancy to show yet, but this should change pretty soon. With all these modifications, we’ve decided to delay all instance upgrades to next week. Stay tuned…

All instances upgraded

In anticipation to tomorrow’s poll of our backers and beta testers, all 200+ instances have been upgraded to the very latest version of our software (build 425, spreadsheets 59). Kudos to Hugues for having implemented this amazing provisioning framework on top of Cloud Foundry.

This is really, really cool…

We shipped, on time!

Earlier today, we shipped STOIC to our first 184 customers.

To be more precise, at 3:43 AM PDT, the last customer had received a notification email indicating that his/her STOIC instance was now ready for use. But guess what? 3:43 AM PDT on Thursday, March 13 2013 was 11:43 PM SST in Pago Pago on Wednesday, March 12 2013. So, technically, we shipped at the originally-promised date. In my 14 years career in this industry, it’s the very first time that my team ships a product on time. I can hardly believe it…

To make things even better, I wasn’t even there. As you can see on this log of last night’s events, I was deep asleep when all this happened. All the hard work was actually being done by Hugues in Singapore and François in France. Altogether, it took us 9 hours to ship, and we went through it without screaming or shouting, and barely any hint of stress. Then, when I could not help much and needed some rest, I transitioned over to my teammates, and they ran through the finish line, on their own. Anyone who has worked with me in the past few years might have a hard time believing that I could delegate the most important pieces of work that we have to get done, but somehow, I managed to find a way to do it, and nothing could make me more proud today…

To be fair, most of the praise goes to Hugues, who not only implemented the automation framework we needed to deploy and upgrade 184 instances on Cloud Foundry, but also had the fortitude to push for a massively distributed architecture that has never been attempted before for a platform like ours. And he did that largely against the informed advice of Pascal, who was legitimately concerned that such an architecture could create massive administration overhead. We still don’t know whether it’s the case or not, but Hugues clearly demonstrated that the setup and upgrade process could be built, because there is no way that we could have manually setup 184 instances in an hour like we did today…

While I’m totally ecstatic to have shipped a product on time for the first time in my career, I am immensely proud that we could do that with the kind of distributed authority that we’ve been trying to establish in the company since Pascal suggested that we should learn from the successful experience of Valve Software. While we still have much to learn about how to scale such an organization, it seems to be working a lot better than anything I’ve done in the past, and it’s definitely a lot more fun.

So, without further ado, a huge congratulations to Hugues for a remarkable piece of work, a huge thanks to François for some pretty boring yet necessary testing and notification work, and a huge thanks to all our customers for giving us the chance to do all this and to try all these new things.

We did it! On time! Awesome!

Setting up instances

Here we are, setting up the first 184 instances for our Kickstarter backers. As we’re going through the process, we’re finding quite a few things that need fixing at the last minute. This post will be regularly updated as we go through them one by one.

5:50 PM Updating meta-data import process to exclude confidential information
5:51 PM Testing that the new meta-data is working
5:59 PM Posting update on Kickstarter
6:10 PM Updating order in which original spreadsheets get imported
6:35 PM Upgrading to new version of workflow engine
6:37 PM Starting to record known issues in STOIC Support
6:42 PM Automating import of confidential information into stoic.com instance
7:24 PM Testing reset of database
7:25 PM Updating list of libraries
7:33 PM Updating list of perspectives
7:37 PM Debugged database reset from user interface
8:33 PM Testing automated reset of database for new instances
8:58 PM Created first new instance
8:59 PM Debugging incomplete spreadsheet import
9:04 PM Creating batch job to automatically set environment variables
9:34 PM Tested automatic setting of environment variables
9:35 PM Testing first new instance
9:36 PM Tested authentication framework
9:40 PM Tested various applications, objects, and perspectives
9:42 PM Initiating creation of Tier 1 instances
9:59 PM Reseting database on stoic.com
10:04 PM Added new partners
10:05 PM Tested various pages on stoic.com
10:06 PM Reviewed click-through user agreement
10:15 PM Created four new instances
10:17 PM Troubleshooting new instances (missing applications)
10:22 PM Tested second working instance
10:31 PM Debugging batch job to automatically set environment variables
10:54 PM Fighting against recent changes made to VMC
11:29 PM Making some progress with VMC
11:31 PM Preparing to transition over to French team (under 15” of snow today)
11:33 PM Listening to Gonzales Solo Piano II
11:52 PM Transitioned over to French team for well deserved rest
0:39 AM Started deployment of first batch of 72 instances
0:45 AM Slowing down to give Cloud Foundry some breathing room (gateway crashes)
1:03 AM Fixed three corrupted instances
1:04 AM Started deployment of second batch of 72 instances
1:05 AM Updated instance deployment algorithm (no more than 3 in parallel)
1:50 AM Deployed 155 instances
2:21 AM Completed installation of all 184 instances
2:22 AM Upgrading all instances to version 321
2:23 AM Upgrading all instances to latest meta-data
2:24 AM Checking environment variables
2:32 AM Checked that new instances have the right applications
2:53 AM Checked that new instances have the proper meta-data
2:54 AM Starting all new instances
3:08 AM Tested all 184 instances
3:14 AM Completed last automated job
3:22 AM Starting to contact all Kickstarter backers who applied for an instance
3:43 AM Contacted all Kickstarter backers who applied for an instance
6:06 AM Taking over from France and Singapore teams
6:53 AM Listening to the Brandt Brauer Frick Ensemble

Investing in STOIC

Many backers of our Kickstarter have asked us if they could invest in STOIC. While we would love to make that possible, it’s a little bit tricky, especially if we want to allow investors from outside of the United States. We’re still looking into it, but in the meantime, you can invest in some of the applications that will be developed during Dojo sessions.

For $10,000, you get 1% of all sales of an application, for a period of four years, starting from when the application is released to the general public. This includes all sales of the application made by STOIC and its distribution partners, in all countries. Up to 25% of all sales will be redistributed that way, and another 25% if we get 25 participants to a session.

Right now, the most promising application has to be Customer Relationship Management (CRM). We already have four people registered for the session, plus an extra one registered for the very first session, which will focus on Marketing Automation, and which outcome will be folded into the CRM application. These five participants bring an amazing wealth of experience to the project, and we expect CRM to quickly become our flagship application.

So, if you want to support us, consider investing into STOIC CRM. You can do it now through Eventbrite by selecting the “Additional Royalties” ticket type. Purchase of royalties point does not require attendance to the session. And we have a very special gift for the first Dojo backer…

Thank you! Thank you! Thank you!

Our Kickstarter just closed. Here is what it came down to:

  • 60 days
  • 279 backers
  • $63,450 pledged
  • 253% funded
  • $227 average pledge
  • Lots of work
  • Tons of fun
  • Many new friends

None of that would have been possible without your support, so, on behalf of the entire STOIC team, I would like to extend a massive “thank you”! Together, we’re changing the way business software is designed, developed, and distributed, forever.

Today, we made history.

Next week, you will receive your STOIC instance. As mentioned before, you should expect nothing to work. We still have many features to implement, and many more bugs to fix. But we will work together to finish this product as quickly as possible, so that you can start building really cool apps with it.

Please stay tuned for more. In the meantime, I’m off to a customer demo…

Have a fabulous week-end!

Thank you.