• Стоит ли читать книгу "Грокаем алгоритмы?"?

    @margadon
    Программист встраиваемых систем. Тимлид
    Можно курить кормена и постичь все тонкости и математику O, Θ, Ω нотаций, но спросите себя - зачем оно Вам и в какой степени это Вам нужно. При прохождении собеседований Вас спросят про сложноть алгоритма в O -нотации но вряд-ли интервьюер хорошо знает что это такое на самом деле. Вам скорре всего надо занть что пузырек и вставка это - O(n^2), а слияние - O(n*log(n)). А если вы не пишете хай лод и биг дату, а ваяете корпоративный сайтик на питоне, то вы просто пишете sorted и этого достаточно в 100% случаев. Мир необратимо изменился с момента появления gpt-like сетей, которые с ходу напишут Вам любой алгоритм, и тесты к нему за 2 секунды на любом языке. Это новая реальность и уже есть курсы где учат писать код при активной поддержке нейросетей. Это новый стандарт и надо с этим жить. Никто не углубляется в работу транзитора, механизм работы ячейки памяти, хотя они лежат в основе работы любого компьютера, и от кодеров этого знать не требуют. Кодеру фронта неведомы механизмы страничной адресации памяти, архитектура процессора, и это ему никак не мешает делать его работу. Так что, определите границы своей предметной области и учите то, чот актуально для Вас здесь и сейчас.
    Ответ написан
    Комментировать
  • Как изменить содержимое /etc/dhcpcd.conf с помощью Python?

    @margadon
    Программист встраиваемых систем. Тимлид
    например так:
    def file_edit(fname, field, new_value):
        """ edit conf file <field> value to new one """
        if type(fname)     != str | \
           type(field)     != str | \
           type(new_value) != str :
            return False
        """ to do - validate the field mask """
        with open(fname, 'r') as f:
            file = f.read()
        strs = file.split('\n')
        for i, _str in enumerate(strs):
            if field & not "#" in _str:  #don't edit comments
                strs[i] = field + new_value
        out = ''
        for _str in strs:
            out+=_str+'\n'
        with open(fname, 'w') as f:
            f.write(out)
        return True

    Отличие этого кода от всяких конфиг парсеров - он полностью сохраняет комментарии в исходном файле.
    Всю малинку после редактирования перезагружать не нужно, достаточно перезагрузить dhcpcd.service
    sudo ip addr flush dev eth0 && sudo systemctl restart dhcpcd.service
    Ответ написан
    Комментировать
  • Стоит ли идти из радиотехники в IT?

    @margadon
    Программист встраиваемых систем. Тимлид
    Добрый день! Я радиоинженер. Присоединяюсь к авторам выше. Вам не придется куда-то уходить и что-то кардинально менять. Посмотрите в сторону ЦОС, FPGA, микроконтроллеров, интернета вещей, встраиваемых компьютеров. IT и радиоэлектроника, САУ и программирование сливаются, сферы проникают одна в другую, синтезируют новую IT сферу, в которой беспроводные сети (меш и пр.), умные дома, машины, а еще бионика, технологии создания привычных устройств на новых материалах и принципах, например квантовые компьютеры. Погуглите ESP8266 - супер машинка. Читайте хабр. Вообще, мы на пороге новой техно-волны и эта волна, имхо, пойдет не из России. Так что, учите английский.
    Ответ написан
    Комментировать
  • C чего начать разработку небольшой CMS?

    @margadon
    Программист встраиваемых систем. Тимлид
    Вашу бы энергию да в мирных целях...
    я вот ищу кто мне софтину для машинного зрения на С++ напишет для linux. в первом приближении cython тоже сгодится.
    Ответ написан
    Комментировать