Comments 46
На мой взгляд, это скорее введение в ООП чем в программирование в общем. Я бы все же посоветовал на время отложить ООП и взять старый добрый QBasic.
И кстати, для того что бы начать программировать, есть неплохая серия книг «Занимательное программирование»
Это все-же перевод и я в названии статьи старался быть ближе к оригиналу (FUNDAMENTALS OF CODING). Спасибо за совет с книгами, уже нашел.
Эдсгер Дейкстра бы с вами не согласился :) Basic — далеко не лучший язык для обучения программированию, особенно его реализация более чем двадцатилетней давности. Те же Ruby, Python или C# отлично подходят для введения начинающих в курс дела.
Вов, извини, но совет с бейсиком ужасен.
Намного полезнее с самого начала обучения программированию давать знания ООП. Чтобы мозги сразу в верном направлении развивались. Это не так уж и сложно, но зато впоследствии человек 100% много раз спасибо скажет)
А вы уверены, что девушку, которая сознательно (?) выбрала экономическую специальность, может и не стоит вовсе тащить в ит против ее воли?

А сама статья, как уже писали выше, таки больше про ООП, чем про программирование.
Просто немного заголовок расходиться с содержанием, а вообще в конце статьи есть такое:
Благодарю за внимание, искренне надеюсь что эта чудесная статья поможет начинающим в понимании 3-х краеугольных камней ООП.


Ну и в принципе чего придираться к заголовкам то? ООП это один из стилей программирования.
Может и не стоит. Но в моей стране разница в зарплатах выпускника IT-специализированного ВУЗа и выпускника экономического — слишком существенная. Да к тому-же главное — это разбить стереотипы. И мне легче будет жить, т.к. она будет понимать чем я так увлечен, и ей в тестировании пригодится.
А сама девушка-то согласна с вашими попытками переквалифицировать ее в программиста?
Для достижения взаимопонимания есть более простые методы :)
Согласна… Если она встречается с айтишником, работает в айти-компании, общается с айтишниками… то скорее всего ей стоит быть айтишником =)
Я смею заметить, что это не более чем юмор. Никакого морального давления и тем более ущерба девушке причинено не было :)
Не кладите все свои яйца в одну корзину, если так можно выразиться.
Не знаю, что у вас за страна :) В моей стране платят не за диплом, а за знания. Причем хороший специалист в любой области получает достойную зарплату, экономисты — не исключение.

Случаи, конечно, разные бывают, но мне кажется, что вероятность успеха в деле, в котором не увлечен весьма мала. А насколько я знаю, увлечение ИТ появляется не в институтском возрасте, по крайней мере так было со всеми моими знакомыми айтишниками.
>> Не знаю, что у вас за страна :) В моей стране платят не за диплом, а за знания. Причем хороший специалист в любой области получает достойную зарплату, экономисты — не исключение.

Выйдите за МКАД — будете весьма удивлены.
Во многих городах есть потолок зарплаты вне зависимости от уровня специалиста. Если хочешь выше — только менять город.
В моем городе (второй по величине в стране) это где-то 30 тыс. руб. (IT это в меньшей степени касается, но все-равно есть).
Тогда нужно выходить за пределы страны, в вашем случае, верно? Потому как в других городах России тоже платят за знания, а не диплом. Более того, сотрудников очень сильно не хватает.
Программисту легко показать свои знания и опыт: готовые проекты, вклад в open source и т.д.

Как стать таким «опытным и знающим» экономисту без диплома? Общался с человеком, который учится на экономиста, и он твёрдо убеждён, что без диплома в крупную компанию не попасть. Я спорить не стал, область другая всё-таки. Но ваше мнение мне интересно. Как экономисту жить без диплома?
UFO landed and left these words here
Этот пример основан на американских реалиях.
Знак стоп у них устанавливают на пересечении второстепенных дорог. Ты должен остановиться, посмотреть по сторонам, и если никого нету ехать дальше.
Цель может и одна, но вот встречается у них он на каждом углу, а у нас стоит где-нибудь возле ж/д путей, по которым уже лет 10 никто не проезжал.
UFO landed and left these words here
По вашей логике, когда вы останавливаетесь на светофоре в среднем ряду (едем вперед) за другой машиной, то после того как загорится зеленый нужно будет вызвать startCar() — вопрос: нафига тогда смотреть направо/налево?

Имхо: не надо засовывать lookLeft/lookRight в startCar().
UFO landed and left these words here
Лично я считаю наилучшим введением в программирование книгу «Занимательное программирование» М.Мозгового, несмотря на то, что она ориентирована на делфи. Я многим обязан этой книге и рекомендую ее начинающим.
Если это дать читать человеку, то вряд ли он возгорит желанием разбираться в алгоритмике в целом и в программировании в частности. Тем более человек, у которого мозги устроены на экономику, юристпруденцию и далее. Это так же как мне давать читать свод законом и говорить — ну тут же все понятно, смысл ясен и т.д.
Я вот изучил QBasic в коле еще до того как у нас информатика началась. Мне было интересно нарисовать на мониторе круг, квадрат, радугу. ZX Spectrum, эта пластмассовая коробочка, вдруг превращалсь в реального исполнителя желаний — надо было только знать как попросить.
Вот и тут, тем более девушке, надо что-то попроще, попонятнее, повиазулизированнее. Ну, я не знаю, написать скрипт для запуска браузера, открытия одноклассников и ввода логина/пароля. Запуск с одного одного ярлычка — и все готово. Это удобно и это интересно. Надо начинать с чего-то что интересного и простого, но которое приносило бы визульную пользу сразу )))
while( x < 5,000,000,000 ){

Может быть, вы имели в виду 2,000,000,000, ну или на крайний случай 4,000,000,000?
Далеко не во всех языках программирования и не на всех процессорах основной тип — это 64-битное число.
Не сочтите, что я пытаюсь вам указывать, но меня огорчает что мало кто читает пост перед тем как писать комментарий, но если даже не читаете, то обратите внимание на то что топик находится в хабе «Переводы». Я как минимум об этом писал в начале и в конце поста. Я мог бы добавить отсебятины, заменить иллюстрации, примеры кода, но тогда бы это уже был не перевод, верно? Спасибо.
Отвечаю — последние несколько месяцев я, сам начинающий программист, активно пытаюсь переквалифицировать свою девушку из ее никому не нужной не перспективной экономической специальности в нашу развивающуюся IT-сферу.


Пожалуйста, не надо никому мировозрение менять: если сама не пришла к этому, то и не надо. А то будут потом примеры ее кода с пометкой «Гов**код» постить на хабре!!! Если так уж хотите в IT ее направить, то можно и с ее образованием в околоорбитное пространство занести: менеджерить стартапы или что-нибудь еще… Но программирование давайте оставим программистам
Была тут недавно статья на хабре, о том, что стоило бы людям нашей сфере, более толерантно относится друг к другу. Вы наверное ее не читали… но все-же, не стоит так сильно беспокоится. Я думаю что ей, как тестировщику, навык написания скриптов всегда будет кстати. Нет, вы конечно вправе считать что и скрипты для тестов должны писать ТРУ-программисты, но я, увы так не считаю. Тестировщик должен уметь писать скрипты. Если честно, то в процессе написания этого поста, я не ожидал, что 80% внимания будет уделяться не самому переводу, а тому, что я помогаю своей девушке. В общем я не думаю, что пару строк скриптового «говнокода» представляют серьезную угрозу вашему хлебу.
Я сильно не беспокоюсь, просто слишком много знаков припинания ненужны ставлю, а другие мою манеру по другому воспринимают. В Вы, Ankane, про то, что девушка тестировщиком работает, сразу не упомянули, а сказали только про экономическую специальность! Вот я и отговариваю.
Про хлеб я вообще не волнуюсь — его хватит, а вот когда пишут код люди для этого изначально не приспособленные (а такие, поверьте, бывают в большом количестве) то получается не очень хорошо.
А чем не хорошо то? Вот напишу я плохой код и что? Если для себя, то кому какое дело? Если на форуме выложу, так пройдите мимо.
А если на работе, так пусть работодатель оценивает меня, подхожу я ему с таким кодом или нет.

Я это так вижу.
В принципе, Вы правы. Если — то да.
Только мой опыт (не бог весть какой богатый) подсказывает, что код сугубо для себя народ пишет не так часто (обычно перестает, как начинает кодом зарабатывать). Форумы меня тоже не беспокоят.
А вот если на работе, то с высокой вероятностью, плохой код оценят уже пост-фактум: тогда когда кому-то придется его переделывать.
Так это вижу я.
Может девушка найдёт успешное применение полученным знаниям и навыкам в своей области, что вы так злитесь? :) Нельзя же себя ограничивать. Больше знаешь, больше можешь комбинировать.
Опять же — я плохо выразил мысль: я не злюсь — по крайней мере меня это не коснется. Я не против самоучек.
Но я против того, чтобы человека уговаривали, если в нем это желание не открылось само — а я так понял, что его не было, если она считает что код это скучно и нудно.
Я как недавно начавший программист, могу сказать, что эта статья мне мало бы помогла в начинаниях. Ибо в ней уже используются такие слова, которых простой смертный человек, который не знает про программирование ничего — не сможет «вкурить» в тему, заданную автором. Как было уже написано, это скорее ввод в ООП чем в собственно, программирование. Тем паче, что статья сильно маленькая (читай недостаточно примеров) для того, чтобы человек смог вникнуть в тему. Думаю, что аргумент: «а большего размера никто не захочет читать» не имеет под собой основания, потому что тот кто хочет научиться программировать должен перелопатить такую кучу литературы в своём нелёгком пути, что просто не передать. Для этого нужен как минимум цикл статей, а лучше — книга. И начинаться она должна с объяснения что такое программирование.
Хотя сама по себе статья хорошая, и скорее всего кому-то она может пригодиться.
Та книга из «Head First», которую я читал, а именно эта, не стоит времени на неё потраченного, там всё весело и прикольно, но объясняют плохо. В принципе, там написано, что не для начинающих книга печаталась… тогда какой же это «Head First».
Кстати, отлично разжёвано введение в ООП (как в переводе, так и в оригинале) для начинающих программеров.
С позиций «много-много» лет формального и неформального преподавания и обучения основам программирования (больше «с прицелом» на обработку данных), и консультаций начинающим на разных платформах и языках…

Все дело в человеке.

Самое забавное из опыта — на уровень АйТи (в Хабрахабровском понимании) выходят те, кого… по больщому счету и учить не надо.

Одних не научишь, потому что у них «мозги по другому сделаны».
Другие и «сами с усами», т.е. в принципе и без тебя бы обошлись, но раз ты уж тут подвернулся…

Хорошая умная книга/статья может сильно облегчить «вхождение». Я всегда рекомендую завести себе «библию» — что-нить из толстых книг по теме, которую собрался «грызть».

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

Для формального общего курса введения в программирование я, наверное, сейчас выбрал бы Питон.

Для подготовки пользователей (например — по обработке данных) лучше работать на одной из тематических платформ (мой выбор сейчас — R), но нужно непрестанно «проводить нить» просвещения по вопросам АйТи внутри этого тематического курса.

Статьи, подобные переведенной нужны, чаще, самим писателям, но и вполне приличный объект для «поговорить». На учебное пособие вряд ли тянет.
В Руби — эх, даже читать не хочется, нет бы посвятить ее (девушку) в таинства адресной арифметики, кучи и стека, показать ей как процессор манипулирует регистрами, ну нет — абстрактное скриптование, я не то чтобы против, но ктото-же пишет интерпретаторы.
Согласен. Надо учить людей не тормозить на виртуальных машинах, а использовать возможности компьютера по полной.
Only those users with full accounts are able to leave comments. Log in, please.