Pull to refresh
0
0
Кулаков Дмитрий @leto

User

Send message

Автономный программатор SWD

Level of difficultyHard
Reading time13 min
Views11K

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

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

Читать далее
Total votes 28: ↑28 and ↓0+28
Comments24

Как хакнуть себе голову? Эффективно переключаем состояния на примере IT-специалистов

Level of difficultyMedium
Reading time23 min
Views49K

Разработчик Вася не смог включиться в работу утром. Потом еще был эмоциональный митинг с заказчиком, после которого снова активировалась прокрастинация. В итоге вместо восьми запланированных часов работы — три. Вася понимает, что дома придется доделывать рабочие задачи, и потому он снова забьет на свое (постоянно откладываемое) обучение.

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

Как мы подобрали эти решения и почему именно они? В целом, подобных приемов есть около четырех десятков, а конкретных техник – и того больше. Чтобы выйти на конкретные действия, которые нужны именно вам, мы создали простой инструмент, описанный далее в статье.

Читать далее
Total votes 21: ↑12 and ↓9+3
Comments13

От гордыни до отчаяния: четыре ошибки в продуктовом мышлении

Reading time4 min
Views6.3K
image

Хороший продакт всегда думает о проблемах пользователя, интересах компании и о том, что надо сделать, чтобы обе стороны были довольны. Это и есть продуктовое мышление. Оно помогает принимать решения и находить точки роста. Но даже у опытных менеджеров бывают слепые зоны — незаметные ловушки, которые приводят к ошибкам. Спикер курса Product Owner Weekend Алексей Авдей — директор сайта sberbank.ru, ранее — Chief Product Officer «ЦИАН» и руководитель Яндекс.Маркета, перечислил типичные ошибки на каждом из этапов жизни продукта и рассказал, как с ними бороться.
Читать дальше →
Total votes 14: ↑12 and ↓2+10
Comments0

Нужные HTTP-заголовки

Reading time5 min
Views44K
Наши клиенты в Fastly любят манипулировать заголовками HTTP. Подбор правильной комбинации заголовков — одна из лучших вещей, какую вы можете сделать для безопасности своего сайта и значительного вклада в его производительность.

Большинство разработчиков знают о важных и нужных HTTP-заголовках. Самые известные — Content-Type и Content-Length, это почти универсальные хедеры. Но в последнее время для повышения безопасности начали использоваться заголовки вроде Content-Security-Policy и Strict-Transport-Security, а для повышения производительности — Link rel=preload. Несмотря на широкую поддержку в браузерах, лишь немногие их используют.

В предыдущей статье мы рассмотрели ненужные заголовки. Сейчас разберёмся, какие заголовки действительно следует настроить для своего сайта.
Читать дальше →
Total votes 29: ↑29 and ↓0+29
Comments5

Стрелочные LED-часы для обучения пайке SMD компонентов

Reading time4 min
Views25K
Последний год в нашем хакспейсе параллельно развиваются несколько проектов, которые время от времени порождают на этот свет новые железки, прежде всего, образовательного характера.

В этой статье я расскажу об одной такой интересной штуковине, которую мы сделали некоторое время назад. Это набор для обучения SMD пайке — LED часы. Под катом подробное описание набора, причины появления, и видеоурок по SMD пайке!

image
Читать дальше →
Total votes 48: ↑47 and ↓1+46
Comments134

Где и как изучать машинное обучение?

Reading time2 min
Views76K

Всем привет!


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

Путь для развития новичка я вижу примерно так:

Untitled_presentation
Читать дальше →
Total votes 47: ↑44 and ↓3+41
Comments19

Тренды онлайн-образования: опыт TED, LinguaLeo, Knewton и других

Reading time5 min
Views20K


То, что сегодня стало большим и зрелым рынком цифровых технологий, строилось руками энтузиастов-самоучек. Пятнадцать-двадцать лет назад дизайну сайтов никто не учил, а вузы не выпускали программистов со специализацией в вебе. Сегодня порог входа существенно ниже, во многом благодаря доступности образования: в интернете полно онлайн-курсов. И это хорошо (если не вестись на всякие «стань C++ программистом за три дня и получай 200К»).

Мы собрали свой топ-5 трендов в онлайн-образовании (да и в обучении вообще), которые кажутся нам особенно важными. В конце статьи — опрос, надеемся, что вы согласитесь поучаствовать и отметить, какие тренды кажутся вам самыми актуальными.
Total votes 48: ↑45 and ↓3+42
Comments12

Самая сложная программа

Reading time5 min
Views127K
От переводчика: я нашел на Quora вопрос: Какую программу или код можно назвать самыми сложными из когда-либо написанных? Ответ одного из учасников был настолько хорош, что вполне тянет на статью.

Пристегни ремни.

Самая сложная программа в истории была написана командой людей, имена которых нам неизвестны.

Это программа – компьютерный червь. Червь был написан, судя по всему, между 2005 и 2010 годами. Поскольку этот червь является таким сложным, я могу дать лишь общее описание того, что он делает.
Читать дальше →
Total votes 174: ↑158 and ↓16+142
Comments272

Не так страшен чёрт, как его описывают, или как я сдавал экзамен на CISSP

Reading time6 min
Views11K
CISSP (Certified Information Security Systems Professional) относится к “золотому стандарту” в индустрии безопасности и давно входит в топы IT сертификаций.

Сложность сертификации


Изначальные требования для прохождения сертификации достаточно высоки, возможно, поэтому это многих отпугивает: минимум 5 лет подтвержденного опыта в области безопасности как минимум в 2 из 8 доменов, которые покрывает CISSP (о доменах ниже).

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

Все эти сложности сказываются на качестве и ценности самой сертификации.

У нас всё ещё смотрят «сквозь пальцы» на подобные сертификаты, хотя за рубежом это часто является необходимым условием для высокой технической должности. Возможно, сервисная модель ведения бизнеса подпортила отношение к сертификации, как к постоянному росту — новые функциональные формы часто предпочтительнее нефункциональных атрибутов систем, включая безопасность.
Читать дальше →
Total votes 24: ↑24 and ↓0+24
Comments11

Лучшие методики проектирования производительных мобильных API

Reading time11 min
Views14K


В сети есть множество информативных статей о высокой производительности на мобильных устройствах, и столько же об общем проектировании API. Но очень мало обсуждаются архитектурные решения, необходимые для оптимизации производительности бэкендных API, предназначенных для использования мобильными клиентами.
Читать дальше →
Total votes 30: ↑27 and ↓3+24
Comments3

Марвин Мински «The Emotion Machine»: Глава 3 «Как пользоваться эмоциями»

Reading time10 min
Views4.2K
Отец искусственного интеллекта размышляет о том, как сделать машину, которая бы гордилась нами. Марвин Мински был довольно жестким ученым и то, что он своим «скальпелем познания» исследует тему чувств и эмоций, что же делает нас людьми, довольно интересно и полезно. Книга — отличный образец того, как «ИТишным подходом» попробовать осмыслить «человеческое»: ценности, идеалы, любовь, боль, здравый смысл.

image


§3-8. Эксплуатация Эмоций


Что бы вы ни пытались предпринять самостоятельно, у вашего мозга могут быть совершенно другие планы.

Я пытался работать над технической теорией, но постоянно засыпал. Затем я представил, что мой соперник, профессор Челенджер, собирается разработать точно такую же технику. Это вызвало всплеск злобного разочарования, которое блокировало на пару мгновений желание спать, позволяя мне дальше работать.

Фактически, Челенджер не делал ничего похожего: он работал в совершенно другой области. Но он также был моим близким другом, и мы недавно спорили. Таким образом, он был отличным кандидатом, когда мне был необходим какой-нибудь объект, на который нужно было разозлиться. Теперь составим теорию, почему вышеописанный трюк сработал.

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

Читать дальше →
Total votes 12: ↑10 and ↓2+8
Comments2

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

Reading time13 min
Views28K


Самый исчерпывающий кейс, объясняющий, почему в современной «экономике знаний» почти каждый должен стать энциклопедистом.

«Мастер на все руки, а толком ничего не умеет».

Предостережение против универсализма сохранилось в многовековой истории десятков языков. «У него каких только ножей нет — и ни одного острого», — предупреждают китайцы. А в Эстонии есть поговорка «девять ремесел, и голод — десятое».

Однако, многие из наиболее неординарных личностей — как живших в прошлом, так и наших современников — были универсалами: таковы Илон Маск, Стив Джобс, Ричард Фейнман, Бенджамин Франклин, Томас Эдисон, Леонардо да Винчи и Мария Кюри — список далеко не полон.

В чем же здесь дело?

Если попытка универсализма — путь к посредственности, то почему наиболее исчерпывающее исследование о самых видных ученых в истории показало, что 15 из 20 были энциклопедистами? Ньютон. Галилей. Аристотель. Кеплер. Декарт. Гюйгенс. Лаплас. Фарадей. Пастер. Птолемей. Гук. Лейбниц. Эйлер. Дарвин. Максвелл — все энциклопедисты.

Если пытаться делать все сразу так неэффективно, то почему основатели пяти крупнейших компаний в мире – Билл Гейтс, Стив Джобс, Уоррен Баффетт, Ларри Пейдж и Джефф Безос – все энциклопедисты (а также придерживаются «правила пяти часов»)? Эти легендарные люди – просто гениальные исключения? Либо это люди, которым мы могли бы (и должны) подражать, чтобы достичь успеха в современной «экономике знаний»?

Если стремление к универсализму – неэффективная карьерная стратегия, то почему более 10 академических исследований выявили корреляцию между количеством интересов/компетенций, которые удалось развить человеку, и его творческим потенциалом?

Переведено в Alconost
Читать дальше →
Total votes 26: ↑19 and ↓7+12
Comments25

Ричард Хэмминг: Глава 15. Цифровые фильтры — 2

Reading time14 min
Views6.7K
«Цель этого курса — подготовить вас к вашему техническому будущему.»

imageПривет, Хабр. Помните офигенную статью «Вы и ваша работа» (+219, 2372 в закладки, 375k прочтений)?

Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Мы ее переводи, ведь мужик дело говорит.

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

Мы уже перевели 17 (из 30) глав. И ведем работу над изданием «в бумаге».

Глава 15. Цифровые фильтры — 2


(За перевод спасибо Пахомову Андрею, который откликнулся на мой призыв в «предыдущей главе».) Кто хочет помочь с переводом — пишите в личку или на почту magisterludi2016@yandex.ru

Когда цифровые фильтры только появились, они рассматривались как разновидность классических аналоговых фильтров; люди не рассматривали их как-что то принципиально новое и отличающееся от уже существующего. Точно такая же ошибка была распространена во время появления первых компьютеров. Мне неустанно твердили, что компьютер — это всего лишь быстрый калькулятор, и все, что может посчитать машина, может посчитать и человек. Это утверждение просто игнорирует различия в скорости, точности, надежности и стоимости между ручным и машинным трудом. Обычно, изменение какой-либо величины на порядок (в 10 раз) приводит к фундаментальным изменениям, а компьютеры во много-много раз быстрее, чем ручные вычисления. Те, кто утверждал, что нет никакой разницы, так и не сделали ничего значимого для развития компьютеров. Те же, кто внес значительный вклад, видели в компьютерах что-то новое, что-то, что следует оценивать совсем другим образом, а не просто как те же самые старые калькуляторы, только может быть чуть-чуть более быстрые.
Читать дальше →
Total votes 16: ↑15 and ↓1+14
Comments0

Ричард Хэмминг: Глава 14. Цифровые фильтры — 1

Reading time16 min
Views14K
«Цель этого курса — подготовить вас к вашему техническому будущему.»


imageПривет, Хабр. Помните офигенную статью «Вы и ваша работа» (+219, 2372 в закладки, 375k прочтений)?

Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Мы ее переводи, ведь мужик дело говорит.

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

Мы уже перевели 16 (из 30) глав.

Глава 14. Цифровые фильтры — 1


(За перевод спасибо Максиму Лавриненко и Пахомову Андрею, которые откликнулись на мой призыв в «предыдущей главе».) Кто хочет помочь с переводом — пишите в личку или на почту magisterludi2016@yandex.ru

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

Большая часть того, что компьютеры обрабатывают, — это сигналы из разных источников, и мы уже обсуждали, почему они часто бывают в виде потока чисел, полученного из системы дискретизации. Линейная обработка, единственная, на которую у меня хватает времени в рамках этой книги, подразумевает наличие цифровых фильтров. Чтобы продемонстрировать, как всё происходит в реальной жизни, сначала я расскажу вам о том, как я стал работать с ними, и далее о том, чем я занимался.
Читать дальше →
Total votes 22: ↑22 and ↓0+22
Comments5

Антипаттерны тестирования ПО

Reading time31 min
Views90K

Введение


Есть несколько статей об антипаттернах разработки ПО. Но большинство из них говорят о деталях на уровне кода и фокусируются на конкретной технологии или языке программирования.

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

Терминология


К сожалению, в тестировании пока не выработали общую терминологию. Если спросить сотню разработчиков, в чём разница между интеграционным, сквозным и компонентным тестом, то получите сто разных ответов. Для этой статьи ограничимся такой пирамидой тестов:


Если не видели пирамиду тестов, настоятельно рекомендую ознакомиться с ней. Вот некоторые хорошие статьи для начала:

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

Ричард Хэмминг: Глава 6. Искусственный интеллект — 1

Reading time16 min
Views4.4K
«Цель этого курса — подготовить вас к вашему техническому будущему.»

imageПривет, Хабр. Помните офигенную статью «Вы и ваша работа» (+219, 2394 в закладки, 380k прочтений)?

Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Мы ее переводим, ведь мужик дело говорит.

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

Мы уже перевели 19 (из 30) глав. И ведем работу над изданием «в бумаге».

Глава 6. Искусственный интеллект — 1


(За перевод спасибо Иванникову Алексею, который откликнулся на мой призыв в «предыдущей главе».) Кто хочет помочь с переводом, версткой и изданием книги — пишите в личку или на почту magisterludi2016@yandex.ru

Рассматривая историю компьютерных приложений, мы обращаем внимание на возможности пределов машин не столько в плане вычислительной сложности, сколько в плане классов задач, которые компьютер сможет или возможно не сможет решать в будущем. Перед дальнейшим рассуждениями необходимо напомнить, что компьютеры оперируют символами, а не информацией; мы не можем просто сказать, не говоря о том, чтобы написать, программу в терминах “информации”. Все мы считаем, что знаем значения слов, но хорошие размышления с вашей стороны убедят в том, что, в лучшем случае, информация — это нечёткая концепция и ей нельзя дать определение, которое можно сконвертировать программе.
Читать дальше →
Total votes 6: ↑5 and ↓1+4
Comments1

Марвин Мински «The Emotion Machine»: Глава 3 «Страдания, боль, горе»

Reading time15 min
Views2.1K
Отец искусственного интеллекта размышляет о том, как сделать машину, которая бы гордилась нами. Марвин Мински был довольно жестким ученым и то, что он своим «скальпелем познания» исследует тему чувств и эмоций, что же делает нас людьми, довольно интересно и полезно. Книга — отличный образец того, как «ИТишным подходом» попробовать осмыслить «человеческое»: ценности, идеалы, любовь, боль, здравый смысл.

image

§3-3 Чувства, Боль и Страдание


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

Что делает боль такой сложной для описания? Это происходит потому что чувства являются слишком простыми и базовыми, и из-за этого о них больше ничего нельзя сказать? Нет, всё обстоит в точности наоборот; в главе §9 будет утверждаться, что чувства являются достаточно сложными процессами, но поскольку у нас так мало представлений о том, как чувства работают, мы можем описать их эффекты только с использованием знакомых нам аналогий.
Читать дальше →
Total votes 8: ↑7 and ↓1+6
Comments1

Алан Кей (и коллективный интеллект Хабра): какие книги формируют мышление тру инженера

Reading time3 min
Views35K
image

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

Ключевой частью инженерии является любовь к тому, чтобы делать вещи, особенно к тому, чтобы делать их сразу же и делать их хорошо. Большая часть инженерии возникла из “tinkering” (aka “hacking”), добавив к этому желания «принципиального проектирования и создания», «целостности» и т. д. Все великие инженеры, которых я знаю лично, имеют глубокие моральные убеждения касательно того, что они делают, и почему это «должно быть сделано как можно лучше». Часть наложения темперамента на науку это своего рода «лабораторная крыса», которая наиболее счастлива, когда она в курсе эксперимента или создания нового экспериментального аппарата.
Total votes 21: ↑20 and ↓1+19
Comments35

Эволюционный дизайн баз данных

Reading time32 min
Views21K


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


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


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

Читать дальше →
Total votes 29: ↑27 and ↓2+25
Comments0

Закон Гей-Люссака, коллоидные растворы и сопромат для идеальных профитролей

Reading time10 min
Views47K

Дополнение: В конце поста есть обновленные рекомендации.

Внесем легкую нотку научного безумия в традиционную кулинарию. Сегодня мы поговорим о некоторых следствиях из уравнения Менделеева-Клайперона и коллапсе газовых пузырей при изменении температуры. А еще затронем особенности молекулярных цепей крахмала и те коллоидные растворы, которые он образует. Просто ковыряться в уравнениях скучно, поэтому совместим приятное с полезным. Создадим идеальный профитроль. Сегодня у нас два основных объекта для изучения — заварное тесто и заварной крем со взбитыми сливками. Естественно, все это безобразие мы будем творить исключительно во славу науки. Ну и заодно разберемся в тех процессах, которые не описываются в кулинарных книгах.

В конце концов, зря я что ли потратил 28 яиц и пару недель на эксперименты?
Читать дальше →
Total votes 137: ↑137 and ↓0+137
Comments151

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity