Pull to refresh
15
0
Владислав @verwolf85

Программист

Send message

Form design patterns. Обзор книги

Reading time4 min
Views17K
image

Введение от автора обзора


Книга раскрывает, порой не очевидные для дизайнеров и фронтендеров, темы оформления полей, концепции работы с типами данных и юзабилити. Книга будет полезна и новичкам и разбирающимся в теме проектировщикам интерфейсов, т. к. первым даст понимание основ, а вторым пищу для размышлений над, порой спорными, паттернами проектирования. Обзор будет представлен в виде коротких тезисов из книги и краткими комментариями обзорщика.
Читать дальше →
Total votes 24: ↑23 and ↓1+22
Comments36

Увлекательные сайд-проекты, которыми можно заняться уже сегодня

Reading time5 min
Views7.3K
Это перевод статьи, опубликованной на сайте medium.com. В ней разработчик из Нидерландов Daan советует разные проекты, которые помогут в свободное время прокачать профессиональные навыки: от работы c 3D до создания биткойн-трекера.

Читать дальше →
Total votes 12: ↑11 and ↓1+10
Comments5

Что умеют делать наручные часы кроме показа времени и как выбрать свои первые часы

Reading time24 min
Views151K

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



Современные часы имеют невероятные дополнительные функции

Читать дальше →
Total votes 168: ↑153 and ↓15+138
Comments387

Нейронные сети с нуля. Обзор курсов и статей на русском языке, бесплатно и без регистрации

Reading time5 min
Views217K
На Хабре периодически появляются обзоры курсов по машинному обучению. Но такие статьи чаще добавляют в закладки, чем проходят сами курсы. Причины для этого разные: курсы на английском языке, требуют уверенного знания матана или специфичных фреймворков (либо наоборот не описаны начальные знания, необходимые для прохождения курса), находятся на других сайтах и требуют регистрации, имеют расписание, домашнюю работу и тяжело сочетаются с трудовыми буднями. Всё это мешает уже сейчас с нуля начать погружаться в мир машинного обучения со своей собственной скоростью, ровно до того уровня, который интересен и пропускать при этом неинтересные разделы.

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

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


Читать дальше →
Total votes 39: ↑34 and ↓5+29
Comments12

Английские времена для чайников: как их все запомнить?

Reading time8 min
Views114K
Для тех, кто только начал учить английский язык, времена представляют огромную сложность. Кажется, что в русском времен всего три, а зачем в английском придумали шестнадцать (а по некоторым версиям и двенадцать, и двадцать, и двадцать четыре – студенты вообще склонны к преувеличению) – непонятно. И как их все запомнить – непонятно. В нашей очередной серии статей мы с вами разберемся в грамматике английских времен и подробно рассмотрим пары времен, которые вызывают наибольшую трудность у студентов, для которых русский язык является родным.

image
Читать дальше →
Total votes 45: ↑41 and ↓4+37
Comments58

Лекции Техносферы: Программирование на Go

Reading time2 min
Views53K

image


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


Список лекций:


Total votes 73: ↑68 and ↓5+63
Comments52

Опыт подготовки и прохождения экзамена Oracle Certified Professional Java SE 8 Programmer 1Z0-810

Reading time3 min
Views13K
image Здравствуйте, уважаемые. Здесь было размещено достаточно много статей про сертификацию, пути сертификации и зачем она нужна: тут, тут и тут.

В данном материале хочу поделиться с Вами своим опытом подготовки и прохождения экзамена Oracle Certified Professional Java SE 8 Programmer 1Z0-810.
Читать дальше →
Total votes 18: ↑16 and ↓2+14
Comments22

Хакаем CAN шину авто для голосового управления

Reading time8 min
Views119K


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

Мой автомобиль Skoda Octavia 2011 г. в. не предлагает возможностей управления с телефона, поэтому я решил исправить этот недостаток, а заодно и добавить функцию голосового управления. В качестве шлюза между CAN шиной и телефоном я использую Raspberry Pi с шилдом CAN BUS и WiFi роутер TP-Link. Протокол общения агрегатов авто закрытый, и на все мои письма предоставить документацию протокола Volkswagen отвечал отказом. Поэтому единственный способ узнать, как общаются устройства в авто и научиться ими управлять является реверс-инжиниринг протокола CAN шины VW.

Я действовал поэтапно:

  1. Разработка CAN шилда для Raspberry Pi
  2. Установка ПО для работы с CAN шиной
  3. Подключение к CAN шине авто
  4. Разработка сниффера и изучение протокола CAN шины
  5. Разработка приложения для телефона
  6. Голосовое управление с помощью Homekit и Siri

В конце видео голосового управления стеклоподъемником.
Читать дальше →
Total votes 81: ↑81 and ↓0+81
Comments110

Программирование на Python — курс для желающих узнать о нём больше или изучить ещё один язык программирования

Reading time3 min
Views125K
"The joy of coding Python should be in seeing short, concise, readable classes that express a lot of action in a small amount of clear code — not in reams of trivial code that bores the reader to death."
Guido van Rossum

Python — язык программирования, на котором приятно писать и который приятно читать. Мы предлагаем тринадцать лекций осеннего курса CS центра, чтобы посмотреть вглубь языка и попробовать понять, как пользоваться всеми его возможностями. Лекции читает Сергей Лебедев, разработчик в компании JetBrains и преподаватель в Computer Science Center.

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

Фотография сделана осенью 2014 года в Страсбурге, за две недели до начала первого прочтения этого курса.
Открыть лекции курса
Total votes 45: ↑42 and ↓3+39
Comments32

История про хитрожо… индуса, encrypted procedures, DAC и «режим Бога»

Reading time7 min
Views43K
На той неделе пришлось разбираться в логике работы одного бесплатного тула. Почти детективная история вышла с ее автором, который впоследствии оказался индусом канадского происхождения проживающим в Южной Америке.

Конечно же, практическая ценность была не в биографии автора, а в запросах, которые отправлялись приложением на сервер.

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

SELECT
    LogTruncations = (
        SELECT TOP 1 SUM(cntr_value)
        FROM ##tbl_cnt
        WHERE counter_name = 'Log Truncations'
    ),
    LogShrinks = (
        SELECT TOP 1 SUM(cntr_value)
        FROM ##tbl_cnt
        WHERE counter_name = 'Log Shrinks'
    ),
    LogGrowths = (
        SELECT TOP 1 SUM(cntr_value)
        FROM ##tbl_cnt
        WHERE counter_name = 'Log Growths'
    ),
    ...

Поскольку их можно написать на порядок проще и сократить логические чтения из таблицы:

SELECT
    LogTruncations = SUM(CASE WHEN counter_name = 'Log Truncations' THEN cntr_value END),
    LogShrinks = SUM(CASE WHEN counter_name = 'Log Shrinks' THEN cntr_value END),
    LogGrowths = SUM(CASE WHEN counter_name = 'Log Growths' THEN cntr_value END),
    ...
FROM ##tbl_cnt

На этом можно было бы и закончить… Но практически под конец я увидел, что приложение вызывает пользовательские хранимые процедуры из tempdb. Поймал себя на мысли: «Когда приложение успело их создать… и главное зачем?»
Подробнее
Total votes 44: ↑32 and ↓12+20
Comments16

Как работает реляционная БД

Reading time51 min
Views534K
Реляционные базы данных (РБД) используются повсюду. Они бывают самых разных видов, от маленьких и полезных SQLite до мощных Teradata. Но в то же время существует очень немного статей, объясняющих принцип действия и устройство реляционных баз данных. Да и те, что есть — довольно поверхностные, без особых подробностей. Зато по более «модным» направлениям (большие данные, NoSQL или JS) написано гораздо больше статей, причём куда более глубоких. Вероятно, такая ситуация сложилась из-за того, что реляционные БД — вещь «старая» и слишком скучная, чтобы разбирать её вне университетских программ, исследовательских работ и книг.

На самом деле, мало кто действительно понимает, как работают реляционные БД. А многие разработчики очень не любят, когда они чего-то не понимают. Если реляционные БД используют порядка 40 лет, значит тому есть причина. РБД — штука очень интересная, поскольку в ее основе лежат полезные и широко используемые понятия. Если вы хотели бы разобраться в том, как работают РБД, то эта статья для вас.
Читать дальше →
Total votes 232: ↑229 and ↓3+226
Comments134

Что скрывает в себе DEFAULT TRACE?

Reading time11 min
Views15K


Часто вспоминается первая работа… Средненький офис, моник 943N и обогреватель Pentium D под ногами. Как возникал из ниоткуда Борис (нет… не Борис «Бритва») с линейкой в руках и настойчиво просил не делать «больно» серверу.

Именно в те далекие времена я впервые познакомился с профайлером. Пользовательские трейсы оказались очень кстати при отладке приложений и поиске медленных запросов. Потом для себя я открыл DMV и XEvents… и профайлером стал пользоваться реже. Причина такого поступка проста – трейсы очень ресурсоемкие.

Однако, данную функциональность не стоит преждевременно придавать анафеме. Начиная с 2005 версии при установке SQL Server по умолчанию создается легковесный системный трейс, который хранит в себе много полезной информации.
Подробнее
Total votes 12: ↑11 and ↓1+10
Comments4

Подборка: Более 70 источников по машинному обучению для начинающих

Reading time5 min
Views103K


Индикатор кулачкового аналогового компьютера / Wiki

В нашем блоге мы уже рассказывали о разработке системы квантовой связи и о том, как из простых студентов готовят продвинутых программистов. Сегодня мы решили вернуться к теме машинного обучения и привести адаптированную (источник) подборку полезных материалов.
Читать дальше →
Total votes 35: ↑31 and ↓4+27
Comments16

Шпаргалка Java программиста 2: Триста пятьдесят самых популярных не мобильных Java opensource проектов на github

Reading time39 min
Views167K
Что это и зачем оно надо: Как известно, главное преимущество Java мира в том в нем существует огромное количество open-source проектов на на все случаи жизни, однако найти нужный на github'e не так просто, так как описание проекта часто мало информативно, зачастую сложно даже понять этот проект для Android'a или нет. В этой статье я автоматически и полуавтоматически собрал Java проекты, убрал старые и проекты только для Android'a, выбрал 350 набравших больше всего звезд, разделил по категориям и перевел описания.

Если вы хотите убедиться что базы данных пишут не только на C, найти проекты для работы с большими данными или нейронными сетями, пишите свой язык программирования для JVM и хотите посмотреть как это уже сделано или же просто хотите узнать какие новые возможности можно найти в Java мире open-source то это статья вам, думаю, может пригодится.

В чем смысл серии статей 'Шпаргалки Java программиста'
За время работы Java программистом я заметил, что как правило программисты постоянно и планомерно используют от силы 10-20% от возможностей той или иной технологии, при этом остальные возможности быстро забываются и при появлении новых требований, переходе на новую работу или подготовке к техническому интервью приходится перечитывать все документации и спецификации с нуля. Зато наличие краткого конспекта особенностей тех или иных технологий (шпаргалок) позволяет быстро освежить в памяти особенности той или иной технологии.


Другие статьи серии: часть 1. JPA и Hibernate в вопросах и ответах

Update: Внимание, актуальная версия со много большим количеством ссылок, находиться теперь в моем github'e проекте useful-java-links, по этой ссылке.


Читать дальше →
Total votes 51: ↑43 and ↓8+35
Comments49

Топ-5 самых впечатляющих книг, которые должен прочесть каждый разработчик ПО

Reading time3 min
Views378K
Не так давно промелькнула ссылка на достаточно свежее (осень 2011) англоязычное голосование со скромным названием "самая впечатляющая книга, которую должен прочесть каждый разработчик программного обеспечения" и описанием:

Если бы вы могли вернуться в прошлое, к самому началу своей карьеры разработчика и сказать самому себе: «прочитай именно эту книгу», в самой начале своей карьеры разработчика, какую бы книгу вы рекомендовали?

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

Однако в данном небольшом посте я возьму на себя смелость перечислить ТОП-5 тех самых книг, победивших в голосовании, переведенных на русский язык. И дать небольшие комментарии, ведь книги действительно этого достойны. Да, лично я бы поменял некоторые места, однако положимся на «мнение зала» ресурса Stack Overflow.
Читать дальше →
Total votes 236: ↑219 and ↓17+202
Comments182

Охота на лицензионный контент: где обитает кино

Reading time8 min
Views28K
Доброго дня, Geektimes. Мы продолжаем серию постов о легальном контенте в сети. В прошлый раз речь шла о музыкальных сервисах, сегодня же в прицеле нашего внимания ресурсы с сериалами и кино. Безусловно, уж чем-чем, а ресурсами с кино и сериалами интернет богат. Даже чересчур. Но много ли среди них порталов с легально размещённым контентом? Вряд ли таковых наберется хотя бы половина из первых нескольких десятков ссылок в выдаче любого поисковика по запросам вроде «бесплатные лицензионные фильмы».



А это уже проблема, даже если оставить в стороне моральную сторону вопроса использования контента сомнительного происхождения, ведь пиратские ресурсы зачастую не отличаются ответственным отношением к пользователям. А зачастую пользоваться ими вообще небезопасно — то какой-нибудь мэйлру поставят насильно, то одарят малварем каким. Поэтому знать о том, где можно легально посмотреть фильмы и сериалы бесплатно или за умеренную плату, полезно в любом случае — даже если сайты с нелицензионным контентом никак не пострадают от обновленного антипиратского закона и продолжат функционировать.
Кинотеатр на диване
Total votes 35: ↑31 and ↓4+27
Comments32

Как два программиста хлеб пекли

Reading time5 min
Views259K


Я работаю программистом уже много лет, на протяжении которых, как это ни странно, я всё время что-то программирую. И вот какую интересную вещь я заметил: в коде, написанном мной месяц назад, всегда хочется что-то чуть-чуть поправить. В код полугодичной давности хочется поменять очень многое, а код, написанный два-три года назад, превращает меня в эмо: хочется заплакать и умереть. В этой статье я опишу два подхода. Благодаря первому архитектура программы получается запутанной, а сопровождение — неоправданно дорогим, а второй — это принцип KISS.

Итак, представим себе, что есть два программиста. Один из них умный, прочёл кучу статей на Хабре, знает каталог GoF наизусть, а Фаулера — в лицо. Другой же делает всё просто. Первого будут звать, например, Борис Н., а второго — Маркус П. Само собой, имена вымышленные, и все совпадения с реальными людьми и программистами случайны.

Итак, к ним обоим приходит проектный менеджер (если в вашей вселенной PM не ходит сам к программистам, назовите его как-то иначе, например BA или lead, сути это не изменит) и говорит:
— Ребята, нам нужно, чтобы делался хлеб.

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

Как же поступят наши программисты?
Читать дальше →
Total votes 380: ↑348 and ↓32+316
Comments328

Information

Rating
Does not participate
Date of birth
Registered
Activity