Як мені здається, цей матеріал у цій іншій статті трішки сприймав елітарність. Так, я часто рекомендую SICP серйозним розробникам, які дійсно хочуть оздоровитись, але тільки тим, хто хоче вийти за рамки «норми» та вивчити глибоку магію. Дійсно, протягом багатьох років SICP був стандартним текстом програмування першокурсника MIT; але багато твердих робочих програмістів ніколи не мали можливості відвідувати цей прекрасний, але дорогий і дуже вибірковий заклад.
Так що ж я рекомендую, у відповідь на ваше запитання? Почніть з того, що у вас є, і навчіться мислити як програміст, а не просто вивчайте якусь конкретну мову.
Якщо у вас є доступна реалізація C #, я можу вам сказати, що це абсолютно чудова мова для працюючих жорстких, як я - як Java, JavaScript, Python, Ruby, Scala, Scheme та багато інших мов, якими я володію навчилися роками. Врешті-решт я намагаюся вибрати потрібні мови та інструменти для конкретної роботи, і це означає, що перемикання мов, як капелюхи.
Немає нічого поганого в тому, щоб використовувати цікаві способи навчання, як-от наблизитись до Рубі через Покірний путівник та взуття Why (як я рекомендував в іншій останній публікації ). Існують таємні та містичні шляхи, такі як удари головою проти Маленького Шемера та Досвідченого Шемера на шляху до SICP . Багато сучасних мислителів могли б пропустити все те, що старіші академічні та «підприємницькі» речі, і замість цього зануритися безпосередньо в JavaScript, JQuery та HTML5. Є багато способів почати роботу, тому не витрачайте занадто багато часу. Просто виберіть один і отримайте кодування!
Реально я вважаю, що небагато працюючих професіоналів сьогодні відправить вас назад, щоб вивчити Assembler або C / C ++. Відверто кажучи, якби вони це зробили, я не вірю, що вони б тобі велику послугу зробили.
Отже, щоб трохи прикрасити "почніть з того, що у вас є", у мене є ще три поради:
- Виберіть одну мову програмування, яка вам здається класною, і один підхід до навчання, який, здається, має сенс і дайте їм усе своє. Станьте грамотними на обраній вами мові; читайте стільки хорошого коду, скільки зможете керувати!
- Поставте руки на клавіатуру відразу і починайте кодувати, коли ви дізнаєтесь. Виконайте всі елементарні вправи в своїх книгах з програмування самостійно і виконайте всі підручники, які ви можете знайти, пальцями щасливо клацнувши, щоб вони справді працювали. Ви будете здивовані тим, скільки навичок ви отримаєте під час виправлення помилок у демонстраціях, які повинні бути робочим кодом, але ні!
- Витратьте більшу частину своїх зусиль на те, щоб дізнатися, як хороші програмісти думають про себе через проблеми. Дізнайтеся, як аналізувати та розкладати складні проблеми та системи, розбиваючи їх, поки ви їх справді не зрозумієте. Потім навчіться синтезувати та проектувати автоматизовані рішення, будуючи їх так, щоб вони полегшили деяке завдання для деяких людей на цій планеті.
Я почав з FORTRAN IV і QBASIC, і якщо вони не зіпсували мене, C # теж не зашкодить вам! Удачі та переконайтеся, що ви веселитесь під час навчання!