• Пользуетесь ли вы кириллицей в Git?

    CityCat4
    @CityCat4
    Внимание! Изменился адрес почты!
    Разрабы пишут комменты на русском, но сам я никогда русский не использую - старая привычка, сохранившаяся со времен долгой работы на FreeBSD, где консоль долго была в koi8-r.
    Кроме того, микротики не переносят русских букв.
    Ответ написан
    Комментировать
  • Оператор станков с ЧПУ хочет в IT. А есть ли смысл? И куда податься с имеющимися навыками?

    @pavelsha
    Автор, как советует куратор, разберись в себе. Тогда и без нас будешь знать, куда идти.

    А ближе к теме...
    Записывай слова для гугления:
    АСУ ТП, SCADA, ПЛК, автоматизация производства, учёт электроэнергии, телеметрия, промышленная автоматизация.

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

    Используй базу, которая у тебя есть, с умом.
    Моё мнение, "уеб-программисты" в большинстве случаев - это путь для тех, кто никакой базы не имеет. Не ведитесь на рекламу курсов и предметные статьи/ролики блогеров и ютуберов.

    И учти главное: у работодателей голод на хороших технарей в автоматизации производств последние лет 30. А джунов веб-мастеров переизбыток уже 15 лет минимум.
    Ответ написан
    6 комментариев
  • Как повысить свои навыки в построении архитектуры сложных приложений?

    bingo347
    @bingo347
    Crazy on performance...
    Если по теории, то мне в свое время вот эта книга помогла:
    https://www.litres.ru/robert-s-martin/chistaya-arh...

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

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

    Еще через пол года прочел третий раз, опять же с оглядкой на личный опыт. И тут я кажется уже совсем въехал. По крайней мере многие проблемы с организацией взаимодействия между компонентами стали разрешаться. И вообще появилось достаточно четкое понимание, как структурировать приложение и где разбивать его на компоненты.
    Ну и после 3 прочтения еще помог момент: мне дали с нуля проектировать новое, достаточно крупное приложение на Rust. Притом заказчик кричал "микросервисы - это круто, хочу, хочу, хочу", а тимлид мне сказал "давай монолит, но так чтоб потом легко было распилить, а то все сроки про**ем". Вот тут прямо вообще понимание пришло. Ну и плюс в Rust архитектурные компоненты очень хорошо ложатся на отдельные крейты (это такая единица компиляции в Rust), а компилятор в принципе не дает делать циклические зависимости между крейтами.

    Ну и недавно решил освежить память и перечитать еще раз. И на этот раз уже были мысли вроде "так если делать по другому, потом проблемы вылезут тут и тут".
    Ответ написан
    1 комментарий
  • Product manager с нуля, насколько реально?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    Джун продукт менеджер? нет такой специальности.
    Ты либо ведешь продукт, либо не ведешь. Даже помощник продукт менеджера должен быть в теме.

    Разработка весьма сильно отличается от любого другого материального продукта.
    А так как задача продукт менеджера в том числе и понимать куда мы движемся, то не разбираясь разработке, не умея даже примерно оценить затраты на реализацию разных фич (а то, что какие-то тимлиды или архитекторы вам подскажут - это неправда. Они будут топить за технологии, а не за хотелки бизнеса), вы просто развалите продукт.

    Конечно менеджмент сильно зависит от человека, и какой у тебя бэкграунд мы не знаем. Найди знакомых, которые в этом направлении работают, пообщайся тесно, выясни мнение айтишника со стороны не рандома с инета, а того, кто тебя знает и с тобой работал.
    Ответ написан
    3 комментария
  • Почему Go с горутинами работает на одном ядре?

    EvgenyMamonov
    @EvgenyMamonov Куратор тега Go
    Senior software developer, system architect
    Горутины выполняются на разных процессорах как и должны, у вас четвёртое число слишком большое, все горутины завершают выполнение, а одна продолжает работать. По этому и создаётся впечатление, что они все работают на одном ядре.

    Чтобы в этом убедиться добавим два fmt.Printf, чтобы получилось вот так
    package main
    
    import (
        "fmt"
        "runtime"
        "sync"
    )
    
    var wg sync.WaitGroup
    
    func main() {
        runtime.GOMAXPROCS(8)
        arr := []int{1343434, 1343434300, 234343400, 334343434000, 400434340, 203434340, 4232, 23545, 15535, 353535, 33434434, 5334345, 3533434345, 3535}
        for idx, el := range arr {
            wg.Add(1)
            go test(el, idx)
        }
        wg.Wait()
    }
    
    func test(el int, idx int) {
        fmt.Printf("%d started: %d\n", idx, el)
        for i := 0; i < el; i++ {
            el = el - 1
        }
        fmt.Printf("%d completed: %d\n", idx, el)
        defer wg.Done()
    }


    Вывод будет примерно таким
    4 started: 400434340
    8 started: 15535
    8 completed: 7767
    13 started: 3535
    13 completed: 1767
    6 started: 4232
    6 completed: 2116
    10 started: 33434434
    3 started: 334343434000
    7 started: 23545
    7 completed: 11772
    5 started: 203434340
    12 started: 3533434345
    11 started: 5334345
    2 started: 234343400
    1 started: 1343434300
    11 completed: 2667172
    9 started: 353535
    9 completed: 176767
    0 started: 1343434
    0 completed: 671717
    10 completed: 16717217
    5 completed: 101717170
    4 completed: 200217170
    2 completed: 117171700
    1 completed: 671717150
    12 completed: 1766717172

    При внимательном просмотре станет видно, что нет записи 3 completed.

    меняю элементы с индексами 4 и 5 на такие же числа 334343434000, 334343434000, т.е. делаем чтобы все горутины отработали, но чтобы 3 осталось, т.е. вот так

    arr := []int{1343434, 1343434300, 234343400, 334343434000, 334343434000, 334343434000, 4232, 23545, 15535, 353535, 33434434, 5334345, 3533434345, 3535}


    Запускаем заново и видим, что теперь 3 ядра отлично загружены
    %Cpu0  :  0.3 us,  1.0 sy,  0.0 ni, 98.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    %Cpu1  :100.0 us,  0.0 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    %Cpu2  :  1.7 us,  0.7 sy,  0.0 ni, 97.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    %Cpu3  :  1.6 us,  2.9 sy,  0.0 ni, 95.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    %Cpu4  :100.0 us,  0.0 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    %Cpu5  :  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    %Cpu6  :100.0 us,  0.0 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    %Cpu7  :  5.6 us,  1.0 sy,  0.0 ni, 93.4 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    Ответ написан
    Комментировать
  • Умер SSD, можно ли вытащить данные?

    CityCat4
    @CityCat4
    Внимание! Изменился адрес почты!
    Здесь есть пользователь с ником Zettabyte - он спец по восстановлению данных, спроси его или может он сам откликнется при упоминании...
    Ответ написан
    Комментировать
  • Умер SSD, можно ли вытащить данные?

    ScriptKiddo
    @ScriptKiddo
    можно ли вытащить данные

    Можно. Обратитесь в компанию, специализирующуюся на восстановлении данных.
    Без аппаратного комплекса что-то вытащить с SSD скорее всего не получится
    Ответ написан
    Комментировать
  • Теоретически возможно ли дать регулярное выражение, которое правильно принимает 29 февраля, только тогда, когда данный год действительно високосный?

    Alexandroppolus
    @Alexandroppolus
    кодир
    из википедии

    год, номер которого кратен 400, — високосный;
    остальные годы, номер которых кратен 100, — невисокосные (например, годы 1700, 1800, 1900, 2100, 2200, 2300);
    остальные годы, номер которых кратен 4, — високосные[5].
    все остальные годы — невисокосные.


    регулярка, которая проверяет, что число - високосный год (без нулей впереди):
    /^(?!0+)\d*(?:[48]|(?:[48]|[02468][048]|[13579][26])00|(?:(?!00$)[02468][048]|[13579][26]))$/


    для года фиксированной длины, с нулями впереди, если нужно
    /^(?=\d{4}$)(?!0+$)\d*(?:(?:[02468][048]|[13579][26])00|(?!00$)(?:[02468][048]|[13579][26]))$/gm

    (самое первое число - длина)
    Ответ написан
    Комментировать
  • Как запустить 5000 потоков параллельно с GET запросами?

    xpert13
    @xpert13
    Full Stack Developer
    Для начала хочу сказать, что мой основной стек на данный момент так же РНР. Возможно я в чем то ошибаюсь, так что не стоит воспринимать моё мнение как мнение великого гуру, но я всё таки поделюсь им.

    1. Никак. Я на днях копался в каком-то из фреймворков для многопотока PHP типа ReactPHP и под капотом там просто запуск отдельного процесса для каждого потока. Да, там есть оптимизации, которые позволяют жрать меньше ресурсов, но всё равно это выглядит как ресурсоемкий костыль.

    2. Я бы выбирал другой язык. Судя по описанию задачи кода там не много, так что переписать будет несложно.
    Ответ написан
    1 комментарий
  • Что нужно уточнить на собеседовании?

    kryamk
    @kryamk
    Будут ли печенье с чаем от фирмы
    Ответ написан
    Комментировать
  • Какой объём трафика у websocket если ничего не передавать и просто держать соединение?

    @deliro
    PING/PONG кидается раз в 20 секунд https://websockets.readthedocs.io/en/latest/topics...
    PING/PONG фреймы — по одному байту. Плюс, если считаем, объём TCP и IP фреймов.

    Итого за час 180 пингов и 180 понгов или 360 байт не считая оверхэда на нижележащие фреймы.
    Если считать оверхэд, то примерно 65 байт x (180 пингов + 180 понгов) ~ 23кб/час

    Плюс, какой-то оверхэд даст TLS и его хэндшейки, плюс, незначительный оверхэд дадут хэндшейки TCP. Но это явно не близко к 70мб
    Ответ написан
    2 комментария
  • Можно ли регистрировать название домена, если на западе есть аналогичный сервис в зоне .com?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    ру отберут после реги международного товарного знака, независимо от давности
    если тов знак только в ру (зерегиили после домена) типа будут варианты, но известные случаи тоже в пользу отбора преимущественно
    Ответ написан
    4 комментария
  • Как можно упростить код для понимания?

    lxstvayne
    @lxstvayne
    Люблю Python
    Такие сложные вложенные конструкции лучше никогда не использовать, их очень трудно читать. К слову, list comprehensions здесь никакой производительности не добавит. Лучше сделать код более читабельным:
    n = int(input())
    w = []
    count = int(input())
    for _ in range(count):
        w.append(input())
    
    for i in w:
        if 1 <= n <= len(i):
            print(i[n - 1], end='')
    Ответ написан
    1 комментарий
  • Как передать на бекенд требования к API?

    ddv88
    @ddv88
    Binance Futures
    Судя по описанию у вас команда в целом не понимает что делать и как. А то что делают, делают неправильно.
    Стоит начать с того, чтобы найти хорошего лида. Тогда все вопросы о том, кто и что должен делать, и в какой последовательности отпадут сами собой.
    Ответ написан
    4 комментария
  • Если домашняя папка зашифрована, данные всеравно могут украсть?

    @zkrvndm
    Софт для автоматизации
    Могут, так как сейчас все процессоры содержат аппаратные бэкдоры, это уже не говоря о том, что в ядре Linux тоже могут быть бэкдоры, т. е. абсолютной защиты не существует.
    Ответ написан
    2 комментария
  • В 40 лет планирую поменять сферу деятельности с 1С на Android? Сколько на старте смогу зарабатывать?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    Открой вакансии, посмотри сколько зарабатывают джуны на Андроиде.

    Неужели за 18 лет активной ИТ деятельности не наработались навыки гугления дорожных карт? Или есть мысли что на тостере составят индивидуальный гороскоп с учетом личных привязанностей? 40 лет, а вопросы как у 15-летнего.

    Нет, никто не даст тебе 2к со старта.
    Нет, на андроиде тех, кто ищет себе позицию разработчика не будет зарабатывать много даже мидером, потому что разработка там не слишком сложная, конкуренция высокая.
    Те, кто смог попасть в совладельцы либо написать и вывести в топы свое приложение - это уже совсем другой случай, но там самостоятельности в деятельности нужно еще больше.

    На 40летних смотрят нормально. И вообще эта тенденция о малолетних сеньорах существует только в СНГ, где коммерческая разработка более-менее началась после 2000-2005, а не в 1980-м и раньше, как зарубежом.
    Поэтому разработчиков, которые до этого момента что-то активно разрабатывали за деньги очень немного, еще и большинство из них уехало. Вот и выходит что, скажем, 50-летних разработчиков, которые сразу начали именно как разработчики и уже 30 лет как разрабатывают - в xUSSR ну может пару тысяч. Но это потихоньку меняется - подрастают люди, стареют.

    Практику в Андроид получить очень легко.
    Берешь и пишешь софт. Андроид купить несложно, время найти после работы - это уже неизвестно, ваше личное.
    Можно джава, можно котлин, я бы ратовал за джаву - в случае чего всегда можно в ентерпрайз сдвинуться.
    И берешь юнити и пишешь для своих же детей развивающие игрушки, или что-нить еще, в зависимости от возраста. Так первый опыт и получишь.
    Ответ написан
    13 комментариев
  • Какие есть сертификаты для веб-серверов?

    vabka
    @vabka
    Токсичный шарпист
    Мы гордо отвечаем, что первая.

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

    Вопрос: есть ли какие-то программы сертификации веб-серверов? Чтобы в конце получить документ, подтверждающий степень защищенности.

    Скорее всего, вас интересует сертификация ФСТЭК, если ваша система будет работать с гостайной и всяким таким.
    https://softline.ru/about/blog/sertifikatsiya-fste...

    Но есть ещё варианты:
    - Аудит ИБ (если сертификат не нужен, но надо проверить защищённость)
    - PCI DSS (если собираетесь принимать платежи)
    - Сертификация от ФСБ (если вы разрабатываете средства защиты информации)
    Ответ написан
    Комментировать
  • Нужно ли создавать отдельный профиль в соцсетях с имитацией фанатичного отношения к работе?

    samodum
    @samodum
    Какой вопрос - такой и ответ
    Да, тебе показалось.
    Никто не просит ссылки на соцсети.
    В любом случае, ничто не мешает сказать, что у меня нет аккаунта в соцсетях.
    Хотя, ссылку на соцсети Linkedin, Github или stackoverflow вполне можно оставить, там я есть
    В итоге многие создают такие вот фейки-аккаунты в пиджачках, а порой и вообще без личных фоток, и все отведено только под работу. Репосты на тему работы, паблики на тему работы и т.д.

    Это уже клиника. Скажи этим людям, чтобы больше так не делали. Аккаунт где всё про работу говорит о том, что у человека проблемы с головой, либо что это фейковый акк. В реальности таких людей не бывает. Кроме Илона Маска, где он постоянно только о работе и пишет ;)
    Ответ написан
    4 комментария