Мир меняется невероятно стремительно, теперь некогда учить новый язык ради еще одной фишечки, пока корпоративщики страдают под фабриками фабрик Java, пока хардкорные системщики осиливают Страуструпа, хипстеры в узких штанишках захватывают рынок реализуя все подряд на Python. И это ОФИГЕННО! Если вы не знаете на какую технологию поставить сегодня, что будет легко поддерживаться и масштабироваться и вообще не понятно, выстрелит ли когда-либо ваш проект — берите Python и быстро-решительно реализуйте.

Язык идеален для обучения и прототипирования, хотя работать все это будет обычно не быстро, но на улице 2015, Марти, тут очень мощные компьютеры, к тому же когда возникнет необходимость — всегда можно будет взять специализированное решение. Питон прощает ошибки оценок производительности.

Причем похоже, что сегодня можно реализовать на нем вообще все. Вообще все. Даже драйвер для Windows.
Или заменить Java script в браузере: проект Brython — это полноценный интерпретатор Python 3. Подключается все с пол-пинка и крайне доходчиво описано тут.

Пример кода:

<html>
<head>
<script src="/brython.js"></script>
</head>
<body onload="brython()">
<script type="text/python">
from browser import document, alert

def echo(ev):
    alert(document["zone"].value)

document['mybutton'].bind('click',echo)
</script>
<input id="zone"><button id="mybutton">click !</button>
</body>
</html>


Если вы еще не прониклись, а слезы радости не увлажнили ваши очи, то объясню, что здесь произошло: благодаря волшебству исполнения brython.js в странице стало возможным воспользоваться стандартными операторами python, в том числе import… А это открывает нам мир к миллионам строк готового чужого и своего родного кода.

