1
0
Fork 0
pomodoro/README.md
2023-12-17 07:53:27 +03:00

6.8 KiB
Raw Blame History

Помидоры

Обновлённый и ещё раз переписанный вариант моего старого блога, новые версии старых программ: объёмный тетрис, простая капча и другие — упрощённая сборка сайта без обфускации, облегчённое оформление страниц без JavaScript и открытая лицензия РФ вместо MIT — изменений много и везде, но суть осталась прежней — ничего не изменилось. Серия статических вёб-сайтов «Помидоры» — чтобы не скучать и чтобы не забыть, как программы писать, когда работы нет.

Содержание

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

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

  • pomodoro1 — Трёхмерная графика на JavaScript.
  • pomodoro2 — Декартово произведение, комбинаторика.
  • pomodoro3 — Умножение матриц, повороты.
  • pomodoro4 — Поэзия. Юмор.
  • pomodoro5 — Рисуем картинки текстом.

Сборка

Раньше сборку сайта из шаблонов выполняла кастомная программа на Java. После сборки выполнялась обфускация для всех классов, переменных и функций HTML, CSS и JS шифром замены по словарю. Блоки кода оставлялись без обфускации, а подсветка синтаксиса выполнялась на клиенте. Обусификатор — уникальное решение, больше не используется.

Теперь сборку сайта выполняет Jekyll, язык шаблонов Liquid, подсветка синтаксиса во время сборки, а содержание страниц в формате Markdown. Обслуживание выполняется скриптами Bash. Меня не покидает мысль, что я поменял шило на мыло — в целом ничего не изменилось.

Оформление

Две темы оформления для Jekyll на языке шаблонов Liquid: «Цветной помидор» был написан раньше с использованием AngularJS и Material, таким было оформление предыдущей версии моего блога, затем был написан «Старый помидор» — облегчённый одноцветный вариант с использованием только HTML и CSS, внешний вид напоминает тему оформления по умолчанию на GitHub Pages. Оба помидора дополняют друг друга и похожи друг на друга, общие черты и различия между ними отмечены в списке ниже.

  • Адаптивная вёрстка или Responsive layout.
  • Файлы пользователя JS и CSS в блоке head страниц HTML.
  • SEO-разметка с использованием JSON-LD и Open Graph.
  • Переключение между двумя языками и помидорными темами.
  • Карта страниц сайта с их переводами в формате XML.
  • Простая страница 404 для несуществующих URL-адресов.
  • Шрифты: Roboto для текста и JBMono для блоков кода.
  • Помидоры: PNG, JPG 120x120, SVG 64x64, ICO 32x32.
  • Выбор цвета во время сборки, зелёный цвет по умолчанию.
  • Кнопка прокрутки вверх в стиле Material.

Лицензия

Раньше к своим проектам в интернете прикладывал лицензию MIT, но когда появилась открытая лицензия РФ — перешёл на неё, сразу внёс небольшие изменения в текст и дополнил от себя, хотя я не юрист. Основной смысл лицензии остался прежним — программа предоставляется бесплатно, но без каких-либо гарантий, и автор программы — это я.

  • OPEN_LICENSE.txt — основной текст лицензии и пояснение к нему без изменений, можно найти в интернете. Из него удалил лишние пробелы и пробельные символы, чтобы текст был больше похож на текст.
  • LICENSE.md — дополнение от себя с указанием ссылки на основной текст лицензии.
  • CONTRIBUTING.md — описание способа, как можно содействовать проекту.

© Головин Г.Г., Код с комментариями,2021-2023