LINUX.ORG.RU
ФорумTalks

Курсы «стать программистом»

 миссия выполнима


2

1

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

короче, постучался в скайп один хороший человек. Профессиональный музыкант, саппортер со стажем, геймдизайнер. Задрало его адски, что в нашей силиконовой пустыне любят только программистов, а уезжать за бугор не хочется, и захотелось ему научиться программировать. Желательно жава, чтобы любимые игры с веб-интерфейсом писать.

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

Можете помочь товарищу, и выписать список маст-хэв онлайн-курсов и книг «для полного чайника»? Если не лень, в порядке «учебной программы» :)

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

Может кто сам такой целью задавался, тут же не только айтишники.

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

Понятно, что там не должно быть никакого хардкорного матана, образование не позволит трехмерные движки писать, а что-то связанное с бизнес-логикой. Если кто-то сможет просветить в пути игроразраба под мобильные платформы, думаю, тоже будет интересно, там же тоже 80% работы - смачный гуй.

(Разрывался между толксами и девелопментом, таки остановился на толксах. Модераторы, если решите, что этому тут не место - можете двинуть в девелопмент?)

Спасибо

★★★★☆

Объясните ему, что это не нужно.

Используйте 3 причины:
1. Программистов любят только в силиконовой долине
2. Для этого нужно иметь особый склад ума, иначе будут только говнопрограммы
3. Профессиональная деформация.

AlexCones ★★★
()
Ответ на: комментарий от DeVliegendeHollander

3. А это вообще непонятно что. Объяснил бы, что ли, поподробнее.

Ну одно из проявлений - это когда тебе сегодня некого поздравлять было.

gnu-eabi
()

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

Code Complete, в русском переводе «Совершенный код».

Из языков очень хорош javascript с javascript.ru в качестве учебника.

quiet_readonly ★★★★
()

т.е. адекватный и собирается самообучаться

адекватный бы уже давно все нагуглил и сидел бы hello world'ы писал.

А этот по скайпам ошивается.

zgen ★★★★★
()
Ответ на: комментарий от zgen

Один пример — хорошо. Но мало. Не тянет на тенденцию. Не внушает.

Хотя для того, чтобы новичка пугануть, вполне сойдёт. :)

DeVliegendeHollander ★★
()
Ответ на: комментарий от zgen

адекватный бы уже давно все нагуглил и сидел бы hello world'ы писал.

систематизированное обучение продуктивнее хеллоуворлдов.

mono ★★★★★
()
Ответ на: комментарий от zgen

ты это с позиции человека, который знает что искать, потому что представляет область. Тут дело другое, тут известен только результат и какие-то сервисные вещи (например, сценаристы правят XML), а как что делать - тайна, покрытая мраком. Например, есть лекции MIT, но они рассчитаны на то, что поддержаны кучей параллельных дисциплин, человеку «мимо проходил» они покажутся непонятным набором слов.

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от DeVliegendeHollander

А чего «сегодня»? Ещё более непонятно.

Смотри соседние темы в толксах на предмет сегодняшних праздников.

gnu-eabi
()

пусть вдоль делает.

Или самостоятельно ботанит всё, чему учат в университете на программерской специальности

Harald ★★★★★
()
Ответ на: комментарий от Harald

Или самостоятельно ботанит всё, чему учат в университете на программерской специальности

окей, и где это взять в структурированном осмысленном виде?

(наверное, ты имел в виду ПТУ? В университете не учат коммерческому программированию под веб)

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от stevejobs

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

Область в любом случае представлять (как минимум) придётся. Без этого никак.

человеку «мимо проходил»

Вот пусть «мимо и проходит». Здесь советовали «вдоль», но это слишком уж жёстко. А если есть некоторое желание «попрограммить», то неизбежно в какие-то лекции (MIT или ещё что-то подобное) залезть придётся.

Такое моё некомпетентное мнение.

DeVliegendeHollander ★★
()
Ответ на: комментарий от quiet_readonly

Code Complete

КГ/АМ этот ваш Code Complete. Куча очевидностей и воды на 1000 страниц.

Сомневаюсь что такая книга может заинтересовать человека незнакомого с программированием.

Redrum
()
Ответ на: комментарий от Redrum

Да нет, отчего же? Если не полениться и сделать кратенький конспект этого Code Complete, то вполне полезная брошюрка получится, страничек на 5-7. :)

Вот только для новичка такая брошюрка вряд ли подойдёт.

DeVliegendeHollander ★★
()
Последнее исправление: DeVliegendeHollander (всего исправлений: 1)
Ответ на: комментарий от stevejobs

нет, не ПТУ.

В структурированном виде приблизительно так: матан, линейная алгебра, аналитическая геометрия, дискретная математика,теория вероятностей и мат. статистика, теория алгоритмов, структуры и алгоритмы обработки данных, вычислительная математика, архитектура ЭВМ, теория реляционных баз данных, структурное программирование, ООП, функциональное программирование.

Это всё по минимуму. :)

После чего можно будет и программирование под веб изучать. Так и передай своему знакомому

Harald ★★★★★
()
Ответ на: комментарий от DeVliegendeHollander

Область в любом случае представлять (как минимум) придётся

MITовские лекции дают область?

На лекции по алгоритмам считают их сложность. Но при этом никто не объясняет, как эту сложность считать. Оно и не надо, потому что оно есть в поддерживающем курсе. Кроме того, не факт, что оно действительно нужно на практике, достаточно знать что вот эта сортировочка быстрая, а вот эта - медленная, а почему - ну и леший с ним, если для этого придется учить матан. Но погляди на это глазами «мимо проходил» - целый зал людей сидит и понимающе кивает головами на какое-то рассуждение, которое для тебя максимум - последовательность непонятных звуков.

вот неплохо бы такой «клей» иметь.

для JavaEE, например, есть Job Interview Handbook, но это несколько другой уровень, не новичковый.

я видел пару книжек с клеем для программирования под iOS, но они страдают тем, что это - никому не нужная iOS :) Там своя замкнутая инфраструктура, которая для написания жабных веб-серверов не особенно поможет...

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от Harald

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

stevejobs ★★★★☆
() автор топика

На просьбу показать компьютер, он уверенно тычет пальцем в монитор или все-таки в системный блок?

Vit ★★★★★
()
Ответ на: комментарий от stevejobs

Дык ему программировать или быдлокодить за деньги? Для быдлокодинга надо осваивать гугл с копипастом, и 1С с Битриксом.

Vit ★★★★★
()

на курсах его научат сортировать методом говняшки и прочим быдлокодерским штучкам

я много раз видел код людей которые начинали программировать не с того конца - это пипец, и самое хреновое что их потом не преучить, только в гумнус и выращивать заново

современному програмисту нужно знать не то как компик переставляет биты (это он потом узнает если понадобится), а системному подходу к проектированию - примитивно: почему это нужно делать тут, а вот такие входные данные должны выбрасывать ошибку а не проглатываться кодом с причмокиванием

но таких курсов нет

Deleted
()
Ответ на: комментарий от stevejobs

наверное, не знают. И половину интернета они не написали

Harald ★★★★★
()
Ответ на: комментарий от Deleted

да, одна тонкость: если нужна быстрая разработка (RAD) типа накидал кнопочек на формочек, сваял базу приклеил дизайн и забыл - то нужно знать только конкретные технологии, и более ничего

Deleted
()
Ответ на: комментарий от Vit

Компьютером пользуется ОК, линуксом пользуется ОК, умеет править стандартные форматы конфигов и чинить html/css, умеет системы контроля версий, виртуозно рисует в убогих графических редакторах (тм), соображает в эргономике (одна из бывших специальностей - рисовать макеты UI и user flow). Но все это на юзерском уровне, как и почему оно работает - не знает.

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от stevejobs

MITовские лекции я просто для примера упомянул. Но вообще говоря, на универовские курсы мимо проходящему вообще сложно ориентироваться, именно из-за того, о чём ты сам сказал (мат.подготовка нужна).

Я, конечно, специально эту проблему не исследовал, но в 1980-90-е годы выпускались некоторые книжки, в которых более популярно (без особой «математики») излагались основы программирования на конкретных языках. Например, был Стивен Прата (по программированию на Си). Было что-то ещё. Освоивший эти книжки (с выполнением примеров и задач) программистом не становился, но общее представление получал.

Да собственно та же K&R тоже для «проходящего» подойдёт. При условии, что некоторые вопросы он сможет задать, ну, тебе, например. :) И при втором условии, что он в адресную арифметику (указатели и т.п.) не полезет.

Было ещё что-то по басику для «непрограммистов», но басик это уж совсем бяка, это я бы не стал советовать даже врагам. :)

DeVliegendeHollander ★★
()
Ответ на: комментарий от Deleted

современному програмисту нужно знать не то как компик переставляет биты (это он потом узнает если понадобится), а системному подходу к проектированию - примитивно: почему это нужно делать тут, а вот такие входные данные должны выбрасывать ошибку а не проглатываться кодом с причмокиванием

да, вот это надо

но таких курсов нет

печаль :(

stevejobs ★★★★☆
() автор топика

Стив Макконнелл, «Совершенный код» пусть начинает читать.

iZEN ★★★★★
()
Ответ на: комментарий от stevejobs

да, вот это надо

что-то мне подсказывает что это из разряда системного анализа, но вменяемых материалов по сей дисциплине я не знаю.

Deleted
()
Ответ на: комментарий от Deleted

Опять же, в 1990-х встречалась переводная книжка по-моему «Основы системного анализа» (или просто «Системный анализ», не помню), но после этого ничего подобного не встречал. Предполагаю причины отсутствия подобных материалов: «не модно, спросу нету, трудно осваивается, зачем оно вообще нужно» и т.п.

DeVliegendeHollander ★★
()
Ответ на: комментарий от DeVliegendeHollander

ну кабы таких вещей и у буржуев немного, чаще фигня типа паттернов проектирования (полезная конечно но обычно как макаке очки)

ха что я нашел http://www.isa.ru/ : Институт системного анализа РАН входит в состав Отделения нанотехнологий и информационных технологий Российской академии наук.

Deleted
()
Ответ на: комментарий от Deleted

Посмотрел. На всякий случай — в закладки. Но мне не очень понравилась какая-то направленность в сторону «народного хозяйства». Не оказалось бы это псевдонаучной пустышкой, в которой собирают с потолка некую псевдостатистику и на её основе выдают «важные системные экономические решения». Вжопу их, таких «системников».

Наверное, всё-таки надо на инглише искать.

DeVliegendeHollander ★★
()
Ответ на: комментарий от DeVliegendeHollander

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

Deleted
()

Самый эффективный способ: пойти куда-нибудь подмастерьем, если тимлид-куратор будет грамотный, да и сам человек будет стремиться, то всё достаточно быстро получится. Если такой возможности нет, то придумывать самому себе какие писать игрушки от малого к большому. Начинать с костей и дурака, продолжать нетволком, и кто знает чем закончить.

Синтаксис изучается по первой попавшейся книге.

Если хочется больше вникать в грамотную архитектуру по пути читать Фаулера, stackoverflow, github и гуглодоки по андроиду на ночь.

C1nde
()
Ответ на: комментарий от C1nde

Блин, пора уже выпускать иконы Фаулера.

Deleted
()
Ответ на: комментарий от stevejobs

По части системного подхода мне в свое время помогли вот эти вещи:

Steve Mc.Connel «Code compleete», «Rapid development»
и кем-то отксереная «методика разработки программных продуктов» Коттона-Йордона

А так, раз он «уверенный юзер» - по-моему в любом учебнике языка есть примеры. В т.ч. сортировки пузырьком.

Vit ★★★★★
()

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

Брукса «Месяц», Стивенсона «Вначале была командная строка» - а там как попрет!

slackwarrior ★★★★★
()

Мартин Гарднер = что угодно.

Смалиан как же называется эта книга

Смалиан принцесса или тигр.

это очень пригодится.

qulinxao ★★☆
()
Ответ на: комментарий от stevejobs

те которые без высшего , либо плодят код аки на конвеере , либо учитывая какая там конкуренция и бангладеш и офигеное основвание пирамиды айти , то те кто профильтровался на уровень офшорного прогерства либо ломовые кодеры либо врождённо способные и в отсутсвии браминского высшего образования способны на коленке переоткрывать велосипеды - эффект напоминающий когда в безграмотную деревню приходит всеобуч - даже никакущие учителя продуцируют очень граммотных( их 1 на 100 но.)

qulinxao ★★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.