Задать вопрос
  • Как изучать программирование?

    xez
    @xez
    TL Junior Roo
    Просто начать писать код
    Ответ написан
    Комментировать
  • Где хранятся записи разговоров мессенджеров и можно ли их как-то запросить?

    @ewgenc
    Начиная с версии Viber 6.0, все основные функции Viber защищены с помощью сквозного шифрования: голосовые звонки между двумя абонентами, обмен сообщениями между двумя абонентами, групповые переписки, совместное использование информации в приватном режиме, а также подключенные устройства. Это означает, что ключи шифрования хранятся только на ваших устройствах, и никто, даже Viber, не имеет доступа к ним. Дополнительную информацию по шифрованию в Viber вы можете получить по этому адресу: www.viber.com/ru/security.
    Ответ написан
    5 комментариев
  • Как оценить количество ресурсов, необходимых для работы микросервиса?

    @vitaly_il1
    DevOps Consulting
    Как уже сказали - для сферического сервиса в ваккуме - ответа нет.
    В K8S есть свои нюансы с конфигурацией pods, но в целом все как всегда:
    - написать бета версию
    - запустить load test
    - проанализировать и прикинуть, где надо увеличить систему (sizing) а где оптимизировать
    - починить код, базу данных и т.п.
    - все повторить - load test и т.п.
    Ответ написан
    Комментировать
  • Как оценить количество ресурсов, необходимых для работы микросервиса?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Я могу двум разработчикам из моей команды дать написать микросервис по одному ТЗ и на одних технологиях, а на выходе получаться сервисы с разной производительностью и разным потреблением ресурсов. Как раз для сферических в вакууме случаев невозможна даже приблизительная оценка. При достаточно профессиональной команде и полной свободе выбора технологических решений можно идти от обратного - определить в ТЗ границы доступных ресурсов.
    Ответ написан
    Комментировать
  • Как оценить количество ресурсов, необходимых для работы микросервиса?

    chupasaurus
    @chupasaurus
    Сею рефлекторное, злое, временное
    Нагрузочным тестированием.
    Для примера, предположим, что есть (сферический в вакууме) CRUD сервис ... Предположим, что точная оценка не требуется. Даже погрешность в несколько раз будет приемлемой.
    Сервисов в вакууме не бывает, разный код и внешние зависимости будут влиять по-разному на использование ресурсов с разбегом в несколько порядков.
    Например, для оценки latency существуют подобные таблицы
    Путаете физику с лирикой. В приведённой вами таблице значения вырастают из физических и технических ограничений.
    Ответ написан
    Комментировать
  • Стоит ли переписывать старый проект на .NET6 (на голом энтузиазме)?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    В таких случаех все решается деньгами.

    Выкладки начальству о стоимости поддержки старой версии, включая совместимость современных ОС/платформ и уязвимостей.

    Выкладки начальству по поводу рисков, например о возможности легко найти людей которые готовы ковыряться и поддерживать старые платформы, если вдруг вы, например, решите уйти, или если старая платформа сдохнет, а завести ее сложно, гемор с виртуалками и уязвимостями

    Сроки на нормальную (в штатном режиме, а не аврале) разработке новой версии, грамотный выбор новой платформы, версии, стоимость.

    Собственно как эту инфу соберешь, сам поймешь имеет ли смысл переходить
    Ответ написан
    1 комментарий
  • Стоит ли переписывать старый проект на .NET6 (на голом энтузиазме)?

    DollyPapper
    @DollyPapper
    Чистая архитектура это не серебряная пуля, в чем профит то? Какие ваши проблемы она решит? Выглядит так, что вы устали работать с легаси говнищем и хотете на текущее место работы привнести новые технологии. Если это так, то это не работает. Поверьте, я проверял. Лучше смените проект.
    Ради опыта напишите полезный пет проект, или опять же - смените место работы. Загнивание на работе с технологиями которые вам не нравятся это путь в выгорание. Опять же поверьте, я проверял.
    Ответ написан
    2 комментария
  • Кто нибудь видел табличку или статью с сравнением ЯП из ООПс точки зрения реализации типов/классов? И в каких случаях брать неООП?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Непонятно что вы хотите увидеть в этой табличке? Кейсы в которых надо брать ООП или не-ООП?

    Мы живем в эпоху мультикультурализма в разработке. Языки такие как C++/Scala в принципе - мультипарадигменные. Они являются одновременно ООП и ФП. И эта диффузия продолжается.
    И другие языки тоже идут в этом направлении.

    Есть хороший доклад Брагилевского где он просто напримере геометрических фигур (круг, квадрат)
    показвывает что ФП и ООП - это просто две ортогональные технологии которые одинаково ведут
    к успеху.

    По реализациям. 99% зависит от платформы. Например языки C#/F# будут скорее всего использовать
    платформу .Net и ее реализацию типов и классов. Языки Java/Kotlin/Scala - соотв будут опираться
    на JVM-представление классов и ее типы. Erlang/Elixir - своя реализация типов в beam-машинке.
    Нативные языки - кто во что гаразд.

    Когда использовать не-объектные языки. Ну не знаю. Я-бы опять уточнил - когда вам не стоит
    внедрять пользовательские типы/классы. Вот я щас пишу утилиту для копирования данных
    с продуктового ftp на тестовый. Там нужно файлы выбирать по датам. Код на scala. Состоит
    из 1 объекта Main и порядка 40 штук функций. Пользовательских типов нет. Вот мне как-то
    так хватило и этого. Если писать notebooks под Databricks то там тоже идет такой себе
    стиль программирования где нет явной декларации классов.

    Вобщем самый лучший язык - это тот который вы знаете. И профессионал может решить любую
    задачу в своём языке всегда. Поэтому я-бы не стал париться рисованием таких табличек.
    Тем более что она очень спорная и бесполезная.
    Ответ написан
    Комментировать
  • Кто нибудь видел табличку или статью с сравнением ЯП из ООПс точки зрения реализации типов/классов? И в каких случаях брать неООП?

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

    ООП, например, вообще не применяется в программировании скриптов на Bash. И в PostScript ООП нет и не будет. И еще есть куча ниш, где оно просто не нужно. Но вам-то это правда нужно знать, если вы не сталкивались и не узнали именно поэтому?..
    Ответ написан
    Комментировать
  • Стоит ли переписывать старый проект на .NET6 (на голом энтузиазме)?

    VoidVolker
    @VoidVolker Куратор тега C#
    Dark side eye. А у нас печеньки! А у вас?
    Нет, оно того не стоит. Любая работа должна быть оплачена. Ибо сейчас напишешь за свой счет, а потом начальника скажет "о, отлично, молодец, можем теперь сэкономить на программистах и поддержке, у меня как раз знакомый ищет, ща его поставлю, а ты можешь быть свободен, заодно выпишу себе премию, во какой я молодец". Этот код решает задачи бизнеса. Если бизнес готов тратить на его поддержку и сопровождение деньги - то это проблемы этого бизнеса. Почему это наемный работник должен решать проблемы бизнеса за свой счет? Правильно сделать так: оформить все в виде какого-то документа с конкретными аргументами, цифрами, графиками и т.п. и выдать его начальству. Типа сейчас поддержка проекта стоит столько-то, приносит такие-то проблемы, переписать будет стоить столько-то, сопровождение нового будет столько-то, оно решает такие-то проблемы. И выдаете данный документ начальству. Можно даже в бумажном виде в нескольких экземплярах. А далее пусть у начальства голова болит.
    Ответ написан
    3 комментария
  • Как переименовать файлы с определенным условием в Linux?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    В Linux есть замечательная утилита rename. Ну, точнее, их две: одна входит в пакет util-linux, другая - скрипт на базе perl-модуля File::Rename. В deb-дистрибутивах нужный нам скрипт устанавливается в составе пакета rename и также имеет имя второе file-rename (а версия из util-linux имеет имя rename.ul). В других дистрибутивах может быть иначе, поэтому смотрим внимательнее параметры запуска (можно запустить rename без параметров и убедиться, что это нужный вариант).

    Синтаксис предельно простой: rename регулярное_выражение_замены_perl имена_файлов

    Синтаксис rename.ul для сравнения: rename что_заменить на_что_заменить имена_файлов

    Вот что можно сделать для решения задачи (в предположении, что других точек, кроме как перед расширением, в имени файла нет):

    rename 's/-\w+\././' *

    Этот скрипт намного удобнее многоэтажных однострочников, да и пригодится в жизни ещё не раз.
    Ответ написан
    7 комментариев
  • Как лучше всего заряжать ноутбук в автомобиле?

    однозначно = мощный внешний аккумулятор, который заряжать ночью дома от 220 В
    Ответ написан
    1 комментарий
  • Как лучше всего заряжать ноутбук в автомобиле?

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

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

    Третий самый ломовой, мой приятель подключился к CAN шине, соответственно считывая ее отрубал через микроконтроллер потребителей, ну и управлял машиной
    Ответ написан
    2 комментария
  • Юнити не нравится строка (10,6). Сможете помочь?

    GavriKos
    @GavriKos
    Поможет учебник по сишарпу.
    Какой объект вы закрыли после Dialog1 фигурной скобкой? В рамках какого метода вызывается if(EndOialog == true)?

    Это просто мешанина какая то а не код
    Ответ написан
    2 комментария
  • При каких знаниях первого яп можно начинать изучение второго?

    @alexalexes
    Пока не начнете делать проект, решающий какую-то насущную потребность (вашу - без денежного вознаграждения, или чужую - за денежное вознаграждение), можете всю жизнь просто интересоваться хоть одним языком программирования, хоть несколькими.
    Запомните, пока вы вне таких проектов что-то делаете, вы просто интересуетесь инструментарием, вы ничего не учите.
    Ответ написан
    Комментировать
  • Как изменить данные завернутые в Box, который завернут в Option?

    bingo347
    @bingo347
    Crazy on performance...
    Во-первых стоит познакомится с такой конструкцией, как if let.
    Но здесь, с Box, у Вас не получится обойти borrow checker.
    Нормальным решением будет использовать счетчики ссылок (Rc или Arc) и избавиться с их помощи от зависимости на лайфтаймы. А для ссылки на parent нужно использовать Weak ссылку, чтоб она не влияла на подсчет ссылок.

    https://doc.rust-lang.org/std/rc/struct.Rc.html
    https://doc.rust-lang.org/std/rc/struct.Weak.html

    https://doc.rust-lang.org/std/sync/struct.Arc.html
    https://doc.rust-lang.org/std/sync/struct.Weak.html

    use std::rc::{Rc, Weak};
    
    pub struct Node {
        parent: Weak<Node>,
        data: u32,
        pub left: Option<Rc<Node>>,
        pub right: Option<Rc<Node>>,
    }
    
    #[derive(Debug)]
    pub struct SetChildError;
    
    impl Node {
        pub fn new(data: u32) -> Self {
            Self {
                parent: Weak::new(),
                data,
                left: None,
                right: None,
            }
        }
    
        pub fn set_left(self: &mut Rc<Self>, mut child: Rc<Self>) -> Result<(), SetChildError> {
            let child_mut = Rc::get_mut(&mut child).ok_or(SetChildError)?;
            child_mut.parent = Rc::downgrade(self);
    
            let self_mut = Rc::get_mut(self).ok_or(SetChildError)?;
            self_mut.left = Some(child);
    
            Ok(())
        }
    }
    Ответ написан
    5 комментариев
  • Может ли инвалид без руки работать тестировщиком игр?

    CityCat4
    @CityCat4
    Дома с переломом ноги
    Нужно выяснять у конкрентной разработческой конторы. Многие игры проходятся одной мышью. Но тут я согласен с Stalker_RED - тестировщику приходится много писать багрепортов.
    Ответ написан
    Комментировать
  • Может ли инвалид без руки работать тестировщиком игр?

    Stalker_RED
    @Stalker_RED
    "Тестировщиком руками" - сможет, но не все игры, конечно.
    Пошаговые игрушки типа героев - без проблем. Головоломки всякие, мобильные игры, где вообще одним пальцем зачастую можно играть.
    А вот 3д-шутеры, и всякие высокоскоростные игры, типа платформеров или доты будет сложно проходить одной рукой.
    Хотя некоторые вон приспосабливаются ногами еще что-то нажимать.

    Значительная часть работы тестировщика - не играть, а писать репорты.
    Ну и есть еще автотесты - писать тесты кодом, чтобы они исполнялись автоматически при каждой пересборке проекта. Это ОЧЕНЬ востребовано, и не только в играх - любой софт. И за это платят как правило больше, чем за тестирование руками, и это точно можно делать одной рукой.
    Ответ написан
    Комментировать
  • Как можно сделать ввод жестами в браузере?

    Alex_mos
    @Alex_mos
    Google всему голова
    вот посмотрите первая ссылка в интернете
    Ответ написан
    Комментировать
  • Трудоустройство без диплома, но с сертификатом об окончании курсов программирования. Можно ли?

    xez
    @xez
    TL Junior Roo
    Всем плевать на корочки, а тем более на какой-то там сертификат.
    Важны только ваши знания и умения.
    Это точно.
    Ответ написан
    8 комментариев