Node.js Digest #7: перспективи Deno, NPM знову під ударом, fs по-новому, JavaScript у MySQL

Усі статті, обговорення, новини про Front-end — в одному місці. Підписуйтеся на телеграм-канал!

Всім привіт! Це Олександр Зіневич, Engineering Director з Avenga. Після невеликих зимових канікул повертаюсь на DOU й продовжую знайомити вас із новинками зі світу Node.js. Тож зустрічайте перший дайджест у 2024 році ⭐

Коротко про головне

🔹Node.js v21.6.1 побачила світ. Цікавих новин тут мало, але не забувайте вчасно оновлюватись.

🔹Typescript v5.4 beta доступний, і вже можна спробувати Object.groupBy, Map.groupBy та багато іншого.

🔹Компанія Oracle розповіла, що тепер JavaScript можна використовувати і для написання stored functions і stored procedures на MySql Server.

🔹MikroORM зарелізили шосту версію своєї бібліотеки, яка є чудовою альтернативою дуже популярній TypeORM.

🔹Якщо вам не подобається те, як працює нативний модуль fs в Node.js, можливо вам буде цікавий новий неофіційний варіант humanfs.

NPM, у нас проблеми

Компанія Socket опублікувала короткий звіт про те, що відбувалось із npm у 2023 році. Цей звіт містить багато статистичних даних, наприклад, що Typescript — це найпопулярніший npm-пакет за кількістю залежних пакетів, після нього на другому місці йде React.

Крім цього, у звіті ви знайдете приклади найдовших назв npm-пакетів, інформацію про найбільші за розміром npm-пакети та багато іншого.

Для мене ж особливо цікавим є той факт, що за 2023 рік компанією було виявлено понад п’ять тисяч шкідливих пакетів.

Виглядає, що безпека та валідація вмісту npm-пакетів стає все більш актуальною проблемою, бо 2024 тільки почався, а компанія Sonatype вже розповідає про те, як вони виявили пакети, які містять відео всередині, а також про пакет everything, який у своїх залежностях посилається на всі публічні npm-пакети, створюючи так зване dependency hell і унеможливлює їхнє видалення.

Ці кейси не такі серйозні, як ось цей, де крадуть безпосередньо SSH-ключі. Крім цього, зараз ще є й серйозна проблема із застарілими пакетами.

Із цього можна зробити висновок, що екосистемі npm необхідно стрімко еволюціонувати, аби хоч якось (із запізненням) протистояти сучасним викликам.

2023 JavaScript Rising Stars

У січні світ побачило нове видання звіту JavaScript Rising Stars 2023, у якому можна переглянути, що ж відбувалось із JavaScript-екосистемою минулого року.

Звісно, цей звіт не оминув і бекенд-розробку. Згідно з цими даними, топовим фреймворком для бекенд- і фуллстек-розробки виявився Next.js із 17,8К зірочок на GitHub, водночас Bun потрапив у список бандлерів і отримав перше місце з 29,3К зірочок на GitHub. Незрозуміло, чому так, але так бачать автори 🤷🏻‍♂️

Звісно, не обійшлось і без ШІ (куди ж тепер без нього), у цій категорії список очолив Langchain.js — фреймворк для побудови застосунків на основі LLM-моделей.

Крім цього, серед усіх найпопулярніших проєктів у світі JavaScript, на дев’ятому місці DrizzleORM — проєкт української команди, про який я вже згадував в одному з минулих дайджестів.

Майбутнє Deno

Нещодавно світ побачила версія Deno v1.40. У новій версії завезли багато чого цікавого. Так, наприклад, в експериментальному режимі можна спробувати Temporal API, Stage 3 Decorators Proposal, покращено сумісність з Node.js та інше.

Платформа розвивається та активно росте від версії до версії, але все ще не зовсім конкурент для Node.js. Думками про це у своєму блозі поділився Baldur Bjarnason.

Автор зауважує, що у своїй спробі зробити повноцінну сумісність із Node.js, Deno женеться за ціллю, яка весь час вислизає, оскільки Node.js активно розвивається.

Крім цього, справедливо відзначає, що ті, хто переходить з Node.js, далеко не факт, що хочуть використовувати JavaScript на бекенді й надалі. А тому ніша і майбутнє платформи все ще туманне. Цікаво почути ваші думки стосовно цього, пишіть у коментарях 😉📝

State of Web Development Survey

Компанія Netlify опублікувала результати свого опитування State of the Web Development 2023. Цей звіт охоплює веброзробку загалом, а тому інформації по суто бекендовим технологіям не дуже багато.

Згідно з результатами звіту, зараз можемо спостерігати за тим, як зберігають свою популярність так звані Composable Architectures, росте популярність Astro, а також перевірити деякі передбачення команди Netlify.

Мою увагу привернув той факт, що близько 80% респондентів відмітило використання інструментів штучного інтелекту у своїй роботі та надали загальний фідбек:

Хоч станом на сьогодні ще не можна точно сказати, як застосування сучасних інструментів штучного інтелекту змінить розробку, але вже зрозуміло, що ми десь у середині цього процесу.

Щось почитати

🔹У блозі Deno вийшов невеликий туторіал про те, як самостійно зробити Cloud-based IDE, використовуючи їхнє нове Subhosting API.

🔹Matteo Collina у блозі Platformatic поділився своїми рекомендаціями, як потрібно працювати з Environment Variables. Звісно це разом з використанням Fastify та Platformatic, але однаково корисно.

🔹У блозі Cloudflare вийшов туторіал про те, як використовувати їхні Worker-и для роботи з OpenAI API.

🔹Senior Product Manager в компанії Microsoft, що відповідає за Typescript, дав невеличке інтервʼю, де підсумував, що сталось із «мовою» у 2023 році та чого можна очікувати у 2024. Конкретики не багато, але можна зрозуміти напрям руху 😉

🔹Набір корисних практик, які вартує використовувати на бекенді, — GitHub-репозиторій, на який я натрапив випадково, але який може бути корисним. Більшість з них очевидні, тому можна сприймати просто як чекліст.

🔹Трішки клікбейту 🙃. У Smashing Magazine вийшла стаття із заголовком «Як маркетинг змінив ООП у JavaScript». Як змінив, я так і не зрозумів, але почитати цікаво.

🔹Прогноз з того, як буде розвиватись Serverless у 2024 році та що на це впливає.

🔹Bun продовжує дивувати і анонсував Bun Shell — можливість писати та виконувати shell-скрипти на JavaScript. Детальніше тут.

🔹У блозі AWS вийшла стаття про AWS Amplify та як з ним працювати. Тут мало чогось надто складного чи надзвичайно цікавого, але для загального розвитку може бути цікавим.

🔹Команда DrizzleORM поділилась історією про те, як маленький фікс покращив перфоманс відповідної операції у кілька разів. Детальніше за посиланням.

Щось подивитись

🔹З’явилися записи виступів з конференції fwdays React + TS. Рекомендую переглянути всі, що доступні, але для нас, звісно, найцікавішим буде виступ Matteo Collina:

🔹Hight-level рев’ю про те, як з Node.js можна працювати з Gemini Vision API. Хто не чув, це щось на зразок ChatGPT від Google, тільки краще (згідно з різними відгуками):

🔹Ну, вже працювали з AWS Step Functions? Можливо, саме час ознайомитись? На каналі FooBar Serverless вийшло коротке оверв’ю того, як користуватись цим сервісом:

🔹Розбір цікавого кейсу дебагінгу AWS Lambda від Web Dev Cody:

🔹Не дуже про Node.js, але якщо ви задумувались коли-небудь як працюють spell checker-и, це відео рекомендоване до перегляду:

🔹Компліментарний огляд того, як можна перейти з Express на Bun і hono:

🔹Theo Browne поділився своїми думками про те, що може чекати веброзробку у 2024 році:

Бібліотека місяця

Цього місяця я б хотів звернути вашу увагу навіть не на бібліотеку, а на цілий фреймворк — hono. Це фремворк, який займає дуже мало памʼяті та оптимізований для роботи в Edge-середовищі. Проте, що мені сподобалось найбільше, так це те, що тут можна використовувати як Node.js, так і Bun чи Deno.

На цьому все. Пишіть коментарі та ставте запитання, якщо маєте, й до зустрічі у березні! 😎

👍ПодобаєтьсяСподобалось10
До обраногоВ обраному2
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Крутий Digest, не знав про нього раніше🔥
Зберіг собі купу корисних відео та матеріалів, щоб переглянути/ознайомитися👍

Дякую, Саша🔥
Keep it up!

Дякую за коментар. Радий що було цікаво ;)

Підписатись на коментарі