
Фото Ann H
Мне нравится автоматизировать процессы на компьютере, поэтому я начал создавать batch файлы в Windows, затем Bash скрипты в Linux Debian и Ubuntu. Позже узнал, что большое количество операций ОС можно запускать с помощью модуля «os» из Python. Это было гораздо проще и удобнее, и я начал изучать Python 3. Из всех инструментов, разработанных на Python в то время более других был развит веб-фрэймворк «Django» 2.2. Я решил взяться за его освоение, чтобы больше практиковать написание кода на Python и спустя короткое время начал работать над бэкендом веб-проектов.
Меня всегда привлекала разработка игр и программирование анимации, и я начал писать код для анимирования своих пет-веб-проектов. Я не сталкивался с CSS ранее, но уже имел опыт в создании анимации способом «Постановки кадра». Такой способ используется при создании анимации для видеоигр. Создание анимации с помощью CSS отличалось тем, что свойства элемента (объекта) нужно было описывать с помощью ключевых слов из языка CSS вместо использования графического интерфейса (в то время я создавал анимации в графическом модуле «Animation» в Unity 5). С практикой я научился создавать анимации с помощью CSS.
Анимация "практически" бесполезна в веб-проекте, если она не привязана к событиям на страницах. Чтобы связать анимацию и события, я использовал JavaScript всё чаще и чаще и с помощью практики и интерактивных курсов освоил язык. По мере использования JavaScript в веб-проектах я столкнулся с тем, что приходится писать много "хардкода", чтобы сохранить определённое состояние на странице. Выходом стала библиотека «React». Она решала именно эту проблему с состояниями и давала большие возможности для творчества. Именно тогда у меня возникла идея разработать игру с простым игровым процессом, которую можно было бы запустить прямо в браузере. Изучая React с помощью документации, я разработал ТЕТРИС.
Использование React дало мне большую мотивацию для изучения JavaScript и новых спецификаций в частности. В настоящий момент я остановился на этой библиотеке, потому что она предоставляет много простора для творчества, и мне не нужно беспокоиться о многих сложностях, возникающих в процессе создания пользовательского интерфейса.