• На каком я сейчас уровне?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Уровни есть в тетрисе. Или в думе.
    А в разработке есть грейды, которые от одной компании к другой меняются как небо и земля.
    Сходи на собеседование, узнай там.

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

    То есть и сам код очень простенький, и подход к написанию продукта невнятный.
    Ответ написан
    Комментировать
  • На каком я сейчас уровне?

    @lutokris
    Я к сожалению только начинаю изучать Python, Django, но почему мне кажется что вы написали что-то типа HelloWorld))
    Ответ написан
    1 комментарий
  • Qt и Visual Studio 2022?

    Zifix
    @Zifix Куратор тега Qt
    Barbatum
    в пакет входит qmake для visual studio 2019, но должно работать и с 2022 по описанию

    В теории нет разницы между теорией и практикой. А на практике есть.
    Ответ написан
    3 комментария
  • Как легально продавать электронные книги?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Да, они заключают договор с каждый издательством. И условия договора индивидуальны. Конкурировать будет очень тяжело, ведь вы не сможете обеспечить издательству такие объёмы продаж, а потому не сможете заключить на столько же выгодный договор, как Литрес. Кроме того, вам понадобятся серьёзные вложения в организацию DRM, это не просто сайт со скачкой файлов запустить.
    Ответ написан
    3 комментария
  • Как найти максимально похожий цвет?

    wataru
    @wataru Куратор тега Алгоритмы
    Разработчик на С++, экс-олимпиадник.
    Если скорость не особо важна, то просто пройдитесь по всем именным цветам (лучше, чтобы это был какой-то списко или массив, а не мап) и считайте какую-то метрику (например, сумма квадратов разности по каждому каналу отдельно). Из полученных чисел ищите минимум и выдавайте тот цвет, что ее дал.

    Если надо работать очень быстро, то надо представить ваши именные цвета как точки в трехмерном пространстве, построить kd-дерево или r-дерево и уже в нем искать ближайшую к запрошенной точку.
    Ответ написан
    5 комментариев
  • Как найти максимально похожий цвет?

    sergiks
    @sergiks Куратор тега Алгоритмы
    ♬♬
    Самое простое — считать сумму квадратов расстояний по каждому из компонентов: R, G и B.

    Для пары 0000DD, 0000C8 «расстояние» будет такое:
    (0x00 - 0x00)^2 + (0x00 - 0x00)^2 + (0xDD - 0xC8)^2 = 441
    Так посчитать до каждого из определённых цветов, найти минимум.

    Можно сравнивать в других цветовых моделях. Например, в HSV (оттенок, насыщенность, яркость) — если посчитаете, что насыщенный красный и тусклый красный точно того же оттенка «ближе», чем той же яркости оранжевый. Речь о возможно разных «весах» каналов в деле определения близости двух цветов.
    Ответ написан
    Комментировать
  • ASP.NET и .NET одно и то же?

    @mletov
    .NET - это общее название технологии. В ней и веб, и десктоп, и консольные приложения, и много чего еще. Одну и ту же .NET библиотеку (если она не узко специализированная) можно использовать как в веб, так и в десктоп.

    ASP.NET тоже бывает разный:
    - ASP.NET WebForms - дремучее легаси (пока аспнетов не расплодилось, ее называли просто ASP.NET, т к путать было не с чем)
    - ASP.NET MVC - легаси, но посвежее
    - ASP.NET Core, нынче называется .NET 5.0 (а скоро и 6.0) - актуальная технология. Хотя тут уже путаница в терминах, потому что, как мы помним, . NET - это еще и общее название технологии)

    PS: Чтобы совсем запутать, скажу ещё, что до ASP.NET WebForms была ещё одна технология, ASP, без .NET
    Ответ написан
    Комментировать
  • Как вернуть коллекцию для IEnumerable метода расширения?

    ayazer
    @ayazer
    Sr. Software Engineer
    public static IEnumerable<int> ExtensionMethod(this IEnumerable<int> list, int percentline)
            {
                try
                {
                    if (list.Count() <= 100 && list.Count() >= 1)
                    {
                        IEnumerable<int> count = list.OrderByDescending(sort => sort).Take((int)(list.Count() * percentline / 100.0f));
                        Console.WriteLine("Перечень элементов: \n" + string.Join(", ", count));
                    }
                    else
                    {
                        throw new ArgumentException();
                    }
                }
                catch (ArgumentException)
                {
                    Console.Write("ОШИБКА!!!\n");
                }
                return list;
            }


    ну и соотв далее

    var list = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
    
                list
                    .ExtensionMethod(10)
                    .ExtensionMethod(25);
    Ответ написан
    3 комментария
  • Как организовать быстрый поиск по 78 млн строк?

    uvelichitel
    @uvelichitel
    habrahabr.ru/users/uvelichitel
    • Отразить файл в память memory-mapped-file System.IO.MemoryMappedFiles, это примерно 30x быстрее чем просто читать с диска
    • Сделать и постоянно обновлять поисковый индекс ключ_поиска->file_offset, прямое решение - ассоциативный массив System.Collection.Generics Dictionary
    Ответ написан
    Комментировать
  • Нужна ли математика .net разработчику?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    в дополнение к ответу Василий Банников :
    - в криптографии/блокчейне/экономике*/проектирование разного рода, может потребоваться очень хорошая математическая база

    ps другой вопрос, на рынке труда, львиная масса вакансий, все таки таковы, как описал Vabkab

    * речь не об учете бухгалтерском, или товарном. но о любой толковой оптимизации, начиная от налогообложения. ну и не такая уж экзотика - логистика, и снова оптимизация ;)

    pps а если нейронные сети и/или бигдата - может требоваться база как выше школьной, так и уже очень серьезная
    Ответ написан
    4 комментария
  • Правда ли что операции с 8 битными числами происходят медленнее, чем с 64 битными?

    freeExec
    @freeExec
    Участник OpenStreetMap
    Неправда, в 64-битном регистре разом можно сложить 8 8-битных чисел.
    Ответ написан
    1 комментарий
  • Как организовать быстрый поиск по 78 млн строк?

    @rPman
    На любом языке программирования, желательно c++, реализуешь следующее приложение, использующее map или аналогичную структуру следующим образом.

    В качестве ключа - хеш от искомого значения
    В качестве значения - список структур, в котоых пара искомое значение (с возможностью выставить null) + возвращаемое значение (идеально может быть смещение в файле csv где начинается нужная строка). Возможно вместо списка использовать еще один map (значение => смещение или даже значение => список смещений, если искомое поле не уникально)
    Map<hash,List<{value,offset}>> или Map<hash,Map<value,List<offset>>>

    Тогда первоначальное наполнение просто считает хеши ключа и заполняет в возвращаемые значение смещение соответствующих строк в csv файле
    Затем вторым проходом, для тех записей где случились коллизии хеша и список возвращаемых значений больше 1, прописать искомое значение либо его хеш (с другим алгоритмом, если не боишься двойных коллизий)

    Затем организуешь поисковый метод который будет принимать поисковые запросы и складывать в очередь (thread safe) ответы (id запроса + смещение строки в csv либо null если не найдено). Метод просто считает хеш искомой строки и берет в map нужный список ответов, если их больше 1 то последовательно сравнивае

    Параллельным потоком либо с асинхронно считываешь csv строки, на основе этой очереди (если диск hdd то лучше сортировать порядок чтения записей из файла по смещению, если записи в csv очень короткие, сотня другая байт, то сортировать имеет смысл и для ssd)

    Если правильно подобрать хеш для искомого значения, то скорость поиска даже на слабых машинах будет сотни миллионов в секунду и будет фактически упираться в скорость чтения csv с диска.
    -------------
    Готовые базы данных будут хранить в памяти значения искомого поля, что может оказаться накладно, когда как указанный алгоритм позволит подобрать такой хеш, чтобы коллизий его было сильно мало и не требовалось бы хранить значение в принципе.

    само собой можно считать хеш самому и использовать готовую базу данных но тогда какой смысл в ней если все делать самому.
    Ответ написан
    Комментировать
  • Как организовать быстрый поиск по 78 млн строк?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    • Clickhouse,
    • Sphinx/Manticore search
    • Reindexer
    • грамотный Сишник/Растщик/Гофер
    Ответ написан
    Комментировать
  • Как закрепить звуковую карту?

    @Drno
    Как и любое устройство - прикручивается к корпусу.
    Ответ написан
    2 комментария
  • Почему у более дорогих процессоров память 1 и 2 уровня ниже?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Приписку "на ядро" во втором столбике тоже надо учитывать. Если на нее умножить, все становится на свои места.
    Ответ написан
    Комментировать
  • Как у вас на Хабре отменить приглашение?

    0xD34F
    @0xD34F
    Никак.

    Существуй подобная возможность, она позволяла бы спамить - зовёшь одного (ему на почту падает соответствующее уведомление), отменяешь приглашение, зовёшь другого (и ему письмо приходит), отменяешь, и так ещё пятьсот человек перебираешь.

    В будущем тщательнее выбирайте, кого хотите пригласить.
    Ответ написан
    Комментировать
  • Нужно ли сообщение про cookie в СНГ?

    artzolin
    @artzolin
    php, WordPress разработка сайтов artzolin.ru
    Потому что это требование Роскомнадзора, для соответствия закону №152-ФЗ "О персональных данных" требуется политика компании в отношении персональных данных пользователей

    К персональным данным относят как привычные и понятные — ФИО, телефоны, почта и прочее, так и аналитические — идентификатор устройства, ip-адрес, файлы cookie

    Нарушения в оформлении или отсутствие необходимых согласий карается штрафом до 75 тыс.руб. и это главная причина по которой "все лепят сообщения про кукисы"
    Ответ написан
    3 комментария