Новиков > путь в Big Tech – Telegram
Новиков > путь в Big Tech
184 subscribers
94 photos
192 links
От зеро-кодинга на стройке до написания высоконагруженных сервисов в Big Tech. 

Пишет SWE в Avito.ru (backend), в прошлом: .NET developer и сертифицированный специалист по использованию BIM.

Написать автору: @nvkv_ai

Книги: https://boosty.to/time2code
Download Telegram
Изучение нового - это, конечно, очень хорошо, но основную работу никто не отменяет. По этой причине приходится отвлекаться на изучение API программы, с которой сталкиваюсь ежедневно на работе, чтобы как можно скорее был виден практический результат.
This media is not supported in your browser
VIEW IN TELEGRAM
Мой первый результат программирования на C# и взаимодействия с API программы Autodesk Revit, который можно увидеть и “потрогать”.
https://archi-lab.net/ - англоязычный сайт разработчика популярных плагинов для Autodesk Revit, благодаря которому мне удалось написать свою первую кнопку внутри программы, строго соблюдая инструкции.

#ресурсы
Июнь 2020:

Прочитал “Программирование на C# для начинающих. Основные сведения” (Васильев Алексей Николаевич) // 👍 - грамотное изложение: по существу и без воды (не раз во время прочтения возникал какой-либо вопрос по материалу, но буквально через страницу автор давал развернутый ответ почему именно так, а не иначе); с нетерпением приступаю ко второй книге автора

Написал кнопку для программы Autodesk Revit (первые шаги по взаимодействию со сторонним API). Кнопка располагается на ленте со всеми инструментами, на которую можно нажать и вызвать диалоговое окно (https://news.1rj.ru/str/time2code/42)

#результаты
Чем занимаюсь сейчас:

🤖 Записался на вторую часть курса по Алгоритмам и структурам данных // СБВШП

В меньшем приоритете, но обязательно завершу:

📕 “Код: Тайный язык информатики” (Чарльз Петцольд) // Забросил из-за книги Васильева по C# (очень увлекла), в этом месяце постараюсь дочитать

💻 Базовый курс по C# // itvdn - к сожалению, также забросил, но буду стараться по возможности проходить

Висят мертвым грузом, но постараюсь по диагонали просмотреть в надежде на полезную информацию:

🧿 Базы данных // Geekbrains
🧿 Beб-технологии: уязвимости и безопасность // Geekbrains
🧿 Операционные системы // Geekbrains

#процесс
В жизни происходят разные ситуации, которые с той или иной степенью оказывают на нас влияние и требуют нашего непосредственного участия, зачастую вклиниваясь в наши планы и полностью меняя намеченное расписание.

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

Крайне важно: не останавливаться и всегда помнить, что однажды ты принял решение преуспеть и продолжать через внутреннее сопротивление, которое вечно пытается тебя отвлечь и толкнуть на легкий путь вместо тернистого.

Обстоятельства случаются. От этого никуда не деться. Важно после них продолжать начатое, что я сейчас и собираюсь делать.
Июль 2020:

Прошел 8% от второй части курса по Алгоритмам и структурам данных // СБВШП

Сильно снизил темп изучения языка и прочтения литературы из-за разного рода обстоятельств.

#результаты
Август 2020:

Прошел 25% от второй части курса по Алгоритмам и структурам данных // СБВШП

Появилось более глубокое понимание API программы Autodesk Revit, написал несколько полезных в работе кнопочек.

Отложил книгу Петцольда “Код”, так как понял, что для меня сейчас неактуально и лучше сосредоточиться на других задачах.

#результаты
Бывают моменты, когда “накатывает”. Ты начинаешь размышлять: туда ли ты движешься, зачем вообще тебе это и сможешь ли осилить тот путь, по которому пошел? Смотришь по сторонам и замечаешь тех, кто моложе, но уже опытнее и успешнее тебя в том, в чем ты рьяно хочешь преуспеть. В такие моменты важно помнить ради чего ты начинал и к чему в конечном итоге ты хочешь прийти. -Вспомнил? Теперь помножь на непрерывную работу и стремление идти к этой цели. Вооружившись этим знанием в конечном итоге ты обречен на успех.

Так ли важна для тебя та цель, ради достижения которой ты не потратил и минуты сегодня?

#процесс
Сентябрь 2020:

Прошел 33% от второй части курса по Алгоритмам и структурам данных // СБВШП

Написал еще одну полезную кнопку для работы, используя WPF (Winforms тоже попробовал, но пришел к выводу, что WPF - более прогрессивный инструмент) // Revit API + WPF

Застрял с задачей по формированию сбалансированного дерева и представлением его в массиве

Забросил книги по программированию

#результаты
This media is not supported in your browser
VIEW IN TELEGRAM
Октябрь 2020:

Прошел 75% от второй части курса по Алгоритмам и структурам данных // СБВШП

Нарисовал концепт будущего плагина для Revit, который позволяет назначать код классификатора элементам информационной модели в защищенный от ручного изменения параметр // Revit API + WPF

#результаты
Изучая WPF, для реализации концепции собственного плагина, наталкиваешься на интересные задачи.

Первым таким вызовом для меня стала организация древовидной структуры классификации строительных видов работ для удобной навигации пользователя.

#процесс
Нет ничего приятнее, чем использовать полученные теоретические навыки в реальной практике.

Ключом к решению задачи на организацию хранения информации в древовидном виде стал выбор правильной структуры данных! В начале этого месяца я закончил 2-ой цикл курса Алгоритмы и Структуры данных, про который писал ранее. Второй цикл был посвящен, главным образом, деревьям. Таким образом, полученные знания на курсе помогли правильно построить класс для организации классифицируемой информации и решить задачу.

#процесс
Ноябрь 2020:

Прошел вторую часть курса по Алгоритмам и структурам данных // СБВШП

Разработал плагин для Revit, который позволяет назначать код классификатора элементам информационной модели в защищенный от ручного изменения параметр // Revit API + WPF

#результаты
Интересный адвент-календарь для программистов - https://adventofcode.com/

Механика следующая: каждый день, начиная с 01.12 по 25.12, открывается сначала одна задача, а после успешного решения и вторая, которая является усложненной версией первой. Такой новогодний марафон сопровождает вас приятным нарративом - каждая задача имеет свою предысторию и логично вписывается в общую канву повествования, что не дает заскучать и мотивирует на решение следующей.

Соревновательный дух также подстегивает рейтинговая система, где самые опытные и предприимчивые участники могут зарабатывать баллы, попадая в топ 100, решив дневное задание быстрее других.

Для себя поставил цель: не сойти с дистанции и решить хотя бы по одной задаче из каждого дня, стремясь закрыть их все. Сейчас мой результат по окончании четырех дней - 8/8 (всего задач 50).

Свои решения также буду выкладывать на гитхаб.

#процесс
Шел 14-ый день новогоднего марафона (advent of code). То ли от недостатка времени, то ли от нехватки знаний, а возможно совпало оба фактора, но сейчас мой результат 17/28 всех доступных задач.

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

#процесс
Декабрь 2020:

Прошел 72% от видео-курса C# Базовый // itvdn

Решил 10 задач из 25 новогоднего марафона // advent of code

#результаты
Итоги 2020:

Прочитано 3 книги по программированию

Пройдено 2 курса по Алгоритмам и структурам данных (решено более 34 алгоритмических задач)

Написано >8 плагинов для программы Autodesk Revit

Пройдено >5 видео-курсов разной направленности

#результаты
Цели на 2021:

🎯 Официально переквалифицироваться в разработчика-программиста на языке C# в среде .NET (с занесением соответствующей записи в трудовую книжку) // junior .NET developer

🎯 Прочитать >3 книг по разработке в среде .NET

🎯 Пройти 3 курса по Алгоритмам и структурам данных // СБВШП

#цели
Январь 2021:

Написал несложный плагин для Autodesk Revit, который экономит время работы проектировщиков - получил за это первые деньги, что не может не радовать // $$$

Заказчик первого плагина остался доволен и предложил новые задачи, воплощением которых занимаюсь в свободное время // Autodesk Revit API + .NET Framework +WPF

Забросил курсы itvdn, доступ к которым заканчивается в следующем месяце // планирую взять максимум из того, что осталось

До сих пор не опубликовал свои решения задач в марафоне Advent of Code // обязательно выложу позже

#результаты
Чем серьезнее проект, тем больше информации приходится в нем хранить. Для удобной организации информации и ее обслуживания используются базы данных (сокращено - "БД").

БД бывают самими разными. Элементарным примером, с которым сталкивается большинство в повседневной офисной работе - базы данных, организованные при помощи электронных таблиц Microsoft Excel.

Строительная сфера, в которой я работаю, не исключение и многие специалисты разных профилей в повседневной работе используют Excel для организации и хранения информации об объектах строительства, подсчета смет и пр.

В технологии информационного моделирования зданий (англ.: Building Information Modeling, сокращено - "BIM"), ядром является работа с информацией (хранение, обмен, изменение), а не просто создание красивой 3D модели будущего объекта строительства, из которой получаются картинки. Технология BIM стала инновационной благодаря неразрывной связи геометрии элементов с их атрибутивных наполнением (информацией), которую можно использовать на всех стадиях жизненного цикла здания.

Для работы с элементами сначала нужно их выбрать в проекте, а если информационная модель состоит из десятков тысяч элементов, то это делать затруднительно.

Так появилась очередная идея для прикладного плагина, суть которого сводится к тому, чтобы пользователь заполнял необходимой информацией файл Excel, а затем она автоматически заносилась бы в нужные элементы проекта.

#процесс #идеи