Pull to refresh
15
0
Роман Данилов @Infra_HDC

Пользователь GNU/Linux

Send message
«Ум программиста. Как понять и осмыслить любой код»

Я бы посоветовал обратиться к наследию выдающегося советского учёного, одного из пионеров теоретического и системного программирования академика Андрея Петровича Ершову:


Элитарность программистов представляется мне очевидной и в этом представлении является интереснейшим вызовом человечеству в целом.

На моё становление как программиста огромное влияние оказала его статья «О человеческом и эстетическом факторах в программировании» (1972)

Если в конторе нашли такого программиста, то тихонько разберитесь в его задаче - она простая, и сделайте еë хорошо.

Это очень эффективный начальный(!) способ делать карьеру. Того уволят и вы будете довольны даже половиной его зарплаты))

Природа обычно соблюдает равновесие.

Работал несколько ко лет на pl/1. Из всех книг легче всего освоить было по книге Пярнпуу. Было на ивц. Асса переходных книг толщиной с краткий курс истории КПСС то есть кирпич. Но у Пярнпуу было как потом возн кла серия для чайников. Доступно, по теме и с практической направленностью. Моменты которые были не освещены в книге смотрел уже в документации по ес эвм. Потом после того как машина ну переплавили на золото нашел на одном из дисков компилятор pl/1 но так уже ничего на нем не написал хотя ностальгические настроения возникли. Кстати о названии тол ко сейчас обратил внимание ibm/360 pl/1 os/2 у ibm своеобразный подход к выбору названий.

Плата очень похожа на более дешевый аналог teenzy.
А вот, кстати, сравнение с esp:

взято отсюда — www.youtube.com/watch?v=cVHCllbN3bQ&t=4s
Странно…
По текущему, уже более 25 лет Стандарту Протокола
Discrete Inputs могут быть в Большем чем указано диапазоне.
Строго говоря начиная с 0-го регистра до 65535, с расширением диапазона, если это необходимо.
С другими типами функций также.
И ограничение регистров это Очень старый атавизм, казалось он ушел в небытие лет 30 назад.

Такие «правила» были Только в документах по протоколу До 1996 года.

Странно что Такие именитые компании ( Delta тоже этим «грешит»)
при разработке устройств на протоколе Modbus
берут за основу документ «PI_MBUS_300.pdf» от 1996 года, который помечен как «obsolete» и «FOR LEGACY APPLICATIONS ONLY».
в котором чётко указано
«Используется для разрешения проблем обратной совместимости. Рекомендуется не
использовать его при разработке новых устройств.»
И это указание, на минуточку, от 1996 года. А на дворе внезапно 2019 год.

Ну а даже про надпись в этом документе «Unless otherwise stated» лучше вообще умолчать.

Было бы интересно, если бы автор посмотрел в Спецификацию протокола от 2012 года и попытался там найти упоминания о таких диапазонах регистров для конкретных функций.
Шум бывает тепловой, дробовой и фликкерный. Дробовой в резисторах не учавствует, фликкер-шум зависит от качества электрического контакта резистивной плёнки с выводами, но с ним научились бороться — его теоретически можно сделать сколь угодно малым. Непреодолимое фундаментальное препятствие представляет тепловой шум.
Согласно уравнению Найквиста, шумовые характеристики резисторов зависят от окружающей температуры и спектра частот, в котором измеряется мощность шума. Если же речь о напряжении шума, то оно зависит ещё и от сопротивления резистора.

Тут недавно была статья о судах дальней космической связи и в ней упоминалось, что приёмные усилители охлаждались жидким гелием. Так вот, охлаждать приходилось именно согласующие резисторы в фидерах.
Позволю себе дать несколько советов…
1. Собери нормальный паяльник. Загугли про жала T12, мне моя станция обошлась (вместе с корпусом) примерно за 2к руб. Паять станет намного комфортнее, пайка получится намного красивее. Из типов жала тебя в первую очередь интересует тип «K», начинай с него.
2. Купи самый дешевый флюс-гель. Продается в шприцах по 10/30 грамм. Про канифоль забудешь сразу. Отмывать не обязательно, пай получается намного более красивый. При правильной температуре качество пая от фабричного отличить невозможно. Для пайки МК сойдёт даже самый дешевый, но я использую NC-D500, тюбик покупал что-то около 300 рублей, хватает для любительской пайки на год.
3. Заказывай платы прототипов на алиэкспрессе. Трассируешь прототипы для 5-10 моделей, формуешь в один лист, делаешь гербер, пишешь китайцу. Цена около 1 доллара да кв. дециметр (давно не заказывал, цена могла поменяться). На муське есть несколько обзоров. Постепенно это входит в привычку — делать проекты сначала теоретически и сохранять всю информацию, а как приходят платы — уже в железе. В итоге тренируешь свою фантазию, чтобы всегда был «поток».
4. Заказывай производство небольших корпусов или стендов на 3D-печать, самым дешевым пластиком получается весьма недорого, зато удобство зашкаливает. Да и выглядит уже не колхозно, есть чем похвастаться. Мускулиные мужицкие платы на коленке — это тоже круто, но когда есть красивый прототип — уже совсем другой уровень, чувствуется творение.
> тем самым признали что текущий перл вышел не очень удачным

Нет.

> язык создавался как замена shell'у, а потом оброс фичами

Ханжество.

> Мне кажется, что обратная совместимость ненужна, я хочу писать на языке, который каждый год новый

Если вам очень сложно написать «use strict» — пусть это делает за вас ваша среда разработки.

> регулярные выражения используют глобальные переменные

Вы отстали от жизни. Именованные буферы введены в 5.10, десять лет назад.

> eval — это пример странности в синтаксисе

А * — пример странности в синтаксисе C. Один и тот же символ является операцией умножения и операцией разыменования указателя! С — плохой, негодный язык!

> параметры приходят виде массива и нужно его явно превращать в что-то удобочитаемое

В 5.20 введены сингнатуры. Правда, для их использования нужно сделать невозможное — написать «use feature».

> например нельзя передать два хеша по значению, только по ссылке

А в Java нельзя передать объект по значению. По настоящему значению. Да и дело не в параметрах функций perl, а в синтаксисе языка, (%a, %b) — это один (sic!) список (sic!). Да, вот такой у нас язык, вот такой у него синтаксис. Часто это удобно, иногда — не очень, как и с любым другим синтаксисом любого другого языка. Если вам очень нужно передать сложный объект по значению (а хэш, да и массив, может быть сложным), для есть способ его склонировать (это Perl, здесь почти всегда «есть способ»).

> стандартная задача — проверить входит ли элемент в массив

Не особенно она стандартная. Почти всегда, если вам нужно найти элемент, упорядоченное множество не лучший выбор структуры данных. Впрочем, any {$a eq $_} @x, если вам очень нужно.

> почти все книги по перлу рекомендуют модуль Datetime

Это проблема языка? Вы сами найдете все CPAN-модули работы с датами, или вам помочь?

> максимальная единица в арифметике дат это неделя, а месяц это уже понятие календаря

Я не очень понимаю, как вы росчерком пера отделили даты от календаря, и сделали их несвязанными сущностями. Из вашей рассылки — «дата — это число единиц времени с начала отсчёта» — это же совершенно неверно. Число единиц времени — это число, а дата — это дата. Их можно перевести друг в друга по определённым правилам, не всегда очевидным (таймзоны и их история, 29 февраля и 60 секунда, 7 ноября — день октябрьской революции и т.д.)

> вот ещё пример, когда вместо одной нормальной функции, есть куча непонятно чего.

Facepalm. Perl дал вам десяток способов (на самом деле, два), как узнать размер массива. Вы же говорите, что эти способы совершенно неправильные, а правильный — функция, обязательно с именем len.

У Perl есть проблемы, но перечисленное вами — это не проблемы, а ханжество и вкусовщина.
Помню, очень давно, очень очень, видел записи подобных экспериментов, но с элкетричеством, а не водой.

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

Шимпу показывают, что если крутить рукоятки, за стеклом вращаются фрагменты цепи. Если фрагменты соединены, лампочка подключенного фрагмента загорается. Если загорается лампочка около коробки с наградой, награда немедленно выдается Шимпу. Задача, стало быть, «доставить огоньки от точки старта до коробки с наградой».

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

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

Шимпы справлялись.
Наткнулся недавно в интернете на одну разработку, называется Win32::GUI:
Это инструментарий для работы с графическим интерфейсом Win32 из Perl. Представляет собой XS-реализацию большинства функций из user32.dll и gdi32.dll с объектно-ориентированным perl-интерфейсом и основанной на событиях моделью диалогов.

UFO landed and left these words here
D'oh!
Только годовой контракт на EC2 купил, а тут такие новости.
Так они и не изучают язык, как профессиональный инструмент. Они используют питон для преподавания основ теории алгоритмов: сортировки, структуры данных, динамическое программирование, рекурсия, и т.д. Теория алгоритмов — это не программирование, уже лет 20, а то и больше. Как только появились стандартные библиотеки коллекций, реализованные сортировки и т.д. Современный программист должне уметь всем этим пользоваться, а не изобретать это все заново.

Статье больше подойдет заголовок «Питон — самый популярный язык для обучения основам теории алгоритмов в США».

И то, и другое.

1000 рублей мне не нравится, потому как я не понимаю — а с чего это налог? Я что — заработал что-то? А если и заработал — я заплачу НДФЛ. Почему государство непрерывно хочет чего-то с меня состричь?

Регистрация мне не нравится, потому что государство и так демонстрирует невероятное неумение управлять тем, что уже заполучило в свои руки. Зачем ему еще?
Научитесь сначала рулить тем, что уже есть!
Кроме того, я довольно четко вижу, что все, буквально все, к чему прикасается государство, превращается в shit. Такой анти-Мидас.

Простой пример: я давно вожу машину, и страховал ГО буквально с самого появления этой услуги в страховых компаниях. К моменту введения обязаловки ОСАГО у меня уже был приличный стаж, как водителя, так и страхователя.
Так вот, годовая страховка на сумму в 20 000 долларов мне обходилась в 95 баксов = около 3000р по теперешнему курсу. И страховая принимала меня с чаем и кофе даже когда я пару раз был виноват в ДТП, и никогда и никто не говорил мне, что я приношу СК только одни убытки, как сейчас СК плачут!

Что после ОСАГО? Страховка на в разы меньшую сумму возмещения подорожала втрое! и теперь мне в СК хамят, заставляют толкаться в очередях, а газеты заполнены стенаниями, как же дико убыточен этот вид страхования, и в сколько раз надо немедленно поднять тарифы!
Спасибо родному государству за вмешательство! Но лучше бы оно занималось делом. каким-нибудь. Любым, из тех, что ни хрена не делаются уже сейчас. Нет — оно все тянется и тянется, все больше, больше прав, все больше ограничений, регистраций, лицензий, кадастров… тьфу.
www.ipuptime.net/Teredo.aspx — описание процесса генерации Тередо адреса.
dns.he.net — динамический ДНС, поддерживает все существующие записи, в том числе и AAAA.

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity