• GDPR. Практические советы
    0
    Угу. Интернет глобален, и попытка его зарегулировать локально ни к чему хорошему не приводит.
  • Генерация кода во время работы приложения: реальные примеры и техники
    0
    Видимо, оверхед присутствует при пересечении границы в обе стороны. Да, у меня миллионы вызовов обычных методов из автосгенерённой функции, которые прекрасно инлайнятся, если не использовать простой вариант с Expression.Compile.
  • Генерация кода во время работы приложения: реальные примеры и техники
    0
    Нет, не наносекунды. У меня подобные методы — автосгенерированный код для обработки изображений, одна функция может работать несколько миллисекунд. Так вот разница была не наносекунды, а разы.
  • Дискредитация специалистов или современные собеседования
    0

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

  • Дискредитация специалистов или современные собеседования
    0
    Даже если рассматривать финансово самый невыгодный вариант "оба на полставки"

    Почему? Вот не знаю, как так получается, но в Москве при работе на полставки зарплата довольно быстро вырастает до полноставочной. Видимо, дело в эффективности работы — КПД программиста снижается при увеличении продолжительности рабочего дня.

  • Дискредитация специалистов или современные собеседования
    0
    С ребенком надо сидеть лет до 3 пока он в сад не пойдет.

    А почему именно до трёх лет? Почему не до двух или четырёх?


    И причём здесь вообще детский сад? В России нормальных детских садов нет — в государственных условия такие, что ребёнок будет больше сидеть дома, чем ходить в сад, а рынок частных садов развит очень плохо и сводится больше к садам на базе детских игровых центров.


    Да и спихивать детей на чужих людей — так себе затея.

    Почему? С точки зрения развития ребёнка, больше важен процент отказов во внимании, а не сам факт присутствия родителей рядом. А программист, который разрывается между работой и ребёнком, будет постоянно отказывать ребёнку во внимании.


    P.S. У меня жена-программист с первым ребёнком тоже так считала (до 3 лет с ребёнком вместе), как оказалось — зря. Со вторым, скорее всего, будет уже сидеть няня, начиная с года.

  • Блокировка Telegram — готовимся к худшему?
    0
    Вместе с вазапом? Да это ж чуть ли не основное средство коммуникации в госструктурах.
  • Генерация кода во время работы приложения: реальные примеры и техники
    +2
    Да, я тоже это заметил. Решил проблему тем, что создавал сборку вручную, что-то вроде:

    Код
        public static class RuntimeBase
        {
            static AssemblyBuilder assembly_builder;
            static ModuleBuilder module_builder;
            static int next_id;
    
            static RuntimeBase()
            {
                AssemblyName an = new AssemblyName("iplibdyn");
                assembly_builder = AppDomain.CurrentDomain.DefineDynamicAssembly(an, AssemblyBuilderAccess.Save);
                module_builder = assembly_builder.DefineDynamicModule("ImageLibGeneratedCode", "iplibdyn.dll", false);
                next_id = 0;
            }
    
            public static T CompileExpressionToMethod<T>(LambdaExpression expression, string name)
                where T : class
            {
                if (name == null)
                    name = string.Format("CLS{0}", ++next_id);
                else
                    name = string.Format("CLS{0}_{1}", ++next_id, name);
    
                TypeBuilder type_builder = module_builder.DefineType(name);
                MethodBuilder method_builder = type_builder.DefineMethod("DynMethod", MethodAttributes.Public | MethodAttributes.Static);
    
                try
                {
                    expression.CompileToMethod(method_builder);
                }
                catch (Exception E)
                {
                    Console.WriteLine("Exception: {0}{1}", E.Message, E.StackTrace);
                    Debugger.Break();
                }
    
                Type type = type_builder.CreateType();
    
                MethodInfo mi = type.GetMethod("DynMethod");
                return Delegate.CreateDelegate(typeof(T), mi) as T;
            }
    
            public static TypeBuilder DefineType(string name)
            {
                return module_builder.DefineType(name, TypeAttributes.Public);
            }
    
            public static void SaveDll()
            {
                assembly_builder.Save("iplibdyn.dll");
            }
        }
    



    В этом случае падения производительности уже не наблюдалось, и смысла генерить IL-код просто не было. Заодно появилась возможность сохранить сборку в файл, посмотреть на IL-код и декомпилировать метод.
  • Блокировка Telegram — готовимся к худшему?
    0
    Может быть это VPN/прокси/сокс, который создан ФСБ?

    Ну и что? Пусть смотрят шифрованный трафик, удачи им.

  • TDD ошибочно?
    0
    TDD же постулирует, что сначала нужно описать желаемое поведение в тестах, а уж потом подогнать код под него.

    Даже больше. TDD предполагает, что за одну итерацию добавляется один, максимум несколько тестов, а не описывается весь функционал сразу.

  • TDD ошибочно?
    0
    > Весь этот мусор из инструментов тестирования и assertion библиотек, как it, describe, test, to.be.true просто захламляет ваши тесты.

    А ещё напрягает лапша из кода.
    У теста должна быть чёткая структура: arrange, act, assert.
  • Дискредитация специалистов или современные собеседования
    0
    Так что не теряйте момент, общайтесь с «овощем», чтобы он реально в овощ не превратился.

    Отцы обычно лишены материнского инстинкта и редко испытывают желание общаться с "овощем", не говоря уж о получении удовольствия.


    то после трех лет он уже вовсю общается со сверстниками в садике

    Детские сады и школы — это только по будням в рабочее время. В остальное время общаться с ребёнком все равно придётся.

  • Без new: Указатели будут удалены из C++
    0

    Да, это штука из Managed C++, а не из стандартного C++.

  • Без new: Указатели будут удалены из C++
    +3
    в стандарте в некоторых случаях приходится явно разрешать неоднозначность интерпретации тех или иных конструкций

    Это следствие отсутствия ключевого слова "function".

  • Без new: Указатели будут удалены из C++
    0

    Насчёт 11: предпочитаю всегда писать std::unique_ptr<T>(new T(...)), чем std::make_unique<T>(...). Причина простая: в первом случае работают подсказки IDE, во втором случае — нет.

  • Без new: Указатели будут удалены из C++
    +1
    Достаточно краткой записи только для unique_ptr и shared_ptr. Редкоиспользуемые случаи же спецсимволами покрывать не нужно. Мне C++ очень нравится, но многословность несколько выбешивает.
  • Без new: Указатели будут удалены из C++
    +5

    А если серьёзно, то C++ не хватает для умных указателей нормального синтаксиса.
    Зачем писать std::unique_ptr<T>, когда можно писать T^?
    Зачем писать std::make_unique<T>(...), когда можно писать new T^(...)?

  • Дискредитация специалистов или современные собеседования
    +1
    Как минимум, экономить можно на глажке-уборке-стирке и прочих ритуалах.
  • Дискредитация специалистов или современные собеседования
    0

    А мясо вы не едите? Или покупаете только замороженное? Клубника, арбузы, бабаны две недели тоже ждать не будут.


    А дороги с работы домой нет просто.

    Если дороги до работы нет, то можно совмещать прогулку с ребёнком с походом в магазин.

  • Дискредитация специалистов или современные собеседования
    +1
    Если магазин по пути с работы домой (нулевой оверхед), то не вижу никаких проблем заходить в него раз в пару дней. Заодно можно будет покупать вещи, которые при затаривании на неделю-две вперёд купить попросту невозможно.
  • Дискредитация специалистов или современные собеседования
    +3
    Ну вот лично меня не водили ни на кружки, ни на курсы. Всё, что было — это бассейн раз в неделю в первом классе. Ни о чём не жалею. Зато у меня было детство, а не бесконечная учёба с утра до вечера.

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

    Кроме того, не забываем, что речь идёт о высокооплачиваемом IT. Если оба родителя — программиста, то деньги вообще не являются проблемой.
  • Дискредитация специалистов или современные собеседования
    0

    Возможно, это связано с повсеместной оплатой за жопочасы. Работник-то может и рад работать не 40 часов в неделю, а 20-30 часов, выполняя тот же объём работы, но тогда его зарплата упадёт. Вот и приходится страдать фигнёй на работе.

  • Дискредитация специалистов или современные собеседования
    –5
    Потом ребенка надо водить (чаще — возить) на кружки, забирать из школы и все такое.

    Это ваши проблемы. Я не вижу особой необходимости в кружках для развития ребёнка, особенно если они требуют кучу времени.


    Если мне вдруг нужно будет ребёнка возить в школу или сад, то я просто куплю/сниму квартиру возле школы — мне моё время дорого.

  • Дискредитация специалистов или современные собеседования
    0
    У меня другой опыт. Первый год — самый простой: желания ребёнка простые и легко удовлетворяемые, ребёнок много спит. Если ребёнок хочет телесного контакта — не вопрос, можно положить на колени и продолжить программировать.
  • Дискредитация специалистов или современные собеседования
    0
    Я, кстати, вообще не использую потоки, предпочитая printf.
    Ну не нравится мне, как они реализованы в C++.
  • Дискредитация специалистов или современные собеседования
    +3
    Даешь элементарную задачу — сделать разворот строки.

    Не такая уж она и элементарная, если это корректный разворот UTF-8 или UTF-16 строк, а не просто массива из char.

  • Дискредитация специалистов или современные собеседования
    +3
    Мне кажется, что вы под стрессоустойчивостью понимаете лояльность к банальному несоблюдению условий труда, включающую в себя переработки и выполнение работы вне должностых обязанностей.
  • Окна на чистом WinAPI. Или просто о сложном
    +1
    Сейчас уже не всё так плохо. За счёт того, что приложения используют фреймворки, а не голый API, проблем с масштабированием стало значительно меньше.
  • Окна на чистом WinAPI. Или просто о сложном
    0
    Угу, VCL в Delphi/Builder был прекрасен. Я пытался перейти на MSVC, но от MFC меня просто тошнило. В итоге так и продолжал сидеть на Delphi/Builder, пока не вышел .NET с Windows Forms.
  • C++20 всё ближе. Встреча в Джексонвилле
    +1
    О концептах я уже даже не мечтаю. Неужели их введут?
  • Окна на чистом WinAPI. Или просто о сложном
    0
    Особняком стоит WPF, который не использует WinAPI для отрисовки.
  • Используем Apple Pay и карту Тройка в качестве пропуска на работу
    0
    Возможно, покупка на Амазоне.
    Точно уже не могу сказать, но у меня был случай, когда ни имя, ни CVV не спрашивали. Нужен ли был срок действия — не помню.
  • Используем Apple Pay и карту Тройка в качестве пропуска на работу
    +3
    Учитывая, что первые 6 цифр — это код банка, подавляющее большинство карточек выпущено всего несколькими банками, а в числе последних 10 цифр имеется ещё и контрольная сумма, зная последние 10 цифр, вы знаете все 16 цифр с вероятностью, близкой к 100%.

    Upd. Сорри, про это уже написали
  • C++20 всё ближе. Встреча в Джексонвилле
    0
    Для меня просто самое интересное — это языковые фичи: move semantics, лямбды и т.д., потому что всё остальное — дело наживное.

    А uniform function call syntax значительно упростит мой код за счёт отказа от нагромождений шаблонов и их частных специализаций.
  • C++20 всё ближе. Встреча в Джексонвилле
    0
    Есть фундаментальные — асинхронщина попросту медленней, всегда, даже с мультиплексингом под капотом.

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

  • C++20 всё ближе. Встреча в Джексонвилле
    +1
    Опять же, вы же не будете из буста брать графы, boost geometry или всякие такие вещи? Или хотя бы даже multiindex?

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


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


    Конечно, будут ситуации, когда для конкретного случая библиотечное представление сущности будет неоптимально, но в этом и заключается особенность C++: он покрывает сразу много уровней абстракции.

  • C++20 всё ближе. Встреча в Джексонвилле
    0
    Печально. Лично для меня эта была бы самая удобная фича языка.
  • C++20 всё ближе. Встреча в Джексонвилле
    0
    А как обстоят дела с uniform function call syntax?
  • Четыре уровня одностраничных приложений, о которых вам нужно знать
    +1
    Открытие ссылок через ctrl+клик работает и в Gmail, и в Yamail.

    В Gmail не работает открытие по среднему и правому кликам, по Ctrl + клик — открываются только письма, но не элементы меню.


    Yandex Mail — долгая загрузка при открытии в новой вкладке + перехват правого клика.


    В общем, ситуация все еще не выглядит достойной котла в аду.

    Ну почему же?


    Одно радует: современные технологии создания SPA эволюционируют в лучшую сторону.

  • Четыре уровня одностраничных приложений, о которых вам нужно знать
    +1

    Нет, они как раз ничего не ломали. Функционально сайт ничем не отличается от традиционного, а SPA используется только для повышения отзывчивости.