Репутація українського ІТ. Пройти опитування Асоціації IT Ukraine
×Закрыть

Как учить computer science?

Здравствуйте, я программист самоучка, работаю уже 3 года, пару лет в продуктовой компании, год в аутсорсе, специализация — веб.
Хочу заполнить пробел в знаниях Computer Science. Долго искал какие есть ресурсы и тд, нашел это teachyourselfcs.com

Вопрос есть тут такие, кто задался той же целью что и я, и успешно обучался этому самостоятельно?

Неделю назад пробывал проходить курс по дискретной математике на курсере, но уперся в непонимание некоторых вещей. Так что сейчас начал с математики на khan, конкретно high school math. Прежде чем приступать к Computer Science хочу повторить школьную программу.

Развиваться дальше буду как веб программист, в machine learning или data science уходить не хочу. Сейчас мне 20 с небольшим, я хочу построить базу, на которой дальше будет легче работать. Какие советы можете дать?

LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

А почему начал с дискретки?

Відео-матеріалів про алгоритми зараз реально дуже багато — на тій же coursera. Як на мене Computer Science — це фундаментальна база для будь-якого програміста. Не дуже погоджуюсь з думкою, що краще вивчити нову версію якогось фрейморку. Інженер повинен в першу чергу вміти працювати з масивами даних, знати структури даних, розуміти як працюють черги/дерева і т.д — а потім уже на базі цього швидко схвачувати нові технології. Ми буквально недавно оговорювали, що ця база необхідна також для проходження співбесіди в корпорацію: youtu.be/T7Do13JMO7k
А тут купа прикладів задач на Data Science:
Topcoder.com
Hackerrank.com
leetcode.com

Классика по алгоритмам:
— www.coursera.org/learn/algorithms-part1
— www.coursera.org/learn/algorithms-part2
Аналог попроще — www.udemy.com/...​ta-structures-masterclass
Операционные системы(база) — www.udacity.com/...​-operating-systems—ud923

Прежде чем приступать к Computer Science хочу повторить школьную программу.
Развиваться дальше буду как веб программист, в machine learning или data science уходить не хочу. Сейчас мне 20 с небольшим, я хочу построить базу, на которой дальше будет легче работать. Какие советы можете дать?

Рекомендую из школьной программы повторить рисование. Остальное всё не нужно.

Совет 1 — не надо «заполнять пробел в знаниях Computer Science» — это система, которая требует освоения на системном же уровне, последовательно. В неё или веришь полностью, или нет.

Совет 2 — приступай к CS50 прямо сейчас, а не после освоения основ школьной программы, бо CS50 сам по себе «основы». Что непонятно — ставить на паузу и идти разруливать через основы из школьной программы. На этом пути всегда нужен живой человек, бо мозг может выдать за понимание основ лютую ересь, и постоянно нужен камертон. Отсюда:

Совет 3 — не учись по ютюбам. Сперва учись у живых людей. Можно учесть dou.ua/forums/topic/19248

Вот я пего не учли, через 10 дней будет 9 лет в айти, сейчас на позиции тех лид. За 9 лет меня за само образования не спрашивали ни разу. Алгоритмы бывает порой вспоминаю, но тут тебе книга по ним поможет. Иногда помогает как работает внутри Линукс — опять это в книгах можно найти. Как работают бд- это можно из статей разных вытянуть. Подходы к проектированию систем — книги + статьи + опыт :)

Штудировать университетские курсы. На Youtube сейчас полно материала: MIT, МГУ, все открыто бери не хочу. Пользуйтесь пока не удалили, высока вероятность что скоро это будет за $$$.

Развиваться дальше буду как веб программист

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

Изначально да. А потом внезапно пригодится, например, работа с деревьями. И чем реакт поможет очередному фреймворк девелоперу?

файлы-папки — вполне деревовидная структура (особенно УИ), в реакте из коробки ничего для работы с таким нету ?

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

А если знать не токо реакт, а еще хтмл, цсс, вебпак (или чем там жс собирают), докер, и как это все развернуть на проде — прыгнуть в лидерах, и не только, можно довольно высоко...

а если я бекендщик, что может здесь сыграть роль Реакта?)

вивчити хотя би кілька назв алгоритмів сортування: бульбашком, мержом, вставкою, квік. Знати біг О комплексіті (уже +100 у.е до зепешки)
вивчи що таке бінарне дерево, і як його обійти (ще +100 у.е до з.п.).
і т.д.

орили? это де такой аукцион щедрости ? названия контор в студию.

Є компанії які хочуть, щоб спеціаліст прийшов і робив задачі за константу винагороду довгий час і їм всеодно, що спеціаліст розвивається, їм достатьно того рівня спеціаліста якого наймали.

І відповідно ці +$100, +$200 за вивчення нового будуть доступні в наступній компанії.

В одній компанії хотів домовитись, щоб хоча б за вивчення нової книги чи іншого навчального матеріалу давали +$10, а вчив тоді багато, відмовили.

Ріст іде на собєсах через дорогу.
От вчи вчи, а ті самі речі від КО

Прокачивание знаний реакта достаточно быстро выводит на плато по з/п.

В $5000 в Украине. Вполне себе отличное плато.

Заглянул сюда что б узнать что такое Computer Science. Не помогло))

Я закончил мех-мат лет 40 назад и занялся серьезно программированием. Теорией и всякими такими штучками, что еще не очень даже понималось на работе. Хотя занимались очень серьезными вещами для космоса. Однажды в троллейбусе я встретился с преподом с кафедры теории функций. (Мы с ним подружились еще с универа по причине того что умных людей мало) и я ему рассказал о том, чем занимаюсь. Он мне тогда сказал что программирование это не наука. В принципе он имел право так сказать. И я с ним несколько согласен. Все-таки это ближе к прикладным вещам. Единственно, что объединяет с наукой, так это обилие материала и попытки систематизировать этот материал для практического применения.

Ну коль знаешь, что такое

Computer Science

, то зачем спрашиваешь?

Или это был вброс, чтобы поговорить о том, что CS, таки на S. На это в вике тоже тебе есть ответ. Ну и практическое программирование на конторах — это таки не наука, а ремесло.

Ну коль знаешь, что такое

Computer Science
, то зачем спрашиваешь?

Я как раз не знаю. Зашел сюда что б узнать))

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

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

Даже смотреть не буду. Сомневаюсь что я где-то новое увидел. Все древнее. Архитектура не менялась лет 70. Из нового только квантовые, но это совсем другая тема. Языки все одинаковые. С Алгола и работ Ахо, Ульмана тоже ничего нового. Три ветви императивная, функциональная и логическая парадигмы. НИЧЕГО НОВОГО НЕТ УЖЕ ЛЕТ 50.

Вот этим ты меня в сраче победил. Сдаюсь.

Он мне тогда сказал что программирование это не наука. В принципе он имел право так сказать.

а тре було дістати зі штанин пачку Франклінів і дати по носі
математика теж не наука, так як там нема «гіпотези і експеремента, що її підтвержує або відхиляє», чисто софістика для гри розуму

Не софистика, но и не наука.

згоден,
це я трохи піддав жару.

а тре було дістати зі штанин пачку Франклінів і дати по носі

Если для тебя пачка Франклинов доказательство, то тебе лучше в проститутки.

а чим проргамізд лучше простітутки?
і там і там продаєш свій час.

а чим проргамізд лучше простітутки?
і там і там продаєш свій час.

Душу.

ну да, простітутка продає тіло,
а програмізд душу.

1) Сделать систему искусственного интеллекта
2) Учить её как спросить на DOU как учить computer science < ----------------- ВЫ ЗДЕСЬ
3) PROFIT!!!!!!!!!!!!!!
4) Не спрашивать, куда делись одежда и мотоцикл

В процесі підготовки до інтерв’ю в одну з компаній з першого світу, проходив цей курс:
www.educative.io/...​king-the-coding-interview

Радив би його, але це явно не курс для початківців, інакше, доведеться дуже багато гуглити в паралель.
Охоплюються всі популярні структури(масиви, списки, графи, unions etc.) і алгоритми з ними.
Ну і відповідні задачки на це.

Також «Золотим стандартом» зараз вважається цей курс www.educative.io/...​e-system-design-interview
Поверхнево дозволяє зрозуміти як будуються великі розподілені системи. Ну і також, це явно не для початківців. Не назвав би це Computer Science в чистому вигляді, але однозначно буде корисно всім, хто хоче вирости трохи більше за рядового формошльопера аутсорсера.

За наведені вище курси доведеться відвалити 47 баксів на місяць або річну підписку.

Невеличке уточнення по цінам — 47 баксів — це за один курс одноразово, з «пожиттєвою» доступністю.
Або за 12 баксів на місяць доступ до всіх курсів на платформі, поки діє підписка.

Кто ж тут прямыми путями ходит?

Поддержу. Курс на английском. Если с ним проблемы, то его же можно пройти на JavaRush с переводом. Однако английские версии кажется обновляются.

Ще вона вийшла набагато раніше, ніж російськомовний переклад, десь на два роки.

Але не дуже розумні малороси чомусь про це не здогадуються.

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

Шукаєте тут на ДОУ статті про інтерв’ю в ФААНГ, читаєте вимоги і рекомендації і вчитеся в тому напрямку

можно попробовать почитать Кнута, вроде 5 томов уже есть

1. Відкриваєш у вікі категорію «Алгоритми»
2. Вибираєш який тобі цікавий.
3. Читаєш опис.
4. Кодиш алгоритм і експериментуєш з ним.
5. GOTO 1.

teachyourselfcs.com

Хороший ресурс, додав до списку

Какие советы можете дать?

Якщо шукати новий проект, то з можливість вивчити нове, а раз в 5 років змінювати мову програмування чи домен

teachyourselfcs.com

Книги там хороші, можна читати

Подписаться на комментарии