Pull to refresh
-11
gholla @ghollaread⁠-⁠only

аналитик

Send message
Беспроводная сеть сегодня воспринимается как нечто само собой разумеющееся. Гостиницы, рестораны, кафе, спортивные клубы и фитнес-центры, розничная торговля, общественные зоны - везде посетители ожидают стабильной беспроводной связи. Развертывание сети - это непрофильные, но необходимые расходы для бизнеса. Можно ли получить от них что-то еще, помимо неизмеримого одобрения клиента? Разбираемся, что следует учесть при постройке общедоступной Wi-Fi-сети и какие преимущества она может дать.
Подробности – под катом

Открытый урок «Основные понятия баз данных»

Reading time1 min
Views7.7K
Всем привет! Представляем вашему вниманию очередной открытый урок «Основные понятия баз данных», который мы проводили в рамках курса «Backend разработчик на PHP». Вебинар вёл второй преподаватель курса — Олег Козинцев, который разбирал на занятии описание концептуальных схем предметной области при помощи ER-модели, историю SQL, его стандартах и совместимости и подробно разбирал реляционную модель.



Ждём комментарии, предложения тут или заходите на день открытых дверей.

Кто такие дата-инженеры, и как ими становятся?

Reading time9 min
Views163K
И снова здравствуйте! Заголовок статьи говорит сам о себе. В преддверии старта курса «Data Engineer» предлагаем разобраться в том, кто же такие дата-инженеры. В статье очень много полезных ссылок. Приятного прочтения.



Простое руководство о том, как поймать волну Data Engineering и не дать ей затянуть вас в пучину.

Складывается впечатление, что в наши дни каждый хочет стать дата-саентистом (Data Scientist). Но как насчет Data Engineering (инжиниринга данных)? По сути, это своего рода гибрид дата-аналитика и дата-саентиста; дата-инженер обычно отвечает за управление рабочими процессами, конвейерами обработки и ETL-процессами. Ввиду важности этих функций, в настоящее время это очередной популярный профессиональный жаргонизм, который активно набирает обороты.

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

Итак, начнем!
Читать дальше →

Использование Python и Excel для обработки и анализа данных. Часть 2: библиотеки для работы с данными

Reading time10 min
Views358K
Первая часть статьи была опубликована тут.

Как читать и редактировать Excel файлы при помощи openpyxl


ПЕРЕВОД
Оригинал статьи — www.datacamp.com/community/tutorials/python-excel-tutorial
Автор — Karlijn Willems

Эта библиотека пригодится, если вы хотите читать и редактировать файлы .xlsx, xlsm, xltx и xltm.

Установите openpyxl using pip. Общие рекомендации по установке этой библиотеки — сделать это в виртуальной среде Python без системных библиотек. Вы можете использовать виртуальную среду для создания изолированных сред Python: она создает папку, содержащую все необходимые файлы, для использования библиотек, которые потребуются для Python.

Перейдите в директорию, в которой находится ваш проект, и повторно активируйте виртуальную среду venv. Затем перейдите к установке openpyxl с помощью pip, чтобы убедиться, что вы можете читать и записывать с ним файлы:
Читать дальше →

Использование Python и Excel для обработки и анализа данных. Часть 1: импорт данных и настройка среды

Reading time7 min
Views206K
Если Вы только начинаете свой путь знакомства с возможностями Python, ваши познания еще имеют начальный уровень — этот материал для Вас. В статье мы опишем, как можно извлекать информацию из данных, представленных в Excel файлах, работать с ними используя базовый функционал библиотек. В первой части статьи мы расскажем про установку необходимых библиотек и настройку среды. Во второй части — предоставим обзор библиотек, которые могут быть использованы для загрузки и записи таблиц в файлы с помощью Python и расскажем как работать с такими библиотеками как pandas, openpyxl, xlrd, xlutils, pyexcel.
Читать дальше →

Блокировки в Postgres: 7 советов по работе с блокировками

Reading time6 min
Views24K
И снова здравствуйте! Уже в следующий вторник стартует новый поток по курсу «Реляционные СУБД», поэтому мы продолжаем публиковать полезный материал по теме. Поехали.



На прошлой неделе я писал о конкурентном доступе в Postgres, какие команды блокируют друг друга, и как вы можете диагностировать заблокированные команды. Конечно, после постановки диагноза вам может потребоваться и лечение. С Postgres можно выстрелить себе в ногу, но Postgres также предлагает вам способы не сбить наводку. Вот некоторые из важных советов о том, как стоит и как не стоит делать, которые мы сочли полезными при работе с пользователями по переходу с их единой базы данных Postgres на Citus или при создании новых приложений аналитики в реальном времени.
Читать дальше →

Статическое тестирование или спасти рядового Райана

Reading time10 min
Views10K
Релиз часто подкрадывается незаметно. И любая ошибка, внезапно обнаруженная перед ним, грозит нам сдвигом сроков, хотфиксами, работой до утра и потраченными нервами. Когда подобный аврал стал происходить систематически, мы поняли, что так больше жить нельзя. Было решено разработать систему всесторонней валидации, чтобы спасти рядового Райана разработчика Артёма, который перед релизом уходил домой в 9 вечера, или в 10, или в 11… ну вы поняли. Идея была в том, чтобы разработчик узнавал об ошибке, пока изменения еще не попали в репозиторий, а он сам не потерял контекста задачи.


Сегодня вносимые изменения бережно проверяются вначале локально, а затем серией интеграционных тестов на сборочной ферме. В этой статье мы поговорим о первом этапе проверки — статическом тестировании, которое следит за корректностью ресурсов и анализирует код. Это первая подсистема в цепочке и на её долю приходится основная масса найденных ошибок.
Читать дальше →

Асинхронное программирование (полный курс)

Reading time2 min
Views104K

Методы асинхронного программирования


Асинхронное программирование за последнее время стало не менее развитым направлением, чем классическое параллельное программирование, а в мире JavaScript, как в браузерах, так и в Node.js, понимание его приемов заняло одно из центральных мест в формировании мировоззрения разработчиков. Предлагаю вашему вниманию целостный и наиболее полный курс с объяснением всех широко распространенных методов асинхронного программирования, адаптеров между ними и вспомогательных проемов. Сейчас он состоит из 23 лекций, 3 докладов и 28 репозиториев с множеством примеров кода на github. Всего около 17 часов видео: ссылка на плейлист.

Читать дальше →

JavaScript-движки: как они работают? От стека вызовов до промисов — (почти) всё, что вам нужно знать

Reading time14 min
Views64K

Вы когда-нибудь задумывались, как браузеры читают и исполняют JavaScript-код? Это выглядит таинственно, но в этом посте вы можете получить представление, что же происходит под капотом.

Начнём наше путешествие в язык с экскурсии в удивительный мир JavaScript-движков.
Читать дальше →

Методы бизнес-анализа

Reading time7 min
Views121K
Вступление


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

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

О едком и не очень

Reading time16 min
Views100K
– Эти идиоты поместили фарфоровый контейнер со «студнем» в специальную камеру, предельно изолированную… То есть это они думали, что камера предельно изолирована, но когда они открыли контейнер манипуляторами, «студень» пошел через металл и пластик, как вода через промокашку, вырвался наружу, и все, с чем он соприкасался, превращалось опять же в «студень». Погибло тридцать пять человек, больше ста изувечено, а все здание лаборатории приведено в полную негодность. Вы там бывали когда-нибудь? Великолепное сооружение! А теперь «студень» стек в подвалы и нижние этажи… Вот вам и прелюдия к контакту.

— А. Стругацкий, Б. Стругацкий «Пикник на обочине»

Привет, %username%!

В том, что я всё ещё что-то пишу — вините вот этого человека. Он навеял идею.

Просто, немного поразмыслив, я решил, что небольшой экскурс по едким веществам получится относительно быстро. Может кому-то будет и интересно. А кому-то — и полезно.

Поехали.
Читать дальше →

Я у мамы не инженер

Reading time14 min
Views65K
intro

Я уже сбился со счёта часов, которые я потратил на то, чтобы сделать “небольшую коробочку” и вдруг я поймал себя на мысли, что я очень зауважал инженеров — людей, который умеют и могут проектировать и создавать новые вещи. В голове сразу нахлынули воспоминания об устройствах, который я разбирал в детстве (да и не только). Эти забавные ситуации, когда при откручивании последнего болтика, как чёрт из табакерки, вылетало несколько мелких пружинок и деталек, которые было совершенно невозможно упаковать обратно.

Однажды я решил сделать небольшое устройство (“Security Access Tuner” из игры Alien: Isolation) — контроллер, экран, пара элементов управления, да упаковать это всё в небольшой корпус, который планировалось напечатать на 3d принтере. Тогда я ещё и подумать не мог, сколько же времени потребуется, чтобы все эти мелочи собрались в одно целое…
Читать дальше

О жёлтом фосфоре и панической природе человека

Reading time9 min
Views81K

Привет, %username%.

Как и обещал — вот тебе статья-рассказ о жёлтом фосфоре и о том, как он славно горел подо Львовом на Украине относительно недавно.

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

Давай разберёмся!
Читать дальше →

Обзор процесса разработки программного обеспечения

Reading time13 min
Views193K

Введение


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

Я работаю в IT последние 15 лет, хотя программированием начал заниматься значительно раньше. Основное направление моей деятельности как системного архитектора была организация разработки программ, разработка концепций и верхнеуровневой архитектуры и контроль выполнения концепции на протяжении проекта. Кроме управления разработкой ПО и создания архитектуры, я время от времени занимаюсь решением сложных технических проблем и написанием некоторых критически важных участков кода, где необходимо не только знание самого языка и среды разработки, но и их внутренней организации, иногда преподносящей неприятные сюрпризы.

Проекты, над которыми я работаю, чаще всего связаны с разработкой заказного или инвестиционного программного обеспечения. Также мне приходилось работать с встроенным ПО и программами, ориентированными на выпуск «хитов» (что, с лёгкой руки Джоэля Спольски, я называю далее игровым ПО, хотя на самом деле некоторые игровые проекты ближе к инвестиционным).

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

В отличие от заказного ПО, работа над инвестиционным программным обеспечением ведётся самим исполнителем на деньги внутреннего или внешнего инвестора. Как правило, права на код системы остаётся у исполнителя, что стимулирует непрерывную работу по улучшению своего продукта и последовательный выпуск версий с более развитой функциональностью.

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

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

Нашими заказчиками являются органы власти, крупные государственные и коммерческие организации и, конечно, мы сами. Поэтому в смысле заказного ПО в нашем процессе часто присутствует некоторая разница между процессами разработки продуктов для внутреннего и для внешнего заказчиков. Некоторые нюансы я укажу в этой статье. Уровень формализации отношений с заказчиком у нас варьируется от проекта к проекту очень широко. В целом, чем больше бюджет проекта, тем выше формальность. Государственный заказчик или крупные коммерческие предприятия (особенно с государственным участием) обычно имеют законодательные ограничения на формирование, размещение заказа и приёмку результатов работ. Ещё одним ограничением крупных организаций является тот факт, что их персонал, являющийся источником требований и основным пользователем наших систем, имеет очень ограниченную доступность для исполнителей, хотя бы вследствие своей занятости. Однако для небольших организаций уровень формализации падает и иногда уходит в противоположную крайность, где возникает недостаточный уровень ответственности заказчика в рамках проекта.

