We want to propose an alternative to open source code; open source your tech decisions.
BIME is delivering Business Intelligence As A Service and I am going to reveal all our secrets.
In technical terms, BIME lets its users connect to several dozen databases & web services, to interact directly with the source or import the data into cutting-edge hosted analytical stores. All the user interactions go through a distributed engine that can run complex calculations in real time, concurrently and in parallel for thousands (millions?) of users. Our UI is also solving and abstracting away a lot problems; it lets our users express their data questions with the fewest possible technical roadblocks, on top of arbitrary data sets, and render the results in flexible and customizable data visualizations.
I didn’t write the last paragraph to show off. I wrote it because our curse is that most of our hard work is dedicated to hiding our hard work. Good design is invisible. This is a bit frustrating as for the first time in our short history, we are 100% happy with and proud of our stack. We made a lot of mistakes in the past, but we learned a lot from them. We also learned a lot from the work and knowledge of others through open source projects, dedicated bloggers and authors. So this is our contribution, to share a bit of what we learnt and who we are, and contribute to the technology ecosystem background noise.
The secret hope is that more tech companies will run into the same processes so we’ll have a documented catalog of what technology is used, how and to what purpose. Same for the rationale behind UX/UI design decisions.
Our plan is to publish a series of posts organised in the following 2 categories.
We are going to examine the various technologies of our stack. Explain why we chose them, how we use them, our feelings about them. We’ll likely be bashing a couple of them too and hopefully we’ll trigger some flame wars.
We’ll talk about Scala, Akka, the JVM, Typescript, Angular, Rails, nodewebkit, compression algorythms, AWS, hadoop, columnar databases, D3 and how everything is put together to play the great BIME symphony. And yes, I know I sound like an hipster.
No stack is perfect but we are damned proud of ours and ready to explain why.
Because we have to face it: we used to suck at it. So the first step is to acknowledge that. The second is to take action. We read all the books, blogs, theories, went into thousand of support tickets, talked with customers, interviewed, user tested and spent thousands of hours to totally recraft our UI and UX.
In no way do we believe it is perfect right now, but we strived for perfection. Deeply. We give French names that exist in English to all our projects: this project was spontaneously called “chef-d'œuvre”. Every single pixel on the screen, every animation, every interaction has gone through a conscious decision process and that is exactly what we want to document.
Actually, very little literature like what we envision exists publicly. If you have seen the peepcode screencasts with Ryan Singer and Neven Mrgan or the upper excellent http://www.useronboard.com/ you will have an idea of where we want to go.
So stay tuned for the first posts in the series.