Поговорим сегодня про выбор, перед которым встают разработчики всех распределённых систем: обеспечивать ли консистентность данных или доступность системы при различных внешних условиях — поломках, плановых отключениях узлов, — а также во время штатной эксплуатации. Теория нам даёт простые, но не всегда применимые на практике ответы: можно выбрать либо консистентность, либо доступность (теорема CAP), а когда проблем с сетью нет — то либо консистентность, либо низкие задержки (PACELC). За скобками остаётся вопрос о том, как делать этот выбор. Система как будто всегда должна быть CP или AP, а что происходит, если вдруг работающая CP-система должна начать вести себя как AP, или, наоборот, перейти обратно из AP в CP?
User
Обход средств защиты в iOS-приложениях
В прошлой статье мы рассмотрели базовые уязвимости и способы их обнаружения. Но что делать, если в приложении используются дополнительные средства защиты (например, Jailbreak Detection или SSL-pinning), которые не позволяют нам изучить его? В этой статье расскажем, как и с помощью каких инструментов можно обходить данные средства защиты.
Как работают реляционные базы данных (Часть 1)
Привет, Хабр! Представляю вашему вниманию перевод статьи
"How does a relational database work".
Когда дело доходит до реляционных баз данных я не могу не думать, что чего-то не хватает. Они используются везде. Существует множество различных баз данных: от небольшого и полезного SQLite до мощной Teradata. Но есть только несколько статей, которые объясняют, как работает база данных. Вы можете искать сами по запросу "howdoesarelationaldatabasework" («как работают реляционные базы данных») чтобы увидеть, как мало результатов. Более того, эти статьи — короткие. Если же вы ищете последние модные технологии (BigData, NoSQL или JavaScript), вы найдете больше углубленных статей, объясняющих, как они работают.
Являются ли реляционные базы данных слишком старыми и слишком скучными, чтобы их можно было объяснить вне университетских курсов, исследовательских работ и книг?
Психологическая муть про Новый год
Металлическая(?) белая(?!) крыса(?) желает счастья всем хабраюзерам в Новом Году. Перешлите картинку десяти друзяшкам, не прерывайте цепочку! Источник: [1]
Поисковая выдача «Гугла» пестрит полезными советами «экспертов», готовых научить нас, неразумную аудиторию правильным моделям поведения в этот радостный день:
Как встречать Новый 2020, чтобы не обидеть покровительницу Белую Крысу? Конечно же, придать торжественный вид интерьеру, приготовить подарки для близких, устроить большой праздник. В меню должны быть самые вкусные, сытные блюда. Чего уж точно не терпит хозяйка Нового года – это голод. Значит, на столе должны быть разнообразные продукты, напитки, фрукты с овощами. Нужно от души накормить животное мясом разных сортов, рыбой, выпечкой, курицей, орехами, шоколадом, коктейлями и компотами. Она попробует все и, наверняка, останется довольна такому щедрому угощенью.[1]
Как бороться с привычками запрограммированным людям
В человеке есть запрограммированные паттерны поведения, которые всегда запускаются одним и тем же механическим, линейным способом. Так называемые «страстные желания» (англ. – cravings) – вещи и занятия, которые очень хочется начать делать в определённые моменты времени.
Я бы хотел, чтобы такого со мной не случалось. Поэтому я потратил кучу времени, чтобы внимательно изучить, как запускаются эти программные паттерны и разработал подходы, которые помогут их переписать.
Разработка в монорепозитории. Доклад Яндекса
Как сказала руководитель службы разработки API Яндекс.Карт Марина Перескокова — посадил дед монорепу, выросла монорепа большая-пребольшая.
Как найти работу с релокацией в Европу: практический гайд для IT-специалистов
В этой статье я решил собрать наиболее популярные сайты/ресурсы, на которых реально найти вакансии с переездом в страны Европы.
Telegram-каналы
Джоб-борды для IT-специалистов и нишевые сайты
AngelList
На сегодняшний день AngelList является одним из наиболее популярных сайтов по поиску работы в стартапах по всему миру. Процесс поиска вакансий с релокацией на этом сайте очень прост – во вкладке «Compensation» выбираем опцию «Company Will Sponsor Visa». Чтобы сузить полученный список вакансий до максимально релевантных, можно использовать фильтры «Role» и «Location».
Glassdoor
Многие из вас, наверное, хотя бы раз сталкивались с сайтом Glassdoor. Прежде всего, Glassdoor известен как ресурс, на котором можно почитать отзывы инсайдеров о том или ином работодателе, а также о процессе собеседования и заработных платах в интересующей компании. Помимо этого, на сайте есть огромное количество вакансий в разных странах мира, и не только для IT-специалистов.
Чтобы найти вакансии, которые предлагают релокейт, пишем в поисковой строке relocation developer или relocation и название интересной вам позиции. Чтобы сузить результаты поиска, уточняем город/страну, куда хотели бы переехать.
Поскольку на сайте Glassdoor нет специального фильтра для поиска работы с переездом, при поиске вакансий описанным выше методом могут попадаться нерелевантные. В целом же, ключевое слово relocation в поисковой строке делает свое дело.
Галерея лучших блокнотов по ML и Data Science
Меня зовут Рушан, и я автор Telegram‑канала Нейрон. Не забудьте поделиться с коллегами или просто с теми, кому интересны такие статьи. Представляю пост который идёт строго (!) в закладки и передаётся коллегам. Он с подборкой примечательных файлов формата Jupyter Notebook по Machine Learning, Data Science и другим сферам, связанным с анализом данных. Эти блокноты Jupyter, будут наиболее полезны специалистам по анализу данных — как обучающимся новичкам, так и практикующим профи.
Итак, приступим.
Вводные курсы в Jupyter Notebook
Алексей Савватеев и теория игр: «Какова вероятность, что в ближайшие пять лет будет скинута атомная бомба?»
Расшифровка видеозаписи лекции.
Теория игр — дисциплина, которая прочно зависла между математикой и социальными науками. Одним канатом к математике, другим канатом — к социальным наукам, прочно прикреплена.
В ней есть теоремы, достаточно серьёзные (теорема существования равновесия), про неё снят фильм «Игры разума», теория игр проявляется в множестве художественных произведений. Если смотреть вокруг, то и дело встречаешь игровую ситуацию. Я собрал несколько сюжетов.
Все мои презентации делает жена. Все презентации могут свободно распространяться, я буду крайне рад, если вы по ней будете читать лекции. Это полностью свободный материал.
Некоторые сюжеты спорные. Модели могут быть разные, можете не соглашаться с моей моделью.
- Теория игр в Талмуде.
- Теория игр в русской классике.
- Телеигра или задача о парковочных местах.
- Люксембург в Евросоюзе.
- Синдзо Абэ и Северная Корея
- Парадокс Брайеса в Метрогородке (Москва)
- Два парадокса Дональда Трампа
- Рациональное безумие (снова Северная Корея)
(В конце поста — опрос про бомбу.)
«Совет» от Яндекса: как максимизировать прибыль на платной подписке
Машинное обучение с Node.js при помощи библиотеки Tensorflow.js
Возможно, поклонники библиотеки Tensorflow, уже заметившие у нас в предзаказе эту книгу, также присматривались к возможностям машинного и глубокого обучения в браузере, тем более, что тему не обошел вниманием и сам Франсуа Шолле. Интересующихся приглашаем под кат, где рассказано, как при помощи библиотеки Tensorflow.js распознаются изображения.
Понимание джойнов сломано. Это точно не пересечение кругов, честно
Так получилось, что я провожу довольно много собеседований на должность веб-программиста. Один из обязательных вопросов, который я задаю — это чем отличается INNER JOIN от LEFT JOIN.
Чаще всего ответ примерно такой: "inner join — это как бы пересечение множеств, т.е. остается только то, что есть в обеих таблицах, а left join — это когда левая таблица остается без изменений, а от правой добавляется пересечение множеств. Для всех остальных строк добавляется null". Еще, бывает, рисуют пересекающиеся круги.
Я так устал от этих ответов с пересечениями множеств и кругов, что даже перестал поправлять людей.
Дело в том, что этот ответ в общем случае неверен. Ну или, как минимум, не точен.
Продуктивность связана не с управлением временем, а с управлением вниманием
Управление временем – это на самом деле не решение, а часть проблемы
Автор статьи: Адам М. Грант, американский ученый-психолог и писатель; профессор Уортонской школы бизнеса; автор трёх бестселлеров Нью-Йорк Таймс, а также книги «В работу с головой. Паттерны успеха от IT-специалиста».
Несколько лет назад во время перерыва в занятиях по лидерству, преподавателем на которых был я, ко мне с неуверенным видом подошёл менеджер Майкл. Его босс сказал, что ему нужно быть более продуктивным, и он провёл несколько часов, изучая, на что тратит своё время. Он уже урезал все необязательные собрания. Он не смог найти задач, которые можно было бы выбросить из календаря. Он не видел очевидного способа сделать их эффективнее.
«Это прозвучит, как шутка, но на самом деле всё серьёзно, — признался он. – Единственное, что мне пришло в голову – пить меньше воды, чтобы не бегать так часто в туалет».
Не купитесь на ERP
Вам наобещают золотые горы.
Целый год будут мучить Ваших сотрудников.
Потом сотрудники смирятся с этим беспределом.
Золото превратится в грязь, а бабки будут отжимать постоянно.
Историческая справка
(если бы тогда я знал об этом — я бы не допустил столько ошибок в жизни)
Первые ERP системы были вовсе не для производственных нужд. Уже стоит насторожиться. ERP когда-то вышли из розничной торговли. Пока в мире не появились торговые сети и мега-молы, магазинчиками управляли сами хозяева или наемные управляющие. Они вкладывали в это свой опыт и душу. Информация о том, что есть, что надо докупить и когда, хранилась в их головах и тетрадях. С появлением больших универсальных магазинов и супермаркетов, управлять вручную становилось все труднее и труднее. Фактически рост предприятий торговли прекратился.
На помощь пришла кибернетика. Эта зарождающаяся индустрия стала мощным драйвером стремительного роста торговых сетей. Именно программное обеспечение стало следить за наличием товара и скоростью его продаж, прогнозировать его спрос и заблаговременно делать закупки без вмешательства человека. Да, закупки стали делаться автоматически. Когда остаток достигает определенного количества товара – система автоматически формирует заказ у заранее одобренного поставщика, по ранее согласованной цене. Если поставщиков по конкретному товару несколько и цены у них отличаются, то выбирается сначала объем у того, у кого цена меньше, потом чуть больше и т.д. и т.п. Человеку оставалось только находить и выбирать нужный товар, заключать хитрые договора с поставщиками, принимать товар и размещать его на полках.
Успех ERP-систем в ритейле породил желание двигаться дальше – в промышленность. Говорят, на западе это получилось. У нас иногда тоже получается. Только зачем и какой ценой?
Как я организовал хранение фотографий
Сразу предупрежу: под катом нет «серебряной пули», которая умножит на 0 проблему хаоса в файлах на ваших устройствах. И даже ни строчки про нейросети, распознавание чего-либо кем-либо и прочие нанотехнологии. Под катом — немного текста и дубовая табличка, которую ещё и заполнять придётся вручную =) Но которая работает.
Зачем вам учить Go
Go — относительно молодой, но популярный язык программирования. По данным опроса Stack Overflow, именно Golang получил третье место в рейтинге языков программирования, которые хотели бы освоить разработчики. В этой статье мы попробуем разобраться в причинах популярности Go, а также посмотрим, где этот язык используется и почему его вообще стоит изучать.
35% доходность акций на альтернативных данных
Торговля на альтернативных (нестандартных) данных становится модным и перспективным. На днях попал в руки любопытный датасет от Московской Биржи по популярным акциям. После поверхностного исследования удалось получить привлекательный результат c хорошими доходностями. Подробности под катом
Мы такого не ожидали: ежегодное открытое письмо от Билла и Мелинды Гейтс
Как бы вы описали 2018 год? Оказался ли он таким, каким вы его ждали?
Мы бы ответили на этот вопрос скорее отрицательно. Начиная с особенно разрушительных природных катаклизмов и заканчивая рекордным количеством женщин, идущих на выборы, 2018 год оказался полным сюрпризов. Оглядываясь назад, мы оцениваем мир совсем не так, как видели его в прогнозах пару лет назад.
Преимущество неожиданностей состоит в том, что они часто могут служить призывом к действию. Людей может беспокоить тот факт, что реальность не совпала с их ожиданиями. Некоторые неожиданности помогают людям понять, что существующий порядок вещей необходимо менять. Некоторые сюрпризы подчёркивают тот факт, что преобразования уже начались.
Двадцать пять лет назад мы прочли статью, где было написано, что сотни тысяч детей в бедных странах умирают от диареи. Эта неожиданность помогла оформить наш взгляд на реальные ценности. Мы верим в мир, где инновации доступны всем, где дети не умирают от болезней, которые можно излечить. Но мы увидели мир, всё ещё зависящий от неравенства.
Четырехдневная рабочая неделя. Российский опыт
Контекст
Последнее время меня волнует вот какая тема: как из отличной бирюзовой команды не стать человекоядной корпорацией. Еще волнуют токсичные коллективы, профессиональное выгорание и достижение счастья. В труде.
Мы придумываем, как этим управлять и первые пробы и эксперименты, разумеется, ставим на себе. Очевидно: занимается мы HR в ИТ.
Итак
Эксперимент: четырехдневная рабочая неделя.
Место действия: Москва и Киев. Распределенный коллектив.
Интеллектуальный труд. Самоокупаемая коммерческая компания.
Продолжительность эксперимента: более 100 сотруднико-лет.
Подробности под катом.
Как браузер помогает товарищу майору
site:https://habr.com getfattr
, равно как и по ЛОРУ: site:https://linux.org.ru getfattr
ничего толком не дал. «Значит» — подумал я — «эта тема еще особенно не обсуждалась». — Что же, тогда пришло время ее обсудить, но для начала пришлось немного по-исследовать. И вот что я обнаружил:Information
- Rating
- Does not participate
- Location
- Россия
- Registered
- Activity