Search
Write a publication
Pull to refresh
-1
0
Send message

Заблуждения большинства программистов относительно «времени»

Reading time6 min
Views60K
Много дней назад я решил записать некоторые наблюдения, сформировавшиеся пока в последние годы я занимался тестированием. Рассматривая области, которые получают наибольшую отдачу от тестирования, я понял, что у меня накопилось много конкретных мыслей о том, как мы — программисты — склонны небрежно обращаться с понятием «время» в программировании.

Тогда я написал пост «Заблуждения программистов относительно „времени“», в котором указал 34 ошибочных представления и заблуждения, относящихся как к календарному, так и к системному времени. С большинством из них я столкнулся сам, занимаясь дебаггингом программ (как рабочих, так и тестовых).

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

Руководство к дескрипторам

Reading time10 min
Views175K

Краткий обзор


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

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

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

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

Reading time6 min
Views26K


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

Мы в школе Skyeng убеждены, что чем быстрее ученик получает ощутимый эффект от занятия или тренировки, тем выше его мотивация и эффективнее само обучение. Традиционная методика изучения языков обещает конкретный результат лишь через длительное время — год, два, т.е. требует вложения значительных сил, времени и средств без немедленного эффекта. Мы считаем, что вполне реально получить “возврат инвестиций” быстро, если ставить перед собой небольшие конкретные задачи и решать их. Сегодня мы расскажем про один из наших служебных инструментов, предназначенный как раз для этого, и дадим читателям возможность попробовать его в деле, составить собственные списки слов, самые интересные из которых будут предложены всем пользователями Aword!
Читать дальше →

Celery: лучшие практики

Reading time5 min
Views151K
Если вы работаете с Django, то на некотором этапе разработке вам может понадобиться фоновая обработка долго выполняющихся задач. Возможно, что для такого рода задач вы используете какой-либо инструмент для управления очередями задач. Celery — один из самых популярных проектов для решения подобных задач в мире python и Django на данный момент, но есть и другие проекты для этой цели.

Пока я работал над некоторыми проектами, использующими Celery для управления очередями задач, выявились некоторые лучшие практики, которые я решил задокументировать. Впрочем это громкие слова для того, что я думаю о правильном подходе к решению подобных задач, а также о некоторых недостаточно используемых возможностях, которые предлагает сообщество проекта Celery.
Читать дальше →

Опыт телефонного собеседования в Google, демонстрирующий несостоятельность процесса найма

Reading time7 min
Views73K
«Диагноз — не конец, а начало дела».
Мартин Х. Фишер.

Недавно я проходил телефонное собеседование с кадровиком из Google. Поскольку я соответствовал критериям на такое (добровольное) собеседование, но не смог пройти тест, в этом посте перечислены вопросы и предполагаемые ответы на них. Этот пост может оказаться полезным тем, кому в один прекрасный день позвонят из Гугла.

Для ясности: я начал заниматься программированием 37 лет назад (мне тогда было 11 лет) и постоянно занимаюсь этим. Кроме того, 24 года назад (мне было 24) я был назначен директором по исследованиям и развитию; с тех пор среди многих других работ мною были проведены НИОКР по наиболее ответственным частям проектов TWD — все они поставляются, как коммерческие продукты:


Представитель Гугла подчеркнул, что требуется как опыт управления, так и современного программирования (редкое сочетание). Но наличие более 20 лет опыта в первом и почти 40 лет во втором оказалось недостаточным — я не смог дать «правильные ответы». Означает ли это, что Гугл слишком высоко поднимает планку или что у его кадровиков самих не хватает знаний, которые они, как предполагается, должны оценивать?

Давайте посмотрим!
Читать дальше →

Поиск Яндекса с инженерной точки зрения. Лекция в Яндексе

Reading time19 min
Views26K
Сегодня мы публикуем ещё один из докладов, прозвучавших на летней встрече об устройстве поиска Яндекса. Выступление руководителя отдела ранжирования Петра Попова получилось в тот день самым доступным для широкой аудитории: минимум формул, максимум общих понятий о поиске. Но интересно было всем, потому что Пётр несколько раз переходил к деталям и в итоге рассказал много такого, о чём Яндекс никогда раньше публично не заявлял.

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


Ну а под катом — лекция Петра Попова и часть слайдов.

Почему я больше не нажимаю кнопку «Add contact» в Telegram

Reading time2 min
Views67K


В Telegram есть странная функция, которая граничит с моим чувством прекрасного и безопасного. На мой взгляд это даже не дыра, а прям сквозное отверстие.

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

Scrum от военного летчика: Искусство делать вдвое больше дел в два раза быстрее

Reading time8 min
Views43K
Джефф Сазерленд (Jeff Sutherland), военный летчик (совершивший более 100 боевых вылетов во Вьетнаме), cоавтор Agile-манифеста и CEO Scrum.

image

Здравствуйте!
Сегодня я хочу поговорить о жизни, свободе и поиске счастья — о Великой Американской мечте, которая зачастую так и остается неисполненной. Как сказал поэт Роберт Бёрнс: «Даже самые тщательно выстроенные планы идут крахом и у мышей, и у людей», что не может не вызывать неудобств и психологического дискомфорта, вместо ожидаемого удовлетворения.

Впервые я столкнулся с этой проблемой, будучи курсантом военной академии США. Во время нашего обучения нам пришлось пройти через огонь, воду и медные трубы, а в год перед выпуском меня назначили офицером роты Л2, которой требовалось разрешить проблему со строевой подготовкой, поскольку им предстояло участвовать в военном параде. Рота считалась чем-то вроде аутсайдера, потому что за целую сотню лет они ничего не смогли поделать с уже сложившейся репутацией полной посредственности и расхлябанности. Десятилетия уходили на бесплодные попытки научить их чему-то и заставить тренироваться с большими усилиями.

Дональд Кнут и «Сюрреальные числа»: Я творил шесть дней, а на седьмой отдыхал (40,41,42/97)

Reading time9 min
Views24K
«Эксперты по computer science сказали бы, что я допустил самую огромную ошибку, когда взялся за этот проект.»

image

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

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

Колыбель для AI

Reading time8 min
Views17K


Есть одна тема в современном Computer Vision, которая часто остаётся за кадром. В ней нет сложной математики и глубокой логики. Но то что её никак не освещают — вгоняет в ступор многих новичков. А тема не проста: имеет множество граблей, про которые не узнаешь, пока не наступишь.

Тема — называется так: подготовка базы изображений для дальнейшего обучения.
В статье:

  1. Как можно отличить хорошую базу
  2. Примеры хороших баз
  3. Примеры программ, которыми удобно размечать базы

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

Как сейчас используют нейросети: от научных проектов до развлекательных сервисов

Reading time7 min
Views24K
В 1960-х годах появился новый подраздел информатики — искусственный интеллект (ИИ). Полвека спустя инженеры продолжают развивать обработку естественного языка и машинное обучение, чтобы оправдать надежды на появление сильного ИИ.

Мы в 1cloud пишем в блоге не только о себе [клиентоориентированность, безопасность], но и разбираем занимательные темы вроде ментальных моделей или систем хранения данных на основе ДНК.

Сегодня мы расскажем о том, как машинное обучение используется сейчас: почему нейронные сети популярны у физиков, как работают рекомендательные алгоритмы YouTube и поможет ли машинное обучение «перепрограммировать» наши болезни.


/ Zufzzi / Wikimedia / CC0
Читать дальше →

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

Reading time4 min
Views15K
image

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

Однако одним из самых простых и недорогих для внедрения способов оптимизации рабочего процесса на протяжение десятков лет являются чек-листы.
Читать дальше →

Telegram боты: в помощь редактору

Reading time6 min
Views33K
— Синоним к слову «своенравный»? — раздался голос жены из соседней комнаты.

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

— Дык посмотри у этого… как его…
— Да-да, я тоже забыла. Ну так что, скажешь мне синоним?

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


Опять лонгрид

Дата снаружи, дата внутри, дата танцуй, дата умри

Reading time5 min
Views9.2K
image

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

Критерии простоты

Reading time4 min
Views13K

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


Первый критерий


Особенности мозга человека таковы, что он плохо хранит и отличает более 7-9 элементов в одном списке при оптимальном их количестве 1-3.


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

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

Новые возможности Intel RealSense SDK 2016 R2

Reading time5 min
Views4.7K
Второй выпуск Intel RealSense SDK (для Windows) в 2016 году (2016R2) — версия 10.0.26.0396. В новой версии значительно улучшена работа модулей сегментации фона (BGS), отслеживания рук в режиме указателя и модуля 3D Scan для камеры SR300. Первые два модуля доступны уже в виде «золотой» версии, модуль 3DScan для SR300 перешел на уровень бета-версии. Для камеры R200 некоторые компоненты модуля Enhanced Photography (EP) перешли на «золотой» уровень, в том числе EP Meaurement. При этом модули EP Realtime Depth Enhancement и EP Tracking пока остались на уровне предварительного ознакомления. Остальные функции R200 не изменились.


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

Не откладывайте в почтовый ящик: b2c-мессенджер 2ГИС

Reading time5 min
Views10K


В сентябре на 2gis.ru появилась новая фича — b2c-мессенджер для общения с организациями. Чат очень удобен при поиске товара или услуги: можно написать сразу в несколько компаний, не нужно слушать голоса роботов-автоответчиков или ожидать на линии, пока оператор уточнит цену или остаток нужного товара. Выберите компанию, нажмите на иконку сообщения на карточке компании, и откроется чат.

Чтобы сделать мессенджер, нам пришлось немного поразбираться с тем, как вообще работают чаты и что под капотом у «больших братьев» типа WhatsApp или Telegram. Оказалось, всё не так страшно.
Читать дальше →

Эволюционный дизайн баз данных

Reading time32 min
Views22K


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


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


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

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

Джоанна Хоффман — «ангел-хранитель» Стива Джобса

Reading time8 min
Views16K

Я очень уважаю Стива Джобса. Особенно лохматого и молодого, бунтаря тех времен, когда яблоко было цветным и радужным , а не серым.

Недавно посмотрел очередной фильм про Стива и был очарован главным героем героиней — Джоанной Хоффман, которую шикарно сыграла Кейт Уинслет. Я решил покопать и узнать подробнее про роль этой девушки в жизни Apple и Macintosh. Нашел пару видеозаписей, предлагаю вам самые интересные материалы из них.

Забота об эффективности — дело лентяев. Как работать, зарабатывать и приносить компании пользу

Reading time5 min
Views14K


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

Работа на фрилансе с тропических островов стала навязчивой мечтой. Проходит время и дауншифтеры возвращаются, потому что осознают, что работа создана не для денег, а жизнь — не для отдыха. У нас в крови желание создать что-либо ценное. Ведь так и начинался наш путь в ИТ. Без денег, но с огромной мотивацией создать великий продукт.
Читать дальше →

Information

Rating
Does not participate
Date of birth
Registered
Activity