Почитал комментарии и вспомнил, что не всё так однозначно. Помнится мне, что я приезжал, когда пользовался new и delete. Точно не помню компилятор, но что-то было, когда я пользовался delete с нулевым указателем. Код может и избыточен получается, но надёжней.
format вообще на питоновский способ форматирования похож. Не могу сказать о преимуществах объектного подхода. По мне так старый сишный способ вполне себе является рабочим. Вообще С++ изменился по сравнению с тем, что был первым вариантом от Бъёрна Страуструпа. Сейчас это вообще джунгли. Лично у меня последние новации не вызывают восторга. Получается, что это не старый добрый С++, а какой-то JavaScript.
Прочёл заметку и поймал себя на вопросе, согласен ли я с автором или нет. И вот что мне думается. А зачем такие большие теоретические споры, что лучше, что хуже? Тут вопрос в том, что ты хочешь получить. Программисты-практики не будут заморачиваться с этими несчастными undefined behavior. Они просто возьмут и сделают, как надо. Я не ругаю С или С++. Как и везде имеются свои преимущества и недостатки. Поэтому всем творческих успехов!
Животрепещущая тема. И уже давно. Производительность труда всегда актуальна, как и выгорание собственно. Лично я никаких методик по повышению не применяю. Может в этом и есть что-то, но в их эффективность верится с трудом. Жить по расписанию — это вообще как, это вообще реально? Это ты что живёшь один что ли? У тебя нет семьи, друзей, ты ни о ком не заботишься? Так что ли? А дело случая — это как? А когда тебе постоянно мешают?
Когда бывают хорошие, интересные проекты, то и ешь на рабочем месте.
Что касается непосредственно исполнения работы, то как-то мне попадалось в сети заметка по этому поводу. Резюме к ней примерно такоет, что как не крути, а при больших, сложных проектах у программистов получается в среднем написать один отлаженный оператор в час. Я как-то подсчитал, сколько я потратил времени на какой-то проект, и вышло, что примерно так оно и есть — один оператор в час. Поэтому я мысленно подписался под этой маленькой статейкой. И тут ничего нельзя сделать, так мыслиться. Всё равно наш брат — программист выгорает. Невозможно поддерживать высокую производительность труда. После двух-трёх недель (месяцев) интенсивной работы всё равно наступит опустошение. И будешь тогда просто тупо смотреть в экран. Так что…
Кстати, у меня стаж работы в программировании больше тридцати лет. И сейчас я работаю (в смысле программирования) два-четыре часа в день. Рекомендую всем. Эффект такой: не выгораешь длительное время, и хочется работать.
Почитал за Home Assistant. Прикольно. Т.е. я понял, что в доме устанавливается что-то типа сервера? Там промышленный компьютер ставится что ли? Мне вот эта штука очень интересная. Появляется много информации по этому поводу. Но натурально пока не доводилось встретить. В принципе можно было бы и заказчика подыскать под это дело. Появляются «богатенькие буратины». Правда у них максимальные запросы выливаются полка в установке видеонаблюдения, в том числе и через интернет.
Я сам, коллега, тоже присматриваюсь к «интернету вещей». И, как вариант, использовать канал с такой технологией представляется весьма перспективным. Кстати, была идея сделать специальную службу для «операционки» (для windows и linux), с которой можно было бы через интернет связаться по этой технологии. Для чего? Ну, например, чтобы отдать какую-то команду. В общем для удалённого контроля. Я понимаю, что можно использовать для этого туннели, но просто, как и такой вариант
Первое, что я подумал, ещё даже не приступая к чтению этой заметки, так это то, что чрезвычайно продвинутые программисты (в народе просто хакеры), будут усиленно добывать чужие секреты
Там не на несколько статей, а на несколько книжек. Вон Фроловы, может помните таких, так те несколько книжек написали по Windows API. Хорошие книжки были с примерами, с разбором.
Лет 10 назад (может больше) я на WinAPI написал приложение для абонентского отдела АТС. Ничего там сложного не было, простой учёт оплаты и начисление. Плюс несколько интегрированных отчётов. СУБД Interbase. Работало всё мгновенно. 500 записей начисления оплаты одной командой SQL выполнялось меньше чем за секунду. Хотя там была по тем временам довольно таки посредственная машина с каким-то селерончиком. Уже не помню. Загрузочный модуль был, не поверите, 170 килобайт.
А сейчас пишут непонятно на чём, работает всё через пень-колоду, никаких процессоров и памяти не настачишь!
Только так и пишу. Никаких MFC или OWL! Может быть код и будет чуточку объёмней (и то не факт), зато конечный результат будет — супер. Приложения получаются компактней и быстрей. А у этих библиотек время от времени параметры в методах меняются. Я в своё время накололся на этом, когда у борланда сначала была библиотека owl1, а потом пошла owl2, и параметры в функциях поменялись. С тех пор зарёкся. И описание в таких библиотеках тоже остаётся желать лучшего. А описание функций WinAPI всегда можно найти. Поэтому автора заметки поддерживаю за здоровый консерватизм.
Кстати, объектный подход для окон хорошо ложится в код. Любую функцию обратного вызова можно переделать, как нужно. В своё время таким образом мне удалось сделать форматный ввод в окнах. Причём отладка много времени не заняла.
Сам я программирую на работе в основном на Java и С++. Пользуясь этими языками, я испытываю страдания. Предполагается, что Rust меня и всех остальных от страданий избавит.
Я вот не пойму, в чём это страдание выражается? Это первое.
Второе. Я сам пытаюсь освоить Rust. И пока страдаю от этого языка, а не от Java и С++. Не могу пока понять, в чём его прелесть? Я конечно понимаю, что Mozilla контора солидная, но пока мои впечатления от Rust заключаются в том, что Rust тяжело изучается.
Хорошая заметочка. Почитал с удовольствием. Много откликов народ прислал. И скажу откровенно, что автор, если он действительно вскрыл проблему этого сайта, проявил просто доброту. Просто «Максимус милосердный»! И судя по тому, что ему не заплатили, владельцы сайта оказались банальными скрягами. Хотя бы на сотовый взяли бы и подкинули деньжат. Лично я бы направил большой палец вниз. И вот почему. Нами управляют серые троечники. Так вот троечники, как правило, имеют ужасную хватку. Деньги зарабатывают они. За сайт отвалили некую сумму. И далеко не факт, что конкурс был честным. Но работа была выполнена не полностью, не в комплексе. Во всяком случае проблемы безопасности решены не были. Вот и получается, что там асфальт бросили в снег, и поэтому дороги нет; там дети в школе отравились, потому что повар руки не моет; там самолёт упал, потому что поставили деталь б/у; там какого-то психа не посадили в дурдом, и он пришёл на работу с арсеналом оружия мстить. И т.д.
Может я конечно и жестковато рассуждаю. Только как этих троечников заставить работать?
Могут то могут. Но представьте, автор выпускает в открытый доступ новый релиз с деструктивной функцией. Какое-то время эта версия используется огромным количеством пользователей. Собирается в это время какая-то информация. А потом выпускается новая версия продукта без этой функции. Информация украдена, но все довольны.
Почитал комментарии и вспомнил, что не всё так однозначно. Помнится мне, что я приезжал, когда пользовался new и delete. Точно не помню компилятор, но что-то было, когда я пользовался delete с нулевым указателем. Код может и избыточен получается, но надёжней.
format вообще на питоновский способ форматирования похож. Не могу сказать о преимуществах объектного подхода. По мне так старый сишный способ вполне себе является рабочим. Вообще С++ изменился по сравнению с тем, что был первым вариантом от Бъёрна Страуструпа. Сейчас это вообще джунгли. Лично у меня последние новации не вызывают восторга. Получается, что это не старый добрый С++, а какой-то JavaScript.
Прочёл заметку и поймал себя на вопросе, согласен ли я с автором или нет. И вот что мне думается. А зачем такие большие теоретические споры, что лучше, что хуже? Тут вопрос в том, что ты хочешь получить. Программисты-практики не будут заморачиваться с этими несчастными undefined behavior. Они просто возьмут и сделают, как надо. Я не ругаю С или С++. Как и везде имеются свои преимущества и недостатки. Поэтому всем творческих успехов!
Когда бывают хорошие, интересные проекты, то и ешь на рабочем месте.
Что касается непосредственно исполнения работы, то как-то мне попадалось в сети заметка по этому поводу. Резюме к ней примерно такоет, что как не крути, а при больших, сложных проектах у программистов получается в среднем написать один отлаженный оператор в час. Я как-то подсчитал, сколько я потратил времени на какой-то проект, и вышло, что примерно так оно и есть — один оператор в час. Поэтому я мысленно подписался под этой маленькой статейкой. И тут ничего нельзя сделать, так мыслиться. Всё равно наш брат — программист выгорает. Невозможно поддерживать высокую производительность труда. После двух-трёх недель (месяцев) интенсивной работы всё равно наступит опустошение. И будешь тогда просто тупо смотреть в экран. Так что…
Кстати, у меня стаж работы в программировании больше тридцати лет. И сейчас я работаю (в смысле программирования) два-четыре часа в день. Рекомендую всем. Эффект такой: не выгораешь длительное время, и хочется работать.
Такого добра здесь уже написано много.
Лет 10 назад (может больше) я на WinAPI написал приложение для абонентского отдела АТС. Ничего там сложного не было, простой учёт оплаты и начисление. Плюс несколько интегрированных отчётов. СУБД Interbase. Работало всё мгновенно. 500 записей начисления оплаты одной командой SQL выполнялось меньше чем за секунду. Хотя там была по тем временам довольно таки посредственная машина с каким-то селерончиком. Уже не помню. Загрузочный модуль был, не поверите, 170 килобайт.
А сейчас пишут непонятно на чём, работает всё через пень-колоду, никаких процессоров и памяти не настачишь!
Кстати, объектный подход для окон хорошо ложится в код. Любую функцию обратного вызова можно переделать, как нужно. В своё время таким образом мне удалось сделать форматный ввод в окнах. Причём отладка много времени не заняла.
Я вот не пойму, в чём это страдание выражается? Это первое.
Второе. Я сам пытаюсь освоить Rust. И пока страдаю от этого языка, а не от Java и С++. Не могу пока понять, в чём его прелесть? Я конечно понимаю, что Mozilla контора солидная, но пока мои впечатления от Rust заключаются в том, что Rust тяжело изучается.
Может я конечно и жестковато рассуждаю. Только как этих троечников заставить работать?