Interview: Lea Verou
Michailia Verou, better known as Lea Verou, is a front-end developer from Greece, currently living in the US. Lea is very passionate about CSS which reflects in her participation in the W3C CSS Working Group and the W3C Developer Relations, being a co-author in Smashing Book 3, writing her own book about CSS, speaking at conferences about CSS, and of course blog about CSS on her well known blog. Lea also started several open source projects, was a teaching assistant at AUEB and is currently pursuing her PhD at MIT. In this interview I ask Lea questions about her personal life, about her life as a web developer and about her professional career.
Are you on a Windows- or Apple computer?
What is your favorite internet browser?
Chrome, but I also use Firefox. For example, I love Firefox’s feature of resuming downloads, which Chrome doesn't have.
What kind of phone do you use?
Which software do you use to design?
Adobe Illustrator if it’s something like a logo or a graphic, just a browser and my text editor if it's just website styling.
Which software do you use to write code?
Until last year, I was very loyal to Espresso, despite feeling like I was its last user. Eventually, I got fed up with the lack of updates and the bugs and switched to Sublime. Recently, I found out that Sublime is almost abandonware too (only one guy — intermittently — working on it now), so I switched to Atom and I’m glad I did! So far I’m loving it. Sleek UI and a vibrant community. Sure, it has speed issues with huge files, but I rarely need to open huge files anyway.
Lea Verou's Biography
1.Can you give a quick summary of who you are and what you do, for the people who don’t know you?
Hi there, person who doesn’t know me! *waves* I’m Lea, I like making stuff and have started several open source projects that you might have seen or used. I’ve worked at W3C and I’m still an Invited Expert in the CSS WG. I’ve given many talks on CSS and recently published a book called “CSS Secrets” (publisher: O’Reilly Media) which is going very well (5 stars on Amazon, wheee!). For the past one and a half year I’m exploring the mysterious world of academia, by doing Human-Computer Interaction research at MIT. Hopefully, my research will make it easier to create web applications with much less knowledge than required today.
2.Why did you leave Greece and move to the USA, back in 2011(?)?
Actually, I moved to the US in 2014 officially, though I had spent a lot of time there especially in 2011-2012. However, I was almost a digital nomad since around 2011, spending about half of my time or more outside Greece. I always wanted to move abroad since I was a little child. Greece is a beautiful country, but it has serious issues with economic progress and is very backwards socially. I’m extremely liberal and progressive, so living in Greece meant constant aggravation.
3.What was it like to move from Greece to the USA? (was it a culture shock? How did you experience it?)
Like I said, I was almost a digital nomad since 2011, so I didn't get a culture shock. If anything, I get a culture shock every time I visit Greece! There are things that are acceptable to say there that would leave people with their mouths open in other developed countries (sexist things, homophobic things etc). Though my perspective is skewed, as the people I hang out with in other countries are not a representative sample of the population there either.
Of course, there are things I dislike about the US, and things I do like about it. When I started travelling a lot, it made me realize two things: a) We’re all more similar than we imagine and b) There is no perfect country. They all have flaws and virtues.
4.How did you start with web development (which language(s), how old, etc.) and how did you proceed to where you are today?
Long but extensive answer: http://lea.verou.me/2012/05/how-i-got-into-web-development-the-long-version
5.At what point were you confident enough about your own skills to start teaching/speaking?
That’s not how it works! You don’t decide you’re confident enough and then you start teaching/speaking. You only become confident enough after you’ve done it several times, and even then, not fully. When I was invited to my first conference (Front-Trends 2010), I thought it was a joke. Why would they want me? After verifying it was for real, I got terrified. How could I possibly do this? But I pushed myself to accept and it went better than I could have ever dreamed.
6.Why do like frontend development more then backend development?
- It’s more interactive;
- Fewer performance concerns, as your code is always executed in one machine. You don’t have to scale to millions of requests;
- I can exercise my design side as well;
- More potential for innovation;
- A good frontend makes all the difference. You can have the best, most scalable, most secure backend ever, but if your frontend is shit, nobody will want to use your app.
7.How do you come up with the CSS techniques for the CSS examples you created, that no one thought would be possible to build using CSS?
A lot of the time, when I need to do something that I think *should* be possible with CSS, I sort of add it as a background process in my head to find a way to do it. Sometimes ideas will come, and I will try them out. Some will not work, some will. It’s a long process though, I might have the question on the back of my head for months before it produces something useful.
8.Which CSS3 features make your life easier, compared to the time when the latest version of CSS was 2.1?
That’s an extremely long list! Transitions, animations, transforms, backgrounds, gradients, border-radius, pointer-events, web fonts, new selectors and tons of other things.
9.Which released CSS4 features are you eagerly waiting for and which features do you hope will be present in CSS4?
Conical gradients! I even wrote a polyfill to show off what awesome things they can do. They’ve been in the spec for years, but in the past the graphics libraries that browsers use didn't let them implement them efficiently, which is now changing. MS Edge is already committed to implementing them, which is great!
About other features, I would love CSS3 attr() support, Selectors Level 4 support, CSS variables, backdrop filters.
10.What is your opinion about the usage of SVG versus/besides CSS3?
See above. I use whatever produces the best solution. Pure CSS is meaningless if it requires tons of unmaintainable code. That said, due to CSS’ declarative and reactive nature, often pure CSS solutions are simpler as you don't have to think it terms of applying and unapplying state.
The best way to learn is to start making stuff you want and learn along the way. It’s much easier to retain knowledge when it's actually solving a problem you have instead of being theoretical.
13.During front-end development, how do you make sure the websites you build are future proof?
I try to limit any use of nonstandard stuff or if I can’t avoid it, provide sensible fallbacks.
There are tons of developments. I think the one that revolutionized modern code the most is promises. Unless by "last few years" you’re also including ES5, in which case I think accessors were the most revolutionary, as they turned browser magic into toys we can use in our own APIs.
I’m really looking forward to being able to use arrow functions more widely, ES6 modules, ES6 class syntactic sugar, all the new function parameter improvements, template strings and async functions. I really miss regex lookbehind. Every other programming language and their dog has it. It’s way overdue in JS.
16.What is your role within the W3C CSS working group and how do you contribute?
I am an Invited Expert, meaning I (try to) participate in the weekly telcons and quarterly f2f meetings where we decide about the future of CSS. It’s not as fancy as it sounds though, most discussions are about extremely narrow topics. Most developers think we decide on things like "should we add border-radius?" or "Should border-radius accept percentages?". While discussions like these certainly happen, in reality, most of them are as narrow as "How should border-radius behave when the corner is elliptical, the adjacent borders have different colors and one is dotted and the other one is double?". I’m also co-editor of CSS Backgrounds and Borders Level 4, though this is still at a very early stage, so not much work is being done there yet.
17.How are you able to combine your professional career with the research at MIT?
Because CSS is more visual, so I can show things step by step and keep people interested. I did do a successful regular expressions talk at some point though.
19.What made you decide to write a book about CSS and what do you expect from it?
My motivation here had nothing to do with technology, actually. When my mom passed away in 2013 at age 60, I decided to write a book so I could dedicate it to her. She was incredibly smart and talented (she went to MIT for a PhD in the 70s!) and I always thought she should have been more recognized. Writing this book was my tribute to her, and a way to make her name heard by people all over the world.
20.How did you experience the whole book writing process, and would you do it again?
I’m still at the phase where I don’t want to ever do it again. It was a lot of effort and there were times I didn't think I would ever finish. I will probably come around though.
21.Which tips would you give others who want to write a book, and what would you advise them to avoid?
Write the book that you would want to read and try to make progress every day, even a little.
Get new articles, interviews and roundups delivered to your inbox:
We'll send you our non-commercial newsletter a few times per year.
No SPAM ever, we value your privacy.