85658
Все самое полезное для программиста в одном канале. По рекламе: @proglib_adv Курс по ML: https://clc.to/eLH_zQ Другие курсы: https://clc.to/goHZHA Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5ba2901234b69883a4d46
👾 В России появится первая независимая Cloud-native ассоциация
Yandex Cloud, VK Cloud и «Флант» создадут Ассоциацию облачно-ориентированных технологий (АОТ). Цель — объединить сообщество для популяризации и развития нативных облачных технологий и подходов.
АОТ займётся выработкой общих стандартов, развитием open source и продвижением cloud-native культуры.
Стартом для АОТ станет Kuber Conf by АОТ (4 декабря, Москва) — площадка, где расскажут о планах и миссии ассоциации.
🐸 Библиотека программиста
Меньше ест и реже ездит на такси?
🐸 Библиотека программиста
По мнению Сергея Батулина из Metalab, российские инженеры в первую очередь решают задачи за счет креатива, за счет глубины понимания, как устроен вообще код на уровне слоев
Ты наверняка знаешь про оператор "|" в Linux — он перенаправляет вывод одной команды для использования в качестве входных данных для следующей команды:
$ cat data.txt | grep "No such file"
stdout, и stderr? На помощь приходит оператор "|&" — сокращение от "2>&1 |":$ cat data.txt |& grep "No such file"
$ cmd-1 2>&1 | cmd-2
grep сможет найти совпадение 💃
Один One Day Offer вам или целых три — всем? 😉
25 октября Сбер проведёт сразу три экспресс-отбора кандидатов в две команды: GigaData и Kandinsky. Чем вам предстоит заниматься 👇
✔️ Развивать GigaData — внутреннюю платформу Сбера, которая обрабатывает петабайты данных и миллиарды запросов в сутки. One Day Offer для Python‑разработчиков.
✔️ Работать над Kandinsky — обучать большие модели с нуля, собирать и подготавливать данные, исследовать самые эффективные методы дообучения моделей.
— One Day Offer для Machine Learning Engineers с опытом в Deep Learning и компьютерном зрении (CV).
— One Day Offer для Research и Deep Learning Engineers.
Выбирайте то, что больше подходит под ваши навыки, и регистрируйтесь на One Day Offer!
📉💻⚡️ IT-рынок обвалился: на одну вакансию теперь 2383 отклика
Если ты еще не почувствовал, как изменился IT-рынок, то скоро почувствуешь на своей шкуре. Вакансий стало меньше, требования — в топе, а конкуренция превратилась в кровавую баню. Рассказываем, как лихорадит рынок труда в IT.
👉 Читать статью
🐸 Библиотека программиста
🔥 Многие рассуждали в правильном направлении — так держать!
В этой задаче достаточно ввести два указателя. Первый будет увеличиваться при прохождении одного узла списка, второй – при прохождении двух узлов.
В момент, когда второй указатель дойдёт до конца списка (наткнётся на NULL), первый будет указывать на середину списка.
👨💻 Пример:
public class Central {
public static void main(String args[]) {
LinkedList linkedList = new LinkedList();
LinkedList.Node head = linkedList.head();
linkedList.add( new LinkedList.Node("1"));
linkedList.add( new LinkedList.Node("2"));
linkedList.add( new LinkedList.Node("3"));
linkedList.add( new LinkedList.Node("4"));
linkedList.add( new LinkedList.Node("5"));
linkedList.add( new LinkedList.Node("6"));
linkedList.add( new LinkedList.Node("7"));
linkedList.add( new LinkedList.Node("8"));
linkedList.add( new LinkedList.Node("9"));
linkedList.add( new LinkedList.Node("10"));
LinkedList.Node current = head;
int length = 0;
LinkedList.Node middle = head;
while(current.next() != null){
length++;
if(length%2 ==0){
middle = middle.next();
}
current = current.next();
}
if(length%2 == 1){
middle = middle.next();
}
System.out.println("length of LinkedList: " + length);
System.out.println("middle element of LinkedList : " + middle);
}
}
class LinkedList{
private Node head;
private Node tail;
public LinkedList(){
this.head = new Node("head");
tail = head;
}
public Node head(){
return head;
}
public void add(Node node){
tail.next = node;
tail = node;
}
public static class Node{
private Node next;
private String data;
public Node(String data){
this.data = data;
}
public String data() {
return data;
}
public void setData(String data) {
this.data = data;
}
public Node next() {
return next;
}
public void setNext(Node next) {
this.next = next;
}
public String toString(){
return this.data;
}
}
}
Как найти средний элемент в LinkedList за ОДИН ПРОХОД?
🚨 Это ночное включение. Предлагай свое решение в комменты, ответ опубликуем завтра!
Ты знаешь, что средний элемент в LinkedList несложно найти, определив длину списка, последовательно пройдя все его узлы, пока не дойдёшь до NULL в первом проходе. А затем, пройдя половину из них во втором проходе.
Но как ее решить за один проход?
Создавайте технологии, которые меняют мир
В команду Яндекса нужны бэкенд-разработчики с опытом от 3 лет на C++, Python, Java/Kotlin, Go — строить полезные сервисы для миллионов пользователей.
Как получить офер за неделю?
• До 12 ноября оставить заявку на участие и пройти предварительный этап.
• 15–16 ноября решить задачи на технических секциях.
• 17–21 ноября прийти на финальную встречу.
Присоединяйтесь к одной из команд Яндекса, чтобы усилить нашу инженерную культуру и строить новую технологическую реальность.
Читайте подробности и оставляйте заявку на сайте.
DevOps — это так, для души
🐸 Библиотека программиста
👾 Весь код в OpenAI теперь проверяет Codex
ИИ ревьюит код в компании, которая разрабатывает ИИ. Круг замкнулся!
Нейронка раскидала всё как есть на самом деле
🐸 Библиотека программиста
🧰 Ключевые советы по проектированию RESTful API
1️⃣ Domain Model Driven — проектируй API согласно логике предметной области
2️⃣ HTTP Methods — используйте GET для чтения, POST для создания, PUT для обновления, DELETE для удаления
3️⃣ Idempotence — повторный запрос не должен ломать систему: GET, PUT, DELETE безопасны при повторе, а POST — нет
4️⃣ Status Codes — всегда возвращай понятные коды ответов (200, 201, 400, 404, 500), чтобы клиент понимал, что произошло
5️⃣ Versioning — добавляй версию в URL, чтобы не ломать старые клиенты после обновления API
6️⃣ Semantic Paths — проектируй роуты как существительные (/users, /orders/{id}/items), без глаголов вроде /getUser
7️⃣ Batch Processing — позволяй работать сразу с несколькими объектами (/users/batch), чтобы не дергать API сто раз
8️⃣ Query Language — добавляй параметры для фильтрации, сортировки и пагинации (?page=1&sort=name), чтобы было удобно искать данные
🐸 Библиотека программиста
Айтишник деталь не выточит, сеть коммуникаций не построит
...без таких специалистов зачастую невозможно обойтись — например, без токаря и фрезеровщика не получится выточить необходимую деталь, а без сварщика две части одной конструкции единым целым не станут.
Нейросети уже лишают работы ИТ-специалистов, в особенности программистов, однако научить искусственный интеллект, к примеру, варить металл, будет, вероятнее всего, непросто.
📃🗑 «Пишу чистый код» и еще 50 фраз, из-за которых ваше резюме летит в корзину
Рекрутеры видят одно и то же в каждом втором резюме: «командный игрок», «работаю с современными технологиями», «обладаю аналитическим складом ума». Эти клише не просто скучны — они ставят под сомнение твою компетентность.
👉 Разбираем 50+ шаблонных фраз по всем IT-направлениям и показываем, как их заменить или вообще выкинуть
🐸 Библиотека программиста
🚫 «Тимлид норм вообще?» и еще 14 вопросов, после которых вам не перезвонят
Вы прошли технический скрининг, решили все алгоритмические задачки, показали крутое портфолио — а оффера нет. Возможно, дело в том, что вы спросили.
Один неудачный вопрос может перечеркнуть все ваши hard skills, особенно когда soft skills стали важнее кода. Разбираем фразы-убийцы карьеры.
👉 Читать статью
🐸 Библиотека программиста
🌌 Математику понять обязан ты
Векторы, вероятности, градиенты… путь этот — к силе ведёт.
Курс «Математика для Data Science» пройти тебе надлежит:
— без скуки теория дана, на коде примеры показаны,
— визуализация ясна, практика реальна,
— наставники рядом, комьюнити.
🗓️ 6 ноября — старт пути.
🎁 Сегодня последний день бонус-курс «Школьная математика» получить можешь.
👉 Узнать о курсе больше
Революция кода, наши дни
🐸 Библиотека программиста
🕶️ Пробуждение для тех, кто готов увидеть
Курс «Математика для Data Science» — это не обучение. Это инициация.
👀 Начни видеть то, что раньше казалось случайным:
— Линейная алгебра
Узнай, что матрицы — это не таблицы. Это архитектура данных, скелет любой модели.
— Математический анализ
Производные, градиенты, экстремумы — инструменты, чтобы управлять изменениями.
— Теория вероятностей и статистика
Пойми, что хаос — это просто порядок, который ты ещё не расшифровал.
— Математика в ML и аналитике
Регрессии, байесовские модели, ближайшие соседи, не просто алгоритмы, а законы цифровой природы.
🧩 Структура программы:
10 вебинаров → 3 практических проекта → тесты → чат с менторами
🔥 До 19 октября в подарок открыт дополнительный уровень: курс по базовой математике.
🔗 Войти в систему
Коллеги, запоминаем важное
🐸 Библиотека программиста
💪🏻 Проверь свои знания и выиграй приз!
Пройди образовательно-развлекательную викторину на нашем экспресс-курсе «Математика для Data Science»
👾 Что ждёт на викторине?
— проверка знаний и прокачка навыков;
— соревновательный дух и конкуренция;
— шанс выиграть TG-Premium 🎁
🗓️ Курс стартует 6 ноября
📚 Запишись и участвуй в викторине
🤯 Работать 38 часов в неделю — слишком мало для достижения успеха
Для реального карьерного роста необходимы минимум 60 часов в неделю
💥 Железная математика
«Гений. Миллиардер. Инноватор. Data Scientist»
— Тони Старк, если бы занимался аналитикой данных
🦑 Экспресс-курс «Математика для Data Science»
Добро пожаловать в игру.
⏺️ Ваша задача продержаться 10 раундов.
🔼 Каждый раунд: вебинар с экспертами, задачами и практикой.
⏹️ Пропуск — потеря шанса заложить фундамент своей карьеры в DS.
🎯 На испытаниях вас ждут:
— линейная алгебра;
— математический анализ;
— теория вероятности и статистика;
— градиенты и экстремумы функций;
— алгоритмы машинного обучения.
📜 Правило игры №7:
Оплатите участие до 19 октября и получите курс по базовой математике в подарок.
👉 Регистрируйся пока играет музыка!
ClickHouse и Cassandra: что скрывают highload-системы
16 октября в 18:00 на митапе 43Tech — три реальных кейса от инженеров, которые ежедневно работают с высоконагруженными хранилищами и миллиардами записей.
🟡Cassandra для маркировки товаров: как UDT помогают (и вредят), какие архитектурные решения работают и как можно оптимизирвать структуры данных
🟡ClickHouse без боли: эффективная запись данных, дедупликация и настройки, которые реально ускоряют вставку.
🟡Расскажем про цену «нулевой потери данных», как мы выбирали между производительностью и надёжностью при использовании Cassandra.
Митап пройдет в гибридном формате: вы можете присоединиться лично или онлайн.
Участие бесплатное, ссылку на трансляцию пришлем накануне.
Регистрация и подробности по ссылке: https://career.crpt.ru/events/database-meetup
Информационный канал /channel/database_43Tech
Чат для общения и нетворкинга: /channel/+N2GU6FaVzPhlNmYy
Реклама. ООО "НАЦИОНАЛЬНЫЙ КАТАЛОГ", ИНН 9731002289. Erid 2Vtzqwb1T2M
Кому надо?
🐸 Библиотека программиста
🐧 Когда ты запускаешь команду через SSH, она падает при закрытии сессии. nohup (no hangup) решает это — команда продолжает работать даже после выхода.
nohup tar -cf archive.tar file1 file2 > /var/log/tar.log 2>&1 &
nohup игнорирует SIGHUP — процесс живёт после разрыва сессии.nohup.out.&, чтобы запустить в фоне.kill.disown — отвязать уже запущенный процесс.setsid — запуск в новой сессии.systemd unit.
3. Постоянно грозиться, что уволилишься, и не увольняться
🐸 Библиотека программиста
Коллеги, как у нас обстановка по экспертам?
🐸 Библиотека программиста
🍁 Осенние скидки на курсы от proglib.academy
Как быстро войти в IT? Вот пошаговый план:
1️⃣ изучаем Python для быстрого старта;
2️⃣ осваиваем алгоритмы эффективного решения задач;
3️⃣ учим математику для DS и работы с данными;
4️⃣ разбираем архитектуру кода для создания стабильных систем;
5️⃣ зарабатываем 500 тыс. $ в секунду.
🎓 И у нас есть курсы на каждый этап со скидкой 40% весь октябрь!