Другая сторона наших заказных проектов – высокие требования к функциональности. Это и высокая нагрузка на все системы, и большая географическая распределённость, и высокие требования к точности вычислений при очень ограниченных временных рамках. Часто в наших проектах появляются элементы исследовательской работы и творческого поиска, направленного на решение нетривиальных проектных задач. Иногда нам приходится комбинировать в рамках одного процесса разработки разные методологии, например, вставляя в общий процесс, близкий к RUP, один или несколько этапов почти чистого scrum, порождая что-то вроде проекта в проекте. Это позволяет нам сохранять невысокий уровень вовлеченности пользователей, связанный с природой проекта, с гибкостью разработки в условиях высокой неопределённости требований. В этом плане для меня важен именно подготовительный этап, во время которого можно выбрать необходимую методологию и выстроить оптимальный процесс разработки. Один из примеров применения гибкой методологии я описал в статье «Применение agile при разработке проекта для государственного заказчика».

В качестве примера работы над инвестиционным проектом я могу привести разработку комплексной системы безопасности, которую мы создавали как «коробочный» продукт. Под моим руководством было выпущено последовательно четыре версии этой системы, пользователями которой стали самые разные коммерческие и государственные организации, включая мэрию Москвы, АФК «Система», банки, бизнес-центры и, конечно, наш собственный офис. Первая версия была не очень успешной, но у нас была стратегия развития, которая позволила нам успешно захватить рынок и пережить сложные времена кризиса. Опыт работы над этим и ещё несколькими инвестиционными проектами тоже был учтён при формировании используемого мной процесса разработки.

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

Важно понимать, что переход процесса от одного этапа к другому не имеет чёткой границы. Как правило, работы следующего этапа начинаются по мере выполнения 80-90% работ по предыдущему этапу. Особенно это касается разработки требований, когда в ряде случаев снятие неопределённости происходит лишь к концу проекта. Безусловно, наличие такой неопределённости в проекте является существенным риском и должно находиться под постоянным контролем.
Читать дальше →

Как в IT вырасти из руководителя группы в руководителя проектов?

Reading time7 min
Views12K
Привет, друзья!

По результатам статьи «Как мне стать project manager’ом в IT, если до этого я работал(-а) на похожей позиции, но не в IT?» возникли вопросы, а что же делать Team Leads (TL), которые уже работают в IT? Как этим Team Leads стать руководителями проектов? В данной статье намеренно не будет упоминаться позиция Tech Lead, которая в моем понимании ничем не отличается от Team Lead, с точки зрения роста из нее в PM. Таким образом сокращение TL можно читать как Team Lead, так и как Tech Lead.

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

Если после прочтения данного вступления вы все еще считаете, что вам почему-то все равно необходимо вырасти из TL в Project Manager’а, и вы готовы вкладывать время и силы в свое развитие — welcome читать дальше. Если вы не готовы вкладывать в себя и учиться, практиковаться, учиться и снова практиковаться — дальше читать смысла нет. Не тратьте свое время.

Чтобы избежать некоторой путаницы, стоит упомянуть, что разбираю в этой статье только вариант «TL->PM». Опцию «Инженер->TL» не рассматриваю для сокращения объема статьи.

Читать дальше →

Как стать руководителем проектов в IT

Reading time7 min
Views89K
Привет, друзья!

Так получается, что со мной периодически связываются мои знакомые и знакомые моих знакомых, которым меня порекомендовали, с примерно одним и тем же вопросом: «Как мне стать project manager'ом в IT, если до этого я работал(-а) на похожей позиции, но не в IT?».

Так как подобных запросов накопилось несколько штук за довольно короткое время, я решил написать об этом отдельную статью. Ну вы понимаете — я же ленивый, и теперь смогу сразу давать ссылку на этот текст, вместо очередного повторения уже несколько раз сформулированных ответов. Статья не претендует на универсальность — это только мой взгляд на ситуацию. В то же время скажу, что когда проводишь собеседования, нанимаешь и обучаешь project manager'ов — накапливается довольно много общих критериев, отвечающих на вопрос «А что же на самом деле должен знать и уметь IT project manager?», чтобы успешно работать в IT.

Кстати, знание английского языка в статье даже не обсуждается. Оно просто обязательно.

Поехали?
Читать дальше →

Карьера менеджера IT-проекта. Как устроиться на работу в ведущую технологическую компанию

Reading time3 min
Views33K
image

Издательство Питер решило представить недавно выведшую книгу от автора бестселлера «Карьера программиста», которая поможет вам наилучшим образом подготовиться к собеседованию при приеме на работу менеджером проекта в крупную IT-организацию или перспективный стартап. Основную часть книги составляют ответы на технические вопросы и задания, которые обычно получают соискатели на собеседовании в таких компаниях, как Google, Microsoft, Apple, Amazon и других. Рассмотрены типичные ошибки, которые допускают кандидаты, а также эффективные методики поlготовки к собеседованию.
Читать дальше →

Искусство управления IT-проектами, 2-е изд

Reading time4 min
Views26K
Издательство Питер решило вспомнить о хорошей, но забытой книге Скотта Беркуна «Искусство управления IT-проектами, 2-е изд.»

image

Вот, что говорит сам автор о своей книге:


«С годами созидательного труда и сопоставления своего личного опыта с опытом других менеджеров, программистов и проектировщиков, я неплохо освоил искусство управления проектами, которое включает в себя подходы к руководству командами, работу над идеями, организацию работы над проектами, выдерживание рабочего графика, улаживание конфликтных ситуаций и достижение конкретных результатов даже перед лицом серьезных испытаний и неблагоприятно складывающейся обстановки. Несмотря на широкое толкование названия этой книги, большую часть своего рабочего опыта я приобрел в технической области, работая, в частности, в корпорации Microsoft. Я проработал в этой корпорации с 1994 по 2003 год, возглавляя команды специалистов, работающих над такими проектами, как Internet Explorer, Microsoft Windows и MSN. Несколько лет я проработал в группе совершенствования разработок корпорации Microsoft, отвечая за обучение и консультации команд в рамках всей компании, и довольно часто получал приглашения выступить с докладами на публичных конференциях, в корпорациях и университетах. Большинство советов, уроков и историй, приводимых в этой книге, являются плодами этого опыта работы. Хотя у меня за плечами богатое прошлое разработчика программного обеспечения и веб-приложений, при работе над книгой я расширил область исследований, обратившись к источникам и технологиям, выходящим за рамки разработки и управления. В книге содержится много полезных сведений для людей, принадлежащих миру бизнеса. Я убежден, что трудности в организации, руководстве, разработке и производстве имеют много общего, независимо от области деятельности. В процессе изготовления тостеров, строительства небоскребов, производства автомобилей, создания веб-сайтов и программных продуктов во многом приходится сталкиваться с одними и теми же трудностями, и эта книга написана в первую очередь о том, как эти трудности преодолеть.В отличие от некоторых других книг о руководстве проектов».

Читать дальше →

Гибкое управление проектами и продуктами

Reading time1 min
Views17K


Думаю многие на Хабрахабр знакомы с блогом Бориса Вольфсона. Нам посчастливилось посотрудничать с Борисом и сделать замечательную книгу — Гибкое управление проектами и продуктами.

Книга доступна в печатном и электронном виде — PDF и EPUB. При покупке «живой» книги вы также получаете электронные версии (бонус действует только после подтверждения оплаты). А также в течение недели на нашем сайте действует скидка 20% на раздел книг — Карьера в IT-индустрии. Код купона — 2c4590fd98eca723.
Читать дальше →

Information

Rating
Does not participate
Location
Павлодар, Павлодарская обл., Казахстан
Date of birth
Registered
Activity