Как стать автором
Обновить
4
0

Программист

Отправить сообщение

А что, Everything там уже поддерживается? Или аналог? Чтобы был мгновенный поиск и подсчет размеров папок. Если нет, то зачем вы им пользуетесь?

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

Хотя в первом случае очевидно дизайнером был Якубович, my bad

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

Если вы не можете прочитать это сообщение, то у вас нет интернета

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

UB это в том числе и разрешение компилятору делать что угодно c виновным в UB кодом. В корректном коде UB быть не должно, а с некорректным можно не церемониться.
В данном случае, например, компилятор может и не компилировать условие. Вполне возможно, что с точки зрения компилятора условие всегда выполняется, ведь иначе будет UB, чего быть не может.
И функция выродится в return 42

Я сейчас ленюсь и вношу вообще раз в 3-4 недели. Засчет того, что на каждый чек уходят секунды, можно спокойно сразу стопку внести. Траты без чеков вношу по СМС от банка, тут уже сложнее, не всегда очевидно, на что тратил, приходится вспоминать. Ну а наличные нужно руками вводить, и лучше сразу, пока не забыл

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

По ссылке дверь для кошек

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

Почему я думаю, что уступает? Я установил DC на мак и вот что увидел:
- Нет аналога Everything, спотлайт подключить невозможно. В итоге при поиске или подчете размера папок идет сканирование файловой системы. В TC эти операции происходят мгновенно. Это очень серьезный недостаток, на этом можно и закончить сравнение. Дальше идут уже мелочи, которые портят экспириенс.
- Баги. После нескольких минут использования, я уже могу несколько багрепортов накатать. В TC не помню, чтобы сталкивался с таким за 20 лет пользования. Примеры багов:
-- В окне выбора цвета подсветка фокуса работает неправильно;
-- При выключении темной темы, сбросились настройки цветов и начали двоиться надписи в интерфейсе;
-- При изменении ширины столбца в файловой панели сама собой работает прокрутка;
-- В некоторых окна значения не влезают в поля со списком. Даже если язык выбран английский.
-- Названия клавиш не соотвествют раскладке мака.
- Не нашел как настроить фильтр истории. Мне не нужно, чтобы в истории запоминалась каждый путь, история так быстро забивается.
- Из коробки не были настроены Ctrl+Лево/Ctrl+Право (отобразить текущий путь в другой панели). Да как так-то? При этом кнопки под это заведены в панели инструментов. При этом нельзя настроить, чтобы в другой панели открывалось содержимое папки/архива, как в TC
- Shift+F7 (создать папку в другой панели) - не нашел такой функции

Это если по верхам. Уверен, что, если закапываться дальше, то будет только хуже. Но всё равно спасибо, что напомнили. Наверное, это лучшее, что есть на маке.

Что касается багов - повсеместная проблема открытого ПО. В том же Meld с первого раза почти никогда не получается перетащить файл/папку в окно.
Пойду дальше жевать кактус.

Чем const возле типа астрономически отличается от const возле указателя по своей сути? Кажется, по своей сути они не отличаются, потому что указатель это и есть тип.

char * a; - тип этой переменной - указатель
int * a; - тип этой переменной - указатель
void * a; - тип этой переменной - указатель

char и int перед указателем лишь указание на то, что будет, если инкрементировать или разыменовать указатель, они ничего не говорят о том, что хранится в самой переменной. А void * это просто указатель.

Что касается грамматики с разделением типа на две части, то это очередная иллюстрация тяжелого наследия.
Полагаю, сделано это было ради таких страшных объявлений:

int a, b, *c, d[5];

Я ровно это и сказал. Для const сделали исключение - в определенной ситуации const допускается писать слева. Могу только предположить, что авторам языка не понравилось, что const получился не в начале строки, и они влепили этот страшный костыль вместо того, чтобы пересмотреть сам дизайн.
В итоге редко кто знает, что типы читаются справа налево, потому что вот же, контрпример.
Я одно время сидел на StackOverflow. Там такие вопросы прилетали почти каждый день. И каждый раз ответом был некорректное правило spiral rule https://c-faq.com/decl/spiral.anderson.html. За год ежедневного сидения не видел ни разу, чтобы ответили правильно и показали right-left rule https://cseweb.ucsd.edu/~ricko/rt_lt.rule.html. Всё, что нужно знать о дизайне языка и об общем уровне его понимания

Это очередное тяжёлое наследие C. Типы читаются справа налево, но для const сделали исключение. Из-за этого все путаются и ничего не понимают.

https://mariusbancila.ro/blog/2018/11/23/join-the-east-const-revolution/

А что на счет строковых литералов, например "string literal"? Это будет char*

Тут стоит заострить внимание на то, что именно char *, а не char const *. Почему это важно?
Случай из практики (писали мы на C тогда). Была у нас функция, которая принимала на вход строку char * и изменяла ее. Долго она у нас была, пока однажды мы не обнаружили место, где в функцию передается... строковый литерал. Функция бодро писала в литерал и всё работало, потому что в данном случае изменения заключались в удалении пробелов (так называемый trimming). То есть за пределы литерала ничего не писалось.
Но это открытие нас так напугало (мы то были абсолютно уверены, что литералы конечно же char const *, ну кому в здравом уме может прийти в голову сделать литералы изменяемыми?), что мы добавили в наш кодстайл обязательное требование все строковые литералы приводить к char const *

Первое, с чем сталкиваешься - это отсутствие Total Commander или его аналога. Аналога нет даже на Windows (хотя кто-то поспорит, что Far Manager не хуже), в линуксе и макос и подавно нет ничего близкого по функционалу. На этом можно и закончить, потому что лично для меня этого уже достаточно, чтобы не хотеть работать в другой системе.
А аналог Everything есть на линуксе? Так чтобы поставил, и мгновенный поиск по файловой системе без сканирования? Не нашел такого. На маке есть спотлайт, даже иногда работает.
А уж если подключить Everything к Total Commander, то вообще сказка.
Из рабочих инструментов сильно не хватает Visual Studio (сейчас приходится работать в VSCode, по сравнению со студией это продвинутый блокнот, а не среда разработки), Araxis Merge (из аналогов есть Meld, работает сносно, но все равно ощущается как поделка студента по сравнению профессиональным инструментом).
Не хватает хорошего монитора ресурсов. Даже встроенный в Windows умеет, например, мониторить доступ к файлам. А если этого мало, то есть SysMon и ProcExp от Руссиновича. На других системах полноценных аналогов не нашел.

Пользователь Windows c 20-летним стажем. Сложился набор выверенных годами инструментов, без которых на другой системе я как без рук. И полноценных аналогов нет.
Это пожалуй главное, но не единственное препятствие для перехода на другую ОС.
Работал в Линуксе, сейчас на маке, всё время не покидает чувство поедания кактуса.
Дома стоит десятка - в ней отдыхаю после тяжелого рабочего дня.

А я поставил ручную обновлялку https://github.com/DavidXanatos/wumgr и не понимаю, в чем проблема? Да и до обновлялки обновления не донимали вроде

Потому что читабельный код это в том числе текст, который соответствует правилам дизайна текста.
Я не дизайнер, но мне кажется очевидным, что различные избыточные скобки, закорючки и прочие спецсимволы затрудняют восприятие текста. Если можно писать без скобок (так, что это не вредит пониманию кода), то лучше писать без скобок. Если можно писать and вместо &&, то лучше писать and. Если ты не математик, который в формулах, как рыба в воде, то такие вещи для тебя действительно визуальный мусор, затрудняющий восприятие.
Не думаю, что во времена создания C о таких вещах задумывались. (А ЕЩЕ В ТЕ ВРЕМЕНА СЧИТАЛОСЬ ХОРОШИМ ТОНОМ ПИСАТЬ ПРОГРАММЫ КАПСОМ, ДУМАЮ, СЕЙЧАС ДАЖЕ ДАЛЕКИЙ ОТ ДИЗАЙНА ЧЕЛОВЕК ПОНИМАЕТ, ЧТО ЭТО НЕ ОК)
А в наше время при создании языка нужно уделять большое внимание текстовому дизайну.
Потому что код пишется один раз, а читается много.

Информация

В рейтинге
4 960-й
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность