2023-03 
๋งํฌ & ์ฝ์๊ฑฐ๋ฆฌ
So, what's next?

์๋ง ์ฌ๋ฌ๋ถ๋ค์ ๋๋ถ๋ถ ์ธ์งํ๊ณ ์๋ , ์๋๋ core-js๋ผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉํ๊ณ ์์ ๊ฐ๋ฅ์ฑ์ด ๋๋ค. core-js๋ ํ์ฌ ๊ฐ์ฅ ๋ณดํธ์ ์ธ polyfill๋ก ๋งค๋ฌ npm์์ 250M ๋ค์ด๋ก๋๋ฅผ ๊ธฐ๋กํ๊ณ ์๊ธฐ๋ ํ๋ค.
์น ํธํ์ฑ์ ์ ์งํ๋๋ฐ ํฐ ์ญํ ์ ๋ด๋นํ๊ณ ์์ง๋ง, ์ฌ๋ฌ ์คํ์์ค ํ๋ก์ ํธ๊ฐ ๊ทธ๋ฌํด ์๋ฏ ์ง์์ ์ํ ๋ฌธ์ ์ ์ง๋ฉดํ๊ณ ์๋ค.
๋ค์๊ฐ ํํ์ ๋ฐ๊ณ ์๊ณ , ์น์ ํ ์ถ์ ๋ด๋นํ๊ณ ์์ง๋ง ์ ์ ์ ํ๋ก์ ํธ๋ ์ง์ ๊ฐ๋ฅ์ฑ์ ๋ํ ๋์์๋ ๋ถ์ํ ๋ฏธ๋์ ์ง๋ฉดํ๊ฒ ๋๋ ๊ฒ์ผ๊น?
Replace Create React App recommendation with Vite
React์ ๊ณต์ ๋ฌธ์์ ์ถ์ฒ ๋๊ตฌ๋ก ์๋์ ๋ค์ฒ์ง CRA ๋์ Vite๋ก ๋์ฒดํ์๋ PR์ด ์ฌ๋ผ์๋ค. ์ด์ ๋ํด ๋ฆฌ์กํธ ๋ฉ์ธํ ์ด๋ Dan Abramov์ ๋ต๋ณ์ด ๋ฌ๋ ธ๋๋ฐ, CRA์ ์ญ์ฌ์ ์์ผ๋ก์ ๋ฐฉํฅ์ฑ์ ๋ํด์ ์ฟ๋ณผ ์ ์๋ ์ข์ ๊ธ์ด๋ผ ์๊ฐ๋๋ค. ํด๋น PR๊ณผ ๋ต๋ณ์ ๋ํ ํ๊ตญ์ด ๋ฒ์ญ๋ ์กด์ฌํ๋ค.
Fixing a Memory Leak in a Production Node.js App
์ค์ Node.js ์ ํ๋ฆฌ์ผ์ด์
์์ ๋ฐ์ํ๋ ๋ฉ๋ชจ๋ฆฌ ๋์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐ ๊ณผ์ ์ ์์ฐจ์ ์ผ๋ก ์ ๋ณด์ฌ์ฃผ๋ ์ํฐํด์ด๋ค. ์ ์๋ Node.js์ ๋ด์ฅ๋ heapdump ๊ธฐ๋ฅ์ ์ด์ฉํด ํ ์ค๋
์ต์ ๋ถ์ํ๊ธฐ๋ ํ๊ณ Chrome ๊ฐ๋ฐ์ ๋๊ตฌ๋ฅผ ํ์ฉํ๊ธฐ๋ ํ๋ค. ์ฌ๋ฌ ๋๊ตฌ์ ๊ธฐ์ ์ ์กฐํฉํด ๋ฌธ์ ์ ์ ์ฐพ๊ณ ๊ทธ๊ฒ์ ๊ฐ์ ํด ๋๊ฐ๋ ๊ณผ์ ์ ์ฟ๋ณด๋ฉด์ Node.js ํธ๋ฌ๋ธ ์ํ
์ ๋ํ ์ธ์ฌ์ดํธ๋ฅผ ์ป์ ์ ์์ ๊ฒ์ด๋ค.
๐ฅ JavaScript Memory Management: How to Avoid Common Memory Leaks and Improve Performance
์ด๋ฒ์ JavaScript ๋ฉ๋ชจ๋ฆฌ ๋์์ ๊ด๋ จ๋ ์ํฐํด์ด๋ค. JavaScript์์ ๋ฉ๋ชจ๋ฆฌ ๋์์ ์ผ๋ฐ์ ์ธ ์์ธ์ธ, ์ํ ์ฐธ์กฐ๋ ์ ์ญ๋ณ์, ํด์ ๋์ง ์์ ์ด๋ฒคํธ ๋ฆฌ์ค๋ ๋ฑ์ ๋ํด ์ค๋ช ํ๊ณ ์ด์ ๋ํ ํด๊ฒฐ๋ฒ๋ค๋ ์๊ฐํ๊ณ ์๋ค. ๋ํ Garbage Collector๋ฅผ ๋งค๋ด์ผ ํ๊ฒ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๊ณผ heap snapshot API, profiler API ๋ฑ์ ํ์ฉํด ๋๋ฒ๊น ํ๊ณ ๋ฉ๋ชจ๋ฆฌ ๋์๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ๋ ์๊ฐํ๋ค. ๋ค๋ง ์ ๋ฐฉ๋ฒ๋ค์ ๋น๊ต์ ์ต์ ์คํ์ด๋ผ ์ฌ์ฉ์ด ๊ฐ๋ฅํ์ง ๋จผ์ ํ์ธ๋์ด์ผ ํ ๊ฒ์ด๋ค.
Experiments with the JavaScript Garbage Collector
์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฉ๋ชจ๋ฆฌ ๋์๋ ๋๋ฆฌ ํผ์ ธ ์์ผ๋ฉฐ ๋๋ฒ๊น ํ๊ธฐ ์ด๋ ต๊ธฐ๋ก ์ ๋ช ์ด ๋๋ค. ์ด๋ฅผ ๋ฐฉ์งํ๋ ค๋ฉด ๊ฐ๋น์ง ์ปฌ๋ ํฐ๊ฐ ์์งํ ์ ์๋ ๊ฐ์ฒด์ ์์งํ ์ ์๋ ๊ฐ์ฒด๋ฅผ ๊ฒฐ์ ํ๋ ๋ฐฉ์์ ์ดํดํ๋ ๊ฒ์ด ๋์์ด ๋๋ค. ์ด ๊ธ์ ๊ฐ๋น์ง ์ปฌ๋ ํฐ์ ๋์์ด ์์ธ์ผ ์ ์๋ ๋ช ๊ฐ์ง ์๋๋ฆฌ์ค๋ฅผ ํตํด ์ด๋ฅผ ์ค๋ช ํ๋ค.
[์ฐธ๊ณ ] ์ข ๋ ๊น์ด ์๋ ๋ด์ฉ์ด๊ธด ํ์ง๋ง, ๋ค์ ๊ธ์ WebKit์ JavaScript Core ์์ง์์ GC๊ฐ ์ด๋ป๊ฒ ์ํ๋๋์ง ์ฒ์๋ถํฐ ์ดํดํด ๋ณผ ์ ์๋ค.
2023 UX/UI Design Trends
์ฌํด์ UX/UI ๋์์ธ ํธ๋ ๋๋ ์ด๋ป๊ฒ ๋ ๊น? ์๋ ํญ๋ชฉ๋ค์ ์ด ๊ธ์์ 2023๋ ์๋ ์ ํํ ๋์์ธ ํธ๋ ๋์ ๋ํด ๋์ดํ ๊ฒ์ด๋ค.
- Dark-Anti Modes
- Custom and Animated Cursors
- Mobile First Design / Approach
- Advanced Micro-Interactions
- 90s Retro style
- Minimalism
- Immersive parallax Scrolling
- 3D Interactive Objects
๊ทธ๋ฐ๋ฐ ์์ด๋ฌ๋ํ๊ฒ๋ ์ ํธ๋ ๋๋ค์ด 2021 UX/UI ๋์์ธ ํธ๋ ๋์ 2๋ ์ ์ ํธ๋ ๋๋ค๊ณผ ์๋น ๋ถ๋ถ ๊ฒน์น๋ค.
์ด ์ ์ด ์์ฌํ๋ ๋ฐ๋ ํธ๋ ๋๋ฅผ ๋ฐํํ๋ ์ฃผ์ฒด๋ง๋ค ๋ค๋ฅด๊ฒ ํด์ํ ์ ์์ผ๋ฉฐ, ๋งค๋ ๋น์ทํ ๊ฒ์ด ๋ฐ๋ณต๋๊ธฐ ๋๋ฌธ์ ์๋กญ๊ฒ ์ถ๊ฐ๋ ๋ด์ฉ๊ณผ ์๋ ์ ๋นํด ๋ณํ๋ ํ๋ฆ์ ํ์ ํ๋ ๊ฒ์ด ์ค์ํ๋ค๋ ๊ฒ์ด๋ค.
๊ฐ ํญ๋ชฉ๋ง๋ค ๋ค์ํ ์ฌ์ดํธ ๋ฐ ์ํ์ ์ ๊ณตํ๊ณ ์์ผ๋ฏ๋ก, ์ด๋ฌํ ์์๋ค์ ํ์ฉํ์ฌ ๋ณํ๋๋ ํ๋ฆ์ ํ์ ํด ๋ณด๊ธฐ ๋ฐ๋๋ค.
Try out Css Nesting today
Safari Technology Preview์์ CSS Nesting์ ์๋ํด ๋ณผ ์ ์๋ค๋ ๋ด์ฉ์ด ํฌํจ๋ ์นํท ๋ธ๋ก๊ทธ๊ฐ ๋ฐํ๋์๋ค. CSS Nesting์ CSS ๊ท์น์ ์ค์ฒฉ์์ผ ์ฝ๋๋ฅผ ๊ฐ๊ฒฐํ๊ฒ ๋ง๋๋ ๊ธฐ๋ฅ์ผ๋ก, ์๋ก์ด ์ ๋ ํฐ์ ์ฐ์ฐ์๋ฅผ ์ ๊ณตํ๋ค. Safari Technology Preview ์ฌ์ฉ์๋ ์ด ๊ธฐ๋ฅ์ ์๋ํด ๋ณผ ์ ์์ผ๋ฉฐ, ์ด๋ฅผ ํตํด ์ฝ๋์ ๊ฐ๋ ์ฑ๊ณผ ์ ์ง ๋ณด์์ฑ์ ๋์ผ ์ ์๋ค.
Web Push for Web Apps on iOS and iPadOS
iOS ๋ฐ iPadOS์์๋ ์ด์ ์น ์ฑ์ ์น ํธ์ ์๋ฆผ์ ์ฌ์ฉํ ์ ์๊ฒ ๋ ์์ ์ด๋ค. ์ด์ ๊น์ง๋ ์ด๋ฌํ ๊ธฐ๋ฅ์ด ์ ํ ๊ธฐ๊ธฐ์์๋ ๋ค์ดํฐ๋ธ ์ฑ์๋ง ์ ์ฉ๋์์ง๋ง, ์ด์ ๋ Safari๋ฅผ ํตํด ์น ์ฑ์์๋ ์น ํธ์ ์๋ฆผ์ ์ฌ์ฉํ ์ ์๋ค.
์ด๋ฅผ ์ํด, Push API์ Service Worker API๊ฐ ์ด์ฉ๋๋ฉฐ, ์ด ๊ธฐ๋ฅ์ iOS ๋ฐ iPadOS 16.4 beta 1๋ถํฐ ์ฌ์ฉ ๊ฐ๋ฅํ๋ค. ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด, ์น ์ฑ์ ํตํด ์ฌ์ฉ์์๊ฒ ๋์ฑ ํธ๋ฆฌํ๊ฒ ์ ๋ณด๋ฅผ ์ ๋ฌํ ์ ์์ผ๋ฉฐ, ์น ์ฑ์์๋ ๋ค์ดํฐ๋ธ ์ฑ๊ณผ ๋น์ทํ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํ ์ ์๋ค.
์น ํธ์๋ฟ๋ง ์๋๋ผ Badging API, Focus ๋ฑ์ ๊ธฐ๋ฅ๋ ์ถ๊ฐ๋๋ค. ์ด๋ฌํ ๊ธฐ๋ฅ๋ค์ ์ถ๊ฐ๋ ์น ์ฑ ๊ฐ๋ฐ ๋ถ์ผ์์ ํฐ ๋ณํ๋ฅผ ๊ฐ์ ธ์ฌ ๊ฒ์ผ๋ก ์์๋๋ค.
์ ํ์ ์น ํธ์ ์ง์์ ๊ณ๊ธฐ๋ก PWA์ ํ์ฐ์ ๊ธฐ๋ํด ๋ณธ๋ค.
Youโve Got Options for Removing Event Listeners
๋ฐํ์์ ์ฝ๋๋ฅผ ์ ๋ฆฌํ๋ ๊ฒ์ ํจ์จ์ ์ด๊ณ ์์ธก ๊ฐ๋ฅํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ๋ ๋ฐ ์์ด ํํํ ์ ์๋ ๋ถ๋ถ์ด๋ค.
JavaScript์์ ์ด๋ฅผ ์ํํ๋ ๋ฐฉ๋ฒ ์ค ํ๋๋ ๋ ์ด์ ํ์ํ์ง ์์ ์ด๋ฒคํธ ๋ฆฌ์ค๋๋ฅผ ์ ๊ฑฐํ๋ ๊ฒ์ด๋ค. ์ ๊ฑฐํ๋ ๋ช ๊ฐ์ง ๋ฐฉ๋ฒ๋ค์ด ์์ผ๋ฉฐ, ์ด๋ค์ ๊ฐ ์ํฉ์ ๋ฐ๋ผ ๋ ์ ํฉํ ๋ฐฉ์๋ค์ด ์กด์ฌํ๋ฉฐ ์ด๋ค ๊ฒ์ด ๊ฐ์ฅ ์ ํฉํ์ง๋ฅผ ๊ฒฐ์ ํ ๋ ์ผ๋์ ๋์ด์ผ ํ ๊ณ ๋ ค ์ฌํญ๋ค์ ์ค๋ช ํ๋ค.
Why Sorting Is Harder Than It Seems
JavaScript๋ก ์ ๋ ฌํ๋ ค๋ฉด ์ ์ ํ ์ ๋ ฌ ํจ์(comparator function)์ ํ์๋ก ํ๋ค. ์ ๊ทธ๋ฌํ์ง๋ ๋ค์์ ๊ฐ๋จํ ์์ ๋ก๋ถํฐ ์์ํด ๋ณผ ์ ์๋ค.
[10, 2, 'x'].sort() // -> [ 10, 2, 'x' ]
์ด ๊ธ์ ๋จ์ํด ๋ณด์ด์ง๋ง, ์ฌ๋ฐ๋ฅธ ์ ๋ ฌ์ด ๋ณด์ฅ๋๊ฒ ํ๊ธฐ ์ํด ๊ณ ๋ คํด์ผ ํ ์ฌํญ๋ค์ ๋น๊ต ํจ์๋ฅผ ํตํ ์์ ๋ฅผ ํตํด ์ค๋ช ํด ๋๊ฐ๋ค.
ํํ ๋ฆฌ์ผ
A Fancy Hover Effect For Your Avatar
CSS์ gradients, masking, outline, scale ๋ฑ ๋ค์ํ ์์ฑ์ ์ด์ฉํด์ ์๋ฐํ ์ด๋ฏธ์ง๋ฅผ ๋ณด๋ค ์ญ๋์ ์ด๊ณ ์ธํฐ๋ํฐ๋ธํ๊ฒ ๋ง๋ค ์ ์๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํ๋ ํํ ๋ฆฌ์ผ์ด๋ค.
Speedy CSS Tip! Animated Gradient Text
CSS์ background-clip ๊ณผ linear-gradient ์์ฑ์ ์ด์ฉํด ํ
์คํธ์ ๊ทธ๋ผ๋ฐ์ด์
์ ๋๋ฉ์ด์
ํจ๊ณผ๋ฅผ ์ ์ฉํด ๋ณด๋ ํํ ๋ฆฌ์ผ์ด๋ค. ์ ๊ธ์์๋ background-position์ ๋ณ๊ฒฝํ๋ฉด์ ์ ๋๋ฉ์ด์
ํจ๊ณผ๋ฅผ ์ฃผ๊ณ ์๋๋ฐ, ์ด ๊ฒฝ์ฐ ๊ฐ์ฒด๊ฐ ๋ง์์ง๋ฉด CPU ์ฌ์ฉ๋์ด ๋์์ง ์ ์๋ค๋ ์ ์ ์ฐธ๊ณ ๋ฐ๋๋ค.
Building a forum with React, NodeJS
์ด ํํ ๋ฆฌ์ผ์ ํฌ๋ผ(๊ฒ์๊ธ์ ์์ฑ๊ณผ ๋๊ธ ์์ฑ์ด ๊ฐ๋ฅํ) ์์คํ ์ ๊ตฌ์ถํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ธ ์ ์๋ค. ๋ํ ์ค๋ ๋์ ๋๊ธ์ด ๋ฌ๋ฆด ๋๋ง๋ค ์๋ฆผ(Novu๋ฅผ ํ์ฉํ)์ ๋ณด๋ด๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํ๋ค.
์ฝ๋์ ๋๊ตฌ
aicommits
์ปค๋ฐ ๋ฉ์์ง๋ง์ ์ธ๊ณต์ง๋ฅ์ด ๋์ ์จ์ฃผ๋ ์๋๊ฐ ๋๋ํ๋ค. aicommits๋ git diff ๋ด์ฉ์ OpenAI์ GPT-3์ ์ธํ์ผ๋ก ๋ฃ์ด์ ์ปค๋ฐ ๋ฉ์์ง๋ฅผ ์ป์ด๋ด๋ ๋ฐฉ์์ผ๋ก ๋์ํ๋ค. ํด๋น ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ OpenAI์ API Key ๊ฐ์ ๋ฐ๊ธ๋ฐ์์ผ ํ๋ค.
fuse.js
fuzzy-search๋ฅผ ์ง์ํ๋ ์์กด์ฑ ์๋ ๊ฐ๋ฒผ์ด ๊ฒ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ
Evergreen
React UI ๋์์ธ ์์คํ .
Marquee3000
1990๋
๋ ์น ๋์์ธ์ ํฅ์๋ฅผ ๋๋ ์ ์๋ marquee ํจ๊ณผ๋ฅผ ์ง์ํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ.
ReacTree

VS Code ํ์ฅ ํ๋ก๊ทธ๋จ์ธ ReacTree๋ ๊ณ์ธต์ ์ธ ๋ถ๋ชจ-์์ ์ปดํฌ๋ํธ์ ๊ด๊ณ๋ฅผ ์๊ฐํํด์ ๋ณผ ์ ์๊ฒ ํ๋ค.
5kb webgl2 fluid simulation
์ฝ 500์ค์ ์ฝ๋๋ก WebGL2 ๊ธฐ๋ฅ(texelFetch, textureSize, vertex array object)์ ์ฌ์ฉํด ์ฝ 5KB ๋ฏธ๋ง์ JavaScript ์ฝ๋๋ก ์์ถ๋ Stable Fluid ์๊ณ ๋ฆฌ์ฆ ๊ตฌํ์ ๋ํ ๋ฐ๋ชจ๋ฅผ ๋ณผ ์ ์๋ค.
Rubberduck: ChatGPT for Visual Studio Code

VS Code ํ๋ฌ๊ทธ์ธ์ผ๋ก ์ฌ์ด๋๋ฐ๋ฅผ ํตํด AI ์ฑํ ์ ํตํด ChatGPT๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
Rubberduck์ ์ฝ๋ ์์ฑ, ์ฝ๋ ํธ์ง, ์ฝ๋ ์ค๋ช , ํ ์คํธ ์์ฑ, ๋ฒ๊ทธ ์ฐพ๊ธฐ, ์ค๋ฅ ์ง๋จ ๋ฑ์ ์์ ์ ์ํํ ์ ์์ผ๋ฉฐ, ์ฌ์ฉ์ ์ํด์ OpenAI API ํค ๋ฐ๊ธ์ด ํ์ํ๋ค.