Pull to refresh
117
0
Пётр Самошкин @AdvanTiSS

User

Send message

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

Reading time2 min
Views19K

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


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


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

Читать дальше →
Total votes 68: ↑58 and ↓10+66
Comments118

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

Reading time6 min
Views17K


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


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


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

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

Reading time5 min
Views24K


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

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

Reading time6 min
Views325K


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

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

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

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

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

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



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

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

Reading time4 min
Views60K
Рад сообщить, что cайт lamptest.ru (он же lamptest.com), над которым мы работали полгода, сегодня заработал в «боевом» режиме.



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

Читать дальше →
Total votes 64: ↑62 and ↓2+60
Comments162

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

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

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



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

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

Reading time7 min
Views8.9K


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

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

Reading time1 min
Views13K
Всем привет!

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

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

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

Всем приятного самообразования.
Total votes 12: ↑11 and ↓1+10
Comments0

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

Reading time10 min
Views288K


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

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

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

Читать дальше →
Total votes 61: ↑58 and ↓3+55
Comments32

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

Reading time3 min
Views130K


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

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

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

Читать далее
Total votes 80: ↑72 and ↓8+64
Comments25

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

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

Читать дальше →
Total votes 159: ↑159 and ↓0+159
Comments172

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

Reading time2 min
Views1.2K


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

Читать дальше →
Total votes 39: ↑38 and ↓1+37
Comments33

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

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

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

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

Читать дальше →
Total votes 76: ↑61 and ↓15+46
Comments46

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

Reading time5 min
Views65K
О работе с Ebay написано много. Зачастую русскоязычные ресурсы описывают российские реалии и большая часть написанного применима к Украине, однако есть нюансы, на которые стоит обратить внимание.
Читать дальше →
Total votes 126: ↑119 and ↓7+112
Comments135

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

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

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

Reading time11 min
Views12K

Предисловие


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

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

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

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



Подробности
Total votes 27: ↑22 and ↓5+17
Comments7

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

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

Htc hd2 on base

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

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

Reading time4 min
Views11K
Как известно, оптимизатор запросов SQL Server, для построения оптимального плана выполнения запроса, использует оценку стоимости. SQL Server строит и оценивает множество планов и выбирает среди них план с минимальной стоимостью.

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

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

Information

Rating
Does not participate
Location
Симферополь, Республика Крым, Россия
Registered
Activity