Search
Write a publication
Pull to refresh
297
0.2
Дмитрий Кашицын @Halt

Программист, линуксоид, паяльник-железячник

Send message

Ещё раз про китайские лампочки: всё очень плохо

Reading time2 min
Views100K
Я уже несколько раз писал о том, что по неизвестным причинам в китайских интернет-магазинах нет хороших светодиодных лампочек. Совсем нет.

При этом почти все приличные светодиодные лампы, которые можно купить в России, производятся в том же самом Китае.

Однажды в комментариях к моей статье о плохих китайских лампочках-свечках один из комментаторов написал: «Я отцу взял эти 5w. В люстре у него 15 штук. Доволен выше крыши и ещё попросил 15 штук.»

Я не пожалел кровных пяти долларов и решил проверить, заказав две лампочки.



Читать дальше →

Как распознать кракозябры?

Reading time1 min
Views433K
В комментариях к предыдущему посту про иероглифы сказали, что хорошо бы иметь такую же блок-схему для кракозябр.

Итак, вуаля!


За источник информации была взята статья из вики. В блок-схеме «UTF-16 → CP 866» означает, что исходная кодировка была «UTF-16», а распозналась она как «CP 866».

Как всегда — кликабельно. Исходник в .docx: здесь.

Задача коммивояжера методом Литтла на C++

Reading time8 min
Views30K
Обучаясь в университете, каждому приходилось делать разного рода задачи. Вот, наступает конец полугодия, сессия на носу, начало выдачи курсовых заданий и мне посчастливилось стать тем, кто должен реализовать метод Литтла для задачи коммивояжера. Итак начнем.

Кто такой коммивояжер? Коммивояжер — это разъездной торговый агент какой-либо фирмы, предлагающий покупателям товары по образцам и каталогам. Его задача объездить все пункты назначения, не побывав ни в одном дважды и вернуться в точку старта.

image

Читать дальше →

Победы в конкурсах программирования негативно коррелируют с успехами в работе

Reading time1 min
Views28K
Если вы хотите построить успешную карьеру в сфере разработки ПО, ни в коем случае не увлекайтесь спортивным программированием и участием в конкурсах.

Такой вывод следует из беспристрастной статистики и дата-майнинга рабочих показателей сотрудников Google, рассказал Питер Норвиг в лекции, прочитанной 26 марта 2015 года в Венском техническом университете.


Читать дальше →

50 оттенков Go: ловушки, подводные камни и распространённые ошибки новичков

Reading time44 min
Views237K


Go — простой и забавный язык. Но в нём, как и в любых других языках, есть свои подводные камни. И во многих из них сам Go не виноват. Одни — это естественное следствие прихода программистов из других языков, другие возникают из-за ложных представлений и нехватки подробностей. Если вы найдёте время и почитаете официальные спецификации, вики, почтовые рассылки, публикации в блогах и исходный код, то многие из подводных камней станут для вас очевидны. Но далеко не каждый так начинает, и это нормально. Если вы новичок в Go, статья поможет сэкономить немало часов, которые вы бы потратили на отладку кода. Мы будем рассматривать версии Go 1.5 и ниже.
Читать дальше →

Распределенная файловая система GFS (Google File System)

Reading time14 min
Views28K
В настоящее время, в условиях роста информации, возникают задачи хранения и обработки данных очень большого объема. Поэтому эти данные обрабатывается сразу на нескольких серверах одновременно, которые образуют кластеры. Для упрощения работы с данными на кластерах и разрабатывают распределенные файловые системы. Мы подробно рассмотрим пример распределенной файловой системы Google File System, используемую компанией Google. (Статья является, фактически, вольным и урезанным переводом оригинальной статьи ).
Читать дальше →

Как работает Git

Reading time19 min
Views153K
В этом эссе описана схема работы Git. Предполагается, что вы знакомы с Git достаточно, чтобы использовать его для контроля версий своих проектов.

Эссе концентрируется на структуре графа, на которой основан Git, и на том, как свойства этого графа определяют поведение Git. Изучая основы, вы строите своё представление на достоверной информации, а не на гипотезах, полученных из экспериментов с API. Правильная модель позволит вам лучше понять, что сделал Git, что он делает и что он собирается сделать.

Текст разбит на серии команд, работающих с единым проектом. Иногда встречаются наблюдения по поводу структуры данных графа, лежащего в основе Git. Наблюдения иллюстрируют свойство графа и поведение, основанное на нём.

После прочтения для ещё более глубокого погружения можно обратиться к обильно комментируемому исходному коду моей реализации Git на JavaScript.
Читать дальше →

Методы удаленного доступа к Linux GUI

Reading time11 min
Views361K
В службу технической поддержки RUVDS регулярно обращаются по поводу GUI и удаленного доступа к нему на виртуальных серверах с Linux, несмотря на то что в интернете достаточно много материалов освещающих эту проблему. Поэтому, для наших пользователей мы решили собрать всё по этой теме в одну статью.


Читать дальше →

Для любителей ПЛИС-ов, ASIC-ов, архитектуры и микроархитектуры — еще про семинары и про конвейеры

Reading time3 min
Views7.6K
Коллеги: как вы возможно уже знаете, компания Imagination Technologies (известная как разработчик GPU внутри Apple iPhone + продолжатель культового проекта Стенфорд/MIPS) вместе с РОСНАНО+МИСиС+МГУ+МФТИ+МИЭТ в Москве, ИТМО в Питере и киевских активистов из КПИ и КГУ — проводит серию семинаров по разработке микросхем и программированию встроенных микропроцессоров. Самый ближайший из этих семинаров будет уже на следующей неделе (18-20 октября в Алма-Ате). В этом посте — текущее почасовое расписание семинаров и немножко эстетичных изображений конвейеров встроенных микропроцессорных ядер, о длине, максимальной частоте и энергопотреблении которых мы немножко поговорим во время семинаров.



Итак расписания:
Читать дальше →

PubPeer как инструмент анонимной экспертной оценки

Reading time10 min
Views9K


С 2012 года интернет-форум PubPeer выполняет роль 4chan для науки, позволяя каждому размещать анонимные комментарии по поводу научных исследований. Изначально он предназначался для обсуждения методов и результатов, но теперь стал одним из самых известных информационно-аналитических центров для обвинений в научных ошибках, подделках и недостойном поведении. Благодаря ему журналы выпускали исправления, отзывали материалы, рушили карьеры, и в конечном итоге вовлекли сайт в судебное разбирательство, где его адвокатами выступала команда из объединения американских прав человека [American Civil Liberties Union, ACLU], работавшая с Эдвардом Сноуденом.

Критики считают, что PubPeer поддерживает нецензурируемый поток безответственных обвинений. Но сторонники говорят, что PubPeer – возможно, единственный эффективный способ разоблачения ошибок и фальшивок в текущей научной системе. Он работает во время тихого кризиса науки и научных журналов, когда сообщество волнуют проблемы неповторимости результатов – т.н. "кризис воспроизводимости", а количество отозванных работ возрастает. Традиционная система экспертных оценок не справляется с этими проблемами.
Читать дальше →

300 потрясающих бесплатных сервисов

Reading time11 min
Views1.6M


Автор оригинальной статьи Ali Mese добавил ещё 100 новых бесплатных сервисов. Все 400 потрясающих сервисов доступны здесь. И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные Веб-Сайты + Логотипы + Хостинг + Выставление Счета

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly.com Domain: Конструктор веб-сайтов.
  • Logaster: Онлайн генератор логотипов и элементов фирменного стиля (new).
  • Withoomph: Мгновенное создание логотипов (англ.).
  • Hipster Logo Generator: Генератор хипстерских логотипов.
  • Squarespace Free Logo: Можно скачать бесплатную версию в маленьком разрешении.
  • Invoice to me: Бесплатный генератор счета.
  • Free Invoice Generator: Альтернативный бесплатный генератор счета.
  • Slimvoice: Невероятно простой счет.

Читать дальше →

Toyota: 81 514 нарушений в коде

Reading time5 min
Views105K


Люди: — Эй, Тойота, мы тут посчитали, у вас из-за корявой электроники и софта 89 человек погибло с 2000 по 2010.
Тойота: — Да они сами виноваты, путают педали.
Люди: — Хьюстон, у нас проблемы.
NASA: — Ща разберемся, нам надо 10 месяцев и 3 миллиона долларов.
Люди: — На.
Тойота: — 3 миллиона мало, вот вам еще сверху кэшем.
(прошло 10 месяцев)
NASA: — Эй, Тойота, мы у вас пару ошибок в коде нашли, а точнее 7134 нарушения стандартов MISRA, рекурсию, функцию на 740 строк и 9000 глобальных переменных.
Тойота: — А у нас свои стандарты. А вы ваще на Луну летали?
NASA (публично): — Тойота ни в чем не виновата.
(Акции Тойота подскочили на 4,6%)
Люди: — Ну ё-моё.
(спустя 3 года)
Два американских тестировщика (у которых дедушки погибли в Перл-Харбор): — Нет багов? А если найдем?

Лекарства от радиации в чрезвычайных ситуациях

Reading time13 min
Views397K
image
Американские учения «Desert Rock» с применением ядерного оружия. 1951 год.

Несмотря на то что человек всегда жил в условиях естественной радиации, с середины прошлого века у него возникла новая радиационная угроза техногенного облучения в чрезвычайных ситуациях. Это может быть ситуация применения атомного оружия, авария на ядерном объекте или террористический акт с применением “грязной” бомбы.

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

Логика сознания. Часть 7. Самоорганизация пространства контекстов

Reading time26 min
Views24K

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

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

Правила трактовки зависят от тех сопутствующих обстоятельств, в которых мы пытаемся дать интерпретацию информации. Эти обстоятельства принято называть контекстом, в котором трактуется информация.

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

Был показан механизм кодирования и хранения информации, который позволяет каждой миниколонке коры иметь свою полную копию памяти о всех предыдущих событиях. Наличие собственной полной памяти позволяет каждой миниколонке проверить, насколько ее интерпретация текущей информации согласуется со всем предыдущим опытом. Те контексты в которых трактовка оказывается «похожа» на что-то ранее знакомое составляют набор смыслов, содержащихся в информации.

Анализ аудио-кодека ROAD

Reading time6 min
Views9.2K
Не так давно на Хабре в статье «Применение нелинейной динамики и теории Хаоса к задаче разработки нового алгоритма сжатия аудио данных» был анонсирован принципиально новый аудио-кодек с пятью невиданными ранее уникальными свойствами. Подобная формулировка вызвала интерес и желание немного разобраться, что к чему.

Далее будут рассмотрены заявленные уникальные свойства и произведено несколько тестовых измерений.
Читать дальше →

Часы на ПЛИС Lattice

Reading time19 min
Views35K
Некоторое время назад, хаброжитель DmitrySpb79 написал статьи о создании электронных часов. В них он рассмотрел источники точного времени, а так-же элементную базу для создания электронных часов. Были упомянуты Arduino, STM, Raspberry PI, ESP8266, но совсем забыли про ПЛИС.

Давайте заполним этот небольшой пробел. Узнаем, на сколько просто сделать часы на ПЛИС и какие аппаратные ресурсы для этого потребуются. К тому же, мне подарили микросхему ПЛИС очень малого объема — 64 макроячейки. Это ПЛИС LC4064v фирмы Lattice с которыми я до этого никогда не работал. Я думаю, будет интересно!

Цели:

  • попытаться уместить логику работы часов в ПЛИС малого размера (64 макроячейки);
  • освоить статическую либо динамическую светодиодную индикацию на ПЛИС для вывода времени;
  • собрать кучу граблей, связанных с самостоятельной разработкой схем и получить новый опыт;
  • освоить новую среду разработки и программирования для ПЛИС фирмы Lattice, оценить сложность перехода

Меня ожидает несколько очень приятных вечеров, посвященных разработке на ПЛИС!

Добро пожаловать под кат!

Первый проект на FPGA Altera и подключение USB-Blaster в Linux

Reading time4 min
Views21K


Продолжаем осваивать FPGA Altera. В первой части я описал процесс установки программного обеспечения Altera Quartus под CentOS7. Теперь уже наконец попробуем что-то сделать «железное», например светодиодики позажигаем. Но прежде небольшое вступление.

Одним из направлений моей деятельности является преподавание в кружке робототехники в небольшом городке Беларуси. Окунувшись во всю эту кухню и поучаствовав в разных конкурсах не только как тренер команды, но и как судья, я пришел к выводу, что ардуино в частности и микроконтроллеры в целом не самая лучшая база для конкурсных роботов (про лего вообще молчу). Многие задачи эффективней решать на уровне голой электроники. Кроме того 90% процентов кружков и «школ» робототехники не дают даже базовых знаний именно электроники, сосредоточившись чисто на «обучении» программированию готовых конструкций. Но чисто электронные роботы (например незаслуженно забытые BEAM) заточены под конкретную задачу и изменение условий конкурса приведет к необходимости существенной перестройки робота, что не всегда возможно. Вот тут я и вспомнил про программируемую логику. В результате поиска информации о применении ПЛИС в обучении я наткнулся на блог Юрия Панчула YuriPanchul. Пользуясь случаем я хочу публично выразить ему свою благодарность. Благодаря ему наш кружок совершенно бесплатно получил плату TerasIC DE0-CV c Altera Cyclone V на борту.

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

Итак, начинаем. В этой публикации будут описаны первые шаги в Quartus, описание элементарной цифровой логики на языке Verilog и загрузка конфигурации в FPGA Altera Cyclone V. Работать мы будем с платой TerasIC DE0-CV, которая имеет на борту встроенный USB-Blaster. Так же затронем и вопрос «запуска» USB-Blaster под Linux.
Читать дальше →

Логика сознания. Часть 4. Секрет памяти мозга

Reading time21 min
Views51K
Когда с нами что-то происходит наш мозг фиксирует это, создавая воспоминания. Изменения, которые при этом происходят с мозгом, принято называть энграммами или следами памяти.

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

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

Диаграмма Вороного и её применения

Reading time25 min
Views131K
Доброго всем времени суток, уважаемые посетители сайта Хабрахабр. В данной статье я бы хотел рассказать вам о том, что такое диаграмма Вороного (изображена на картинке ниже), о различных алгоритмах её построения (за , — пересечение полуплоскостей, — алгоритм Форчуна) и некоторых тонкостях реализации (на языке C++).



Также будет рассмотрено много интересных применений диаграммы и несколько любопытных фактов о ней. Будет интересно!
Читать дальше →

Чистая энергия за копейки

Reading time10 min
Views65K
Когда появятся термоядерные электростанции? Ученые чаще всего говорят, что-то вроде “через 20 лет мы решим все принципиальные вопросы”. Инженеры из атомной индустрии говорят про вторую половину 21 века. Политики рассуждают про море чистой энергии за копейки, не утруждая себя датами. Экономисты говорят — никогда.


Создатели первого в мире токамака Т-1 Арцимович, Явлинский тоже обещали электростанции через 20 лет.

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

Information

Rating
2,796-th
Location
Алматы (Алма-Ата), Алма-Атинская обл., Казахстан
Date of birth
Registered
Activity