I am Una Kravets. Ask me anything.

Held on 15 November 2016, 6:00 pm

Una Kravets is a speaker, technical writer, and UI Engineer on the Front-end Infrastructure team at DigitalOcean. She’s written for various online publications such as A List Apart, Smashing Magazine, and Sitepoint. Una also co-hosts the Toolsday podcast and started both the DC and Austin Sass Meetups. She's a performance nerd, loves the open source community and listens to way too many audio books.

Ask Una Kravets about:

  • CSS/Sass
  • Front-end Web Development
  • Web Performance
  • Public Speaking
  • Open Source Projects

Hi y'all!

Thanks for participating! I really enjoyed answering your questions 😄 (what a variety!)

Please feel free to email me at una.kravets@gmail.com or tweet at me @una with any followup questions/comments you might have! Hopefully I might get to meet some of you at an event some day too!

💕🦄 Una

Michael Bates's photo
  • What are your thoughts on CSS frameworks like Bootstrap and Foundation?
  • Do you think they are good for web developers?
  • Would you personally recommend developers to use them?
Una Kravets's photo

Hi Michael!

  • I say, avoid existing frameworks if you're working for a company. You should be building your own framework that fit your needs without the cruft of pre-existing solutions. This way, you can tailor your solution to your needs and use your own pattern library.

  • I think CSS frameworks are good for prototyping -- this means, initial product iterations or 36-hour hackathons. Please, please invest in some design and UI development to then build a custom solution when there is a product at hand.

  • I think the answer, as usual is: it depends. Are you building a prototype for a hackathon, or are you building a product? Hackathon: yes, product: no.

Fred Copeland's photo
  • What does your day-to-day life look like as an engineer?
  • What's the best thing about working at DigitalOcean?
Una Kravets's photo

I work remotely, and am constantly traveling so my outside-of-work time varies greatly. At my job, it depends on the sprint cycle and task at hand. We recently rebuilt/relaunched the new company website and Hacktoberfest. Currently, I'm working on more internal front-end architecture. Some days its bugfixes and accessibility audits. So it really does vary :)

I love the people at DigitalOcean and how much they really care about what they do. The company drew me in because of its involvement in the developer community (I first heard of them at student hackathons and wanted to be a part of something that gave back so much to my community). And that kind of love is still very much a part of everything we do at DO. The company really trusts in its employees too, so theres a lot more autonomy in terms of bringing an idea to life than there were at larger places I've worked.

Justine's photo

Hi Una

Thanks for doing this AMA! What, according to you, are some of the best and worst trends in CSS currently?

Una Kravets's photo

Hi Justine!

I really love the push for CSS grid in concert with flexbox. That spec seems very promising and will solve a lot of layout issues on the web. In general, there's also been an increasing awareness of CSS performance in terms of building pattern libraries and delivering streamlined code to engineers and team members. That's a great trend I'm seeing!

I think some of the "worst" trends are a little tangential to me from CSS -- everyone is using the same typefaces on every website! (Hello "Open Sans"). And also not considering accessibility when adding style (like color contrast and adding descriptions to elements that have images included as backgrounds)

Elodie Yung's photo

How did you start your career? Do you always wanted to be a web developer?

Una Kravets's photo

Haha I wanted to be a fashion designer 😜. In high school I discovered the Wacom tablet and Adobe Flash, fell in love with Actionscript, and didn't realize that I had secretly been coding all my life (Neopets, Myspace, etc.). It seemed that front-end development was a natural fit. More on that here

Maria Charman's photo

Hi Una, I love your website. How do you append /#💁, at the end of all your URLs?

Una Kravets's photo

Hi Maria!

