What Is SANE?

The SANE Stack is a JavaScript full stack CLI that lets you rapidly create production-ready web apps using Sails and Ember. Today I got some time and interviewed Markus Padourek. He's the creator and leader of SANE.

If you're interested in getting started with the stack I created a few tutorials. You can check out my one-to-many relation tutorial here. As well as my five tips when working with routes on Sails.js. Both of these tutorials will get you up and running quickly.

For today's interview I decided to conduct it by email.


Erik: Can you tell us a little bit about yourself? What do you currently do?

Markus: I am originally from Austria, Vienna and I moved to London about four years ago to come and study for my Master’s degree. I really started with web development with jQuery 1.2.6/1.3 when I was in high school. Since then I've been doing web development on and off. Through the university here I started to work with Artificial Labs (formerly ConceptMill) almost three years ago. This is where my dive into open source really started.

I recently finished my Master’s and started a new job at Thought Machine. It's a great place to work and I have some awesome co-workers. They've kept me very busy over the last few weeks.

Erik: You are a very active contributor to many open source projects. Why do you spend so much time doing it? What's your most favorite open source projects?

Markus:Some of it is purely altruistic, it feels good when other people have some success partly because of work you have done. Some of those people even come back to thank you which is super nice!

When I started with open source a lot of projects had this ‘awe’ factor. I remember when I first saw Sails.JS and the video they created back then. I thought that it was a really cool project and I wanted to be a part of it. Some reasons, on the other hand, are purely functional. For example I'm using a package, it helps me get stuff done but there is a bug so I fix it. Or there is a plugin missing so I quickly write it. Since I already use Github and npm it's really easy to contribute to it.

What my favorite open source project is? This is a hard question. Ember.js/ember-cli are certainly at the top, probably also io.js. I think it has mostly to do with how these projects are run and how the community around them has formed. For both projects a lot of people contribute a large amount of time and effort to them. Which I not only find impressive but also believe leads to a better product.

Erik: Tell us a little about SANE, where did it come from, what was the genesis behind it?

Markus:Carrying on from the ‘awe’ standpoint as well as the purely functional one, SANE started out because I just really wanted to work with Sails.JS and Ember.js together. There simply wasn’t anything satisfying out there so I just stitched something together for myself for one of our projects at Artificial. Then I pulled it out and put it on Github as a skeleton because I thought it could be useful for other people. Turns out that some people shared my views so it made sense to improve on it, not only for myself but also for anyone else who started using this combination. Not to mention it's been quite fun working on it!

Erik: What has the reception been?

Markus:It's been mostly positive! I've heard a few people complain that it's just another JavaScript framework that are popping up all the time. However it really is just putting two great frameworks together and I think a lot of people appreciate that. Editors Note: I certainly have, and I haven't heard anything negative

Erik: What do you think about the JavaScript Framework wars, Ember vs Angular vs React vs Aurelia? What do you prefer?

Markus:Interesting question, I just thought about that a few days ago. I feel frameworks are starting to converge more and more, towards ES6 modules, ES6 classes and web-components. So I think soon the differences will become much smaller. Even now I think it's mostly about ones background and preferences. People with a Rails background and who really dislike writing boilerplate will gravitate more towards Ember (and possibly Aurelia), people who want more ‘freedom’ (as in how to structure your code, etc) or the leanest solution possible will probably gravitate more towards React. While I do think that 4+ frameworks are too much, I think there is a place for two or three.

I only have experience with Ember and React. Right now I prefer Ember. Features like fastboot and getting component-focused makes it almost on par with React. I've heard really good things about Aurelia so I want to look into that at some point.

Erik: Why did you pick Sails for SANE? Why did you pick Ember?

Markus:I remember about three years ago I heard about Ember and I kind of just drifted into it even though it had little documentation at the time. I really started to like it so I worked on PHP and Ember for a while. Then I got curious and wanted to take lessons from Ember and apply it to the back-end but I just didn't feel like getting into Rails. NodeJS kind of seemed like a very logical step to me and fortunately I found Sails.JS which felt like the perfect match for Ember.

Erik: What's the future for SANE? Do you think you'll be adding more back end or front end frameworks? There has been talk of adding Aurelia when it finally gets a CLI tool.

Markus:One thing I have mentioned once or twice but I suppose I'm now officially announcing, is that SANE will move to an open source organisation. This is really important to me because I want to make it more open and community focused.

On that note I am always interested in finding more people to help lead the project. If you're interested get in touch with me.

Other than that we have a lot of plans. Right now I am spending a lot of time learning at my job. I feel like I'm marrying open source with what bigger tech corporations do. It's a great feeling.

On the other hand I don’t think I want to turn SANE Stack into a ‘make your own stack’ tool. I'd rather have a product that is great at one thing than having it struggle trying to support a lot of things. You can't make everyone happy. Though to be honest it is super simple right now with Docker and compose to add whatever back-end you want in addition to Sails. It it will even start up with ‘sane up’.

If however someone does have a major interest in adding, for example Aurelia, and they make a good proposal and would want to take the lead on that, I would certainly be open to it.

On another note back-end wise, I would be curious to have a more ‘resource’ focused back-end such as Bootstruct, which is based on ES6 modules and classes. However that is more of a wishlist and would probably still take a while to implement.

Erik: Where can people go if they want to contribute? Where can people go to connect with you!

Markus:I have recently been a bit less active on Gitter, but it's still a good place to get in touch, just send a private message there.

Twitter is probably slightly better to get in touch, just tweet @mpadourek

For anyone interested in working on SANE the Github repository is a good place to go to. Just open a ticket and I’ll respond.

Thanks so much!!

Next Up

If you haven't already checked out my previous interview with Balint Erdi you can check it out here! I'm looking forward to doing more interviews in the future so stay tuned!

Please leave a comment below and let me know what you think.

Image Credit SANE Stack

A SANE Stack Interview With Markus Padourek