Jun (@_junlow) header
Jun (@_junlow) profile picture

A dev, a pianist, a teacher, a lifelong learner. Can debug code and piano scales ✨

Joined August 2013
Photo by Jun (@_junlow)Photo by Jun (@_junlow)Photo by Jun (@_junlow)Photo by Jun (@_junlow)Photo by Jun (@_junlow)Photo by Jun (@_junlow)Photo by Jun (@_junlow)Photo by Jun (@_junlow)Photo by Jun (@_junlow)
Jun retweeted
very weird thing happening rn technical people are sad, they think their skills are now useless non-technical people are desperately wishing they were more technical so they could use agents better
1,564
2,406
676
36,943
1,930,172
36
399
61
2,566
175,248
You need both taste and judgement. You need taste to know what is good, and you need judgement to understand the price of quality. If you ask a model for a component or migration plan, it will create a lot of options, very quickly. Most of those drafts seem OK. So once you have a collection of work that meets the basic criteria, you can no longer use taste to select between them. You must choose. I like to think of this as two filters. There is the taste, and there is the judgement. And I think a lot of people mix those up. The first filter is taste. Taste is the feeling for what makes a thing good. Taste is that feeling you get first, before you're able to put into words what is good or bad about something. You've had that experience where something is bad but you're not sure why, until you've worked it through and can describe it. "This user experience was really clumsy" or "that error message was really aggravating." Taste is built up by experience and practice. It comes from looking at a lot of things, and making a lot of things, and remembering the good bits. Kant's great insight into aesthetic taste was that you could appreciate the form, without having a stake in the outcome. Engineers care about the outcomes much more than the forms, but the feeling is the same. Taste can disqualify a lot. It can disqualify 90% of drafts very quickly. But it's not enough to make a decision between the few remaining options. The second filter is judgement. Judgement is understanding the price of quality. The most perfect solution may not be finished by the time that you need it. The sanest architecture may require the users to migrate while you're in the middle of the final upgrade. Judgement is the understanding of what you give up in time and risk to get good things, for the sake of the users, for the sake of the team. Judgement is made from domain knowledge and experience from previous decisions. People with great taste but poor judgement make beautiful work too late. They make the right thing at the wrong time, or the wrong thing at the right time. People with judgement but no taste make on time but don't make things people love. Both taste and judgement are essential. Filter to a few options with taste, and filter to one option for delivery with judgement.
74
90
13
644
31,601
Windsurf just announced Wave 3. It takes AI coding to a whole new level with so many incredible features. 8 wild examples:
59
100
13
957
267,702
23
201
15
1,746
134,072
Really great article on React Query by @uidotdev ui.dev/why-react-query
6
16
2,575
Tech people! I'd like to you to turn your attention to this interview with @unclebobmartin by @ThePrimeagen This is a good interview. I really like how UnclueBob adds more colour to the whys behind his guidance when it comes to clean code. I like especially that part when Prime says that abstractions make a flow hard to comprehend because too many things you have to keep in your mind. UncleBob says, how the abstraction is done is wrong in this case. From this it is clear that the meaning for another human is important. It also opens another thousand can of worms as human communication is everything but not stable meaning. All in all. The interview is good and the insights we get is great. Thanks for both of them for this interview. youtu.be/UBXXw2JSloo
12
6
2
111
28,256
Whether you like this or not, we can all agree that JSON files are a terrible format for configs, right?
In the next version of Bun Bun won't error when package.json has comments or trailing commas
250
44
33
1,812
320,607
Jun retweeted
nextjs gets 400 req/s when rendering a hello world this is 170x slower than rendering the same thing with pure react
108
106
49
2,084
566,519
AI is not going to take your job any time soon AI is going to likely make your job harder for a while (that mf devin is going to wreck codebases)
52
77
15
1,564
87,880
NVIDIA just released FREE online courses in AI. Here are 9 courses you can't afford to miss:
160
4,172
128
19,546
3,969,190
CSS Trick ✨ You can create this glitch hover effect by animating pseudoelement content 🎬 button:hover span:after { animation: flip 0.2s calc(var(--i) * 0.05s); } @​keyframes flip { 20% { content: '_'; } 40% { content: var(--c1); } 60% { content: var(--c2); } } It's a funky little track that allows you to animate text flipping with CSS 🤙 Leaning into custom properties, you can make each flip animation random with inline styles 🎨 <button> <span style="--i: 0; --c1: 'x'; --c2: '$'; --c3: '≈';" >C</span> <span style="--i: 1; --c1: 'ç'; --c2: '&'; --c3: 'π';" >l</span> <!-- Other characters --> <span class="sr-only">Click Me</span> </button> You make use of each character within the keyframes above. And "--i" communicates the index that you can use for the animation-delay 🙌 That's all there is to it! As always, any requests or suggestions, hit me up! 🙏 @CodePen link below! 👇
36
261
9
2,705
168,674
Let the fun begin!!
3
6
1
98
20,151
Frontend developers trying out Tailwind for the first time
28
96
23
878
87,973
You can do blobs with CSS filter but it only works as black or white as far as I know but you can use SVGs to achieve the result you want.
27
156
12
1,716
291,017
Jun retweeted
1/ I've been managing people remotely for 8 years. Here's how to be a better manager in a remote (distributed) team:
151
1,136
181
7,562
You can use a *single line* of CSS to create a resizable element 🤯 ‣ resize: both | horizontal | vertical ‣ Constraint with min/max-height/width
28
267
27
1,671