Традиционно уже, ещё с прошлой "блог-вселенной" September Helen передает мне эстафету. Итак:
Кем вы хотели быть в детстве?
В юном возрасте моя скромная персона "болела" авиацией, причём больше гражданской, чем военной. Началось все в 87-88 годах, после полётов с родителями из Волгограда в Симферополь и обратно. Само собой что было прочитано немало книг, посвященных самолётам, вертолётам и всему что с этим связано. И если бы не врождённая забагованность организма, возможно и летал бы сейчас я сейчас пилотом на каких-нить "боингах" или "ЭйрБасах".
Но так уж сложилось что в итоге жизнь занесла меня в сферу информационных технологий, ты её часть, которая связана с разработкой веб-сайтов и сервисов. Хотя и поадминистрировать банковское ПО мне пришлось и немного 3Д-моделингом позаниматься. Впрочем последнее отваллось довольно быстро, из-за отсутвия художественного образования - и осталось на уровне фанатского увлечения разработкой игровых уровней для Quake.
Тащить все в браузер, пытясь "эмулировать" в нем нативное дестопное приложение - было ошибкой. Javasсript никогда не был моим любимым языком программирования, скорее даже наоборот - после Питона и С++ его конструкции почему-то бесят. В итоге имеем то что имеем - мешанину из HTML, чистого JS и Jquery/JQuery UI. Ах да, ещё и Bootstrap как основа адаптивной верстки.
Все же надо было в вебе оставить только API на основе Django RRST framework, а всю "клиентскую" часть со списками, формами и прочей картографией - реализовать в виде десктопных и мобильных приложений (тем более что мобильные "отростки" хоть и не планировались изначально, но в итоге мы к ним все же пришли). И "красивый" landing-page на "морде" сайта.
На разработку ушло бы раза в полтора-два меньше времени.
Всё-таки не верю я в то что "веб спасёт мир", в плане быстроты разработки и удобства для пользователей. Браузеры становятся свобобразной "операционкой в операционке". А лишние прослойки - не нужны.
Но увы, моё мнение не разделяют в гугле и прочих "гигантах" индустриии =)
Гребаный openstreetmap.ru снова подложил свинью - отвалился поиск у них. В тот самый момент когда мы хотели сервис демонстрировать одному из потенциальных клиентов. Они там что, читают наши с Ten мысли - ранее, при запуске полузакрытого бета - отваливался рендер тайлов карты.
Но поменять "красивый" рендер на дефолтный - секундное дело, правкой одной строчки в JS-файле и пересборкой статики на сервере через python manage.py collectstatic. А с поиском сейчас придётся чуть больше повозиться, поскольку выдача результатов в "большого" поиска OSM отличается от русскоязычного. Ну да все не так уж и сложно, к полуночи думаю разгребу это и сделаю апдейт.
Последние несколько дней сплю в режиме "три часа ранним утром + два-три часа вечером", сутки фактически разбиты на два отрезка бодрствования - дневной и ночной. Снится всякая лабуда - например, диапазон геокординат, описывающие разные объекты где-то в Финляндии. Именно в виде цифр, затем трансформирующихся в названия и адреса.
Это конечно не норвежские IP-адреса, про которые некоторое время назад я видел упоминание во френдленте - но тоже "интересно" =)
Прежде всего творческий. Работа работой, с ней я более-менее справляюсь, а вот делать что-то свое, персональное - совсем в эти дни не получается.
Отдохнуть, сменить обстановку - пока, к сожалению не вариант. Точнее первое из этих двух возможно без особых проблем, забить на пару дней на все - но без авторого, оно будет не очень качественным. Ибо родные "четыре стены" никуда не денутся.
Обстановку будем менять летом, если моя скромная персона доживёт конечно. Тогда снова махану на пару недель в Петербург, я очень хочу снова посетить этот город. Даже с учётом не очень позитивного послевкусия, осталвенного сеньтябрьским прошлогодним визитом в Северную Пальмиру.
Послезавтра, 15 февраля 2015 года, на форуме Quake 2 Cafe стартует 10-й конкурс по созданию карт для Quake 2. Хотел было заявиться на него, но все же отогнал эту мысль от себя.
Во-первых - DM-карты надо с кем-то тестировать. А мне не с кем, ботов же под второй Квейк под Linux нет. Точнее есть "зигоки" (3rd Zigok2), и где-то у меня даже валяются их исходные тексты. Но не факт что с полпинка они соберутся в моем линуксе и заработают под 64-х битным Yamagi Q2.
Во-вторых - Quake 2 мне как левел-дизайнеру не особо нравится.
В третьих - в правилах запрет на "возрождение" заброшенных карт, надо обязательно все с нуля. Там конечно ничего не сказано про то что нельзя портировать "заброшку" с другого Quake (первого или третьего), но думаю это как бы само собой разумеющееся. А незаконченную карту для прошлогоднего Q3-эвента я успел "засветить" в сети (пусть только и в виде скриншотов).
И в четвёртых - мне просто лень, я лучше доразгребу движок для quakegate.ru (пора окончательно избавиться от остатков django 1.4 в коде, впилить нормальную систему комментариев и перенести все на Python 3.4 и Django 1.7).
Ну вот, первое приложение для Android с использованием кроссплатформенного фреймворка Qt, наконец-то завершено. Точнее проект достиг той стадии, на которой его можно выпускать «в поле». Ограничив при этом размеры этого самого «поля» совсем небольшим числом пользователей (около десятка) Ине допустив попадания разработки в руки людей со стороны, поскольку продукт исключтельно для внутреннего пользования в отдельно взятой компании.
Хотелось все сделать чтобы процесс установки и использования приложения был максимально прозрачен для пользователей. На рассмотрение были взяты следующие варианты распространения:
1. Ручная установка на планшеты (телефоны) доверенных пользователей. Человек приезжает к нам — мы ему останавливаем софт на устройство. Простым подключением оного к компьютеру и установкой APK-файла. Предварительно включив в настройках андроида разрещение на установку из других источников.
2. Установка в автоматическом режиме, точнее без непосредственного участия разработчиков в данном процессе. Стандартными средствами Google Play. Нам меньше возни, пользователю — тоже. Хотя это спорное утверждение, но об этом — позже.
Вариант номер раз хорош тем, что человеку можно сразу показать и объяснить как пользоваться свежеустановленным программным обеспечением для выполнения его профессиональных задач (на которые разработка и ориентирована). Но в то же время не очень удобен последующими обновлениями. Вернее необходимостью проведения их так же в ручном режиме, «!дёргая» пользователя к нам «на базу». А то что обновления будут, это сомнения не вызывает, т. к. часть запланированных функциональных возможностей на момент написания этого текста — не доведена до стадии промышленной эксплуатации.
Второй способ проблему «бесшовных» обновлений решает. Но поднимает другую, именуемую - как скрыть свое приложение от посторонних людей? Ответ напрашивается сам собой — использовать альфа и бета тестирование. Да, именно так, держа приложение в статусе «вечной» бета-версии.
Но тут всплывает заморочка иного характера. Оказывается нельзя вот так просто взять и раздать пользователям ссылку на страницу с альфой и бета версией. Необходимо выполнить несколько волшебных пассов руками дополнительных действий.
Создать сообщество в социальной сети Google+ или группу в сервисе Google Groups.
Согнать всех потенциальных тестеров нашего приложения в вышесозданную группу или сообщество.
Опубликовать ссылку для загрузки тестовой версии продукта в сообществе или группе.
И к чему такие сложности, гугель? Простотой тут не пахнет. Ни для разработчика (создавать и админить «сообщество» – у меня других забот хватает, связанных непосредственно с разработкой). Ни тем более для пользователей, многие из которых могут быть совсем далеки от всех этих заморочек с подпиской в группы и социальные сети.
В четверг вечером, после очередной пачки обновлений (среди которых было ядро системы), потребовалось перезагрузить комп. И выполнив данную несложную операцию я благополучно словил "панику ядра" - не смонтировалась корневая файловая система.
Игры с параметрами ядра при старте результат не дали, и было принято решение форматнуть жесткий диск полностью. Включая и home-раздел, наполнный некоторым количеством хлама нужной информации - в виде исходников, книг, музыки и разного Quake-ориентированного контента.
Но тут ждала засада. Чтобы нужные вщи сохранить, необхдимо загрузиться в хоть какой-нибудь Linux. А у меня резервной системы не было, на втором харде лишь остатки какой-то старой версии Убунты. Что ж, пришлось двигаться обходными путями - ставить Windows 7, благо диск с неё в доме был найден. Затем уже в "форточках" скачать установочный образ Linux Mint 17.1 KDE, записать его на флэшку. И установить на место "семёрки".
Этот самый Минт в итоге и был оставлен в качеств резервной системы. А на сглючивший жесткий диск в итоге встал привычный Arch Linux, ибо другие дистрибутивы со мной не очень-то совместимы. Точнее - я с ними =)))) Но установку Арча убил кучу времени, т.к. сначала вылез непонятный баг нестартующим десктопным окружением - вводим логин и пароль на экране входа в систему, и все. Чёрный экран небытия. Проблема решилась в итоге сама собой, после нескольких чтения логов графического сервера (в них и намёка на ошибку не было, что самое интересное) и переконфигурации X-сервера через nvidia-xconfig.
К положительным моментам всей этой возни можно отнести то, что свежеустановленные KDE 5 (установленные ещё перед НГ) на чистой системе чуствует себя получше, чем после обновлений с "четверки" (хотя и там особых проблем не было, кроме кривизны шрифтов в некоторых не KDE-приложениях). И плюс стало дофига свободного места Которое снова можно теперь методично забивать всякими разностями в течение двух-трёх лет =))
Вся твоя судьба написана ночью, Вся твоя работа придумана ночью Егор Летов, 2006-й год
Крайние несколько дней работаю и живу в режиме "ночь вместо дня" - днем дрыхну стандартные 8-10 часов. А работаю и занимаюсь прочей ерундой - в тёмное время суток.
И совсем не испытываю дискомфорта из-за того что кто-то там днем будет пытаться "искать" меня на просторах сети (и вне её) для тех или иных дел. Потому что не будет.
Пачка книг по программированию. На английском. Много чего есть. Но нет вменяемой каталогизации по разделам и тегам, все свалено в кучу и искать только через поиск
Причём как на улице (до некоторых мест Волгоградской области добрался мороз за -25 ерчью, и -17 днём), так и внутри. Внутри меня.
Как там у Егора Летова - "...сквозь меня проникают тайком - звуки, взгляды, ножи и пули..." - вот оно самое. Всё пролетает, не оставляя почти никакиз следов.
Хотя конечно Летовская "Снаружи всех измерений", процитированная выше - не совсем про подобное состояние.
Старый софт оставляем в старом году. Релиз этой версии ScreenGrab должен был состоятся ещё в конце 2013 года. Но не сложилось. Версия 1.1 так и осталась недоделанной, и её подхватили люди из числа разработчиков проекта lxqt, начали портировать на Qt5. Мне как-то было не до этого, тем более что версия 1.0 меня полностью устраивала (хотя и была не без косяков).
Недавно решил снова вернуться к разработке этой маленькой софтины, тем более что кроме меня в её коде так досконально и не разобрался (хотя и порт с 4 на 5 версии Qt сделали, но особо там возиться и не с чем - некоторые директивы @include поменять, поправить скрипт сборки и все).
Версия 1.1 тихо и незаметно была выпущена в серидине ноября, а вчера я забил последний гвоздь в крышку гроба ветки 1.х, релизнув версию 1.2. дальше развития не будет.
Вчера, во времяя обсуждения в комментах у Руды книги об истории создания DOOM, поймал себя на мысли - для меня эта игра сразу ассоциируется с её второй частью DOOM II: Hell on the Earth. Подсознание именно её ставит на первое место, а часть перву, рассказывающую про похождения морпеха на спутниках Марса и в Аду - на второй.
Объяснение простое - вторую часть я увидел раньше чем первую Но за почти два десятка лет подсознание так и не перестроилось, и во вторую часть я играю в разы чаще.
Вернулся к использованию своего старого доброго основного ника. Все таки за 13 лет его использования в сети привык я к нему капитально. И все попытки сменить - провалились. А их было несколько больше, чем одна - ещё до старта этого дневника на "дайри". DOOMer-ом был почти всю "интернет-жизнь", Думером и подохну наверное
Заодно и аватару обновил. На более актуальную
Увы, снова пришлось прибегать к использованию специсимволов в написнии сетевого имени. Четверный или пятый раз за все эти годы.
Зарегистрировал аккаунт разработчика в сабже. Корпорация добра содрала 1600, прислав об этом уведомление на почту. А вот письмо с поздравлениями по поводу вливания что "Уважаемый Артём... вы теперь.... и прочая бл-бла-бла" (и ссылку на собственно вход в девелоперскую часть ведроид маркета) - не прислали. Несолидно как-то, гуглеь =)
На кой демон мне аккаунт разработчика под "зленого робота" - х-з, на данный момент я ничего не пишу под эту платформу. Нет, есть одно приложение, слепленное на Qt - но оно узкоспециализированное, и распространяться будет посредством ручной установки заказчиком на "клиентские" планшеты (в маркете делать ему нефиг).
Но пусть будет, кто знает мож и до программирования под самую массовую и самую фрагментированную мобильную платформу я когда-нибудь доберусь.
А вобще это надо было сделать ещё летом, потерял бы денег в два раза меньше.
Вот говорят что фрилансеры срывают сроки. Ну да, есть такое. Причем не только у фрилансеров, но и у больших компаний, разрабатывающих то или иное программное обеспечение (ну может только Яббл штампует новые версии iOS "строго по графику" - не в курсе, ибо не интересуюсь продукцией компании имени г-на Джобса).
Но, кибердемон меня раздери, как не срывать сдвигать даты выпусков, если заказчик иногда сам не знает чего хочет. И четко сформулировать задачу - соответственно не может. А криво поставленная задача - больше багов и прочей нежити в проекте. На истребление которой расходуется некоторое время.
И хорошо когда он (работодатель) хоть немного понимает что "софта без багов не бывает" (особенно в процессе разработки и при кривом ТЗ). В этом случае с ним ещё как-то можно спокойно работать. А если нет, то...
А вот когда за неделю до предполагаемого запуска в продакшен открытое бета-тестирование вдруг выясняется что "фичу А" надо выкинуть к фигам коровьим, и вставить на её место "фичу Б" - в оных случаях хочется убивать этого человека. Чтобы он подыхал долгой и мучительной смертью. Ибо не всегда "доплата решает".
Впрочем даже в подобных случаях бывают исключения, когда просто делаешь это "странное" изменение. Без особого энтузиазма, матеря многих абстрактных и реальных личностей - но делаешь.