Блог Андрея

 
 

Мои работы

  • Чат с полиглотом и просто чат для пользователей практически любых версий android

    Если вы смотрели программу Полиглот с Дмитрием Петровым, но не могли в течении суток вспомнить о том, что вам надо прогнать в голове таблицу слов, вам может быть интересн этот чат с ботом. Он задаст вам вопросы в течении дня, если вы сидите за компьютером.

     Затраченное время: 1000 часов.

  • Сервис для конвертации psd в html + css онлайн

    Конвертируйте ваши psd в готовую html5 и css3 верстку.

     Затраченное время: 59 часов.

  • Учёт времени на разработку с возможностью поиска временых интервалов, сколько времени заняла та или иная задача

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

    Вы можете тегировать выполняемые задачи, используя в качестве тегов имена технологий. Например, подключение формы оплаты Яндекс-Деньгами в проекте использующим фреймвёрки и в проекте не использующим фреймвёрки может занимать различное время. Поэтому вы можете при занесении задачи в систему помечать её тегами, например Symfony, Vuejs. При поиске задачи вы можете также указать один или несколько тегов. Теги добавляются по принципу ИЛИ, то есть будут показаны все задачи, которые используют хотя бы один их тегов.

     Затраченное время: 35 часов.

  • Утилита для удобного добавления сайтов на localhost

    Установив FastXampp вы можете в два клика мышью добавить ещё один сайт на localhost. Иногда бывает так, что копии сайтов на localhost добавлять приходится чуть ли не каждый день. (Для автора это было актуально во время работы в фирме, занимавшейся seo-продвижением). От утомления бесконечным редактированием httpd-vhosts.conf и hosts была написана утилита fastXampp позволяющая пользователям xampp в linux xubuntu быстро добавить и удалить сайт с сервера 127.0.0.1.
  • Компонент vue 2 для вставки видео с youtube на сайт

    Если просто взять и вставить видео с ютуба на сайт в iframe, инструмент PageSpeed Insights зафиксирует существенную потерю скорости загрузки страницы. Вероятно, именно поэтому мы на многих сайтах можем заметить, что вместо видео-плеера (не только youtube) сначала отображается картинка, после клика на которую подгружается уже видеоплеер. Данный компонент реализует этот нехитрый функционал для Vue 2 приложения. Вы используете тег youtube в атрибутах которого указываете путь к странице с видео на youtube и к изображению, которое будет показываться вместо видеоплеера, пока вы не кликните на изображении.

     Затраченное время: 6 часов.

  • Приватная записная книжка

    Про это я потом более подробно расскажу. Вобщем, можно писать зашифрованые тексты, но при этом они всегда под рукой, если под рукой смартфон с интернетом. Пароль по сети не передаётся. Вообще никак, даже часть его не передаётся. Так как это не мессенджер а монолог, это возможно. Записать секретные мысли
  • Удобное декорирование сервиса в Symfony с помощью консольной команды decorate-controller

    Когда я решил декорировать контроллер FOSUserBundle ResettingController оказалось сложным написать конфигурацию регистрации нового сервиса. Помимо того, что я должен найти псевдонимы всех сервисов, которые принимает оригинальный контроллер, я должен написать класс, почти все методы которого просто вызывают методы декорируемого контроллера (это скучно!). Мы хотим как можно больше использовать хорошие готовые решения, это значит, что операция декорирования контроллера из стороннего пакета будет рутинной. Поэтому я создал консольную команду php bin/console landlib:decorate-controller которая создаёт заготовку класса контроллера, декорирующего нужный сервис и выводит в stdout фрагмент yaml конфигурации нового сервиса. Вам остаётся просто скопировать эту конфигурацию в ваш config/services.yaml.

     Затраченное время: 60 часов.

  • Отправка email в будущее

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

     Затраченное время: 8 часов.

  • Простой и надёжный PHP mailer использующий нативную функцию mail()

    Это надежный и удобный класс для отправки электронной почты с поддержкой вложений с помощью функции PHP mail(). Я использую этот класс PHP последние десять лет и вижу, что он более надежен, чем инструменты электронной почты Swift_Mailer и Symfony Mailer. Это звучит нескромно, но внутри я описал, почему я так считаю.

     Затраченное время: 16 часов.

  • Вариант тетриса с элементами аркады

    Моя первая опубликованная в Интернет (тогда его точно писали с большой буквы, а может даже только собирались писать с большой буквы- короче это было примерно в 2006 году) работа. Выложил впервые в портфолио на fl.ru тогда ещё он был free-lance.ru. Добавил в стакан амёбу, которая может проникнуть вниз, когда вы разберёте ряды. С каждым новым уровнем количество заполненных снизу рядов увеличивается. Можно скачать в виде exe файла.
    Скачать для десктопа Windows
    sha256: 4ea9219990debdf10f6e596b7222b7e76da77a7ca3d62d7a79b18ed951492cad

     Затраченное время: 115 часов.

  • Моё первое опубликованное android-приложение

    Хотелось переписать целиком "Интернет-зависимое" приложение "Толковый словарь" в целиком "Интернет-независимое", которое было бы максимально удобно на смартфоне с маленьким экраном (да, у меня именно такой смартфон и я считаю, это здорово, мне не нужна "лопата"). В результате появилось приложение "Толковый словарь и современный толковый словарь", скачать которое вы можете с Google Play.

     Затраченное время: 40 часов.

  • Интерактивный тест по Симфони

    Несколько лет назад решил изучать Симфони. Многие вещи надо было просто запомнить, для этого я сделал интерактивный тест. Актуальным тогда было Симфони 2.6, но многие вопросы до сих пор актуальны.
  • UserScript для автоматической установки экспорта базы в gzip из phpMyAdmin

    Если нет доступа к конфигам phpMyAdmin, а установить тип экспорта дампов баз по умолчанию в gzip хочется, вы можете использовать этот userscript.

     Затраченное время: 2 часа.

  • Секундомер в стиле samsung s3600i для Android

    Буквально у всех кнопочных телефонах Samsung был встроенный секундомер. А на смартфонах Samsung его почему-то не оказалось. Теперь вы можете установить его на любой Android смартфон. Тема оформления скопирована с телефона Samsung S3600i. Для установки пройдите по ссылке в chrome для Android, дождитесь, пока появится всплывающее сообщение, дождитесь перезагрузки страницы, после чего выберите в меню chrome Добавить на главный экран.
  • Сайт с тестами по Симфони три и симфони два

    Когда начал изучать симфони, оказалось нелёгким делом запомнить структуру каталогов, особенности конфигурации сервисов да и нюансы работы с базой данных. Поэтому создал тест по Симфони 2.6. Время идёт, появляются новые версии Симфони, поэтому появляются новые тесты. Добавил пару тестов по работе с Симфони 3.4, на подходе тест по работе с Симфони 5.
  • Главторги.ру - альтернативная доска объявлений

    Однажды меня попросили продать прицеп на авито. Надо было срочно. Я был поражён, насколько быстро объявление скрывается с первой страницы и неприятно удивлён количеством денег, которые мне пришлось потратить на поднятия, выделения и прочие финты, чтобы всё-таки продать его в течении недели или двух. Очень захотелось, чтобы в Интернете был сайт, на котором объявление не уходит вниз, а наоборот поднимается вверх. Ну а раз захотелось, почему бы не сделать? Теперь в рунете существует сайт Главторги, объявления на котором движутся только вверх. Жаль только что раскрутить его пока не удаётся, но я не теряю надежды.
  • Компиляция html5 приложений cordova для android онлайн

    После первого опыта создания android - приложния apache cordova в linux почему-то остро захотелось больше никогда не возвращаться к установке apache cordova в linux ubuntu. Решением стала виртуальная машина с установленной cordova, на которой каждый желающий может выполнить компиляцию своего html5 приложения android.
  • TrollKIller

    Модерируй ответы@mail.ru самостоятельно. Теперь каждый пользователь браузера Firefox если захочет, сможет модерировать ответы самостоятельно, с помощью этого userscript-а. Подробности в видео.

     Затраченное время: 53 часа.

  • Сайт по заказу газелей для ваших переездов

    Всё аналогично главторги точка ру, но на несколько лет ранее. Попросили подать бесплатное объявление по грузоперевозкам на авито, выхлоп без денежных вливаний в объявление на авито оказался нулевым. Срочно создал свой собственный сайт с рекламой и sms-ками. Очень радует, что на нём есть небольшая, но движуха, кто-то поднимает свои объявления.
  • Модуль кэширования с помощью service worker

    Реализация алгоритма «Если ресурс найден в кэше, берётся из кэша, иначе с сервера».

    Универсальное решение, подходящее для большинства сайтов и progressive web applications.

    Модуль включает в себя скрипт service worker и клиентский скрипт, обеспечивающий кэширование всех ресурсов, находящихся на странице. Обрабатывая сообщения от service worker можно вывести приглашение добавить ссылку на сайт на главный экран смартфона или уведомить посетителя сайта о том, что страница обновилась.

  • Умная яркость

    Автоматическая регулировка яркости. Для смартфонов не устанавливающих яркость дисплея в зависимости от освещения. Приложение работает в фоне и запоминает, в какое время вы изменяли яркость дисплея и на какое значение. Анализируя три дня наблюдений оно автоматически устанавливает яркость экрана вашего смартфона в то же время и в то же значение, в которое вы его изменяли в последние трое суток. Например, если вы снизили яркость в 23:30 1 ого мая, в 23:29 15 мая и в 23:20 20 мая (а в промежутках не снижали яркость), все последующие сутки не позже 23:32 приложение снизит яркость экрана вашего смартфона автоматически.

     Затраченное время: 80 часов.

  • Транслятор php кода в код javascript

    Наверное, каждый, кому приходилось описывать одну и ту же логику сначала на php а потом на js мечтал о таком конверторе. Алгоритмов которые хотелось бы автоматически транслировать масса: например это могут быть алгоритмы валидации данных форм (правила валидации), функции склонения числительных, алгоритмы обхода дерева.
  • Задания от GeekBrains по основам программирования

    Решил выучить ReactJS бесплатным курсом в GeekBrains - пришлось делать практические задания по основам программирования.
  • Vue 2 TreeView component

    Реализация древовидного списка TreeView с немедленной отправкой данных о редактировнии списка на сервер в виде компонента Vue 2.

    Дерево помещено в аккордион bootstrap 4. Компонент удобен для повторного использования.

    Входит в состав моей javascript библиотеки landlib.

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

    Мой вклад - оффлайн-версия программы для экспорта выкроек в pdf и dxf. Пользователи сайта могут печатать выкройки, распечатав их на обычном принтере. Об этом проекте я могу на самом деле писать очень долго - потому что для подобной печати вообще-то предназначены плоттеры. Добиться приемлемых результатов от принтера, да ещё и через Adobe Flash - это было очень интересной задачей. Ещё интереснее было потом переписать код Action Script частично на js, а частично на php (бизнес-логика требовала, чтобы pdf с листами выкройки генерировался именно на сервере). Через несколько лет был новый этап - всё было переписано на js, а сам js помещён в QtWebView с цклью создать оффлайн-печать. В итоге продукт сделал полный круг и это снова флешка - для оффлайн версии.
  • Автозапуск программы при старте операционной системы

    Программа предназначена для запуска приложений при загрузке Windows. В первом поле указываете путь к каталогу, в котором находится файл. В поле "Имя файла" указываете полное имя запускаемого файла. Например: В первом поле: C:\Program files\Microsoft office\office10 В втором поле: winword.exe (расширение обязательно!) после чего жмёте кнопку "Автозапуск". Для отмены запуска программы при каждом включении компьютера достаточно просто ввести во второе поле полное имя файла, и нажать "отмена автозапуска". Например чтобы отменить запуск Мicrosoft Word, надо во второе поле ввести winword.exe Первое поле при этом может оставатся незаполненным.
    -------------------------------------------------------------------
    Выложил просто потому, что это вообще первая моя более-менее законченная программка для десктопа. 2005 год скорее всего был.
    Скачать
    sha256: c858870ebe79f3009bbba8fb163ce77c923be7f55a2716be7134fcc7bec66e6f