Q&A with RiotJS author Tero Piirainen

I had a pleasure to have a lunch with Mr. Tero Piirainen JavaScript expert extraordinaire. He has written popular JavaScript libraries such as RiotJS, HeadJS and jQuery Tools. He has been involved in several startups: Muut (real-time commenting and forum platform) and flowplayer.

One of the topics was RiotJS. If you're not familiar with it, here is a very brief explanation:

A React- like, 3.5KB user interface library

Now to the Q&A..

Question: Could you tell us briefly who you are and what have you been doing lately?

I'm a computer programmer living in Helsinki with a focus on frontend technologies. I work on various projects on GitHub, mostly Muut and Riot.

Question: Your blog posts such Frameworkless JavaScript and From React to Riot 2.0 both caused a bit of stir in the Web development community. Why do you think people react so strongly and did you expect that?

I see a lot of emotional debates around frontend frameworks these days. You only need to jump back two years and the situation was different. I think it's because JavaScript is so flexible and allows multitude of different programming styles leading to hundreds of different frameworks – which all are, in fact, valid pieces of software. Stack that with HTML and CSS you'll have many religious movements arguing about the "best way" of piling things.

Question: What where the main reasons for creating RiotJS 2.0 and what alternatives did you consider before developing your own?

Main reason was that I started liking how React organizes things in components. The fact that HTML and JS can be merged together. But I didn't like the verbosity and bloat that comes along with it.

Question: If new person starts to use Riot and wants to contribute to the project. What is the best place to start and where is the most help needed?

Definitely muut.com/riotjs/. I think the current state of documentation is pretty good. Looks like most of the people gasp the basics well, since most of the support questions are more or less advanced.

What are the top 3 features you would like to see in future versions of RiotJS?

1. Performance improvements for loops
2. Broader test suite
3. Solid extension mechanism

You told interesting story how HeadJS script loader got popular accidentally without actually releasing it. Could you tell us that story?

I basically made an initial commit to Github and left my workplace. After 2 hours or so I came home and saw about 1500 likes already. I couldn't believe my eyes. Luckily I had written a solid README file, but there wasn't any website yet. The next day I contacted Stefan Penner (an active ember developer) over chat and asked him to take a quick look at Head JS. He said "You mean, your head JS?!". He said everyone was talking about it. (Somewhere in New York) Looks like viral things can happen by accident without any planning.

If you had more time. What problem you would like to fix in the Web?

I think content management is still unsolved.

Thank you Tero for your time.

Any thoughts on the topic? Don't hesitate to add a comment.