This media is not supported in your browser
VIEW IN TELEGRAM
☝️Путь к успеху
Перед глазами встает собственный путь становления разработчиком, где были точно такие же взлеты и падения.
Хотел сначала написать более подробно об этом пути, но получилось слишком много текста для поста и больше стало походить на начало книги автобиографии 😅
🔥 - опубликовать набросок
😱 - оставь себе, не люблю много читать
Перед глазами встает собственный путь становления разработчиком, где были точно такие же взлеты и падения.
Хотел сначала написать более подробно об этом пути, но получилось слишком много текста для поста и больше стало походить на начало книги автобиографии 😅
🔥 - опубликовать набросок
😱 - оставь себе, не люблю много читать
🔥151😱6❤2😈1
#1 Мой путь
Я вырос в маленьком белорусском городке на границе с Россией - Мстиславль. Еще со школьной скамьи мне почему-то хотелось стать программистом, писать крутые приложения, а может, и разрабатывать компьютерные игры. Но как обычно это и выходит у всех - возможности не было. Не было того, кто мог бы показать или рассказать об этом, а на уроках информатики мы занимались даже отдаленно не похожим на код программ.
Кто-то из знакомых рассказывал, что есть университет в Минске - БГУИР (Белорусский Государственный Университет Информатики и Радиоэлектроники), где всему научат, и где ты сможешь получить то, чего так хочешь. Как сейчас помню, это был 8 класс и первая осознанная цель в жизни - поступить в БГУИР.
К сожалению, твои цели не всегда соответствуют реальным происходящим событиям. Дело в том, что я учился по новой 12-летней программе обучения, которая, как оказалось, была неудачной. В конце 10 класса мы все узнали, что будем поступать уже в следующем году вместе с ребятами по 11-летней программе. Другими словами, двойной поток и искусственное увеличение конкурса в 2 раза на бюджетные места в учебных заведениях.
Проблема в том, что я из многодетной семьи, и рассматривались возможности поступать исключительно на бюджет. Следовательно, шанс был всего один, а стать программистом очень уж хотелось. Поэтому я разузнал, что есть военный факультет в БГУИРе, куда поступить чуть ли не в два раза проще. Как итог: заявление в военкомат, многоэтапные медкомиссии, сдача физических нормативов и подготовка к ЦТ (Централизованное Тестирование).
Но что-то мне подсказывало, что на военном факультете будет не совсем то, чего я хотел…
После сдачи ЦТ я подсчитал все свои баллы вместе с аттестатом и пошел читать книгу прошлых лет о проходных баллах на факультеты БГУИР. Я понимал, что два потока будущих студентов должны неплохо увеличить этот балл, следовательно брал с запасом. По моим меркам, я должен был без проблем пройти на бюджет и, конечно же, не на военный факультет. Осталось лишь уговорить родителей и забрать заявление в военкомате.
С родителями разговор был сложный и эмоциональный, но, к счастью для меня, увенчался успехом.
С военкоматом было проще, но интереснее.
Ответ был прост: даже если я заберу заявление и тем самым решу не поступать на военный факультет, пройдя далеко не быстрый и простой путь отбора, то все равно через 5 лет они меня будут ждать.
В тот момент я не осознавал, насколько здорово они умеют держать свои обещания…
#my_little_story
Я вырос в маленьком белорусском городке на границе с Россией - Мстиславль. Еще со школьной скамьи мне почему-то хотелось стать программистом, писать крутые приложения, а может, и разрабатывать компьютерные игры. Но как обычно это и выходит у всех - возможности не было. Не было того, кто мог бы показать или рассказать об этом, а на уроках информатики мы занимались даже отдаленно не похожим на код программ.
Кто-то из знакомых рассказывал, что есть университет в Минске - БГУИР (Белорусский Государственный Университет Информатики и Радиоэлектроники), где всему научат, и где ты сможешь получить то, чего так хочешь. Как сейчас помню, это был 8 класс и первая осознанная цель в жизни - поступить в БГУИР.
К сожалению, твои цели не всегда соответствуют реальным происходящим событиям. Дело в том, что я учился по новой 12-летней программе обучения, которая, как оказалось, была неудачной. В конце 10 класса мы все узнали, что будем поступать уже в следующем году вместе с ребятами по 11-летней программе. Другими словами, двойной поток и искусственное увеличение конкурса в 2 раза на бюджетные места в учебных заведениях.
Проблема в том, что я из многодетной семьи, и рассматривались возможности поступать исключительно на бюджет. Следовательно, шанс был всего один, а стать программистом очень уж хотелось. Поэтому я разузнал, что есть военный факультет в БГУИРе, куда поступить чуть ли не в два раза проще. Как итог: заявление в военкомат, многоэтапные медкомиссии, сдача физических нормативов и подготовка к ЦТ (Централизованное Тестирование).
Но что-то мне подсказывало, что на военном факультете будет не совсем то, чего я хотел…
После сдачи ЦТ я подсчитал все свои баллы вместе с аттестатом и пошел читать книгу прошлых лет о проходных баллах на факультеты БГУИР. Я понимал, что два потока будущих студентов должны неплохо увеличить этот балл, следовательно брал с запасом. По моим меркам, я должен был без проблем пройти на бюджет и, конечно же, не на военный факультет. Осталось лишь уговорить родителей и забрать заявление в военкомате.
С родителями разговор был сложный и эмоциональный, но, к счастью для меня, увенчался успехом.
С военкоматом было проще, но интереснее.
Ответ был прост: даже если я заберу заявление и тем самым решу не поступать на военный факультет, пройдя далеко не быстрый и простой путь отбора, то все равно через 5 лет они меня будут ждать.
В тот момент я не осознавал, насколько здорово они умеют держать свои обещания…
#my_little_story
👍89🔥28👏4❤2😱1😢1
#2 Мой путь
1 сентября 2009 года - я поступил в БГУИР на специальность ИТиУТС (Информационные Технологии и Управление в Технических Системах) и стою возле 5 корпуса университета на открытии учебного года. Переехав из маленького города Мстиславль, Минск казался тогда просто огромным и невероятным! Столько высотных зданий, большие улицы, миллионы людей, даже впервые на метро покатался!
Мне предоставили общежитие как многодетной семье, следовательно было где жить, а стипендия на бюджете - чтобы было что есть. Осталось дело за малым - стать программистом. Предметов было очень много, но я с нетерпением ждал лишь одного единственного - первого занятия по программированию.
К сожалению, а может и, наоборот, к счастью, процесс обучения очень отличался от того, что я себе представлял. На первой лабораторной работе на своем первом языке программирования С задание звучало (дословно): скачиваем методическое пособие с сайта, находим первую задачу и начинаем писать код. И нет тебе каких-либо наставлений или объяснений, только куча вопросов у меня: где писать? как писать? почему все что-то делают, а я не пойму даже с чего начать?
Отсюда я получил урок номер 1: обучение в университетах построено практически полностью на самообучении, начитке кучи лекций и отсутствием практики.
Все бы ничего, я не против такого подхода, просто на тот момент мне казался код программ рандомным набором замысловатых и непонятных символов. Компьютер появился только на втором месяце обучения, следовательно я просто пытался написать код на листочке, анализируя решенные задачи своих одногруппников.
Тем временем, середина семестра подходила к концу, понятность кода ничуть не увеличивалась, руки опускались, и я уже не успевал со сдачами работ...
#my_little_story
1 сентября 2009 года - я поступил в БГУИР на специальность ИТиУТС (Информационные Технологии и Управление в Технических Системах) и стою возле 5 корпуса университета на открытии учебного года. Переехав из маленького города Мстиславль, Минск казался тогда просто огромным и невероятным! Столько высотных зданий, большие улицы, миллионы людей, даже впервые на метро покатался!
Мне предоставили общежитие как многодетной семье, следовательно было где жить, а стипендия на бюджете - чтобы было что есть. Осталось дело за малым - стать программистом. Предметов было очень много, но я с нетерпением ждал лишь одного единственного - первого занятия по программированию.
К сожалению, а может и, наоборот, к счастью, процесс обучения очень отличался от того, что я себе представлял. На первой лабораторной работе на своем первом языке программирования С задание звучало (дословно): скачиваем методическое пособие с сайта, находим первую задачу и начинаем писать код. И нет тебе каких-либо наставлений или объяснений, только куча вопросов у меня: где писать? как писать? почему все что-то делают, а я не пойму даже с чего начать?
Отсюда я получил урок номер 1: обучение в университетах построено практически полностью на самообучении, начитке кучи лекций и отсутствием практики.
Все бы ничего, я не против такого подхода, просто на тот момент мне казался код программ рандомным набором замысловатых и непонятных символов. Компьютер появился только на втором месяце обучения, следовательно я просто пытался написать код на листочке, анализируя решенные задачи своих одногруппников.
Тем временем, середина семестра подходила к концу, понятность кода ничуть не увеличивалась, руки опускались, и я уже не успевал со сдачами работ...
#my_little_story
👍75🔥11👏6🤯4❤1
❓Зачем столько однотипных методов of в интерфейсе List?
Начинающие джависты часто спрашивают меня (и, думаю, многие не начинающие тоже задавались вопросом), зачем разработчики языка Java добавили с десяток методов of в интефейс List, которые отличаются лишь количеством параметров.
И правда, зачем? 🤔
И есть ли действительно смысл в этом?
#dmdev_ликбез
Начинающие джависты часто спрашивают меня (и, думаю, многие не начинающие тоже задавались вопросом), зачем разработчики языка Java добавили с десяток методов of в интефейс List, которые отличаются лишь количеством параметров.
И правда, зачем? 🤔
И есть ли действительно смысл в этом?
#dmdev_ликбез
🤔23👍3😐3
DMdev talks
❓Зачем столько однотипных методов of в интерфейсе List? Начинающие джависты часто спрашивают меня (и, думаю, многие не начинающие тоже задавались вопросом), зачем разработчики языка Java добавили с десяток методов of в интефейс List, которые отличаются лишь…
📚 В топ-1 книге для Java разработчиков “Effective Java” by Joshua Bloch отлично описывается зачем приходится перегружать методы таким образом и как выбирается количество элементов без использования varargs.
Если коротко:
для избежания накладных расходов на создание и инициализацию массива в критически важных по производительности местах приложений.
На картинке тот самый кусочек информации из книги!
(3rd Edition, Item 53 “Use varargs judiciously”)
#dmdev_ликбез
#dmdev_top_books
Если коротко:
для избежания накладных расходов на создание и инициализацию массива в критически важных по производительности местах приложений.
На картинке тот самый кусочек информации из книги!
(3rd Edition, Item 53 “Use varargs judiciously”)
#dmdev_ликбез
#dmdev_top_books
👍31🔥10❤1🤔1
#3 Мой путь
На своем стареньком компьютере я установил не менее старенькую среду разработки Visual Studio 2005 для того, чтобы писать свои программы на языке С уже там, а не на листке бумаги. Почему-то код не стал быть более понятным. Я уже мог отличать ключевые слова, такие как for, if, array[]. Я понимал, где ставить фигурные скобочки, что вот это циклы, это ветвления, а вот это массивы и функции, но не более. Я не мог осознать, как самому это написать и почему ключевое слово return еще и что-то куда-то возвращает.
В один прекрасный день я увидел, как мой одногруппник использует дивный функционал в той же самое среде разработки. Он как будто бы сам выполнял построчно код программы, а не компьютер. Ему отображались все значения переменных, индексы циклов, он даже мог переходить в функции и выходить их них - все! Тот первый переломный момент в моем становлении программистом был уже в конце декабря перед началом сессии - я узнал про отладку программ (Debug).
Я понял как работает процессор, как он выполняет мои инструкции в коде, я дебажил строчка за строчкой. Я стал запоем читать свою первую электронную книгу по С, что попалась под руку. Cделал все лабораторные работы за неделю и сдал перед самым началом экзамена, получив к нему доступ. Сам экзамен я тоже сдал на максимальный балл. Моей радости не было предела. Почти 4 месяца у меня ушло перед тем, как я осознанно стал писать строчки кода в своих программах.
Второй семестр первого курса прошел еще быстрее. Лабораторные работы представляли из себя математические задачи: метод Гаусса, аппроксимации различных функций и все в этом духе. Но меня волновала не математическая сложность, а то, что лично я могу написать код, который будет решать такие непростые задачи за доли секунды, в то время как человеку могло понадобится минуты и даже часы. Осознание этого мотивировало еще больше изучать программирование!
#my_little_story
На своем стареньком компьютере я установил не менее старенькую среду разработки Visual Studio 2005 для того, чтобы писать свои программы на языке С уже там, а не на листке бумаги. Почему-то код не стал быть более понятным. Я уже мог отличать ключевые слова, такие как for, if, array[]. Я понимал, где ставить фигурные скобочки, что вот это циклы, это ветвления, а вот это массивы и функции, но не более. Я не мог осознать, как самому это написать и почему ключевое слово return еще и что-то куда-то возвращает.
В один прекрасный день я увидел, как мой одногруппник использует дивный функционал в той же самое среде разработки. Он как будто бы сам выполнял построчно код программы, а не компьютер. Ему отображались все значения переменных, индексы циклов, он даже мог переходить в функции и выходить их них - все! Тот первый переломный момент в моем становлении программистом был уже в конце декабря перед началом сессии - я узнал про отладку программ (Debug).
Я понял как работает процессор, как он выполняет мои инструкции в коде, я дебажил строчка за строчкой. Я стал запоем читать свою первую электронную книгу по С, что попалась под руку. Cделал все лабораторные работы за неделю и сдал перед самым началом экзамена, получив к нему доступ. Сам экзамен я тоже сдал на максимальный балл. Моей радости не было предела. Почти 4 месяца у меня ушло перед тем, как я осознанно стал писать строчки кода в своих программах.
Второй семестр первого курса прошел еще быстрее. Лабораторные работы представляли из себя математические задачи: метод Гаусса, аппроксимации различных функций и все в этом духе. Но меня волновала не математическая сложность, а то, что лично я могу написать код, который будет решать такие непростые задачи за доли секунды, в то время как человеку могло понадобится минуты и даже часы. Осознание этого мотивировало еще больше изучать программирование!
#my_little_story
👍56🔥28❤1🤔1
Признавайся честно, копипастил код?)
Anonymous Poll
31%
Да, но только внутри своего проекта
63%
Да, особенно со stackoverflow
6%
Нет, никогда. Все пишу сам!
🔥6
Индекс DMdev: update
Количество видео DMdev уже давно перевалило за 500!
Хоть информация и подается в структурированном виде, но все равно порой необходимо возвращаться и искать какую-то конкретную тему, которую когда-то смотрел, но хочется освежить в памяти - что-то вроде конспекта.
Именно для таких целей и был создан индекс по курсам DMdev.
В обновленной версии присутствуют описания, таймкоды и даже ссылки на конкретное место в видео по следующим курсам: Java Core, SQL, JDBC, HTTP. Servlets, Maven, Junit5, Groovy, Gradle, Hibernate и Spring.
P.S. Сейчас идет работа по добавлению курса Bash и ссылок на GetCourse
Количество видео DMdev уже давно перевалило за 500!
Хоть информация и подается в структурированном виде, но все равно порой необходимо возвращаться и искать какую-то конкретную тему, которую когда-то смотрел, но хочется освежить в памяти - что-то вроде конспекта.
Именно для таких целей и был создан индекс по курсам DMdev.
В обновленной версии присутствуют описания, таймкоды и даже ссылки на конкретное место в видео по следующим курсам: Java Core, SQL, JDBC, HTTP. Servlets, Maven, Junit5, Groovy, Gradle, Hibernate и Spring.
P.S. Сейчас идет работа по добавлению курса Bash и ссылок на GetCourse
👍44🔥26👏2
#4 Мой путь
На втором курсе меня подселили в общежитии к ребятам постарше. В университете начались занятия уже по новому для меня языку программирования С++, который я осваивал благодаря книжке размером ~1500 страниц от автора Х. Дейтел. Саму книжку, кстати, я нашел и попросил у своего соседа по комнате. Так начался новый дивный мир в объектно ориентированное программирование (ООП). Только тогда я понял, сколько всего я еще не знаю и что я был всего лишь в самом начале очень длинного пути.
Изучение твоего второго языка программирования обычно запоминается, особенно если он сильно отличается от первого. Но в моем случае синтаксис показался довольно простым после С, лишь сама концепция ООП полностью меняла мой шаблон восприятия кода программ, сложившийся за предыдущий курс университета, и естественно их написание. Тем не менее, эта парадигма открыла мне глаза на то, какие действительно огромные программы можно создавать!
Но могу сказать с уверенностью, что именно второй семестр второго курса был следующим переломным моментом…
Во-первых, у меня появился третий язык программирования - Assembler, изучение которого длилось целых 3 семестра ввиду специфики моей специальности. Он помог мне в мельчайших подробностях разобраться в том, как все устроено на машинном уровне, как работают регистры, аккумуляторы, какие бывают команды процессора, как в принципе устроена память компьютеров. Мне почему-то очень нравился этот минимализм. Например, как приходилось выкручиваться в коде с помощью меток, когда у тебя даже не было циклических конструкций на вооружении.
Во-вторых, это было то самое время, когда я услышал впервые слово Java. Именно услышал, потому что самого языка программирования мы не изучали на моей специальности. Это был Игорь, мой сосед по комнате в общежитии, который показал, как можно круто и легко писать на Java. Я сначала не очень заинтересовался: мне показалось, что язык как-то слишком уж прост. Нет этих крутых ссылок, указателей, указателей на указатели, деструкторов - все казалось каким-то действительно простым. Особенно если учитывать, что все происходило в то время, когда я программировал на Assembler.
#my_little_story
На втором курсе меня подселили в общежитии к ребятам постарше. В университете начались занятия уже по новому для меня языку программирования С++, который я осваивал благодаря книжке размером ~1500 страниц от автора Х. Дейтел. Саму книжку, кстати, я нашел и попросил у своего соседа по комнате. Так начался новый дивный мир в объектно ориентированное программирование (ООП). Только тогда я понял, сколько всего я еще не знаю и что я был всего лишь в самом начале очень длинного пути.
Изучение твоего второго языка программирования обычно запоминается, особенно если он сильно отличается от первого. Но в моем случае синтаксис показался довольно простым после С, лишь сама концепция ООП полностью меняла мой шаблон восприятия кода программ, сложившийся за предыдущий курс университета, и естественно их написание. Тем не менее, эта парадигма открыла мне глаза на то, какие действительно огромные программы можно создавать!
Но могу сказать с уверенностью, что именно второй семестр второго курса был следующим переломным моментом…
Во-первых, у меня появился третий язык программирования - Assembler, изучение которого длилось целых 3 семестра ввиду специфики моей специальности. Он помог мне в мельчайших подробностях разобраться в том, как все устроено на машинном уровне, как работают регистры, аккумуляторы, какие бывают команды процессора, как в принципе устроена память компьютеров. Мне почему-то очень нравился этот минимализм. Например, как приходилось выкручиваться в коде с помощью меток, когда у тебя даже не было циклических конструкций на вооружении.
Во-вторых, это было то самое время, когда я услышал впервые слово Java. Именно услышал, потому что самого языка программирования мы не изучали на моей специальности. Это был Игорь, мой сосед по комнате в общежитии, который показал, как можно круто и легко писать на Java. Я сначала не очень заинтересовался: мне показалось, что язык как-то слишком уж прост. Нет этих крутых ссылок, указателей, указателей на указатели, деструкторов - все казалось каким-то действительно простым. Особенно если учитывать, что все происходило в то время, когда я программировал на Assembler.
#my_little_story
👍55🔥12🌚4
Black Friday is coming
👍31🔥18🤩4👎1