Как то вечером, придя домой с работы, я решил немного позаниматься домашним проектом. Я сделал несколько правок и сразу захотел поэкспериментировать с ними. Но до экспериментов мне пришлось заходить на VPS, пулить изменения, пересобирать контейнер и запускать его. Тут я и решил, что пора разобраться с непрерывной доставкой.
Java Developer
На работу на велосипеде. Еще одно мнение
Внимание! Это не автор поста!
Вступление
Статья не про электротранспорт. Электровелосипеды живут где-то в соседних темах.
Коллега RicoScrewdriver опубликовал неплохую статью про поездки на работу на велосипеде. Я же беру на себя смелость написать аналогичный опус, но с точки зрения увлеченного катальца, который рассматривает велосипед не только как транспорт. Скажем так, это мнение любителя с упоротостью выше среднего.
Все начиналось прозаично. Однажды, теплым мартовским днем 2016 года, где-то между извилин подогретого первыми солнечными лучами мозга, появился зуд. Я вспоминал детство. Не вообще всё, а те моменты, когда я катил на велосипеде. Это было давно и последние годы моим основным транспортом до работы была электричка, метро и ноги. И я предложил жене купить по велосипеду. Так мы стали обладателями двух MTB (в простонародье «горных») аппаратов типа «Хардтейл». В начале были легкие покатушки по городу и парку «Лосиный остров». С каждым разом было интересно заехать в невиданные ранее уголки города и ближайшего пригорода. Тогда я и не думал, что так просто можно ездить на работу. Но такие мысли однажды появились. Я смотрел карту, видел там «Лосиный остров», он манил. И я поддался. Бумажная просека стала для меня откровением. Асфальтовая дорога в лесу. Так я доехал от Королёва до парка «Сокольники», а там было рукой подать до метро «Добрынинская», где я тогда и работал. И началось. За прошедшее время и тысячи километров появился некий опыт и мнение, которым я и постараюсь поделиться.
Пиар в айти: как жить, куда идти?
Это я. Ну я пиарщик, я так вижу
Как начать писать игры
Путь в индустрию игровых разработок не близок. Эта статья призвана помочь понять с чего лучше начать это путешествие.
Вы только что закончили ваш первый курс по С++ и хотите начать делать игры. Кто-то указал вам на этот сайт и вы, возможно, поэкспериментировали немного с руководством. Вы изучили несколько лаконичных примеров, но не нашли руководства о том, как сделать целую игру. И на то есть причина.
Руководства хороши для обучения чему-то шаг за шагом, например тому, как перемещать изображение точки по экрану. Для того чтобы собрать игру воедино, вам нужны навыки решения возникающих проблем, приобретаемые лишь с опытом. Это не то, чему можно научиться из руководств. Лучший способ научиться делать игры — это начать их делать.
9 нюансов в работе инди-разработчика, о которых мне никто не рассказывал
Разработка инди-игры одним человеком (история, советы)
Снежинки в стилистике StarWars своими руками (upd. 2018)
A long time ago in a galaxy far, far away... И вот опять наступил конец года… декабрь… Думаете Антонио Эррера решил нас порадовать новыми паттернами снежинок, выполненных в стилистике StarWars? И вы абсолютно правы. В прошлом году Антонио сделал всего два паттерна с Поргами (кстати в подборку этого года они так же вошли).
Советы и рекомендации по портфолио UX-дизайнера
«То как вы поднимаетесь на гору, важнее факта достижения вершины».
В своих мемуарах Let My People Go Surfing Ивон Чуйнард, основатель глобального наружного бренда Patagonia, пишет:
«То как вы поднимаетесь на гору, важнее факта достижения вершины».
Именно в мире UX дизайна методология важна более всего, а особенно в поиске клиентов и карьерных возможностях. Один из лучших способов для разработчиков UX продемонстрировать методологию и навыки профессиональное решение проблем — через хорошо продуманное сайт-портфолио.
Вместо того, чтобы думать о портфолио как демонстрации навыков — «Вот что я могу сделать» — дизайнеры UX должны воспользоваться возможностью, чтобы проиллюстрировать процесс и создать восхитительный пользовательский опыт: «Вот как я использую дизайн для решения проблем людей».
Подобно тому как люди стремятся работать в тех отраслях в которых они хотят работать, дизайнеры должны адаптировать портфолио к определенной аудитории. Почему?
Специалист по разметке данных
На текущий момент в сфере искусственного интеллекта сложилась такая ситуация, при которой для обучения сильной нейронной сети нужны несколько компонентов: железо, софт и, непосредственно, данные. Много данных.
Железо, в общем-то, доступно каждому через облака. Да, оно может быть недешевым, но GPU-инстансы на EC2 вполне по карману большинству исследователей. Софт опенсорсный, большинство фреймворков можно скачать себе куда-то и работать с ними. Некоторые сложнее, некоторые проще. Но порог для входа вполне приемлемый. Остается только последний компонент — это данные. И вот здесь и возникает загвоздка.
Deep learning требует действительно больших данных: сотни тысяч–миллионы объектов. Если вы хотите заниматься, например, задачей классификации изображений, то вам, помимо самих данных, нужно передать нейронке информацию, к какому классу относится тот или иной объект. Если у вас задача связана еще и с сегментацией изображения, то получение хорошего датасета — это уже фантастически сложно. Представьте, что вам нужно на каждом изображении выделить границы каждого объекта.
В этом посте хочется сделать обзор тех инструментов (коммерческих и бесплатных), которые пытаются облегчить жизнь этих прекрасных людей — разметчиков данных.
Введение в архитектуры нейронных сетей
Григорий Сапунов (Intento)
Меня зовут Григорий Сапунов, я СТО компании Intento. Занимаюсь я нейросетями довольно давно и machine learning’ом, в частности, занимался построением нейросетевых распознавателей дорожных знаков и номеров. Участвую в проекте по нейросетевой стилизации изображений, помогаю многим компаниям.
Давайте перейдем сразу к делу. Моя цель — дать вам базовую терминологию и понимание, что к чему в этой области, из каких кирпичиков собираются нейросети, и как это использовать.
План доклада такой. Сначала небольшое введение про то, что такое нейрон, нейросеть, глубокая нейросеть, чтобы мы с вами общались на одном языке.
Дальше я расскажу про важные тренды, что происходит в этой области. Затем мы углубимся в архитектуру нейросетей, рассмотрим 3 основных их класса. Это будет самая содержательная часть.
После этого рассмотрим 2 сравнительно продвинутых темы и закончим небольшим обзором фреймворков и библиотек для работы с нейросетями.
Подробное сравнение популярных SMS/Voice сервисов для рассылок и авторизаций
Десятки мобильных стартапов встречают своего пользователя с экрана SMS-авторизации. Сегодня мы попытаемся разобраться какой сервис удобнее, выгоднее и надежнее всего использовать для регистрации в мобильных проектах, отправки SMS-уведомлений, рассылок и различных других действий.
Механизм представлений — особая кубинская магия
Представления, или views, это одна из концепций платформы CUBA, не самая расхожая в мире веб-фреймворков. Понять её — значит уберечь себя от глупых ошибок, когда из-за неполностью подгруженных данных приложение внезапно перестает работать. Давайте посмотрим, что представляют из себя представления (каламбур) и почему это на самом деле удобно.
Проблема незагруженных данных
Возьмём предметную область попроще и рассмотрим проблему на её примере. Предположим, у нас есть сущность Customer, которая ссылается на сущность CustomerType в отношении много-к-одному, иными словами, покупатель имеет ссылку на некий тип, его описывающий: например, "дойная корова", "грубиян" и т.п. Сущность CustomerType имеет атрибут name, в котором хранится имя типа.
И, наверное, все новички (а то и продвинутые пользователи) в CUBA рано или поздно получали такую ошибку:
IllegalStateException: Cannot get unfetched attribute [type] from detached object com.rtcab.cev.entity.Customer-e703700d-c977-bd8e-1a40-74afd88915af [detached].
Признайтесь, вы же тоже это видели своими глазами? Я — да, в сотне разных ситуаций. В этой статье мы рассмотрим причину этой проблемы, почему она вообще существует и как её решить.
Для начала — небольшое введение в концепцию представлений.
Что такое представление?
Представление в CUBA — это, по сути, набор столбцов в базе данных, которые должны быть загружены вместе единым запросом.
Как НЕ нужно учить английский: типичные ошибки
Некоторые ошибки неопасные и просто уменьшают скорость изучения языка, но часть из них может свести успехи практически к нулю. В этой статье мы разберем основные ошибки в изучении английского языка, о которые наиболее часто спотыкаются ученики.
Mask R-CNN: архитектура современной нейронной сети для сегментации объектов на изображениях
Времена, когда одной из самых актуальных задач компьютерного зрения была способность отличать фотографии собак от фотографий кошек, уже остались в прошлом. На данный момент нейронные сети способны выполнять куда более сложные и интересные задания по обработке изображений. В частности, сеть с архитектурой Mask R-CNN позволяет выделять на фотографиях контуры («маски») экземпляров разных объектов, даже если таких экземпляров несколько, они имеют различный размер и частично перекрываются. Сеть так же способна к распознаванию поз людей на изображении.
Java и Linux — особенности эксплуатации
- пишут код;
- отлаживают, тестируют;
- после этого упаковывают в jar;
- отправляют на Linux, и оно работает.
В том, что оно работает, нет особой магии. Но это приводит к тому, что такие разработчики немножечко «засахариваются» в своём мире кроссплатформенности и не очень хотят разбираться, а как оно на самом деле работает в реальной операционной системе.
С другой стороны, есть те, кто занимается администрированием серверов, на их сервера устанавливают JVM, отправляют jar и war-файлы, а с точки зрения мира Linux все это:
- чужеродное;
- проприетарное;
- собирается не из исходников;
- поставляется какими-то jar-архивами;
- «отъедает» всю память на сервере;
- вообще, ведёт себя не по-человечески.
Цель доклада Алексея Рагозина на Highload++, расшифровка которого идет далее, была в том, чтобы рассказать особенности Java для «линуксоидов» и, соответственно, Linux — Java-разработчикам.
Адаптивная вёрстка
В чём разница между резиновой, адаптивной и отзывчивой вёрсткой? Как правильно их применять?
Давайте разберёмся в отличиях подходов и попробуем сформулировать один общий вместо трёх.
Делаем адаптивный HTML, добавляя одну строку в CSS
В этой статье я расскажу вам, как использовать CSS Grid для создания супер классной сетки изображений, которая варьирует количество столбцов в зависимости от ширины экрана.
И самое классное: адаптивность будет добавлена с помощью одной строки CSS.
Это означает, что нам не нужно загромождать HTML лишними классами (
Col-sm-4
, col-md-8
) или создавать медиа-запросы для каждого размера экрана.Рассмотрим все подробнее.
Ограничение длины текста через градиент
Рассмотрим создание эффекта ухода текста в прозрачность как альтернативу обрезания текста многоточием.
Делать ли мобильную версию? 5 распространенных проблем, которые решает адаптивная верстка. Опыт Яндекса
C 2007 года очень быстро растёт количество используемых в мире смартфонов. В числе прочих причин резкого скачка популярности несколько лет назад покупателей привлекла способность этих устройств отображать сайты так, как они выглядели на экранах компьютеров. Но, купив смартфон и начав им пользоваться, люди отмечали, что для чтения отдельных блоков текста на относительно небольшом экране приходилось постоянно масштабировать страницу. Плюс к тому, многие элементы управления сайтов оказалось неудобно использовать. Это происходило потому, что страницы не были рассчитаны на управление с помощью прикосновений к экрану и зачастую требовали компьютерную мышь или другой манипулятор. Для решения этих проблем начали появляться отдельные версии сайтов, предназначенные исключительно для устройств с маленьким экраном. При этом пользователям оказалось не нужно знать адреса мобильных сайтов. Вместо этого сервер считывает информацию об устройстве из обращённого к нему запроса и определяет, какую версию предпочтительнее отдать посетителю.
Вскоре многим стало понятно, что разработка отдельной мобильной версии — это долго и дорого в поддержке. Кроме того, это противоречит идеологии веба, который подразумевает, что размеченный документ универсален и может быть прочитан практически на любом устройстве вывода. Для решения возникшего противоречия в CSS был добавлен стандарт Media Queries. Появились новые возможности по определению особенностей устройства, в частности появилась возможность применять различное оформление страницы для произвольных размеров окна.
Используйте голову
Специально для Хабра (для людей с техническим складом ума) я подготовил краткую версию статьи о мозге, в которой описано, что полезно для мозга, а что нет. Добро пожаловать под кат.
Information
- Rating
- Does not participate
- Location
- Самара, Самарская обл., Россия
- Date of birth
- Registered
- Activity