The JavaScript Developer is a series of interviews with JS developers where they share their stories, inspirations and life lessons. This is the third part of the series. Irene Ros is an open source JavaScript developer with a focus on creating engaging, informative and interactive data-driven interfaces and visualizations. She worked for a number of years at IBM, the highlight of her experience there being the work at the Visual Communication Lab at IBM research. Today, Ros is the Data Visualization Practice Lead at
Bocoup, a Boston-based open web technology company. Here are the excerpts from the interview:
Tell us something about yourself
I have been a programmer for about 20 years now. I remember learning Basic when I got my first computer at the age of 9 and I never really looked back. Granted, I can’t say I made anything useful back then, but I fell in love with the ability to make computers do things with a few instructions.
A line or two about the current project you are working on.
At Bocoup, I am the Data Visualization Practice Lead, working with our clients, engineers & community to continue pushing the boundaries of data visualization on the open web. This translates into having many projects at the same time – I am already thinking about our next
OpenVis Conf 2015, several community projects that I run:
MobileVis,
Miso Project and
Blocksplorer , as well as working with my fellow engineers and clients to build excellent data visualization stories and interfaces.
What made you choose programming as a profession?
I’ve always really enjoyed math and science as a child, and computing seemed like the applied way to use those skills. I was thankful to be in an educational system that recognized such preferences early on and had wonderful supporting structures to enable me. Right now I feel like engineering is an open door to a variety of fields.
Tell us something about the first project you worked on: what was it, how you went about figuring it out, the obstacles you faced, the outcome, etc.
Wow it’s been so long, I can’t really remember the first. One of my early big college projects involved figuring out a large open source portal system with the goal of adding real time chat to it. This was probably close to 10 years ago, so it was kind of a crazy idea. That’s when I learned the importance of well documented code and open source communities. Not surprisingly I ended up at Bocoup, where writing good open source software is one of our highest priorities.
You have worked on several data visualization projects. How and why do you think JavaScript as a language helped in these projects?
JavaScript allows me to very quickly prototype visualizations and be able to share them with lots of other folks on the web. There are many libraries today that are changing the way we create data viz on the web, and I’m thrilled to be working in an environment that offers so much.
Two most important data visualization tips or best practices you want to share with our readers.
Know your data – 95% of data visualization work is data crunching. Learn enough statistical methods to make sure you’re being honest with your audience and making the right conclusions. Learn your visualization methods – there are so many ways to visualize data and each is best applicable in certain situations. Learn when and how to look at various data.
What would be top 3 resources that you would recommend beginners-level JavaScript programmers to learn advanced stuff about JavaScript?
- MDN – read the docs. They are great.
- Eloquent JavaScript – great beginner book.
- Your Own Project – pick something you want to build, and build it! Try different libraries and frameworks.
If there is something you would like to say to fellow programmers to inspire them to code in JavaScript, what would it be?
Learn from other languages, learn from general software engineering principals, problem solve issues without a specific language in mind, learn to write pseudo code – computing is a general skill and we have so much to learn from each other across languages and solutions. I know this isn’t very JavaScript specific, but I find this was the most important skill I learned early on and it’s made me a better JavaScript developer.
What is the biggest criticism you have faced till date?
I’m very precise and methodical – it means that prototyping (writing bad code that needs to be thrown away) isn’t easy for me. I’m getting a lot better at it though – thinking with code is an important skill.
What is the biggest compliment you have got till date?
Some of the code I’ve written was used in some amazing ways – by political candidates, scientists exploring some important questions and journalists writing about important news topics. Having what I make be useful is the greatest compliment I can get.
What do you do when you are not writing codes?
I am a huge foodie and absolutely love to cook. I cook every day, often for hours exploring new ingredients, cuisines, recipes and techniques. I’m very lucky to have such a delicious hobby 🙂 I also paint, sing and hangout with my wonderful dog, friends and family. I am lucky to have a great life in and outside of engineering!
Who or what is your biggest motivation?
I want to build things that are useful to people ― that help them solve a problem that exists in the real world. Fundamentally, I’m much more interested in people than technology, but as it happens, technology is really important in people’s lives.
What key traits do you think are needed to be a successful JavaScript developer?
You need to be interested in programming and problem solving in general, to be aware of what happens outside of JavaScript, to be good at picking up new languages and libraries, to be unafraid of experimenting and to want to learn new things. Honestly, being a successful JavaScript developer is no different than being a successful developer.
What would be a dream project that you would like to develop in JavaScript?
I’d like to help solve a really important problem ― with or without JavaScript. I’m a public radio junkie, so it would probably be about helping public radio reach more people and survive the changing news landscape.
One life lesson you would like to share with developers who are new to the field.
Be curious, open & tolerant to your fellow engineers.
If you liked reading this, you may also want to check out: Other recommended reads: