Как стать автором
Обновить
117
0
Пётр Самошкин @AdvanTiSS

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

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

1000 глаз, которые не хотят проверять код открытых проектов

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

open source, медленные правки багов


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


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

Читать дальше →
Всего голосов 86: ↑76 и ↓10 +66
Комментарии 118

Структура «Feature Folders» в ASP.NET Core MVC

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


Первая версия ASP.NET MVC появилась еще в 2009 году а первый перезапуск платформы (ASP.NET Core) начал поставляться с прошлого лета. На протяжении этого времени структура проекта по умолчанию осталась почти неизменной: папки для контроллеров, представлений (views) и часто для моделей (или, возможно, ViewModels). Такой подход называется Tech folders. После создания нового проекта ASP.NET Core MVC организационная структура папок имеет следующий вид:


В чем проблема со структурой папок по умолчанию?


Большие веб-приложения требуют лучшей организации чем маленькие. Когда есть большой проект, организационная структура папок, которую используется по умолчанию в ASP.NET MVC (и Core MVC), перестает работать на вас.
Читать дальше →
Всего голосов 37: ↑36 и ↓1 +35
Комментарии 30

Вышел свободный видеотранскодер HandBrake 1.0.0

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


После почти 13 лет группа разработчиков выпустила первую версию open source видеотранскодера HandBrake 1.0.0. HandBrake — популярная бесплатная программа для конвертирования и сжатия видео. Кроссплатформенное приложение работает под Linux, macOS и Windows с графическим интерфейсом или из командной строки. Пожалуй, это лучшая программа в своём классе. Сложно найти хотя бы один видеотранскодер близкого качества, функциональности и с открытым кодом. Можно сказать, что это идеальная графическая оболочка для ffmpeg (кстати, команды ffmpeg можно изучать по логам HandBrake, это лучше мануала).
Читать дальше →
Всего голосов 30: ↑29 и ↓1 +28
Комментарии 24

Игры, которые учат программированию

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


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

У каждого есть возможность воспользоваться специально созданной для обучения школьников средой программирования Scratch, которую разрабатывают специалисты одного из самых престижных технических учебных заведений США и мира — Массачусетского технологического института. Или игрой Minecraft, за которую Microsoft год назад заплатила $2,5 млрд и с помощью которой, в том числе, планирует обучать детей программированию. Или обучающими играми, которые создают энтузиасты и добровольцы во всём мире.

Препятствием для использования подобных ресурсов может быть неосведомлённость о их существовании или незнание языка. Действительно, англоязычных ресурсов и игр значительно больше. Но существуют и русскоязычные игры, обучающие программированию.
Читать дальше →
Всего голосов 37: ↑35 и ↓2 +33
Комментарии 37

Умный дом или игрушка для мужчин: конечные устройства

Время на прочтение 8 мин
Количество просмотров 42K
В одной из предыдущих моих статей был проведен опрос по наиболее интересующей читателей теме: «Конечные устройства умного дома (установка, подключение, использование...)». За нее высказалось 80% проголосовавших читателей. Эта статья будет посвящена общему описанию основных конечных устройств с подробными ссылками на информацию от производителя.

На плане 1 этажа показаны реальные устройства реального умного дома:



На плане располагаются все устройства умного дома: это датчики температуры и влажности, датчики тока, датчики освещенности, счетчики потока воды, датчики напряжения, контроллеры датчиков, умные розетки и т.п.
Читать дальше →
Всего голосов 17: ↑17 и ↓0 +17
Комментарии 45

LampTest.ru — тестирование светодиодных ламп

Время на прочтение 4 мин
Количество просмотров 60K
Рад сообщить, что cайт lamptest.ru (он же lamptest.com), над которым мы работали полгода, сегодня заработал в «боевом» режиме.



На сайте собраны данные по протестированным мной светодиодным лампам. Сейчас их там 102, но уже скоро добавится ещё пара десятков. На сайте уже есть данные по всем лампочкам Ikea, по большому количеству ламп Thomson, Navigator, Gauss.

Читать дальше →
Всего голосов 64: ↑62 и ↓2 +60
Комментарии 162

Детектор углекислого газа МАСТЕР KIT MT 8057

Время на прочтение 2 мин
Количество просмотров 33K
Как известно, причиной многих проблем с самочувствием и синдрома хронической усталости может быть переизбыток углекислого газа (CO2) в воздухе помещения (megamozg.ru/post/4982). Практически во всех городских квартирах вентиляция не достаточна для того, чтобы поддерживать комфортный уровень CO2. Очень важно иметь дома измеритель уровня CO2 для того, чтобы хотя бы вовремя открывать форточку.

Детектор углекислого газа МАСТЕР KIT MT 8057 сейчас фактически самый дешёвый на рынке. В интернет-магазине MedGadgets от стоит 4950 рублей.



Прибор показывает уровень CO2 и температуру, его можно подключить к компьютеру для построение графиков изменения CO2 в течение длительного времени.
Читать дальше →
Всего голосов 16: ↑11 и ↓5 +6
Комментарии 28

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

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


Каждый год журнал Network World просит ИТ-специалистов назвать их любимые рабочие инструменты, которыми они пользуются каждый день. В этом году в этом списке представлено несколько интересных программных продуктов.
Читать дальше →
Всего голосов 10: ↑7 и ↓3 +4
Комментарии 0

Cервис для записи конспектов при просмотре on-line видео

Время на прочтение 1 мин
Количество просмотров 12K
Всем привет!

Сегодня обнаружил этот замечательный сервис сделанный компанией UniShared (спасибо AdvanTiSS) для записи конспектов при просмотре видео и не могу не поделиться. Идея в том, что ваш конспект будет синхронизирован с video и вы с легкостью сможете вернуться к релевантному моменту. Все записи хранятся в Google Drive.

Сайт сделанный на данный момент поддерживает Coursera, Udacity, edX, Khan, Vimeo и Youtube.

Сайт Open Source и его репозиторий находится здесь: github.com/UniShared/videonotes

Всем приятного самообразования.
Всего голосов 12: ↑11 и ↓1 +10
Комментарии 0

12 игр, которые обучают детей программированию

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


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

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

Такие платформы, как Scratch и Alice позволяют детям (и взрослым) создавать собственные игры и анимации, используя упрощенные методы программирования. Однако не всем детям это интересно. И вот для таких детей существует множество игр, которые обучают базовым принципам программирования в веселой и доступной форме.

Читать дальше →
Всего голосов 61: ↑58 и ↓3 +55
Комментарии 32

Используем Google Voice Search в своем приложении .NET

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


Функция распознавания речи с некоторого времени доступна в браузере Google Chrome. Посмотреть как это выглядит можно, например, здесь.

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

Как это часто бывает, все уже сделано за нас в этой статье. Все оказывается очень просто, необходимо сделать POST запрос на адрес www.google.com/speech-api/v1/recognize со звуковыми данными в формате FLAC или Speex. Реализуем демонстрацию распознавания WAVE-файлов с помощью C#.

Читать далее
Всего голосов 80: ↑72 и ↓8 +64
Комментарии 25

Обзор мозгокомпьютерного интерфейса Emotiv Epoc

Время на прочтение 9 мин
Количество просмотров 95K
Вот тут давно сокрушались, что нет героя в отечестве, который бы купил какой-нибудь нейрокомпьютерный интерфейс, помучил бы его на благо сообщества и поделился с окружающими результатами мучений. Собственно есть. Я его купил и попытался использовать. Подробности с картинками под катом.

Читать дальше →
Всего голосов 159: ↑159 и ↓0 +159
Комментарии 172

Американские орнитологи создали онлайн-ресурс с записями пения тысяч видов птиц

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


Группа ученых из США выполнила очень интересную работу: орнитологи из Мичиганского университета создали онлайн-ресурс, где собрали записи пения тысяч различных видов птиц из разных стран. Точное количество записей составляет 10 тысяч 200 штук (!), можно только представить себе, какая это работа. Кстати, количество видов птиц, игравших роль «озвучки» составляет 3190 — весьма обширная база.

Читать дальше →
Всего голосов 39: ↑38 и ↓1 +37
Комментарии 33

Бизнес для программистов. Как начать свое дело

Время на прочтение 2 мин
Количество просмотров 19K
Многие из читателей Хабрахабра хотели бы открыть свой бизнес и перестать работать на «дядю». Но как это сделать? Какие опасности это таит? Ответы на эти и другие вопросы можно найти в замечательной книге «Бизнес для программистов. Как начать свое дело».

Ее написал Эрик Синк – бывший разработчик Spyglass, основатель и руководитель SourceGear, одного из основных поставщиков ПО в области контроля версий, а также колумнист MSDN.

Основная тема книги – это как стартовать и развить свою маленькую компанию независимого поставщика ПО. Эрик разбивает эту задачу на несколько традиционных компонентов: как стать предпринимателем, люди, маркетинг, продажи. Но каждый из них рассматривает через призму восприятия программиста. Например, приводит следующий совет по поиску идей:
Idea FindGoodProductIdea ()
{
ArrayList candidateList = BrainstormLotsOfIdeas();
return ChooseTheBestIdea(candidateList);
}

Читать дальше →
Всего голосов 76: ↑61 и ↓15 +46
Комментарии 46

Ebay. Украина. О таможне и пересылках

Время на прочтение 5 мин
Количество просмотров 65K
О работе с Ebay написано много. Зачастую русскоязычные ресурсы описывают российские реалии и большая часть написанного применима к Украине, однако есть нюансы, на которые стоит обратить внимание.
Читать дальше →
Всего голосов 126: ↑119 и ↓7 +112
Комментарии 135

GPS Tracker на ардуино своими руками

Время на прочтение 5 мин
Количество просмотров 214K
После нескольких экспериментов с ардуиной решил сделать простенький и не очень дорогой GPS-tracker с отправкой координат по GPRS на сервер.
Используется Arduino Mega 2560 (Arduino Uno), SIM900 — GSM/GPRS модуль (для отправки информации на сервер), GPS приёмник SKM53 GPS.
Читать дальше →
Всего голосов 49: ↑43 и ↓6 +37
Комментарии 58

Автоматическая генерация ресурсов для приложений Android с помощью скриптов для Adobe Photoshop

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

Предисловие


При разработке для Android, как известно, нужно закладываться на то, чтобы создавать ресурсы подо все возможные пиксельные плотности. Изначально таких плотностей было только три: ldpi, mdpi и hdpi. Однако прогресс на месте не стоит: пиксельные плотности экранов растут до невменяемых значений, а Google тем временем тихой сапой приставляли буковку «x» и уже добрались до xxxhdpi, получив в итоге целых шесть основных конфигураций экрана. Это означает, что если играть по правилам, то нужно сохранять полдесятка ресурсов на одну иконку. Но и это еще не все, ведь некоторые ресурсы имеют несколько различных состояний. Кнопки на панели действий (action bar) имеют два состояния, и это еще куда ни шло, но обычные кнопки их имеют куда больше.

Выходов несколько: можно замучить художника, можно плюнуть на поддержку многих плотностей и надеяться, что система их как-нибудь сама отмасштабирует, а можно воспользоваться тем, что программисты любят делать больше всего: автоматизацией. Есть разные инструменты, которыми можно осуществить это дело. Самым продвинутым, наверное, является Android Asset Studio. Это очень толковый инструмент, но, разумеется, иконки там рисуются только для стандартных случаев, а, если нужно сделать кнопки со своими уникальными стилями, он тут нам не помощник. И вот тут нас выручит поддержка скриптов в небезызвестном инструменте: Adobe Photoshop. Ради того, чтобы упростить весь процесс, ваш покорный слуга для себя написал несколько инструментов на подобный случай и теперь делится ими с читателями. Как их использовать, и как они работают, я и описываю далее. Все исходники лежат на BitBucket, а здесь я расскажу основные моменты и покажу некоторые хитрости работы со скриптами Photoshop, которые могут быть неочевидны начинающим. На всякий случай отмечу, что писал их для Photoshop CS6.
Читать дальше →
Всего голосов 20: ↑19 и ↓1 +18
Комментарии 11

Трубный ребенок: как объединять веб-сервисы в новые инструменты

Время на прочтение 7 мин
Количество просмотров 19K
Отличительная особенность многих веб-приложений в том, что они, практически соответствуя канонам UNIX-way, превосходно выполняют одну функцию, лишь иногда предполагая некоторое ограниченное взаимодействие. Но для того чтобы аналогия была полной, не хватает главного элемента — аналога пайпов, который позволил бы связывать между собой сервисы для получения нового функционала. Мы подобрали инструменты, отлично решающие эту задачу, — различные мэшапы и автоматизаторы, способные связать разрозненные продукты в единое рабочее окружение.



Подробности
Всего голосов 27: ↑22 и ↓5 +17
Комментарии 7

Имплантация беспроводной зарядки Palm в HTC HD2

Время на прочтение 2 мин
Количество просмотров 69K
Для начала лучше ознакомиться с этой статьей habrahabr.ru/post/145622 (упомянутые в ней моменты не рассматриваю).
В ней подробно описано, как установить зарядку в любой мобильный телефон с пластиковой задней крышкой.
С HTC HD2 простого решения нет, так как мешают две проблемы:
— задняя крышка батарейного отсека из металла и под ней совершенно нет места;
— подпаять питание к micro-USB проблематично и связано с разбором телефона (не тривиально для начинающего).

Htc hd2 on base

Вариант решения этих проблем (много фото, трафик)
Читать дальше →
Всего голосов 48: ↑41 и ↓7 +34
Комментарии 55

Недокументированные возможности Microsoft SQL Server: STATISTICS_ONLY, DBCC AUTOPILOT и SET AUTOPILOT

Время на прочтение 4 мин
Количество просмотров 11K
Как известно, оптимизатор запросов SQL Server, для построения оптимального плана выполнения запроса, использует оценку стоимости. SQL Server строит и оценивает множество планов и выбирает среди них план с минимальной стоимостью.

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

Собственно, вопрос заключается в том как создать «гипотетический» индекс? Просто для того, чтобы проверить действительно ли такой индекс будет полезен при выполнении запроса.
Читать дальше →
Всего голосов 18: ↑17 и ↓1 +16
Комментарии 6

Информация

В рейтинге
Не участвует
Откуда
Симферополь, Республика Крым, Россия
Зарегистрирован
Активность