• Что мой провайдер знает обо мне?

    @nirvimel
    Когда я захожу на определенный сайт, провайдер видит URL?

    Да.

    А если я захожу на https?

    Известен IP сервера и имя домена. Больше ничего.

    Откуда провайдер узнает, что я скачиваю определенный фильм/программу через torrent?

    Торрент-клиент общается с трекером по HTTP. Все видно насквозь: конкретные торренты + вся статистика (когда начато скачивание, когда закончено, когда пошла раздача, сколько роздано). Возможно подключение к трекеру и по HTTPS, но rutracker.org такой возможности не дает (мне тоже интересно почему).

    Все пакеты которые я получаю и раздаю значит провайдер скачивает себе, чтобы узнать что это за фильм/программа?

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

    Или он отслеживает факт скачивания .torrent файла, а затем делает вывод по идущим пакетам, что это скачивается?

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

    Когда я пользуюсь VPN, что видит провайдер?

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

    Что я зашел на определенный IP и с него идут зашифрованные потоки?

    Дальнейшее направление трафика от VPN-сервера отследить невозможно (по крайней мере, на оборудовании провайдера в автоматическом режиме). Но при целенаправленной слежке за абонентом в принципе возможно по временным меткам сопоставить трафик абонента с трафиком любого сервера.

    OpenVPN будет работать через VPN IP и в браузере и при обновлении Windows, драйверов, ...?

    В зависимости от настройки. Но в общем случае, да, так.

    Читал, что в Windows есть такая особенность, что если провайдер как-то урезает пакет, то VPN отключается и сайту показывается мой реальный IP?

    Это не связанно с провайдером. Это особенность Windows. Когда VPN отваливается, весь трафик вылетает наружу в открытом виде. Опять же зависит от настроек. Но это еще одна цена "удобства" при использовании Windows.

    При этом провайдер видит на каком я сайте, что скачиваю?

    VPN отвалился - хацкер спалился.

    Таких фишек много?

    Смотря о чем речь. В сфере сетевой безопасности и анонимности различных нюансов вообще много.

    Как от них защитится?

    Учить мат.часть. Разбираться в сетевых протоколах и в устройстве ОС.

    Если пользуюсь каким-то расширением типа ZenMate, dotvpn, провайдер аналогично как и с VPN видит что что-то отправляется и приходит на определенный VPN IP?

    Расширения очень разные. Они могут базироваться на совершенно разных технологиях. Ни один специалист вам не скажет за все расширения. Не исключено, что многие из них, по сути - honeypot, то есть созданы с целью слежения за любителями анонимности, привлекают своим удобством и дают ложное чувство безопасности.

    При использовании Tor, кто-то пользуется моим IP, пока я пользуюсь чужим?

    Нет. Если у вас не сконфигурирован Exit Node.

    Что при этом видит провайдер, что я получаю потоки данных с определенных IP и каждый раз разный IP?

    У них есть система точного обнаружения использования Tor. Это факт остается в логах с теми же последствиями, что и для VPN.

    Провайдер видит URL?

    Через Tor и VPN - нет.

    Каким образом можно полностью управлять сетью на ПК, видеть что, куда и когда отправляется или приходит на ПК (Windows, Linux)?

    Видеть все: https://www.google.com/search?q=Wireshark
    Блокировать все лишнее: https://www.google.com/search?q=Comodo+Firewall
    Ответ написан
    22 комментария
  • Как найти удалённую практику для начинающего python программиста?

    Tiendil
    @Tiendil
    Разработчик ПО.
    Присоединяйся к разработке the-tale.org

    Все исходники открыты: https://github.com/Tiendil/the-tale

    Берёшь задачу делаешь, делаешь пул-реквест, получаешь критику, пока всё правильно не будет сделано, и код попадает в рабочий проект.

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

    MegaMufa
    @MegaMufa
    Я бы посоветовал вам устроиться на некоторое время работать в офис. Работа в команде очень сильно помогает поднять свой уровень. В этом есть несколько плюсов:
    1. У вас всегда под рукой есть ментор, который может подсказать как решить поставленую перед вами конкретную задачу. Знания, получаемые таким образом, усваиваются намного лучше. Вы лучше понимете, как применять свои навыки.
    2. К окманде работает несколько человек, каждый со своим мнением и кругозором. Общение на обеде, за кофе и на обсуждениях проектов поможет ваам расширить свой профессиональный кругозор. Вы узнаете про многие технологии. В данный момент они вам не понадобытся, но вы будете знать о них, во время принятия решений в будущем.
    3. Устраиваясь на работу в офис стажером (или новичком, в общем неопытным специализстом), вы ставите в известность своего работодателя. Он в замен на пониженый оклад (у начинающего программиста ЗП, конечно ниже), помогает вам обучаться, выделяя вам ментора и давая практику.
    4. Вы преобретаете опыт решения реальных кейсов. В дальнейшем вы будете знать, как решается большинство типовых задач.
    5. В спокойной, но реальной обстановке получите опыт обучения "на лету" и поиска нужного материала.

    Я, когда начинал, тоже страдал такой проблемой. Год работы в комманде из 7 программистов стал для меня сильнейшим рывком. За этот год я поднялся больше, чем за предядущие три года самообучения. Поработал, получил опыт (и кучу положительных эмоций от общения с коллегами), потом спокойно перешел на удаленку.

    Мой вам совет: поработайте некоторое время в команде.
    Ответ написан
    6 комментариев
  • Поздний старт в ИТ - есть ли шансы?

    bobrovskyserg
    @bobrovskyserg
    Хех.
    У вас пустой профиль.
    У вас нет аккаунта на Гитхабе?
    Вы интраверт?
    Ну так начните активничать зесь (вы же отличник?)
    Шевелитесь, спрашивайте, отвечайте, не таитесь, не придуривайтесь - чем вы рискуете?
    Ответ написан
    Комментировать
  • Какими онлайн-курсами по программированию кто пользовался (если пользовался)?

    Stac
    @Stac
    Мне нравятся курсы от Lynda.com и Tuts+ (Envato). Их много по разным темам, в т.ч. узким и конкретным.

    А вот курсы на Udemy разочаровали - мне попались бесплатные видеоролики, упакованные как платный курс без малейшей адаптации.

    Кстати, о бесплатном. Видеоканал этого парня просто поражает широтой охвата тем (от Си до Фотошопа) и количеством роликом: https://www.youtube.com/user/thenewboston/playlists
    Ответ написан
    Комментировать
  • Стоит ли начинать заниматься программированием в 30+ если до этого не программировал?

    h0001
    @h0001
    RoR / React Developer @ Shakacode
    Стоит. И самый лёгкий способ получить фан и профит - попробовать автоматизировать рутину, которая у Вас есть на текущей работе или дома.
    Ответ написан
    Комментировать
  • Стоит ли начинать заниматься программированием в 30+ если до этого не программировал?

    opium
    @opium
    Просто люблю качественно работать
    Вы так говорите как будто в 30 лет у вас нет рук и ног и вывалился глаз.
    Берите и делайте и меньше задавайте глупых вопросов на тостере.
    Ответ написан
    5 комментариев
  • Можете накидать большую порцию задачек для практики Python-новичка?

    merryjane
    @merryjane
    Системный администратор
    Вот очень клевый сайт, с кучей задач, уровнями, ачивками и неплохим форумом по решению этих задач:
    www.checkio.org
    Ответ написан
    5 комментариев
  • Как в python 3.4 вернуть несколько значений из сопрограммы (корутины)?

    @bromzh Автор вопроса
    Drugs-driven development
    Ответ подсказали в другом месте. В общем, можно использовать для таких целей очередь:
    import random
    import asyncio
    
    @asyncio.coroutine
    def coro(que: asyncio.Queue):
        res = 0
    
        t = random.random() * 3
        yield from que.put('start 1')
        yield from asyncio.sleep(t)
        yield from que.put('value 1 = {}'.format(t))
        res += t
    
        t = random.random() * 3
        yield from que.put('start 2')
        yield from asyncio.sleep(t)
        yield from que.put('value 2 = {}'.format(t))
        res += t
    
        t = random.random() * 3
        yield from que.put('start 3')
        yield from asyncio.sleep(t)
        yield from que.put('value 3 = {}'.format(t))
        res += t
    
        yield from que.put(None)
        return res
    
    @asyncio.coroutine
    def run(que: asyncio.Queue):
        while True:
            res = yield from que.get()
            if res is None:
                break
            print(res)
    
    q = asyncio.Queue()
    asyncio.async(run(q))
    asyncio.async(coro(q))
    asyncio.get_event_loop().run_forever()
    Ответ написан
    Комментировать
  • Можете посоветовать книгу по C++?

    @APaMazur
    Для начинающего, если есть стремление действительно что-то понять и изучить - очень рекомендую таки Дейтлов. Качественная, хорошо и легко написанная книжка, позволяющая от азов дойти до довольно серьезных задач за короткое время. Вам последовательно и живо объяснят C, затем C++. Лучшего я не видел, хотя что-то повидал в области IT-образования.

    Потом уже я бы перешел к тому же Страуструпу. Мне он не понравился, на мой взгляд он тяжеловеснее и длиннее. Его после Дятлов можно просто проглядеть и вытащить, то, что у них неохвачено. Начинать с него путь в программирование тяжеловато.
    Ответ написан
    Комментировать
  • Можете посоветовать книгу по C++?

    Csklassami
    @Csklassami
    Очень хорошая книга, но в начале будут самые азы. То есть вы постепенно будете переходить от одной парадигмы к другой (очень быстро и понятно - так что вполне подойдет). Насчет задач, есть 50% вода, есть 50% интересные задачи над которыми нужно подумать и применить алгоритмы, подробно неописанные до этого. Мне кажется, что это хорошо, т.к. автор заставляет тебя начать использовать Google (конечно у всех по-разному), но благодаря такому подходу, в поисках инфы, узнаешь много нового. После 3-4 главы я перестал обращать внимание на простые задачи, потому что оттуда ничего кроме правильного синтаксиса почерпнуть нельзя было. А вот задачи посложнее с неописанным решением в учебнике (направленные на практическое использование) позволяют понять смысл и принцип использования: "куда - зачем" + здесь же закрепится и синтаксис. Но я бы посоветовал обязательно пробовать практические задачи, типа написать крестики-нолики или бота для игры в дурака. Вообще я новичок, но именно такие задачи помогают мне понять какой-либо аспект, да и это намного интереснее ;)
    Что насчет книги, в которой "не льется вода", то такой нет имхо (я новичок и мое мнение может и не так авторитетно, но все же). И в моем случае в конце концов, я не смог ограничиться 1 книгой, и не пожалел! Я часто обращаюсь в книгу за справкой или научно-разжеванными терминами и т.д, но только когда ощущаю нехватку знаний либо в "профилактических" целях))

    Советую посмотреть:
    Канал про C++ - один из самых лучших в Рунете
    Очень интересный Introduction от 3DBuzz - курс очень хорош, авторы с чувством юмора, что очень доставляет, обязателен к просмотру. Сабов нет, но язык чистый и все понятно.
    Ответ написан
    1 комментарий
  • Программисты какой специализации самые высокооплачиваемые сейчас?

    afiskon
    @afiskon
    Всех денег не заработать. И чужие считать не прилично. Занимайтесь тем, к чему душа лежит.
    Ответ написан
    Комментировать
  • Какой выбрать учебник по PyQt?

    @radioxoma
    В книге два части. Первая представляет собой обзор синтаксиса и стандартной библиотеки python, вторая рассказывает о PyQt4 (только виджеты, без QtQuick). Это скорее справочник, нежели руководство, так что преимущество перед стандартной документацией сомнительно. Ответа на вопросы зачем и почему вы там не найдёте. "Good practice" тоже нет. Самым неприятным было отсутствие какой-либо информации о том как в принципе должно быть построено приложение (например, отделение GUI от внутренней логики).

    Книга достаточно близка к Rapid GUI Programming with Python and Qt Марка Саммерфилда.

    Берите её, если только начинаете изучать python (тогда первая половина книги будет полезной) и имеете сложности с английским. Потом она вам ничем не поможет. Смотрите документацию по PySide, PyQt (немного различаются и содержат разные примеры) и самому Qt.
    Ответ написан
    Комментировать
  • Какой выбрать учебник по PyQt?

    @Leshrac
    несколько лет назад стояла аналогичная задача, хватило этого http://pyqt.sourceforge.net/Docs/PyQt4/classes.html - названия классов интуитивно понятны + примеры присутствуют. До того с гуями не работал, несмотря на это разобрался, так что дерзайте :) тостер и СО Вам в помощь)
    Ответ написан
    1 комментарий
  • Решение задачи асболютно упругого соударения двух шаров?

    Prosolver
    @Prosolver
    Я использую такое решение для эмуляции движения и соударения пятнадцати шаров (Object Pascal):

    for i:=1 to 15 do   // просчитываем соударения шаров
    for j:=i+1 to 16 do begin
     dist:=sqrt(sqr(balls[i].x-balls[j].x)+sqr(balls[i].y-balls[j].y)); //расстояние между центрами шаров
     if dist<diametr then begin //если расстояние меньше диаметра, значит есть факт соударения
      a:=balls[i].x-balls[j].x; //вспомогательные переменные типа extended
      b:=balls[i].y-balls[j].y;
      p1:=a*b/sqr(dist);
      p2:=sqr(a/dist);
      p3:=sqr(b/dist);
      d1:=balls[i].dy*p1+balls[i].dx*p2-balls[j].dy*p1-balls[j].dx*p2;
      d2:=balls[i].dx*p1+balls[i].dy*p3-balls[j].dx*p1-balls[j].dy*p3;
      balls[i].dx:=balls[i].dx-d1; //меняем значение приращения координаты шаров при движении
      balls[i].dy:=balls[i].dy-d2;
      balls[j].dx:=balls[j].dx+d1;
      balls[j].dy:=balls[j].dy+d2;
    
      p3:=(diametr-dist)/2; //при соударении шары всегда "проникают" друг в друга, поэтому раздвигаем их
      p1:=p3*(a/dist);
      p2:=p3*(b/dist);
      balls[i].x:=balls[i].x+p1;
      balls[i].y:=balls[i].y+p2;
      balls[j].x:=balls[j].x-p1;
      balls[j].y:=balls[j].y-p2;
     end;
    end;
    
    for i:=1 to 15 do
     balls[i].x:=balls[i].x+balls[i].dx;  //эмулируем движение
     balls[i].y:=balls[i].y+balls[i].dy;
    end;
    
    Ответ написан
    3 комментария
  • Какой лучший учебник по линейной алгебре

    FINTER
    @FINTER
    Тыртышниктов Е. Е. «Матричный анализ и линейная алгебра»
    Евгений Евгеньевич является одним из сильнейших специалистов по линейной алгебре в мире. Преподает в МГУ и ФизТехе.

    Его лекции, на мой взгляд, являются лучшими для понимания и при этом позволяют получить не просто знания, но и твердое понимание предмета (это я говорю как человек, который параллельно слушал лекции Ильина, того самого, чья книга предложена в первом ответе).

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

    Освоив эту книгу полностью вы будете с гордостью говорить: «Тензоры? Тензоры — это просто =)»
    Ответ написан
    2 комментария