sophie alpert Profile Banner
sophie alpert Profile
sophie alpert

@sophiebits

Followers
65,275
Following
950
Media
629
Statuses
17,929

be kind, be curious 🏳️‍🌈 she/her

san francisco
Joined May 2007
Don't wanna be here? Send us removal request.
Explore trending content on Musk Viewer
Pinned Tweet
@sophiebits
sophie alpert
3 years
logging lets you travel through time debuggers let you travel through space
18
76
552
@sophiebits
sophie alpert
6 years
Timeless software engineering skills: 1. Not feeling scared to change code you didn't write 2. Empathy for your users and for your collaborators 3. Ability to communicate ideas clearly I'd hire someone with these skills any day.
104
2K
7K
@sophiebits
sophie alpert
4 years
no I actually did not want to search google for `localhost:8080`, thank you
60
458
6K
@sophiebits
sophie alpert
6 years
life hack: console log function that auto-indents based on the depth of your call stack
Tweet media one
70
1K
5K
@sophiebits
sophie alpert
3 years
Knuth check
Tweet media one
102
264
5K
@sophiebits
sophie alpert
6 years
To the YouTube commenters saying me being a “thing in a dress” takes away from the content of my keynote: I was React’s #1 committer for its first 5 years, and now I manage the team. This content wouldn’t _exist_ without me. Would be cool if you respected me as a person too.
225
649
5K
@sophiebits
sophie alpert
3 years
365/365
Tweet media one
Tweet media two
123
85
4K
@sophiebits
sophie alpert
2 years
concept: german bakery named Gluten Tag
59
292
4K
@sophiebits
sophie alpert
5 years
Just got out of an interview during which the candidate searched Stack Overflow and copy-pasted some code… from an answer I wrote. (They didn’t notice.)
137
254
4K
@sophiebits
sophie alpert
1 year
I have 10 years of react experience
Tweet media one
72
132
4K
@sophiebits
sophie alpert
4 years
Last week, I was promoted to head of engineering at work!
136
23
4K
@sophiebits
sophie alpert
6 years
Today's my last day at Facebook. I'm gonna miss working on React full time, but I'm excited to try something smaller and new: I'm joining @humuinc next week as an engineer.
212
138
3K
@sophiebits
sophie alpert
7 years
Today's props go to Airbnb, who kindly edited my new name and pronouns into all the past reviews I've received from hosts – so new hosts who read them aren't confused. I feel appreciative of processes that aren't garbage to trans people.
15
250
3K
@sophiebits
sophie alpert
6 years
My programming strategy: if something can be fixed or made better in less than 15 minutes, don’t file a task for later or for someone else: just do it!
89
522
2K
@sophiebits
sophie alpert
4 years
Unpopular opinion: moving "constants" that are used once to the top of the file is often less readable/maintainable than leaving them inline
122
141
2K
@sophiebits
sophie alpert
6 years
I’m 26 today! 🎂 happy birthday to me
Tweet media one
257
18
2K
@sophiebits
sophie alpert
5 years
The real “clean code” is code that is easy to understand, verify, and change. Which often means more repetition and less abstraction.
34
377
2K
@sophiebits
sophie alpert
6 years
my rule for .reduce(): only use it when the result has the same type as the items and the reducer is associative, like .reduce((a, b) => a + b, 0) ✅ summing some numbers ✅ multiplying some numbers 🚫 building up a list or object 🚫 just about anything else (use a loop)
107
284
2K
@sophiebits
sophie alpert
6 years
Don't listen to people who tell you your tools are bad. If you're happy with your tools and they're helping you build great stuff, that's all you need.
29
341
2K
@sophiebits
sophie alpert
6 years
My one tip for organizing code: If two files are usually edited together, combine them into one. That is, organize your code to minimize the number of files (or directories) that the average commit needs to touch.
71
289
2K
@sophiebits
sophie alpert
6 years
> aGkgdHdpd… me: I have no idea what this is > aGkgdHdpdHRlcg== me: oh it’s base 64
25
207
2K
@sophiebits
sophie alpert
6 years
In this community we respect all people. If you have a problem with that, you don’t have to use React.
32
146
2K
@sophiebits
sophie alpert
3 years
Simply have no feelings, write clean code, and you will be successful here
25
79
2K
@sophiebits
sophie alpert
5 years
if I was starting a new company I’d seriously consider using Rails not because I agree with most of their technical decisions (I actually disagree with a lot of them!) – but because having a Polished, Proven Universe That Works is _super_ valuable
55
138
2K
@sophiebits
sophie alpert
6 years
dinner with the @reactjs team!! first time I’ve seen the whole team in one place since 2016 💖💖
Tweet media one
25
40
2K
@sophiebits
sophie alpert
3 years
instead of frontend vs backend as the two Main Types Of Engineers maybe we should talk about low-level code vs high-level product vs infra external users vs internal users
30
157
2K
@sophiebits
sophie alpert
7 years
Really excited to share with all of you: I'm trans! Today is a great day because I get to start being me. 💖
154
51
1K
@sophiebits
sophie alpert
6 years
Good API design is the hardest part of building libraries.
29
195
1K
@sophiebits
sophie alpert
3 years
at facebook someone told me, “coding is the most important part of being an engineer, which is why 2/4 of the onsite interviews are coding”, which only seems like a worse and worse take as I think about it each passing year
40
59
1K
@sophiebits
sophie alpert
5 years
Someone asked me today about the differences between Google’s and Facebook’s engineering cultures. Based on what I know, here’s what I said:
18
259
1K
@sophiebits
sophie alpert
5 years
hey it’s been two whole years since I came out! 🥳💖🏳️‍🌈
35
5
1K
@sophiebits
sophie alpert
6 years
Happy 5th birthday, React!
Tweet media one
17
203
1K
@sophiebits
sophie alpert
5 years
literally just got an email offering me $600 if I send a pull request to their project because of the visibility it’ll give them what is the world coming to
Tweet media one
82
180
1K
@sophiebits
sophie alpert
6 years
After getting back into app dev, I feel like the React team has * underestimated how much code in apps is related to data fetching/management * overestimated how complex data reqs for most apps are. At least, I did! Now feeling like a read only react-fetch pkg _would_ cover 95%.
52
109
1K
@sophiebits
sophie alpert
6 months
he didn’t notice 500ms of latency in his own workflow; he was investigating the source of high sshd CPU usage reported in performance monitoring tools
Tweet media one
7
49
1K
@sophiebits
sophie alpert
6 years
you can see me today because it’s #TransDayOfVisbility ! being me is one of the best things I’ve ever done 🏳️‍🌈
Tweet media one
13
32
1K
@sophiebits
sophie alpert
5 years
I think it's time for a new profile picture
Tweet media one
39
4
1K
@sophiebits
sophie alpert
7 years
React v16 is out! 😄 Read my post going behind the scenes of how we rewrote the whole thing: .
31
522
1K
@sophiebits
sophie alpert
4 years
google cloud support, week 1: are you sure you’re not using it wrong week 2: ok we’re looking into your problem week 3: we’re still looking week 4: still looking week 5: it’s been a month so we don’t have the logs any more to investigate. case closed! ✅
28
46
1K
@sophiebits
sophie alpert
4 years
What you should take away from this: In a typical app, tons of components only rerender when there’s new data. This will let you run those components on the server instead. Which reduces client bundle size. A lot.
@reactjs
React
4 years
As 2020 comes to an end we wanted to share a special Holiday Update on our research into zero-bundle-size React Server Components. The demo is available now whether you want to play with it during the holiday, or when work picks back up in the new year.
Tweet media one
161
1K
5K
23
189
1K
@sophiebits
sophie alpert
3 years
Returning from a 1-week vacation is the worst length because everyone will have just waited for you to come back instead of figuring their shit out another way…
13
43
1K
@sophiebits
sophie alpert
5 years
That React Component Right Under Your Context Provider Should Probably Use `React.memo`
35
151
1K
@sophiebits
sophie alpert
2 years
who do I need to bribe to make the next apple watch have a co2 sensor? it would be a gift to global public health
18
65
953
@sophiebits
sophie alpert
5 years
using a monorepo solves many code management problems, and in turn it does introduce some of its own. but ime, the problems caused by a monorepo can be tackled by a single centralized team, whereas the downsides of many repos end up slowing everyone on a team down slightly
40
155
950
@sophiebits
sophie alpert
5 years
Hi! Watch my talk from last week's React Conf! It's about how to build your own React renderer. React DOM? React Native? React <whatever you want>!
30
160
943
@sophiebits
sophie alpert
1 year
Excited to say I'm now considering new job opportunities! I was an early user of React, managed the team at FB, and recently finished a VP Eng role at Humu. Now I'm looking to join a diverse, kind, hypercompetent team, with a role where I can empower and upskill engineers.
19
128
919
@sophiebits
sophie alpert
6 years
👀 Looks like the React Devtools extension on the Chrome webstore now has over 1,000,000 users. That's over a million developers using @reactjs ! 🎉
18
148
892
@sophiebits
sophie alpert
5 years
Working at a 50-person startup, I feel like the most important things I can spend time on are building the right culture and habits on our team for the future. Feels way more important to me than any of the actual product decisions.
26
88
899
@sophiebits
sophie alpert
6 years
Using fancy words instead of simple, common ones makes things harder to understand. Your writing will be clearer if you stick with a small vocabulary.
47
161
883
@sophiebits
sophie alpert
5 years
I'm shocked global calendar optimization is still Not A Thing. * Need a room all day, but it has a 30min block already? * Need to meet w/ 7 people, but every slot has _1_ person with a conflict? * Back-to-back mtgs on opposite sides of an office? Computers should solve this. 🙈
32
59
848
@sophiebits
sophie alpert
5 years
TIL: `background-color: currentColor` pulls the element's text color! Works on all modern browsers (IE9+).
13
96
807
@sophiebits
sophie alpert
3 years
instead of making a rainbow logo for pride month, make it so people can easily change their name *everywhere* it appears in your products looking at you @Spotify with the unchangeable usernames 😠
16
94
793
@sophiebits
sophie alpert
5 years
my new favorite thing is how every language has its own little abbreviation of "for example" e.g. – English p.ej. – Spanish p.ex. – French z.B. – German
84
79
790
@sophiebits
sophie alpert
4 years
Some people seem impressive on the internet but are disappointing when you get to know or work with them. Dan's the real deal. A great person, and talented too. A++, would work with again
2
30
780
@sophiebits
sophie alpert
5 years
At Facebook we often ended up preferring GraphQL types based more around a "view model" rather than a pure, normalized "model" for a few reasons:
13
153
752
@sophiebits
sophie alpert
4 months
@TkDodo good news re Suspense, just met w/ @rickhanlonii @en_JS @acdlite * we care a lot about SPAs, team misjudged how many people rely on this today * still recommend preloading but recognize not always practical * we plan to hold the 19.0 release until we find a good fix more to come
21
99
746
@sophiebits
sophie alpert
5 years
New blog post: "Fast and maintainable patterns for fetching from a database"
14
129
738
@sophiebits
sophie alpert
5 years
what
Tweet media one
42
24
731
@sophiebits
sophie alpert
6 years
sure React 16.6 is good but just wait until you see what we’ve got for 16.7! I think I’m more excited about 16.7 than any release before it 😀
23
87
726
@sophiebits
sophie alpert
6 years
More than anyone else I know, I like to fix stuff. Especially in code I didn't write. In this post, I explain why and how.
32
112
724
@sophiebits
sophie alpert
6 years
luv 2 find a stack overflow answer I wrote 7 YEARS AGO that tells me exactly what I want to know
17
32
715
@sophiebits
sophie alpert
7 years
How to build a good test suite: 1. Every time you fix a bug, add tests that would have caught it 2. Wait a year or two (There is no step 3.)
11
243
713
@sophiebits
sophie alpert
5 years
Instead of Google forcing AMP on people, someone should make guidelines for writing fast webpages and a way to statically verify if pages follow them. Then G can add an icon in search results to mark fast pages. You could call that standard Accelerated Mobile Pages or something.
23
72
710
@sophiebits
sophie alpert
6 years
If we wrote official React guides with examples and “best practices” for topics like: animations, forms, error handling, data management… what would you most want us to cover? (More specific suggestions are better!)
148
71
704
@sophiebits
sophie alpert
6 years
Heading to Google HQ this afternoon to host a Q&A with their engineers about building with React!
28
55
677
@sophiebits
sophie alpert
6 years
If I have to choose between building a community that attracts (a) a diverse group that cares about the consequences of their words and actions, and (b) only people who aren’t offended by anything, I know I’ll choose the former every time.
25
100
677
@sophiebits
sophie alpert
5 years
Looks like about 1 in 4 developers (professional or not) use @reactjs according to the @StackOverflow survey. And 3/4 of them would happily use it again! 😎
18
65
673
@sophiebits
sophie alpert
5 years
ah yes, the six genders
Tweet media one
16
57
671
@sophiebits
sophie alpert
5 years
people say “manager readmes” are cocky+prescriptive, but if I want to tell things like * your health is more important to me than your work, or * if you’re unhappy please lmk and I’ll try to help even if that means you leaving the team why _shouldn’t_ I write in a durable doc?
29
43
667
@sophiebits
sophie alpert
5 years
Whenever a rule is added in a team, first ask: Will the existence of this rule discourage future people from using their human judgement to make smart decisions in nuanced situations?
11
155
662
@sophiebits
sophie alpert
6 years
I’m really enjoying my new job, but I miss working on React a lot
16
5
654
@sophiebits
sophie alpert
6 years
good day to be a woman
Tweet media one
11
2
642
@sophiebits
sophie alpert
6 years
and may I present: the fix I just wrote.
Tweet media one
28
54
638
@sophiebits
sophie alpert
6 years
oh yeah so you’re a feminist? go ahead, name three women
56
78
620
@sophiebits
sophie alpert
5 years
25% of professional developers use @reactjs . At least, according to Stack Overflow's 2019 Developer Survey (17,800 out of 72,500). Wow.
12
81
632
@sophiebits
sophie alpert
6 years
You should apply for jobs that list some qualifications you don’t have. But also: if you do meet all of the preferred qualifications in a job ad, there’s a good chance you are overqualified.
9
123
639
@sophiebits
sophie alpert
5 years
is there anything worse than a mobile website that scrolls horizontally (just a little bit)
32
17
629
@sophiebits
sophie alpert
6 years
feeling grateful this weekend for all the amazing devs on my team. in alphabetical order:
11
32
627
@sophiebits
sophie alpert
3 years
new profile pic! photo credit @emilymhorsman
Tweet media one
16
1
618
@sophiebits
sophie alpert
2 years
in uncertain times, remember to focus on the important questions
Tweet media one
5
65
618
@sophiebits
sophie alpert
6 years
when you try out React 16.7 alpha I think you‘re gonna be totally hooked
21
57
612
@sophiebits
sophie alpert
6 years
I can’t believe I missed the date but: as of this past weekend, it’s been a year since I came out as trans! I’m much happier now. 💖 (Supporting trans folks is good and saves lives!)
15
5
608
@sophiebits
sophie alpert
6 years
Feelin' bored tonight so I just wrote and published a new post: why do code reviews?
18
193
601
@sophiebits
sophie alpert
4 years
Tweet media one
14
48
604
@sophiebits
sophie alpert
5 years
What if React errors had the full props objects in each component stack?
Tweet media one
34
19
598
@sophiebits
sophie alpert
5 years
I used to say "I believe in capitalism" to mean "I think markets are sometimes good at optimizing for things" but then I realized that most other people who say that mean closer to "if you're starving, you deserve it" – so I stopped saying it
18
44
596
@sophiebits
sophie alpert
3 years
tell me you use z-index without telling me you use z-index
Tweet media one
15
22
576
@sophiebits
sophie alpert
6 years
if A players hire A players but B players hire C players… who hires B players?
68
52
569
@sophiebits
sophie alpert
5 years
is this what it feels like to be an influencer
12
4
557
@sophiebits
sophie alpert
5 years
¯\\\_(ツ)\_/¯ that's how you shrug in markdown
13
53
557
@sophiebits
sophie alpert
4 years
WTB a lint rule that detects const [processedData, setProcessedData] = useState(); useEffect(() => { let processed = /* do something with data */; setProcessedData(processed); }, [data]); and tells you to use useMemo instead.
18
62
561
@sophiebits
sophie alpert
5 years
the jar of pickles I just bought says Serving size: 1/2 pickle so I’m not convinced the person who wrote it actually knows what a pickle is
15
27
548
@sophiebits
sophie alpert
6 years
I wonder if React should warn against <button> without a type. it's type="submit" by default but that's often not what you want!
55
41
538
@sophiebits
sophie alpert
5 years
Email in my inbox. Think I should take them up on it? 🤔
Tweet media one
25
18
534
@sophiebits
sophie alpert
6 years
Why does everyone claim GitLab is the obvious GitHub alternative? My mind goes to BitBucket.
70
71
502
@sophiebits
sophie alpert
6 years
Making your code unnecessarily general can really hurt maintainability because it's less likely to fit your future needs. Corollary: Third-party libraries, unless supremely well designed, also often hurt maintainability because you're likely to outgrow them.
17
104
525
@sophiebits
sophie alpert
3 years
shot 2 ✅ please get it if you can – and I’m hoping that our government decides to offer help to folks in India and elsewhere who desperately need it
Tweet media one
16
3
512
@sophiebits
sophie alpert
6 years
1. first full year of being a manager (imo it went pretty well)! 2. first full year of being a lady (or rather, being treated as one)! 3. made some new friends (whom I love a lot)!
14
5
508
@sophiebits
sophie alpert
5 years
if you watch the position of the blue bubbles here, you can see they lag behind the window resizing 🙈 if you can, make your 'resize' handlers 60fps so you don't need to throttle!
18
44
506