It's actually a super-quick url trick:

  function addEmoji() {
    if (navigator.userAgent.indexOf('Mac OS X') != -1) {
      window.location.hash = "💁";

All I'm doing is adding the emoji after a hash. I'm checking for Mac users because the emoji was causing some non-Mac users URLs to break and not be able to access my site. I'm also adding it as a hash because if it were part of the URL "proper," going to any link without the emoji would 404. But adding an emoji hash is harmless otherwise on Mac

Mev-Rael's photo

DigitalOcean has a best UX and dev-friendly UI. How such simplicity was achieved? What technologies are you using?

Una Kravets's photo

Involving design in the process early and often is how we maintain a great balance of friendly UI and powerful tools to maintain your system. One of our key values is: "Strive for simple and elegant solutions" and we keep that in mind with every iteration on our product.

In terms of technologies, it depends on which part of the product. digitalocean.com is built using Middleman, while some of our other pages such as the Community and Cloud site use Ruby and/or Ember.

Elodie Yung's photo

What are some of the biggest lessons that you have learned after developing for the web for so many years?

Una Kravets's photo

The web will always be a changing entity. I've learned that the only way to be happy working on it is to embrace that change as an interesting challenge and continue to move the web forward. Always stay on top of emerging technologies, but don't let them overwhelm you. There's no way to become an expert on everything, but that doesn't make you any less valuable of a team member.

Ricardo Magalhães's photo

Una, you represent so much more than your code and projects. I like to keep up with all the things you're doing because you care about the community, good code, technical evolution, and proper downtime. My question is: how do you juggle all of this while still having a full time job? Every time I've tried to accomplish more and diminish the hard line between "work-life balance", I've failed miserable by either burning out or having major FoMO about everything else that I was NOT doing instead.

What are your strategies that keep you going on what feels like the right direction, and how do you choose which of the 8584 things going on in the front-end world to pursue?

Una Kravets's photo

Hi Ricardo!

Thanks for the question. It's a good one, and definitely something I struggle with . I'm not sure there's a "great" solution for the work/life balance problem, but what I do think is true is that people have more time in their days than they realize.

What do you do in the morning, on your commute, or at the gym? You could be listening to podcasts or audiobooks, or even watching conference talks. I think exercise is really important. I get a lot of my ideas for blog posts when I'm working out (not when I'm working on an issue directly). I also make time to see my friends, but also, never watch TV (unless its with somebody). I wake up early to write, and go to bed reading. There's time in your day, it just takes some figuring out, and its not easy to figure out.

What's really helped me is keeping track of my goals which have been public since 2014. If I don't write down that I'll do something -- I will forget it. And having that list is a great reference to turn to when I have downtime.

Writing things down is the answer to your second question. Think about your larger goals, break those down, and write down the steps you need to take to get there. I gave a talk once (and only once) about this topic that I think you might appreciate.

Jason Hughes's photo

Hi Una, I love what you write on una.im :)

Your article on making games with CSS Counters blew my mind!

How do you manage to stay so creative?

Una Kravets's photo

I think consuming a lot of content goes hand-in-hand with creativity.

When you consume content, you make connections of your own that string the pieces together and come up with new ideas or interpretations. These little bits of inspiration help you to stay creative.

And also, its not about coming up with creative ideas (humans do that regularly throughout the day), but executing on them. And the executing part I can definitely pin to writing down these ideas, and working them into a to-do list.

rouzbeh84's photo

When is the official drop date on your album? I hear its going to be 🔥🔥🔥

Una Kravets's photo

<iframe src="giphy.com/embed/l3E6qj3wFoUiXbxuw" width="480" height="270" frameBorder="0" class="giphy-embed" allowFullScreen></iframe><p><a href="giphy.com/gifs/l3E6qj3wFoUiXbxuw">via GIPHY</a></p>

🔥 Oh it will be 🔥

Una Kravets's photo

:( I tried to post an image:

Regina Hines's photo

What are some of your favourite audio books?

Una Kravets's photo

Good Question Regina!

There are so many more! But these come to mind immediately

Marko Mudrinić's photo

Hi Una, thanks for AMA.

How ‎does someone start as speaker? Let's say you shine at something, knows topic excellently and you could talk about it. How do you get noticed to be invited on event, or do you ask yourself to talk on event? And when you find it :D what does you need to pay attention to when talking? What are some common mistakes people do? ‎ ‎ For someone who is not in world of Web and UI Development - at this time, what technologies, stacks you should learn to start with developing sites and especially UI? With all this designs, material designs, etc, what are things you need to pay attention when developing UI, is there some good reading about it (practical considerations, what to do or no...)? ‎ This could be a questions for a few AMAs, I hope it doesn't look scary. :D

Thanks once again for AMA. =)‎

Una Kravets's photo

Ahh so many questions! I'll try to answer them all here:

RE: Getting started with speaking/noticed

Definitely start with writing -- get your ideas out somehow in an understandable way. Start sharing them. Then, start attending local events -- meet people, get to understand a crowd, volunteer to give a presentation at work or at a local meetup, and work your way up from there. Making yourself noticed (at least to me) has a lot to do with helping your community and infusing yourself inside of it. Then, don't be afraid to submit Calls for Proposals. I've submitted SO many :P

RE: What do I pay attention to when speaking

I try to focus on the audience, gauge who they are and their reaction. Speaking is really about connecting with people--you need to connect before you can get them to hear you.

RE: Getting started with UI development

Basic HTML, CSS, and JavaScript is where you should start. Don't worry about frameworks or preprocessors until you need them. Some excellent free online resources include: CSS Tricks, SitePoint, and Smashing Magazine

Grey Davis's photo

Hi Una!

What’s your opinion on CSS3 Speech module and CSS for accessibility in general?

Una Kravets's photo

I haven't looked much into it, to be honest.

I think people who have a vision impairment will likely use their own screen readers (to access other parts of their systems) which they're comfortable with, and I'm a little hesitant to override those.

Matthew Stillwell's photo

What are the 3 things you hate about CSS? 😬

Una Kravets's photo

I love CSS 😀 But if I had to pick a few things I love a little less:

  1. You can't label interaction style changes in CSS (i.e. there is no ::toggled pseudo-selector)

  2. Support may lead to non-uniform vendor prefixing (which is a problem especially if you're writing vanilla CSS)

  3. It's not very DRY (i.e. in vanilla CSS you have to rewrite classes to target pseudo-states)

shubham gautam's photo

What is the tech stack for una.im ?

Una Kravets's photo

una.im is built on Jekyll. It's a pretty simple site. You can see the internals here: https://github.com/una/una.github.io

James Clarke's photo

Much thanks for hosting the AMA, Una! What is your take on the whole React vs. Angular debate? Which one do you personally use, and what are a few things you like about it?

Una Kravets's photo

Thanks for the question, James!

I don't use either personally :P I think they both have their individual usecases, and I've not found a reason to use either on my personal work apart from side projects just to test the technologies out. At work, we use Ember.js, which I really like for its CLI and convention over configuration approach when working on teams. Create-react-app also provides this sort of convention, though I sadly haven't had a chance to play with that one much yet.

Fred Copeland's photo

What advice would you like give to people who want to develop public speaking skills?

Una Kravets's photo

Start writing!

Writing a personal blog is the best way to get out ideas and practice forming cohesive storylines. When you have a blog, you can then transform a post into a talk to give at work or at a local meetup. Start small and work your way up. If you don't have a local meetup nearby, start one, or try to find an online meetup where you can practice your skills. Practice makes you better.

Mev-Rael's photo

How technical writer's job looks like? Do you write project documentation and keep it up-to-date, do you write any analysis reports, tech specs, etc? In your vision how those documents are important for engineering team and business team, where they can find those documents?

How anyone can become a technical writer? How to write technical documents in a maximum short, simple structure and language? Do you write those documents using Markdown, LibreOffice, LaTeX, HTML, Microsoft Office or something else?

Una Kravets's photo


Great question. A technical writer can be defined in a few ways -- someone who writes tutorials, documentation, or specifications. I've so far written tutorials, research articles, and documentation for pattern libraries at various companies. It's definitely not my full-time job, but a big part of what I do on the side (writing blog posts) and is tangential to working on front-end assets like pattern libraries (where documentation is essentially your product).

To get started, I don't think you need an english degree, you just need a knowledge of the topic at hand and an ability to communicate that topic to someone who might not have the same background as you. Thats the most important part -- an ability to understand the point of view of someone who doesn't have your technical background.

To answer your last question, I prefer writing in markdown personally because its familiar.

Hope that helped! :)

Muhammad Azaz Qadir's photo

Thanks for this AMA. What is your opinion about platforms, like Cloudways, Bitnami and WPEngine, that are providing managed hosting for DigitalOcean and other IaaS?

Una Kravets's photo

Hi Muhammad,

Honestly, I don't know that much about them, so I can't really provide an opinion :/

Hamish Thompson's photo

Thanks for the AMA, Una.

Front-end developers today don't think much when using modern CSS3 properties (transitions, animations, etc). How should one research and what are the things to remember when developing websites?

Una Kravets's photo

CSS3 is widely supported today, but it's definitely important to check browser support for the set of technologies you and your workplace are supporting. This is an important conversation to have at work/with your client (the exact tech stack of browsers you're supporting).

With that in mind, make choices that can reflect this decision. Then, be sure to test on various browsers and systems. Sometimes you find weird bugs on Chrome for Windows or IE10 that you weren't anticipating. Browser testing is the best way to uncover and resolve these.

Melvin Smith's photo

Hey Una! Thanks for doing the AMA :)

What should we developers do to save ourselves from getting burnt out?

Una Kravets's photo

Sleep! Take breaks! Travel! Learn a new skill (particularly an offline skill, such as calligraphy or woodworking, may be useful). And switch up your front-end-related tasks if you can.

Sharon Chaisky's photo

What tips would you give to UI developers so they can stay active and avoid getting rusty?

Una Kravets's photo

Get on email lists and actually read them (Codrops is a good resource, there is also CSS Weekly, Javascript Weekly, and many others. I also recommend making time to either attend a conference or watch conference talks at home. Cue up a few on Youtube and spend a few hours watching/discussing with a fellow tech friend.

Most of all, practice -- side projects are key! If you want to learn a new skill, build something using that skill. This will force you to find resources and answers.

Mev-Rael's photo

What are problems between a designer and a UI engineer? How would you improve that process? What do you miss from designers? What would you suggest to any designer and web design agency?

Una Kravets's photo

I don't know if I would characterize there being "problems" per se, because these two roles work very closely together. But I think the biggest challenge between them is that they simply have different goals sometimes. Making something beautiful vs. accessible could be an example, and finding that balance is where you can really make a product shine.

My only suggestion would be to communicate more. Try pair programming/designing and discussing in-person (or on-video) the reasons behind your thought process or decision making.

Martin Snowball's photo

We all agree, accessibility is very important. How should one motivate beginner developers to take care of it?

Una Kravets's photo

Making accessibility an important core tenant of your company is one way to make beginners care about it :) emphasize how it's key, don't let inaccessible code get merged to production, and accessibility will quickly become a habit/part of the development process.

Susannah Fisher's photo

Hi, Una - so wonderful of you to do an AMA!

What can you tell me about open source - I'm relatively new (only been coding seriously since last April in html, css, javascript, php and am now learning python). I'd love, love, love to contribute to open source projects, but feel intimidate with my lack of experience. Still want to do it though, just don't want to aggravate others on the project. Thanks!

Una Kravets's photo

Start with contributing documentation and with issues that are labeled help wanted or intro PR. There are some great resources to help people find projects who are looking for beginner contributors like Your First PR and some great open-source projects always looking for beginner help like Hoodie.

I think the main thing with open source is: start small. A little bit can go a long way and build your confidence to make larger contributions.

Javier Archila's photo

I will ask this because is amazing how much you do and it looks overwhelming, how many hours do you sleep?

Una Kravets's photo

Lately, 7.5-8 hours a night (when I'm not traveling) 😄😄😄 You have to prioritize sleep! It's so important!

(But to be fair, I've only recently started prioritizing sleep -- I'd say 6 hours was my average for a long time)

Susannah Fisher's photo

And another question: Any tips, tricks, advice, etc., for a career changer with terrific project management skills, improving-every-day coding skills (I practice everyday & take on small web des/dev clients for experience), and a desire to make this my new life's work? I'm moving from 18 years as a nonprofit writer (communications, marketing & grant writing) to front end development. Thanks again!

Una Kravets's photo

I'm not a very qualified person to give advice on career changing 😛 but I guess I would give the same advice as someone starting in this field -- get a good grasp on the basics and build as much as you can to practice and improve your skills.