Mark Dalgleish Profile Banner
Mark Dalgleish Profile
Mark Dalgleish

@markdalgleish

73,476
Followers
0
Following
2,524
Media
24,923
Statuses

🦄 CSS Modules co-creator / 💿 @remix_run + React Router at @shopify / @MelbJS organiser / 🧁 Vanilla Extract / dad x4

Melbourne, Australia
Joined February 2011
Don't wanna be here? Send us removal request.
Pinned Tweet
@markdalgleish
Mark Dalgleish
3 years
👇 NEW CSS-IN-JS LIBRARY ALERT! 🧁 vanilla-extract 🔥 Zero-runtime Stylesheets-in-TypeScript ✨ Minimal abstraction over standard CSS 🦄 Works with any front-end framework 🌳 Locally scoped classes + CSS Variables 🎨 High-level theming system
Tweet media one
53
248
1K
@markdalgleish
Mark Dalgleish
5 years
Developers during hackathon: We built an entire application in just 3 days. Developers after hackathon: Adding that icon is going to take 3 weeks.
111
2K
11K
@markdalgleish
Mark Dalgleish
5 years
Believe it or not, but this car is made entirely out of divs.
Tweet media one
173
1K
10K
@markdalgleish
Mark Dalgleish
5 years
Me: "I'm really looking forward to the conference." Me at the conference:
Tweet media one
71
1K
9K
@markdalgleish
Mark Dalgleish
5 years
"Don't worry about this tech debt, we'll clean it up next sprint." Senior developer:
Tweet media one
39
2K
9K
@markdalgleish
Mark Dalgleish
5 years
When people ask what the best JavaScript framework is.
Tweet media one
101
2K
8K
@markdalgleish
Mark Dalgleish
4 years
Tweet media one
76
1K
7K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
92
2K
7K
@markdalgleish
Mark Dalgleish
2 years
When you write your CSS in JavaScript.
77
804
6K
@markdalgleish
Mark Dalgleish
5 years
20 years ago, people tried to convince me that learning HTML was pointless because we had FrontPage and Dreamweaver. Ignoring them was the best decision I ever made.
127
731
6K
@markdalgleish
Mark Dalgleish
6 years
Tweet media one
59
2K
6K
@markdalgleish
Mark Dalgleish
5 years
Me: I'm a JavaScript expert. Also me: *Googles array slice*
112
882
5K
@markdalgleish
Mark Dalgleish
5 years
If a developer says they don't really care about design, change their editor theme to Hot Dog Stand.
Tweet media one
132
2K
5K
@markdalgleish
Mark Dalgleish
5 years
When your team successfully hits the deadline.
Tweet media one
45
2K
5K
@markdalgleish
Mark Dalgleish
5 years
"Do you know JavaScript?" "Yes." "Ah—but do you know what happens when you try to multiply a number by a *date*?" "Yes. I am immediately fired."
55
840
5K
@markdalgleish
Mark Dalgleish
2 years
Trying to debug a codebase that uses class inheritance.
81
769
5K
@markdalgleish
Mark Dalgleish
5 years
Literally just noticed that the home icon in the Twitter app is actually a birdhouse. I feel very stupid right now.
95
771
5K
@markdalgleish
Mark Dalgleish
5 years
It's a mistake to learn a framework without first learning the fundamentals. That's why, when dealing with beginners, I always start off by making them build their own CPU, programming language and operating system.
144
934
4K
@markdalgleish
Mark Dalgleish
6 years
'align-items' and 'justify-content' is the CSS equivalent of plugging in a USB device. It always takes three tries to get it right.
44
884
4K
@markdalgleish
Mark Dalgleish
5 years
Front end devs: I'm here because I like programming *and* design. Back end devs: You're not a real programmer. UXers: You're not a real designer.
109
604
4K
@markdalgleish
Mark Dalgleish
5 years
Full stack devs: Those front end devs really need to skill up in other areas. Also full stack devs:
Tweet media one
122
815
4K
@markdalgleish
Mark Dalgleish
5 years
Back end devs: Front end isn't real engineering. Front end devs: *Bring engineering principles to front end* Back end devs: Front end is too complicated.
58
874
4K
@markdalgleish
Mark Dalgleish
4 years
Tweet media one
122
556
4K
@markdalgleish
Mark Dalgleish
5 years
Developers: *Build terrible monolith* "This isn't working. Let's try something else" Developers: *Build terrible microservices* "Wait—this isn't working either."
58
808
4K
@markdalgleish
Mark Dalgleish
5 years
React vs. Vue is really HTML-in-JS vs. JS-in-HTML
78
748
4K
@markdalgleish
Mark Dalgleish
4 years
Having trouble with code quality? Write a lot of tests. And I mean a *lot*. Test every file in isolation. Mock as many imports as possible. When you're done, your code will still be bad, but now your tests will make sure it's impossible to improve anything in any meaningful way.
75
615
4K
@markdalgleish
Mark Dalgleish
5 years
"To build world class software, we need everyone to be inside this building." Developer: *Installs 9 trillion packages written outside this building"
35
879
4K
@markdalgleish
Mark Dalgleish
5 years
Developers: Why aren't these managers technical? Also developers: No, I don't want to be a manager.
58
600
3K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
44
1K
3K
@markdalgleish
Mark Dalgleish
5 years
This game is genius. Test your design eye by choosing the UI that looks more correct.
94
1K
3K
@markdalgleish
Mark Dalgleish
5 years
VS Code: No type errors found in project. Me: *Opens a TypeScript file* VS Code: Oh, you mean in *this* file?
44
435
3K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
16
709
3K
@markdalgleish
Mark Dalgleish
5 years
SQL injection, or as I like to call it, accidental GraphQL.
31
612
3K
@markdalgleish
Mark Dalgleish
5 years
When you're using the new tech stack but it's only for a single feature.
Tweet media one
18
572
3K
@markdalgleish
Mark Dalgleish
5 years
When JavaScript developers get mocked on Twitter.
Tweet media one
39
442
3K
@markdalgleish
Mark Dalgleish
5 years
Developer: Commits commented-out code just in case they need it later. Git:
Tweet media one
50
758
3K
@markdalgleish
Mark Dalgleish
4 years
When you're really good at React.
Tweet media one
86
309
3K
@markdalgleish
Mark Dalgleish
4 years
Tweet media one
22
375
3K
@markdalgleish
Mark Dalgleish
8 months
How to open a window as a software developer: 1) Spend a bunch of money on a CO2 monitor. 2) Open a window.
75
151
3K
@markdalgleish
Mark Dalgleish
5 years
Whatever your opinion is on React, you've gotta give it props.
89
360
3K
@markdalgleish
Mark Dalgleish
3 years
You can't get phished if you never read your emails.
64
428
3K
@markdalgleish
Mark Dalgleish
5 years
Pro tip: If anyone suggests a design change you don't like, just say "Do you have any data to back that up?" Nobody knows how to answer this question.
49
487
3K
@markdalgleish
Mark Dalgleish
2 years
Using `useReducer` to manage one-way boolean state has become one of my favourite tricks lately.
Tweet media one
37
285
3K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
29
596
3K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
20
524
3K
@markdalgleish
Mark Dalgleish
4 years
Pair programming.
32
498
3K
@markdalgleish
Mark Dalgleish
4 years
When you open Chrome dev tools in front of a non developer and edit someone else's web page.
Tweet media one
48
285
3K
@markdalgleish
Mark Dalgleish
5 years
Companies: *Use free open source to make literally millions of dollars* Open source maintainers: Could we at least get a couple of dollars from this? Open source consumers:
Tweet media one
62
544
3K
@markdalgleish
Mark Dalgleish
2 years
I'm super excited to announce that next week I'm joining the @remix_run team at @Shopify .
126
53
3K
@markdalgleish
Mark Dalgleish
7 years
With single page apps, we broke the back button. Now, thanks to the power of service workers, we've broken the refresh button.
40
1K
3K
@markdalgleish
Mark Dalgleish
5 years
When a React dev sees some CSS.
Tweet media one
22
458
2K
@markdalgleish
Mark Dalgleish
3 years
"Don't take criticism from someone you wouldn't take advice from." This one helps a lot.
15
460
2K
@markdalgleish
Mark Dalgleish
5 years
When a team is celebrating the deletion of their legacy codebase, but that was your old work.
Tweet media one
33
306
2K
@markdalgleish
Mark Dalgleish
4 years
How do you know if someone uses TypeScript? Don't worry, they'll tell you.
59
286
2K
@markdalgleish
Mark Dalgleish
5 years
When a non-developer asks what you've been working on lately.
Tweet media one
22
597
2K
@markdalgleish
Mark Dalgleish
5 years
"For some reason, it seems our website has less engagement than our native app."
Tweet media one
53
762
2K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
35
648
2K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
49
418
2K
@markdalgleish
Mark Dalgleish
3 years
API design is UX design.
51
280
2K
@markdalgleish
Mark Dalgleish
4 years
When you ask a CSS dev which files are affected if you delete this selector.
Tweet media one
59
331
2K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
19
448
2K
@markdalgleish
Mark Dalgleish
5 years
When you learn React but realise you can't actually build anything because you don't know HTML, CSS or JavaScript.
Tweet media one
39
311
2K
@markdalgleish
Mark Dalgleish
4 years
react, react-router, redux, react-redux, react-router-redux, redux-saga, react-redux-router-saga, react-react, react-react-router-router-router
87
243
2K
@markdalgleish
Mark Dalgleish
3 years
Being vaccinated does NOT mean you can put CSS in your JavaScript. PLEASE continue to keep your concerns separated.
43
234
2K
@markdalgleish
Mark Dalgleish
5 years
Me: "My code isn't that bad." My code:
Tweet media one
75
402
2K
@markdalgleish
Mark Dalgleish
4 years
Tweet media one
17
402
2K
@markdalgleish
Mark Dalgleish
4 years
I wish JavaScript import statements were written in reverse order so that autocomplete worked properly. e.g. from 'lodash' import { debounce }
95
190
2K
@markdalgleish
Mark Dalgleish
5 years
Drag and drop tools are just simpler. That's a fact. That's why I'm working on a drag and drop alternative to Microsoft Word. To get started, just open up the dictionary panel, find the word you like and drag it onto the document.
66
308
2K
@markdalgleish
Mark Dalgleish
4 years
When you learn React.
Tweet media one
30
370
2K
@markdalgleish
Mark Dalgleish
5 years
Pro tip: Look at the code before committing.
84
327
2K
@markdalgleish
Mark Dalgleish
5 years
When you learn React before learning CSS.
Tweet media one
49
305
2K
@markdalgleish
Mark Dalgleish
5 years
"We'll add it to the backlog" is just the polite way of saying no.
45
427
2K
@markdalgleish
Mark Dalgleish
5 years
My experience migrating to TypeScript as a library author. Day 1: Fine, I guess this will help out my consumers. Day 10: Hey, this is actually kinda useful for me too. Day 100: Wow, how did I ever live without types?
36
265
2K
@markdalgleish
Mark Dalgleish
4 years
JavaScript devs.
Tweet media one
26
286
2K
@markdalgleish
Mark Dalgleish
5 years
"Issue: It doesn't work." "Sorry, can you provide more detail?" "Expected behavior: It works."
28
325
2K
@markdalgleish
Mark Dalgleish
4 years
When JavaScript devs need to write code using another language.
Tweet media one
49
274
2K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
21
354
2K
@markdalgleish
Mark Dalgleish
4 years
Tweet media one
34
275
2K
@markdalgleish
Mark Dalgleish
3 years
API design is the most underappreciated design skill since it's literally invisible to most designers.
37
174
2K
@markdalgleish
Mark Dalgleish
5 years
When you split up your UI into a bunch of micro frontends.
Tweet media one
14
337
2K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
13
414
2K
@markdalgleish
Mark Dalgleish
4 years
When you tweet literally anything about React.
Tweet media one
45
134
2K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
18
364
2K
@markdalgleish
Mark Dalgleish
5 years
"As an experienced engineer, my motto is 'Strong opinions, weakly held.'" "Um, that's stupid." "Good point. It is no longer my motto."
10
227
2K
@markdalgleish
Mark Dalgleish
4 years
I don't see what's so useful about TypeScript. It's basically the same as JavaScript, except it takes more work because you have to write "any" a lot, and then you don't even get any type checking.
93
111
2K
@markdalgleish
Mark Dalgleish
4 years
"Our UI is too inconsistent. We need a design system so we can standardise it." > 6 months later "I don't like this component. How do I customise it?"
36
238
2K
@markdalgleish
Mark Dalgleish
5 years
"Why are my devs always talking about technical debt? My old devs didn't talk, they just shipped."
38
313
2K
@markdalgleish
Mark Dalgleish
7 years
Current status:
Tweet media one
26
800
2K
@markdalgleish
Mark Dalgleish
4 years
When you copy someone's weird coding style so they're more likely to merge your PR.
Tweet media one
7
231
2K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
29
310
2K
@markdalgleish
Mark Dalgleish
5 years
When you tell a great joke at the dinner table.
Tweet media one
7
473
2K
@markdalgleish
Mark Dalgleish
3 years
Junior dev bio: Junior developer. Mid-level dev bio: Senior information systems engineering team lead. Senior dev bio: I write code.
28
165
2K
@markdalgleish
Mark Dalgleish
4 years
Me: *Adds parentheses to maths equation so I can actually read it* Prettier: *Removes them* Me:
Tweet media one
28
128
2K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
18
370
2K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
29
288
2K
@markdalgleish
Mark Dalgleish
5 years
Tweet media one
10
260
2K
@markdalgleish
Mark Dalgleish
3 years
Me: I don't need static types. Me: *Tries static types* Me: Oh.
20
143
2K
@markdalgleish
Mark Dalgleish
4 years
Tweet media one
18
373
2K
@markdalgleish
Mark Dalgleish
4 years
Tweet media one
21
315
2K
@markdalgleish
Mark Dalgleish
4 years
🔥 Capsize is a *massive* leap forward for web typography. ✂️ It uses font metadata to crop space from text nodes above capital letters and below the baseline. 🔍 It adjusts font-size so that the height of capital letters is a multiple of your grid. 👉
33
322
2K
@markdalgleish
Mark Dalgleish
5 years
Me: Forgets a required property on an object. TypeScript's error message:
Tweet media one
25
296
2K