Как стать автором
Обновить
0
0

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

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

Навыки для виртуальных ассистентов на веб-технологиях

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

Недавно Cбер запустил Салют — семейство виртуальных ассистентов, которые работают на разных платформах. Мы в SberDevices, кроме самого ассистента, занимаемся разработкой инструментов, которые позволяют любому разработчику удобно создавать навыки, которые называются смартапы. Кроме общеизвестных диалоговых сценариев в формате чата — ChatApp, можно создавать смартапы в формате веб-приложения на любых известных веб-технологиях — Canvas App. О том, как создать простейший смартап такого типа на JS, и пойдет сегодня речь.

Погнали под кат!
Всего голосов 14: ↑13 и ↓1+12
Комментарии2

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 6 из 6

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

Содержание основного курса




Улучшение кода






Official translation (with a bit of polishing) is available here.




Shadow mapping


Ну вот наш краткий курс подходит к концу, задача на сегодня — научиться отрисовывать тени (внимание, просчёт полутеней — это отдельная тема):



Как всегда, код доступен на гитхабе
Читать дальше →
Всего голосов 68: ↑65 и ↓3+62
Комментарии20

Несколько полезных CSS-трюков

Время на прочтение3 мин
Количество просмотров56K
Во время работы над последним проектом накопилось несколько интересных CSS-трюков, о которых хочу рассказать. Хотя, возможно, это уже придумано до нас и все об этом уже знают. В примерах используется LESS, а не чистый CSS.

Событие автоподстановки в инпут поля


Проблема: узнать, что пользователь воспользовался функцией автоподстановки. Задача была в том, чтобы подсвечивать кнопку Login, если в полях e-mail и password введено что-либо. Проблема в том, что если эти поля заполняются автоподстановкой из ключницы браузера, то событие change на инпутах не выстреливает.

Решение: использовать псевдокласс :valid. Он срабатывает у инпута, если в нем есть контент, который удовлетворяет типу инпута (text, e-mail) и если у этого инпута стоит атрибут required. Правда решение не работает в IE, но нам не требуется поддержка этого браузера.

<input required="required" class="email-input" type="email" />
<input required="required" class="password-input" type="password"/>
<div class="go">Login</div>

.email-input:valid ~  .password-input:valid ~ .go {
	//стили для активной кнопки Login
}


Читать дальше →
Всего голосов 75: ↑64 и ↓11+53
Комментарии10

Руководство хакера по нейронным сетям. Глава 2: Машинное обучение. Обучение сети на основе метода опорных векторов (SVM)

Время на прочтение8 мин
Количество просмотров15K
Содержание:
Глава 1: Схемы реальных значений
Часть 1:
   Введение   
      Базовый сценарий: Простой логический элемент в схеме
      Цель
         Стратегия №1: Произвольный локальный поиск

Часть 2:
         Стратегия №2: Числовой градиент

Часть 3:
         Стратегия №3: Аналитический градиент

Часть 4:
      Схемы с несколькими логическими элементами
         Обратное распространение ошибки

Часть 5:
         Шаблоны в «обратном» потоке 
      Пример "Один нейрон"

Часть 6:
      Становимся мастером обратного распространения ошибки


Глава 2: Машинное обучение
Часть 7:
      Бинарная классификация

Часть 8:
      Обучение сети на основе метода опорных векторов (SVM)

Часть 9:
      Обобщаем SVM до нейронной сети

Часть 10:
      Более традиционный подход: Функции потерь



В качестве конкретного примера давайте рассмотрим SVM. SVM – это очень популярный линейный классификатор. Его функциональная форма имеет именно такой же вид, как я описывал в предыдущем разделе — f(x,y)=ax+by+c. На данном этапе, если вы видели описание SVM, вы наверняка ожидаете, что я буду определять функцию потерь SVM и погружаться в пояснения свободных переменных, геометрических понятий больших полей, ядер, двойственности и пр. Но здесь я бы хотел воспользоваться другим подходом.
Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии3

Перевод интерактивного учебника «Problem Solving with Algorithms and Data Structures»

Время на прочтение3 мин
Количество просмотров64K
imageПривет, Хабр!

Мы (@ali_aliev и avenat) с удовольствием представляем вашему вниманию перевод интерактивного учебника «Problem Solving with Algorithms and Data Structures» от Брэда Миллера (Brad Miller) и Дэвида Ранума (David Ranum) из Luther College, что в Айове, США.

О чём?

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

Авторы рассказывают о таких структурах данных, как стеки, очереди (в том числе с приоритетом), деки, хэш-таблицы, списки, деревья и графы. Последним двум вообще посвящены весьма не маленькие главы. Изложение не просто описательное: для каждой структуры предлагается вариант (а иногда и не один) её реализации на Python. Упор, естественно, делается на объектно-ориентированное программирование: создаётся класс, к нему пишутся методы, некоторые из которых авторы оставляют читателям для самостоятельной доработки. Затем идут примеры использования рассмотренной структуры и описание алгоритмов с её участием.

Одна из глав учебника посвящена рекурсии, в том числе её графическому представлению (фракталы). Разбирается несколько известных рекурсивных задач, а в конце наглядно демонстрируется, что эта методика, несмотря на её элегантность, отнюдь не «серебряная пуля».

Не обделены вниманием и классические алгоритмы для сортировки и поиска. И, естественно, для каждого из них анализируются производительность и «подводные камни», а так же даются рекомендации по применению. В последних главах, посвящённых деревьям и графам, даётся много материала об их разновидностях и связанных с ними алгоритмах. Изложение тут становится более сжатым, многие моменты просто описываются с тем, чтобы после прочтения главы читатель реализовал их самостоятельно.
Читать дальше →
Всего голосов 48: ↑48 и ↓0+48
Комментарии19

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

Время на прочтение1 мин
Количество просмотров35K
Интересную разработку на этой неделе представил в Томске программист Михаил Пожидаев. В восемнадцать лет Михаил потерял зрение, но не оставил мечту получить профильное образование программиста. Эта не простая жизненная ситуация подтолкуна его к разработке специального программного обеспечения для слепых и слабовидящих людей.

Подробности
Всего голосов 50: ↑49 и ↓1+48
Комментарии24

Восстановить Apple keyboard aluminium после попадания жидкости

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


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

Надо отметить, что эта клавиатура не зря считается одной из самых удобных в своем роде в принципе: легкий тихий ход клавиш, полностью свободные и расслабленные руки при работе за ней, приятный дизайн.
Так вот именно своего главного достоинства — легкого хода клавиш — после того, как под них попало вино, клавиатура почти лишилась: стали залипать кнопки в особенности нижнего ряда — Shift, Ctrl, Alt, Cmd и в первую очередь Пробел. Оно и понятно — попавшая жидкость ввиду наклона клавиатуры устремилась в нижнюю ее часть, и вино, вода из которого успела испариться, оставило свой сухой остаток на контактных площадках, пружинящих резинках и под клавишами. Справедливости ради стоит сказать, что даже после этого клавиатура продолжала работать.
Читать дальше →
Всего голосов 78: ↑68 и ↓10+58
Комментарии90

Куда исчезает место на жестком диске в Mac OS Х

Время на прочтение1 мин
Количество просмотров174K
Являясь счастливым обладателем MacBook Pro с SSD на 256Gb, стал замечать, что система непонятным образом «разрастается».

Вроде бы фильмы качаются на внешний жесткий диск, на SSD находятся только рабочие файлы, а место куда-то исчезает.
Из 256Gb со временем осталось лишь 107Gb.

Утилита OmniDiskSweeper показывала, что должно быть занято около 70 Gb пользовательскими данными. Вопрос — куда делись еще примерно 80Gb?

Набрав в терминале
# du -h -d 1 /
увидел в корне странную папку с названием /.MobileBackups, как раз и занимающую 80Gb.

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

Отключается все это через консоль:
# sudo tmutil disablelocal

Дополнительно можно почитать здесь.
Всего голосов 78: ↑50 и ↓28+22
Комментарии41

Телефон в качестве продвинутой «ленивки» к домашнему медиасерверу

Время на прочтение2 мин
Количество просмотров7.4K
Управлять проигрываемой музыкой из соседней комнаты; помочь домашним с настройками ПО, гуляя у дома с собакой; осуществить техническую поддержку тещи живущей в другом районе, сидя с друзьями в кафе…
Вот лишь несколько вопросов решаемых в данной статье. Мы рассмотрим решение с получением удаленнного рабочего стола по протоколу VNC на примере Android смартфона, но все сказанное будет актуально и для iPhone, iPad и любых других планшетов. Тут я не открою Америки, просто поделюсь своим опытом. Возможно кому-то это покажется интересным.



Читать дальше →
Всего голосов 27: ↑19 и ↓8+11
Комментарии26

5 советов новоиспеченному начальнику отдела

Время на прочтение5 мин
Количество просмотров159K
Хочу поделиться 5 важными, на мой взгляд, вещами, которые должен осознать специалист, внезапно ставший начальником своего отдела. Это скорее напутствие, психологическая накачка, чем конкретные методики, но как мне кажется, карьерные изменения — момент для изменений внутренних. Мне самому повезло стать начальником нового отдела, созданного из сотрудников, занятых определенным направлением, и вот что я успел для себя уяснить.
Читать дальше →
Всего голосов 88: ↑71 и ↓17+54
Комментарии41

Я хочу работать в Google! Телефонное интервью (часть 1)

Время на прочтение4 мин
Количество просмотров31K
Привет Хабр! Давно не писал. Да это и понятно. Защита диссертации, получение PhD, а сейчас ещё и активный поиск работы — всё это занимает очень много драгоценного времени. Но разговор сегодня пойдёт не о том. Хотелось бы поделиться с Вами, уважаемые хабралюди, ресурсами и описанием процесса подготовки к телефонному техническому интервью с Гуглом, первый технический этап которого я уже прошёл, и теперь готовлюсь ко второму, который будет в пятницу.
Читать дальше →
Всего голосов 207: ↑182 и ↓25+157
Комментарии99

Дарим роботов на Новый год

Время на прочтение5 мин
Количество просмотров15K
Новый год осталось ждать уже недолго и многие уже распланировали свои отпуска. С другой стороны о подарках мы начинаем задумываться зачастую только в последние предновогодние дни. Для тех, кто покупает подарки заранее или просто хочет подготовить необычный подарок, подготовлена данная обзорная статья. Всем остальным рекомендую сохранить статью в закладках, чтобы числа 28го внезапно вспомнить о ней, открыть, и, не ломая голову, бегом в магазин. Как вы уже поняли из заголовка, выбирать мы будем исключительно из роботов, ну и, возможно, пару радиоуправляемых моделей.

image

Читать дальше →
Всего голосов 110: ↑106 и ↓4+102
Комментарии58

iPad как платформа для разработки веб-приложений

Время на прочтение3 мин
Количество просмотров44K
Современное общество мобильно, легко адаптируется к динамично меняющейся окружающей среде. Мы на связи с глобальной сетью повсюду: в машине, в поезде, в метро, даже в туалете!
По-моему термин On-The-Go! наиболее точно характеризует современного человека.

Сейчас планшетник уже перестал быть роскошью и гаджетом, который есть только у президента. Уже пол года, как я стал счастливым обладателем iPad. В основном я использовал его для серфинга в Интернете, презентаций видеоработ заказчикам, и чтения технической литературы (как это ни странно прозвучит, но художественную мне удобнее читать с iPhone'а). Но с момента покупки меня ниразу не покидала мысль «А можно ли полноценно разрабатывать веб-приложения на iPad? Так, чтобы компьютер был не нужен вообще?». И сегодня я могу сказать — ДА — на iPad можно вести полноценную веб-разработку. Сегодня в AppStore уже есть ряд программ, которые очень сильно помогут при разработке приложений на iPad.
Читать дальше →
Всего голосов 82: ↑59 и ↓23+36
Комментарии95

Разработка привлекательных реалистичных пользовательских интерфейсов

Время на прочтение4 мин
Количество просмотров15K
Cекрет разработки привлекательных интерфейсов заключается в реализме. Ваша задача — придать плоским элементам объём, используя свойства реальных объектов, вроде неровностей и шероховатостей, бликов и теней, различных текстур поверхностей. В идеале они должны выглядеть как предметы на вашем столе. Создавая классный интерфейс, в первую очередь нужно думать не «как», а «почему».
Читать дальше →
Всего голосов 212: ↑205 и ↓7+198
Комментарии49

Необходимые приложения для Windows Phone 7.5

Время на прочтение7 мин
Количество просмотров81K
Все началось с того, что я подарил жене на Новый Год телефон на Windows Phone. Собственно, необходимость замены зрела давно, поэтому я активно изучал рынок. Увы, но iPhone, я считаю неоправданно дорогим (особенно, если покупать официальный), а Android, несмотря на всю мою к нему любовь, все еще слишком гиковый и требует множества лишних движений (особенно при обновлении и багфиксах). В общем, выбор пал на Windows Phone как на что-то среднее – все-таки запросы у жены попроще моих. И знаете, я и раньше имел возможность повертеть виндофоны в руках и убедиться в адекватности платформы, но после двух недель обладания (именно обладания) я просто влюбился в платформу. Поверьте, она очень и очень неплоха уже сейчас.

Но отставим лирику. После покупки, естественно, стал вопрос наполнения программами, потому как любая ось, это, прежде всего, предложения. И вот тут я столкнулся с некоторым русскоязычным вакуумом, касающимся приложений для WP7.5. Нет, блогов, посвященных приложения, уже множество. Но все они рассчитаны на регулярное чтение ресурса и выискивание зерен среди плевел. Мне же был нужен, что называется, рейтинг «всех времен и народов», а варианты «лучшая игра первой декады июля» меня мало устраивали. Помыкавшись по ресурсам, я наткнулся на ежемесячно обновляемый рейтинг от Gizmodo. Часть описываемых программ оказалась непригодной для пользователей России, поэтому я решил потратить пару вечеров на опробование, перевод описаний и подбор адекватных для нас замен.



Собственно, под катом и есть тот самый переработанный список лучших приложений под Windows Phone 7.5 Такой, знаете ли, стартовый набор, позволяющий оценить возможности телефона. Надеюсь, данный список будет интересен не только новым и будущим владельцам, но и давним пользователям платформы — наверняка найдется несколько достойных приложений, о которых они не слышали.

Читать дальше →
Всего голосов 48: ↑34 и ↓14+20
Комментарии73

ПО для взаимодействия ПК и смартфона

Время на прочтение7 мин
Количество просмотров435K
С момента покупки смарта на Android меня заинтересовало его функциональное наполнение. На практике оказалось, что Android способен выполнять практически любую задачу, решаемую на обычном ПK, только медленнее и не всегда удобнее. Зато дополняет ПК он прекрасно, и механизмов использования возможностей смарта на ПК и возможностей ПК на смарте — уйма.

Статья ориентирована в основном на формирующихся и будущих пользователей Android-смартфонов; надеюсь, что продвинутые пользователи также найдут в ней что-то новое и/или внесут свою лепту. Под катом по пунктам, в вопрос-ответном стиле.
Читать дальше →
Всего голосов 136: ↑127 и ↓9+118
Комментарии60

Отучаем сенсорный экран смещать координаты прикосновений на пару мм вверх

Время на прочтение4 мин
Количество просмотров6.8K
Думаю, мало кто замечал, что физические координаты прикосновения пальца и их программное отображение в iOS немного отличаются: iOS выдаёт точку, смещенную примерно на 1,5 мм вверх относительно реального прикосновения. Это сделано в интересах usability — точка, приближенная к ногтю, кажется более реалистичной, нежели лежащая ниже под подушечкой пальца. Кроме того, так лучше видно область экрана, куда нажимаешь.
Чтобы было понятнее, о чем речь, можно скачать любую рисовалку (например Bamboo Paper, приложение не моё, бесплатное), заблокировать автоповорот экрана, нарисовать небольшую горизонтальную линию, затем перевернуть устройство вверх ногами (обязательно при блокировке автоповорота) и попытаться продолжить нарисованную линию. Скорее всего продолженная линия окажется ниже первоначальной.
Читать дальше →
Всего голосов 27: ↑23 и ↓4+19
Комментарии28

Веб-приложение на C++, или укрощение демона FastCGI

Время на прочтение8 мин
Количество просмотров27K
В настоящее время, благодаря таким инструментам как NodeJS, создание веб-приложения — сущий пустяк. Скачал бинарник, сваял js в 5 строчек кода и можно хвастаться. А если подключить express и добавить ещё 5 строчек, то получим полноценное веб-приложение с роутингом, шаблонами, сессиями и другими прелестями. Так просто, что даже скучно. И стало мне интересно: как обстоят дела у моего старого знакомого С++, с которым уже 5 лет не виделся. В своё время прельстил меня ActionScript и прочий JavaScript, а о добром друге, который не раз выручал, совсем позабыл. В свете недавних статей о Configurable Omnipotent Custom Applications Integrated Network Engine (сокращено Cocaine), попался мне на глаза проект под названием Fastcgi Daemon, на основе которого функционирует HTTP-интерфейс Cocaine. И так, знакомьтесь
Читать дальше →
Всего голосов 36: ↑33 и ↓3+30
Комментарии24
1
23 ...

Информация

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