Архив за 11 августа 2016 - 2

Доброго времени суток, любители и профессионалы программирования на микроконтроллерах. Эта статья посвящена портированию библиотеки freemodbus на STM32F100 (тот, что в discovery vl). Да, на habrahabr уже есть подобная статья, но мне она кажется не самой удачной. Буду использовать Modbus RTU в режиме slave. Для успешного портирования библиотеки freemodbus на платформу без операционной системы, необходимо выполнить три шага:

1. прописать файл port.h
2. настроить таймер
3. настроить usart

Итак, план составлен — пора за работу.
Читать полностью »

image

Студия Позитивного Мышления находилась в здании бывшей обувной фабрики недалеко от центра города. Само здание было построено еще в прошлом столетии — основательное, с высокими потолками и широкими большими окнами, оно оказалось непригодно для жилого фонда. Этажи его были разбиты на отдельные студии и офисы гипсокартонными переборками и сдавались в аренду за относительно небольшую плату. Виктор открыл здесь студию несколько лет назад, после того как компания, где он работал прежде, перевела бизнес в другой регион. Отток производства из крупных городов привел к долгожданному улучшению экологии, попутно освободив место для бизнеса. А где теперь шили ботинки с кроссовками и под какой маркой, было не столь существенно. Назвать свой бизнес особенно успешным не мог даже жизнерадостный от природы Виктор, но дела как-то шли, по крайней мере, на аренду и скромную холостяцкую жизнь денег хватало. Правда, в последнее время количество его слушателей неуклонно падало. Об этом явно свидетельствовало расписание в календаре и, как прямое следствие, выручка. Гугл-аналитик бил тревогу и рисовал удручающие графики посещений страницы. Эти знаки свыше подвигли Виктора скрепя сердце оплатить рекламу в гугле, чтобы поднять посещаемость ресурса. Результаты не заставили себя ждать, и после нескольких дней переписки он сформировал новую группу из пяти человек. Первая бесплатная встреча должна была произойти сегодня. Естественно, Виктор к ней тщательнейшим образом подготовился. Результаты первого занятия определяют все, с этим единогласно соглашались все гуру маркетинга. За полчаса до начала занятия он, гладко выбритый, подстриженный, отутюженный (в тех местах, где это было возможно), припарковал свой велик возле входа и теперь расхаживал по студии, критично оглядывая детали и поправляя то слишком ровно стоящий стул, то покосившийся иероглиф в рамочке, а перед статуэткой смеющегося Будды он поставил маленький букетик свежих цветов.
Читать полностью »

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

Ошибки анкетных опросов. 1 ошибка: смещение выборки. 8 способов привлечь нужных респондентов - 1

А значит, материал будет полезен тем, кто проводит исследование пользователей (клиентов, сотрудников, учеников) с помощью анкетных опросов, кто делает это сам, или заказывает такие исследования. Для профессиональных исследователей эта статья будет представлять меньший интерес, чем для любителей.

Читать полностью »

История языков программирования: как Haskell стал стандартом функционального программирования - 1

Теоретические основы императивного программирования были заложены ещё в 30-х годах XX века Аланом Тьюрингом и Джоном фон Нейманом. Теория, положенная в основу функционального подхода, формировалась в 20-х и 30-х годах. В числе разработчиков математических основ функционального программирования — Мозес Шёнфинкель (Германия и Россия) и Хаскелл Карри (Англия), а также Алонзо Чёрч (США). Шёнфинкель и Карри заложили основы комбинаторной логики, а Чёрч является создателем лямбда-исчисления.

Функциональное программирование как раз основано на идеях из комбинаторной логики и лямбда-исчисления.

Но теория так и оставалась теорией, пока в начале 50-х прошлого века Джон МакКарти не разработал язык Lisp (1958), который стал первым почти функциональным языком программирования. На протяжении многих лет у Lisp не было конкурентов. Позднее появились функциональные языки программирования APL (1964), ISWIM (1966) и FP (1977), которые не получили столь широкого распространения.

Со временем Lisp перестал удовлетворять некоторым требованиям разработчиков программ, особенно с ростом объема и сложности программного кода. Читать полностью »

Хотите озадачить начинающего шахматиста?
Попросите его поставить мат конём и слоном.

Хотите озадачить начинающего программиста?
Попросите его рассчитать мат конём и слоном.

image

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

Специалисты аналитической компании IDC попытались спрогнозировать, как будут меняться расходы на общедоступные облачные сервисы в ближайшие годы. По их мнению, в текущем году указанные расходы составят 96,5 млрд долларов, а в 2020 году они достигнут 195 млрд долларов. Другими словами, среднегодовой рост в период с 2015 по 2020 год прогнозируется на уровне 20,4%.

В мире живёт 30 миллионов человек, имеющих проблемы с речью. Для того, чтобы общаться с окружающими, они пользуются языком жестов. А что, если собеседник такого языка не понимает? Как преодолеть языковой барьер? Наш сегодняшний рассказ посвящён проекту распознавания жестов. Плата Intel Edison принимает сведения от датчиков, закреплённых на специальной перчатке, обрабатывает их с использованием метода опорных векторов, узнаёт, какой букве соответствует жест, и отправляет то, что получилось, Android-приложению для озвучивания.

Переводчик с языка жестов: реализация метода опорных векторов на Intel Edison - 1
Intel Edison и перчатка с датчиками: основа системы распознавания языка жестов
Читать полностью »

В сеть утек «золотой ключ» Microsoft от Secure Boot - 1
Surface RT, теперь и с разблокированным загрузчиком!

Microsoft случайно выложила свой «золотой ключ», позволяющий хакерам разблокировать защищенные Secure Boot устройства под управлением Windows. Secure Boot — это часть прошивки UEFI, проверяющая цифровые подписи компонентов загрузчика Windows для защиты от постороннего вмешательства.
Читать полностью »

Я нашел эту статью авторства Alexis Beingessner как наиболее понятное описание системы типов в Rust, и что с ними можно делать. Надеюсь, кому-нибудь этот перевод будет полезен. Не смотрите на то, что вначале описываются очевидные вещи — под конец можно утонуть. Статья огромная и скорее всего будет разобрана на главы. Переведено достаточно вольно. Авторский стиль сохранен. — прим.пер.

(статья написана о Rust 1.7 stable)

В системе типов Rust есть много всякого. Насколько я знаю, практически вся сложность этого всякого заключается в том, чтобы выразить программу в максимально обобщённом виде. Притом народ еще и требует большего! У меня всегда были проблемы с простым пониманием наиболее сложных вещей, потому этот пост скорее напоминалка самому себе. Но тем не менее, мне также нравится делать что-то, полезное другим, поэтому в данной статье также есть вещи, которые я вряд ли забуду, но о которых некоторые могут не знать.

В этой статье не будет исчерпывающего описания синтаксиса или общих деталей описываемых возможностей. Здесь рассказывается, почему происходит так или иначе, так как подобные вещи я всегда забываю. Если вы нашли эту статью в попытках выучить Rust полноценно, вам определенно стоит для начала ознакомиться с Книгой (оригинал вот — прим.пер.). В то же время я здесь буду уточнять некоторые произвольные теоретические аспекты того, что происходит.
Скорее всего, в этой статье полно ошибок, и она не должна претендовать на звание официального руководства. Это просто сборник того, что я накопал за неделю, пока искал новую работу.
Читать полностью »

Компания Samsung Electronics представила на мероприятии Flash Memory Summit 2016 новейшие решения на базе флэш-памяти. В частности, показаны микросхемы флэш-памяти с объемной компоновкой V-NAND четвертого поколения и накопители большого объема.

Новая флэш-память V-NAND включает на 64 слоя — на 30% больше по сравнению с ее предшественницей. Каждая ячейка способна хранить три бита информации. Плотность кристалла составляет 512 Гбит, а поддерживаемая им скорость передачи данных достигает 800 Мбит/с. Эти параметры являются рекордными для отрасли. В серийных изделиях новая память начнет появляться уже в следующем квартале.


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js