Китай. Как мало о нём знаем мы

Знакомьтесь — Китай. Да, это реальная угроза для Пиндосии

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

Читать далее

Прогноз по CH340G

В конце Апреля я на ebay заказал партию CH340G и кучку еще кое-какого барахла. Списались с манагером магазина, обговорили детали поставки. Оплатил, как это и положено.

Бандеролька с детальками пришла жутко быстро — аж через две недели. Чувак отвечает за свои слова. Молодец! Но меня смутило, что ни в декларации, ни внутри бандерольки не оказалось CH340G. Как так?

Читать далее

Наблюдаем полёт MKC

Только-что с младшей дочерью наблюдали полет МКС и помахали рукой Михаилу Корниенко и Скотту Келли. Они нам тоже отчаянно махали руками в иллюминатор и что-то даже кричали, но мы, как ни напрягались, ничего не смогли ни увидеть, ни услышать. Далеко. Очень далеко.

МКС.Детали пролета

Карта пролёта взята с сайта http://www.heavens-above.com/

На улице относительно не холодно (+10°С), погода безоблачная, небо чистое, звезды есть, но не очень яркие. Зато МКС была самой яркой звездой, грациозно плывущей по темно-темно-синему небу.

Читать далее

А судьи — кто?

Ну это просто классика, воспетая в бессмертных произведениях великих поэтов!

Действительно, это — «за гранью». Вот сссылка на почитать по теме:

http://topru.org/14951/pozornoe-sudilishhe/

Константы в Python

Давайте немного поговорим о константах в Питоне.

Во первых, давайте дадим понятие что есть константа в контексте компьютерного программирования?

Константой называется — такое значение объекта (величина), которое на протяжении работы программы не меняется.

А вот примеры констант из жизни:

— число Пи всегда равно 3.14159…,
— количество минут в часх всегда равно 60,- масса протона в состоянии покоя всегда равна 930 МэВ,
— код ASCII символа ESC всегда имеет значение равное 0x1B

ну и так далее.

Мы можем даже определять свои константы:

— количество колес на моем автомобиле всегда равно 4,
— день рождения моей жены всегда 17 Апреля,- имя моей младшей дочери — «Светлана».

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

Во многих языках программирования принято писать имена констант в верхнем регистре. Эту традицию программистского мира, мне кажется, заложил язык Си. И люди от «сохи С/С++» свято придерживаются этой традиции.

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

Это всё преимущественно касается группы языков С.С++. А что можно сказать относительно Питона, ведь в нём нет такого понятия как «констната»?

В Питоне константой является сам объект, да и то неивсякий!

Питон — это совершенно другой мир программирования, нежди традиционный C/C++/C#, Pascal. Basic,…

Например число 5 в Питоне — это в некотором смысле константа. Говоря языком Питона, число 5 — это неизменяемый объект. На этот объект могут ссылаться две переменные: alpha и beta

alpha = 5
beta = 5

Здесь две переменные ссылаются на одно и то же число, на один т тот же объект. В контексте Python имя объекта — это есть ничто иное как ссылка на объект. В данном случае на объект-число 5.

Сами же объекты могут быть как изменяемые, так и неизменяемые. Неизменяемые объекты — это в некотором роде и есть константы. Число 5 никогда не может стать числом 6.

Иное дело, когда мы запишем:

alpha = 6

после этого alpha будет ссылаться («показывать») уже на другой неизменяемый объект. В Питоне нет встроенного механизма, который бы запрещал изменять «направления» ссылок — это противоречило бы духу Питона. Поэтому ссылки на изменяемые и неизменяемые объекты (то есть, говоря языком Си-шника — ссылки на константы и неконстанты) всегда могут быть изменены в любой момент времени.

Более того, ссылка на объект (в понимании Си-шника — имя переменной или константы) не типирована. Другими словами — если сейчас alpha указывает на число, то после исполнения следующего оператора alpha будет указывать на символьную строку:

alpha = ‘Мама, мама! Что мы будем делать?’

После чего мы можем направить alpha на какой-нибудь еще объект, например на более сложный:

alpha = open(‘my_data.text’, ‘r’)

Сейчас alpha ссылается на файловый объект, который открыт в режиме только для чтения.

Иначе говоря, если в Си мы напишем

#define ALPHA (125)

, а потом где-нибудь в тексте программы попытаемся переопределить ALPHA

ALPHA = 100;

, то компилятор отматерит нас, потому как ALPHA — это константа.

В Питоне же мы имеем полное право присваивать именам ссылки на любые объекты.

Тем не менее, проблема использования констант присутствует в любом языке программирования. Математическую константу ¶ (3.14159) никто не отменял.

Выделять имена констант большими буквами — это признак хорошего тона. По крайней мере это очень существенно в среде C/C++ и некоторых других языков программирования.

Однако, забавно отметить, что Python, очень часто «кладет» на эту Си-шную традицию.

Ohmega = 2.0 * math.pi * freq

Здесь константа «пи» написана строчными буквами. Более того, если вы откроете тексты программ, где используются внешние модули (например, для работы с графикой — Tkinter, wx,…), то увидите, что и тут многие константы также имеют имена, написанные строчными буквами.

Да. Вот такой он — Питон. Здесь всё необычно!

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

UNIX-way

UNIX-way подразумевает текстовый протокол взаимодействия между программами. Причём взаимодействие осуществляется обычно через безымянные каналы. Если можно так выразится, «отвязанность» от имен каналов нужна для того, чтобы можно было безболезненно разрывать и соединять программы в любые мыслимые цепочки. Этот подход рождает гибкость UNIX-а.

Читать далее

Типовая задача

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

Итак. Имеется устройство, которое посылает в комп через интерфейс USB поток данных. Вот эти данные и нужно будет в компе обработать нехитрым способом, который я опишу ниже.

Читать далее

Парадигма Windows и парадигма UNIX

На портале easyelectronics.ru некто MikeSmith поднял интересный вопрос. У Михаила возникла проблема при компиляции проекта.

В двух словах, Махаил работает в Виндовсе, компилирует проект GNU-компилятором. Поскольку проект оказался большим, то команда (в командной строке) для компилятора оказалась очень длинной — длиннее, чем допускает Виндовая среда. Компиляция завершилась неудачей.

Особенно мне понравилось вот это место:

Причём любопытно, что выпадает только каждый 8192-й символ, а вся остальная строка передаётся правильно. Ну а верхний лимит командной строки — 32768 байт (проверено), сверх этого передать ничего уже не получится.

http://we.easyelectronics.ru/Soft/problema-2000h-ili-kak-sobrat-gcc-arm-embedded-linkerom-bolshoy-proekt.html

Читать далее

Китай + Россия

9-го Мая на параде в Москве принимали участие ВС Китая.

Настал ответный момент. Китай приглашает Россию принять участие в Сентябрьском параде в Пекине.

Листая старые страницы тырнета наткнулся на чудесное.

Китай. Военный парад 2011 года.
Шесть минут зрелищности и ужаса для Пиндосии:

Для сравнения — Приебалтика. Военный парад 2012 года.
Девять минут ржачки с подстилок:

(Рекомендую досмотреть ролик до конца. Получите истинное удовольствие от танков. Только освободите рот от пищи, чтоб не подавиться!)

Марш распи-дяев, «четко печатающих» шаг, и прочих вооруженных геев на расслабоне.

Но особенно впечатляют — страшные надувные резиновые лодки, наводящие дикий ужас на врагов.

Пятая колонна получила бабло

Проплаченный агент Пиндосии с погонялом proenergo пишет чудесное про аварию 1957 года на хим.предприятии «Маяк».

Вот, только один абзац:

Для ликвидации последствий аварии, фактически для того чтобы водой смыть радиоактивные вещества, на промышленных площадках химкомбината «Маяк» потребовались усилия сотен тысяч человек. Из рядом расположенных городов, в том числе из Челябинска, Свердловска и Екатеринбурга, на ликвидацию последствий аварии были мобилизованы юноши и девушки, которых никто не предупреждал о том, куда они направляются, и об опасности радиации. Привозили и целые части военных, партии заключенных. Всем категорически запрещалось говорить, где они были, что делали. Детей из деревень в возрасте 7-13 лет посылали закапывать радиоактивный урожай. Для ликвидации последствий использовали и труд беременных женщин. Как итог, в Челябинской области и непосредственно в самом городе Озерске значительно возросла смертность после аварии, люди гибли прямо на работе, рождались дети с генетическими отклонениями, вымирали целые семьи…

Ужас! Ужас! Ужас!

Мы все умрем! (с)

Читать далее