Задать вопрос
  • Стоит ли указывать паспортные данные в анкете соискателя?

    Крайне странно предоставлять свои паспортные данные для чего-то кроме составления трудового договора.

    Как-то мне тоже подобную анкету давали, и ещё анкету с инфой по родственникам тоже.
    Я просто спросил "а обязательно их вообще заполнять, а можно отказаться?" Мне сказали, что можно не заполнять и трудоустройству это никак не помешало
    Ответ написан
    Комментировать
  • Как стать начинающим программистом в текущих реалиях?

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

    xez
    @xez
    TL Junior Roo
    Что ж вы так сразу "не выдающийся человек".
    Если у вас "Отличный английский язык" - уже выдающийся, на местном уровне.
    Чтобы стать програмистом надо
    1. Учиться, учиться и еще раз учиться.
    2. Програмировать, програмировать и еще раз програмировать.
    Легко, скорее всего, не будет, особенно в начале пути.
    Попробуйте устроиться на какую-нибудь стажировку, школу разработчиков или типа того. Туда можно попасть без опыта, но скорее всего, что-то уже знать и уметь надо.
    Ответ написан
  • Как стать начинающим программистом в текущих реалиях?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Куда легче всего пробиться в программирование?

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

    Мне вообще всё равно, куда идти в плане доходов (лишь бы на еду хватало)

    Почему тогда именно ИТ?

    поскольку знаю, что я не выдающийся человек ни в чём

    Бизнес выдающихся и не ищет в основном.

    - Теоретический опыт по книгам по Java,

    Подозреваю, что сейчас это знает каждый школьник.

    Школьники сейчас читать-то не умеют многие.

    Что вы мне посоветуете?

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

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    а вот тема ИБ мне действительно интересна, хожу вокруг неё больше года: изучил основы стека TCP/IP, линукс уже стал основной системой, немного знаком с wireshark, nmap, metasploit и др. инструментами из kali

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

    если брать как вариант удаленную работу за границей

    Даже в более спокойные времена никто не нанимал безопасников на удёлнку из другой страны, так как это небезопасно. Сейчас сотрудник из РФ - это токсичный актив, не особо нанимают даже тех, кто находится в стране нанимателя, а из РФ тем более. Особенно безопасников.
    Ответ написан
    Комментировать
  • Как начать делать общие проекты на linkedin?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    недавно я узнал, что можно как-то найти общие проекты на linkedin

    Линка - это работный сайт со свистоперделками, принципиально от HH он не отличается, соответственно и общие проекты искать там бесполезно.

    которые бы помогли мне лучше освоить программирование

    Для этого нет ничего лучше, чем устроиться разработчиком в штат.

    может кто-то подсказать где можно найти таких энтузиастов — новичков которые бы хотели разделить это со мной

    Нигде и не за чем. Если не можешь сам начать, то толпа таких же ничем не поможет.
    Ответ написан
    Комментировать
  • Остаток от деления в Python -1%5?

    По определению деления. Школа 3 класс.
    Когда мы делим - мы отвечаем на вопрос "сколько раз от делимого нужно отнять делитель, чтобы получился 0". Остаток - это то что лишнее остаётся, что уже отнять мы не можем, не уйдя в минус.
    Остаток всегда больше нуля.
    При делении отрицательного числа на целое - мы наоборот прибавляем делитель к делимому, пока мы не получим 0 или положительное число.

    Более формально это выглядит так:

    Для любых целых чисел a и b, причём b != 0, найдётся единственная пара целых чисел q и r, таких что a = q * b + r, где 0 <= r < |b|.

    a - делимое
    b - делитель
    q - частное (целое)
    r - остаток

    Вот и получается
    1 = 0 * 5 + 1
    -1 = -1 * 5 + 4

    UPD: в python это не совсем так. На самом деле в Python действительно релизован mod, как говорит Rsa97, но у этой операции нет чёткого определения, по тому в разных языках оно реализовано по разному:
    https://en.wikipedia.org/wiki/Modulo
    q = floor(a/b)
    r = a - b*q

    В первом случае: q=0, r=1
    Во втором: q=-1,r=4
    (в принципе то же самое)
    Интересное начинается, если делитель отрицательный:
    Если взять a=1, b=-5, то тогда r=-1, q=-4
    А вот при обычном делении с остатком: r=0, q=1
    Ответ написан
    Комментировать
  • Как в Linux пустить весь трафик через socks5 прокси?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Есть два вида странных людей:
    1. Желающие использовать VPN для определённых приложений.
    2. Желающие использовать прокси для всего трафика.

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    Никак. В таких компаниях нет необходимости в сотрудниках или в MVP.
    Таким компаниям нафиг не нужен сайт (может быть пригодится группа в ФБ/телеграме).
    В таких компаниях нет денег на третьего сотрудника и вообще не выделен и не создан бюджет на айти.
    Зачем туда устраиваться?

    Вдобавок, не путайте начинающую ИТ компанию и стартап - разные вещи.

    В такую компанию нужен не сотрудник, а инвестор.
    Ответ написан
    3 комментария
  • Как обойти ошибку "Превышен лимит памяти"?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    1. Чтобы найти максимум, не надо запоминать все значения, достаточно помнить максимальное.
    2. Эта задача решается гораздо проще со сложностью O(n), а не O(n2), как у вас.
    Берём два крайних отрезка (left = 0 и right = n-1), вычисляем площадь прямоугольника (right - left) * min(length[left], length[right]).
    Учитывая, что при сдвиге границ к центру расстояние (right - left) уменьшается, для увеличения площади необходимо увеличение min(length[left], length[right]). Поэтому берём ту границу left или right, длина отрезка для которой меньше, и начинаем двигать к центру, пока длина нового отрезка не станет больше предыдущей (length[left'] > length[left] или length[right'] > length[right]).
    Вычисляем новую площадь. Если она больше предыдущей, запоминаем положения отрезков. Повторяем процедуру сдвигания.
    Ответ написан
    Комментировать
  • Классы. Принцип работы __add__ с __radd__?

    Vindicar
    @Vindicar
    RTFM!
    1. Пытается отработать x + y. Вызывается x.__add__(y) (или, что то же самое, Commuter5.__add__(x, y)).
    2. Внутри кода __add__() вычисляется выражение self.value + other. Вызывается self.value.__add__(other)(int.__add__(self.value, other), так как self.value содержит целое число).
    3. int понятия не имеет, что такое Commuter5 и как с ним складываться. Его __add__() возвращает NotImplemented. Питон понимает, что от int помощи не дождёшься.
    4. Поэтому вызывается other.__radd__(self.value).
    5. Внутри этого метода вычисляется выражение self.value + x. В данном случае x - это self.value для первого операнда, т.е. число. self.value - тоже число. int знает, как складываться с другим int, и выражение даёт int.
    6. Отрабатывает конструктор Commuter5() внутри __radd__(). Создаётся новый экземпляр класса, и возвращается как результат вызова __radd__().
    7. Отрабатывает конструктор Commuter5() внутри __add__(). Результат (ещё один экземпляр Commuter5) возвращается наружу.
    8. z присваивается результат, возвращённый вызовом __add__().

    По-моему, в коде ошибка, так как в результате у нас окажется, что внутри Commuter5() будет ещё один объект Commuter5(), внутри которого уже будет сумма. Ты можешь проверить это достаточно просто:
    print(type(z.value))
    Если выведет <class Commuter5 ...> - значит, я прав.
    Чтобы это исправить, операторы __add__() и __radd__() должны проверять, что получилось в результате суммирования, и не заворачивать результат в Commuter5() еще раз.
    Ответ написан
    2 комментария
  • Возможно попасть на стажировку backend разработчиком в 17 лет?

    Никто не может тебе запретить попытаться попасть куда-нибудь, но я бы сильно не надеялся.
    Только главное смотри, какие документы подписываешь.
    Например, есть распространённая околомошенническая схема, когда "стажёру" дают вместо трудового договора - договор образовательный и вписывают туда огромную неустойку, если ты не отработаешь - такое надо посылать лесом.
    Ответ написан
    1 комментарий
  • Стоит ли идти на практику в компанию?

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

    oshliaer
    @oshliaer Куратор тега Google Sheets
    Google Products Expert
    Округляет до двух нулей перед запятой

    Напрмиер, =ROUND(324123,234;-2)

    вернет 324100

    , а =ROUND(324193,234;-2)

    вернет вернет 324200

    66d1cc57abad6641640695.png
    Ответ написан
    1 комментарий
  • Самопроверка целостности кода контрольной суммой, как реализовать?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Для точного восстановления кода по контрольной сумме последняя должна быть размером с архив этого кода.
    Как правило, если контрольная сумма не совпадает, то просто выдаётся ошибка и запуск оборудования останавливается. Так поступают, например, BIOS'ы компьютеров. Дальше нужно восстановить код из внешнего источника, это дело для сервисного техника, или внутреннего хранилища (если там всё в порядке), такое есть на материнских платах с двумя чипами BIOS.
    Как более сложный вариант - проверять контрольную сумму каждой функции. Если повреждена критическая функция, то останавливать работу, если некритическая, то не вызывать её во время работы.
    Ответ написан
    2 комментария
  • Почему на leetcode различается скорость одного и того же кода?

    Alexandroppolus
    @Alexandroppolus
    кодир
    Там скорость выполнения зависит от фазы луны. Забей.
    Ответ написан
    Комментировать
  • Куда дальше расти сисадмину?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Во-первых, не сидеть по пять лет в компаниях, кроме случаев, когда все пять лет идёт интенсивный профессиональный рост и ценный стаж. Во-вторых, каждого нового работодателя искать крупнее предыдущего. В-третьих, использовать любую возможность для получения ценного опыта, практически всегда есть, что улучшить в системах заказчика. Наконец, не надо перегорать от того, что у заказчика нет потребности в том, что вам интересно и полезно. Как-то покрепче психику надо иметь.
    Ответ написан
    3 комментария
  • Как создать exe приложение на macOS?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Python исторически не создавался для компилляции в бинарники.

    Попробуй реализуй свою задачу на языке Swift. Это как раз для Мак-ов язык и для компилляции.
    Ответ написан
    Комментировать
  • Как получить данные с сайта росреестра?

    Vindicar
    @Vindicar
    RTFM!
    Правило номер ноль при парсинге: при любых проблемах сохраняй на диск то, что тебе пришло в ответе от сервера.
    То, что ты видишь в браузере - это не обязательно то же самое, что браузер получил от сайта.
    То, что браузер получил от сайта - это не обязательно то же самое, что requests получит от сайта.

    В данном случае, и requests и браузер получают в ответе вот это:
    <body style="height: 100%; width:100%;">
    <div id=app style="height: 100%; width:100%;"></div>
    <script src=js/chunk-vendors.c1d200da.js></script>
    <script src=js/chunk-common.adcda62e.js></script>
    <script src=js/chunk-esri.caf28189.js></script>
    <script src=js/index.ca134891.js></script>
    </body>

    Как видишь, нужного элемента тут просто нет, потому что он создаётся динамически, через JavaScript. А BS не выполняет скрипты.

    Варианта только два:
    1. Выяснять, каким запросом сайт подтягивает данные для этого, научиться этот запрос делать самостоятельно и вытаскивать искомые данные из полученного. Медленно и трудно на подготовительном этапе, зато потом работает сравнительно быстро... если, конечно, сайт защиту от парсинга не поставит.
    2. Запускать управляемый браузер, дать ему загрузить страницу и выполнить скрипты, а потом уже искать нужные данные. Быстрое решение в плане разработки, но более медленное и ресурсоёмкое в дальнейшем использовании.
    Ответ написан
    Комментировать
  • Почему selenium не видит элеманта captcha?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Капча расположена в iframe, это другой контекст, на который вначале необходимо переключиться, выполнить действия внутри этого контекста, затем переключиться (вернуться) на дефолтный контекст:
    import time
    from fake_useragent import UserAgent
    from selenium import webdriver
    from selenium.webdriver.chrome.service import Service
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    
    option = webdriver.ChromeOptions()
    ua = UserAgent()
    option.add_argument(f'user-agent={ua.random}')
    option.add_argument("--disable-infobars")
    
    s = Service(executable_path=r"C:\Python Scripts\валид\Steam Number\chromedriver.exe")
    
    driver = webdriver.Chrome(options=option, service=s)
    driver.maximize_window()
    driver.get('https://help.steampowered.com/en/wizard/HelpWithLoginInfo?issueid=406')
    
    # iframe
    iframe = WebDriverWait(driver, 10).until(
        EC.presence_of_element_located((By.XPATH, '/html/body/div[1]/div[7]/div[2]/div[2]/div/div[2]/div[1]/div[3]/form/div[3]/div[1]/div/div/div/iframe'))
    )
    
    # switch to iframe context
    driver.switch_to.frame(iframe)
    
    element_to_click = WebDriverWait(driver, 10).until(
        EC.element_to_be_clickable((By.XPATH, '/html/body/div[2]/div[3]'))
    )
    
    element_to_click.click()
    
    # switch to default context
    driver.switch_to.default_content()
    
    time.sleep(10)
    driver.quit()

    6672812eb9ca8801428501.png

    66728135eeb06375772906.png
    Ответ написан
    7 комментариев