У меня почему-то проблем с визуальным разделением блоков как раз нет. Code folding работает, если что, во всех адекватных редакторах — можно свернуть блок, выделить строку, развернуть блок — выделенным окажется и всё содержимое. Навигацию хоткеями по блокам я, кажется, тоже где-то видел, но вот не помню, где именно (и правда ли видел).
Странно, ни разу не видел такого. Можно примеры?
Дык как раз всякая мелочь типа 2 + «3», когда код рефакторили, рефакторили, да не вырефакторововали. В итоге получается как в известной шутке: «Вы раз за разом стреляете себе в ногу, но всё время попадаете между пальцами.»
Имеется в виду необходимость писать с кучей именованных параметров со значениями по умолчанию?
Ну либо внутри функции парсить args и kwargs. Либо даже просто один-два параметра надо переопределить (чтобы работало и для 2 + 3, и для «2» + «3») — проверять типы переменных вручную в рантайме.
нужно разбираться в структурах данных и алгоритмах
Нет. (...) Нужно знать, что оно есть и найти правильную библиотеку.
Так а где противоречие? Понять, что именно тебе нужно — это уже означает разбираться в вопросе. Зачастую достаточно даже меньшего — примерно представлять, в каком направлении копать, а далее найти нужное решение — дело техники и нескольких минут: идёшь на форум и пишешь «нужен компонент, который сажает льва в клетку»
В питоне, в переменной может быть все что угодно. Сейчас там число, чуть позже строка, а потом массив.
Не так. В Питоне переменная, по-сути, является нетипизированной ссылкой на строго типизированный объект. Т. к. эта «ссылка» нетипизированна, её в любой момент можно перенаправить на строго типизированный объект совершенно другого типа. Возможно, вы именно об этом и пишете далее («объект владеет переменной»), но тут уж, скорее, дело в отсутствии объявления переменных как такового. Впрочем, строго статически типизированный Rust позволяет наобъявлять что-то вроде
let x = 3;
let x = "blah";
И ничего, как-то живут с этим.
В смысле как dynamic_cast с++?
В смысле, в языке с нестрогой типизацией вы запросто можете сложить вместе строку и массив целых чисел. Например, Javascript:
let msg = 'fuck my brain' + [1, 2]
Питон такой содомии, всё же, не допускает.
Питон хорош для маленьких поделок, на один, два, три листа кода. А вот с объемными проектами гарантированно будут проблемы.
Да ну, нет. Объёмные проекты требуют дисциплины, пиши их хоть на чём. Питон, конечно, позволяет некоторый пофигизм, по-сравнению с С++ каким-нибудь, но с «объёмными проектами» там встают проблемы уже несколько иного порядка, на фоне которых все эти вот мелочи вроде «переменная владеет объектом или объект владеет переменной» вообще ни о чём.
Неудобно как неудобная обувь.
Пишу последние несколько лет, в основном, на Питоне. Мне, наоборот, удобно — даже если заранее знаю, что надо будет С++, зачастую мне быстрее и удобнее всё равно сперва написать прототип на Питоне. Что бесит, несмотря на мою любовь к Питону?
Форматирование. К нему привыкаешь, без него Питон не был бы Питоном, оно снимает вопрос, оставлять фигурную скобку или переносить (но при этом усугубляет холивар «табы vs. пробелы»).
Размытая и неявная грань между «ссылкой» и «значением». Некоторые объекты (большинство) передаются по ссылке всегда. Некоторые объекты передать по ссылке нельзя вообще никак.
Сам синтаксис языка провоцирует совершать множество мелких ошибок, которые в C++ или Java спалил бы еще IntelliSense. А тут давай, до свиданья, в смысле, до рантайма.
Иногда не хватает перегрузки функций — то, что легко и изящно делается на этапе объявления в таком неуклюжем языке, как C++, в минималистичном Питоне выглядит каким-то извращением.
insight
(the ability to have) a clear, deep, and sometimes sudden understanding of a complicated problem or situation. «It was an interesting book, full of fascinating insights into human relationships.»
По-моему, автор поста несколько чересчур вольно употребил в нём понятие «инсайты», если принять во внимание, что для аудитории в описываемых ситуациях не было ничего сложного. Но смысл всё же ясен: вот в повествовании изложены факты, и все они по-отдельности мне понятны, и сопоставить одно с другим я в состоянии, и… и чо?.. и ничо, картинка не складывается, общего понимания нет. Я думал-думал, ходил вокруг, курил контекст, читал дополнительную литературу и внезапно словил инсайт и понял, всё сложилось: «Блин, действительно, не надо было банкомату брать прикуп на мизере!». А современник Пушкина, какой-нибудь граф Орлов-Белобровов понял бы всё то же самое, не успев ещё дочитать абзац, и даже не удивился бы — ну, разве что, тому, что кому-то это было не очевидно: «Что, правда три дня над этим думали? Да вы, сударь, балбесъ.» Потому что у графа этот «инсайт» был изначально. Хотя для него он и не особо-то инсайт. А «inside joke» — это несколько другое. I got an insight into their relationships, and now I can understand their inside jokes.
Это когда автору не нужно описывать ситуацию, потому что одной-двумя простыми фразами можно как бы сослаться на уже сформированный у читателя гештальт.
Ррротападъём! Ррравняйсь! Смирррна! Вольна. К выполнению научно исследовательских работ пррриступить!.. Рядовой Пупкин, почему иконки на рабочем столе не выровнены? Равняйсь-смирна! Все достали нитку, будем выравнивать иконки. — Товарищ старший лейтенант, их можно автоматически выровнять в два клика. — Отставить. Мне нужно не чтобы иконки были ровные, а чтобы вы зае**лись!
О, прикольно. Можно ещё попробовать прикрепить ко всему этому тепловизор и совместить картинку, типа Хищник. Я как-то пытался присобачить SeekThermal на HoloLens, получилось не очень, но как раз вот кошек и пр. живность оно палит на ура (конечно, не на нагретом за день асфальте и т. п.).
За право употребления данной цитаты давно пора ввести обязательный экзамен по истории британского колониализма, и потом в госучреждении квоту получать: «Я, нижеподписавшийся имярек, прошу разрешить мне употребить цитату про свободу и безопасность в статьях, текстах и постах с (дата) по (дата) в кол-ве 5 (пяти) раз. Обязуюсь цитировать только в официально утверждённом переводе, без сокращений и упущений. С ответственностью за искаженное либо неполное цитирование ознакомлен. Иначе да обрушится на мой нежный зад карающая длань правосудия.»
Надо как-то усугубить дополнительными религиозными терминами: пост (это, наверное, когда зарплату сокращают или задерживают), молитва (типа стандап-митинга?), исповедь (беседа один на один), причастие (большой митинг, когда все причащаются корпоративных ценностей), отпевание (зачитывание приказа об увольнении), соборование (когда под присмотром охранника собираешь личные вещи в коробку)… Вызывает менеджер подчинённого: «Ну что, чадо, раб корпоративный, предавался ли греху и соблазну, давал ли в афедрон?» Тот, потупя глаза: «Грешен, батюшка менеджер...» — «Ну, что же, вот тебе отходная...» — (вызывает охранников) — «Отпойте раба божия на выход из храма.»
Ну, не знаю. С одной стороны, приходится по чём зря гуглить Фаренгейта. С другой стороны, учитывая потуги авторов оригинала на художественность изложения, кажется вполне уместным оставить в тексте оригинальные единицы. «За двести миль оттуда, в Национальной Лаборатории Внутренних Исследований, учёные погрузили анальный зонд на три фута девять дюймов и намерили 37 °F. „Срань господня!“ — восклицает Джонни, залпом осушая галлон виски.» «Купец Толстопузов проехал три версты до трактира, где откушал пол-пуда икры.» «Флагман королевского флота Её Императорского Величества прошёл триста ярдов со скоростью восемь узлов.» Переведи всё это в SI, и сразу колорит пропадёт.
Ох, этот тошнотворный американский стиль повествования, согласно которому оное повествование надо столь же щедро, сколь и бессмысленно пересыпать ничего не значащими именами и географическими названиями…
«Послушай, парень,» — говорит Крэйг «Крэйзи» МакНафферсон Jr., третий вице-президент по связям и сношениям компании Мазерфакерз Вери Хеви Индастриз из Маунтин-Даунтин в Южной Дакоте, Майклу О'Майгоду, ковбою, чьё ранчо расположено возле деревеньки Шит-Крик в Северной Каролине, — «я надеру тебе задницу.» Столкнувшись со столь необычной проблемой, Майкл обратился за консультацией к Брэду Пэрэноиду, адьюнкт-профессору клинической патопсихологии из госпиталя Джона Гопникса в Миннесоте. «Когда собираешься надрать кому-то задницу,» — объясняет ассистент профессора, доцент Батч Баттхол, из своего кабинета на третьем этаже восьмого корпуса западного кампуса с видом на бассейн и кафетерий — «всё может пойти не так. Возможно, тебе самому надерут задницу.»
Сайт с пророчествами надо сделать. «Откровение», «Рассказы со стульчика Лавкрафта», Нострадамуса, заголовки с ленты.ру. И каждый раз генерировать уникальную дипфейковую «карту Таро», комбинируя колоду реальных карт, игральных карт и случайно выбранных изображений, найденных в гугле по случайно выбранным словам из сгенерированного текста.
У меня почему-то проблем с визуальным разделением блоков как раз нет. Code folding работает, если что, во всех адекватных редакторах — можно свернуть блок, выделить строку, развернуть блок — выделенным окажется и всё содержимое. Навигацию хоткеями по блокам я, кажется, тоже где-то видел, но вот не помню, где именно (и правда ли видел).
Дык как раз всякая мелочь типа 2 + «3», когда код рефакторили, рефакторили, да не вырефакторововали. В итоге получается как в известной шутке: «Вы раз за разом стреляете себе в ногу, но всё время попадаете между пальцами.»
Ну либо внутри функции парсить args и kwargs. Либо даже просто один-два параметра надо переопределить (чтобы работало и для 2 + 3, и для «2» + «3») — проверять типы переменных вручную в рантайме.
Так а где противоречие? Понять, что именно тебе нужно — это уже означает разбираться в вопросе. Зачастую достаточно даже меньшего — примерно представлять, в каком направлении копать, а далее найти нужное решение — дело техники и нескольких минут
: идёшь на форум и пишешь «нужен компонент, который сажает льва в клетку»Не так. В Питоне переменная, по-сути, является нетипизированной ссылкой на строго типизированный объект. Т. к. эта «ссылка» нетипизированна, её в любой момент можно перенаправить на строго типизированный объект совершенно другого типа. Возможно, вы именно об этом и пишете далее («объект владеет переменной»), но тут уж, скорее, дело в отсутствии объявления переменных как такового. Впрочем, строго статически типизированный Rust позволяет наобъявлять что-то вроде
И ничего, как-то живут с этим.
В смысле, в языке с нестрогой типизацией вы запросто можете сложить вместе строку и массив целых чисел. Например, Javascript:
Питон такой содомии, всё же, не допускает.
Да ну, нет. Объёмные проекты требуют дисциплины, пиши их хоть на чём. Питон, конечно, позволяет некоторый пофигизм, по-сравнению с С++ каким-нибудь, но с «объёмными проектами» там встают проблемы уже несколько иного порядка, на фоне которых все эти вот мелочи вроде «переменная владеет объектом или объект владеет переменной» вообще ни о чём.
Пишу последние несколько лет, в основном, на Питоне. Мне, наоборот, удобно — даже если заранее знаю, что надо будет С++, зачастую мне быстрее и удобнее всё равно сперва написать прототип на Питоне. Что бесит, несмотря на мою любовь к Питону?
А хрен его знает. Но звучит хорошо, заумно, будучи употреблено как метонимия в контексте дискурса.
По-моему, автор поста несколько чересчур вольно употребил в нём понятие «инсайты», если принять во внимание, что для аудитории в описываемых ситуациях не было ничего сложного. Но смысл всё же ясен: вот в повествовании изложены факты, и все они по-отдельности мне понятны, и сопоставить одно с другим я в состоянии, и… и чо?.. и ничо, картинка не складывается, общего понимания нет. Я думал-думал, ходил вокруг, курил контекст, читал дополнительную литературу и внезапно словил инсайт и понял, всё сложилось: «Блин, действительно, не надо было банкомату брать прикуп на мизере!». А современник Пушкина, какой-нибудь граф Орлов-Белобровов понял бы всё то же самое, не успев ещё дочитать абзац, и даже не удивился бы — ну, разве что, тому, что кому-то это было не очевидно: «Что, правда три дня над этим думали? Да вы, сударь, балбесъ.» Потому что у графа этот «инсайт» был изначально. Хотя для него он и не особо-то инсайт. А «inside joke» — это несколько другое. I got an insight into their relationships, and now I can understand their inside jokes.
Ррротападъём! Ррравняйсь! Смирррна! Вольна. К выполнению научно исследовательских работ пррриступить!.. Рядовой Пупкин, почему иконки на рабочем столе не выровнены? Равняйсь-смирна! Все достали нитку, будем выравнивать иконки. — Товарищ старший лейтенант, их можно автоматически выровнять в два клика. — Отставить. Мне нужно не чтобы иконки были ровные, а чтобы вы зае**лись!
Тов. Сталин: (смотрит на фраги) «Про**али раш. Всё ясно. Некст. Я афк.»
Фюрер *НСДАП*: «ГГ изи.»
Тов. Сталин: «Раки, хватит фидить!»
Тов. Жуков: «Всё норм, я затащу.»
Фюрер *НСДАП*: «ЛОЛ!»
Красноармейцы: «Да они там, по ходу, читеры?»
Тов. Жуков: «Пацаны, фармим, мы сильнее в лейте.»
Тов. Сталин: «Раки, хватит фидить!!!»
Фюрер *НСДАП*: (смотрит на фраги) «Всё ясно. Некст. Я афк.»
Немцы: «Да он там, по ходу, грифер?!»
Тов. Жуков: «ГГ.»
Тов. Сталин: «ГГ.»
Немцы: «Киньте репорт Фюреру. Сука, слил катку.»
давал ли в афедрон?» Тот, потупя глаза: «Грешен, батюшка менеджер...» — «Ну, что же, вот тебе отходная...» — (вызывает охранников) — «Отпойте раба божия на выход из храма.»«Послушай, парень,» — говорит Крэйг «Крэйзи» МакНафферсон Jr., третий вице-президент по связям и сношениям компании Мазерфакерз Вери Хеви Индастриз из Маунтин-Даунтин в Южной Дакоте, Майклу О'Майгоду, ковбою, чьё ранчо расположено возле деревеньки Шит-Крик в Северной Каролине, — «я надеру тебе задницу.» Столкнувшись со столь необычной проблемой, Майкл обратился за консультацией к Брэду Пэрэноиду, адьюнкт-профессору клинической патопсихологии из госпиталя Джона Гопникса в Миннесоте. «Когда собираешься надрать кому-то задницу,» — объясняет ассистент профессора, доцент Батч Баттхол, из своего кабинета на третьем этаже восьмого корпуса западного кампуса с видом на бассейн и кафетерий — «всё может пойти не так. Возможно, тебе самому надерут задницу.»
Эмм… ЩИТО?!