Abekek Notes
1.03K subscribers
173 photos
19 videos
12 files
295 links
Канал с моими заметками.

Обо мне: abekek.github.io
Download Telegram
#road_to_1500

✏️ День 4

Практиковал математику. Сделал 4 мини секций, две из которых сделал на 5/5, а остальные на 4/5 и 3/5. Немного попарился с тригонометрией.

Также сделал два практиса по 10 вопросов:

• Math (No Calc): 9/10
• Math (Calc): 8/10

Результаты нормальные, но всё ещё делаю ошибки. Большинство из них по невнимательности. Например, одну задачу я неправильно переписал и в итоге получил неправильный ответ.
#road_to_1500

✏️ День 5

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

Одна из ошибок: the offspring (потомство) - это plural noun, поэтому у него должен быть глагол resemble, а не resembles, как ответил я. Мозг не видит на конце "s", поэтому автоматически думает, что это singular noun.

А вот мои фиговые результаты:
• Reading (Science): 6/11
• Reading (Literature): 7/11
• Writing: 5/11
• Writing: 9/11

Ну ничего, я учусь на своих ошибках, и в следующий раз их не допущу.
По традиции, сейчас проведу чистку канала от неактивных подписчиков😴
Мой путь программиста

Многие просили меня написать о том, как я начал заниматься программированием, что я изучал, и как, по мнению многих, я стал таким "профессионалом". Правда, есть люди, которые считают меня профи 😂. Спасибо вам, ребят, но мне ещё предстоит много чего узнать из мира программирования.

Для кого этот пост?
Для тех, кому интересен мой путь программиста и для новичков в программировании.

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

В этой серии постов я расскажу с чего начал свой путь (с 2016 по сегодняшний день), на каких языках программирования писал код и какие материалы использовал.

Надеюсь вам будет полезна эта серия постов!
Первые шаги (до 2016)

Вообще, самую первую строчку кода я написал в 6 классе на уроке информатики в 159 гимназии (школа, где я учился до НИШ). Мы писали на Pascal, но тогда у меня никакого представления о программировании не было. Я просто переписывал код с доски и не понимал, что он делает. Соответственно, никакого интереса у меня к этому делу не было.

Далее, поступив в НИШ, на уроке информатики мы прошли язык Visual Basic. У меня начало складываться хоть какое-то представление о программировании. На тот момент я думал о нём, как о штуке для создания программ для компьютера. Я тогда не думал о дальнейшем применении этого навыка.

Я был в 7 или в 8 классе, и просирал своё время в играх за компьютером (при этом я учился на "отлично"). В один день, мой отец сказал что-то вроде: "А ты не хочешь научиться создавать эти игры? Представь, сколько денег зарабатывают люди, которые создают их. Почитай в Интернете о программировании". Эта мысль меня заинтересовала, и я стал рыться в Интернете о том, как создавать игры. Я думал, что найду лёгкое решение, но не тут, то было. Всё что я читал было абсолютно непонятным для меня, и в скором времени я сдался.
2016 год

В этом году, у меня вновь появился интерес к программированию. Летом 2016 года, мой репетитор по математике, который готовил меня к НИШ и помогал мне в учебе, предложил мне заняться программированием вместо математики. Он сам учился на программиста, поэтому рассказал мне о всех возможностях программирования. Он сказал, что теперь мы можем решать задачи по математике намного быстрее, так как за нас будет всё считать компьютер. Далее, мы решали всякие задачи из учебника "1000 задач по программированию" всё ещё на языке Visual Basic. Он не стал меня учить другому языку, он хотел научить меня самим принципам программирования.

После этого я был мотивирован стать программистом, и мне начали попадаться различные сайты по его изучению. Один из них был - сайт GeekBrains, где я прошёл двухдневный вебинар по основам программирования. Вебинар дал мне хорошую базу, я ознакомился с HTML, CSS, JavaScript и сделал свой первый "сайт". Он также показал мне дальнейшие перспективы. Я решил, что буду изучать Java или Python, так как первый используется для создания мобильных приложений, а второй очень хорош для новичков.

К слову, в тот же год я попробовал оба языка. Я наткнулся на сайт javarush.ru (отличный сайт, но о нем я расскажу подробнее позже). Там я прошел первые уроки по языку Java. Он меня не заинтересовал, так как показался сложным на тот момент, хотя обучение проходит в виде квеста.

В конце 2016 года, я начал изучать Python через приложение Sololearn, но это было плохой идеей, так как программировать оно меня не научило.
2017 год

Зимой, я всё еще продолжал своё изучение Python, но уже по учебнику. Учебник называется "A Byte of Python". Кажется я не дочитал его до конца, так как хотел побыстрее приступить к практике и не застревать на этой теории. Однако, когда я попробовал решить простую задачу на Python, у меня не получалось. Выходили ошибки и я не понимал, как вообще работает язык, так как в нём очень важны отступы и пробелы. Я назвал язык "говном" и разочаровался в себе. Я был так зол на себя, что потратил своё время непонятно на что - на то, что не принесло результатов.

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

Далее, я до лета не занимался программированием, как вдруг я подумал снова о Java. Родители купили мне книгу Герберта Шилдта "Java 8. Руководство для начинающих." Книга шикарная. Она дала мне, как теорию, так и практику, но её я тоже не дочитал до конца. С ней я уже начинал понимать, что такое программирование - изучил условия, циклы, функции и парадигмы объектно-ориентированного программирования (ООП). Благодаря этой книге я заложил хороший фундамент в программировании.

Позже я уже мог уверенно писать на Java, поэтому начал проходить бесплатный курс от Google на Udacity по разработке мобильных приложений. Там я снова же, получил хорошую основу, но не проходил его до конца - решил работать над собственными проектами, и получать знания таким образом. Я сделал несколько мини-проектов и стал решительно развиваться в мобильной разработке.
2018 год

На сайте javarush.ru проходила на тот момент новогодняя акция, где у них годовая подписка стоила $100. Я её купил.

Кстати, Javarush - это такая платформа для изучения языка Java, где уроки проходят в виде квестов. Больший уклон идёт на практическую часть - там 1200 задач по программированию, которые можно решать, как на сайте, так и в своей IDE. Задания будут проверяться моментально, и говорить вам об ошибке. У Javarush огромное коммьюнити, которое всегда готово помочь. Сам квест состоит из 40 уровней, которые мне кажется очень сложно пройти за 1 год. На 30 уровне предоставляется возможность онлайн стажировки. Я до неё не дошёл, так как прошел только 11 уровней, которые дали мне много опыта в программировании. Было бы у меня больше времени, я бы прошёл гораздо больше уровней.

До лета я только и делал, что решал задачки на Javarush. Параллельно я ещё делал свой проект - мобильное приложение для подготовки к SAT, код которого висит в моём GitHub. Я работал над ним в Samsung Coding Lab с ментором из одной компании (он не сказал какой). Даже выиграл 3 место на городской олимпиаде с этим приложением.

Однако потом, мне это наскучило и я захотел попробовать написать Telegram бота. Telegram становился очень популярным, поэтому я хотел как можно скорее обучиться хайповой теме. К тому же, я натыкался на множество статей, где говорилось, что мобильная разработка становится менее популярной в связи с появлением чат-ботов.

Начал изучать ботов. А тут опять Python! Я начал программировать на нём, и почему-то ощущения были не те, которые я испытывал в 2017 году. Он мне показался очень удобным и простым языком, поэтому я стал писать на нём различных ботов (в GitHub всё есть).

Осенью, на уроках информатики, наша учительница показала нам сайт datacamp.com. Цель - изучение SQL. Я очень быстро закончил курс по SQL, поэтому стал рыться по этому сайту. Оказалось, что он содержит в себе курсы по Data Science. Я слышал о Data Science до этого, но не знал что это такое, поэтому стал гуглить. Меня заинтересовала эта тема, поэтому я решил попробовать себя в ней.

Мне повезло, что на DataCamp были новогодние 67% скидки на годовую подписку. Я попросил родителей и они мне оформили её. Я был очень рад и далее начал двигаться в направлении Data Science.
2019 год

До лета я изучал Data Science на платформе DataCamp. Во время учёбы в школе, на уроках информатики мы прошли много разных языков: C#, PHP, Java, HTML, CSS, JavaScript. Я ознакомился со всеми, но Python был по душе.

Все знают, что было дальше. Я продолжал делать различных ботов и даже разрабатывал одного для организации. С поступлением на программу UNICEF Summer Residency, я углубился в Data Science.

Сейчас изучаю Data Science по ресурсам от ods.ai.

Дальше я планирую продолжать изучать Machine Learning и Deep Learning. Позже я поделюсь с вами одной классной книгой для этого.
Выводы

Как вы видите, меня жёстко шатало из стороны в сторону. Я постоянно пробовал изучать разные вещи, пробовать себя везде. Это хорошо, так как теперь я знаю, как заниматься каждой из сфер программирования. Однако я потерял очень много времени на переобучение, и надеюсь вы не повторите эту ошибку.

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

[Обновлено]
Я забыл добавить, что главное всегда практиковаться. В программировании 80% вашего времени должно уходить на практику в виде решения задач или создания и развития своих проектов. Таким образом, вы будете лучше запоминать информацию и нарабатывать себе опыт в разработке.

Для тех, кто только начинает программировать, я советую начать с языка Java и изучить фундаменты программирования именно на нём. Почему не С++? Он сложный и я сам его не изучал. Далее можете выбирать любой язык, и любое направление. Я уверен, что после Java вам будет намного легче программировать на других языках.

Надеюсь вам понравилась серия постов! Если есть ещё вопросы, пишите @abekek
1
Кстати, я забыл сказать, что в понимании программирования мне ещё помогла книга "Грокаем Алгоритмы". Там доступным языком объясняются алгоритмы на языке Python, которые в будущем помогут на различных технических интервью.

Я прочитал её не полностью, так как была сложновата для меня, но в ближайшем времени собираюсь дочитать.
#road_to_1500

✏️ День 6

Сегодня математика пошла очень легко. Сделал две мини-секции на 5/5. Потом я сделал один практис -> результаты были не очень. Потом поспал 1.5 часа и сделал всё на фулл. Может нужно просто больше спать🤷‍♂. Вот резы:

• Math (Calc): 8/10
• Math (No Calc): 10/10
• Math (Calc): 10/10
#road_to_1500

✏️ День 7

Блин, какие тупые ошибки я совершаю на ридинге🤦‍♂. Где-то 3 вопроса ответил неправильно из-за невнимательного прочтения вопроса на Social Science passage. В общем, как всегда по двум мини-секциям - 5/5. Завалил History Paired passage - название говорит само за себя. Было сложно:

• Writing: 11/11
• Reading (History): 5/11
• Reading (Science): 9/11
• Reading (Social Science): 7/11
#road_to_1500

✏️ День 8

Делал практисы под конец дня, поэтому резы немного хуже. Сделал четыре мини секций: две 5/5, одну 4/5 и ещё одну 2/5. Жёстко тупил в последней.
Вот резы по секциям на время:

• Math (No Calc): 9/10
• Math (Calc): 7/10
Back to School

Вчера вышло полезнейшее видео от студента Гарварда - John Fish.
Не буду ничего говорить. Посмотреть обязан каждый, кто хочет провести свой учебный год продуктивно и успешно.

https://youtu.be/OClXTdFyoVw
#road_to_1500

✏️ День 9

Отдых. Сегодня весь день был за городом, поэтому устал и нет сил практиковать SAT.
Я только на 52% прочитал Американскую Трагедию. История Клайда Гриффитса становится всё интереснее, и интереснее.
#road_to_1500

✏️ День 10

Ридинг хромает, но райтинг я тащу:

• Reading (Paired Science): 5/11
• Reading (Science): 9/11
• Writing: 11/11
• Writing: 11/11
#road_to_1500

✏️ День 11

Теперь я заваливаю и райтинг, и ридинг😂:

• Writing: 8/11
• Writing: 9/11
• Reading (Literature): 5/11
• Reading (Paired History): 6/11
#road_to_1500

✏️ День 12

Сегодня делал матешу на Khan Academy. Мини-секции как всегда фуллы. Вот результаты:

• Math (No Calc): 10/10
• Math (Calc): 9/10
• Math (No Calc): 8/10