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 — фреймворк для побудови застосунків на основі
Крім цього, серед усіх найпопулярніших проєктів у світі 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.
На цьому все. Пишіть коментарі та ставте запитання, якщо маєте, й до зустрічі у березні! 😎
2 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів