Меня зовут Максим Малахов. Родился я в далеком 1985 году. Последние 8 лет я живу в Москве.
Минск - мой родной город. Здесь я родился и вырос, получил образование и 5 лет проработал в различных организациях. По специальности я инженер-строитель. Моя работа - это расчет строительных конструкций зданий и сооружений и чертежи этих самых конструкций. В этом я достиг определеных высот. В нескольких компаниях я работал в должности главного конструктора. В данный момент я тружусь в должности главного специалиста-конструктора в одной проектной конторе. Главным конструктором больше работать не имею ни малейшего желания. Это дно.
Так, по просьбам коллег и лично своего босса (главного конструктора) должен внести небольшое пояснение =). Работа на уровне главного конструктора может быть дно (или днище как я и написал), полу-дно, и "норм варик". Я работал главным конструктором в компании, где условия моего труда были именно на уровне днища. Два полных дебила директора, каждый из которых считал, что он знает лучше как мне делать строительные конструкции и "проститутка" главный инженер проекта, который только и смотрел как бы кого подставить. И вся эта поганая троица были мои начальники. Безусловно это наложило отпечаток на мое решение поменять курс и постараться уйти из специальности.
Конечно , есть другие компании, например та, где я работаю сейчас. Здесь вроде можно работать более-менее на должностях выше главного специалиста - не сожрут =). Так что это в общем от компании зависит. Может, если бы я тогда попал в более успешную компанию на такую должность, то у меня все было бы норм, и я не захотел бы ничего поменять в своей жизни. Но было так, как было, и теперь я пишу код=).
А вообще, работа инженера строителя (проектировщика, да и прораба или мастерра) крайне важна и нужна. Общество не сможет обойтись без квалифицираванных строителей. Я безусловно люблю свою работу и горд тем, что получил именно строительное образование, участвовал во множестве проектов по всей стране (и Беларусь и Россия).
Образование я получил в следующих замечательных (без шуток) учебных заведениях:
Минский архитектурно-строительный колледж
Строительный факультет Белорусского национального технического университета
Люблю спорт. С 5-ого класса занимался сначала дзюдо, правда, очень недолго - всего полгода. Потом была гребля на каноэ. Гребля мне ооочень нравилась. Понравилась на столько, что за два года тренировок я пропустил только одну тренировку (умышленно). Именно гребля заложила во мне любовь к спорту. Я помню, как после лета в спортивном лагере, наш тренер на сентябрь уходил в отпуск и как в это время меня аж трясло или ломало , так организм хотел нагрузки. Помню с какой радостью начинал тренировки опять, когда тренер выходил из отпуска.
В общем после двух лет в гребле я уже не мог без физухи. С той поры и до сего дня я тренируюсь. В основном сам. На улице, дома, в спорт зале.
Последние лет 5 добавилось еще одно увлечение - история средневековья, оружия и т.д. Это в итоге привело меня к занятиям историческим средневековым боем.
Меня всегда привлекала атмосфера рыцарства, средневековья и вся эта историческая оболочка. А еще я люблю драться, люблю соревноваться, это у меня в крови. Исторический средневековый бой воплотил в себе все мои желания. Здесь ты можешь делать что угодно (ну почти) будучи уверенным , что твоему противнику не грозит ни какая травма (ну тоже .... почти). На самом деле конечно же есть четкие правила, которые нельзя нарушать (например запрещены удары под колено и в основание черепа.) Но в целом, и ты и твой противник защищены доспехом и, несмотря даже на применение стального оружия с заточкой всего 2мм толщиной, причинить травму, ну или хотя бы боль, сопернику достаточно сложно. Более того, пытаясь сделать это, ты сам можешь выдохнуться раньше противника и свалиться без сил. В основном ты сражаешься с самим собой, со своей усталостью... Как то так ... А еще в движении исторического средневекового боя масса хороших парней и девушек, исторические фестивали, реконструкция, ролевые игры, концерты и много чего интересного =).
Ну люблю знаете ли почитать про всевозможные битвы с древних времен до наших дней. Не скажу, что я спец в этом вопросе, я не проф. историк конечно и даже далеко не любитель. Просто увлекающийся историей человек.
Кстати, на мой взгляд термин "профессиональный историк" - это скорее диагноз, чем характеристика рода деятельности человека. Я знаком с тремя профессиональными историками лично и все они абсолютно невменяемые люди, хотя и хорошие парни и девушка=). Им невозможно что-либо доказать по истории, даже когда факты очевидны даже для младенца. Одним из таких людей с диагнозом=) является моя сестра =). Имена двух других не хочу раскрывать, пусть это останется страшной тайной =)
Любовью к истории я вероятно обязан своему деду - Малахову Николаю Васильевичу. Он воевал с 1944 года. После Великой Отечественной войны остался в Минске. В Минске он получил высшее образование по специальности историк. Кстати он не находится в числе тех трех людей, кого я пометил диагнозом "профессиональный историк" =), ну или мы с ним мало спорили ... =). Сеструха вероятно стала историком тоже благодаря его генам =). Деда, ты всегда с нами! Мы тебя помним и очень любим!
Да я иногда рублюсь в игрухи. В оправдание скажу, что это бывает ооочень редко. С 2012 года я играл не чаще раза в год, к тому же в плане игр я крайний ортодокс не воспринимающий ни чего нового. Ну т.е. новые игры не могут меня заинтересовать на фоне старых. Новым играм сложно переплюнуть мастодонтов прошлого. Список любимых игр не велик, это: WarCraft III, Сталкер (все части) и конечно мой любимы неподражаемый - Ил-2 Штурмовик. Забытые сражения.
До сегодняшнего дня я и мой товарищ Олюшин Алексей (Леха привет! ) являемся рекордсменами по числу побед в чемпионатах беларуси по Ил-2 Штурмовик в номинации "бой 2х2". Мы становились чемпионами 7 раз подряд. Первое место мы уступили лишь дважды. К сожаленью в последнем чемпионате по Ил-2, который проводился в Беларуси в 2012г., мы как раз проиграли нашим боевым товарищам из г. Бобруйска и , если память не изменяет, г. Полоцка, заняв 2-е место. Мы рады за них. Нас нисколько не печалит тот проигрыш т.к. за долгих 4 года неоспоримого лидерства мы всем все доказали =)!
Вечная память моему деду - Иванову Анатолию Петровичу. Именно он привил мне и моему брату любовь к радиотехнике. В 6 лет он дал нам в руки паяльник и научил паять провода. С той поры и до 23 лет примероно, мы с большим удавольствием занимались сборкой различных схем (в основном передатчики и приемники, зарядные устройства, переговорные устройства, блоки питания, стабилизаторы напряжения, конвертеры, услиители низкой частоты) для себя. Такое вот техническое творчество. Кроме того мы прочли массу технической литературы по радиодеталям, схемотехнике. У нас никогда не было проблем с физикой. Все благодаря нашему деду. Деда,=), тебя мы тоже помним и очень любим!
Ну тут вообще все просто =), учитывая мое увлечение радиотехникой. Контроллеры я конечно не программировал и не паял, но периодически с упоминанием программирования сталкивался. Оно постоянно мозолило глаза =).
Как-то в детстве мы с братом и нашим другом Стасом даже пошли в кружок программирования. Толку из этого правда не вышло, т.к. мы с другом ходили в этот кружок только поиграть на компах =), сами не занимались делом и не давали заниматься брату. Мы с другом ходили в кружок только по тем дням, когда занятия проходили в классе с хорошими компами =), а в другие дни тащились куда-нить на великах кататься, ну и брата прям силком из троллейбуса бывало доставали, чтоб он не ехал на занятия и не "палил" нас. Брат честно говоря не очень сопротивлялся =). Тогда у нас не было мотивации заниматься.
В общем тогда из этой затеи ничего не вышло.
В следующий раз с программированием я столкнулся только в университете. Во время учебы на строительном факультете БНТУ мы проходили Fortran. Ну как проходили ... в то время от программирования я шарахался , ничего не понимал и просто боялся. Поэтому, чтобы не получить задолженность, я просто купил контрольную работу и думал, что проскочу =)
Однако, препод мигом выяснил, что я все купил и отправил меня с незачетом. Пока не закончилась сессия, можно было попробовать еще раз подойти к преподавателю, но только на следующий день. Иначе - задолженность.
К счастью, в коридоре я встретил своего одногрупника у которого в руках была библиотечная методичка по фортрану. Ну и к еще большему счастью этот парень согласился дать ее мне на один день. Не знаю почему , но в библиотеке тогда этих методичек было мало, или мне было жутко лень за ней идти в библиотеку я уже и не помню.
Методичка была толщиной с палец, формат листа - как у стандартного ежедневника. Поначалу эта метода вселяла ужас, я не представлял, как за ночь я выучу то, что не выучил за семестр ...
Я взял себя в руки , вспомнил, что я вообще-то инженер и что я сдавал куда более сложные предметы такие как "Высшая математика" (ее на стройфаке вообще то 4!!! семестра и еще сем. теории вероятности, суммарно часов 400), "Строительная механика" (два сема), "Теория упругости и пластичности" (сем или 2 не помню), я уже молчу про гидравлику, физику , торетическую механнику (3! семестра), сопромат (2 семестра) и т.д. Также молчу про спец предметы: курс металлических конструкций, курс железобетонных конструкций и т.п. В общем было с чем сравнить. Открыл методу и начал ее изучать. Быстро понял, что там половина это задания для всевозможных контрольных с кучей вариантов, а из оставшегося треть какая то пустая текстомасса об авторах, о ценности фортрана в историческом контексте и т.д. и т.п. Короче непосредственно меня касается максимум страниц 20.
Просидев ночь за этой методой, я досканально разобрался в сути своей работы, сам написал ее код заново и очень пожалел, что не сделал этого раньше. Еще было жалко потраченных на покупку готовой работы денег ((.
На следующее утро я конечно все благополучно сдал и получил свой зачет. Именно эти события стали переломным моментом. Я перестал бояться программирования, перестал пугаться, видя код. Понял, что стоит только немного (иногда много) напрячься, и ты во всем разберешься. С той поры эта мысль и эта уверенность закрепились в моем сознании и работают до сих пор.
Странно конечно, что чтобы это понять, мне пришлось рисковать получением задолженности. Ведь в своей работе я постоянно разбираюсь со сложнейшими расчетами и даже не задумываюсь над этим. Просто беру и начинаю копать литературу, разбираться , проходит день-два-неделя и все укладывается по полочкам в голове. Ты понимаешь, что все вообще то просто и новая, кажущаяся нерешаемой тема или задача, не сложнее того, что ты уже делал раньше.
Ну а дальше, по мере того, как ослабевал интерес к основной работе, все больше и больше мной овладевала идея заняться чем-то новым ... ну и конечно это было программирование.
Начал с С++. Консольные приложения по книжке. Стало получаться. Понравилось. Втянулся. Дальше-больше. Ну и пошло-поехало=).
Однако С++ непростой язык. Давольно быстро (где-то на указателях и чтении/записи в файл) мой мозг начал завиcать. Стало очевидно что нужны курсы. Об этом дальше =)
Эти курсы я нашел в интернете. МАИ находится рядом с местом моего жительства, поэтому выбрал именно их.
На момент моей учебы курс стоил 15000 рос. руб. и включал 40 часов аудиторной работы. Занятия проводились очно 2 раза в неделю по адресу Дубосековская улица, 4Ас1. Группа собралась человек 15-20. Препод был молодой парень. Чувствовалось, что он классно все знает и реально шарит в том, что преподает.
Курс по соотношению цена/качество с учетом затраченого времени я думаю просто идеальный. Мы бегло прошли все что есть в толмудах по С++ толщиной в руку. Конечно глубина нашего познания была ничтожна, но зато мы обозрели хотбы приблизительно весь горизонт.... Как то так. Именно этим курсам я бы поставил 10 баллов из 10!
За время курса я полностью прошел ту книжонку по которой занимался, научился применять функции, классы, наследование , указатели, массивы, прошли структуры данных (списки, стеки, очереди и что там еще есть ), поковыряли стандартную библиотеку. Даже нашлось время для winforms и QT(в ознакомительном естественно виде).
Эти курсы открыли мне глаза, осветили горизонт знаний =) . 10 из 10 баллов! К сожалению не смог найти на них ссылку, но думаю они никуда не делись и там в МАИ работают до сих пор.
Эти курсы я тоже нашел в интернете. Здесь я уже хотел найти что то серьезное, всеобъемлющее, основательное. Хотел создать себе некую базу знаний, прочный фундамент. Онлайн курсы я не рассматривал. Курсы выбирал именно очные, чтобы иметь возможность напрямую лично общаться как с коллегами, так и с преподавателями.
Искал более продвинутые курсы С++. Думал найти что то, где научился бы разрабатывать десктопные приложения с норм. интерфейсом, игры ну и что то типа этого =).
Присматривался к "GeekBrains" и "Компьютерная академия ШАГ". первые неимели очной формы занятий, а вторые обманули с разбивкой денег на этапы по мере обучения. Ну т.е. на сайте "Комп. академии ШАГ" заявлялось что цена курса будет разбита на ежемесячные платежи, а по факту это только для граждан РФ и только в форме образовательного кредита через какой то говнобанк ... Мне же они заявили, что т.к. я гражданин Беларуси, они могут разбить на два платежа и естественно ф форме говнокредита от говнобанка.
В общем после всех этих ребят, которые и одни и вторые меня потом спамили на почту своими предложенями и акциями пока я их не заблокировал, я по совету друга обратил свой взор на бауманку и нашел там то, что нашел. Я говорю про курс не в Бауманском "Специалисте", а именно в ИСОТ МГТУ
Курс С++/С# в ИСОТ МГТУ ИМ. Н.Э. БАУМАНАДа этот курс по цене был в два раза дороже,чем то на что я рассчитывал (на то время полная стоимость С++/С# - 1,5-2 года - 100000 рос. руб.), но это очка, в группе из 20 человек, в одном из ведущих вузов страны. Грамотный преподвательский состав и надлежащее обеспечение аудиторий само сабой разумеется. К тому же ценник бьют на две части (один платеж курс С++, второй платеж - курс C#). Поитогу получались теже деньги на которые ориентировался (примерно 50000 за курс единовременно). Отсрочка второго платежа - год, это если ты еще и на С# пойдешь. Я был настроен идти до конца! =)
В дальнейшем я ни разу не пожалел, что выбрал именно эти курсы. Общая продолжительность составила примерно 2 года. По С++ (2 занятия в неделю, каждое по 3 обычных часа с 18.00 до 21.00 с одним перерывом. Два раза по две пары вроде получается. ) длительность с февраля по декабрь за вычетом лета. По С# ( по три раза в неделю по 3 часа. Три раза по две пары) с февраля по июль и далее в сентябре уже только консультации по диплому. Октябрь - диплом. В общем чуть меньше чем 2 года получилось.
Программа обширная. На С++ кроме собственно языка давали еще winforms и вроде winapi. Но на эти темы не было отведено достаточно времени, так что их задели лишь оочень поверрхностно. На STL было отведено чуть больше времени, но тоже не достаточно. В основном курс С++ на 90% состоял из собственно языка. Это как плюс, так и минус.
На C# программа была еще более обширна. Заявлены были собственно C#, а так же ADO.Net, ASP.Net, WPF, Xamarin, разработка под UWP. И да, действительно мы все это прошли. Естественно опять же основная часть времени ушла на C#, дальше преподы поняли, что не успевают вычитать часы и начали гнать галопом.
Нужно отметить, что вообще процесс обучения строится очень грамотно. Половина курса относится к теоретическим занятиям, половина к практическим. Ведут два разных препода. На С++ (весь курс) и до конца мая (до WPF) на С# так и было. Но с конца мая преподы поняли что чет не укладываются и вся система сломалась. Они стали давать различные темы. Один погнал ADO , второй тут же начал UWP и Xamarin. короче началась каша. Это очень большой минус. По хорошему они должны были прекратить занятия в конце мая и начать их в сентябре с выходом на диплом в ноябре-декабре. Вобщем изза этой каши я плюнул на все , перестал делать домашки и сконцентрировался на дипломе. Дилом я делал на WCF + WPF
Строго говоря, по каждому разделу из заявленных, помимо собственно C#, нужно идти на отдельный курс порядка семестра. Так что я не в обиде на преподов, что они под конец устроили дикие скачки. Главно - мы ознакомились с этими инструментами. Мы узнали для чего они служат. Мыполучили навыки их использования. Дальше каждый может углубиться в любой из этих областей и развиваться самостоятельно.
Я так и сделал. После диплома я разобрал Entity Fraimwork 6 , WPF. Заново прошел самостоятельно те темы, на которых выключился во время обучения (это многопоточка, асинхонное программирование, работа с СУБД). Вот добрался до ASP.net и тут внезапно выяснилось, что html+css+javascript то мы не проходили =). Ну и я начал разбираться в этом. Собственно это причина того, что появился этот сайт.
В этом разделе наверно все =).
Небольшая игрушка на С++ с использованием библиотеки SFML. Реализована игра для двух игроков, добавлена небольшая озвучка, сделано начальное окошко.
Но не все так замечательно, есть и недочеты. Делал эту игру в перерыве между курсом С++ и С#, ну и не доделал до конца все режимы игры. Например с компом тут не сыграешь(
Небольшое приложение на WPF и EntityFramework 6 позволяеющее заносить данные в базу данных, просматривать их, редактировать их, а так же удалять. Написано на C#. В качестве данных у меня тут ... футболисты и команды =)
Сначала в качестве базы данных использовал MSSQLServer, потом подключил SQLite. Для создания бд в SQLite использовал "DB Browser", а в MSSQLServer подход CodeFirst
Чат на WCF. Написан на C#. Представляет собой приложение для обмена текстовыми сообщениями. Есть режим личных сообщений между абонентами (окно личных сообщений открывается по двойному клику по пользователю в списке контактов). В таком виде оно стало моим дипломом.
Далее , после диплома и после того как разобрал EF6 и повторил WPF (да да эти футболисты и команды =) ) прикрутил к этому чату еще пару окон: регистрация пользователей и добавление их в базу данных на сервере, так же удаление пользователей, проверка на входе логина и пароля, изменение данных пользователей.
Опять же не все так радужно, есть и косяки. К огромному сожалению так и не получилось запустить чат по сети =(. Как ни старался. Перерыл кучу всего в нете, но так и не получилось. Моих личных знаний по WCF не достаточно, чтобы найти, в чем ошибка. Однако, я получил отличный опыт.
После этого я сконцентрировался на ASP.NET. Как я уже тут писал, я прохожу те темы, которые из-за гонки преподов, не отложились в моей голове.
В ближайших планах у меня значится ASP.Net и Xamarin. Понравилось делать сайты. Думаю сделать еще несколько сайтов для своих друзей и коллег.
Еще думаю вернуться немного назад и прикрутить к какому нить своему приложению на WPF норм стиль. Разобрать там всевозможные красивости и плюшечки.
Где-то к концу лета я созрею для очередных курсов, на этот раз онлайн. Это будет что-то по ASP.net. Хочу разобраться с ним получше, копнуть вглубь так сказать.
Дальше вероятно сменю работу, а то моя уже в печенках сидит!
Как я и обещал, допилил приложение на ASP.net. Это не первое мое приложение на ASP.net и даже не первое опубликованное, но первое в котором я разобрался с ASP.net Identity. В приложении подключена база данных, где храняться данные пользователей, а так же панель администратора. Доступ к функционалу приложения доступен только зарегистрированным пользователям. Пользователь может создать/удалить свой аккаунт, редактировать личные данные (Email и пароль), а так же пользоваться функционалом приложения.
Сам функционал - это очень простая задачка (создает массив целых и выдает номер первого числа в масиве более введенного ранее ). После регистрации и входа на сайт пользователь получает роль "user" и доступ к функционалу задачки. Я же, кроме прав "user" имею права "admin" , а тк же доступ к панели администратора, где могу делать массу интересных штук (например создавать и удалять пользователей, раздавать им права, просматривать определенные данные)
Тут представлены скрины страничек