[Перевод] Восхождение дата-инженера

image


Я присоединился к команде Facebook в 2011 году в качестве инженера бизнес-аналитика. К моменту, когда я покинул команду в 2013 году я уже был дата-инженером.


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

Дата-инжиниринг?


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


Но в отличие от ученых, работающих с данными и вдохновленными более зрелым прародителем сферы — программированием — дата-инженеры создают собственные инструменты, инфраструктуру, фреймворки и сервисы. На самом деле, мы намного ближе к программированию, чем к науке о данных.
Читать дальше →
[Перевод] Восхождение дата-инженера
Source: habrahabr

Пост №2973426

Автор: Avosuki

Развернуть { «@context»: «http://schema.org», «@type»: «BlogPosting», «mainEntityOfPage»:{ «@type»:»WebPage», «@id»:»/post/2973426″ }, «headline»: «Апатяпатя! (комиксы от наськоэ) :: баба яга :: Смешные комиксы (веб-комиксы с юмором и их переводы)», «image»: { «@type»: «ImageObject», «url»: «http://img0.joyreactor.cc/pics/post/full/%D0%90%D0%BF%D0%B0%D1%82%D1%8F%D0%BF%D0%B0%D1%82%D1%8F%21-%D0%9A%D0%BE%D0%BC%D0%B8%D0%BA%D1%81%D1%8B-%D0%B1%D0%B0%D0%B1%D0%B0-%D1%8F%D0%B3%D0%B0-3638918.jpeg», «height»: 384, «width»: 1024 }, «datePublished»: «2017-02-02T14:28:44+03:00», «dateModified»: «2017-02-02T14:28:44+03:00», «author»: { «@type»: «Person», «name»: «Avosuki» }, «publisher»: { «@type»: «Organization», «name»: «JoyReactor.cc», «logo»: { «@type»: «ImageObject», «url»: «http://joyreactor.cc/images/joyreactor_ie6.png», «width»: 207, «height»: 54 } }, «description»: «» }
Комментировать 
Пост №2973426
Source: Joyreactor

Пост №2973424

Автор: Ружена

Развернуть { «@context»: «http://schema.org», «@type»: «BlogPosting», «mainEntityOfPage»:{ «@type»:»WebPage», «@id»:»/post/2973424″ }, «headline»: «art (арт) :: наутилус :: 20000 лье под водой :: Жюль Верн :: Gaetano Carlucci :: красивые картинки», «image»: { «@type»: «ImageObject», «url»: «http://img0.joyreactor.cc/pics/post/full/%D0%BA%D1%80%D0%B0%D1%81%D0%B8%D0%B2%D1%8B%D0%B5-%D0%BA%D0%B0%D1%80%D1%82%D0%B8%D0%BD%D0%BA%D0%B8-art-%D0%BD%D0%B0%D1%83%D1%82%D0%B8%D0%BB%D1%83%D1%81-20000-%D0%BB%D1%8C%D0%B5-%D0%BF%D0%BE%D0%B4-%D0%B2%D0%BE%D0%B4%D0%BE%D0%B9-3638916.jpeg», «height»: 2715, «width»: 1920 }, «datePublished»: «2017-02-02T14:27:23+03:00», «dateModified»: «2017-02-02T14:27:23+03:00», «author»: { «@type»: «Person», «name»: «Ружена» }, «publisher»: { «@type»: «Organization», «name»: «JoyReactor.cc», «logo»: { «@type»: «ImageObject», «url»: «http://joyreactor.cc/images/joyreactor_ie6.png», «width»: 207, «height»: 54 } }, «description»: «» }
Комментировать 
Пост №2973424
Source: Joyreactor

Пост №2973419

Автор: Astryx

Отношение к аниме с возрастом Развернуть { «@context»: «http://schema.org», «@type»: «BlogPosting», «mainEntityOfPage»:{ «@type»:»WebPage», «@id»:»http://anime.reactor.cc/post/2973419″ }, «headline»: «Отношение к аниме с возрастом / Nichijou (мелочи жизни) :: dorkly :: Anime (Аниме) :: Смешные комиксы (веб-комиксы с юмором и их переводы)», «image»: { «@type»: «ImageObject», «url»: «http://img1.joyreactor.cc/pics/post/full/dorkly-%D0%9A%D0%BE%D0%BC%D0%B8%D0%BA%D1%81%D1%8B-Anime-Nichijou-3638911.jpeg», «height»: 4421, «width»: 685 }, «datePublished»: «2017-02-02T14:18:55+03:00», «dateModified»: «2017-02-02T14:18:55+03:00», «author»: { «@type»: «Person», «name»: «Astryx» }, «publisher»: { «@type»: «Organization», «name»: «JoyReactor.cc», «logo»: { «@type»: «ImageObject», «url»: «http://joyreactor.cc/images/joyreactor_ie6.png», «width»: 207, «height»: 54 } }, «description»: «» }
Комментировать 
Пост №2973419
Source: Joyreactor

Скрипт, который пишет другой скрипт и настраивает роутеры

image alt text

Производители сетевого оборудования потихоньку двигаются в сторону универсального API для настройки и сбора показателей: есть NETCONF, OpenConfig, существует ПО для импорта MIB, та же настройка с помощью SNMP существует давно. Но я не буду касаться этих высоких материй, а просто поделюсь способом автоматизировать настройку сетевого оборудования – на случай массового открытия филиалов, например,

Для иллюстрации использую D-Link DFL-800 в воображаемом центральном офисе и MikroTik RB951UI-2HnD на периферии. В частности, настроим между ними туннель IPsec, раз уж речь про сценарий с новым филиалом.

Читать дальше →
Скрипт, который пишет другой скрипт и настраивает роутеры
Source: habrahabr

Как тестировать контейнеры RoR с GitLab CI в контейнере

Чем хорош GitLab, так это тем, что будучи по габаритам слоном в посудной лавке, он умеет аккуратно устанавливаться и почти всегда работает с коробки. Но плохо умеет восстанавливаться и заботиться о себе, когда очень прямые руки вроде моих нарушают привычное ему окружение. Не буду углубляться в то, как мне удавалось убить его до состояния, когда даже удаление и установка с нуля не помогает, но во избежания очередной бесконечной эпопеи с дебагом и переустановкой сервера я вынес все это дело в Docker контейнер. Удобно — на рабочей машине нет миллиона зависимостей, примонтировал директории для репозиториев, логов и базы данных и все работает. Восстановление — пересоздать контейнер и скормить бэкап (кстати, не забудьте проверить свои бэкапы, как говорит опыт GitLab, это не лишнее).


С другой стороны, есть разрабатываемое Rails приложение, которое на реальной машине держит только код; Rails, gems, и все остальное покоится в Docker контейнере. Для своей работы оно использует Redis и Postgres, каждый находится в своем контейнере. Для каждого контейнера примонтирована директория, чтобы важные для приложения данные не оставались внутри.


Задача в том, чтобы Gitlab CI нормально отработал. Вроде все просто, но — он сам находится в контейнере.
И как же нам быть?
Как тестировать контейнеры RoR с GitLab CI в контейнере
Source: habrahabr

Озвучен февральский список бесплатных игр для подписчиков PlayStation Plus

Команда PlayStation огласила новую линейку игр, которые бесплатно достанутся подписчикам
сервиса PlayStation Plus в этом месяце. Пожалуй,
главным хитом февральской подборки можно смело назвать красочный […]
Озвучен февральский список бесплатных игр для подписчиков PlayStation Plus
Source: 4pda

Пост №2973384

Автор: KTyJIXy


Отпрыски




Развернуть



{
«@context»: «http://schema.org»,
«@type»: «BlogPosting»,
«mainEntityOfPage»:{
«@type»:»WebPage»,
«@id»:»/post/2973384″
},
«headline»: «Отпрыски / countryballs (Polandball, ) :: сам перевел :: Смешные комиксы (веб-комиксы с юмором и их переводы)»,
«image»: {
«@type»: «ImageObject»,
«url»: «http://img0.joyreactor.cc/pics/post/full/countryballs-%D0%9A%D0%BE%D0%BC%D0%B8%D0%BA%D1%81%D1%8B-%D1%81%D0%B0%D0%BC-%D0%BF%D0%B5%D1%80%D0%B5%D0%B2%D0%B5%D0%BB-3638860.png»,
«height»: 4800,
«width»: 2000 },
«datePublished»: «2017-02-02T13:48:23+03:00»,
«dateModified»: «2017-02-02T13:48:23+03:00»,
«author»: {
«@type»: «Person»,
«name»: «KTyJIXy»
},
«publisher»: {
«@type»: «Organization»,
«name»: «JoyReactor.cc»,
«logo»: {
«@type»: «ImageObject»,
«url»: «http://joyreactor.cc/images/joyreactor_ie6.png»,
«width»: 207,
«height»: 54
}
},
«description»: «»
}

Комментировать 
Пост №2973384
Source: Joyreactor

Python: коллекции, часть 4/4: Все о выражениях-генераторах, генераторах списков, множеств и словарей


Часть 1 Часть 2 Часть 3 Часть 4

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


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

imageБудут рассмотрены: выражения-генераторы, генераторы списка, словаря и множества, вложенные генераторы (5 вариантов), работа с enumerate(), range().

А также: классификация и терминология, синтаксис, аналоги в виде циклов и примеры применения.

Я постарался рассмотреть тонкости и нюансы, которые освещаются далеко не во всех книгах и курсах, и, в том числе, отсутствуют в уже опубликованных на Habrahabr статьях на эту тему.

Оглавление:


1. Определения и классификация.

2. Синтаксис.

3. Аналоги в виде цикла for и в виде функций.

4. Выражения-генераторы.

5. Генерация стандартных коллекций.

6. Периодичность и частичный перебор.

7. Вложенные циклы и генераторы.

8. Использование range().

9. Приложение 1. Дополнительные примеры.

10. Приложение 2. Ссылки по теме.
Изучаем детали, иллюстрации и примеры
Python: коллекции, часть 4/4: Все о выражениях-генераторах, генераторах списков, множеств и словарей
Source: habrahabr

Куда податься программисту за знаниями в этом году

image
Highload++ в Москве, ноябрь 2016

Мы сделали для вас подборку лучших (по нашему мнению) выступлений с IT-конференций, на которые собираемся поехать в первой половине 2017 года (как и обещали).

Всё это будет полезно web-программистам (PHP, Go, JS), QA и DevOps. Да, в списке довольно мало конференций, проводящихся на территории России и стран СНГ, но на сегодняшний день их, увы, в принципе не так много. Так что, если вдруг вы знаете о каком-нибудь стоящем мероприятии, дополняйте наш список в комментариях.

Читать дальше →
Куда податься программисту за знаниями в этом году
Source: habrahabr