В последнее время регулярно попадаются воодушевляющие материалы о том как начать, сделать и даже закончить карьеру в IT...
Мне без малого шестьдесят и более пристало бы интересоваться темой грядущей пенсии. Сейчас я живу с выручки “гребца на галерах” в 1000₽/смена. За последние годы (подробности в моём блогспоте тут) я научился очень очень скромно жить и мне хватает, но "кандалы и весла" становятся тяжеловаты. Отчего мечты отца Федора по собственному свечному заводику потешно становятся понятны и близки.. Хотя по субъективным причинам и объективным обстоятельствам вариант "немного шить на дому" мне представлялся более привлекательным..Отсюда и возник фантастически утопический порыв по входу в АйТи бизнес "инди-норогом". Пока держался "бриллиантовый дым" наивно думалось, что если небесный Стокгольм “мне и не светит", так ведь ( как показала жизнь) и "тыр/день" тоже неплохо. А уж если бы он был заработан в кайф!.
Из начальных условий имелись: приснопамятный опыт разработок на Турбо-Паскаль, Visual Basic и Clipper с двумя школьными ноутбуками от давно дипломированных детей. Ещё я располагал двумя часами вечером и часом ранним утром в будни за столом с камерный рояльчик , в кресле рассчитанном на сутки. Также имелось понимание обреченности на курс в кильватере лидеров и фаворитов с 1000000+ установок.. Т.е дженерик или утилита. Дженерик андроид приложения "для интеллект-карт" или приблуда к андроид приложению "дневник-фоторегистратор". И тем и другим приложением я пользуюсь не первый год и париться над ТЗ было бы излишне: "я помню все твои трещинки". Для безбюджетного мероприятия - заметная экономия хотя бы на человеко-часах! Из тех же малохольных соображений я не взял актуальный, но кредитный "писюк" или “макинтош”: ADT, Java, Swift и Play Market с App Store отвалились... Но рекрутировались JavaScript, HTML, Notepad++ и Chrome Web Store… К тому же, чуть позже, выяснилось, что с издания "Building iPhone Apps with HTML, CSS, and JavaScript" Jonathan Stark’а JavaScript не приобрел собственный полноценный File API и выбор в пользу PWA в Play Market моему скрипту ничего не прибавил бы, кроме… Кроме заочных мутных непоняток с автором “дневника”. Который УЖЕ сделал и вывел в люди востребованное стабильное приложение с отличным функционалом ..
![](https://habrastorage.org/getpro/habr/upload_files/975/295/7f2/9752957f244c7b979d83dacbf5acbab8.png)
Но почему-то не предусмотрел экспорта в HTML Достойный повод и предмет к открытию собственной практики...На вскидку казалось, что “освоить” парсер XML в HTML я смогу дней за тридцать если прихватить выходные. Через три месяца стало очевидным, что только за ежевечерне-утренние ”присяделки” я не вытяну скрипт до Minimum Viable Product и за год, даже прихватывая по “восьмерке в субботы и воскресенья” .И дело не только в том, что JavaScript - это праздник без тени сарказма (много учебников, справочников с примерами и они легкодоступны). И не только в недостаточной степени деревянности жопы (в этих единицах И.Сталин отметил впечатляющую работоспособность Вячеслава Молотова). И не только в “казусе Мартина Идена” (его история с прачечной в которую он нанялся и прибыл с вязанками книг и велосипедом). Но и в том, что “Нельзя так просто взять и погрузиться в работу.” и лично, лично Мне необходимо писать в одиночестве, или, по крайней мере, с другими людьми, которые, как и я, могут весь день работать тихо. Или хотя бы отдыхать.. Вариантов не было, только брать на работе по пятницам ( когда дома вообще никого нет) “библиотечный день” за свой счёт и писать. Таким образом, совсем безбюджетным мероприятие не стало. Но только через 26 пятниц, растеряв весь артистический кураж самозванца в Русские Писатели Кода, я вывел свой чудовищно дилетантский MVP код на zip дистрибутив в Chrome Store.”Чу́дище о́бло, озо́рно, огро́мно, стозе́вно и ла́яй”, но едет и болтами-гайками на ходу не сорит. Более того, на клиентском пульте управления имеется рычаг позволяющий не вставая отцепить вагоны на перегоне с благоприятным уклоном..
И вот тут наступил самый драматичный этап: время “родильной горячки”.
![](https://habrastorage.org/getpro/habr/upload_files/823/4d4/fb6/8234d4fb6426caad241a6072b0a22022.png)
А что если мой скрипт никому кроме меня не нужен?! Что если я один веду (на взгляд со стороны - маниакально) ежечасный чекинг событий и обстоятельств., и начинаю утро не с просмотра прикольных инстаграмов, а с чеков сделанных мной накануне?! Надвигающийся провал мероприятия становился всё более и зримым и почти ощутимым.
В ход пошли утешительные плюшки. Старперы вообще большие мастера такого рода выпечки. Ну, да: и сроки сорваны (полгода!) И при сопоставимой с греблей степенью сменной измотанности недополучены без малого тридцать тысяч рублей! Но.. позвольте! 26 птн х 6 часов (первые часы пятницы уходили на возвращение к оставленным на неделю рубежам и окапыванию заново) + 26 пар сбт-вскр х 2 часа (утром между мойкой и холодильником пока все спят) = 260 часов… А теперь делим на “восьмёрку" и выходит 32.5 смены.. Чуть больше месяца! Ха! Ха!!. Да я бы в Купертино при Джобсе выжил! “Ай да Пушкин, ай да..” А кайф от не забытого руками ремесла?, А драйв от первых return из function? А восторженные ассоциации со спасительным выходом бойца "из окружения к своим"? А роскошные сны-фантазии "о чём-то большем"?! А прелесть и очарование утреннего священнодействия?! А, наконец, встреченный в процессе DroidScript, теоретически открывающий вход в Play Market и для апдейта парсера и для будущего дженерика (уже и тайтл есть: “Brainy” - помните тот диалог Ирен Адлер и Холмса Камбербетча. Слегка претенциозно, но стильно и в тему). Да за такие профиты впору приплачивать самому..!
Оплата членского взноса в союз писателей Chrome Store прошел без сложностей: 5 USD в рублях с карты Сбера были приняты с благодарностью и квитанцией.
![](https://habrastorage.org/getpro/habr/upload_files/2a0/36a/4ad/2a036a4adf616060cc912ce9aee7bd23.png)
Попасть в свою личку “Издателя” тоже не составило труда...
![](https://habrastorage.org/getpro/habr/upload_files/f99/b69/2ef/f99b692efc2a25b19da0870f9a0cffe2.jpg)
Оставалось отправить zip с файлами приложения.. Казалось бы, чего проще? В режиме “разработчика” в браузере Хром есть и кнопка “Упаковать расширение”.
![](https://habrastorage.org/getpro/habr/upload_files/58e/ef7/6a0/58eef76a052612fcdec5b5cd943c1aa6.png)
Но не тут-то было… Браузер упаковывает папку расширения в файл .CRX, а Web Store настаивает на .Zip. Что не критично, на моём ноуте нашлась дюжина разных zip упаковщиков. И я перепробовал их все, прежде чем вник в Гугловскую претензию к своим пакетам…
![](https://habrastorage.org/getpro/habr/upload_files/e28/eb6/ef1/e28eb6ef13fe9e9e238c052fb40fe4e4.png)
Настройка двухэтапной аутентификации тоже не обошлась без забавных, но нервных моментов. На каком-то из шагов из Гугла пришли смс с кодами в формате G-123456, а поле ввода на форме проверки вмещало только G-12345...Теперь уже и не вспомнить/не восстановить как это рассосалось, может после обнаружения в почтовом ящике ссылки на подтверждение?..
![](https://habrastorage.org/getpro/habr/upload_files/093/1ba/156/0931ba156533c5ed5c7e2654b06e1b46.png)
И всё наладилось! То есть zip загрузился и мы с Гуглом перешли к темам по существу вопроса “Почему я не могу запросить проверку?”
![](https://habrastorage.org/getpro/habr/upload_files/124/368/dd3/124368dd3bc9a87e1882f5548cd011aa.png)
Ничего неожиданного или излишне требовательного в списке не было.
![](https://habrastorage.org/getpro/habr/upload_files/bec/c0c/3dc/becc0c3dcf6af8571a38a0d50aba15ee.png)
Всё решалось “по мере поступления”.
![](https://habrastorage.org/getpro/habr/upload_files/a7f/5a0/5fc/a7f5a05fc7063a7aef770dfe5635dc07.png)
![](https://habrastorage.org/getpro/habr/upload_files/b6f/ce4/00d/b6fce400dc1ba3c1d61ed774cf94495e.png)
![](https://habrastorage.org/getpro/habr/upload_files/ba0/48a/f54/ba048af541c9d8244b653fd28f4ae7a9.png)
Очередной “спотыкач” случился на предложении загрузить рекламные картинки: “Маленькое”, “Большое” и “Очень большое” рекламные изображения.. Тьфу! Фото с attractive блондинкой осчастливленной моим приложением у меня под руками не оказалось… К счастью,- Гугл не настаивал..
![](https://habrastorage.org/getpro/habr/upload_files/b28/28e/14f/b2828e14f29e98d6d60e6ad9244de177.png)
И к “Дополнительным полям” тоже отнесся снисходительно лояльно..
![](https://habrastorage.org/getpro/habr/upload_files/7ef/a05/794/7efa057948b27de9e48517eef229b753.png)
Наконец, кнопка “Отправить на проверку” стала доступной и пришло время “дико хохотать” над собственными грёзами “за тыр\день”..
![](https://habrastorage.org/getpro/habr/upload_files/96d/aa9/03e/96daa903ed75856efd8561b3e7886795.png)
Я почему-то был уверен, что здесь будет пункт “единовременный/ разовый платёж”. Меня только беспокоила вероятность ограничений на его минимализм. В лёгкой прострации я выбрал “Включает покупки” и отправил рукопись в редакцию на проверку.
![](https://habrastorage.org/getpro/habr/upload_files/b19/65d/89d/b1965d89d54aacb4a156c565d3d47454.png)
Эх.. Выдержки не достало.. Поторопился.. “Включает покупки” придётся активировать после/и если одобрения.. Применю распространенный в 90-х nag screen. Но без выкручивания рук.. Будучи человеком из СССР вопросом ценообразования я особо не заморачивался. Во времена моей юности бытовая услуга дворового “левши” оценивалась в банках. Учитывая нынешнюю дороговизну, пусть цена будет эквивалентна банке ординарного местного пива из шагового гастронома.
![](https://habrastorage.org/getpro/habr/upload_files/d7e/75b/add/d7e75badd3eb06f6ac0b9d5574a0cbae.png)
Но ждать “Несколько недель”!. “ Я очень устал. Пожалуй, пойду домой”. Писать код “Brainy”.
![](https://habrastorage.org/getpro/habr/upload_files/56d/344/3ec/56d3443eca589f0c04177cf60ca38450.jpeg)
Ах да!. Это была двадцать седьмая пятница.
Комментарии (5)
Dekmabot
29.12.2021 23:21Увлекательный квест, надеюсь всё получится) Искренне желаю вам успеха.
Сам делаю PWA на Vue, а в качестве библиотеки интерфейсов использую varlet-ui, сильно ускоряет разработку, да и результат смотрится привлекательно.
PEACE_dez
30.12.2021 00:37+1комментарий не столько к содержанию, сколько к духу:
Тов. Б. Полевой говорил: «старость — это когда бОльшая половина мочИ уходит на анализы»
Я к тому, что оперируйте понятием не "… без малого 60",
а «20+» — так легче в формулы подставлять ))
Alexwoodmaker
30.12.2021 16:04+2Трагедия старости не в том, что человек стареет, а в том, что он душой остается молодым…
Оскар Уайльд, Портет Дориана Грея
borshak
Не все, увы, понял при прочтении - уж простите, - из-за слишком витиеватого слога; но остался вопрос:
В чем собственно трудность? Вроде ж как в браузере есть встроенные инструменты обработки xml, на npm тоже немало пакетов. Или у вас какая-то очень специфическая задача?
DrZlodberg
Может я не до конца понял задачу, по выдрать что-то из xml и показать в html прекрасно решается стилями xslt. Штатно умеются всеми современными браузерами (на сколько я знаю). Под разные задачи можно просто менять стиль или воткнуть уже туда какую-нибудь обработку. Никакой дополнительной логики просто для конвертирования не требуется.