Цифровые профессии: Обучение
20 постов
20 постов
Приветствую.
В прошлом посте я вскользь упомянул свою программу для игры Path Of Exile.
Она была достаточно простой в визуальном плане - чисто консоль и текст. При этом изначально я хотел делать именно с графическим интерфейсом, но не хватало знаний. Собравшись с мыслями, взяв себя в руки, представляю вашему вниманию - Path of Exile Items Price Converter с графическим интерфейсом.
Функционал:
- Выбор лиги(стандарт, хардкор, актуальная..)
- Два языка: Русский и Английский
- Обновление базы предметов из репозитория или локально парсером
- Выбор режима оценки предметов: штучный и оптовый(в ПоЕ чем больше у тебя чего-то, тем оно дороже)
- Вывод списка категорий и предметов из категории с иконками(где они доступны)
- Копирование строки в буфер обмена, для вставки в игру.
Скачать можно установочным файлом, портативную версию или исходный код на странице в GitHub: https://github.com/proDreams/PoETRY
Надеюсь программа найдёт своих пользователей в PoE-сообществе.
И надеюсь получить обратную связь по использованию, может что-то докрутить, поправить.
Или возможно этим заинтересуются программисты и тоже дадут мне обратную связь по коду.
Написал программу на Python с использованием библиотеки Flet.
Как-то так.
Приветствую.
Начались каникулы и я расслабился.
Предыдущий пост: Обучение: восьмой месяц
Общий блок 2/2 месяцев.
Специализация 7/9? месяцев.
В прошлом месяце было два предмета, "Алгоритмы и структуры данных" и "Исключения и их обработка".
Полезные и бесполезные предметы одновременно. Обо всём по порядку.
"Алгоритмы и структуры данных". Небольшой курс из 4-х занятий и лекций, нам рассказали про сложности алгоритмов, про виды сортировок и их различия, про деревья. Вроде полезно и нужно? Только вот прошлись совсем по верхам. Более-менее только об определении сложности алгоритма прошлись, те же деревья всё ещё тёмный лес. Лекции как обычно были представлены на примере Java, благо преподаватель был со знанием Python и разрешил делать задачи на семинарах и домашние на нём. На семинарах было весьма интересно, преподаватель давал задачи более сложные, чем предусматривала "методичка", что было очень полезно в плане понимания алгоритмов, так и практика с ООП.
"Исключения и их обработка". Ещё более короткий курс, 3 занятия и 3 лекции. Вот тут у меня много претензий. Обработка исключений безусловно важная часть процесса разработки, но всё преподносилось на Java, так и сама работа с исключениями чаще сводилась к "отлови ошибку и запринти сообщение". Сложности вызывали некие различия по работе с исключениями в питоне и в джаве, но от этого работать на семинарах было интереснее. Нас делили на группы, но не рандомные, как обычно, а по языку. Джава в одну комнату, питон в другую. Было интересно разбираться в работе с исключениями, если про простой try-except я знал, но что надо списывать конкретные исключения, что можно создавать свои виды исключений - нет. Было интересно.
И как я написал ранее - это полезные и бесполезные предметы одновременно. Если полезность больше за счёт семинаров достигалась и практики. То вот бесполезность заключается в том, что эти два курса можно было добавить дополнительной лекцией и семинаром в курс введения в язык. Были же курсы по введению в Python и Java, почему это не дали там? Было бы намного удобнее и продуктивнее.
Сейчас у нас каникулы до 16го мая. Если этот пост задержался из-за того, что я лентяй и решил таки отдохнуть, то следующий задержится по причине отсутствия информации.
В свободное время занялся своим небольшим проектом. Программой для конвертации цен игровых предметов в игре Path Of Exile. Ох, чувствую огребу от программистов за говнокод, но не отказался бы от комментариев по существу. Да, я понимаю, что написанное говнокод, но первый блин как говорится)
Можно найти в поиске гитхаба по запросу "Path of Exile PoETRY".
Далее у нас курс "Конетейнеризация".
Как-то так.
Приветствую.
Уже 8 месяцев...
Предыдущий пост: Обучение: седьмой месяц
Общий блок 2/2 месяцев.
Специализация 6/9? месяцев.
Что произошло за месяц?
Начался курс по SQL. Изучаем конкретно MySQL. Изучение идёт достаточно гладко. Информация воспринимается хорошо, проблем с задачками на семинарах или в домашках нет от слова совсем. Лекции информативные. В общем то и рассказывать нечего.
Записался на курс "вне четверти" - "углублённый GIT". Изучаем более подробно работу с GITом. Например, работу с источниками удалённых репозиториев или отправку сразу в несколько, откат изменений, отмену коммитов и прочее. Материал интересный, возможно будет полезным.
Записался на 3-х дневный интенсив по SQL от SkillBox. На удивление, рекламы курсов было совсем мало, за то за три дня, закрепил полученные в GB знания и узнал дополнительные штуки. Хоть информация и преподносилась на примере SQLite.
Дипломный проект.
Активно работаю над проектом. Награфоманил уже 33 страницы. Стараюсь описывать свои действия достаточно подробно и со скриншотами.
Сайт делается, готова главная страница, страница категорий, страница списка новостей и сама страница новости. Но работы ещё много, из ближайшего, нужно ещё написать страницу материала, написать рабочий и главное релевантный поиск по материалам и новостям.
По началу Django казался невероятно сложным фреймворком, но в процессе начинаешь замечать ...закономерности?. Что многое работает по одним и тем же принципам. Очень интересно!
А ещё понравилось делать шаблон на Bootstrap5. максимально лояльный фреймворк к не-фронтендерам.
Осталось всего два занятия по SQL. Далее у нас курс по Алгоритмам и структурам данных. И снова на Java(за что мне это?)
Продолжаю учиться. После написания диплома, думаю уже буду готов искать первую работу в сфере.
Как-то так.
Приветствую.
Походу опаздывать входит в привычку....
Мужчин с прошедшим 23 февраля, дам с наступающим 8 марта!
Предыдущий пост: Обучение: шестой месяц
Общий блок 2/2 месяцев.
Специализация 5/9? месяцев.
Пост будет скромненький, особо событий не было.
Начался и уже закончился курс по Linux.
Освежил знания, выучил новое, по лекциям. Лекции длинные по полтора-два часа, наполненные информацией, что редко у ГБ.
А вот с семинарами нам, увы, не повезло от слова совсем. Нам попался максимально некомпетентный преподаватель как в материале, так и в плане обучения. К семинарам не готов, материал не знает, всё время лезет в гугл, что бы починить то, что до этого сломал у студента своими рекомендациями. Даже больше, у нас некоторые студенты, после лекций лучше были погружены в предмет, чем он.
Из интересного, меня заинтересовал Docker. После лекции, прочёл несколько статей на хабре и собрал своего бота в контейнер. Забавно и очень полезно. Развернул у себя на компе PostgreSQL контейнер, что бы не ставить и в целом планирую использовать его.
Дипломный проект!
Как гром среди ясного неба появился Волчек и Ко со словами "Пора бы уже пилить дипломный проект" и дали бесполезный выбор направления. Озадачили так, озадачили. Ну а я что? Сказали пора, время есть до конца обучения, значит и браться надо за что-то масштабное И полезное.
Придумал себе задачу: Сделать сайт а-ля вики или база знаний у которого будет Telegram-бот в качестве зеркала. То есть, хочешь, открываешь сайт и выбираешь раздел и читаешь материал, а хочешь, выбираешь раздел в боте и так же читаешь материал. Выглядит просто, но я же не ищу лёгких путей!
Будут применены следующие технологии:
Сайт будет написан на Django
В качестве шаблона сайта будет Bootstrap 5
БД будет PostgreSQL
Telegram-бот на Aiogram
Всё это будет работать в сети Docker-контейнеров
Да, я в курсе, что можно же взять какой-нибудь Wordpress и иже с ними и не париться, но Django у меня в программе обучения, правда под конец и не много, а если судить по вакансиям питониста, он много где требуется.
Так же, был записан на несколько курсов "Вне четверти". Знакомство с веб-технологиями и Гибкие методологии.
Знакомство с веб-технологиями - это такой небольшой обзорный курсик. Чуть-чуть показали HTML и CSS. Познакомили с JS и PHP. Но благодаря отличному преподу, было интересно и весело.
Гибкие методологии - это страшная вещь. Я осознал, что не быть мне управленцем) Методологий полно, у них свои особенности, правила, заветы. Поди пойми когда какую применять и как правильно. Честно, запомнил мало что, но надеюсь то, что запомнил когда-нибудь пригодится.
Что касается дополнительных курсов от KTS, Ozon и Яндекса.
В Озоновском контесте набрал мало очков. Там сложно и явно не хватает моих знаний. Особенно это проявилось, когда задача выполнена, работает, но не проходит по ограничениям на больших объёмах данных. Надо оптимизировать, а как я ещё не умею.
На курс Яндекса банально не хватило времени даже начать, да и судя по тамошним задачкам, результат был бы наверняка даже хуже, чем на контесте Озона.
На курс KTS время немного было. Интересный материал про сетевые протоколы, aiohttp, SQL и тестирование своего кода. Но сложно, это тоже выше моих нынешних навыков, но поскольку у них курс проходит два раза в год, я планирую вернуться.
Дальше у нас по плану SQL. Стартуем 13 марта. Надеюсь лекции будут такими же информативными и полезными и что на семинарах будет компетентный преподаватель.
Вроде всё. Продолжаем учиться и изучать штуки для дипломного проекта, надеюсь у меня получится сваять что-то интересное)
Как-то так.
Приветствую.
Всех с наступившим новым годом! *слоупок_жпг*
Совсем забыл про пост! Исправляюсь =)
Предыдущий пост: Обучение: пятый месяц
Общий блок 2/2 месяцев.
Специализация 4/9? месяцев.
Начался и уже подошёл к концу курс по ООП в Java. Остался последний семинар.
И это блин сложно. Мало того, что Java даётся тяжко, так ещё и ООПшные штуки нифига не простые. Если с наследованиями я как-то разобрался, то вот абстракции и прочее в плане теории пока для меня непонятны.
Препод у нас интересный. Он не следует ГБшным методичкам, а учит по своей. С самого старта курса мы развиваем один проект. Подобие текстовой игры. На поле две команды условно "белая и тёмная" стороны. И мы прописывали логику движения по полю, нанесения урона юнитами, лечение юнитов и т.д. Это не игра, как постоянно напоминает нам преподаватель, но всё равно делать такой проект интересно, хоть и чем дальше в лес, тем непонятнее и запутаннее код.
Остался всего один семинар, а мне после прошлого плохо.
Далее по плану у нас курс "Операционные системы и виртуализация (Linux)".
С этим делом я немного знаком, так что вероятно будет небольшой спад нагрузки. Посмотрим.
Что было ещё. Записался на ещё один бесплатный курс от KMS Metaclass на Backendера. Стартуем 6 февраля.
Так же записался в Route256(учебное заведение от Ozon) на курс по Go. 5‑го февраля будет отбор на обучение, но что-то мне подсказывает, пролечу как фанерка над пОрижем. Поскольку перед отбором открылась "песочница" с 10ю задачами. Выполнил 6.5 задач(7‑я на половину, потому, что не проходит по таймингам с большим объёмом данных, а у меня навыков не хватает оптимизировать). Но всё равно интересно посмотреть, какие задачи будут на отборе.
А ещё с подачи одногруппников, озадачил себя проектиком(опытные программисты не пинайтесь, я ещё зелёный).
Проект - Telegram-бот, который будет в учебную группу отправлять сообщение по таймеру. Если сегодня есть занятие, пишет какое(время, название, курс, ссылка) за 60/30/0 минут до начала или в 12:00 пишет, что ничего сегодня нет и можно отдохнуть.
Писать его было весьма увлекательно. Я разобрался как получать данные с гуглотаблиц, как заносить их и получать из SQLite, и настраивать планировщик APScheduler. А так же прикрутил к нему прогноз погоды, просто потому, что могу =)
С середины декабря по конец января работал в чате поддержки. Тоже нестандартный опыт.
Мониторю хх на стажировки в ближайших городах, но с этим пока туго, а без стажировок над реальными проектами, трудно будет набраться опыта.
Тем не менее пока настроен оптимистично. Прошло пол года учёбы. Нового узнал реально много. Что-то с курсов, что-то сам искал и немало почерпнул от одногруппников.
Месяц выдался насыщенным. Но желание и мотивация никуда не делись.
Как-то так.
Приветствую.
Пятый месяц заставил подумать.
Предыдущий пост: Обучение: четвёртый месяц
Общий блок 2/2 месяцев.
Специализация 3/9? месяцев.
В прошлом посте я упоминал, что осталось всего 2 семинара по питону. И какие же это были сложные семинары.
Тема "Jupyter Notebook и несколько слов об аналитике".
Ну и наверно представляете, что было у всех написано на лицах, сперва после лекции, где было понятно только имя лектора. Потом на семинаре, где надо было вспоминать эту вашу математику =). Благо у нас был очень классный преподаватель и тема математики ему очень близка. Он нам помогал и мы вроде даже разобрались что с чем есть.
Ух, а как мы на троих решили задачу, основанную на абсолютно непонятных мне наименьших квадратах, забуду нескоро.
И питон закончился(пока что). Немного грустно, потому, что вёл у нас его Данил Самодуров, просто мировой преподаватель. Встретите, передавайте привет ;).
И началось страшное... Java!
"К такому жизнь меня не готовила". Первая лекция почти на два часа...БЕГЛО рассказывающая о том, что мы уже изучили на питоне и сишарпе, и как оно работает в джаве. Потом ещё было пять лекций от пол до полутора часа. И если первая лекция в целом понятна, то дальше... Вот нафига в джаве миллион видов коллекций? Со своими методами и особенностями. Ну ладно, я понимаю конечно зачем, но вот так сразу вываливать это. Это тяжело.
А ещё после питона тяжко совладать с синтаксисом. Для тех, кто придумал ";" в аду отдельный котёл.
Опять-таки хочу похвалить преподавателя. Мы у него первая группа и на первом семинаре он буквально не знал, как себя с нами вести и что делать с этой толпой развращённых питоном людей. К последнему семинару он конечно же нашёл и к нам подход и сам разобрался. В джаве он хорош, и объясняет толково и даже видно, как загорается рассказывая штуки вне программы.
С основами джавы на этом всё. Но впереди...
А впереди "Объектно-ориентированное программирование" на примере джавы. Начнётся правда после каникул, с 11го января.
Во время каникул будет серия лекций и семинаров "Введение в математику", который будет вести(вроде как) Алексей Савватеев.
В общем вот. Не могу подружиться с джавой, но пока справляюсь.
Увидимся в следующем году. Всех с наступающим =)
Как-то так.
Приветствую.
Четвёртый месяц скрылся позади.
Предыдущий пост: Обучение: третий месяц
Общий блок 2/2 месяцев.
Специализация 2/9? месяцев.
Пост будет коротким.
В прошлом посте писал, что мы ушли на двухнедельные каникулы, а во во время них начались, так нызваемые "буткэмпы".
Суть: В течении 3х недель, каждый день выходит видео или онлайн урок по определённой теме, длительностью в час-полтора.
Честно - пропустил.
Отдыхал, в свободном темпе делал домашку.
Возобновился питон.
После лекций по модульной структуре, начали всё делать так.
На семинарах начали не просто по комнатам в зуме расходиться, а прям делать группами в одном репозитории.
Конечно план "каждый делает только свой файл" развалился сразу, по причине того, что ни у кого из группы нет понимания, что собственно кому делать, так что пока работаем вместе.
Так же и с домашними заданиями, куда интереснее стало делать их в группах по ~3 человека.
Делаем Telegram ботов и учим графические библиотеки.
Осталось всего 2 семинара по питону.
Дальше будет "Java: знакомство и как пользоваться базовым API".
Как-то так.
Приветствую.
Пролетел третий месяц.
Предыдущий пост: Обучение: второй месяц
Общий блок 2/2 месяцев.
Специализация 1/9? месяцев.
Как оказалось общий блок сократили с 3х до 2х месяцев и сейчас началась специализация.
Сначала проясню момент с ГБ: Среди студентов ходит недовольство на то, что программа обучения не соответствует программе на ГосУслугах и сайте 2035. С кем можно я уже похоливарился на эту тему, тут этого не хочу.
Мне поддержка прислала программу моей специализации и она практически полностью соответствует заявленной. https://disk.yandex.ru/i/3E6kach12q_DOw
С прошлого поста был совсем коротенький курс по основам БД(не по БД, а по основам, структуры и вот это всё)
И промежуточная аттестация по итогам Общего блока с невероятно простой задачей.
И началась специализация. Первый же курс "Знакомство с языком Python"
Так же лекции и семинары.
В целом на лекциях ничего нового, на первых показали то, что уже было на C#, но со стороны питона, на третьей уже показали питоновские конструкции(лямбда, мап и т.д.)
С семинарами всё интереснее.
Нашу прошлую группу расформировали и всех разбросали по новым группам, с разными преподавателями.
Я активно участвую в жизни нашей группы + общаюсь много со студентами с параллельных потоков.
Так вот мне очень повезло с преподавателем. А некоторым нет. Это казино.
Домашнее задание первые семинары было простое и чаще даже повторяло дз с C#, но с немного иными условиями, однако сложность от семинара к семинару растёт очень сильно.
Если первые ДЗ я делал ещё до семинара к которому они предназначены и сдавал сразу после, то начиная с 4го семинара я еле успел сдать дз к пятому(Хоть и дедлайн неделя, но мне важно сдать дз до семинара, т.к. на семинаре будет разбор, и нахватавшись идей, это уже будет не моя реализация).
Задачи становятся сложнее и интереснее. А что больше всего удивляет, как одну и ту же задачу решают кардинально разными способами.
На данный момент было 3 лекции и 5 семинаров.
Сейчас мы ушли на каникулы, но в это время начался буткэмп, пока сказать по нему нечего, расскажу в следующей серии ;)
В целом, пока не разделяю того витающего вокруг негатива. Я учу, что дают на семинарах, самостоятельно учу питон по степику и пишу небольшие штуки гугля или читая документацию на то, что мне конкретно сейчас надо.
Как-то так.