Как стать автором
Обновить
2
0
Алексей @Alexus1024

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

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

Powershell и глубина стека

Время на прочтение6 мин
Количество просмотров7.9K
Как разработчик, я часто разрабатываю скрипты развертывания. В одном из проектов передо мной возникла задача автоматизировать развертывание проекта, которое состояло из нескольких десятков заданий, с возможностью настраивать состав разворачиваемых на стенд компонентов.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии2

Обзор умного тонометра QardioArm: измеряем давление и пульс быстро и без проблем

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


У большинства читателей Geektimes при упоминании термина «измерение кровяного давления», вероятно, перед глазами сразу возникает врач в белом халате и привычный многим тонометр с резиновой грушей, при помощи которой в систему нагнетается воздух. Есть, конечно, и более современные устройства, которые сами проводят все необходимые измерения, выводя результат на экранчик.

Но есть и более элегантный способ измерить давление крови, который позволяет задействовать привычные современному пользователю инструменты — мобильный телефон и приложение. Речь идет об умном тонометре QardioArm, который наши ребята в Madrobots испытывали на прочность функциональность.
Читать дальше →
Всего голосов 17: ↑13 и ↓4+9
Комментарии38

Управление разработкой программного продукта на основе рисков

Время на прочтение10 мин
Количество просмотров28K
image
Эта статья адресована тем, кто имеет отношение к разработке программного продукта. Понимание принципов управление процессом разработки не менее важно, чем фактические знания технологий программирования. Статья не адресована только тем, кто хочет стать или работает руководителем проекта (Project Manager), Понимание принципов управления принесет пользу на любой должности и в любой команде.
Читать дальше →
Всего голосов 16: ↑13 и ↓3+10
Комментарии14

Пишем maintainable код

Время на прочтение8 мин
Количество просмотров47K
У нас сотни программных проектов на поддержке, некоторые из них поддерживаются нами почти десять лет. Нетрудно догадаться, что понятие maintainable кода (переведу это понятие как код, легкий в поддержке) является у нас одним из основных. По счастливому стечению обстоятельств легкий в поддержке код также является и легким для (unit-)тестирования, легким для освоения новыми членами команды и т.д. Скорее всего, это связано с тем, что для создания maintainable кода приходится озаботиться хорошей архитектурой проекта и завести несколько хороших привычек.
В этой статье и поговорим о таких привычках, благодаря которым часто хорошая архитектура получается сама собой. Постараюсь также иллюстрировать все хорошими примерами.

Читать дальше →
Всего голосов 58: ↑52 и ↓6+46
Комментарии202

NFX — Ультраэффективная Бинарная Сериализация в CLR

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

Требования


В данной статье мы рассмотрим задачи переноса сложных объектов между процессами и машинами. В наших системах было много мест, где требовалось перемещать большое кол-во бизнес объектов различной структуры, например:

  • самозацикленные графы объектов (деревья с back-references)
  • массивы структур (value types)
  • классы/структуры с readonly полями
  • инстансы существующих .Net коллекций (Dictionary, List), которые внутренне используют custom-сериализацию
  • большое кол-во инстансов типов, специализированных для конкретной задачи


Речь пойдёт о трёх аспектах, которые очень важны в распределённых кластерных системах:

  • скорость сериализации/десериализации
  • объём объектов в сериализированном виде
  • возможность использовать существующие объекты без надобности “украшения” этих объектов и их полей вспомогательными атрибутами для сериализации

Читать дальше →
Всего голосов 24: ↑19 и ↓5+14
Комментарии40

Лекции Техносферы. 1 семестр. Методы использования СУБД в интернет-приложениях

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


Сегодня мы предлагаем вашему вниманию очередную публикацию в рамках постоянной рубрики «Лекции Техносферы». В этот раз вы можете изучить материалы по курсу «Методы использования СУБД в интернет-приложениях». Цель курса — изучение топологии, многообразия и основных принципов функционирования систем хранения данных, а также алгоритмов, заложенных в основу как централизованных, так и распределённых систем, демонстрация фундаментальных компромиссов присущих тем или иным решениям. Преподаватели курса: Константин Осипов kostja, Евгений Блих bigbes, Роман Цисык.
Читать дальше →
Всего голосов 36: ↑32 и ↓4+28
Комментарии2

Построение признаков и сравнение изображений: локальные признаки. Лекции от Яндекса

Время на прочтение27 мин
Количество просмотров17K
Сегодня мы публикуем пятую лекцию из курса «Анализ изображений и видео», прочитанного Натальей Васильевой в петербургском Computer Science Center, который создан по совместной инициативе Школы анализа данных Яндекса, JetBrains и CS-клуба. Всего в программе девять лекций, из которых уже были опубликованы:

  1. Введение в курс «Анализ изображений и видео».
  2. Основы пространственной и частотной обработки изображений.
  3. Морфологическая обработка изображений.
  4. Построение признаков и сравнение изображений: глобальные признаки.



Под катом вы найдете план этой лекции, слайды и подробную расшифровку.
Читать дальше →
Всего голосов 38: ↑35 и ↓3+32
Комментарии1

Codie — умный робот, обучающий детей программированию

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


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

Но почему не обратить эту привязанность к гаджетам в полезное русло, и не попробовать обучить ребенка основам программирования посредством игры? Codie — симпатичный робот, который может научить ребенка основам программирования без всяких проблем
Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии1

Справочник методов console в JS

Время на прочтение6 мин
Количество просмотров34K
Со времён систематизации методов объекта console прошло достаточно много времени, некоторые браузеры получили поддержку недостающих ранее методов. Таблица вызывает естественный интерес у разработчиков, поэтому — почему бы её не обновить, дополнив в одной статье описаниями? Github.
Читать дальше →
Всего голосов 44: ↑40 и ↓4+36
Комментарии12

Взгляд с ультрафиолетовой стороны или проблемы загара

Время на прочтение2 мин
Количество просмотров89K
Я думаю, что многие из нас слышали, что проводить много времени на солнце вредно. Конечно, нежно-золотистый оттенок кожи для многих привлекательнее белоснежного варианта, но нужно четко понимать, что все не так просто. Если вы от природы светлокожи, то ультрафиолетового облучения вам нужно максимально избегать. В противном случае, «бонусом» к загару будут фотостарение кожи, увеличенный риск меланомы и прочие «радости».

Thomas Leveritt, английский художник смог наглядно продемонстрировать, что происходит с нами из-за ультрафиолетовых лучей. В работе использовалась специальная камера, оптическая система которой прозрачна для ультрафиолета. Подобная оптика крайне дорого стоит, так как объективы должны быть изготовлены из особого кварцевого стекла.


на 2:50 хорошо видно отличие фотокомпозитных пломб в разном спектре. У девушки практически не виден материал из которого она сделана. Обратите внимание на правый центральный резец в обычном и UV-спектре
Читать дальше →
Всего голосов 93: ↑81 и ↓12+69
Комментарии82

Айтишник на отдыхе: добавим немного астрономии?

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

Стремительно приближается лето и сопутствующие ему выезды на природу. Посиделки затягиваются заполночь, и над головой появляются звезды. Но, как правило, зведное небо таинственно и непонятно — астрономию в школах не преподают толком, наверное, уже с конца 80-х, да и кто помнит, чему его учили в школе, если это не использовалось в жизни постоянно? А в небе хватает интересного, особенно если потратить чуть-чуть времени на астрономическое обеспечение выезда на природу.
Читать дальше →
Всего голосов 107: ↑104 и ↓3+101
Комментарии81

Mars One объявили о начале кампании по сбору средств

Время на прочтение4 мин
Количество просмотров44K
10 декабря 2013 года так полюбившийся нам амбициозный проект Mars One объявил о старте кампании по сбору средств.

Как сообщают участники проекта, средства, привлечённые кампанией, должны будут обеспечить исследования и разработку, необходимые для запуска первой непилотируемой стационарной платформы. Её целью будет изучение грунта. Напомним, сам запуск запланирован на 2018 год.
Также в сообщении говорится о том, что проектированием первой миссии занимается компания Lockheed Martin. Эта организация уже успела внести весомый вклад в исследование космоса.
Под катом — разбор бонусов и поощрений, которые нам предлагают авторы проекта, а также озвученное видеообъявление.

Поехали!
Всего голосов 52: ↑47 и ↓5+42
Комментарии66

Краткая история освоения космоса

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


За последние пол года на хабре появилось заметное количесво первоклассных постов о космосе, начал пожалуй Zelenyikot нашедший на марсе станцию Марс-3, продолжили Kamalesh, jeston, Sulentium и @DaryaZ. Некоторый итог подвелlozga, но мне кажется все эти посты несколько поверхностны и не отражают того уровня, который достигла наша космонавтика. По этому я собрался духом и написал очень длинный пост о подлинной истории освоения космоса — думаю приведенные мной факты позволят многим по-новому взглянуть на саму тему космоса. Писал сжато, по этому за пояснениями прошу в каменты.

Существует известный парадокс – если вы находитесь внутри космического корабля летящего почти со скоростью света, время для вас замедляется. Такому кораблю нужно всего 25 лет, чтобы достигнуть видимого края вселенной, правда для оставшихся на земле эти два десятилетия растянутся в 14 миллиардов лет.

То же самое с техническим прогрессом. Прогресс это ударная волна, сметающая все на своем пути как цунами – если сегодня человек додумался напялить на себя шкуру, то завтра он будет прыгать в скафандре по луне – в чем разница-то?

Но внутри этой волны, на борту «прогресса» всегда будет казаться будто мы ползем как черепахи. Положа руку на сердце – кто из нас считает СССР лучшим в мире государством всю свою историю делавшим невозможное?

Гагарин, спутник, луноход – избитые штампы. Вроде футболок с че Геварой. Космос превратился в скучную рутину – сейчас на орбите постоянно находятся десятки людей и никому до них нет дела. Но покорение космоса – возможно самая захватывающее путешествие в истории человечества. Захватывающая, если знать подлинную историю, а не пропагандистскую картинку в телевизоре.



Читать дальше →
Всего голосов 432: ↑262 и ↓170+92
Комментарии371

Жизнь разработчика (в картинках)

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

Когда я показываю босу, что окончательно пофиксил баг



Когда проджект-менеджер входит в офис



Читать дальше →
Всего голосов 884: ↑700 и ↓184+516
Комментарии132

Смелый стайлгайд по AngularJS для командной разработки [2/2]

Время на прочтение6 мин
Количество просмотров23K
Первая часть перевода тут.

После прочтения Google's AngularJS Guidelines, у меня создалось впечатление о его незавершённости, а ещё в нём часто намекали на профит от использования библиотеки Closure. Ещё они заявили, «Мы не думаем, что эти рекомендации одинаково хорошо применимы для всех проектов, использующих AngularJS. Мы будем рады видеть инициативу от сообщества за более общий стайлгайд, применимый как для небольших так и крупных проектов».

Отталкиваясь от личного опыта работы с Angular, нескольких выступлений, а также имеющемуся опыту командной разработки, представляю Вашему вниманию этот смелый стайлгайд по синтаксису, написанию кода и структуре приложений на AngularJS.
Читать дальше →
Всего голосов 22: ↑20 и ↓2+18
Комментарии29

Создание пользовательских миграционных операций в Entity Framework 6

Время на прочтение12 мин
Количество просмотров9.4K
Миграции в Entity Framework (EF) представляют собой строго типизированный подход для выполнения распространенных операций, таких как создание, изменение и удаление таблиц, столбцов, индексов, и т.д. Однако реализация базовых операций достаточно ограничена и не поддерживает весь спектр параметров, которые поддерживает та или иная СУБД.

До EF 6, единственным способом обхода данного ограничения было использование операции Sql, которая позволяет выполнить произвольную команду SQL при выполнении миграции. В EF 6 также появилась возможность реализации пользовательских строго типизированных операций.
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии4

Разработан алгоритм, эффективно удаляющий из видео все «скучные» фрагменты

Время на прочтение2 мин
Количество просмотров18K
Приходилось ли вам, перейдя по ссылке на интересный видеоролик на Youtube, обнаруживать, что ради нескольких секунд, где действительно происходит что-то интересное, вы только что потратили нескольк минут на созерцание совершенно бесполезного «мусора» только потому, что автор видео выложил целиком файл с видеорегистратора или смартфона? Количество видеокамер стремительно растёт, а количество людей, способных хотя бы обрезать пару лишних фрагментов, похоже, остаётся постоянным. И проблема не только в нескольких минутах убитого в интернете времени — ведь есть и более серьёзные случаи, например, десятки и сотни часов видео с камер наблюдения, которые иногда приходится просматривать, чтобы раскрыть преступление.

Учёные из университета Карнеги-Меллон разработали эффективный алгоритм выделения наиболее интересных фрагментов видео на основе машинного обучения. Новый алгоритм, названный ими «LiveLight» значительно превосходит аналоги по скорости и качеству работы. LiveLight выделяет характерные фрагменты видео и сотавляет их «словарь», а затем пытается предсказать на их основе следующий кадр. Если это удаётся с достаточной степенью точности, то это значит, что кадр не добавляет практически никакой новой информации и его можно исключить. В отличие от «механических» подходов, реагирующих на любое движение в кадре либо резкое изменение яркости, цвета или контраста, LiveLight достаточно универсален — он хорошо работает и на видео, снятым неподвижной камерой, и на любительской съемке трясущимся смартфоном.


Читать дальше →
Всего голосов 62: ↑53 и ↓9+44
Комментарии36

Linq-подобный синтаксис для knockout

Время на прочтение3 мин
Количество просмотров4.8K
Прошел год с тех пор, как наша команда разрабатывает web portal используя паттерн MVVM и фреймворк Knockout в частности. Понемногу копился опыт, появлялись различные решения, хорошие и плохие практики, и вот, так сказать, назрело. Для linq-синтаксиса в javascript уже существует библиотека linq.js, и долгое время мы думали, затянуть ли ее к нам в проект. И даже примеры использования вкупе с knockout в интернетах есть.
Идея же, которая меня постигла, была в том, чтобы создание computed инкапсулировать внутрь Linq-методов.
Для сравнения, код из fiddle:
    this.filteredItems = ko.computed(function() {
        var term = this.searchTerm();
        
        return this.items.where(function(item) { 
            return item.name.indexOf(term) > -1; 
        });
    }, this);

и код, который хотелось бы писать вместо этого:
    this.filteredItems = this.items
        .Where(function(item) { return item.name.indexOf(this.searchTerm()) > -1; });

Читать дальше →
Всего голосов 21: ↑17 и ↓4+13
Комментарии9

Конспект по веб-безопасности

Время на прочтение3 мин
Количество просмотров65K
Простите, но накипело.
Много шишек уже набито на тему безопасности сайтов. Молодые специалисты, окончившие ВУЗы, хоть и умеют программировать, но в вопросе безопасности сайта наступают на одни и те же грабли.

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


Итак, каким должен быть безопасный сайт?

Читать дальше →
Всего голосов 120: ↑104 и ↓16+88
Комментарии163

Почему в России почти нет гражданского/коммерческого высокотехнологичного производства?

Время на прочтение27 мин
Количество просмотров408K
Статью с обзором ситуации с микроэлектроникой в России я закончил утверждением, что сейчас в России есть технические возможности для создания любых военных микросхем (если не считаться с ценой). Однако и в комментариях к той статье, и во многих других — всех больше волновал вопрос отсутствия (на уровне погрешности измерений) производства чисто-коммерческих (гражданских) высокотехнологичных продуктов. Этот вопрос волновал и меня, потому я постоянно мучил вопросами всех, кто так или иначе связан с высокими технологиями и бизнесом в России.

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

Под катом попробуем разобраться чем отличаются «высокотехнологичные» компании от «низкотехнологичных», что нужно, чтобы высокотехнологичные компании могли рождаться и выживать, почему с софтом у нас лучше, чем с хардом, с чего начиналась кремниевая долина в США и можно ли её «скопировать», почему Китай всех рвет, а также — окинем взором все, что происходит в Сколково, Роснано, фонде перспективных исследований и приведут ли они к расцвету российских инноваций. Безусловно, я где-то могу ошибаться — буду рад дополнениям в комментариях.

Сразу нужно отметить, что в связи с многогранностью проблемы объем статьи получился довольно большой, так что можно начать читать с резюме в конце, и затем прочитать лишь те разделы, которые вызовут интерес. Сразу хочу предупредить — повествование «нелинейное», соседние заголовки могут описывать разные аспекты проблемы и быть друг с другом практически не связанными.
Читать дальше →
Всего голосов 389: ↑380 и ↓9+371
Комментарии304
1

Информация

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