Wes Profile Banner
Wes Profile
Wes

@wesleytodd

2,050
Followers
728
Following
532
Media
14,986
Statuses

he/him - - Node.js Platform Team @Netflix - Remember, we write code for humans not computers

ATX
Joined October 2009
Don't wanna be here? Send us removal request.
@wesleytodd
Wes
4 years
Can we all just get one thing straight? TypeScript is not JavaScript! It is a different language. Just because Scala runs in the JVM does not make it Java, does it? Everyone needs to stop acting like they are the same and expecting JS authors to be fine with TS projects.
39
104
585
@wesleytodd
Wes
2 years
Did @github just sponsor me for a one time $550 deal or is this a bug? LOL. I mean I am happy to go out to a nice dinner for my many years of OSS work, but I am just surprised ๐Ÿคฃ
9
5
381
@wesleytodd
Wes
3 months
This will forever bother me: await (await fetch(url)).json() Nearly zero of my use cases are best with fetch so I hardly ever use it, so I hope someone tells me "there is a better way".
74
5
324
@wesleytodd
Wes
4 years
Used it yesterday! Available in @nodejs 12.9 and up I think! Great when you donโ€™t want to abort a whole set of actions because one fails.
5
41
236
@wesleytodd
Wes
3 years
Itโ€™s memory leak in prod Friday everyone! Get HYPED!! ๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰๐Ÿ˜ญ
13
2
180
@wesleytodd
Wes
6 months
I too prefer to write code that is slower and then try and shame other people for not following my arbitrary preferences. ๐Ÿ™„
5
1
158
@wesleytodd
Wes
4 years
@Carnage4Life The longer I'm in tech, the more I'm convinced that the only good technical solutions are the ones that address the related human problems.
1
11
142
@wesleytodd
Wes
4 years
If you had it your way, which would you have?
.use((req,res)=>{})
4434
.use((req)=>{req.res()})
823
.use((req)=>new Res())
953
Other (explain below)
244
55
36
134
@wesleytodd
Wes
2 years
No matter how much folks tell you writing code is hard.... I PROMISE YOU making good documentation is harder. I have spent hours this week making a single 15min training video for a product I built. I deserve this glass of wine I just poured๐Ÿท
3
8
130
@wesleytodd
Wes
3 months
PSA: if you harass people on a @github repo which I am an admin on its a perma ban. No second chances. Bye. ๐Ÿ”จ
13
8
119
@wesleytodd
Wes
6 months
// Yarn doesn't always work the first time :/ // await exec(`yarn || yarn || yarn`, { name: 'deps' }); Found this in some code today. I laughed out loud.
5
6
100
@wesleytodd
Wes
11 days
People in this thread continuing to treat node like a for profit entity competing for survival against its โ€œcompetitorsโ€ instead of a community just trying to do the best it can for its users. How do we tell this story in a way folks understand?
@littledan
Daniel Ehrenberg
11 days
No, you cannot take credit for other peopleโ€™s work like that.
29
15
385
8
9
101
@wesleytodd
Wes
4 years
@rauschma This is not true. Progress has been regularly made. We are close to the v5 and have been actively working on improving the the story here. Please watch my talk ๐Ÿ˜›
3
11
93
@wesleytodd
Wes
3 years
I used to be a front-end engineer. I even ended up as a team principal and lead front-end engineer. I have since switched to a server and tooling focus. This domain is soooo much easier! UI engineering is HARD MODE. Also it was really fun and I miss it sometimes.
5
4
88
@wesleytodd
Wes
5 months
@ThePrimeagen Hi, your local operations team here, I believe what you meant to say was "due to user error and skill issues".
1
1
77
@wesleytodd
Wes
2 years
The "I rewrote part of a popular project in <programming language> and got a 62x perf improvement" to "I finished porting it after 6 months of work and it is barely faster because of all the edge cases the original project handles" pipeline.
2
7
76
@wesleytodd
Wes
6 months
A lot of folks @NetflixEng were concerned that we would have a difficult time supporting and helping onboard new grad and intern hires since we have traditionally only hired experienced engineers.
3
0
70
@wesleytodd
Wes
7 years
@waldojaquith @webster They atleast know how to install an npm package that would do it better, written by a more competent dev.
0
2
62
@wesleytodd
Wes
6 years
Docker Compose is just awesome. Thanks @Docker team!
3
7
69
@wesleytodd
Wes
4 months
6 years ago today I started at @NetflixEng . I remember flying out on new years day to move into a temp apartment while Megan finished packing up and selling our old Austin house. It's been a wild 6 years but I am thankful for how much I have learned and grown.
7
1
69
@wesleytodd
Wes
3 years
Bought a $1 a month domain last night, built a site this morning with @eleven_ty and deployed it on @Netlify in under an hour. This is even more easy than back in the day with one-click installs of wordpress. Literally the website is 4 files in a github repo.
2
9
68
@wesleytodd
Wes
3 years
I think one of my favorite engineering tasks is re-writing things which I think are overly complicated. Tonight I did so by consolidating what was at least 3 packages down to two files with a clean separation of concerns.
5
5
63
@wesleytodd
Wes
3 months
I am certain the people who complain about npm install times never had to setup a java project.
4
11
60
@wesleytodd
Wes
5 years
@ryanflorence Ryan, this is not a good look. Let the engineers working on this project do their thing. Disagreeing is fine, publicly stating it is fine. Implying they "just sit around thinking about tormenting souls" is abusive behavior on your part. Please stop.
3
1
59
@wesleytodd
Wes
7 months
The only โ€œbad devsโ€ are ones who think which tech you like is more important than the things you ship.
5
3
55
@wesleytodd
Wes
3 months
Anyone @github want to help us? Even if it is just deleting all the spam PRs from the closed listing would be helpful.
3
8
50
@wesleytodd
Wes
3 years
Every year I am amazed again at how awesome HackDay @netflix is.
2
1
49
@wesleytodd
Wes
4 years
@rauchg I am a fan of `.config/next.js`, but that is a long road ahead!
1
3
46
@wesleytodd
Wes
6 months
@trashh_dev if your GH is too empty... if your GH is too full... Goldilocks over here wants you to be "just right" ๐Ÿคฃ
1
0
46
@wesleytodd
Wes
4 years
Created my first @npmjs multi-package repo today with workspaces via npm @7 . I haven't done much yet but without even looking at the docs I tried it and it worked just as expected on install. ๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰ Great job @ruyadorno ! ๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰
1
4
46
@wesleytodd
Wes
5 years
This is a great example of why download and dependency counts are not a good measure of a project.
3
3
41
@wesleytodd
Wes
2 years
I am a Senior Engineer and once I took down a large portion of iOS traffic for hours on Netflix because of a copy/paste sql query without the correct "where" which was in prod for months before it was hit. I had already moved to a different team when the git blame pointed to me.
@MinaMarkham
Mina Markham
2 years
I am a staff engineer and I once brought down our Japanese website with CSS infrastructure changes. (Donโ€™t) Ask Me Anything.
1
1
49
4
4
40
@wesleytodd
Wes
2 months
I, for one, am so happy to see meaningful progress on these things in core. Doesn't mean every npm package should be in core, but some things make great standard library additions.
3
6
39
@wesleytodd
Wes
3 months
@ThePrimeagen Are you saying I can finally pivot back to UI development without wanting to crawl into a hole and never leave?
1
0
39
@wesleytodd
Wes
7 months
I learned a lesson today: Anything in @nodejs loaders is complicated. I had such high hopes for import map support being simple, but now that I am dug into the problem I realize we need to support a lot of cases. I will get it done, but it is not simple.
10
1
38
@wesleytodd
Wes
2 years
This is just a REALLY REALLY BAD IDEA for production applications. It is ESPECIALLY bad if we have (transitive) dependencies doing this.
5
1
38
@wesleytodd
Wes
6 months
What I think folks did not realize just how incredible these folks are. I wish I had half the self awareness, programming talent, and drive as these folks at their age. For the ones who have already joined, I have heard and seen GREAT things from them while on-boarding.
2
1
36
@wesleytodd
Wes
26 days
Honestly reading some code I wrote from 2013 this morning made me remember when writing JS was fun. What happened?
21
0
36
@wesleytodd
Wes
3 years
@laurieontech Wanna know why I am no longer a frontend dev? It was too hard.
3
1
35
@wesleytodd
Wes
6 months
When I joined Netflix there was an old scala app my team owned and they had a contractor working on it. The contractor was trying to make it โ€œgoodโ€ but the team just wanted to burn it down. 1/3
@mitchellh
Mitchell Hashimoto
6 months
10x engineers blah blah blah who cares. The engineers that impress me the most are the ones that fearlessly dive into code, domains they know absolutely nothing about and end up producing amazing work in a short amount of time anyways. Truly awe-inspiring every time I see it.
96
347
4K
2
1
35
@wesleytodd
Wes
2 months
On the topic of the day: yes I am biased. My whole careerโ€™s success is based on the success of this one technology. I want @nodejs to succeed so I am continue to work on things I enjoy. No I donโ€™t want to write Java or rust tools or servers (no matter how good that can be).
4
3
35
@wesleytodd
Wes
5 months
The gang is getting back together! Excited to see renewed interest in the @nodejs Web Server Frameworks Team (WSFT). Having a small kickoff discussion today so tell me what you want out of Node.js core for "web server" things in 2024.
4
10
35
@wesleytodd
Wes
3 years
Why is it that everyone talks about DRY programming and barely anyone talks about how it is much more important KISS is so your work is easily replaceable by you or a teammate who comes along later?
4
7
34
@wesleytodd
Wes
5 years
Swapped out React for @polymer 's lit-html in a project today. Worked GREAT! It was easy to swap in and got server rendering with @popeindustries 's lit-html-server!
2
7
34
@wesleytodd
Wes
1 month
In case anyone was wondering, @tonyhawk also thinks the corepack discussion got out of hand.
2
0
34
@wesleytodd
Wes
19 days
JSON parsing is nearly ALWYS the final boss when fighting bottlenecks in web apps.
4
3
33
@wesleytodd
Wes
4 years
@JedWatson Do you mean like CLS?
0
0
33
@wesleytodd
Wes
6 months
When the senior dev sees a .map().filter() that could easily be a .reduce()
5
4
32
@wesleytodd
Wes
2 months
If you generate docs please please please try to be a user and think about what folks need to know when they reference those docs. Turning your types into docs or your interface with little to no "use case" context is the worst. Also, don't write abstract example code.
5
5
33
@wesleytodd
Wes
5 years
Want to deploy a custom built site to @github Pages with a Github Action? I got you covered: ๐Ÿ’ป๐Ÿ”ฅ๐ŸŽ‰ ๐ŸŽ‰๐Ÿ”ฅ๐Ÿ’ป
1
5
32
@wesleytodd
Wes
2 years
PSA: If you maintain a @nodejs library and expect real world usage (aka by more than just yourself and friends) you should support all node LTS versions until they leave maintenance mode. That means node @12 should be supported until April.
7
2
31
@wesleytodd
Wes
4 years
The fact that @typescript is so bad at interoping with the existing JS ecosystem is a problem with TS, not the other way around. And it has cost uncountable hours of developer effort which could have been spent on more valuable efforts.
5
7
30
@wesleytodd
Wes
2 years
I strongly consider using environment variables deep in application code an anti-pattern. I always map environment variables to normal "options" at the same layer as parsing cli flags. So usually as part of the entry point scripts.
3
1
31
@wesleytodd
Wes
5 years
@dan_abramov *descriptive names Long does not equal descriptive. Mode-factory-producer-widget.js is long and meaningless.
2
0
30
@wesleytodd
Wes
3 months
@Cal_Irvine Lol, the whole api is gross. Mess with it however you want, request(url) was and is better.
3
1
30
@wesleytodd
Wes
4 years
I am just amazed at the effort folks are willing to put in to converting perfectly good libraries to TypeScript. What a waste of time. Today I think I found a bug in Luxon, but when I went to dig around found a "convert to TS" PR. Now I am just sad.
6
4
30
@wesleytodd
Wes
3 months
I know I literally asked for it, so canโ€™t complain. BUT, the number of people in this thread whoโ€™s โ€œbetter wayโ€ is โ€œuse a libโ€ clearly missed the point. The people who said โ€œhandle errorsโ€ are alright but jumped to conclusions about my use case.
1
0
29
@wesleytodd
Wes
7 months
@trashh_dev Assistant to the regional manager vibes.
1
0
28
@wesleytodd
Wes
2 months
Baby's first CVE.
@UseExpressJS
ExpressJS
2 months
Time to update to express @4 .19.2. If you are passing user input to res.redirect or res.location you may be impacted by this advisory:
1
15
45
3
2
28
@wesleytodd
Wes
6 months
Sometimes I think โ€œwow, Iโ€™m glad I got into tech when I did. All these nerds added so much complexity since then I am sure I would give up if I started nowโ€. ๐Ÿ˜ญ
3
1
26
@wesleytodd
Wes
4 years
Controversial Opinion: @yarnpkg , @pnpmjs and @npmjs should not have workspace features in their cli's. This should be a separate tool which can work on top of any package installer. The reason we have them in the package managers is mostly lazy software design.
5
4
26
@wesleytodd
Wes
7 months
@c_pick @mindplaydk @unlocomqx @wesbos @fastifyjs Fastify is my current recommendation to anyone starting a new node server project.
1
4
26
@wesleytodd
Wes
3 years
PSA to folks in this thread: Using a lock file does not stop this attack unless you NEVER update the locks. Obviously that would mean never taking other security or bug fixes.
3
4
25
@wesleytodd
Wes
8 months
@trunarla Sounds like a very unfun friend. My goal is to always incentivize that โ€œnext roundโ€ actually happening so we see each other again or for longer.
1
1
25
@wesleytodd
Wes
3 years
Not exactly new news, but new to me. I really like that we have a public plan for carbon neutrality @netflix by next year.
0
3
24
@wesleytodd
Wes
6 years
As much as I love async/await, the number of times I have now written nested try/catch blocks really bothers me.
3
5
23
@wesleytodd
Wes
3 months
New @nodejs website looks ๐Ÿ”ฅ. Great work @wunderacle !!
2
5
24
@wesleytodd
Wes
7 months
PSA: Dropping a node version is a semver breaking change.
@lucamezzalira
Luca Mezzalira
7 months
Starting May 1, 2024, the AWS SDK for JavaScript (v3) will no longer actively support Node.js 14.x, which reached end-of-life on April 30, 2023. #nodejs #lambda #serverless #aws
3
5
22
2
3
24
@wesleytodd
Wes
1 year
Spent some time reading the source of @nextjs this morning. I had flashbacks because I wrote basically all of that stuff in 2015 at a startup I was at. Cool to see it finally catching its stride. Makes me wish I could go back in time and open source more of what we did.
4
1
24
@wesleytodd
Wes
2 years
If you know me, you know I don't use TS. But you might be surprised to know that I have always thought this was a good idea. Improvements to the language to help tooling is GREAT!
@typescript
TypeScript
2 years
Could we have TypeScript with no build step? Could we have types in JavaScript? Maybe! We're exploring bringing optional type syntax into the JavaScript language!
142
1K
5K
2
0
24
@wesleytodd
Wes
5 years
Look ma, I made it!! "Inspired by the work of Wes Todd on Expressโ€™ statusboard weโ€™ve created a high-level project statusboard to keep track of the health of our various projects." Thanks for the shout out @darcy & @npmjs !
2
5
23
@wesleytodd
Wes
7 months
This is explicitly why my team at Netflix exists. We also believe this but think that there are ways to make the server operations easier for UI teams. It doesn't need to be a boundary, more a partnership.
@cramforce
Malte Ubl
7 months
I'm all for specialization in software engineering, but client/server isn't a good boundary. As a frontend engineer you need to control the entire user experience, and that requires being empowered to program the frontend server.
20
40
453
1
0
23
@wesleytodd
Wes
6 months
One thing I am really glad I learned before getting into programming is that when you are making something for people to use, they don't care at all about the process you used to make it. They care about two things: 1. is it functional 2. is it enjoyable to use
1
2
21
@wesleytodd
Wes
26 days
If there is one thing I am super bullish on it is open governance for OSS projects. Even with the flaws in the way @nodejs governance works it is still FAR superior to many alternative. Can it be improved? Absolutely! Is it better than corporate owned OSS? Absolutely!
@matteocollina
Matteo Collina
26 days
@styfle @yagiznizipli @vercel @TooTallNate @ArrowoodTech @shuding_ No one company canโ€™t control @nodejs , as no company can have more than 1/4 of the TSC seats.
1
5
41
1
5
23
@wesleytodd
Wes
6 months
Want to improve install times? Run a local caching proxy. Want to waste a ton of time for a marginal improvement? Rewrite your package manager in rust.
5
2
23
@wesleytodd
Wes
2 years
๐Ÿ‘‹ it was me
@netflix
Netflix
4 years
We're sorry some of our members were unable to use Netflix for a couple of hours today. The issue is now fixed. Apologies for the inconvenience
217
307
4K
3
2
23
@wesleytodd
Wes
4 years
.then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then() .then()
8
1
22
@wesleytodd
Wes
2 months
I am very excited to see the awesome work this team can do (again)๐Ÿš€. When I met @darcy for the first time I gave him a bit of a hard time about what needed to change with @npmjs .
@vltpkg
vlt /vลlt/
2 months
We're electrified to announce our team & investors! โšก๏ธ
36
36
363
1
1
22
@wesleytodd
Wes
3 years
A little known feature of a ~2019 MBP ๐Ÿ’ป: If you are stuck in freezing ๐Ÿฅถ cold weather and want to burn through the battery, you can keep your lap warm by running `npm i` over and over.
2
0
22
@wesleytodd
Wes
3 months
Any sufficiently large OSS project needs someone to fill a project management role. We need to be better about celebrating and promoting people who do this type of work. I say this very selfishly as someone who tries to fill in that role where I can.
1
2
22
@wesleytodd
Wes
5 years
How about we don't spend time publicly trashing someone's work and instead explain why we disagree and then just drop the subject. Imaging having a bully with 66.6k followers going on a tweet storm about your project. I imagine it would feel pretty shitty.
3
0
22
@wesleytodd
Wes
5 months
@ThePrimeagen Sorry to hear you are such a baby and need more than just a 16โ€ laptop. Sad really.
2
0
19
@wesleytodd
Wes
6 months
I picked up the work, having never programmed scala in my life, and got the objective completed in a few weeks. I think that earned me a fair bit of cred with my new team despite my extreme imposter syndrome.
2
1
21