Я люблю баловаться со старым железом. DEC PDP-8 — мой любимый ретро-компьютер, а Office 2003, на мой взгляд — лучшая версия «офиса» из всех. Ещё одно из моих любимых ретро-устройств — это HP Jornada 720. Маленький карманный PC (меньше нетбука) с Windows CE или, как в моём случае, с Linux. У него хорошая клавиатура, экран с CFL-подсветкой, 32 МБ ОЗУ(!), карта compact Flash для хранения данных и стилус для резистивного сенсорного экрана. А, и ещё у моего есть сетевая PCMCIA-карта на 10 Мбит, но до сих пор можно купить и беспроводные карты. Пусть он стар (выпущен в 1999 году), зато способен на то, чего не может современный iPhone.


На нём можно разрабатывать, компилировать и запускать нативное ПО. В нём есть компилятор C и C++, Python и даже Perl, так что это полнофункциональная рабочая станция для разработки. На нём можно не только разрабатывать, но и запускать ПО.


Скриншот GCC, компилирующего мой код


Скриншот моего запущенного скомпилированного кода

Здесь можно прочитать обзор устройства со стандартной Windows CE, а здесь есть ещё один обзор, в том числе и сравнение с его предшественником Jornada 680. У NCommander есть отличное видео про 680e и его использование нидерландской железнодорожной компанией Nederlandse Spoorwegen. В прошлом у меня тоже был NS 680e, но аккумулятор вышел из строя, превратив в кирпич всё устройство, поэтому мне с сожалением пришлось его выкинуть. Jornada 720 я купил за 80 евро на нидерландской онлайн-барахолке (marktplaats); он был в употреблении, зато продавался в коробке с руководством и CD-ROM.


Игры на HP Jornada; OpenTTD — моя любимая. Есть и Doom.

Преклонись передо мной, ибо я рут


У меня есть правило, которое я стараюсь выполнять со всеми своими устройствами. Они должны предоставлять доступ к руту или административным действиям. Купленный мной с рук Nintendo Switch достаточно стар, поэтому джейлбрейкнут. Два устройства Apple (iPad Air первого поколения и iPhone SE первого поколения) имеют уязвимости, предоставляющие рут-доступ. Все мои телефоны с Android я специально выбирал так, чтобы был разблокирован bootloader. Если я покупаю устройство, то оно принадлежит мне, я и должен решать, что с ним делать, а не производитель. В противном случае оно превращается в электронный мусор сразу после выпуска с фабрики.

Ещё одним почти обязательным требованием для меня является возможность разрабатывать на устройстве ПО. Отсутствующую функциональность (читай: то, на что у производителя не хватило денег) можно запрограммировать, если у вас есть возможность разработки на устройстве и желание вложить достаточно времени/средств.

Или использовать компьютер для того, о чём не думал производитель, или для чего у него не было приложений. Помните о польской автомастерской, в которой до сих пор используется Commodore 64?

На современных телефонах, как Android, так и iPhone, нельзя просто программировать приложения, им требуется второе устройство, а именно компьютер (для iPhone это Mac или hackingtosh), на котором можно разрабатывать и компилировать ПО для устройства. А компания Apple даже может принимать решение о возможности запуска ПО в устройстве. Такая монополия должна быть запрещена законодательно.

Когда-то давно Commodore 64 и другие домашние компьютеры сразу запускали Basic и единственное, что мог делать пользователь — это программировать устройство (или запустить игру). Наверно, я исключение из правил, потому что мой основной PC — это Raspberry Pi, а резервный — ноутбук с Windows (модель Medion 2014 года), но с обновлённым SSD и увеличенным объёмом ОЗУ. Intel Core i7 — более чем мощный процессор, так зачем менять его на что-то другое?

Linux на Jornada 720 в 2023 году


Этот выпущенный в 1999 году HP Jornada позволяет разрабатывать и запускать ПО. Благодаря HPCfactor даже в 2023 году существует сторонний дистрибутив Linux под названием JLime. JLime был выпущен примерно в 2008 году.


Рабочий стол JLime

Кто-то заставил работать на нём современный Debian. Мой Jornada — это идеальное маленькое карманное устройство с полноразмерной мини-клавиатурой и пятью часами работы от аккумулятора (или больше, если заменить его).


Информация о версии сборки JLime

Я загрузил работающий JLime, которым я пользуюсь, на Archive.org. На моём устройстве версия с HPCFactor вызывает проблемы с распаковкой, возможно, у меня слишком новая версия tar — она жалуется, что не может найти следующий файл заголовка.

Чтобы запустить Linux в 2023 году, требуется немного повозиться. На мой взгляд, современные Debian/Devuan слишком медленные (хотя это настоящее чудо — возможность запустить такой современный дистрибутив на старом устройстве).


Браузер Mini Mozilla в JLime

Дистрибутив JLime с ядром 2.6.25 гораздо быстрее. Для создания заметок, Pocket Paint или игры в SimCity операционной системы Windows CE вполне достаточно. Pocket Word, как и Abiword или ваш любимый текстовый редактор в терминале, более чем функциональны.


Пишем заметки в AbiWord

Для разработки ПО Linux — обязательное требование. Чтобы разрабатывать для Windows CE, необходим PC с Visual Studio — та же проблема, что и у современного iPhone. В сети есть несколько версий GCC для Pocket PC, но мне не удалось их запустить.


Текстовый браузер Dillo в JLime

Создать разделы на карте compact flash не так уж сложно, как и скопировать файлы для запуска Linux. В используемой мной сборке JLime есть GCC, но нет файлов заголовков для разработки, поэтому я не мог включить <iostream> или stdio.h.

Однако поскольку у меня есть сетевая PCMCIA-карта, а HPCfactor по-прежнему работает как онлайн-репозиторий, установка пакетов не вызывает проблем; в моём случае достаточно было ввести ipkg install libstdc++-dev:


Пользователи должны иметь контроль над своими устройствами


Реалистично ли это требование? Предпочту ли я этот Jornada современному iPhone? Вероятно, нет. Хотелось ли бы мне иметь iPhone или iPad, на которых можно разрабатывать ПО для них самих? Да, разумеется.

Это техническая проблема? Абсолютно точно нет — эти современные устройства более чем мощны. Дело только в руководстве/деньгах. Apple не получит свою долю в 30% или 15%, поэтому предпочитает продавать электронный мусор, надеясь, что через год вы купите новый. И, разумеется, Mac для разработки ПО.

С Android ситуация чуть лучше. Можно разблокировать другие bootloader, позволяющие, например, установить PostmarketOS, когда устройство достигнет выбранного производителем конца своей жизни (к нему перестанут выпускать обновления ПО, несмотря на то, что это всё ещё мощное оборудование).

У меня есть такой же Poco F1, как и у Дрю Деволта, и тоже с установленной PostmarketOS. На нём вполне неплохо запускается Qt Creator, позволяя мне программировать на устройстве.

В Android можно даже запустить Clion (IDE C++) или практически любой другой дистрибутив/приложение Linux при помощи кучи разных приложений. Это позволяет большинству пользователей Android обойти запланированный производителем конец срока жизни устройства.

Как же я скучаю по старым добрым дням, когда устройства программировались своими владельцами, а не были потребительским электронным мусором!

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

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


  1. vtal007
    20.07.2023 10:32
    +72

    а еще 50-летний трактор "Беларусь" может то, на что не способен современный iPhone

    Сравнить PC и смартфон и удивится разным возможностям

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

    в смартфонах GPS есть (и аналогичные штуки), без которых как-то даже сложно представить современное навигирование


    1. Areso
      20.07.2023 10:32
      +1

      GPS слабо помогает, если нет карт.
      А для некоторых локаций их нет=)


      1. Andy_U
        20.07.2023 10:32

        Включая спутниковые снимки?


        1. Areso
          20.07.2023 10:32
          +2

          Снимки != карты.
          К примеру, вы приехали в незнакомый город и вам нужно найти конкретную улицу и дом. На карте нет улицы, а если даже улица есть, то её начало и конец неправильно обозначены, а если повезло и улица правильно отрисована, то нет номеров домов. Сильно вам поможет спутниковый снимок, если вы ищете дом номер 12?

          Для некоторых локаций нет общестодоступных снимков в достаточном разрешении.


          1. K0styan
            20.07.2023 10:32
            +1

            Если карт нет, то вообще пофиг, что может конкретная железка, а что - нет


            1. javalin
              20.07.2023 10:32
              +6

              Немного не согласен, если вы заинтересованы в том, что бы кого-то найти, а он заинтересован, что бы вы его нашли, то можно скинуть геометку и потом найти это место.

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


              1. Areso
                20.07.2023 10:32

                Хз, в РФ может быть военные городки, а вот заграницей мне такое сплошь и рядом попадалось. И да, местные сбрасывают не геометку, а адрес текстом, геометками в друг друга только понаехи кидаются :)


            1. behek
              20.07.2023 10:32

              Можно ещё глаза завязать.

              А вообще "рабочая станция для разработки" чего и под чего? Программки под эту железку на этой железке? Как хобби, если у вас больше ничего нет, круто.

              Наверное будет актуально в постапокалиптическом мире, но точно не в современном.


          1. PsihXMak
            20.07.2023 10:32
            +1

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


            1. Areso
              20.07.2023 10:32
              +1

              Ну я вот в одной из европейских стран не нашёл ни одного города, в котором этой проблемы не было бы.


              1. K0styan
                20.07.2023 10:32
                +1

                И OSM не выручает? Хотя... в мелком городе может банально энтузиастов не хватить.


                1. Areso
                  20.07.2023 10:32
                  +1

                  в OSM нет даже моего дома, где я живу (конца 1980-начала 1990-ых), и соседней новостройки (построенной в 2010-ых).

                  Номеров домов нет совсем, ваще нет =)


          1. FelixTheMagnificent
            20.07.2023 10:32

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


            1. Astroscope
              20.07.2023 10:32
              +1

              По одной стороне будут четные номера, по другой - нечетные.

              Это совсем необязательно. И последовательное возрастание номеров в каком-то одном направлении улицы - тоже никто не обещает.


            1. PuerteMuerte
              20.07.2023 10:32
              +2

              Если это улица, где дома расположены ± вдоль нее - еще как поможет.

              Гыгы. Вот сейчас живу в среднем по испанским меркам городе (соответственно, в Испании). На моей улице дома расположены вдоль неё. По одной стороне номеров у домов нет. В смысле, не то, чтобы не обозначены, а вообще нет. Там у них названия, ЖК такой-то, ЖК такой-то, и нумерация есть у подъездов внутри каждого ЖК. По другой стороне есть, идут подряд, и это уже соседний город.

              А ещё в испанских городах гуглокарты работают как повезёт. Половины объектов нет, маршрут часто прокладывает через хитро закрученную задницу, если местность незнакомая, слепо ехать не стоит, надо всегда перепроверять хотя бы визуально по спутниковым фоточкам - где какие полосы, где стрелки на асфальте, благо, разметка тут есть всегда и всегда заметная даже на гуглокартах.


            1. Wesha
              20.07.2023 10:32

              По одной стороне будут четные номера, по другой - нечетные.

              Кто в армии служил программировал разбор адресов, тот в цирке не смеётся.

              И в других местах тоже.


          1. Kriminalist
            20.07.2023 10:32

            Сильно вам поможет спутниковый снимок, если вы ищете дом номер 12?

            Да мне в принципе нумерация домов не нужна, если есть геометка точки, куда нужно попасть. Хоть на море, хоть в горах, хоть в городе. Улица и номер дома могут быть бонусом к координатам, а могут и не быть, кстати...


            1. unC0Rr
              20.07.2023 10:32
              +3

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


              1. Kriminalist
                20.07.2023 10:32

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


            1. Areso
              20.07.2023 10:32

              Ну увы, местные дают адреса вместо геометок, но да, иностранцы здесь шарит геометки.


            1. Astroscope
              20.07.2023 10:32

              Да мне в принципе нумерация домов не нужна, если есть геометка точки, куда нужно попасть.

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


        1. Mausglov
          20.07.2023 10:32

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


          1. Didimus
            20.07.2023 10:32

            Яндекс придёт, порядок наведет


            1. Wesha
              20.07.2023 10:32

              Или бульдозер.


      1. Didimus
        20.07.2023 10:32

        В некоторых локациях и GPS нынче нет.


      1. behek
        20.07.2023 10:32

        Ложка тоже хороша к обеду.

        Карты без GPS многим тоже не помогают. А Колумб по компасу и часам плавал, не имея карты, туда и обратно.


        1. technomancer
          20.07.2023 10:32
          +3

          Он, правда, в Индию плыл...


          1. Areso
            20.07.2023 10:32
            +1

            Заблудился, с кем не бывает.


    1. mordotron
      20.07.2023 10:32

      я пока читал, тоже в первую очередь про трактор "Беларус" подумал :D


      1. Didimus
        20.07.2023 10:32
        +1

        Камнем можно кинуть в мамонта и добыть еду. Ваш айфон так может?


        1. isden
          20.07.2023 10:32

          Айфон тоже можно кинуть. Они довольно увесистые.


          1. Didimus
            20.07.2023 10:32

            Но второй раз вы так мамонта не добудете


            1. Byteler
              20.07.2023 10:32

              Тогда рикошетом от первого


              1. Didimus
                20.07.2023 10:32
                +1

                Это Самсунг надо. Они фугасные


            1. behek
              20.07.2023 10:32
              +1

              Тихо засмеялась Nokia 3310


    1. Nansch
      20.07.2023 10:32
      +1

      Вычислительная мощность современного айфона перевалила за терафлопс! Со своими 6 гигами рамы он запросто потянет даже 11ю винду на 4к мониторе. Но копрорации не хотят переиспользования устройств.


      1. vtal007
        20.07.2023 10:32

        так там винду не поставить, потому что это АРМ, а не х86 смартфонах ставили винду


        1. javalin
          20.07.2023 10:32

          Есть windows и для ARM. Вопрос скорее с драйверами будет. Но тоже решаемо при большом желании..


          1. vtal007
            20.07.2023 10:32

            Есть, но там свои траблы

            вообще все решаемо при большем желании и деньгах. Кроме законов физики (хотя и это не точно)


          1. strvv
            20.07.2023 10:32

            Да и через виртуализацию, ту же kvm,qemu реализуется работа другой архитектуры.
            это реально не проблема, была программная трансляция ещё на альфах DEC в конце 90х использована. т.к. тогда считали то избыточной мощностью, и с неё напрямую транслировали с х86 на AlphaAXP.
            Более того, для пользователя это может быть реализовано прозрачно, т.е. распознавание по заголовку исходной архитектуры, подгрузка окружения той архитектуры и ОС и выполнение приложения как бы для пользователя прозрачным образом.


  1. aik
    20.07.2023 10:32
    +1

    Основная беда этой штуки — в сеть её не так просто выпустить.
    Хотя может под линукс проще будет, но вот под WinCE я три сетевушки уже пробовал — ни одна не завелась.


    1. pae174
      20.07.2023 10:32
      +10

      Даже если сетевушка и заведётся то дальше то что? С протухшими сертификатами и 32 мегабайта оперативки в современных условиях на сайт уже не зайти. В 1999 можно было это сделать - в то время сайты разрабатывались преимущественно в расчете на модемное соединение 36 килобит/с и сотню мегабайт памяти на клиенте, а сейчас так уже никто не делает.


      1. aik
        20.07.2023 10:32
        +3

        Мне хотелось хотя бы по ssh коннектиться.
        Интернеты тут не нужны. Впрочем, про "32 оперативки" вы загнули.
        Она тут по другому расходуется, не так, как на ПК. Половина под "диск" тратится.


        1. Stanislavvv
          20.07.2023 10:32

          Современный ssh тоже хочет кушать... Процессор, как минимум, ибо шифры сложные пошли, а старые шифры повыпилены.
          По памяти сравнить не могу — вокруг всё 64-битное, но даже так за 10МБ не вылазит.


          1. klirichek
            20.07.2023 10:32

            есть вполне живые роутеры с openwrt на борту, где вполне работает dropbear. Причём зачастую поддерживает не только RSA, но и ed25519


            1. Stanislavvv
              20.07.2023 10:32

              Там проц помощней той жорнады будет.


          1. aik
            20.07.2023 10:32

            С пентиума2 терминалился — вроде особых проблем не было.


            1. Stanislavvv
              20.07.2023 10:32

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


              1. aik
                20.07.2023 10:32

                Можно, конечно, с 486 пыль сдуть и попробовать куда-нибудь подключиться...


          1. mpa4b
            20.07.2023 10:32

            А какие современные шифры вам кажутся сложными? chacha20? AES ещё легче выходит, если есть поддержка в процессоре (AES-NI)


            1. Stanislavvv
              20.07.2023 10:32

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


              1. mpa4b
                20.07.2023 10:32

                Если речь про автора статьи, то по уверениям вики, там арм на 200мгц. Ssh там будет просто летать.


                1. Stanislavvv
                  20.07.2023 10:32

                  Ок, значит не минута на вход, как у меня, а секунд 20. Насчёт "летать" — вряд ли, но всё ж лучше, чем с телефонов на 5 лет позже.


      1. Wesha
        20.07.2023 10:32

        del, опять с гигами перепутал.


  1. dunkelfalke
    20.07.2023 10:32
    +25

    Разработка ПО непосредственно на вот таком наладоннике это как троллейбус из хлеба.


    1. MountainGoat
      20.07.2023 10:32
      +20

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


      1. madcatdev
        20.07.2023 10:32
        +15

        Тяжела и неказиста жизнь простого питониста.


      1. Earthsea
        20.07.2023 10:32
        +4

        и косясь в ту сторону, куда уползла змея

        Это был питон?


        1. Byteler
          20.07.2023 10:32
          +1

          Да, это был Phyton. Но его пересобрали.


    1. Didimus
      20.07.2023 10:32
      +3

      Я сам в кино видел, хакеры с такого любой банк взломать могут


      1. strvv
        20.07.2023 10:32

        в 90-е и 2000е популярны были боевики, где на радиоканале через спутник "быстро" перекачивают базу банка и сливают тут же средства с одних счетов на другие.
        сейчас не вспомню, но имхо был такой боевик и с Арнольдом Шварцнеггером, обычно он в такой интелектуальной роли не задействовался, ему бы пулемёт побольше да в разгрузку гранат ;)


        1. technomancer
          20.07.2023 10:32

          Ну мы можем предположить, что через спутник эта букашка только даёт команды чему-то мощному, что находится в Цюрихе или Сингапуре, а все эти прогресс-бары отрисовываются через API. Не удивлюсь, если окажется, что тут у каждого третьего был случай, когда приходилось при помощи удалённого соединения через телефон (эпохи до 4G) что-то толстое бэкапить или, наоборот, разворачивать из бэкапа.


          1. strvv
            20.07.2023 10:32

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


      1. K0styan
        20.07.2023 10:32

        У Джона Коннора в молодости был клавиатурный девайс, но другой: Atari Portfolio 1989 года. 8088 процессор и ОС совместимая с DOS 2.


    1. dom1n1k
      20.07.2023 10:32
      +1

      Ну именно разработка — да. Но пропасть на самом деле шире.
      Я одно время пытался на iPad записывать идеи и кусочки кода, которые мне пришли в голову между делом. Ничего сложного и объемного — просто записать абы как, чтобы не забыть, а потом уже разбираться.
      Так вот оказалось, что на экранной клавиатуре айпада невозможно без мата набрать даже 2-3 строки кода — она для этого просто не предназначена! Нужные спецсимволы нужно выковыривать с такой глубины, что я очень быстро бросил затею.
      Андроидная клавиатура заметно получше, но тоже конечно не супер.


      1. Wesha
        20.07.2023 10:32
        +1

        казалось, что на экранной клавиатуре айпада невозможно без мата набрать даже 2-3 строки кода — она для этого просто не предназначена!

        Что яблоки, что дроиды — они не для созидателей, они для потребителей.


  1. hssergey
    20.07.2023 10:32
    +10

    Автор все же лукавит - для того чтобы разрабатывать, ему пришлось поменять на устройстве операционную систему и поставить Linux. А с "родной" Windows CE уже так не получится.

    Ну а в целом именно что-то вообще разрабатывать на андроидном телефоне точно можно. Есть мобильный питон, есть в конце концов termux, в котором можно поставить любые необходимые консольные библиотеки и писать на том же C++. Конечно, удобство подобной разработки будет весьма плачевным из-за отсутствия аппаратной клавиатуры. Но можно подключить внешнюю...

    Вот компилировать APK уже может не хватить ОЗУ, это надо рутовать устройство и подключать своп.


    1. omaxx
      20.07.2023 10:32
      +14

      Автор лукавит не только с этим.

      Основаная проблема с джорнадой это то, что загрузчик windows прошит намертво. Т.е. если на устройстве садится батарея, то он опять загружается в windows ce, а lunux необходимо перепрошивать с нуля. А с учетом того, что linux не умеет отправлять его в suspend mode, то садится батарея достаточно быстро.


      1. MaFrance351
        20.07.2023 10:32
        +2

        Умельцы, правда, выпускали сменные модули памяти для этого девайса. На которых уже был прошит линукс, а не CE.


    1. CrashLogger
      20.07.2023 10:32
      +3

      Под Android есть AIDE, в ней можно писать и собирать Android приложения. Под Windows CE тоже что-то было, как минимум интерпретаторы Python и Basic, да и сишный компилятор какой-то точно был.


  1. RenatSh
    20.07.2023 10:32
    +4

    Понятно, что перевод, но почему нужно сравнивать именно с iPhone. Вон в соседней статье GPD Win Mini размерами даже немного меньше вроде, https://habr.com/ru/companies/ru_mts/articles/748460/ (клавиатура у него по-хуже, да)


    1. slonopotamus
      20.07.2023 10:32
      +3

      Или GPD Pocket 1, который больше джорнады всего на полдюйма.


  1. CrashLogger
    20.07.2023 10:32
    +3

    На самом деле вам не нужны никакие разрешения от Apple, чтобы написать и установить приложение на свой iPhone. Они будут нужны, если захотите выложить его в AppStore. MacOS конечно понадобится, но при желании ее можно поставить на обычный компьютер.


    1. Gummilion
      20.07.2023 10:32
      +6

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


    1. vikarti
      20.07.2023 10:32
      +3

      Вам нужен AppleID аккаунт и сертификат и provisioning profile для конкретных устройств сгенеряться, вот только это просто значит что разрешение автоматически дается, но могут передумать, в теории. И работает этот сертификат — неделю. Врядли конечно закрывать эту возможность "из вредности" (судя по тому как реализована безопасность на Apple Silicon, там все достаточно белопушисто, и при этом безопасно — см например https://github.com/AsahiLinux/docs/wiki/Apple-Platform-Security-Crash-Course )
      С macOS на обычном компьютере — сейчас пока да, вот только что делать когда Apple завершит переход на Apple Silicon и уберут x86 код?


      С андроидом в теории проще — разблокировка загрузчика вполне себе делается на самом устройстве, ключи свои ставить можно, но вот только реально:


      • установка своих ключей загрузчика — почти только Pixel а значит после установки кастома — остается дыра в безопасности
      • у Samsung есть способ удаленно блокировать разблокировку (используется например при продаже телефонов через Samsung Forward и их аналоги в других странах, при этом после полной оплаты… разблокировка не включается назад)
      • у Huawei — разблокировка через выдачу платных кодов через левые сервисы


    1. Yapokhozhnakota
      20.07.2023 10:32
      +1

      Могу ошибаться но работать это приложение будет только 6 месяцев, потом опять нужно его устанавливать.


  1. Zenj
    20.07.2023 10:32
    +2

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


    1. slonopotamus
      20.07.2023 10:32
      +1

      разработку без клавиатуры я вообще себе не представляю

      Если очень хочется, то почему бы и нет. И на Palm m500 при помощи рукописного ввода программировал, и на Nokia N800 на экранной клавиатуре, и на Nokia N900 (тут правда уже с физической). А с современными девайсами ещё проще - можно в USB клаву воткнуть и вперёд.


      1. Radisto
        20.07.2023 10:32

        Блютуз-клаву. Я себе такую приобрел - удобно. а в усб мышь втыкаю


      1. Zenj
        20.07.2023 10:32

        Бесспорно, если очень нужно, то обойтись можно без чего угодно :)
        Ну, или действительно, внешнюю клаву. Это да.


      1. strvv
        20.07.2023 10:32

        или другой зверёк с той эпохи — каська cassiopeia be-300 c недо-3 вин-се, пере-2.1, но возможность была...


  1. Astroscope
    20.07.2023 10:32
    +1

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


  1. NeoCode
    20.07.2023 10:32
    +8

    Приятно смотреть на старые интерфейсы - и аппаратные, и программные (и вряд ли тут можно списать на ностальгию - подобных устройств у меня никогда не было). Но если оно работало на 32МБ, то возникает вопрос - что же за шлак крутится в современных ОС, которым подавай 32ГБ?


    1. victor_1212
      20.07.2023 10:32
      +2

      multics хватало порядка 2MB памяти (384k 36-bit слов), тянул примерно 50 пользователей одновременно на GE645, причем с довольно серьезной защитой уровня B2 :)


    1. kAIST
      20.07.2023 10:32
      +1

      Если хоть чуть чуть разобраться, то ничего удивительного нет.

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

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


      1. beeruser
        20.07.2023 10:32
        +6

        А типа раньше кэша не было? У меня на Amiga 500 с 1МБ памяти был "резиновый" файловый кэш в свободной памяти.

        На компе с Windows95 OSR2 и 48МБ ОЗУ (с выключенным свопом) тоже был файловый кэш, причём какой-нить фотошоп + CodeWarrior + плеер + тоталкоммандер работали одновременно без проблем, ЕМНИП(!)

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

        На упомянутом вин95 компе я дома делал всё тоже самое что и сейчас - софт компилялся, GPU точно так же так же рисовал треугольнички (правда без модных шейдеров 6 версии). Но разница минимальна. Качественных отличий нет, только количественные.

        YMMV, конечно.


        1. DirectoriX
          20.07.2023 10:32
          +4

          Качественных отличий нет, только количественные.

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

          С другой стороны - простите, но вот уж "так же рисовал треугольнички" - это, мягко говоря, введение в заблуждение. В несколько раз выросло разрешение экрана и частота обновления, появились HDR режимы, количество этих самых треугольничков выросло на несколько порядков, на эти треугольнички натягиваются текстуры, которые тоже выросли на порядки, "модные шейдеры 6 версии" не бесплатно работают, появилась трассировка лучей в реальном времени, и так далее. Но да, что PlayStation 1 (как раз времён Win 95), что PS 5 "рисуют треугольнички".


      1. karabas_b
        20.07.2023 10:32
        +3

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


      1. PuerteMuerte
        20.07.2023 10:32
        +8

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

        Ну, такое. Мой Андроид-телефон имеет куда меньше функционала и возможностей, чем мой компьютер году этак в 1997-м. У того компьютера на его одногигабайтном (!) винте помещалась операционка, мощный почтовый клиент, офисный пакет, мощная и по возможностям почти современная IDE, фотошоп, музыкальный редактор и ещё много-много всякого барахла. Да. ещё было 8 Мб ОЗУ и 150МГц одноядерный процессор.

        К слову, если вдруг начнёте сравнивать с современными браузерами - на том моём компьютере была аналогичная по функционалу софтина, которая умела рендерить в реальном времени текст любой сложности под любое разрешение и размер окна, вставлять в него различные объекты, формы, анимации, содержала мощный встроенный движок программирования. И тоже работала на 8 Мб ОЗУ, и сама на диске мегабайт 20 занимала. Я про Word 97.


        1. ez2
          20.07.2023 10:32
          +3

          Word 97 не умел сохранить jpeg внутри документа, картинка сохранялась несжатой типа bmp или tiff. Размер файла с картинкой или фото часто был безумный, ресайзить фото до вставки в документ никто и сейчас не умеет и не заморачивается. Но да, требования к cpu и ram в 1996 были очень скромные, а возможности большие, помню бесплатные библиотеки макро на каждый чих, тогда на офисе, видимо, пытались делать простую бухгалтерию, а то и вовсе домашние CRM и ERP. Кстати, из будущего написание и распространение макровирусов видится вполне себе бизнес стратегией какого-нибудь жирного конкурента, а не только баловством.


          1. PuerteMuerte
            20.07.2023 10:32
            +1

            Word 97 не умел сохранить jpeg внутри документа, картинка сохранялась несжатой типа bmp или tiff.

            Ок, код сохранения jpeg внутри документа добавляет к программе несколько килобайт, а не гигабайт. Браузер, к слову, картинки тоже в общем случае не в документе хранит (хотя умеет, но тоже нифига не компактным способом), а тянет из отдельного источника, word 97 так тоже умеет. Речь вообще не о том, что каких-то единичных фич там не хватало, а о том, что возможности в целом были где-то выше, где-то сопоставимы (с поправкой на то, что размеры обрабатываемых данных были поскромнее), а требования к ресурсам смехотворно малы.


            1. strvv
              20.07.2023 10:32
              +1

              проблема в том что тогда при недостатке ресурсов работа программиста была филигранной, а сейчас — что — какая-то функция в таком фреймворке не работает, а другие используются из него, ищем аналогичный по функционалу фреймворк, но с рабочей этой функцией и лепим из-за этой функции ещё и эту кучу говна, хотя сама функция может быть была типа memset()…
              занавес. в итоге гигабайты говна тщательно цепляются друг за друга и крашат всё в округе, при этом на них навешаны куча ассертов и других контрольных функций, которыми стараются удержать в режиме не полного падения эту всю кучу,
              в итоге несчастный калькулятор занимает место по объему кода больше той же windows XP, а это 2002 уже год, отсылает чисто для разработчика что ты делаешь, что стоит и с трудом умножает 2Х2, советуясь по этому поводу с кучей серверов. причём объём кода самого калькулятора, без учёта библиотек, которые выполняют большую часть функций.


            1. ez2
              20.07.2023 10:32

              Я это к тому, что в каждой версии Windows, офиса и многих программ я для себя находил всякие мелочи, Word 2000, например, умел повернуть текст на 90 градусов, а в словаре появилось слово "Интернет"(не сарказм), Windows 2000 не зависала при открытии CD лотка с игрушкой, Windows 7, а может, и Vista, я её пропустил, продолжала копирование по сети при выходе из сна и гибернации, в Windows 8 появилось переключение языка по Win+пробел, у кого больше 2 языков системы, меня поймут. Видимо, этих мелочей было достаточно много и в какой-то момент они перевешивали недостатки в виде тормозов и размера. Были, конечно, и искусственные проблемы, типа на лэптопах Асус не было драйверов тача на Win 7 и 8 с 15 года, любители семёрки плакали. Поддержка принтеров тоже, на мой взгляд, могла быть не такой короткой. Но было терпимо. В 10 и 11 я пока нахожу, в основном, недостатки в виде отдельного гнезда безобразия в пуске и тормозящей телеметрии (и то и другое выпиливается, но с осторожностью. Функция записи игрушки с экрана привязана к Xbox в пуске, есть и другие фокусы). Но в целом, всё могло быть и хуже.


              1. PuerteMuerte
                20.07.2023 10:32

                Я это к тому, что в каждой версии Windows, офиса и многих программ я для себя находил всякие мелочи,

                Ясно. Ну, сейчас тоже в 11 винде я всякие воистину удивительные мелочи нахожу :). Например, недавно нашёл, что теперь нельзя удалить выбранный документ из очереди печати, удалить можно лишь все сразу, ну или выковыривать засунутый под ковёр старый апплет принтера. Ещё, в последнем апдейте обновили снятие скришотов. Теперь скринит только верхнюю левую часть экранов на моей двухмониторной конфигурации с разным dpi, но зато можно редактировать и выбирать.


        1. 0xd34df00d
          20.07.2023 10:32
          +2

          мощная и по возможностям почти современная IDE

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


          А вот почему для такого же интернета, как 15 лет назад, нужна на порядок более мощная машина, непонятно.


          1. PuerteMuerte
            20.07.2023 10:32

            Между тогдашними языками и современными — пропасть.

            Нет, вообще не пропасть. Да, сейчас они стали умнее, но сказать, что современный мейнстрим вроде C# + Visual Studio радикально отличался по производительности разработки от Pascal + Delphi 3 тех лет я не могу. Разница примерно соответствует разнице в продуктивности софта - на десятки процентов, а не в разы и тем более не на порядки. На порядки, это был скачок, сделанный в 90-е, когда от текстовых редакторов начала 90-х произошёл переход к полноценным IDE с навороченными отладчиками, интеллисенсом, контролем версий и визуальными дизайнерами.


            1. AlexeyK77
              20.07.2023 10:32
              +1

              да, помню как перве виндовые приложения на борланд С++ v.4 писал. Вручную писать обработчик оконных сообщений Вин32, разбираться с перерисовкой поврежденных областей окна приложения. Максимум что было - это редактор диалоговых форм, но которые надо было тоже оживлять вручную. И после этой "радости" появляется делфя и билдер где все это само. Вот тогда это был действительный квантовый скачек в новую реальность.


            1. 0xd34df00d
              20.07.2023 10:32

              Да, сейчас они стали умнее, но сказать, что современный мейнстрим вроде C# + Visual Studio радикально отличался по производительности разработки от Pascal + Delphi 3 тех лет я не могу.

              Это может говорить не только о том, что сам C# недалеко ушёл от Pascal ;]


              Я ещё помню, как в середине нулевых MSVS при встрече слова boost:: просто напрочь отключала интеллисенс. А ещё в ранних нулевых компиляторов, соответствующих стандарту, по факту просто не было. А ещё сейчас, в 2023-м, я могу на C++20 наваять на темплейтах и constexpr ORM, который в компилтайме будет мне генерить строки с запросами и проверять типы параметров против типов «таблиц», что на C++03 по факту не реализуемо, и IDE это прожуёт и будет весьма оперативно показывать проблемы в том, что я пишу.


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


              1. AlexeyK77
                20.07.2023 10:32

                весь основной инфраструктурный софт был реализован в 90-200х. СУБД всех мастей, ОС, сервера приложений, роутеры, фаерволы - все это было написано без С++20х. Конечно сейчас лучше чем тогда, но сейчас лучше экстенсивно, а тогда - был скачек качественный.


                1. 0xd34df00d
                  20.07.2023 10:32

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


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


                  1. Areso
                    20.07.2023 10:32

                    свеженаписанный софт стал инфраструктурным, должно пройти некоторое время

                    Winamp 2.54 уже достаточно стар, чтобы стать инфраструктурным?

                    Мне всегда казалось, что инфраструктурность это не про возраст, а про выполняемые задачи.


                    1. 0xd34df00d
                      20.07.2023 10:32

                      Путаете необходимое и достаточное.


                      Являются ли реализации CODASYL'овского network database language из 70-х инфраструктурным софтом? Является ли MenuetOS инфраструктурным софтом?


                      1. Areso
                        20.07.2023 10:32

                        Являются ли реализации CODASYL'овского network database language из 70-х инфраструктурным софтом?

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

                        MenuetOS

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


                      1. 0xd34df00d
                        20.07.2023 10:32

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

                        Я специально подобрал такой пример, чтобы о нём слышало минимальное количество людей.


                        CODASYL — это те чуваки, которые ещё кобол придумали. Network database language — это ЕМНИП первая попытка в графовые БД.


                        она выполняет инфраструктурную задачу, и если хотя бы 1 (один) бизнес в мире использует её для этих целей — то да, вполне

                        Если пользоваться этим определением, то исходное утверждение «весь основной инфраструктурный софт», очевидно, неверно.


              1. PuerteMuerte
                20.07.2023 10:32
                +1

                А ещё сейчас, в 2023-м, я могу на C++20 наваять на темплейтах и constexpr ORM, который в компилтайме будет мне генерить строки с запросами и проверять типы параметров против типов «таблиц», что на C++03 по факту не реализуемо

                Но в разработке нет задачи "в компилтайме генерить строки с запросами", в разработке есть задача "получить и отобразить данные". В Delphi 1997-го года вы в датамодуле кинули бы компоненту коннекта к базе данных, выбрали бы там базу данных, кинули бы компоненту таблицы (одну, или сколько вам нужно), выбрали бы таблицу, на форме кинули бы компоненту там грида и адаптера данных, подключили бы грид к адаптеру, адаптер к таблице, и за 10 минут получили бы готовое виндовое приложение, которое отображает вам данные и позволяет их редактировать. И с формочкой логина в общем случае. Вот, правда, строки с запросами в рантайме генерило бы, либо вообще напрямую бы работало через апи СУБД, не юзая SQL.


                1. 0xd34df00d
                  20.07.2023 10:32

                  Но в разработке нет задачи "в компилтайме генерить строки с запросами", в разработке есть задача "получить и отобразить данные".

                  Ну начнём с того, что вычисления в компилтайме — это весело.


                  Если чуть более серьёзно и задаче-ориентировано, то если что-то вычисляется в компилтайме, то


                  1. можно проверить корректность этого в компилтайме и допустить меньше ошибок в рантайме, и пользователи будут рады более надёжному софту, и
                  2. можно не делать эти вычисления в рантайме, поэтому пользователи будут рады и более быстрому софту.

                  В итоге вот конкретно вы будете радоваться, что софтина жрёт чуть меньше памяти, процессора и так далее.


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

                  Работающие с базой десктопные приложения не ограничиваются этим.


                  Ну и так-то я могу и сейчас в кутях накидать там всякие модельки, будет аналогично, только ещё красивше и с поддержкой десятка платформ и hidpi.


                  1. PuerteMuerte
                    20.07.2023 10:32
                    +1

                    Ну начнём с того, что вычисления в компилтайме — это весело.

                    Не очень. Если ваш проект компилируется минуту, а не час, вы успеете за сэкономленное время время и тесты написать, и ошибки выявить, и исправить, и ещё много чего успеете.

                    Работающие с базой десктопные приложения не ограничиваются этим.

                    Возможности разработки приложений в древних версиях Delphi тоже не ограничиваются этим.

                    только ещё красивше и с поддержкой десятка платформ и hidpi.

                    Delphi в те годы позволяла делать не менее красивые приложения по "стандартам красоты" тех лет, и поддерживала те же платформы и те разрешения, которые были в ходу :)

                    Речь была о продуктивности работы программиста. Т.е. не как запилить приложение образца 2023-го года в IDE 1997 года, а насколько можно было быстро решить бизнес-задачу в 1997-м году по сравнению с тем, что сейчас, с учётом того, что бизнес-задачи примерно такие же, но должны работать, естественно, в инфраструктуре 1997 года.


                    1. 0xd34df00d
                      20.07.2023 10:32

                      Если ваш проект компилируется минуту, а не час, вы успеете за сэкономленное время время и тесты написать, и ошибки выявить, и исправить, и ещё много чего успеете.

                      Вы просто не умеете веселиться!


                      Возможности разработки приложений в древних версиях Delphi тоже не ограничиваются этим.

                      Тогда причём тут «накидали на форму таблички @ получили таблички»?


                      Т.е. не как запилить приложение образца 2023-го года в IDE 1997 года, а насколько можно было быстро решить бизнес-задачу в 1997-м году по сравнению с тем, что сейчас, с учётом того, что бизнес-задачи примерно такие же, но должны работать, естественно, в инфраструктуре 1997 года.

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


          1. vikarti
            20.07.2023 10:32

            Из реально серьезных штук в языках — вывод типов. И все.


            А интернет… а потому что куча вкладок норма. Потому что JavaScript используют где надо и без него — никак(Google Docs например) и не надо но проще (ну например новый дизайн Хабра), страница которая без JavaScript не отображается — теперь норма. Потому что шифрование во все дыры.
            Ну с другой стороны — многие вещи которые раньше делали через "скачайте приложение вот это для Windows 95 OSR2 а вот это — для Windows 98, поддержка System 7 будет позднее, Windows NT — а что это такое?"/"поставьте ActiveX" — теперь делается просто на JavaScript.


            1. PuerteMuerte
              20.07.2023 10:32
              +1

              Из реально серьезных штук в языках — вывод типов. И все.

              И то, Хаскель вон во времена 386-х появился, и ничего, выводил свои типы даже на тех пылесосах.

              Ну с другой стороны — многие вещи которые раньше делали через "скачайте приложение вот это для Windows 95 OSR2 а вот это — для Windows 98

              Так не бывало. Какие-то проблемы совместимости где-то когда-то случались, но речь шла обычно о "нормально работает на вездесущих 95, 98, а под NT требует админских прав". Более существенные проблемы бывали разве что у каких-то системных утилит, вроде дефрагментаторов или антивирусов, которые под капот системы лезли, и то, они тоже нормально работали на 95 и 98 :).

              поддержка System 7 будет позднее

              ...точнее, никогда. Виндовый софт и софт под Мак - разные миры, которые частично пересекались разве что у фотошоперов, да ещё в MS Office.


              1. 0xd34df00d
                20.07.2023 10:32

                И то, Хаскель вон во времена 386-х появился, и ничего, выводил свои типы даже на тех пылесосах.

                Хаскель эпохи 386-х и хаскель эпохи сегодня — два сильно разных языка. Rank-n polymorphism не было, type families не было, GADT не было, coverage checker'а толком не было, ничего не было.


                И, кстати, haskell-language-server тоже не было. Компилятор был, и надо было переключаться из редактора в терминал с комилятором/реплом и перезагружать модуль там. Никакой онлайн-подсветочки ошибок и предупреждений прям в редакторе.


                1. PuerteMuerte
                  20.07.2023 10:32

                  Rank-n polymorphism не было, type families не было, GADT не было, coverage checker'а толком не было, ничего не было.

                  Да, но и процессоры конца 90-х на два, а если совсем конца, то и на три порядка мощнее 386-х. Стала ли система типов современного Хаскеля сложнее в плане объема требуемых вычислений более, чем в тысячу раз, нежели система Хаскеля эпохи 386-х?


                  1. 0xd34df00d
                    20.07.2023 10:32

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


                    1. PuerteMuerte
                      20.07.2023 10:32

                      А насколько (хотя бы на глаз) она стала более требовательна к вычислительным ресурсам?

                      Ну и раньше всех устраивало, если тайпчекинг происходил отдельно от процесса написания кода

                      Фоновая компиляция по мере написания кода, например, в обсуждаемой ниже (или выше) Delphi появилась в 1997-м году. Это, конечно, не Хаскель, но тем не менее, всё это незаметно для пользователя работало даже на Пентиум-100.


                      1. 0xd34df00d
                        20.07.2023 10:32
                        -1

                        А насколько (хотя бы на глаз) она стала более требовательна к вычислительным ресурсам?

                        Вполне можно добиться времени тайпчекинга модуля в сотню строк в десяток секунд, хотя простой код такого объёма будет в репле релоадиться моментально.


                        На каком-нибудь идрисе — ещё проще, привет завтипам.


                        Фоновая компиляция по мере написания кода, например, в обсуждаемой ниже (или выше) Delphi появилась в 1997-м году. Это, конечно, не Хаскель, но тем не менее, всё это незаметно для пользователя работало даже на Пентиум-100.

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


                      1. PuerteMuerte
                        20.07.2023 10:32
                        +1

                        Вполне можно добиться времени тайпчекинга модуля в сотню строк в десяток секунд

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

                        там даже для школьных хелловорлдов из трёх файлов компиляция вполне могла идти несколько секунд

                        Школьный хеллоуволд в Turbo C++ (очень-очень близкий родственник ВС3.1) я компилировал неколько секунд на вот этом:

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

                        Например, вы смартдрайв в вашем нативном досе не прописали в конфиг.сис


                      1. 0xd34df00d
                        20.07.2023 10:32
                        -1

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

                        Ну это ж не значит, что любой модуль на сотню строк такой тормозной. Не нужны эти фичи настолько серьёзно — не используете, нужны — используете.


                        Например, вы смартдрайв в вашем нативном досе не прописали в конфиг.сис

                        ХЗ, нам школьный препод дискетку выдавал.


              1. vikarti
                20.07.2023 10:32

                Так не бывало.

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


            1. Wesha
              20.07.2023 10:32
              +1

              и не надо но проще (ну например новый дизайн Хабра),

              Новый дизайн Хабра ПРОЩЕ??? Пятнадцать раз ха-ха. Попробуйте такой use case: откройте комментарий, вставьте видео, а потом вспомните, что хотели напечатать вступительный абзац и попробуйте что-нибудь напечатать ВЫШЕ видео.


              1. vikarti
                20.07.2023 10:32

                Как я понимаю — его было проще ПИСАТЬ. А пользователи — ну красиво ж. И у них все равно есть JavaScript.


                1. PuerteMuerte
                  20.07.2023 10:32

                  Оно перестаёт быть красивым, когда на странице в зависимости от фазы луны грохается скрипт, и она перестаёт реагировать на любые кнопки/ссылки.


                1. Wesha
                  20.07.2023 10:32

                  его было проще ПИСАТЬ

                  Вот пятнадцать раз да. И я вполне себе великолепно писал — но потом старый редактор выпилили.


            1. 0xd34df00d
              20.07.2023 10:32

              Из реально серьезных штук в языках — вывод типов. И все.

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


              Потому что JavaScript используют где надо и без него — никак(Google Docs например)

              Так об этом и разговор! google docs уже лет 15, и оно неплохо работало на машинах 15-летней давности. Что изменилось?


              и не надо но проще (ну например новый дизайн Хабра)

              Ненужные перделки, верните старый.


              Потому что шифрование во все дыры.

              Не уверен, что понимаю, как шифрование связано с JS.


              1. vikarti
                20.07.2023 10:32

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

                https://kotlinlang.org/spec/type-inference.html


                https://www.wwdcnotes.com/notes/wwdc20/10165/ (про Swift)


                https://www.geeksforgeeks.org/type-inference-in-c-auto-and-decltype/


                При этом "давно" такое можно было сделать разве что извратами вроде VARIANT в Visual Basic'е ну или автоконвертацией.


                Не уверен, что понимаю, как шифрование связано с JS.

                Проблемы не только из-за JS. Да, шифрование (если речь про https) более менее быстрое и оптимизированное но все же, ресурсы — уходят.


                1. 0xd34df00d
                  20.07.2023 10:32

                  https://www.geeksforgeeks.org/type-inference-in-c-auto-and-decltype/

                  Ну это даже несерьёзно, потому что в плюсах не то что вывод типов, и даже не то что проверка типов, а парсинг алгоритмически неразрешим.


                  Проблемы не только из-за JS. Да, шифрование (если речь про https) более менее быстрое и оптимизированное но все же, ресурсы — уходят.

                  Мой зашифрованный сайт открывается даже на современном утюге, потому что там нет JS. Онлайн-банкинг chase (или их приложение для мобильника) ощутимо разогревает машину и (в случае мобильника) жрёт батарею как не в себя. Почему? Причём тут шифрование?


            1. V1RuS
              20.07.2023 10:32

              А интернет… а потому что куча вкладок норма.

              У меня и в 2004 это была норма, и работало местами даже лучше, чем сейчас.


  1. DirectoriX
    20.07.2023 10:32
    +3

    На современных телефонах, как Android, так и iPhone, нельзя просто программировать приложения

    ...

    Чтобы запустить Linux в 2023 году, требуется немного повозиться.

    ...

    Для разработки ПО Linux — обязательное требование. Чтобы разрабатывать для Windows CE, необходим PC с Visual Studio — та же проблема, что и у современного iPhone.

    То есть на этом устройстве тоже "нельзя просто программировать приложения", а чтоб таки программировать - "требуется немного повозиться". Что-то не сходится, ведь с аналогичным успехом можно "немного повозиться" и накатить на (подходящий) современный Android-смартфон Linux и "просто" программировать. Ещё и комфортнее - с адекватным разрешением экрана, с адекватным объёмом ОЗУ, с адекватной частотой процессора, с поддержкой современных сетевых протоколов и т.д. и т.п.


  1. MaFrance351
    20.07.2023 10:32
    +1

    Аппарат действительно очень классный. Конечно, по нынешним меркам слабенький, но вид внушает уважение. Я бы даже сейчас хотел заиметь что-то в таком же форм-факторе, но с новой начинкой.
    Но вот Линукс на нём всё так же остался игрушкой для гиков (даже с учётом того, на кого вообще были ориентированы такие КПК). То есть даже с учётом всех недостатков WinCE максимумом сторонних дистрибутивов на таких аппаратах часто остаётся лишь похвастаться в кругу таких же любителей древнего железа, что у тебя на такой штуке работает линукс.


    Создать разделы на карте compact flash не так уж сложно, как и скопировать файлы для запуска Linux.

    Даже интересно, как поживает сейчас этот проект. Потому что ещё не так давно запустить это было не самым простым испытанием, в частности, товарищ dlinyj в своём посте про линукс на Jornada 720 упоминал, что пришлось перепробовать несколько карт памяти, прежде чем оно завелось. Ну и многое таки не работало.
    Ну и не забываем, что это железка, которой лет уже больше, чем немалому числу посетителей данного сайта. С такими девайсами очень редко бывает, что всё запускается играючи и работает с первого раза.
    Возможно, что даже сам попробую всё это скачать и запустить.


  1. someoneinsomewhere
    20.07.2023 10:32
    +5

    Автор статьи либо никогда не открывал магазин(ы) приложений на современных Android/iOS, либо просто каргокультист. Иначе я не могу объяснить почему в статье написан такой бред (да, я знаю что это перевод)

    На нём можно разрабатывать, компилировать и запускать нативное ПО. В нём есть компилятор C и C++, Python и даже Perl, так что это полнофункциональная рабочая станция для разработки. На нём можно не только разрабатывать, но и запускать ПО

    Всё из перечисленного можно запустить на Android и iOS.

    На современных телефонах, как Android, так и iPhone, нельзя просто программировать приложения, им требуется второе устройство, а именно компьютер

    Termux на андроид, ish на ios. Оппрограммируйся до посинения.

    Дальше статью не читал.


    1. vikarti
      20.07.2023 10:32

      Всё из перечисленного можно запустить на Android и iOS.

      Да? А можно пример приложения в AppStore для iOS, которое бы позволило скомпилировать Hello World на C++ и запустить? (именно скомпилировать и именно локально — так что Cling и Replit не подходит). И без требования предоставить ему свой сертификат разработчика.


      1. someoneinsomewhere
        20.07.2023 10:32

        1. vikarti
          20.07.2023 10:32

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


          Но конечно решение с


          using usermode x86 emulation and syscall translation.

          Possibly the most interesting thing I wrote as part of iSH is the JIT. It's not actually a JIT since it doesn't target machine code. Instead it generates an array of pointers to functions called gadgets, and each gadget ends with a tailcall to the next function; like the threaded code technique used by some Forth interpreters. The result is a speedup of roughly 3-5x compared to pure emulation.

          Это не совсем то что имелось ввиду.


    1. mpa4b
      20.07.2023 10:32
      +1

      termux это как бы да, но не совсем "настоящее".

      Во-1 все софты под термукс запатчены на предмет неиспользования стандартных линуксовых путей типа /dev, /proc, /etc, /usr/lib и т.д., т.к. они в андроидах жёстко забанены.

      Во-2, попробуйте например в термуксе запустить screen, отсоединиться от сессии, закрыть термукс, потом открыть обратно и подсоединиться к сессии.


  1. umnyashik
    20.07.2023 10:32
    +3

    Раньше было лучше (с)


  1. AndreyAf
    20.07.2023 10:32

    на моём устройстве версия с HPCFactor вызывает проблемы с распаковкой, возможно, у меня слишком новая версия tar — она жалуется, что не может найти следующий файл заголовка.

    ну да ну да, и компилятор есть и софт писать можно.. а чтото исправить не получается


  1. Zara6502
    20.07.2023 10:32
    +3

    Как я всегда и говорю - любое устройство должно приобретаться в контексте потребностей владельца. Автору достаточно этого устройства не потому что оно такое замечательное, а потому что его потребности перекрываются. Я фанат ретро железа, у меня есть C64, Atari И куча старых ноутов, но чего я с ними не делаю - не пользуюсь каждодневно, так как они не перекрывают мои потребности.

    Сейчас самым важным среди устройств для меня стал монитор, а если точнее - огромный экран ТВ. Мне настолько неудобен уже даже 22-24" монитор, что у меня стоит ТВ на 43" и еще на 32". Я просто хочу четко, ясно и в деталях видеть. Прошло то время когда я довольствовался RF модулятором или CVBS. Зрение не настолько плохое чтобы списать всё на него, но я просто не представляю как люди сознательно пользуются полностью только смартфоном. Там неудобно всё. Решают размеры изображения, ну и я не люблю тач.

    Так что старое - only for fun, для души.

    PS: кстати так и не понял зачем бы мне нужен был рут на смартфоне. Всё что я на нем делаю это 2ГИС, звонки и пара банк-клиентов, фото использую только для съемки объявлений или локаций чтобы показать кому-то, ну конечно вацап, удобная штука.


  1. vvzvlad
    20.07.2023 10:32
    +1

    Моя 24-летняя HP Jornada может то, на что не способен современный iPhone

    На нём можно разрабатывать, компилировать и запускать нативное ПО

    Звучит как "а вот на win98 я могу получить доступ к прерываниям LPT, а щас не могуууууу("


  1. t3hk0d3
    20.07.2023 10:32

    А почему сравниваете с айфоном, а не с хотя бы Стим Деком? Или GPD Win Max 2?

    Флекс не зачитан.


    1. Areso
      20.07.2023 10:32

      Стимдек большой, жирный (толстый), тяжелый, и, внезапно, без клавиатуры.

      У меня он есть, он крут, но блин... Другой тип устройства.


      1. Zara6502
        20.07.2023 10:32

        интересно почему не выпускают тот же дэк но без стиков, экрана и батареи, просто мелкий тихий корпус с возможностью смены M.2 например (в идеале и оперативки). Чтобы цена была копеечная (по сравнению с ПК). У меня чтобы поиграть в Factorio под столом (на столе) стоит ящик размером с холодильник, а сборка мини варианта все равно даст не тот результат да еще и за непотребные деньги.


        1. Wesha
          20.07.2023 10:32

          У меня чтобы поиграть в Factorio под столом (на столе) стоит ящик размером с холодильник

          Вах, зачэм халадылник, дарагой?
           Intel J4125, 4K, 6GB RAM
          Intel J4125, 4K, 6GB RAM


          1. Areso
            20.07.2023 10:32

            Есть чуть побольше девайсы с Райзенами на борту. Они уже в состоянии быть примерно тем, о чем говорит @Zara6502. Цена в районе 500 евро.


        1. K0styan
          20.07.2023 10:32

          Это вы игровые консоли изобрели)

          Valve пытались делать заход в специализированные PC-совместимые девайсы именно под свой магазин - кажется, Steam Machine назывались. Но как-то не зашло...


  1. Art3
    20.07.2023 10:32
    -1

    Современный iPhone фотографию в фоне отправить не может, лол, вы о чем (14pro)


    1. vikarti
      20.07.2023 10:32

      Уже и ЭТО сломали? (несколько версий iOS назад — хотя бы в iCloud Photos в фоне отправлялось + можно было немного поизвращатся и в твоем приложении — работало, обычно, https://medium.com/swlh/demystifying-background-uploads-downloads-in-ios-53f5ba465f0b )


  1. CAJAX
    20.07.2023 10:32

    На Андроиде точно можно писать нативный софт под Андроид же. Я это пробовал году так в 2015. Неудобно, но можно. Думаю теперь, когда есть более полноценная многозадачность и ADB по сети, это ещё проще. Только кому это надо