Как стать автором
Обновить
0
@schpncread⁠-⁠only

Пользователь

Отправить сообщение

Математика надёжности. Доклад Яндекса

Уровень сложностиПростой
Время на прочтение18 мин
Количество просмотров12K

Вадим Мартынов, руководитель команды платформы надёжности в Яндекс Go, в своём докладе рассказал, как влияют те или иные решения на надёжность системы и как это учитывать при разработке.

Читать далее
Всего голосов 76: ↑72 и ↓4+85
Комментарии28

Бермудский треугольник: откуда банк берет данные, которые ему никто не давал?

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров39K

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

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

Надо ли говорить, что подобного рода подписки сознательно никто не оформлял?

Ситуация оказалась нередкой: знакомые показали, что им стали сваливаться в личный кабинет банка счета из налоговой, штрафы ГИБДД и прочее. А банк заботливо складывал все счета в специальную новую папку «Счета на оплату»­.

Читать далее
Всего голосов 147: ↑139 и ↓8+170
Комментарии229

Почему малые языки — это будущее программирования

Время на прочтение10 мин
Количество просмотров47K

Разработчик веб-приложений и распределённых систем под псевдонимом chreke* убеждён: «малые языки», то есть специализированные языки, созданные для решения конкретных задач, являются будущим программирования. Это убеждение укрепилось в нём после прочтения статьи Габриэллы Гонсалес «Конец истории программирования» и просмотра лекции Алана Кея «Программирование и масштабирование».

Под катом автор объясняет, что подразумевает под «малыми языками», и почему они так важны.

*Обращаем ваше внимание, что позиция автора может не всегда совпадать с мнением МойОфис.

Читать далее
Всего голосов 54: ↑51 и ↓3+56
Комментарии75

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

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров10K
image

Привет! Меня зовут Анна Большешапова, я продуктовый дизайнер СберМаркета — занимаюсь развитием программы СберСпасибо, подпиской СберПрайм, а еще — самыми разными задачами: от рассрочки до разработки карт лояльности магазинов. Я пришла в команду полгода назад и тогда же столкнулась с проблемой: мне стало не хватать времени на задачи.
Читать дальше →
Всего голосов 16: ↑15 и ↓1+18
Комментарии11

Дайджест  ̶л̶е̶н̶т̶я̶я̶ уставшего человека: как отдыхать без угрызений совести

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров20K

Как проходят выходные? Встречаете весну на улице, чистите тающий снег у дома или гаража, гуляете с детьми, тягаете железо в зале, засели в любимой игре или работаете работу вне работы, потому что привыкли работать? Каждый из нас волен проводить свободное время так, как считает нужным. Но не факт, что нужное окажется правильным и полезным, позволяющим перезагрузить организм, дать ему отдых — физический, интеллектуальный, эмоциональный. Впрочем, нельзя сказать, что какой-то паттерн отдыха однозначно универсальный и правильный для всех: виды отдыха и их эффективность зависят от возраста, телосложения, рода занятий, привычек, склада личности, региона проживания и массы других факторов. Что не отменяет общих рекомендаций, на которые стоит обратить внимание, чтобы находиться в ладах со своим организмом.

Читать далее
Всего голосов 23: ↑21 и ↓2+33
Комментарии11

ChatGPT как инструмент для поиска: решаем основную проблему

Время на прочтение40 мин
Количество просмотров118K

Вышедшая чуть больше месяца назад ChatGPT уже успела нашуметь: школьникам в Нью-Йорке запрещают использовать нейросеть в качестве помощника, её же ответы теперь не принимаются на StackOverflow, а Microsoft планирует интеграцию в поисковик Bing - чем, кстати, безумно обеспокоен СЕО Alphabet (Google) Сундар Пичаи. Настолько обеспокоен, что в своём письме-обращении к сотрудникам объявляет "Code Red" ситуацию. В то же время Сэм Альтман, CEO OpenAI - компании, разработавшей эту модель - заявляет, что полагаться на ответы ChatGPT пока не стоит.

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

Погрузиться с головой →
Всего голосов 96: ↑96 и ↓0+96
Комментарии51

Концепции распределенной архитектуры, с которыми я познакомился при построении крупной системы платежей

Время на прочтение12 мин
Количество просмотров36K
Я присоединился к Uber два года назад в качестве мобильного разработчика, имеющего некоторый опыт разработки бекенда. Здесь я занимался разработкой функционала платежей в приложении — и по ходу дела переписал само приложение. После чего я перешёл в менеджмент разработчиков и возглавил саму команду. Благодаря этому я смог гораздо ближе познакомиться с бэкендом, поскольку моя команда несёт ответственность за многие системы нашего бэкенда, позволяющие осуществлять платежи.

До моей работы в Uber у меня не было опыта работы с распределёнными системами. Я получил традиционное образование в Computer Science, после чего с десяток лет занимался full-stack разработкой. Поэтому, пусть я и мог рисовать различные диаграммы и рассуждать о компромиссах (tradeoffs) в системах, к тому моменту я недостаточно хорошо понимал и воспринимал концепции распределённости — такие, например, как согласованность (consistency), доступность (availability) или идемпотентность (idempotency).

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

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

Итак, давайте приступим к нашему погружению в SLA, согласованность, долговечность данных, сохранность сообщений, идемпотентность и некоторые другие вещи, которые мне потребовалось выучить на своей новой работе.
Читать дальше →
Всего голосов 24: ↑22 и ↓2+20
Комментарии2

Разбор PHP-задач и новый тест. Как получить оффер в Лондон в феврале

Время на прочтение6 мин
Количество просмотров34K


Привет, Хабр!

В июле мы проводили рекрутинговое мероприятие для PHP-разработчиков, по результатам которого пять человек получили оффер в наш лондонский офис. Мы продолжаем быстро расти: Android- и iOS-команды с того времени стали на 11 человек больше, поэтому мы снова запускаем конкурс для PHP-разработчиков.

Правила те же: покажи высокий результат в тесте, успешно пройди интервью 10 или 11 февраля в Москве — получи оффер в лондонский офис Badoo.

Все расходы по приезду на интервью в Москву компания берёт на себя, равно как и всё связанное с дальнейшим переездом в Лондон: рабочие визы членам семьи, 10 000 фунтов стерлингов (≈ 770 000 рублей) на переезд, совершенствование английского, поиск жилья.

Чтобы выполнять тестовое задание было интереснее, по многочисленным просьбам (1, 2, 3) под катом мы разберём задачи с предыдущего мероприятия, рассмотрим их правильные решения, и я объясню, почему мы выбрали именно их, а также приведу некоторые примеры, статистику и варианты решений от кандидатов.

UPD: мероприятие завершено. По итогам к нам присоединились 7 человек.

Читать дальше →
Всего голосов 74: ↑70 и ↓4+66
Комментарии84

Дозвонились! Как собрать свою Web-звонилку за час

Время на прочтение7 мин
Количество просмотров37K


Друзья, сегодня я хочу поговорить с вами про звонки. Для кого-то это совсем новая тема. Для других — чистой воды фан на уровне «а не зафигачить ли мне свой скайп?». Для третьих — внезапно возникшая жизненная необходимость. Последний вариант — наш вариант.


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

Уже хочу
Всего голосов 43: ↑43 и ↓0+43
Комментарии15

CJDNS мертв, да здравствует Yggdrasil

Время на прочтение4 мин
Количество просмотров60K
image


Что такое Yggdrasil?
Yggdrasil — это распределённая Mesh сеть, которая работет в Overlay режиме, позволяя сделать интернет поверх интернета.

Причем, сеть может одновременно работать в двух режимах — через интернет и без интернета, соединяясь напрямую с физически соседними пирами (через Ethernet, Wi-Fi или Bluetooth) работая на 3-ем уровне модели OSI.

На Apple устройствах использован протокол AWDL.
Последние новости о сети cjdns датируются 2017 годом, может показатся, что сеть умерла и разработка остановлена (на самом деле — да), однако появился самозванец — Yggdrasil, который практически полностью копирует cjdns однако делает это намного лучше.

В посте рассмотрим:

  • Что такое Yggdrasil
  • Зачем это нужно
  • Откуда он взялся
  • Можно ли ему доверять
  • В чем отличее от cjdns
  • Почему его стоит установить прямо сейчас
  • Поддержка iOS (Да!)
  • Что в планах
  • Как настроить

Читать дальше →
Всего голосов 55: ↑52 и ↓3+49
Комментарии71

Зачем забивать гвозди микроскопом, если есть Alpine Linux?

Время на прочтение8 мин
Количество просмотров97K

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


Так я и познакомился с Alpine Linux.


Неожиданное окно


Этот дистрибутив может вам понравиться по следующим причинам:


  • Если вы любите минимализм и инструменты, ориентированные на выполнение поставленной задачи без лишних свистелок и украшений;
  • Если вы заметили, что имеющиеся «мэйнстримные» дистрибутивы немного (?) раздуты и избыточны;
  • Если вы захотели решить имеющуюся задачу простым способом.

Под «мэйнстримом» я подразумеваю тройку CentOS — Debian — Ubuntu (конечно же, ими мир не заканчивается), да простят меня все верующие в эти замечательные дистрибутивы. При их использовании, периодически, на границе восприятия, возникает колкая мысль – «а может быть можно проще?».

Читать дальше →
Всего голосов 84: ↑83 и ↓1+82
Комментарии111

Ричард Хэмминг: Глава 1. Ориентация

Время на прочтение18 мин
Количество просмотров24K
«Цель этого курса — подготовить вас к вашему техническому будущему.»

imageПривет, Хабр. Помните офигенную статью «Вы и ваша работа» (+219, 2265 в закладки, 353k прочтений)?

Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Давайте ее переведем, ведь мужик дело говорит.

Это книга не просто про ИТ, это книга про стиль мышления невероятно крутых людей. «Это не просто заряд положительного мышления; в ней описаны условия, которые увеличивают шансы сделать великую работу.»

Мы уже перевели 10 (из 30) глав.

Глава 1. Ориентация


(За перевод спасибо Savva Sumin, который откликнулся на мой призыв в «предыдущей главе».) Кто хочет помочь с переводом — пишите в личку или на почту magisterludi2016@yandex.ru

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

Я буду рассматривать, критиковать и демонстрировать различные стили мышления. Для иллюстрации стилевых особенностей я буду использовать технические знания, знакомые большинству из вас, что, опять же, надеюсь, станет для вас полезным повторением основ. Вам следует рассматривать этот курс в качестве дополнения к уже изученным вами техническим курсам. Многим вещам, о которых я буду говорить, не нашлось места в стандартных курсах, однако я глубоко убеждён, что вам необходимо о них знать. Этот курс существует потому, что Отдел Электрической и Компьютерной Разработки Аспирантуры Университета Морской Пехоты осознаёт необходимость общего, широкого образования, наряду со специализированным, технологическим обучением, которого потребует ваше будущее.
Читать дальше →
Всего голосов 34: ↑34 и ↓0+34
Комментарии5

Аудиокассеты в поп-культуре: почему устаревший формат звукозаписи снова считают модным

Время на прочтение5 мин
Количество просмотров27K
В 2011 году из Оксфордского словаря убрали понятие «cassette tape». При этом кассеты живы и, более того, довольно громко возвращаются в пространство популярной культуры — и используют их не только в историческом кино, где это оправдано ситуацией.

Старлорд в космической супергеройской утопии «Стражи Галактики» носится по Вселенной со старым кассетным плеером и парой микстейпов хитов 80-х и 90-х, Ханна Бейкер, современный американский подросток в школьной драме Netflix «13 причин почему» записывает истории, предшествующие её самоубийству, на старый магнитофон и рассылает пачку кассет в обувной коробке одноклассникам, виновным в её смерти.

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

Всего голосов 27: ↑25 и ↓2+23
Комментарии132

«Глаз в небе»: патрульный беспилотник с распознаванием насилия в скоплениях людей и общественных местах

Время на прочтение3 мин
Количество просмотров11K

Иллюстрация слева показывает 14 ключевых точек на человеческом теле, которые распознаёт система машинного зрения: голова, шея, плечи, локти, запястья, бёдра, колени, лодыжки. Справа вверху беспилотник Parrot AR с системой распознавания насилия. Справа внизу отдельные элементы фотографии из обучающего набора данных с ключевыми точками

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

В связи с ростом преступности и угрозой терроризма во многих странах власти заинтересованы в усилении контроля над гражданским населением. Беспилотники с автоматическим распознаванием насилия — это системы нового поколения, которые открывают двери для ещё более автономных и систем интеллектуального реагирования на уличные беспорядки и хулиганство.
Читать дальше →
Всего голосов 17: ↑17 и ↓0+17
Комментарии45

Станут ли воксели новой прорывной технологией?

Время на прочтение10 мин
Количество просмотров72K
Мы пообщались с потрясающими разработчиками Atomontage, пытаясь разобраться, смогут ли воксели вернуться и победить пиксели.


Воксельная разработка


Бранислав: в 2000-2002 годах я участвовал в соревнованиях европейской демосцены. Я написал несколько 256-байтных демо (также называемых intro) под ником Silique/Bizzare Devs (см. «Njufnjuf», «Oxlpka», «I like ya, Tweety» и «Comatose»). Каждое из интро генерировало в реальном времени воксели или графику из облака точек. И воксели, и облака точек являются примерами сэмплированной геометрии.

Интро выполняли свою задачу всего в 100 инструкциях процессора, таких как ADD, MUL, STOSB, PUSH и им подобных. Однако из-за самой природы такого типа программ на самом деле десятки инструкций использовались просто для правильной настройки, а не для генерации самой графики. Тем не менее этих 50 с лишним инструкций, которые по сути являлись элементарными математическими операциями или операциями с памятью, оказалось достаточно для генерации довольно красивой подвижной 3D-графики в реальном времени. Все эти 256-байтные интро выигрывали с первого по третье места. Это заставило меня осознать, что если такую 3D-графику возможно создавать без полигонов, то в играх и других приложениях можно достичь гораздо большего с помощью того же принципа: использования сэмплированной геометрии вместо полигональных мешей. Решение заключается в простоте. Я понял, что доминировавшая тогда парадигма, основанная на сложных и фундаментально ограниченном (необъёмном) представлении данных, уже готова была упереться в потолок возможностей. То есть настало подходящее время испробовать эту «новую», более простую парадигму: объёмную сэмплируемую геометрию.

image

Всего голосов 101: ↑98 и ↓3+95
Комментарии75

Настройка BGP для обхода блокировок, или «Как я перестал бояться и полюбил РКН»

Время на прочтение11 мин
Количество просмотров142K

Ну ладно, про «полюбил» — это преувеличение. Скорее «смог сосуществовать с».


Как вы все знаете, с 16 апреля 2018 года Роскомнадзор крайне широкими мазками блокирует доступ к ресурсам в сети, добавляя в "Единый реестр доменных имен, указателей страниц сайтов в сети «Интернет» и сетевых адресов, позволяющих идентифицировать сайты в сети «Интернет», содержащие информацию, распространение которой в Российской Федерации запрещено" (по тексту — просто реестр) по /10 иногда. В результате граждане Российской Федерации и бизнес страдают, потеряв доступ к необходимым им совершенно легальным ресурсам.


После того, как в комментариях к одной из статей на Хабре я сказал, что готов помочь пострадавшим с настройкой схемы обхода, ко мне обратились несколько человек с просьбой о такой помощи. Когда у них всё заработало, один из них порекомендовал описать методику в статье. Поразмыслив, решил нарушить свое молчание на сайте и попробовать в кои-то веки написать что-то промежуточное между проектом и постом в Facebook, т.е. хабрапост. Результат — перед вами.

Читать дальше →
Всего голосов 124: ↑120 и ↓4+116
Комментарии303

Как мы сделали игру для Highload++ с воксельной графикой и VR

Время на прочтение21 мин
Количество просмотров18K
На самом деле, это легкий технический лонгрид, надеемся, после прочтения у вас появится дополнительный интерес сделать какую-нибудь игру, или хотя бы вы узнаете, как это работает.



О спикере: Александр Хаёров (@allexx) руководит отделом разработки в компании Ingram Micro Cloud. Ребята в команде Александра считают себя не просто отличными инженерами, а называют себя великой командой voxel джедаями, мастерами оптимизации, гуру 3D и повелителями больших данных! [примечание: по аналогии с названиями должностей в LinkedIn и Medium]

Эта классная команда, готовясь к выступлению на Highload++ 2017, решила развлечь аудиторию и сделать что-то новое и интересное для стенда. Поэтому они запилили игру, о создании которой и пойдет дальше речь.

Хозяйке на заметку: со стороны организаторов, мы очень приветствуем усилия по подготовке к участию в конференции. Они многократно окупаются, привлекая участников, и, как выясняется, идут на пользу команде.

Итак, поехали!


Всего голосов 36: ↑35 и ↓1+34
Комментарии3

Математика, которой я пользуюсь

Время на прочтение8 мин
Количество просмотров21K


Недавно на одном онлайн-форуме был задан вопрос: насколько востребована математика в условиях работы реального программиста, как часто он пользуется ей и каким ее областями? И вот мой ответ.

Прежде всего я, как и почти все программисты, пользуюсь булевой логикой, от анализа логических выражений для условных операторов и критериев выхода из цикла, до приведения подобных выражений в соответствие, например, законам де Моргана. Большая часть нашей работы граничит с исчислением предикатов первого порядка и другой логикой предикатов в виде анализа предусловий, инвариантов и другого (хотя и может показаться, что мы при этом занимаемся какими-нибудь иными задачами).

Далее, я часто занимаюсь анализом трудоемкости алгоритмов. Размеры наборов данных, подвергаемые обработке в наши дни, просто колоссальны. В 2010 году на конференции Techonomy Эрик Шмидт сказал, что объем данных, создаваемых сегодня человечеством всего за два дня, равен объему всех существовавших в мире данных по состоянию на 2003 год. Мне важно уметь обрабатывать большие сегменты этих объемов и извлекать из них пользу. И в этом смысле понимание пространственно-временной сложности операций, применяемых нами к данным есть ключ к определению того, возможны ли те или иные вычисления в принципе. В отличие от более традиционных видов O-анализа или тета-анализа постоянные множители в таких масштабах оказывают существенное влияние: множитель 2 не меняет асимптотическую временную сложность алгоритма, но потребует увеличения количества процессоров с 10 тыс. до 20 тыс., и такая разница в потреблении ресурсов будет ощутима. В результате вычисления становятся более изощренными. Примеры: могу ли я взять некое линейное вычисление и снизить его в силе до логарифмического? Можно ли снизить потребление памяти в три раза? И так далее.
Читать дальше →
Всего голосов 41: ↑33 и ↓8+25
Комментарии20

Как программисту переехать на Кипр

Время на прочтение26 мин
Количество просмотров75K


Disclaimer: Эту статью я начал писать достаточно давно и закончил только сейчас, так как не было времени. За это время было опубликовано еще 2 аналогичные статьи: вот эта и вот эта. Часть информации в статье повторяет информацию из этих двух статей. Однако, так как всё описанное в статье я рассматриваю через призму собственного опыта, я решил оставить ее без изменений.

Да, сегодня речь пойдет не о самой распространенной модели трактора, но так уж получилось. Хотя описываемые события произошли относительно давно, в общем и целом ситуация не поменялась и модель трактора все еще работоспособна. Итак, в данной статье я расскажу о процессе поиска работы, подготовке к переезду, переезде и общих впечатлениях о жизни тут.
Кому интересно, прошу под кат.
Всего голосов 73: ↑68 и ↓5+63
Комментарии103

Как Amazon использует новую систему распознавания лиц, и за что её ненавидят

Время на прочтение9 мин
Количество просмотров43K


Amazon разработала новую мощную систему для распознавания лиц в режиме реального времени. Нейросетям «кормят» фото и видео, а они определяют, что (или кто) там показывается. Воспользоваться ей может любой пользователь AWS. В США с её помощью шерифы уже успешно ловят преступников, а телестанции находят знаменитостей в живых трансляциях. Но у технологии нашлись и ярые оппоненты. Которые пишут Безосу письма и призывают Amazon немедленно прекратить разработку системы, иначе последствия могут быть самыми непредсказуемыми.

Читать дальше →
Всего голосов 22: ↑22 и ↓0+22
Комментарии165
1
23 ...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность