Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Управляй роботом-мутантом чтобы исследовать загадочный мир, находи классное оружие и сражайся с различными врагами, чтобы выжить!

Зомботрон Перезагрузка

Экшены, Платформеры, Шутер

Играть

Топ прошлой недели

  • AlexKud AlexKud 35 постов
  • Animalrescueed Animalrescueed 52 поста
  • Webstrannik1 Webstrannik1 50 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
1
cododelia
cododelia
11 месяцев назад
Лига программистов

ЧЕТЫРЕ РАЗА! — ПЕРЕПИСЫВАЛ... проект! (Supabase, Strapi, AppWrite, Directus, FilamentPHP)⁠⁠

ЧЕТЫРЕ РАЗА! — ПЕРЕПИСЫВАЛ... проект! (Supabase, Strapi, AppWrite, Directus, FilamentPHP)

AppWrite, SupaBase, Directus, Strapi - не понравились

AppWrite

Есть всё, кроме массового импорта. Мощнейшая вещь.

Но настройка его сложна для новичка, и жрет о 2-4гб оперативки на сервере.

SupaBase

Крутая штука, не допёр как сделать авторизацию 🤣

И тоже с настройкой были траблы.

Плюс мне не нравится HTTP Basic Авторизация по захардкоженным credentials в конфиге прокси сервера.

За то импорт и экспорт нормальный есть

Directus

Очень крутая штука, особенно его Flows.

Стал сильно продуманнее за прошедшие полгода с моей встречи с ним.

Но все так же документация меня вымораживает. Много не раскрытых тем, и скрытых, не упомянутых ограничений.

Например условная нода логики в тех же Flow - не поддерживает тупую проверку входных данных на их наличие... Не уверен что мне когда-либо понравится это. И так же во flows много других ограничений, хотя задумка улетная.

В остальном это комбайн для супер быстрого старта, толком даже без настроек, всё мышкой можно сделать.

Ограничения так же можно обойти, сделав простое расширение, я так пол логики в прошлом проекте сделал, но теряется весь шарм легкости и наглядности. 🥲

Думаю ребята в нужном направлении двигаются, и их время просто ещё не настало, держу звезду на гитзабе за них.

Strapi

HeadlessCMS, да. Крутая, да. Популярная? А вот хз-хз.

Вроде раньше много где встречал про неё статьи, и на гитхабе звезд куча насыпано.

НО КАК? Как может не быть у такой популярной CMS функционала для импорта/экспорта, хотя бы банального!?

Он справделивости ради есть в официальном маркете расширений, но... На прошлую версию 😖 Не без обратной совместимости 😩

Ну я его тоже оставил откисать.

FilamentPHP

Тяжелая артилерия из TALL Stack компонентов и не то что целой системы, а уже целой ЭКОсистемы для любого рода панелей, да еще и на базе Laravel 😤

Ну это козырь был.

Я пытался, честно, вот даже описал что меня останавило, и на каждый из вариантов я потратил минимум 4 часа времени.

Думал ребята допили свои проекты, обещающие супер быстрый старт, но везде какие-то проблемы...

В итоге я все же снова взял в работу этот стэк для бэка. Нельзя на нем не сделать бэк. Ну нет ограничений, сколько бы я не придумывал.

Меня просто удивляет продуманность этого Filament. Баги есть, не без них, конечно. Как оказалось без ошибок ни то, что люди, роботы не справятся 🙃 (Отсылка к нейросетям)

Тут я за пару дней уложился извернуться и не сорвать сроки, а сделано:

  • Админка

  • Бизнес логика

  • Token Based Авторизация по API
    (пришлось потратить полдня, чтобы разобраться в этой теме, так как я её намеренно игнорировал последние 3 года)

  • API c аутентификацией по токену

  • Расширение для хрома на WXT + React (TanStack Router, Query, Store)

  • Для расширения хромовского - я вообще только с WXT работал и голым React, чисто для верстки.

К сожалению - опять не пригодился Background скрипт, так что всё ещё познать вполне не удастся разработку расширений...

Но с TanStack я не работал. Как-то раз для крипто проекта пытался его настроить и за целый день - так и не вышло. Сейчас же скажу - это мастхэв! Очень крутая штука!

Ну и отказался от Tailwind и SCSS в пользу CSS Modules в паре с clsx. И я не сказал бы, что стили писать долго. В моем случае я заказы беру вообще без дизайна и предпочтений, так что 50-80% от них пишет нейросеть, а я просто не претендую на произведение искусства 😆

Кто работал с этими комбайнами, опишите свой опыт, мб я чего не догоняю...
Конкретно с AppWrite - разбираться не стал в силу ограничения по срокам, а supabase по инерции последним выбыл.

Показать полностью
[моё] Программирование Javascript Backend Cms Mysql Postgresql IT Фриланс Длиннопост PHP Laravel Nodejs Typescript Личный опыт React
4
2232
KFalcon
11 месяцев назад

Дорогу осилит идущий⁠⁠

Для ЛЛ:

Я учу людей языку программирования Java. Бесплатно. Совсем бесплатно. Прям даром. И даже без рекламы. Совсем без рекламы. Вот вообще.
Ссылка на тг: Дорогу осилит идущий. Java
С чего все началось: Помогу с изучением Java. Бесплатно. Не реклама:)

Пост посвящен круглой дате этой инициативы. И анонсу интенсива для самых начинающих

Какое-то время назад на этой странице был опубликован пост, который предлагал помощь в изучении Java всем желающим.

Сегодня ровно два года с момента той публикации. Два года каналу. И два года небольшому, но очень уютному сообществу, которое для меня лично стало чем-то очень важным.

Дорогу осилит идущий

И по такому случаю команда канала решила анонсировать интенсив для новичков, рассчитанный на тех, кто еще не начал (или только начинает) свой путь в Java.

Что это значит? Речь идет о:

  • Пяти видеолекциях по базовым темам - от основ синтаксиса до ООП

  • Секциях вопрос-ответ в конце лекций

  • 20 задачам по пройденным темам

  • Проверке данных задач и рекомендациям по каждой от членов команды канала

  • Обучению базовой работе с git и GitHub

  • Общем чате для участников, где также будут присутствовать более опытные ребята для помощи по возникающим вопросам

Чувствуете, как запахло какой-то продажной херней? Но нет. И интенсив, и основной курс по разработке, и все остальные активности, связанные с каналом, полностью бесплатны.

Единственное, чего бы мне хотелось в данном случае - чтобы данный пост поднялся повыше и его увидело как можно больше людей. Ведь с каждым человеком повышается шанс найти того, кто действительно заинтересуется Java-разработкой и станет еще одним активным участником канала:) На этом минутка лайкодрочерства закончена, можем переходить к другим новостям.

Те, кто видели более старые посты, или уже подписаны на канал, помнят, что год назад мы уже проводили схожий интенсив. Тогда он оказался достаточно спонтанным и местами сырым. На этот раз мы сделали работу над ошибками, несколько переработали подход и, хочется верить, смогли подготовить хороший трамплин для дальнейшего обучения. Не терпится проверить, все ли удалось.

Конечно, интенсив даже в текущем виде не сделает из новичка разработчика, который зарабатывает миллионы в секунду. Но он позволит быстро освоить и закрепить самые основы, чтобы дальнейший путь - основной курс "Дорогу осилит идущий" или иные обучающие ресурсы - давались легче.

Пора вернуться к основной теме поста. Каналу исполнилось два года.

Надо признать, это были два насыщенных и интересных года. Новые знакомства, новый взгляд на вещи, давно ставшие привычными. Новые ощущения от того, что кто-то учится по материалам, которые выходят из-под твоей руки. Более того - кто-то даже хвалит эти материалы и рекомендует другим. Все это формирует удовлетворение от проделанной работы и мотивирует продолжать.

За это время получилось не все, что планировалось. Но выросли и амбиции - например, все четче формируется желание перенести контент на отдельный сайт. И расширить его статьями других авторов, которым было бы интересно рассказать о чем-то за пределами основного курса. Возможно, через год что-то из этого станет реальностью.

Но как и в любом сообществе, самой главной его составляющей остаются люди.

Те, кто задают вопросы и позволяют чувствовать, что канал жив и движется в правильном направлении. И те, кто на эти вопросы отвечают, показывая, что это уже не только моя личная инициатива.

Безусловно, те люди, кого я считаю командой канала. В частности, без них не стал бы возможен интенсив, анонсированный выше. Именно они прямо сейчас помогают с подготовкой к нему - от актуализации задач и теоретических материалов до добавления технических решений, которые облегчат проведение интенсива. И именно эта команда будет ревьюить решения участников - искать ошибки, давать рекомендации и прививать умение писать хороший код. Наконец, именно эти люди позволяют добавлять в жизнь канала действительно масштабные события.

И все вместе мы продолжаем осиливать дорогу, которая заявлена в названии. От Java Core к базам данных, далее к системам сборки, тестированию, вебу... И обязательно дойдем до финишной черты, за которой начнется новая дорога - собеседования, работа и... и что-то еще;)

Как сказал выше, буду рад, если пост поднимется в горячее. Пост без рейтинга

Спасибо за внимание!

P.S. Жена сказала, что текст вышел пресноватым. Поэтому - анекдот:

Специалистов тех. поддержки на военной кафедре отправили на стрельбы. Все отстрелялись, в мишень никто не попал. Майор орёт:

— Как так, блять?!
— У нас пули из ствола вылетели. Проблемы на вашей стороне.

Показать полностью 1
[моё] Без рейтинга Помощь Работа IT Образование Учеба Карьера Преподаватель Java Backend Волонтерство Удаленная работа Благотворительность Поиск работы Консультация Разработка Веб-разработка Собеседование Мат Длиннопост
190
363
KFalcon
1 год назад

Дорогу осилит идущий⁠⁠

Я учу людей языку программирования Java. Бесплатно. Совсем бесплатно. Прям даром. И даже без рекламы. Совсем без рекламы. Вот вообще.
Ссылка на тг: Дорогу осилит идущий. Java
С чего все началось: Помогу с изучением Java. Бесплатно. Не реклама:)

Почти год я не публиковал на Пикабу никаких новостей и обновлений, связанных с каналом. В основном потому что не было повода. Но теперь он, кажется, есть:)

За прошедший период было достаточно много событий, маленьких и крупных, но происходящих исключительно внутри сообщества и невидимых для всех остальных. В основном о них и хочется рассказать.

Для ЛЛ:

1. Шлюхи

2. Завершение раздела о WEB и Java EE. 150 статей

3. Смена портала для публикации статей

4. Интенсив годичной давности

5. Вебинары за прошедший год

6. Доработки Road Map

7. Математика

Шлюхи

Нет, канал не был продан и я не начал размещать рекламу инфоцыганских курсов, хоть такие предложения и поступают:)

В старых постах неоднократно упоминалось о блекджеке и шлюхах, которые обязательно будут, и не раз... Но не сейчас.

Блекджека в сообществе все еще нет, но с камвхорами дела обстоят получше - время от времени они пытаются рекламировать себя в комментах. Спасибо модераторам за своевременную чистку канала от них и прочего дерьма.

Завершена публикация статей для раздела "WEB и Java EE"

Собственно, основная причина, по которой я решился на этот пост.

Позади уже много всего - от Java Core до Unit-тестирования, систем сборки, JDBC и... теперь уже Web и Java EE.

Получилось 16 статей, в которых хотелось донести много из сразу - от клиент-серверной архитектуры и основ работы с HTTP до Servlet API и даже, простигоспади, JSP. На их фоне как-то незаметно прошла юбилейная 150-ая статья.

Раздел получился тяжелым и, наверно, со временем будет частично переписан. Тем не менее, хочется верить, что мне удалось заложить небольшой фундамент, на базе которого будет легче знакомиться со Spring и другими технологиями, применяющимися в современной разработке.

Собственно, впереди остаются лишь два крупных раздела - Hibernate и Spring. Технологий, которых некоторые подписчики, ждут с самого появления канала. И того, без чего многие не представляют современную Back-end разработку на Java.

Далее к новостям погоды о других событиях, происходивших в нашем небольшом сообществе за последний год.

Размещение публикаций

Те, кто читал более старые посты или уже тогда был подписан на канал, знают, что статьи публиковались в telegra.ph. Это оказалось далеко не самым удобным решением по ряду причин - от корявого форматирования до сложностей в поддержке уже написанных статей. На данный момент все материалы публикуются на github.com. Перенос старых статей движется в год по чайной ложке, но тоже движется. В целом, это решение облегчило жизнь и мне, и людям, которые стараются помогать с вычиткой, и тем подписчикам, которые предпочитают иметь оффлайн-доступ к статьям.

Интенсив по основам Java

Предыдущий пост залетел в топ, в результате чего на канал подписалось несколько тысяч человек - в основном новичков. Бросать их в свободное плаванье показалось неверным. В конце концов, всем обещали дорогу, а если по дороге приходится плыть - это плохая примета.

Результатом стал очередной план - как всегда, надежный, что швейцарские часы. Один из завсегдатаев канала предложил провести для новичков "Интенсив" - мероприятие длиной в несколько недель, с пятью онлайн-сессиями в формате видеолекций и ответов на вопросы. И практическими заданиями к каждой теме. Вишенка на торте - обратная связь по каждой из задач.

Что могло пойти не так? В общем-то, все. От мелких технических проблем до слабой подготовки самого интенсива - идея была сырая, детали правились на ходу, девиз того месяца - "Импровизация - наше все!"

Огромное спасибо людям, которые поддержали идею и помогли с организацией и проведением. Небольшая команда энтузиастов, на разных этапах включающая в себя от 4 до 7 человек, смогла переварить поток вопросов от 270 участников и отревьюить почти 900 решений для представленных задач.

Интенсив поверхностно покрыл большое число базовых тем - от основ синтаксиса до алгоритмической сложности и основ ООП. Тяжело сказать, что темы разбирались достаточно глубоко, но хочется верить, что мы дали хороший толчок людям, которые пришли без какой-либо базовой подготовки. И если это так - тот безумный месяц прошел не зря.

Женя (@rozarivaagro), огромное спасибо за идею и самое активное участие в ее реализации! Без тебя процесс изучения Java для нескольких сотен человек был бы куда менее интересным.

Вебинары

В прошлом посте я упоминал, что на тот момент был проведен вебинар. За прошедшее время были проведены еще два, посвященные юнит-тестированию и системам сборки.

В дальнейшем от такого формата пришлось отказаться в силу малой популярности у участников, но было весело:) Возможно, видео-контент снова станет актуален для канала в будущем.

В любом случае, Женя (на этот раз @e8428631), спасибо за приложенные усилия. Благодаря твоим видео для многих мир стал чуточку понятнее.

Road Map

Через год после первой публикации был расширен глобальный план курса. Он же - мое видение того, что стоит хотя бы поверхностно изучить, чтобы уверенно претендовать на позицию Junior-разработчика. Был добавлен наиболее критичный для большинства раздел - Spring Framework.

На данный момент документ можно считать почти полностью сформированным, за исключением нескольких относительно небольших подразделов. Желающие могут ознакомиться по ссылке: Road Map. Как всегда, приветствуется любая конструктивная критика и рекомендации:)

Уголок математики

В мае на базе флудилки канала стартовал топик, посвященный математике. Ведет его автор идеи интенсива. Публикуются видеоматериалы, разбираются конкретные задачи. Темы - от параметра до мат. индукции, разборы задач из вступительных экзаменов... Не буду делать рекламу Евгению (снова @rozarivaagro), но там бывает интересно:)

Изначально хотелось рассказать еще и о планах, но пост уже получается слишком большим. Поэтому о планах - в другой раз. Там тоже есть, чем поделиться. Благо, скоро у каналу исполнится два года и будет еще один повод выложить что-то на Пикабу❤️

В завершение, традиционная благодарность всем участникам сообщества. Именно ваши вопросы, дискуссии и смехуечки мотивируют продолжать писать новые статьи и развивать сообщество. Без вас дорога многих людей была бы труднее. Или вообще бы не началась.

Мой тг для связи: https://t.me/ironicMotherfucker

Показать полностью
[моё] IT Java Благотворительность Backend Учеба Опыт Стажировка Обучение Дистанционное обучение Консультация Поиск работы Преподаватель Удаленная работа Образование Профессия Блог Волонтерство Работа Помощь Текст Длиннопост
28
5
golodnyyFrontend
golodnyyFrontend
1 год назад

Про синдром самозванца⁠⁠

Про синдром самозванца

Через 1.5 недели выхожу на новую работу. Там крайне опытный коллектив, амбициозные цели, новые креативные задачи, в общем все по списку "крутая модная компания".

Но даже спустя годы в этой сфере, будучи компетентным спецом, я продолжаю чувствовать в себе отголоски самозванца.

ИМХО, это свойственно для большинства людей. Сначала мы не хвалим себя за успехи и достижение целей. А потом получаем в обратку страх ответственности за случившиеся перемены.

В своей жизни, также как и в команде, надо проводить ретроспективы. Как только начинает крыть - включаем наше РАЦИО, и заставить его поработать вместо нашего ЭМОЦИО.

Я для себя вывел следующий порядок действий: сел на задницу, забил кальян, выдохнул, и в мыслях раскидал:

  • что я сделал и чего я достиг

  • что я не сделал и чего я не достиг

  • что я сейчас чувствую и что меня выдрачивает

  • что я могу с этим сделать

  • какие новые цели я себе ставлю

Выглядит как "Я делаю ЭТИ три простых упражнения...", но в реальности это помогает голове сразу с двух сторон: антисамозванец и целеполагание

  1. Вспомнил тернистый путь до цели -> Благодаря усилиям добился цели -> Получил заслуженный приз. И вот самозванец внутри уже не может пынять на "незаслуженную выгоду"

  2. Добился целей -> Порефлексировал -> Поставил новые цели -> Сделал работу над ошибками и выполнил новые цели -> Repeat. Ура, мы изобрели скрам

Нашей голове всегда нужно напоминать, кто тут красавчик, и кто выполнил поставленные цели.

А чтобы голова не простаивала и не занималась всякой ненужной хуйней - в голове всегда должны быть цели в статусе "В работе".

Показать полностью
Работа Программирование Веб-разработка Разработка Frontend Backend IT Айтишники Продуктивность Собеседование Карьера Поиск работы Программист Текст Scrum Тайм-менеджмент Эмоциональное выгорание Самозванец Синдром самозванца Мат
4
160
tproger.official
tproger.official
1 год назад
Типичный программист

Тонкая шутка⁠⁠

Тонкая шутка
IT юмор IT Программирование Программист Backend Frontend
30
5
golodnyyFrontend
golodnyyFrontend
1 год назад

Про самопрезентацию⁠⁠

И сразу интересное наблюдение про самопрезентацию

На прошлой неделе проходил техническое собеседование в прикольный стартап.

Прошел на финальную встречу с CTO и лидами - все супер, сидим болтаем, трём за технологии и кейсы, ничего не предвещает беды.

И тут CTO вспоминает что у него был пулл вопросов технического характера для самой самой финальной проверки кандидата. И первый из этих вопросов - на typescript.

Сначала подумал что просто по Utility types погоняют, или про различия interface и type спросят. И тут меня просят написать несколько разных дженериков 😱. А я их последний раз писал пол года назад, синтаксиса уже естественно не помню, короче жопа. На финальном этапе на таком базовом вопросе естественно опозориться не хочется.

И пока я спешно, всеми извилинами, пытался из головы достать смутные образы синтаксиса - CTO говорит примерно следующее "Ну такие вопросы задавать вообще неприлично, поэтому этот блок пропустим, по нему никаких сомнений нет. Лучше расскажи про свой последний кейс с...".

На этом моменте я искренне почувствовал студенческое "прокатило".

По итогу оффер на 300+ прям в этот же день. И все благодаря правильной самопрезентации на протяжении всех этапов, по итогу которых в глазах команды я уже был "компетентным спецом с большим опытом".

  • Если у вас есть слабые стороны - не выводите на них собеседника, и не плавайте с ответами. Лучше сразу сказать, что вы не знаете и последний раз в проде видели этот вопрос примерно "никогда"

  • На ваши сильные стороны делайте акцент и углубляйтесь в рассуждениях до потолка ваших знаний

Лучше выглядеть как специалист в некоторых областях, чем плавать во всех вопросах одинаково поверхностно

Показать полностью
[моё] Работа Программирование Веб-разработка Разработка Frontend Backend IT Айтишники Продуктивность Собеседование Карьера Поиск работы Программист Текст
1
28
ghazan
ghazan
1 год назад
IT-юмор

Фронтенд и бэкенд⁠⁠

Ну или фронт-офис и бэк-офис

Ну или фронт-офис и бэк-офис

[моё] Лавочка Старое и новое Frontend Backend IT юмор Двор Фотография
14
Proglib
Proglib
1 год назад
Серия Итоги недели в мире бэкенда, обзоры новых сервисов

Итоги недели в мире бэкенда и обзоры новых сервисов: 3 эпических сбоя, вызванных регулярками⁠⁠

😈 Осторожно – Regex! 3 эпических сбоя, вызванных регулярками

Регулярные выражения – мощный, гибкий и многофункциональный инструмент для обработки текста и валидации данных. С их помощью можно решать сложные задачи буквально одной строкой кода. Однако неправильно составленное регулярное выражение может превратиться в настоящую бомбу замедленного действия, готовую взорваться при определенных входных данных. Последствия могут быть сложноустранимыми, а иногда катастрофическими – как в этих реальных кейсах.

Сбой Stack Overflow

В 2016 году Stack Overflow испытал 34-минутный перебой в работе. Причиной стало регулярное выражение, используемое для обработки пользовательского ввода:

^[\s\u200c]+|[\s\u200c]+$

Это выражение должно было находить пробелы в начале и конце строки. Проблема возникла, когда какой-то пользователь запостил комментарий, содержащий около 20 000 последовательных пробелов. Механизм обработки регулярных выражений начал проверять каждый пробел. Когда после 20 000-го пробела встретился другой символ, движок начал откатываться назад, пытаясь найти соответствие, начиная со второго пробела, третьего и так далее.

Это привело к катастрофическому возврату (catastrophic backtracking) – ошибке, которая возникает, когда движок регулярных выражений тратит чрезмерное количество времени на попытки найти соответствие шаблону, перебирая различные комбинации. Количество проверок начало лавинообразно увеличиваться и быстро достигло 199 990 000 – это вызвало значительную задержку и в итоге сбой системы.

Для решения проблемы потребовалось 10 минут на обнаружение причины, 14 минут на написание исправления и еще 10 минут на развертывание решения. В результате регулярное выражение было заменено на функцию подстроки.

📖#️⃣ Больше полезных книг вы найдете на нашем телеграм-канале

«Книги для шарпистов | C#, .NET, F#»

Сбой Cloudflare

2 июля 2019 года произошел крупный сбой в работе платформы Cloudflare. Один из инженеров написал регулярное выражение, которое привело к действительно катастрофическому возврату – вызвало экстремальную перегрузку всей инфраструктуры. Использование процессоров выросло до 100%, а большинство сайтов, подключенных к Cloudflare, замедлились до крайности или вовсе оказались недоступными.

Коварная регулярка выглядела так:

(?:(?:\"|'|\]|\}|\\|\d|(?:nan|infinity|true|false|null|undefined|symbol|math)|\`|\-|\+)+[)]*;?((?:\s|-|~|!|{}|\|\||\+)*.*(?:.*=.*)))

Самую большую опасность в этом выражении представляет

.*(?:.*=.*)

– группа без захвата, которая может привести к чрезмерному использованию процессора при обработке определенных шаблонов. Эта конструкция вызвала серьезные проблемы с производительностью и в конечном итоге привела к массовому сбою.

Глобальный сбой Windows/CrowdStrike

19 июля 2024 года произошел самый массовый сбой в истории – из строя вышли около 8,5 млн Windows-компьютеров с ПО CrowdStrike. Причиной сбоя стало несоответствие между ожидаемым количеством входных параметров (21) и фактическим количеством параметров (20), которые были переданы в интерпретатор контента (этот компонент отвечает за обработку содержимого с использованием регулярных выражений). Когда система получила ввод с 21 параметром, интерпретатор контента попытался считать данные за пределами выделенной памяти, что и привело к сбою системы.

Привет!

Мы запустили еженедельную email-рассылку, посвященную последним новостям и тенденциям в мире бэкенда. В еженедельных письмах ты найдешь:

  • Языки программирования и фреймворки для бэкенда

  • Архитектура и проектирование серверных приложений

  • Базы данных и управление данными

  • Безопасность и защита данных

  • Облачные технологии и DevOps

  • API и интеграции

  • Тестирование и отладка

  • Инструменты и утилиты для бэкенд-разработчиков

  • Лучшие практики и паттерны проектирования

📧 Подпишись, чтобы быть в числе первых, кто получит дайджест

🤵 Как не завалить собеседование в крупной ИТ-компании

Разработчик с 10-летним коммерческим опытом поделился провальным опытом прохождения технического собеседования в одной из лидирующих компаний. Из этого провала он извлек три основных урока:

  • Перед собеседованием нужно освежить знания о структурах данных – и не только о списках, массивах и словарях. Не стоит игнорировать и те структуры, с которыми вы в последний раз сталкивались в университете и никогда не используете на практике – очереди, кучи и деревья. Автору попался как раз вопрос о деревьях, с которыми он с университетских времен не встречался и которые, скорее всего, на новой работе ему бы тоже не понадобились. Однако на собеседовании зачастую проверяются не только практические навыки, но и общая ИТ-эрудиция.

  • Для тренировки нужно использовать самый простой редактор кода и таймер. Хотя в реальной работе повсеместно используются IDE с автодополнением кода и прочей ИИ-функциональностью, крупные компании при проведении теста обычно настаивают на старомодном способе решения задач, без каких-либо подсказок со стороны IDE. Писать код надо быстро – поэтому во время подготовки к собеседованию обязательно нужно пользоваться таймером для самоконтроля.

  • Не надо решать задания по порядку. Необходимо прочитать все вопросы сразу и начинать с ответов на те, что попроще. Автор надолго застрял на первом вопросе, хотя мог быстро ответить на второй и успел бы выполнить третье задание. Два решенных задания, несомненно, лучше, чем незаконченный ответ на первый вопрос.

📖🤖 Больше полезных книг вы найдете на нашем телеграм-канале

«Книги для дата-сайентистов | Data Science»

🛠️ Инструменты

BullMQ – библиотека для Node.js, которая реализует быструю и надежную систему очередей, основанную на Redis и предназначенную для решения всех основных задач в современных микросервисных архитектурах (сглаживание пиков нагрузки, создание надежных каналов связи между сервисами, распределение ресурсоемких задач между несколькими обработчиками и тому подобное).

Основные возможности и преимущества BullMQ:

  • Точная обработка сообщений – библиотека гарантирует доставку как минимум один раз.

  • Горизонтальное масштабирование – можно добавить сколько угодно обработчиков для параллельной обработки заданий.

  • Высокая производительность – благодаря эффективным Lua-скриптам и конвейерной обработке.

  • Минимальное использование CPU.

  • Распределенное выполнение заданий на основе Redis.

  • Поддержка очередей LIFO и FIFO.

  • Приоритезация и отсроченное выполнение заданий.

  • Запланированные и повторяющиеся задачи по расписанию.

  • Настройка параллельности для каждого обработчика.

  • Многопоточные (изолированные) функции обработки.

  • Автоматическое восстановление после сбоев процесса.

  • Поддержка зависимостей между задачами (родительские и дочерние задачи).

📖🦫 Больше полезных книг вы найдете на нашем телеграм-канале

«Книги для Go-разработчиков»

SigNoz – опенсорсный инструмент для мониторинга и устранения неполадок в развернутых приложениях. Это отличная бесплатная альтернатива коммерческим решениям – DataDog и New Relic.

Основная функциональность:

  • Единый интерфейс для метрик, трассировок и логов.

  • Визуализация метрик производительности приложений (RPS, процентили задержек, частота ошибок).

  • Распределенная трассировка для выявления проблем в сервисах.

  • Управление логами с продвинутым построителем запросов.

  • Мониторинг инфраструктуры.

  • Отслеживание исключений в различных языках программирования.

  • Настраиваемые оповещения.

  • Поддержка OpenTelemetry для инструментирования приложений.

  • Возможность агрегации данных трассировки для получения бизнес-метрик.

Интерфейс SigNoz

Интерфейс SigNoz

📖➕➕ Больше полезных книг вы найдете на нашем телеграм-канале «Книги для C/C++-разработчиков»

Infisical – опенсорсная платформа для удобного и безопасного управления секретами и конфигурационными данными. Основные возможности:

  • Централизованное хранение секретов – позволяет безопасно хранить в одном месте все важные данные (API-ключи, пароли от баз данных и другие конфиденциальные настройки приложений).

  • Синхронизация между командой и инфраструктурой – гарантирует, что все члены команды и все части инфраструктуры будут получать доступ к актуальным секретам и ключам.

  • Предотвращение утечек – помогает предотвратить случайное раскрытие секретной информации, например, путем коммита в Git-репозиторий.

  • Управление конфигурациями – позволяет управлять общими настройками приложений для разных сред (разработка, тестирование, продакшн).

  • Безопасный доступ – предоставляет инструменты (SDK, CLI, API) для безопасного получения секретов в приложениях и инфраструктуре.

  • Контроль доступа – позволяет настраивать права доступа к секретам для разных пользователей и систем.

  • Аудит и версионирование – ведет лог всех действий с секретами и позволяет отслеживать их изменения во времени.

  • Интеграция с инфраструктурой – легко интегрируется с популярными платформами и инструментами (GitHub, AWS, Kubernetes и т. п.).

  • Управление внутренней PKI – позволяет создавать и управлять собственной инфраструктурой открытых ключей для выпуска цифровых сертификатов.

KubeAI – инструмент для развертывания и управления опенсорсными LLM-моделями в среде Kubernetes. Среди основных функций и особенностей:

  • Совместимость с OpenAI. Предоставляет API, совместимый с OpenAI, что позволяет легко заменить сервисы OpenAI в любых ИИ-приложениях на локальные.

  • Поддержка различных моделей. Может работать с различными моделями, включая языковые (LLMs), модели для преобразования речи в текст (например, Whisper) и другие.

  • Мультиплатформенность. Может работать на разных аппаратных платформах, включая системы только с CPU, системы с GPU, а в будущем планируется поддержка TPU.

  • Масштабирование. Обеспечивает автоматическое масштабирование в зависимости от нагрузки, включая возможность масштабирования до нуля (когда ресурсы не используются).

  • Простота развертывания. Не требует никаких дополнительных зависимостей типа Istio или Knative.

  • Встроенный пользовательский интерфейс. Предоставляет чат-интерфейс OpenWebUI для взаимодействия с моделями.

  • Управление серверами vLLM, Ollama и FasterWhisper.

  • Интеграция с системами обмена сообщениями. Поддерживает потоковую передачу и пакетную обработку через интеграции с Kafka и другими PubSub-системами обмена сообщениями.

Zed – опенсорсный многопользовательский редактор кода, предназначенный для совместной работы над проектом в реальном времени. Основные особенности и возможности:

  • Написан на Rust и отличается высокой скоростью и минимальными требованиями к ресурсам.

  • Предусматривает интеграцию с LLM для генерации, анализа и рефакторинга кода.

  • Имеет встроенный терминал.

  • Предоставляет несколько удобных функций для совместной работы – демонстрацию экрана, общие заметки и т. п.

  • Разработан с учетом конфиденциальности пользователей и не собирает личные данные.

📖☕ Больше полезных книг вы найдете на нашем телеграм-канале

«Книги для джавистов | Java»

Warp – современный высокопроизводительный терминал с ИИ-функциональностью. Основные особенности и возможности:

  • Производительность. Написан полностью на Rust и использует рендеринг на GPU через Metal API, что обеспечивает высокую скорость работы (60+ FPS даже на 4K- и 8K-мониторах).

  • Поддержка совместной работы в реальном времени.

  • Улучшенный ввод команд. Редактор ввода команд представляет собой полноценный текстовый редактор с поддержкой выделения текста, позиционирования курсора, привычных пользователям сочетаний клавиш и автодополнения.

  • Встроенный чат-бот. Понимает указания на естественном языке, дает рекомендации и отвечает на вопросы.

  • Блоки команд. Команды и их вывод визуально группируются в блоки, что улучшает организацию и читаемость информации в терминале.

  • Совместимость с популярными оболочками. Работает с Bash, ZSH и Fish, сохраняя существующие привязки клавиш.

  • Кроссплатформенность. Работает на macOS и Linux, вскоре будет поддерживать Windows и WASM.

  • Продвинутый UI. В отличие от традиционных терминалов, может отображать различные элементы интерфейса (всплывающие уведомления, меню и т. д.).

Автор рассылки: Наталья Кайда

📧 Подписаться на рассылку

Показать полностью 1 2
Backend Искусственный интеллект Инновации Микросервисы Программирование Разработка Технологии Cloudflare Отдел кадров IT Javascript Nodejs Regex Stack Overflow Windows Видео Длиннопост YouTube YouTube (ссылка)
0
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии