Raquel Vélez

Raquel Vélez is a Senior Software Developer at npm, Inc. in Oakland, CA.

She has previously worked at institutions such as Caltech, NASA JPL, the MIT Lincoln Laboratory, and various universities in Europe. In her off time, you can find her baking, teaching NodeBots not to fall off of tables, and speaking. Also, hanging out with her hilarious husband and two cats dressed in dog suits.

Feel free to reach out to Raquel any time on Twitter at @rockbot

Published Thoughts

I love working in tech. As a software developer, I have the ultimate power: I can build anything. The only things holding me back are my imagination, my time, and my desire.

I’m a modern-day alchemist, making gold out of thin air.

And it’s with my magic that I genuinely want to make the world a better place.

Later this month, I will hit my three-year anniversary of becoming a web developer.

I look back on those first days, when I didn’t know anything or anyone, and all I had was hope. Hope that I could not only be good at this whole Internet Thing, but also that I could help other people be good at it, too. (If the last three years are any indication, I’m actually doing alright; I even gave a talk about my journey, called Evolution of a Developer!)

But over this past year, there have been more than a few moments in this industry when I’ve wondered if this is the right field for me.

The companies, communities, and professionals heralded in our industry are, by and large, the exact opposite of the types of figures that I was hoping to see. Instead of using computer magic to change the world, they’re helping the rich get richer while ignoring the disadvantaged who could benefit from their skills the most.

I see the people who are actively making a difference get denied funding because of their looks, their accents, or their lack of pedigree.

After seeing the same stories repeat themselves over and over again, it’s easy to lose hope sometimes.

But then I open up my computer.

And while I’m no investor or epic entrepreneur of the ages, I still have the power to create. If anything, my power is stronger than ever, because I’ve been levelling up this whole time.

Now is not the time to give up. If no one wants to share the gold, well then we’ll just have to make our own.

Remember Oprah? She had a show for 25 years, and I only ever watched one episode in its entirety: the last one. In it, Oprah spoke, from the heart, about herself and the lessons she’s learned over the years.

Say what you want about Oprah, but after 4,560 episodes the woman has got to have some keen insights on people. And when presented with an opportunity to learn, I darn well pay attention.

Here, then, is my distillation of Oprah’s lessons over a quarter of a century of interacting with people, regardless of age, race, ethnicity, sexual preference, gender, religion, ability, fame, fortune, political persuasion, childhood, wardrobe, you name it:

  1. Everyone has a purpose. Spend your time finding yours, and then live it out.
  2. You are responsible for your own life. Stuff that you can’t control happens to you, good and bad, but how you choose to move forward from those experiences is totally up to you.
  3. Everyone - everyone - wants and needs to feel validated. Accepting and acknowledging that this desire is innate to every person with whom you come in contact will only help you.
  4. The world is bigger than you. You are not alone, for better or for worse.
  5. You don’t get to where you want to be without a dream, a team, and a plan.

Though I’m not sure her methodology was particularly scientific, I can’t help but feel like this is one of the greatest sociological breakthroughs of the twenty-first century. Oprah figured people out, and then had the audacity to share her findings with the rest of us.

I know I’m not the perfect example of the empathetic human, but I read those lessons, and I know I want to be better.

I hope you do, too.

Your code is not a reflection of you. It isn’t a reflection of your beliefs, your upbringing, or your ability to be a good person.

Your code is, however, a reflection of your thinking process at the time that you wrote it.

Given our innate ability to change our minds, consider other viewpoints, and play with new ideas, why do we hold our code so dear?

Your code can change. Your code will change. Your code must change, if it’s ever going to get better.

Stop marrying your code.

The sooner you accept this, the happier you will be and the better programmer you will become.

At the time of this writing, I’m on the brink of passing 5,000 followers on Twitter.

I honestly couldn’t care about how many followers I have, with two exceptions: each new follower means a larger network with which I can share my crazy thoughts and expertise, and also every new follower brings me closer to my impending personal story of online harrassment.

You see, so far, I haven’t had any trolls. No one has called me names, threatened my personal well-being, or tried to hack into my personal information. (And no, for the record, this is not an invitation.) The two times people have said inappropriate things to me, I simply blocked them and never heard from them again.

But soon it won’t be that easy.

Someone - who may or may not be following me already - will comment on my age, my gender, or my heritage. They’ll talk about how stupid/unqualified/annoying I am, and how I have no business being in this field. I will try to ignore them, as there’s no truth in those sorts of comments, but they’ll keep poking, saying awful things, and I’ll crack. Maybe I’ll respond, maybe I won’t, but it won’t matter, because the abuse will keep coming.

And the way the system works, I won’t have anywhere to turn for help. The police won’t have much to go on, the Twitter abuse protocol is notoriously terrible, and an alarming percentage of people will simply turn their backs because it’s a lot easier to ignore a problem if you pretend it’s not there. I’ve seen it countless times already; it’s simply a matter of time before it’ll be my turn.

It’s actually pretty impressive how I’ve managed to get this far without suffering. Admittedly, I play it safe online. My forays into social justice have been mostly limited to retweeting things that matter to me (though by the nature of retweets, they show who originally said it, instead of me). My personal tweets tend to be silly epithets or poignant quips about software engineering. I don’t go out of my way to attack anyone (even if I grossly disagree with them), and I don’t engage in heated debates.

But we’re living in a really interesting time right now. As a Latina, I’m constantly seeing two major parts of my identity being debated everywhere. Women and people of color are hot topics, not only in technology, but also in general American society. It’s not something I can keep quiet about forever; in fact, I’m hardly quiet about these topics in person. But online, I don’t say much about them.

I have to decide what’s more important: sharing my opinion and putting my family at risk, or staying quiet and keeping safe; making a point or letting my silence speak for me.

Every time I speak at a conference, write a blog post, or compose a tweet, I ask myself: “Is this it? Is this the [talk/post/tweet] that will send someone over the edge?”

I don’t know, and I’m terrified.

How do we fix it? How do we, as a community, make sure it doesn’t happen?

The first step is to stop it from happening, right now. Every day, women and people of color are abused online. And it’s not just women and people of color, either: members of every marginalized group (read: non-het-white-cis men) are being called names, personally threatened, and hacked. Horrific pictures are photoshopped, sensitive details are displayed in public, and lives are destroyed. I don’t care what they said - they did not ask for it, and no one deserves that kind of treatment.

Speaking your mind isn’t a crime, and trolls aren’t police, judges, or juries.

Unfortunately, I don’t know how to fix this. I don’t know how to stop people from saying awful things on the Internet beyond declaring that I won’t say awful things on the Internet. But something must be done.

I’m tired of watching my friends get hurt, and oh my goodness do I hope I’m not next. The standard you walk past is the standard you accept; I’m standing right here, and I really hope you’ll stand with me.

I lived in Charlotte, North Carolina for two years.

Like many cities with a high number of corporate headquarters, Charlotte has seen a massive number of newcomers flocking towards jobs and opportunities. Add to that some fairly decent weather, affordably-priced housing, and a feel-good-family-friendly nature, and it’s pretty obvious why folks from all over the country (and the world) have decided to make Charlotte their home.

For the first year that I lived there, there was this notion of the elusive “Native Charlottean” — people who were born, raised, and still living in Charlotte. Indeed, with the booming influx of non-Charlotteans moving into the city, finding one who didn’t come from somewhere else was like finding a needle in a haystack. My friends and I used to joke that if and when we found one, it’d be like winning the lottery.

At the beginning of my second year in Charlotte, I joined the Charlotte Shapers, a group of younger adults (20–30 years old) invested in improving the city. Within our eight-person team, we had not one, not two, but three native Charlotteans. As we worked together, I met their friends (many of whom were also native Charlotteans — imagine that!). And I discovered that there were actually hundreds of these hypothetical needles: you just needed to know a few and the rest would follow.

It’s with this experience that I can’t help but laugh at hiring managers in the Bay Area who claim that women and underrepresented minorities are so hard to find.

“No one is applying,” they say. “The pipeline is empty. Those unicorns* don’t exist.”

My friends, the pipeline isn’t the problem. If it were, then the gender breakdowns at major tech companies would be closer to proportionally matching the number of women graduating with CS degrees.

This problem is a recognizing that there’s more to the haystack than a proverbial needle problem.

So here’s your homework: find one. Find one needle/unicorn/Brigadoon/whatever you’re calling them these days, get to know them (yes, it helps to be genuine and interested in more than just networking for networking’s sake), and discover the hidden (but definitely existent!) network of untapped talent.

Don’t know anyone?

Hi! My name is Raquel. I’m a software engineer. Oh, yes, I also happen to be a woman of Hispanic origin. Want me to introduce you to my friends? Just ask.

* the needles of the animal kingdom, obviously

I worry about the people who never leave their home countries: they tend to assume that the rest of the world is exactly like their own or — worse — that it’s exactly as someone else has described it to them. They think they understand the world and all of its intricacies, complacent with the way things are.


How many countries have you visited? How many countries have you lived in?

It’s one thing to visit a country; it’s another thing entirely to live there.

When you visit, you see a country the way you want (or your tour guide wants you) to see it: you visit the tourism-focused sights, laugh a bit at the strange customs, and struggle with the foreign language.

But when you live there, you see a country the way its people see it: you learn about off-the-beaten-path restaurants, struggle with bureaucracy, and discover the complexities of the culture.

By fully immersing yourself in another country, you learn, first-hand, about why people love (and hate) their homelands. And then, upon your return, you see your homeland from the perspective of another.

And you start to realize that it’s not the way you remember it, and that it doesn’t have to be that way. That, in fact, you can (and should) improve it.



Look at the world through someone else’s eyes.

And then make the world better, because then you’ll know how.

“What about just this one extra…”


Start with the smallest, most basic, self-contained thing that works.

Then you can add to it.

Keep it simple. Seriously.

I... I have opinions. 

 -- @rockbot

There are a lot of opinions out there.

Often, we take the opinions of others as truth instead of doing our homework. Maybe we’re scared that our opinions aren’t worthy, because we’re not “famous.” Maybe we’re nervous that having an opinion requires extra work and effort, which takes up time we don’t have. Or maybe we just don’t know how.

Fortunately, I have created this rather simple guide:

How to Have an Opinion

Step1: Use stuff. Decide if you like it (or not). 

Step 2: Ask yourself: why? Why do you (not) like it? 

Step 3: Find something similar (but different). Repeat steps 1 and 2 for this stuff as well. 

Step 4: Compare the stuff in steps 1 and 3. How do they differ? Why is one better than the other? What are the pros/cons of each?

Step 5: Discuss these findings with others. What have they learned? How does their experience compare to yours?

Here’s where most of us come up short:

  • We don’t ask ourselves “why” enough. The best developers I know ask “why” (at least) twice as often as they ask “how.” Dig deep — what is it about this framework that’s bugging you? Is it just syntax? Is it the inherent way data is being saved which runs counter to the rest of your application?

  • We also don’t seek out differing opinions enough. Debate team members and politicians do this really well — to win a debate, they consider all opposing positions when forming your arguments. We should strive to do that when we make our opinions as well.

    As a roboticist, I get a lot of flak for using JavaScript instead of C++. But I’ve used both. And I don’t actually believe that one should die in a fire; I think they’re both perfectly valid and wonderful, depending on the application.

  • Finally, we don’t discuss enough. I mean real, proper discussion. Conference downtime is great for this — grab some (new) friends and talk about the stuff you’re using. You may discover that opposing view points aren’t necessarily wrong; they may just be indicative of different use-cases.

The internet is, in fact, big enough for all of us. We can all have an opinion, and there’s no reason why everyone should have the same one.

I was so upset.

Having just finished my first bike ride in six years with my first bicycle in nearly twenty, I knew my $200 expenditure was a mistake.

The bike, which during the five-minute test ride made me feel like I was flying, was in terrible shape. The grips were plastic, the seat was too low, the brakes squeaked, and I wasn’t nearly qualified to ride it.

My lack of experience in purchasing a bike was more than enough to overcome what little bit of research I had done online.

And unfortunately, you can’t return items on Craigslist, especially when you pay for them in cash.

Fortunately, my busy schedule allowed me to avoid the bike for nearly eight weeks. But then I had a free weekend, and it was time to face the music.

Off I went to a bike shop to fix up my tragic bicycle.

Having never been to a bike shop, I was amazed at all the options available. Now, suddenly, my bike had potential! I gathered a squishy pair of grips, a better-bent handlebar, a sturdier kick-stand, and a new brake cable. (Having a mechanical background makes moments like this one particularly fun.)

Also, in the corner of the store, was a used bicycle, on sale. It had everything I had hoped the Tragedy Bike would have, and more. But I’d already committed* to my new bike, so I paid for my upgrades and went home.

The upgrades made an instant, incredible impact. Tragic Bike was transformed! It was now Minimium Viable Bike: it would get me to the train station and help me buy groceries. We’d be fast friends, I knew.

That night, however, I couldn’t help but think about Other Bike. The one I saw in the shop, on sale. It really had everything I wanted. And it wouldn’t have to wait for my one free weekend for me to fix it up. But I put those thoughts aside and prepared for the ride I would go on the next day.

I took the MVB out of the garage. There’s a notion in engineering where you have the “good enough” solution. No, it’s not perfect, but without the time, talent, or funding to make it the best solution, you will settle and hope you remember to fix it later. (You, dear reader, might also know this phenomenon as technical debt.)

As I left the house, the front fender fell off. I removed the fender. Turns out the fender fell off because the brake fell off. I removed the front brake (that’s what the rear brake is for, right?). I guess the front wheel felt lonely, since it fell off next. We didn’t make it out of the driveway.

And with that, I returned what was now Failure Bike to the garage, got in my car, and made my way back to the bike shop.

An hour later, I had Other Bike (now New Bike) in my possession. It was, in fact, everything I wanted out of a bicycle.

We often get caught up in what we think we want. In an attempt to save money, we’ll grab the first thing we see, realize it was a HUGE mistake, and try to make it better, usually with more money. When possible, the best approach is to do proper research, find out what you need, and buy the best option available, the first time around.

* Commitment is a funny word. To stick with something you love, during good times and bad, makes perfect sense: nothing is perfect, but if you are willing to compromise, your chances of being happy over all are pretty high. If you stick with something you *don’t* love, however, what’s the point?

Best Chocolate Chip Cookies On the Planet

These are the absolute best chocolate chip cookies you’ll ever make/have. The sea salt is key — do NOT forget the sea salt. You can use regular salt the first time, but once you start using sea salt, you’ll never go back, unless you lose your sea salt, in which case you’ll think you’ve completely and totally failed at making chocolate chip cookies.

Christmas Croissants

Make these at least once a year (I do them at Christmas-time). They’re a lot of work (they take 3 days), but they’re holy cow amazing. No, really. They’re the closest things you’ll ever find to proper French croissants outside of France. Warning: they’re 90% butter, and udder-ly delicious. 

Wedding-Cake Cake

If I had had the time, I would have made my own wedding cake with this recipe (apologies for the ads — content and quality of website aren’t always directly correlated). This cake freaking rocks, especially for birthdays. Or any occasion, really.

Dad’s Flan

Ok, so this one’s actually kind of a secret. No one knows the recipe, not even Dad. But I watched him make it once, and I made my husband copy some semblance of the ingredients and process. I even made it myself once, and it came out well, but not the same. This recipe is fairly close, though it’s in Spanish :-)

The Point of this Post

The stuff we make is best when shared with others. I share code, robots, and — now — some of my favorite recipes. I suspect you’ve got lots of good (non-technical) stuff worth sharing, too.

Let’s be nice, share the things we make with each other, and enjoy the tasty things in life. 

(Also, this is the Pastry Box Project, and so far I haven’t seen any recipes. Fortunately, I <3 baking and can provide some quality options for you!)

Sharing Really is Caring

Have some amazing recipes you’d like to share, too? Please do! 


You don’t have to look like, act like, or have a similar background to ANYONE to get started in this industry.

Be you, do great.

— Me, a few weeks ago on Twitter

When I was a beginner web developer, my first thought whenever I visited a website was to find out out who was involved. I always asked myself, “Which one of them is the most like me?” I usually started with faces — “Do any of them look like me?” And then I moved to names — “Do any of them have names like mine?”

In the case of many websites: No, none of them were like me.

Does it matter?

Yes — it absolutely matters. 

Some of us spend our whole lives constantly reminded about the things over which we have no control (race, gender, ethnicity, neighborhood in which we grew up, etc). Often these reminders are followed by (usually inaccurate) stereotypes about our intelligence, personality, fashion sense, etc. Over time, we (understandably) start to believe it all, and it infiltrates every aspect of our daily lives.

Role models are important. When the people we look up to look like us, act like us, and have similar experiences as us, we start to believe that we can be like them. As students, we need to know that we can learn the hard stuff, despite the memories of the morons in our past who tried to convince us otherwise. Role models help us keep going. 

Unfortunately, as in the case of the aforementioned websites, not all of us have role models when we need them. So what should we do?

We keep going anyway. 

Like it or not, our success is defined more by how we act than by how we’re born. 

Be persistent, learn constantly, and ignore the haters.

Become the role model that someone else looks up to, to know that they can make it, too. 

“Dime con quien andas y te diré quien eres”
(Tell me who your friends are, and I’ll tell you who you are)

— Spanish proverb

Your friends matter — a lot.

The good ones are like fountains: they’re active listeners, help you celebrate your wins, and give you valuable perspective when things go south. Simply put, they energize you.

The bad ones are like sewers: they complain, spread rumors, and make you doubt yourself on the regular. In short, they suck the life out of you.

Surround yourself with fountains and limit the interaction you have with sewers. You’ll feel better in the long run.