Комментарии (32)


  1. amarao
    19.04.2015 19:56
    +11

    Чем миллионы строк кода на питоне отличаются от миллионов строк кода на javascript? Внутрях-то там та же самая неонка, что и всегда.


    1. irony_iron Автор
      19.04.2015 20:02
      +1

      js надо осваивать, а скрипт-киддисам некогда)


      1. amarao
        19.04.2015 20:14
        +4

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

        Какая им разница, что копипастить?


        1. irony_iron Автор
          19.04.2015 20:18

          одна технология, один синтаксис, реализуешь свою задачу отлаженными приемами, а не побеждаешь язык. Удобно, когда нужен быстро результат, а не Идеальный Код.


          1. amarao
            19.04.2015 20:19
            +6

            ЧО?

            Скрипт-кидди? Отлаженные методы? Не могу совместить, извините.


            1. irony_iron Автор
              19.04.2015 20:28
              +1

              Например сейчас самая популярная угроза — шифровальщики пользовательских данных, дети грузят js, из js грузит bat, bat вписывает в систему dll писанную на .net для интерфейса «пришлите денег», сервис на c++ для старта перед winlogon, вобщем целый парк технологий у бедняг. Штат спецов раздут, пофит минимальный) Как мне кажется.
              Вобщем выгода, когда ты на стыке технологий, а так да, вы правы.


              1. crackpot
                19.04.2015 21:27

                Дети загрузят js, который загрузит питон, который загрузит малварь в файловую систему и далее по тексту.
                Глупый вопрос: разве js имеет доступ на запись в ФС (без наличия ActiveX) и разве сегодняшние антивирусы не умеют детектить загрузку чего-либо, что пользователь не нажал «скачать»?


                1. irony_iron Автор
                  19.04.2015 22:15
                  -2

                  а js у них мимо браузера идет, вложением в почту и слезами про «потеряли накладную, запустите поищите». АВ популярное детектят на загрузку, но если вкраце — «все оче плохо»


                  1. crackpot
                    19.04.2015 22:19

                    Подождите-подождите.
                    Во-первых, как это — «js мимо браузера» — ему нужен браузер, который его исполнит. Сама ОС не умеет такого.
                    Во-вторых, в истории про «потеряли накладную — запустите поищите» тоже не понятно: то есть либо один юзер другому малварь прислал, либо как?

                    Как юзеры запускают всякое, скачанное из интернета, гуано — это понятно. Но здесь речь идет о том, что гуано запустится и скачает себя само. И это уже вызывает вопросы.


                    1. irony_iron Автор
                      19.04.2015 22:35
                      -1

                      habrahabr.ru/post/110617 про мимо браузера. Если лениво — есть в винде сscript.exe ассоциированный с .js и браузер не нужен.
                      Схема каждый раз разная, зависит от квалификации команды атакующих, есть целенаправленные взломы, есть автоматизированные, ищущие ненастроенные почтовые сервера и делающие рассылку по выдранным из переписки контактам. В конечном итоге для юзера все выглядит так, будто от админа\партнера пришло сообщение даже бывает с указанием имени-отчества должности.
                      Само по себе оно пока не запускается, но но это видимо не надолго


                      1. crackpot
                        19.04.2015 22:45
                        +1

                        WSH да, умеет js, ок.
                        Однако в конечном итоге, пользователю должен прийти аттач, который пользователь должен открыть/запустить.
                        И покуда пользователь все равно должен тыкнуть мышкой — это не само, это из-за двух проблем: во-первых, в инфраструктуре пользователя все плохо с АВ-защитой; во-вторых, пользователь не обучен или не имеет нужных средств проверки почты.

                        В любом случае, «оно» не «само».


          1. irony_iron Автор
            19.04.2015 21:28
            -2

            одна нация xD


    1. bormotov
      20.04.2015 10:07
      +1

      Осмелюсь предположить, что качеством отличаются и довольно заметно.
      Нет. я сам не исследовал и не сравнивал, просто ощущение.

      В этом же духе есть еще PyPy.js (вруг кто не видел pypyjs.org)


  1. GearHead
    19.04.2015 20:30
    +10

    В силу некоторых обстоятельств, будучи связанным со сферой информационной безопасности, я грежу просто невероятным наплывом активирующейся по ссылке малвари, майнеров, использующих Cuda, или прочего великолепия, недетектируемого обычными средствами АВ защиты. Помните те времена, когда в браузерах многие отключали js? Есть повод задуматься о повторении истории.


    честно говоря, я не могу понять… это всё большая шутка? я опять не понял сарказма, или вы действительно не понимаете разницу между интерпретатором пайтона, и интерпретатором пайтона, написанном на JS?


    1. nobilix
      19.04.2015 20:40
      +14

      Ага, кажется автор думает, что теперь песочница браузера на помеха и можно хоть винчестер отформатировать из браузера) Ну а чо — пайтон же теперь в веб-страничках, все же видели)


  1. resetnow
    19.04.2015 20:40
    +2

    хотя работать все это будет обычно не быстро, но на улице 2015, Марти, тут очень мощные компьютеры

    А потом в убунте всяческие апдейтеры и сборщики отчетов об ошибках на python появляются и отжирают память десятками мегабайт. На несвежих ПК (на которые часто ставят дистрибутивы Linux, чтобы было побыстрее). И плагины для оболочки на python туда же.


    1. ZoomLS
      19.04.2015 23:02

      В данном случае имелась ввиду данная реализация python в виде js. Сам по себе Python достаточно быстрый.


  1. farcaller
    19.04.2015 20:53
    +1

    После Qt в виде JS, питон как-то вообще не впечатляет :-)


  1. MrFrizzy
    19.04.2015 22:14
    +2

    А еще есть pypy.js, pyjamas и rapydscript
    О сколько нам открытий чудных…


  1. berezuev
    19.04.2015 22:17
    +3

    единственный вопрос: а зачем оно надо?


    1. irony_iron Автор
      19.04.2015 23:27
      -4

      import threading же


      1. biophreak
        20.04.2015 00:48

        Глупый вопрос: Вам часто в браузере нужна была мультитредовость?


        1. Lailore
          20.04.2015 06:31

          Часто. Интерфейс должен быть отзывчивым, пока выполняются бекграунд задачи.

          И да, сабж поста я считаю не имеет практической ценности. Это сделанно для удовольствия


          1. MuLLtiQ
            20.04.2015 12:29
            +1

            Так асинхронность же и Веб Воркеры!


            1. Lailore
              20.04.2015 12:40
              -1

              Если задачи выполняются параллельно, то это и есть «мультитредовость»


              1. MuLLtiQ
                20.04.2015 13:03
                +1

                Да, я знаю :) Я к тому что это уже есть в браузерах


      1. berezuev
        20.04.2015 01:39
        +1

        Ну, если нагружать фронтенд питоном, то действительно может многозадачность понадобиться… А так, не более чем прикольная игрушка. На деле, не нужно оно в браузере


      1. MuLLtiQ
        20.04.2015 01:39
        +5

        Вы уверены что «import threading» будет работать на этом вашем Brython?

        А в целом — Питон хорош, да, но не в браузере. Извините


        1. irony_iron Автор
          20.04.2015 14:12

          ошибками не сыплет, но не работает :(


  1. garex
    19.04.2015 22:57

    Изоморфный подход атакуэ. Вот только нету тут изоморфизма та.


  1. mwizard
    20.04.2015 02:57
    -1

    Мне нравится Python и я на нем давно и продуктивно пишу, но пока Гвидо не перестанет упрямиться и в Python не появятся многострочные функциональные выражения, это все все равно будет продолжать выглядеть ущербно.


  1. vit1251
    20.04.2015 08:45

    Парни вообще в JavaScript уже появились классы. Хватит страдать ерундой с питонизацией всего…