Hello, everyone. There's so many wonderful humans here tonight. I see so many of you.
Thank you for coming to Passion Projects. This is the first talk of 2014. Yeah, we're
going to have a really big year and I'm happy all of you are here to see it or to join us
with it, for it, for it. My name is Julie and I am the creator and organizer of Passion
Projects here at GitHub. I'm also a designer and developer here. So from the bottom of
my heart, thank you. And I wanted to ask you to join me in welcoming Dana McCallum.
How's my mic? Is that okay? A little screeching? All right. Well, thank you, Julie. It's an
incredible honor to be here. I've been really impressed with the other talks in the series
and just how professionally this whole thing has been put together. So it's really exciting
to be asked to be a part of this. Just to give you a little background on me. I'm an
engineer at Twitter. I've been there about four years. So I've watched the company grow
from 150 people to thousands from doing 500 tweets a second to I don't even know how many
hundreds of thousands we did on Japanese New Year. But it's been completely overwhelming.
When I started, we didn't even have ID badges and now I walk into the cafeteria and I'm
like, who are all these people? What are you doing at my company? They're all welcome. They're
all great. So that's been pretty exciting. My first, I joined as an engineer on the API.
It was just kind of a front line grunt on the API or whatever. But then I got moved up
to the lead engineer on the API, which was super exciting. So I did that for two years.
And then I moved over to help build our advertising API. And I'm just now moving off of that onto
our social graph service, which is the system that keeps track of who follows who and who
is blocking who and so on and so forth. I can't promise I'll be able to fix the unfollow
bug, but I'm sure I'm going to try. So that's what I do at Twitter. Before I started at
Twitter, I lived in Indiana, which was, oh, another Hoosier here, okay, great. I used to
say that I was a Hoosier ex-pat in my Twitter bio and one of my co-workers from England thought
that I was saying I was a hoser. So he thought I was Canadian for the longest time, which
is fine, okay. Yeah, so I don't know. I did a bunch of sort of random programming. There's
not a whole lot of interesting tech going on in Indiana, unfortunately. But I worked,
the last job I had was in a newspaper. I built a lot of random social media sites. I helped
build a site for moms. It was pretty great. Every Friday, I would descend into this crazy
flame war between the super conservative homeschool helicopter parents and the pagan earth mother
let the child do whatever they can name themselves and so on and so forth. And I would just go
and just grrr. It was so great, so good for page views. So that was pretty great. And
then the other site that we built was a site for pets, not a site for pet owners, a site
for pets. You would sign up as your dog or as your cat, and then you would write messages
to other animals as your dog or cat. That was not so great for page views. But it did
produce my all-time favorite thing ever on the internet, which was somebody, you know,
writing as their dog. This woman was, you know, her dog was very excited that she'd
come home. She was like, yay, mom's home. Great, so great. She, you know, says hi to
me and now I get treats and she gives me kisses. And she's really mad at dad. I hope dad stopped
being a jerk. So somewhere out there, someone is working out their marriage problems by
role-playing their pet on the internet. I also do quite a bit of work on the side for
women in tech, that's, you know, writing talks and traveling and so on. I went to India with
the State Department this last spring, which was freaking amazing. All of this stuff, you
know, I'm more than happy to talk about all this stuff. I'm super passionate about all
of it. And I'm, you know, I would love to take questions about it in Q&A. But every
now and then, I do get a little burnt out on being a woman in tech. Sometimes I just
want to be an engineer, you know. And I feel like even if you aren't devoting yourself
to sort of the women in tech movement, you know, if you are a woman in tech, you still
kind of have this sense that, like, you're sort of representing all of womanhood or,
you know, people are sort of watching you differently and so on. So I want to make this
talk at least the pure talk portion of it just about tech, if I may. And then, you
know, Q&A, you can ask me whatever you want. So it was kind of hard to come up with a topic
for this. It's so open-ended. And, you know, the talks before this have been about so many
different things. You know, I'm not really like a motivational speaker. I'm more like
a demotivational speaker. Like, if I had started Kickstarter, I would have made it so that
you pay people not to do things. Please, please do not write that book. I will pay you so
much money not to write that book. So, you know, that stuff was out. But, you know, it's
right there in the title, Passion Projects. So what are the projects that I've been super
passionate about besides Twitter and women in tech and so on? And there are a few projects
that I've done. And sort of the common theme behind all of them is that they combined my
interest in programming and technology with something else that was not necessarily tech-related
that I was super into. And I don't, by super into, I mean like I get super crazy into stuff.
You know, if I get interested in something, I'm like, it keeps me up reading about it
every night. It's, you know, I drive my friends totally batshit crazy because it's the only
thing I talk about and so on and so forth. My thing right now is the Norse myths, but
I won't bore you with that right now. Except to say that you should read the Wikipedia
article on Volvo. It's VOLVA with a new mount. It's pretty cool. There are these Viking sorceresses
that basically ran around like drugging men. Anyway, it was really cool. So the first one
of these, I tried to teach myself Japanese, which was idiotic. I do, about the only thing
I remember from that endeavor is the phrase Wakarimasen, which means I don't understand.
It's a good thing to know. I also remember Moshi Moshi, which is how you say hello on
a telephone. But I did, I found this whole data set put together by this professor in
Australia, who, you know, he studies Japanese and that's all he does. And so he created
this huge XML data set of Japanese to English dictionary and kanji correspondences and all
that stuff. So I put that together into this website, which I haven't touched in like five
years and you can see the CSS hasn't aged very well because some of the characters
are kind of chopped off. I thought about fixing that when I was like, whatever. When I stop
being into something, then I just don't care about it at all. I don't know if you can read
that, but this is also one of my favorite Japanese words. It's Karoshi. It means death
from overwork. It's a real thing. So when I was interviewing at Twitter, I was staying
in a hotel out here and I got the phone rang and I wasn't expecting any calls and I picked
it up and I hear this woman say mochi mochi on the other end of the line and I'm like,
well, that's strange. Who's going to call me speaking Japanese? Except for my friend
Joanna who sometimes calls me and says, don't mo, how do gay desu? Which is, hello, I'm
hard gay. But that's another story. Anyway, so I've been saying mochi mochi and I'm like,
I'm sorry, you've got the wrong number. And then she said, mochi mochi again. I'm like,
okay, she doesn't speak English. Most people at this point would just hang up, right? But
I'm like, no, I remember the other thing I know how to say in Japanese which is, I don't
speak Japanese. And then I hung up. I love imagining how confused this woman presumably
from Japan must have been calling America, getting an American on the phone who then
said, I don't speak Japanese in Japanese. So that was this project. This project taught
me a lot about character encoding, as you might imagine. They screwed up a lot of databases
and a lot of Ruby code. Ruby's support for Unicode at this time was just terrible. Mostly
because Japanese technology professionals don't really like Unicode because it kind of screwed
them over. But anyway, so that taught me a lot about that. And that was really fun to
put together. And the next thing I worked on, I got really into nutrition, which is pretty
exciting, I guess. I wasn't into that for very long. I didn't actually finish that app
because I realized that I like pizza more than living forever. But I did find, I found
another great dataset here, this time from the U.S. Department of Agriculture. It's
a food database. And it's, you know, it's just a bunch of ASCII files. And you would
imagine ASCII files one record per row or per line, rather. It's probably going to be
tab-delimited, right? No, the food database is carrot-delimited. That's true. I'm not
making that up. That's pretty ridiculous. Anyway, but the thing that I'm super into
and have always been super into for, you know, as long as I've been an adult, basically,
has been aviation. So this is the plan I was flying 10 years ago. It's just a little tiny
two-seater deal. Pretty sporty, though. It's a little pretty thing. Kind of want to make
out with it. I referred to this as my Mazda Miata with wings. So that was fun. So, but
I got, you know, I have a commercial pilot's license, which is not an airline pilot's license.
It's a totally different thing. But where was I going with that? Yeah. So anyway, I,
you know, so I had this airplane and I wanted to do something that was, you know, that tied
my interest in technology to aviation. And again, there are tons and tons of great data
sets out there for, you know, airspace and airways, where airports are, you know, whether
they've got fuel and like just everything you can possibly imagine and more is out there.
Just being 10 years ago, though, the technology platforms at the time were a little limited.
And so what I had to work with was the Palm 5X. Who here does not know what a Palm pilot
was? Okay. I was worried about that. I was going to ask, like, who here is under 25?
So anyway, this device had a 20 megahertz processor, 8 megabytes of memory. That's combined
with RAM and storage. They were the same thing. Tiny little grayscale screen and most embarrassing
of all, it had a stylus. And then programming on the Palm pilot posed some unique challenges
because you can't make, you can't make what are called long jumps, which means that if
you've got, let's say you've got a function called heading, you know, it calculates your
heading to a waypoint or whatever. And that heading function needs to call a cosine function.
That's fine as long as the cosine function is close to the heading function in memory.
If you then need to call your divf function and it's too far away, can't do it. There
literally are not enough bits in the assembly instruction to call a subroutine to make it
that far. And of course, the linker that Palm provided was not smart enough to rearrange
your code for you. So you had to like, basically had to hand arrange how your code was arranged
in memory to get anything to work properly. And, you know, in case you're wondering why
you had to call a function called divide float, it's because there was no floating point instructions
in the processor. So you had to do all that stuff in software. So that was fun. And then,
you know, it also has no GPS. But you could get like a little attachment thingy, excuse
me, that would attach to the back end, attach onto the back of the Palm pilot and then there's
a serial port and then it would feed you like GPS data via this like bizarre text format
that you then had to parse. So pretty constrained platform. But, you know, most of the necessary
components are there. But this, you know, this amazing beast was the thing that I was
going to take to deal with this nonsense. What the hell is this? This is an aeronautical
chart of central and southern Indiana. I don't expect anyone to be able to read anything
on here. First of all, because no one is familiar with Indiana geography except for one person.
Second of all, because very, I'm sure if there are any other pilots here, I'll be surprised.
And also because this map is missing sort of a basic feature that we all have grown accustomed
to find on maps, which is the ground. There is no ground on this map. There is another
kind of aeronautical chart. This is the same area that does show the ground. There are
roads and, you know, towers and lakes and so on and so forth. But this kind of map is
designed for if you're flying in bad weather. And so you're probably in the clouds. You
can't see the ground. So what's the point in putting it on a map?
One feature that I do want to describe here quickly is you see this sort of web of black
lines all over the place? Those are called airways. And they're basically highways in
the sky. Strictly speaking, you don't have to follow those. You can go wherever you like.
But most, you know, it's beneficial to take them because they're preplanned and they know
exactly which altitudes you're supposed to be on and blah, blah, blah. There's all sorts
of reasons to do that. Oh, and they all have numbers. So just like you might say, you know,
I'm driving to San Jose. I'm taking 101. If you're flying from Indianapolis to Bloomington,
you can say I'm taking 305. There's an airway called 305 that goes there. And then these
airways are sort of arranged in spokes around navigation beacons. So you can sort of bounce
off of, you can sort of take them sort of bounce off of the beacons as you get there.
So you can go from like the 305 to like 220 and so on and so forth. And that, like, well,
you can skirt around restricted airspace and so on if you do that. So let's, let me declutter
this to make it a little, let's kind of focus on just a few components here. So here we
have, we have one airway. This is 221. That little blue circle up there, that's Indianapolis
International. So you don't want to go there without permission. They'll probably get mad
at you. And then the weird polygonal thing down at the bottom, that's called an MOA or
military operations area. There's like fighter jets and artillery shells exploding there.
So best to avoid that. So this is the environment that I was trying to, trying to work in to
get a Palm pilot to fly me around safely without getting hit by an artillery shell or in trouble
with Indianapolis International. So, you know, how do we design this thing? Well, the most
basic design might be just have an arrow, right? You know where you're trying to go.
Just have a little, little screen that says it's that way, go that way. The problem with
that is there's wind in the air. And so if you just point the nose of an airplane at the
thing you're trying to go, you're probably not going to get there in a straight line.
You're going to end up drifting off course. And then we blow up. I was, I was going to
make a flame transition there, but it seems like there's probably nervous flyers here
and I didn't want to like. So, so what you have to do instead is you have to, you have
to turn the plane into the wind and you kind of fly sideways like that. So if we've got
wind coming out of the north, we've got to like, we've got to counteract that drift
by keeping the nose pointed that way. So this is called crabbing because crabs go sideways.
And it happens on every, every flight you've ever been on. You just haven't noticed because
you've been up too high. Even if there's no wind on the ground, the wind up at altitude
could be like 100 miles an hour. So sort of key to getting where you're trying to go.
But this, this factor makes it so that you can't just make a thing that says go that
way. And so what they came up with is an instrument called a horizontal situation indicator.
Aviation industry really loves its acronyms and like ridiculously long words. If a, if
a plane flies into a mountain, it's not a crash. It's controlled flight into terrain,
for example. It's my favorite euphemism ever. But so, so this is basically just like a compass,
right? We have a compass, there's a ring around that shows us which direction we're going.
And then, so that'll, if we turn the airplane, then that compass ring will turn with it.
So we know which direction we're going. And then that line in the middle there, that's
the airway. So there's another, there's like a dial where you can dial in like which airway
you want to go on. And then that, and so then it knows like, oh, you are to the left of
the airway and you're approaching it at a 45 degree angle. So, so this airplane is going
to hit that airway and then it's going to turn and then it'll be fine. And so that's
essentially what I built on the Palm pilot. And so we have, you know, a similar situation
here. We've got, we're slightly to the left of the airway and we're approaching it from
the side and then we're going to turn and then go straight along that. And then, you
know, there's all sorts of other information you can provide here since we've got GPS. Like
we know we're 19 miles away from the thing we're going to. It's probably going to take
us 12 minutes to get there. We're roughly 3,500 feet and so on and so forth. What was
next? Yeah, so I mentioned the GPS device gives you this like crazy text format. This,
this thing called the NMEA, which is like the National Marine, they, I don't really
know who they are, but they, they designed this standard for systems on boats to talk
to each other and somehow we ended up using that for airplanes and GPS devices too. Like
even, even like raw GPS chipsets will send this like stupid text format to whatever, whatever
other thing it's attached to on the device you've got. So this is, you know, but it gives
you everything you need and, you know, it'll update you periodically and so on and so forth.
So just parse that and then you're good to go. And then, of course, you also need to
know where airports are. So how do we do that? Oh, sorry, I'm going to back up just to sex.
So once you've got that, we know where the airport is, we know where we are, we know
which way we're pointed. At that point, it's just a simple trigonometric problem, right?
It's, it's a little, it's not quite simple because you have to project the triangle onto
a sphere or a spheroid, perfectly spherical cow. No one knows what joke I'm talking about.
You know, but at short distances, this is a perfect, this is a fine approximation. So,
so that works out pretty well. And then you can figure out exactly like how far off you
are and which direction you need to point to get there and blah, blah, blah. So that's
great. But how do we know where the thing is we're going to? Well, U.S. government to
the rescue again. At the time, there was a database called the digital aeronautical flight
information file, which covered the entire world. It was compiled by the military and
then they gave it out for free, which seems kind of strange. But, you know, they don't
anymore. So I guess that's not very strange. I don't know. That, so that, unfortunately
that data is not available anymore. But you can get the coded instrument flight procedures,
which, you know, another aviationism. It's just aviation data. But that costs a little
bit, a little bit of money from the, from the FAA. So that's, that's pretty great. So
what are the, learnings is not a word. Neither, that's a thing you do with food. Okay. Lessons,
that's a word. Okay. So what, you know, what can we learn from all of this stuff from my
experience here? You know, if you want to work with datasets, the U.S. government has
tons of it. They're just out there, as we know now, collecting all kinds of data and
all kinds of things. Some of it they give away. Probably not, probably not your phone
calls. But, you know, that's for the best, I guess. So it's all housed on, you know,
there's this, you can go to data.gov and they've collected all of the various datasets that
they're making from, you know, carrot delimited food databases to, there's a UFO sightings
database. One of my coworkers, one of my coworkers correlated the UFO sightings database with
the drug convictions database. That was pretty awesome. All kinds of stuff. And then the other
thing is that these kinds of projects, they can simultaneously level up your tech skills
and your skills and whatever your other interest happens to be. You know, every aviator has
to learn some basic navigation skills. But, you know, this project really, like, took
it to the next level for me and really made me think about exactly how all the math works
and all that stuff. And then on top of that, I had to work within the constraints of this
incredibly restricted system, which in a strange way sort of prepared me for some of the work
that I do at Twitter, which is the next point. You know, if you work, you know, I encourage
people to work in environments that they're not familiar with. If you're a web developer,
make a desktop app. If you're a web designer, you know, do some design that's not for the
web and so on. And you can be pretty surprised what you learn. The work that I did on the
navigation system, it's similar to working at scale in the sense that you really have
to get the most out of every little tiny bit that you're working with. You've got to get
the most out of the CPU. You've got to get the most out of your memory. You know, obviously
the difference with working at scale is that you've got tons and tons of machines, but the
demand is also very high. But the end result, as far as, you know, what you have to do as
a programmer is very similar. So that's my talk. I'm Dana Danger. And if you want to
see the code for that system, it's up on my GitHub account, Dana Danger's last kind of.
It's all written in C and for an ancient operating system that doesn't exist, but it might be
interesting if you're ‑‑ if you'd like to see, you know, how the navigation works
in particular. So thanks for listening, and I'll see you at Q&A.
That was ‑‑ can we give another round of applause for Dana, such an amazing person.
I personally have been, like, a really big fan of Dana's, like, just through the community
and on Twitter, just, you know, stalking her every word, you know, that kind of thing,
which is totally normal, right? But I'm really ‑‑ we're really honored to have you, so
thank you. So normally one of the first questions I ask is, like, did you have an aha moment
with programming or computers? Like, even when you were little, like, what was your
oh, shit moment? Yeah. My oh, shit moment, gosh. It's all kind of
a blur at this point, because I started programming when I was, like, eight or nine. I guess I'm
a Paul Graham‑approved programmer. Shout out.
Oh, now I'm in trouble. But, I mean, the thing that I always really wanted to do was build
a role‑playing game, which I still haven't done. So maybe when I get a chance to take
some time off, I'll do that. But I just got really into programming for programming's
sake, and then I decided, like, when I was a teenager, I thought I wanted to be a professor.
My dad is a professor, so that always seemed really cool. So, yeah.
Did you go to school for programming then? No, I did not go to school. I went to Arizona
State for, like, a week. That's when it is.
And I would like to say that my decision to leave was, like, very thoughtful and deliberate,
but, you know, I was 18, nothing that an 18‑year‑old does is thoughtful or deliberate. So,
I give a lot of talks to high schoolers, and that's always, like, a point of awkwardness
between me and the teachers who are hosting me. They're like, oh, we're just going to
school. I'm like, eh, didn't, and I got bad grades in high school. So, ta‑da!
Here I am. Love me. Okay. So, you are fairly well known in, like, the open‑source community.
What was the first open‑source project you contributed to? Do you remember or a favorite
open‑source project? But if you do say bootstrap, I will have to play you off the stage.
Oh, hell no. No. I do not write JavaScript. Okay.
Gosh. I think, honestly, I think the first one I contributed to was ‑‑ I don't even
remember what it's called anymore. It's a software load balancer. I think it's just
called balance. I don't remember. But I didn't ‑‑ I needed a different strategy for allocating
connections to the hosts. And it didn't support the one that I wanted. So, I added it and
that was that. That was pretty cool. I actually haven't done a whole lot of open‑source contributions
which kind of bums me out, you know, more just for lack of time than anything else.
Yeah. So, you're obviously a woman of so many talents,
so many things. You're a licensed pilot as you went through in your talk a little bit.
But you also study, like, crazy foreign languages like Celtic and just ‑‑ unless you're
just trolling the Internet. Like, I'm pretty sure you do those things.
Are there ‑‑ are there any others that ‑‑ any other hobbies that, you know, you have
right now or that you're interested in right now?
Not so much right now. I'm trying to get back into playing bass. I played bass in marching
band in high school, if you can imagine that. I did not actually march. I had an amp with
a car battery. And they just, like, stuck me on the sidelines and then I played bass.
So, anyway, I'm trying to get back into that because that's really fun. I was making chain
mail for a while. That was ‑‑ that's really boring. It's the most boring thing
I've ever done. I mean, you're just ‑‑ you're just knitting with metal. It's awful.
How did you pick that up? Like, what inspired you? Like, were you reading Chaucer? Like,
what are you ‑‑ I think ‑‑ oh, gosh. Somebody sent me a ‑‑ somebody sent me
a link to this woman's website. She makes chain mail jewelry, which is totally awesome.
And I was like, oh, I can do that. Surely. Surely she hasn't invested tons of her time
and energy into perfecting this craft. I can just do it overnight.
Yeah. How white mail of you, like, you know, how, like ‑‑ wait a nail ‑‑ wait
a ‑‑ like, take that back, like, for us, you know? Yeah. Yeah.
Women in chain mail. That's my new ‑‑ it's going to be me and one other person.
Yeah. Do you need a website? I'm available. I can ‑‑ yeah. Oh, great. Okay. So, my
next thing was literally, okay, tell us about flying, but you told us so much about that
already. So, my next question is, when are you going to space? Oh, God. So, this is my
favorite thing ever. So, Axe Body Spray. I don't know of you all. Yeah. Any story that
starts with Axe Body Spray. Either ends in hilarity or sadness. So, they ran this promotion
where they were going to ‑‑ they were going to ‑‑ I don't even know if it was
just a sweepstakes or you had to, like, write ‑‑ no, you do not have to write essays for
Axe Body Spray. What am I saying? They were going to send some modi into space on one
of those, like, suborbital flights, you know, like the Spaceship One or whatever. It wasn't
Spaceship One, but it was the same deal. And they were like ‑‑ and it was this, like,
super gendered thing. They were like, be the first, like, bro in space or whatever. You
know, it's like, hey, man. Get smear not iced in space. Exactly. Have the first natty
light in space. And so, I was like, wouldn't it be fucking hilarious if Axe Body Spray had
to send the first trans woman ever into space? Yeah. So, I tried to do that, but obviously
I didn't win, so. Or is it ‑‑ you're missing your, like, headband and your, like,
you got to, like, have the style to win that bro contest, yeah. Obviously. Yeah. So, where
have you flown? Like, where have you personally, like, what are your flight paths that you've
taken? Most of the flying I did was in Indiana. That's where I learned how to do it. I haven't
done a whole lot of flying out here, partially because, you know, I've been ‑‑ Twitter
is a big time commitment. And flying out here is actually a giant pain in the ass, because
you have to go to, like, Palo Alto or somewhere down in the peninsula. So, you know, it takes
like an hour to even get to the airport. And then you've got this, like, totally insane
airspace to deal with once you get up there. So, it's just, you know, it's really sort
of, like, nerve wracking and not very enjoyable for me. So, I'm hoping to do more of that,
you know, in the coming year and so on. But gosh, I flew to Michigan. I flew Illinois.
Lots of little tiny airports for, like, they call it the $100 hamburger. You just fly
to some random tiny airport and there's, like, a diner there and you eat food and you get
fat and then you go back. I think the longest flight I did was to South Carolina from Indiana.
That was really cool. I did that ‑‑ you need to have, like, a long flight to qualify
for your commercial license. So, that was what I did that for.
Cool. That counts as a long flight? That was about 300 miles, I think.
Oh, nice. Yeah.
It's got to be over 250, if I remember correctly.
Cool. Right.
Oh, and I flew on a lake. I flew a seaplane. That was really fun.
That's awesome. That's really cool. So, how do you ‑‑ like, how do you
think about when you want to learn a new skill, even if it's a new programming language, I
know you got really into, like, Scala last year and, I don't know, again stalking her
on the Internet. How do you decide what you want to learn next or how do you prioritize?
Most of the stuff that I've ‑‑ well, most of the languages that I really mastered
have been languages that I've learned on the job. I think every single job I've gone
into, I've had to use a language that I either had never heard of or, you know, had heard
of but never really used or, you know, if I had used it, I hadn't used it to an extent
that would, you know, make me a professional. So, you know, I learned Ruby and Rails on
the job at the moms and pets websites. I learned Scala at Twitter.
And so it's, you know, the thing that keeps me going is learning new things. And so, you
know, I could conceivably still be writing Ruby on Rails if I wanted to. There's still
a lot of Ruby at Twitter, despite rumors to the contrary. But, you know, I did that for
‑‑ I did that for four years and I just wanted to try something new.
So, you've been at Twitter for almost four years now, right? How did Twitter find you?
I know you kind of glossed over this in your talk, but how did they do it?
Yeah. Twitter found me on GitHub, so thank you. I ‑‑ so the contribution that I
made to that software load balancer turned out not to actually do what I wanted to in
the end anyway. So I just wrote my own. And I just got this random email totally out of
the blue from Marcel Molina, who, well, still is an engineer at Twitter and was at the time.
And he had been ‑‑ I guess he'd been trolling GitHub for engineers. I don't really,
you know, I don't know what the back story there is.
As one does. As one does. Maybe for dates, I don't know. No.
Must write C++. Yeah. Oh, no.
That's what my OKCupid says. Deal breaker. Deal breaker.
Anyway, so he saw the load balancer that I'd written and he thought it was ‑‑ he liked
the way it was written. And it was in Ruby, so it demonstrated some skill in the language
that we were using at the time. So I had like the shittiest day that day. And then I got
home and I was like, I hate everything. I'm going to take a nap. So I took a nap and then
I woke up. It's like 8 p.m. and I opened my laptop. And there's this email, Twitter engineering.
And I'm like, you assholes. I hate ‑‑ why are you playing this joke on me? But no,
it was for real. So how do you think they keep you? I mean,
like four years in a Twitter ‑‑ I mean, you don't have to go into details if you don't
want to. But what are some of the things that you really love about working at Twitter or
have loved? I love that it's completely insane. It's sort
of ‑‑ I don't want to say it's like an anything goes workplace. But it's the most
relaxed and ‑‑ I don't know. I've been there four years and I still haven't found
a good way to articulate this. But it's sort of simultaneously relaxed and intense. Like
it's relaxed in all the right ways and intense in all the right ways. People are really intense
about, you know, wanting to be good engineers and to build good systems that do good things
for the world. And they're relaxed about pretty much everything else. I don't know. It just
feels like my people there. And then, you know, the food doesn't hurt.
Big fan of snacks as well, personally. Oh, the cheese.
So, do you work with any other women on the team you're on now?
Yeah. So, well, I'm sort of in between teams, like I alluded to. The ads API team, I worked
with Sarah Brown, who's really awesome. She joined around the same time I did and was
doing front end development. She made the jump to Scala around the same time I did,
I think. So, she's pretty great. And my new team, I'm going to be working with Sharon
Lee, who's, she's going to be my boss. I used to be her boss at Twitter. So, the tables
have turned. I'm not really sure who's benefit. But, yeah, she's, you know, she's fantastic.
So.
What do you think it's, I mean, this is such like a loaded question, but you talked to
your tweet from the other day that you posted at the beginning of your talk that said, oh,
welcome to tech. When you're in a woman in tech, you have two jobs. And that is, you
know, your regular job and then also being a woman in tech. What do you think it like
for you, what it's like to work with mostly men?
Gosh, I, I don't think about it a whole lot. And, you know, because I am a trans woman,
I have, you know, I have the history of being raised male. And so I, there's, I think, you
know, it's, it would be, it would be ridiculous to say that that doesn't influence the way
that I interact with men. So, you know, most of the time it's, it's not really something
that's on my mind. And especially at Twitter, it's, you know, we don't really have like,
you know, it's not like the Wolf of Wall Street.
Right. Exactly. Yeah. I think like one time somebody put up a flyer on the men's room,
but not the women's room. And we fixed that. So, like, that's, yeah, that's kind of been
hot drama.
Yeah. Wow. Really hot. Although, I will say, I did, I did have one time where I sat down
in the cafeteria and this guy, an engineer who I hadn't met yet sat down across from
me and introduced himself and he said, so are you in sales or marketing?
Oh, motherfucker.
Yeah. He no longer works at Twitter.
Right.
He's, he's dead now. That's a great transition into, I wanted to ask you, we could talk a
little bit about Lambda ladies and what inspired you to start a community for women who want
to get involved in functional programming and also maybe you could just gloss over what
functional programming is for all the younger people in the audience who aren't familiar
with that.
Yeah. Functional programming is programming for nerds. I know you already think of programmers
as nerds, but within the set of nerds there are even nerdier people. It's, it's a way
of, so traditionally the way that one thinks of programming is like a list of commands
or issuing orders to the computer, you know, and no matter what kind of programming language
you're using, ultimately that is what's going to happen, you know, on the machine code level.
But functional programming is more, is more declarative and it's more descriptive. Instead
of saying like, do this thing, you say, you're, you're literally just writing mathematical
functions.
And so you say like, when you, when you give this input to this function, it produces this
result. And it's, it's all about, you know, not mutating any, any state. And I totally
blanked on the second thing I was going to say about that. But anyway, it's super hot
right now.
Super hot.
I read a lot of medium posts about it. So, yeah, so like what, what got you involved
in that? Like what inspired you to build a community specifically for women who like
functional programming?
So I can't remember, I can't remember which of the five of us got in touch first. But
you know, the, the sort of co-founders of the group, Kelsey Gilmour-Innes, Susan Potter,
Rachel Reese, and I only know her by her Twitter handle, Code Miller. I'm a horrible person.
How embarrassing.
Anyway, we, originally, we had gotten together because we wanted to do a, a presentation at
Grace Hopper about functional programming. And so, and we called ourselves the Lambda
Ladies. We, that proposal got rejected, unfortunately, but we were like, why don't we just start
a thing called Lambda Ladies? And we thought like, okay, we're going to start this Google
group and get like 10 people or whatever. But we're like, we're up to over 100 now already.
And it was, I mean, it was just astonishing how much pent up demand there was for this
kind of community.
That's really cool. Finder People is basically like one of those, it's one of those things.
So another thing that Dana does that maybe you didn't mention in your introduction was
that she actually works with the State Department in the State Department here, but working
with India on women's issues. And I just wanted to talk a little bit about your work there
and how you manage, you know, that kind of stuff with all of the work you do in the open
source and programming communities.
Yeah. Wow. So let's talk about imposter syndrome for a second. I got, I don't know if you all,
I don't know how many of you have heard of Katie Stanton. She's our VP of international
market development. She used to be at the State Department and at Google before that.
So absolutely astonishing woman. She's really great. But one of her State Department colleagues
emailed her, I guess about a year ago, asking if she wanted to help out with a Clinton global
initiative proposal that they were putting together for getting more women into tech
in India and a couple other countries. And, you know, Katie couldn't do this. And so she
sent it to me for some reason and to other people and the other women were like, no way.
And I was like, yes, of course I'll do that because I don't read things before I agree
to do them. Kind of how I ended up here. I'm kidding. I laughed you.
Now I know whenever I want something from you to just send you an email with a blank
subject line and you say yes before you actually realize what you're committing to.
Totally. Yeah. So anyway, so the commitment was to go to India for four days with about
a dozen other women from tech companies, all kinds of companies like Microsoft and Cisco,
maybe not Cisco, but sort of established like Intel, Microsoft, so on and so forth. And
when I got the sheet for this, like the State Department schedules things down to the minute,
they were like you were going to pee between 904 and 908 and then you're going to go to
your next meeting at 912. And so they have this huge packet that they send you before
you do anything. And so they, you know, I get the information for the trip and I'm looking
through all the bio. I had to write a one page bio as well. That was insane. So I'm
looking at all these bios and it's all like vice president of so and so and, you know,
C-suite level executive. And here I am like software engineer. So I emailed Katie, literally
said what the fuck have I gotten myself into? I'm totally outclassed here. And she was like
whatever, no you're not. It's cool. Just go. So I just went and it turned out to be like
super awesome. And I had lots of, you know, learned lots of great things there. Met with
tons of people, you know, government, parliament representatives, you know, NGOs that are doing
work there for women in tech and so on and so forth. So it was, you know, a really powerful
experience. And, you know, the proposal got accepted. So that that program is gearing up
to get underway right now. So it kind of hit you by surprise. But if some of the women
here wanted to get involved in programs like that or even creating something like Lambda
Ladies, what's your best advice for them? So they're, it's sort of weird how this like
network of different NGOs and the State Department works. So a lot of the stuff that I do that
involves the State Department is through this group called the International Institute
of Education. And they, they run all kinds of different programs on behalf of the State
Department, one of which is called Tech Women, which is a mentoring program for women from
the Middle East and North Africa. They, these women apply to come to the States and have
like a one month stint at a tech company. And then, and then there are professional
mentors and cultural mentors that apply from those companies. And then they get to mentor
these women and so on and so forth. So that's a really good way to get get involved in it.
And usually like, so you do that for a month and you come up with like a project for them
to work on and, you know, hang out with them like take them, they always want to go skydiving.
I don't know what that's about. But then they find out that we don't give them health insurance
and they're like, oh, maybe not. That's not such a good idea. But that's a really good
way to get involved in that stuff. And then a couple months after you do that mentoring project,
you don't have to, but you have the option to, to visit one of the countries that's represented
in the group. So I, I mentored a woman from Morocco, Salima Kessie in October. And it's
coincidental that we just happened to be going to Morocco for the travel portion of
this, but it's going to be pretty great to go see where she's from.
So, awesome. So we have some time to take a few questions from the audience. Does anyone
have anything they want to ask Dana? Okay, there you go.
Where do you see the technology industry going in the next 10 years?
The question was, where do you see the technology industry going in the next 10 years? Where's
that magic eight ball that we have around here?
I have no idea. More cat pictures. Yeah. Sorry. If I knew that, I wouldn't, I wouldn't be,
I wouldn't be working for somebody.
What would you like to see it go? Where it, she liked to see it go. Is the question?
You know, from an impact perspective, I, well, so one of the things that I think gets glossed
over a bit when we talk about women in tech is that there, there are also enormous racial
disparities in tech. And I think that that's something that's, there, there are programs
that are working on this, like black girls code and so on, but I don't, I don't think
they're quite getting the attention that they deserve yet.
And so that's, that's something that I would really like to see more of happen. And then,
you know, the, the conflict has been brewing between the tech industry and, you know, the
other citizens of San Francisco. That's, that's, that's got to, we've got to come to a solution
on that. We can't, we can't just keep, you know, yelling at each other and expect for
something good to come out of that. Any other question?
So I feel like tech suffers from it, you know, and when I think back to social studies, there's
two benefits on society in India. Do you see a parallel with the benefits and how, like,
it's growing?
Yeah, let me, let me, I mean, there's this like amazing quote that's like, you, you put
more women at the table because it makes the table a better table. So I don't know if that
actually, like, I mean, I see things changing. I don't know.
Yeah. I mean, so there, there are a couple of problems here. One is that the number of
women in tech has actually declined quite a bit since the 80s. It used to be like 35%.
This is in computer science majors used to be like 35%. And now it's down to like 12.
So, you know, as far as getting women at the table, that's, we've got to fix that before.
Otherwise, there aren't going to be any women to put at the table. And then, and then the
women that are in the industry, they're not in positions of leadership. You know, we still
have a really big leadership problem. So that's something that needs, that needs to change
as well.
Also, I also want to say, it's sort of, I don't want to say it's a pet peeve of mine,
but I've gotten a little jaded on the idea that like, oh, we should bring women to the
table because they have unique perspectives and so on. It's like, well, yes, that's true.
You should also bring women to the table because they're people, right? It's like, no one is
saying the good thing about having the men at the table is that they have male perspectives.
It's like, no, they're just there. They just happen to be the people who are working on
these problems, right?
Yeah. I mean, it's interesting because, so I recently read this article about how people
have basically ignored feminism on the entire continent of Africa. I mean, there are countries
where 64% of Rwanda's parliament is now female and they did enforce some kind of quota, like,
that's more towards like the perspective, but I mean, it's pushed beyond that and there
is a huge feminist movement going on there right now. So there's something about this
industry that makes us think that our problems are very like unique and that they aren't being
addressed in other industries or other cultures or other countries. And I think if we started
paying more attention to how other people are, you know, tackling these issues, I think
we'd get there a lot faster. I think tech has a lot of growing ups to do. I think that's
my, that's my bit, my bit for tonight. Yes.
Do you think part of the problem is that we, we sort of picked like very specific groups and were like, okay, like today, like this group, we're going to like bring them up. Part of the thing about like just bringing people to the table is like, I wonder what you think about like how effective at, are we going to be at the quality in general? If we like continue to go like group by group, like first we're going to do women and then we're going to do minorities and then like, we have incredible disparities also in like poverty and in like education, like all these things. Do you think it is?
Do you think it is, maybe from a technical perspective, more efficient to go like one by one or to just say like, how about just to bring more smart people to the table, whoever they are?
Yeah, I've actually got a piece about this coming out on Monday, which is that, you know, when we talk about women in tech, we're talking about, we're talking, you know, women, women as a group intersect with all of these other groups, right? When you talk about racial minorities or class or, you know,
sexuality, gender identity and so on and so forth. And I don't, you know, it kind of goes back to what I was saying earlier, I personally don't see that sort of heterogeneity being taken into account in a lot of the sort of women in tech solutions, right?
I mean, like take Lean In for example, it's like, yes, let's help upper class women who went to Ivy League schools have careers by, you know, reinforcing all of the existing structures in the workplace.
Great. Sounds awesome. Not really for me. So, yeah, you know, I would agree with you that, you know, the second wave feminism, one of the big things about second wave feminism was that the first wave didn't really care about women of color,
didn't address any of their interests. It was really just like women's rights at that time were upper class white women's rights. And one of the whole points of the second wave of feminism was to address that.
And so I feel like we run the risk of repeating that mistake.
Okay, I'm going to take two more questions. Too many men have been raising their hands. I've got to balance this out right now. This lovely lady in the front. What's your question?
I mean, one of the biggest blockers is there's almost a marketing problem in a way, like the way that tech careers are described tend to be more appealing to men and boys than they do to women and girls.
And there was a study maybe like four or five years ago by like a marketing consulting firm that looked into this and they looked into the specific ways, the specific language that was being used to describe tech careers to college bound high schoolers.
And they found that, you know, if they just if they if they focused on sort of different, different aspects of careers in tech, then they could not not totally reverse, you know, girls disinterest in getting into tech, but it made a significant difference.
So that's, that's a big part of the problem, I think. I don't know, it's, it's tempting to say that there's just a pipeline problem, but I don't, I don't think it's that simple.
I really think it's about the way that tech careers are positioned in society and how we describe them.
You, I can see you from here, but I can't point.
So there, there were some alternatives. Garmin, you know, they make GPS units for cars and so on. They also make units for airplanes.
But that's no fun.
One more question, maybe.
My second question is, how do you find the balance between your two jobs of one of which are normal job, like your programming job and also being a woman in tech?
I have to admit, I'm not very good at that.
Like I said, I kind of have a habit of saying yes to everything.
You know, and I think, gosh, I can't even remember if I gave a talk in November or not.
And then I swore the rest of the year, I'm not doing anything.
And then two days later, I get three emails from people and I'm like, oh yeah, I'll totally write that article.
I'll totally do this other thing for you.
And I'm like, what is wrong with me?
So I just, you know, kind of learn to say no.
One thing, the second part of your question actually about like what other female engineers can do, advocate for other women and also just positive reinforcement.
Like I've noticed even in some of the female programmers here that I've sought out specifically and like gone and had coffee with and said, hey, I think you're really awesome.
Like you should work at GitHub.
And I remember a few of them saying, I'm not good enough to work there.
But I don't feel like I hear that a lot from men.
I think I hear that a lot, much more from women.
So I make it a point to tell the women who I know who are kick ass that they are their kick ass and that they deserve everything that any man in this industry has.
So advocate for them and reinforce positive things about them.
And also advocating for women within your organization, I think is really big.
I hammer on this point every time I get to talk to people.
There's all this talk about mentorship, which is fine.
It's fine to have mentors, but it's way more important, I think,
to have an advocate at your company.
So Katie Stanton, who I talked about earlier, she's, you know, these are all sort of these can be informal arrangements.
Some companies have really formalized sort of like ritualized ways of arranging this.
But, you know, Katie Stanton just believed that I could do this thing in India.
And so she said, do you want to do this?
And that was fine.
And then my boss for a long time, Rafiq Iqorian, you know, he believed in me.
And his mentorship is like, so mentorship is an activity that's directed at you.
Advocacy is an activity that's directed at everyone else.
And I think you really need to have a lot of that.
Yeah, keep opening doors for the women after you.
It's ironic, open the door for women.
Help them open the door for themselves.
Hold it for them.
Yes.
Make a grand flourish.
Curtsey.
No.
Thank you guys so much for joining us for Passion Projects.
I think Dana's sticking around.
So.
