Пользователь
Kotlin DSL: Теория и Практика
По ходу статьи мы разберем все основные инструменты из арсенала разработчика и то, как их можно комбинировать для решения задач тестирования. Мы с вами проделаем путь от проектирования Идеального Теста до запуска максимально приближенного, чистого и понятного теста для системы планирования ресурсов на основе Kotlin.
Статья будет полезна практикующим инженерам, тем, кто рассматривает Kotlin как язык для комфортного написания компактных тестов, и тем, кто хочет улучшить процесс тестирования в своем проекте.
Статья основана на докладе Ивана Осипова (i_osipov) на конференции JPoint. Дальнейшее повествование ведется от его лица. Иван работает программистом в компании Haulmont. Основной продукт компании – CUBA, платформа для разработки энтерпрайза и различных веб-приложений. В том числе на этой платформе делаются и аутсорсинговые проекты, среди которых недавно был проект в области образования, в котором Иван занимался построением расписания для образовательного учреждения. Так сложилось, что последние три года Иван так или иначе работает с планировщиками, и конкретно в Haulmont в течение года они этот самый планировщик тестируют.
15 малоизвестных свойств и методов объектов DOM

Наивный Байес, или о том, как математика позволяет фильтровать спам

Как выявлять и развивать таланты в IT: результаты первого Team Leader meetup
24 января 2018 года в Яндексе прошёл первый Team Leader meetup. Мероприятие посетили в общей сложности порядка семидесяти руководителей разработки из различных компаний.
Мы хотели, чтобы участники встречи были активно вовлечены в дискуссию, поэтому сразу выбрали в качестве основного формат панельной дискуссии в противовес стандартным презентациям. Таким образом, в разговоре участвовали сразу несколько экспертов из ведущих IT-компаний: Яндекса, Mail.Ru, Skolkovo Foundation, Phillips Innivation Labs RUS, 1C GAMES STUDIO. У слушателей в зале была возможность реагировать на высказывания экспертов при помощи специального бота, который демонстрировал их эмоции в реальном времени на специальном экране, расположенном прямо в зале.
Также для нас было важным, чтобы встреча была интересна представителем самых разных специализаций, с этим связан и выбор темы. Наши эксперты занимаются бекенд- и фронтенд-разработкой, разработкой игр, исследованиями и так далее.
С момента первой встречи прошло уже несколько месяцев, и мы, наконец, готовы поделиться её результатами.
Реактивный фронтенд. История о том, как мы снова всё переписали
Спойлер: БЭМ пока никуда не делся ¯\_(ツ)_/¯. Погнали!

Внимание: высокая концентрация фронтенда. Много текста, картинок и кода, как обещала.
Общая картина модульного тестирования

Это не руководство, какие символы нужно ввести в редакторе кода, чтобы получились модульные тесты. Это — пища для ума, которую необходимо употребить до того, как предпринимать упомянутые действия.
Тема модульного тестирования не так проста, как может показаться. Многие из нас, разработчиков, приходят в модульное тестирование под давлением клиентов, сотрудников, коллег, своих кумиров и так далее. Мы быстро понимаем его ценность, и, закончив технические приготовления, забываем об общей картине, если вообще когда-либо её понимали. В этой статье я вкратце расскажу о том, чем является и чем не является модульное тестирование как в целом, так и в PHP, а заодно опишу, какое место занимает модульное тестирование в сфере QA.
Ричард Хэмминг: Глава 27. Недостоверные данные
«Цель этого курса — подготовить вас к вашему техническому будущему.»

Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Мы ее переводим, ведь мужик дело говорит.
Это книга не просто про ИТ, это книга про стиль мышления невероятно крутых людей. «Это не просто заряд положительного мышления; в ней описаны условия, которые увеличивают шансы сделать великую работу.»
Мы уже перевели 21 (из 30) главу. И ведем работу над изданием «в бумаге».
Глава 27. Недостоверные данные
(За перевод спасибо Валентину Пинчуку, который откликнулся на мой призыв в «предыдущей главе».) Кто хочет помочь с переводом, версткой и изданием книги — пишите в личку или на почту magisterludi2016@yandex.ru
По моему опыту, да и опыту многих других исследователей, данные, как правило, гораздо менее точны, чем это декларируется. Это не простой момент – мы зависим как от выбора исходных данных для принятия решений, так и от исходных данных при моделировании, по результатам которого принимаются решения. Так как природа ошибок очень многообразна, и у меня нет единой теории, чтобы объяснить их все, то я вынужден перейти к отдельным примерам и обобщениям из них.
Позвольте мне начать с испытаний на долговечность. Хорошим примером служит мой опыт, участия в испытаниях жизненного цикла вакуумных труб. Они предназначались к использованию в первых подводных кабелях для передачи голоса с ожидаемым сроком службы 20 лет (после 22 лет мы просто вывели кабель из эксплуатации, которая стала слишком затратной – и это дает хорошее представление о скорости технического прогресса в те дни).
Как построить защиту от фрода в масштабах корпорации. Лекция на YaC 2018
Как мы аутентифицируем? В нашем случае ничего экстраординарного нет, но один метод хочу упомянуть. Кроме традиционных видов — капчи и одноразовых паролей — мы используем Proof of Work, PoW. Нет, мы не майним биткоины на компьютерах пользователей. Мы используем PoW, чтобы замедлить атакующего и иногда даже заблокировать полностью, заставив его решить очень сложную задачу, на которую он потратит очень много времени.
Редактор еженедельных расписаний
Задача — создание и поддержание еженедельного расписания, такого как расписание уроков в школе или расписание работы врачей и чиновников. Имеется набор слотов, каждый слот — это место в недельном расписании с различными дополнительными параметрами, такими как номер кабинета, имя сотрудника. Требуется построить гибкую систему с полной историей, способную решать задачи типа: создать другое расписание с начала лета, заменить учителя на ближайшие 3 недели, передвинуть расписание с пятницы на субботу из-за праздника.
Напишу, обо что обычно спотыкаются и как это решить, решу задачку о закрашивании полоски, а затем приведу примеры простого бэкенда на node/sequelize и закончу несложным фронтендом на vue/vuex/vuetify/nuxt, где можно будет все это потаскать мышкой и посмотреть, как работает.
Коды выложены на github, развернуто здесь.

Хроматическое число плоскости не меньше 5
Эту задачу сформулировали Хуго Хадвигер и Пал Эрдёш в сороковых годах XX века. Независимо от них примерно в то же самое время этой задачей занимались Эдуард Нелсон и Дж. Р. Исбелл. После работы Хадвигера 1961 года об открытых на тот момент проблемах, хроматическое число плоскости стало активно изучаться.
Сразу же было показано, что в 3 цвета плоскость требуемым образом раскрасить нельзя, однако 7 цветов достаточно. Действительно, легко выбрать на плоскости несколько точек так, что некоторые из них находятся на расстоянии ровно 1 (такая конструкция точек называется графом единичных расстояний), и затем перебором показать, что в 3 цвета эти точки раскрасить невозможно. Примеры таких графов — веретено Мозера и граф Голомба приведены на картинке ниже. Чтобы показать, что 7 цветов достаточно, замостим плоскость правильными шестиугольниками со стороной 0.4 и закрасим их по определённому паттерну, как на картинке ниже. Тогда, как несложно убедиться, концы любого отрезка длины 1 будут лежать в разных шестиугольниках различных цветов.

Однако, с тех пор никто не мог уточнить ни верхнюю, ни нижнюю границы. Задача получила название Проблема Нелсона — Эрдёша — Хадвигера. Прошло 60 лет, и вот, в апреле 2018 года математик-любитель Обри де Грей предъявил граф единичных расстояний, который нельзя покрасить в 4 цвета.
Что технарю нужно знать о гуманитариях?



Начнем с того, что разделение на физиков и лириков придумали в 60ые для смеха, типа западников и славянофилов, или патриотов и либералов, спартак или динамо — классическая “двухпартийная система” наглядно показанная в серии Южного Парка про клизму и бутерброд. Еще древние римляне называли этот принцип “разделяй и властвуй”.
В итоге разным командам дали разные книжки, а про чужие говорили «скучно, вам не понять, да и понимать НЕ НАДО», а понять меж тем легко, главное посмотреть сквозь другие очки, сменить парадигму. Ведь ни одна из парадигм не истина, а вот бинокулярное зрение сильно облегчает жизнь. А тут, дали людям разные очки, одним плюс, другим минус, гуманитариям шестеренок в часах не рассмотреть, а для технарей через 200 метров вся природа абстракция.
Но вот вам, друзья, золотой ключик открывающий миры — три книги с отлично структурированной инфой по гуманитарным наукам. Этих трех точно будет достаточно, что бы технарю понять основные гуманитарные законы и начать видеть, как это устроено на уровне механики.
О чем я думаю, когда читаю роман «Червь» Wildbow
По своему опыту знаю, как тяжело рекомендовать книги человеку, который много читает. Поскольку по-настоящему великих книг, способных понравится почти любому читателю не так много, он читал всё, что и ты. Если ты спустишься чуть ниже по уровню и начнешь предлагать книги просто хорошие, начинается лотерея – ты предлагаешь книгу, которая кажется хорошей тебе, но насколько она покажется хорошей человеку, которому ты её предлагаешь? Угадать сложно.
Нужно учитывать много факторов. Пол, возраст, багаж знаний, политические пристрастия, интеллект и способность отфильтровывать шум. Поскольку мы находимся на гиктаймсе, уверен, что мои параметры совпадают с основной аудиторией по всем пунктам, кроме последнего.
Способности отфильтровывать шум. Попробуйте прочитать этот текст: «По рзеузльаттам илссоевадний одонго анлигсйокго унвиертисета, не иеемт занчнеия, в каокм проякде рсапжоолены бкувы в солве. Галовне, чотбы преавя и пслонедяя бквуы блыи на мсете. осатьлыне бкувы мгоут селдовтаь в плоонм бсепордяке, все-рвано ткест чтаитсея без побрелм».
Многие из вас, как и я, действительно прочитали его без проблем. (Я вообще поначалу не заметил, что буквы в словах переставлены) Но есть и такие читатели, что спотыкаются на каждом слове, расшифровывая их в уме. Почему я об этом вспомнил? Потому, что предлагаемые мной книги подойдут только тем читателям, что легко прошли тест.
Остальным даже не стоит и браться.
Чего бы почитать. Малоизвестные и замершие научно-популярные статьи и блоги
myak555 Мир сквозь нефтяные очки, автор нефтяник. Десятки статей, где популярно изложено о пике ресурсов и world3, мальтузианстве и уравнениях Ферхюльста, нефти и сланцах. Начните с этого поста.
Роберт Ибатуллин, Вымышленные миры
Старая страничка, есть любопытные прогнозы на ближайшие десятилетия. Будущее 2008 года.
astronet.ru Астрономическая научная картинка Больше ста популярных статей о новых наблюдениях и достижениях астрономии, начиная с 2003 до 2014 года. Начиная с 2010 становится спорадическим, а потом замерзает. Сейчас нечто подобное можно найти на elementy.ru
flavorchemist Химия вкуса, пищевая промышленность. Предупреждение: После чтения мороженое и йогурты станут менее вкусными.
Шесть типов облаков, которые нужно знать – и что они рассказывают о погоде

Современные прогнозы погоды основаны на сложных компьютерных симуляциях. Эти симуляции используют физические уравнения, описывающие атмосферу, включая движение воздуха, солнечное тепло, формирование облаков и дождя. Постепенное улучшение прогнозов со временем означает, что сегодняшние пятидневные прогнозы настолько же точны, насколько 20 лет назад были точны трёхдневные.
Но вам не нужен суперкомпьютер для предсказания того, как изменится погода у вас над головой в ближайшие несколько часов – подобные приметы известны в разных культурах уже много тысяч лет. Следя за небом и обладая некоторыми знаниями по формированию облаков, можно предсказать, будет ли дождь.
Алан Кей (и коллективный интеллект Хабра): какие книги формируют мышление тру инженера

Как и в науке, медицине, консультировании и во многих других областях, я думаю, что в этом случае есть проблемы темперамента, а также знания — здесь есть своего рода «призвание». И, я думаю, своего рода «отношение».
Ключевой частью инженерии является любовь к тому, чтобы делать вещи, особенно к тому, чтобы делать их сразу же и делать их хорошо. Большая часть инженерии возникла из “tinkering” (aka “hacking”), добавив к этому желания «принципиального проектирования и создания», «целостности» и т. д. Все великие инженеры, которых я знаю лично, имеют глубокие моральные убеждения касательно того, что они делают, и почему это «должно быть сделано как можно лучше». Часть наложения темперамента на науку это своего рода «лабораторная крыса», которая наиболее счастлива, когда она в курсе эксперимента или создания нового экспериментального аппарата.
Прототип. От идеи до опытной партии. Литье в силикон

Почти универсальный конвертер на TPS63000, или общепит для самых маленьких

Доброго вам времени суток, уважаемые гики и сочувствующие! Для любителей тратить своё свободное время на разработку
Доработка китайского вольтамперметра WR-005

Smart плинтус 1.0
Озаботила меня одна проблема – темный коридор по пути из спальни на кухню. Ну, знаете, люблю ночью на кухню ходить, но в потемках некомфортно, а т.к. коридор относительно ширины достаточно длинный, то велика вероятность отклонения от маршрута при ориентировании по встроенным в голову гироскопам. Ошибка накапливается, да еще ноги разной длины, ходил с вытянутыми руками и попадал в дверной проем не с первого раза.
Да, конечно есть всякие ночники, датчики движения, умные дома, но у меня есть лучше, у меня есть пластиковый плинтус с кабельным каналом.
Поэтому возникла идея запихать туда светодиодную ленту и посмотреть, как она там себя будет чувствовать и получилось, знаете ли, довольно круто, такая подсветочка, как в космических кораблях.
Информация
- В рейтинге
- Не участвует
- Откуда
- Москва, Москва и Московская обл., Россия
- Дата рождения
- Зарегистрирован
- Активность