Освоить новую профессию и начать работать в сфере ИТ сейчас хотят многие. Моя история доказывает, что переквалифицироваться реально, хотя и очень сложно. Расскажу о своем входе в сферу Data Science с несколько нестандартной исходной точки. Шесть лет учёбы филологии, преподавания языков и разработки игр привели к тому, что к тридцати годам я поняла, что хочу всё поменять, и отныне моё призвание – Data Science. В этой статье в блоге ЛАНИТ - подробно о том, какой путь мне пришлось пройти и чему я училась на каждом из этапов. Все пароли-явки курсов и полезных учебных материалов вы найдете под катом.
Пользователь
Как мы выстроили экосистему разработки на 1С в Росатоме и победили техдолг
Понимаю, звучит сильно, но давайте расскажу, как мы это сделали.
Платформа 1С — одна из ключевых платформ для бизнес-автоматизации в Росатоме. Выбрали 1C потому, что нужны отечественные системы, способные выдерживать большую нагрузку и масштабироваться.
Сейчас на поддержке и в разработке у нас 28 централизованных систем, каждая из которых содержит под капотом десятки, а иногда и сотни информационных баз. Всего для их обслуживания задействовано более 600 серверов: это серверы лицензирования, серверы среднего звена и серверы СУБД. Каждая система развивается и насчитывает не менее 8–12 % изменений в год, а иногда и больше. Всем этим занимается 750+ сотрудников.
Мы собрали единый центр управления всеми этими информационными системами, где видны дашборды производительности по базам и по запросам, где регистрируются ошибки, куда стекается информация об анализе кода и архитектуры. Мы называем это центром управления техдолгом, с помощью которого каждый день этот самый техдолг контролируется и побеждается.
Для нас техдолг — это совокупность ошибок по журналу регистрации, медленных запросов, замечаний статического анализатора кода и замечаний архитектурных проверок.
Парадокс Ферми – вовсе не парадокс, а вопрос; в чём он состоит, и как его решать (часть 1)
Принято считать, что Энрико Ферми первым описал парадокс, носящий теперь его имя. Парадокс заключается в следующем – можно выдвинуть множество аргументов в пользу того, что в нашей Галактике должна существовать достаточно продвинутая внеземная цивилизация (и не одна), способная расселиться по множеству планет у множества звёзд, и каким-то образом обнаружить своё присутствие для других обитателей. Однако все эти аргументы разбиваются о простую практическую проверку – несмотря на все наши технологические достижения, мы до сих пор не получили ни одного неопровержимого свидетельства подобной деятельности.
Однако на самом деле всё немного сложнее.
Энрико Ферми – американский физик итальянского происхождения, один из создателей первого в мире ядерного реактора. Он внёс огромный большой вклад в развитие ядерной физики, физики элементарных частиц, квантовой и статистической механики, и считается одним из «отцов атомной бомбы».
Различные вычисления, многопоточность, асинхронность и мультипроцессность в Python
Всем привет! Меня зовут Дмитрий Первушин, я лидер Python-компетенций трайба ИСУ в Сбере.
Эта статья рассчитана на людей, которые уже знакомы с Python, хотя бы на уровне junior+. Я объясню, какие есть отличия и особенности в многопоточности, асинхронности и мультипроцессорности в Python, где и когда они используются. Как говорится в пословице: «Всё познаётся в сравнении», именно в таком стиле я подготовил примеры. Кроме этого, буду специально делать ошибки и рассматривать неправильные подходы, чтобы можно было сразу разобраться, убедиться и запомнить, почему так делать нельзя и какой другой подход в этом случае нужно использовать.
Как я создал архиватор из задачки с техсобеса: сжатие файлов с помощью RLE
Привет, меня зовут Рома. Я работаю в KTS на позиции Python backend-разработчика.
Однажды мне взбрело в голову написать собственную имплементацию алгоритма сжатия RLE. В этой статье рассказываю подробнее про RLE: что это за зверь такой, где используется, чем плох, чем хорош, и какие неожиданные сложности могут возникнуть при попытке имплементации.
Часть 1. Управление знаниями в Obsidian. Обработка информации. Рабочий процесс. Источники информации. Работа с заметками
Этот текст открывает цикл статей по рассмотрению проблемы управления знаниями в Obsidian. Эта часть почти не будет содержать практических советов о работе с заметками конкретно в Obsidian. Однако в ней будут раскрыты несколько более важные проблемы обработки различных источников информации. Несмотря на последовательное перетекание статьи из одной главы в другую, вы можете попробовать каждый пункт рассматривать как идею, как хак или как возможность внедрить в свою жизнь и рабочий процесс что-то новое.
ИИ LLama3 без ограничений: локальный запуск, GROQ и интеграция в Телеграм бота с помощью Python
Друзья, приветствую вас в очередной статье. Сегодня я расскажу, как использовать LLAMA3 ИИ в своих проектах. После небольшой подготовки мы приступим к созданию полноценного Telegram бота.
Сегодня мы:
• Научимся устанавливать LLama3 на локальную машину.
• Научимся бесплатно запускать LLama3 через платформу GROQ.
• Разберемся с преимуществами и недостатками первого и второго способа развертывания LLama3.
• Напишем полноценного Telegram бота с использованием aiogram3, который сможет работать как с локальной версией LLAMA3, так и через сервис GROQ (технически он сможет работать с любой подключенной нейросетью).
• Запустим Telegram бота на VPS сервере (опционально).
typewriter: бесплатная программа, которая введёт любой текст за вас
Всем привет! Делюсь своей довольно простой программкой, полезной в таких ситуациях, когда нужно перенести некоторые количества текста в такие места, куда он простым буфером обмена не переносится, например - в remote console виртуального или физического сервера, как Proxmox или iBMC / iLO.
Исходный код и ссылки на скачивание - под катом.
Полное руководство по модулю asyncio в Python. Часть 1
Python-модуль asyncio
позволяет заниматься асинхронным программированием с применением конкурентного выполнения кода, основанного на корутинах. Хотя этот модуль имеется в Python уже много лет, он остаётся одним из самых интересных механизмов языка. Но asyncio
, при этом, можно назвать ещё и одним из модулей, которые вызывают больше всего недоразумений. Дело в том, что начинающим разработчикам бывает трудно приступить к использованию asyncio
.
Перед вами — подробное и всестороннее руководство по использованию модуля asyncio
в Python. В частности, здесь будут рассмотрены следующие основные вопросы:
Делаем быстрее POSTGRESQL COUNT (*)
Часто жалуются, что count (*) в PostgreSQL очень медленный.
В этой статье я хочу изучить варианты, чтобы вы получили результат как можно быстрее.
Почему count (*) такой медленный?
Большинство людей без проблем понимают, что следующий запрос будет выполняться медленно:
SELECT count(*)
FROM /* сложный запрос */;
В конце концов, это сложный запрос, и PostgreSQL должен вычислить результат, прежде чем узнает, сколько строк он будет содержать.
Но многие люди потрясены, когда узнают, что следующий запрос медленный:
SELECT count(*) FROM large_table;
Тем не менее, если вы подумаете еще раз, все вышесказанное остается в силе: PostgreSQL должен вычислить результирующий набор, прежде чем сможет его посчитать. Поскольку в таблице не хранится «магический счетчик строк» (как в MyISAM MySQL), единственный способ подсчитать строки — это просмотреть их.
Поэтому count (*) обычно выполняет последовательное сканирование таблицы, что может быть довольно дорого.
Курс молодого бойца PostgreSQL
Хочу поделиться полезными приемами работы с PostgreSQL (другие СУБД имеют схожий функционал, но могут иметь иной синтаксис).
Постараюсь охватить множество тем и приемов, которые помогут при работе с данными, стараясь не углубляться в подробное описание того или иного функционала. Я любил подобные статьи, когда обучался самостоятельно. Пришло время
Данный материал будет полезен тем, кто полностью освоил базовые навыки SQL и желает учиться дальше. Советую выполнять и экспериментировать с примерами в pgAdmin'e, я сделал все SQL-запросы выполнимыми без разворачивания каких-либо дампов.
Поехали!
Ускорение Python в 2 раза с помощью multiprocessing, async и MapReduce
Python действительно может считаться относительно медленным языком программирования по сравнению с некоторыми другими языками, такими как C++ или Java. Однако, существуют различные библиотеки и инструменты, которые позволяют ускорить выполнение счетных задач в Python. Рассмотрим как можно ускорить анализ данных в 2 раза!
Книжная полка разработчика в эпоху интернета и искусственного интеллекта
В мире, где информация постоянно обновляется, а найти что-то можно с молниеносной скоростью, встаёт вопрос: а нужны ли вообще книги для программистов? Ведь в интернете есть множество бесплатных обучающих материалов, туториалов, видеоинструкций и чатов на базе генеративного искусственного интеллекта, которые, казалось бы, могут полностью заменить традиционные источники знаний — книги.
Однако, на мой взгляд, книги всё ещё остаются важным и незаменимым инструментом для изучения программирования, особенно для новичков. В этой статье я, Бартенев Евгений, автор и техлид курсов «Python-разработчик» в Яндекс Практикуме, расскажу, почему я так считаю. А также поделюсь своей подборкой книг как для начинающих разработчиков, так и для тех, кто уже пишет код не первый день.
Работа с Outline через Python
Всем привет! Вчера я опубликовал статью о том, как настроить свой собственный VPN с помощью Outline и VPS. В конце статьи было голосование за тему программного взаимодействия с VPN через Python. Многие из вас выразили интерес, и вот продолжение специально для вас.
Для начала необходимо настроить VPN и получить ответ от вашего VPS сервера в следующем формате (данные вымышлены):
Сложная красота в простой формуле
Красота генеративного искусства состоит не только в неожиданных и сложных образах, порождаемых простыми алгоритмами, но и в том, что их можно изучить, понять и объяснить. Как известно, объяснение способно убить шутку, но настоящую красоту внутренняя логика делает только богаче.
Сегодня я предлагаю вспомнить один старый и простой алгоритм, рисующий красивые картинки, который когда-то вовлёк меня в программирование и увлёк математикой. А заодно мы немного разберёмся в том почему картинки получаются именно такими.
Создание telegram-ботов с интерактивным меню
Однажды меня попросили провести ревью и рефакторинг одного telegram-бота. Увидев файл размером 2000 строк, рассчитанный только на обработку разных меню я понял, что это требует унификации и общих подходов. Так родилась библиотека aiogram-dialog
В этой статье я бы хотел обратить внимание на некоторые проблемы, которые мы встречаем при создании таких меню, предложить варианты их решения. А во второй половине статьи показать как это решается с помощью aiogram-dialog
.
Мы не будем рассматривать архитектуру всего приложения, об этом вы можете прочитать у Фаулера или Мартина. Мы поговорим только про определенную часть UI ботов. Так же это не будет введением в разработку telegram-ботов с нуля. Я предполагаю, что читатель знаком с питоном, ООП и слышал о такой вещи как DRY.
Примеры выбраны так, чтобы проще было показать определенные проблемы, но это не единственные сценарии приводящие к ним.
Мои проекты за 7 лет увлечения DIY
Привет, Хабр! Решил представить здесь самые интересные проекты/самоделки/концепции, которые делал сам на протяжении последних семи лет. Если КДПВ сделала своё дело, добро пожаловать под кат! Осторожно, много фото.
Почему типичные дизайн-подходы оказались неприменимы к интерфейсу для производств
После того как я впервые съездила на завод, стало понятно, почему в дизайнеров кидаются тапками.
Мы работали на ярких прикольных аймаках, проектируя интерфейсы MES-систем в соответствии с трендами. А потом своими глазами увидели, в какой ад для сотрудников производства это превратилось.
В разработке интерфейсов для металлургии оказалось намного больше нюансов и специфики, чем мы предполагали.
Изучаем Python за 6 месяцев. Подробный план обучения
Простой и красивый синтаксис, множество библиотек под самые разные задачи и большое комьюнити делают Python одним из самых популярных языков программирования на сегодняшний день, который активно используется в data science и машинном обучении, веб-разработке и других областях программирования.
Когда я начал изучать питон, у меня возникло несколько вопросов.
Личный сервер shadowsocks за 10 минут без затрат (часть 3)
Это - отдельное руководство, описывающее ещё один способ получить личный
прокси-сервер shadowsocks бесплатно и служащее продолжением к моей предыдущей статье. В этот раз мы воспользуемся сервисом Replit.
В этот раз всё будет намного проще: регистрация, импорт, запуск. Три шага.
Информация
- В рейтинге
- Не участвует
- Зарегистрирован
- Активность