Авторские статьи Как стать программистом

Discussion in 'Статьи' started by nerezus, 7 May 2007.

  1. Qwazar

    Qwazar Elder - Старейшина

    Joined:
    2 Jun 2005
    Messages:
    989
    Likes Received:
    904
    Reputations:
    587
    Хз, я пока на вскидку только GameDev могу представить без использования БД. Я же второй вариант расписал для тех, кто хочет быстро начать работать, имхо знание БД очень поможет при принятии на работу и в той или иной степени понадобится.
     
  2. ~Hidrag~

    ~Hidrag~ Member

    Joined:
    7 Dec 2006
    Messages:
    19
    Likes Received:
    17
    Reputations:
    28
    2podkashey Да, пожалуй я неправильно выразился. Я имел ввиду не задумываешся не над задачей а над реализацией. Есстественно перед реализацией все обсасывается что и как, пишутся функционалбные требования и тз. Я имел ввиду предпоследнюю стадию - кодинг. Когда просто садишся и пишешь.
     
  3. Fen-Omen

    Fen-Omen Elder - Старейшина

    Joined:
    22 Mar 2007
    Messages:
    60
    Likes Received:
    88
    Reputations:
    60
    "монопенисуально".... Ловко выразился:) Статья будет полезная...
     
  4. Red_Red1

    Red_Red1 Banned

    Joined:
    12 Jan 2007
    Messages:
    246
    Likes Received:
    258
    Reputations:
    83
    Не сочтите пост за поднятие не новой темы с целью накрутки счетчика сообщений. Очень зацепила меня эта тема. Особенно спор о том, что важнее знание языка или умение составлять алгоритмы, а так же о том какой язык лучше. Мое мнение спор не должен возникать вообще. Как можно разделять эти два момента в программировании? Как можно решить задачу без самого решения (без алгоритма, без правильного алгоритма), с другой стороны что можно сделать имея решение (алгоритм) и не умея его реализовать, т.е. не зная языка либо плохо зная язык?
    Как мы знаем для реализации разных задач, используют разные языки. Желательно чтобы язык соответствовал поставленной цели. Говорить что бейсик тупиковая ветвь навязанная Майкрософтом не совсем корректно если нужно решить проблему например с сортировкой строк в среде Майкрософт офис, VBA прекрасно с этим справиться, так нафига сюда прикручивать асм (хотя наверное можно). Мой учитель (карате) однажды ответил на мой вопрос о том какой стиль лучше такими словами «Побеждает не стиль, побеждает мастер». И он прав нужно быть мастером и задача будет решена с максимальной эффективностью. Ну такие варианты уже для профи, который умеет выбирать инструмент (язык) в зависимости от цели, и при этом прекрасно владеет любым инструментом или быстро его осваивает. Но т.к. статья о том как стать программистом и описывает с чего начать, то тут мое мнение такое. Нужно брать универсальный язык (например - паскаль или его реализация в виде Дельфи. Я сам начинал с qbaсik и он мне не очень пришелся по вкусу так как многие рутинные задачи приходилось делать через ж…) он даст возможность при написании простой программы четко видеть алгоритм, но в тоже время достаточно мощный чтобы можно было делать серьезные разработки в реализации которых без глубоких знаний языка не обойтись. А потом уже все зависит от профиля программиста или решаемой задачи. Когда есть маленький опыт (или большой :) ) уже гораздо легче разобраться с новым языком если это необходимо для поставленной цели. Если вы хотите писать веб-приложение то вам к PHP, Javascript, HTML (хоть ХТМЛ и не язык программирования) и др. А если вы пишите драйвер под новое разработанное вами внешнее устройство на микроконтроллерах (друг помешан на этом), то без ассемблера вам не обойтись, и причем нужно очень глубокое знание языка чтобы и драйвер был рабочим и что бы программа микроконтроллера была не большой т.к. большая просто не влазит в память.
    И еще согласен с автором что нужна практика, на голой теории далеко не уедешь, причем нужно решение реальных задач. Я когда садился за ПХП попался на такой штуке: накачал учебников, купил книгу, начитался этого всего, попробовал написать код – ура получается, а потом облом стал в том, что не было конкретной практической задачки. Я полез на сайты фрилансеров, но с моим опытом даже не понял предлагаемой работы. Тогда на помощь пришел друг. Ему нужен был сайт и к нему система управления контентом, вот он мне и ставил задачки, а я пытался их реализовывать на ПХП. Опыт стал заметно расти. (Кстати после изучения основ ПХП, а к нему и мускула, 90% вопросов о скуль-иньекции отпала сама собой так как был понят механизм ее действия. Это я к тому что вы Уважаемые ГУРУ хакеры потому что знаете не только то что НАДО подставить кавычку, а и то ПОЧЕМУ НАДО поставить кавычку, о чем пытаетесь и рассказать нам новичкам. Правда иногда бестолку – «Вот научите меня ламать, чо вы прячете программы и секреты как сломать форум»).

    Как подтверждение вышеизложенного хочу поделиться одной задачкой которую я решал в универе. Задача чисто тренировочная и не стоила бы внимания, но у меня с ней произошел интересный случай. Мы решали эту задачу группой на паре. Я у доски разжевывал алгоритм менее заинтересованным в программировании одногруппникам, преподаватель слушала все это с радостной улыбкой на лице (ну хоть кто-то понимает). Задача была решена. Быстренько написана на Паскале и переписана остальными. Листинг был где-то на полторы страницы, в котором четко виден алгоритм какой мы придумали у доски. Пара закончена. А вечерком мы с одногрупником (таким же повернутым на компах) засели за нее еще раз, т.к. пару он прогулял, а я рассказал ему о своем «великом» решении на практической.
    Он в это время возился на асме с битами, байтами, ксорами и прочей низкоуровневой лабудой. Так вот он (наверное зациклившись на этой теме) предложил решение задачи основанное на том же алгоритме но была совсем другая реализация на том же языке Паскаль. Через пол часа мы таки выписали решение которое занимало ЧЕТЫРЕ строчки (не считая begin, end), а еще через минут десять осталось ДВЕ строчки (не считая begin, end). В такой форме задачку и алгоритм заложенный в ней было узнать непросто.
    Я повторюсь и в том и в другом случае использовался один язык – Паскаль 7.0.
    Решение мы на следующий день показали преподу и… больше на пары не ходили.
    Так вот этот пример мне показал насколько важно знание языка. Решения и в первом и во втором случае базировались на одном алгоритме, но его (алгоритма) реализации на языке отличались глобально. Вывод алгоритм необходим для решения, но владение инструментом (в данном случае языком программирования) на более высоком уровне приводит к более эффективной реализации алгоритма. (Для нас эффект состоял еще и в том что на пары мы могли больше не приходить :) ).

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

    З.Ы. Кому интересно задачка такая.
    На крыше дома, в центре, сидит крыса. На одном из углов крыши появляется кот. Крыса спасаясь от кота бежит в противоположный угол. Смотрит вниз, если внизу есть кот (второй кот), то крыса бежит к соседнему углу (любому) по краю крыши и спускается вниз убегая от котов. Найти маршрут крысы зная расположение двух котов.
    Форма дома представляет собой куб вершины которого пронумерованы. Входные данные - номера вершин где расположены коты. Выходные - номера вершин по которым пробежит крыса.
    Попробуйте решить эту задачку на паскале в две строчки. Я имею ввиду не кучу операторов записанных в одну длииинную строку.
    Ассемблерщики наверное так и решали бы, они наверное не смогут изобрести длинное решение. :)
     
    6 people like this.
  5. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    Но это верно. Простой довод: смотри дату последнего релиза.

    Универсальный язык - это C(с кусочками асма). Или даже чистый асм. Ну возможно и C++. Остальные языки обладают ограничениями. Но я бы не советовал с этих начинать.

    Что касается программирования, то еще раз напишу про главное заблуждение: знать я зык и уметь составлять алгоритмы достаточно, чтобы быть программистом.
    Так вот, этого нихрена не достаточно. Но необходимо.
     
  6. Red_Red1

    Red_Red1 Banned

    Joined:
    12 Jan 2007
    Messages:
    246
    Likes Received:
    258
    Reputations:
    83
    Полностью согласен, я например остановился на НЕОБХОДИМОМ этапе, но очень четко понимаю что этого НЕ ДОСТАТОЧНО!
    И вообще можно видеть и уметь держать карандаш в руках, но при этом не обязательно что ты будешь новым Микелянджело :)
     
  7. Vorlan

    Vorlan Elder - Старейшина

    Joined:
    9 Jun 2007
    Messages:
    29
    Likes Received:
    6
    Reputations:
    0
    Я считаю. что нужно знать все и синтаксис и уметь строить алгоритмы, все нужно. Насчет языка, у всех есть свои плюсы и минусы, с этим ничего не поделаешь, но можно знать много по чуть-чуть или один, но так что другие уже не нужны, ты можешь все реализовать в одном.
     
  8. Bert_HoL

    Bert_HoL New Member

    Joined:
    1 Sep 2007
    Messages:
    8
    Likes Received:
    2
    Reputations:
    0
    Блин а я вобще к сожалению тупой,поступил на программиста,и уже на втором курсе,щитаюсь в группе самый продвинутый,но почитав ваши фразы я понял какие должно быть тупунки в нашей группе,сколько в инет искал полезной инфы для начинающего,пишут или всякий бред что бы поиздеваться или всяким замудрёным языком,если кто небудь мог бы помочь ЛАМЕРУ типо меня я был бы очень признателен и поклонялся бы этому гуру )))
     
    #28 Bert_HoL, 3 Sep 2007
    Last edited by a moderator: 3 Sep 2007
    1 person likes this.
  9. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    Помочь можешь тут только ты себе сам
     
  10. Bert_HoL

    Bert_HoL New Member

    Joined:
    1 Sep 2007
    Messages:
    8
    Likes Received:
    2
    Reputations:
    0
    Конечно же ты прав,у всех и так хвотает своих забот,но мне бы просто указали напровления нужной дороги и я был бы доволен
     
  11. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    Bert_HoL
    вот тут ОЧЕНЬ много всего интересного
    http://forum.antichat.ru/forum31.html

    ЗЫ у меня +1 одепт =Р
     
  12. temp_late

    temp_late Banned

    Joined:
    22 Aug 2006
    Messages:
    47
    Likes Received:
    7
    Reputations:
    2
    Заваливать телок используя гитару, это садизм..
    Играть музыку ради полового акта, такое в мире животных актуально, я думаю человек должен быть выше этого..

    То что выше это описание плохого программиста...
    Пойже.. чуть ниже, сначало мое мнение о статье:

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

    Целью стать программистом, у когждаго разные понятия, кто думает это стать мультихакером, кто то большие заработки, представить что стать программистом просто так от души мало кто поверит, это редкость, но бывает и такое... Вспомните писателей Пушкина он разве писал стихи ради денег? Ради популярности? Он писал потому что был душевный порыв, быть программистом - это быть человек тянущейся к творчеству.

    Стать программистом, сложно но освоить навыки программирования может каждый! Просто так писать программы не гоже и не интересно. Нужно задаться целью. Это нужно для того что бы изучать язык был стимул, было то что тебя подгоняло когда появлялись моменты остановиться и все бросить. Наверняка ты работаешь под Операционкой Windows, а быть программистом ты представляешь как создавать exe файлы. Пусть будет так, начни изучать компилятор Дефи, там легко создашь что надо, да и с литературой много проблемм не будет испытывать. Что касаеться языка php то это язык исключительно для веб технологий и создать на нем файл с раширением exe ты никогда не сможешь. Он обрабатывает какието данные и возращает результата с возможностью перемешать с html разметкой, результат отображаеться в твоем браузере.

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

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

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

    Ну прям мою судьбу описал, принимайте новую еденицу, смешно...
     
    2 people like this.
  13. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    я сначала написал «иди в хyй», но потом стер, т.к. это слишком грубо =(

    см. выше =]
    P.S. http://hunger.ru/php2exe

    эээ?
     
  14. Bert_HoL

    Bert_HoL New Member

    Joined:
    1 Sep 2007
    Messages:
    8
    Likes Received:
    2
    Reputations:
    0
    Млин я уже самостоятельно изучил HTML и даже написал сайт для игры,вот с php напряг,чёт сколько литературы не пересмотрел многое не понятно,щя начал БЕЙСИК осваевать.Проблема не в том что/Как стать програмистом?/в том что я хотел что бы мне указали правильную дверь,что бы потом не возврощяться с ошибочной двери,одним слово скажите какой язык начать изучать первым,и вот что мне всего то надо )))Если не затрудняет ответе мне пожалуйста общедоступным для лаймера языком)))Буду весьма блогадарен!
     
  15. iv.

    iv. Elder - Старейшина

    Joined:
    21 Mar 2007
    Messages:
    1,183
    Likes Received:
    438
    Reputations:
    107
    Математику изучай. Алгоритмы. Иначе вырастет из тебя ещё один горе прогер.
     
  16. LolFEm

    LolFEm Elder - Старейшина

    Joined:
    8 Sep 2006
    Messages:
    160
    Likes Received:
    52
    Reputations:
    5

    ммм... в чем логика твоя связывания знаний математики и программирования?

    должна быть цель... ну и не /dev/null в голове.... тогда можно что то делать)
     
  17. Bert_HoL

    Bert_HoL New Member

    Joined:
    1 Sep 2007
    Messages:
    8
    Likes Received:
    2
    Reputations:
    0
    Блин мужики ,так и знал что вы так ответите)))Я понемаю что вам уже надоело отвечать на эти они и тоже вопросы,но прочитав ответы на этот вопрос визде виджу одно и тоже/Первый говорит учите С++ и чё там ещё/Следуйщий говорит/С++ вам пока не надо учите Бейсик,он для начало простинкий,и вам пойдё,третий пишет/Вам это всё не надо,вам нужно сперва освоить Php и Html а потом вы легко ведете и в С++ и.т.д///И так везде,не где нету конкретного ответа на конкрено поставленый вопрос,а если есть, то следуйщий пост тут же тебя переубеждает что надо учить совершенно другое ^_^ просто кто нить скажите вот вы что первое изучали?И Я ОТСТАНУ ОТ ВАС )))


    ///Математику изучай. Алгоритмы. Иначе вырастет из тебя ещё один горе прогер///
    Не поверишь у меня 5по алгебре,а вот алгоритмы надо поизучать получше )))

    /Спасибо всем кто хоть что нибудь да подсказал/
     
  18. iv.

    iv. Elder - Старейшина

    Joined:
    21 Mar 2007
    Messages:
    1,183
    Likes Received:
    438
    Reputations:
    107
    Если для тебя программирование - это накидать объектов на формочку, то конечно же связи никакой.
     
    1 person likes this.
  19. Red_Red1

    Red_Red1 Banned

    Joined:
    12 Jan 2007
    Messages:
    246
    Likes Received:
    258
    Reputations:
    83
    Странный ты Берт, хочешь программировать - программируй. А какой язык учить первым, вторым пятым пофиг. Вопервых очень много зависит от решаемой задачи, во вторых от тех же личных предпочтений и вкусов. Что касается "вот вы что первое изучали": я первым изучал кьюбейсик (уже в универе), но закинул через месяца три (до этого вообще не умел влючать комп и не видел его), после паскаль, потом дельфи (хоть это то же паскаль), а после меня убило программирование нах и я доооолго вообще не подходил к компам.... дальше пхп т.к. заинтересовался вебом, благодаря одному посту на форуме познакомился немного с яваскрипт. Вот такая линия корявая. Вот только все равно с чего изучать..... я еще раз повторю ХОЧЕШЬ ПРОГРАММИРОВАТЬ - ПРОГРАММИРУЙ, а то складывается впечатление что ты ХОЧЕШЬ чтобы тебя убедили что нужно програмить на таком то языке и это совпадет с ТВОИМ мнением. ПОФИГ С ЧЕГО НАЧИНАТЬ!!!! Начни дальше само пойдет, только не стой на месте, ставь задачи и решай их, нехватает ресурсов языка бери другой, в конце концов язык всего лишь инструмен, а как и каким пользоваться РЕШАТЬ ТЕБЕ!!!! И вообще сколько людей столько и мнений так что САМММММ!!!!

    Точно в болталку!!! Я и сам не сдержался.... блин
     
    1 person likes this.
  20. flipper

    flipper Elder - Старейшина

    Joined:
    5 Sep 2006
    Messages:
    131
    Likes Received:
    85
    Reputations:
    29
    Лучше сначала не програмингом... а мат. логикой и вообще дискретную математику не мешало бы осилить, потом мат. анализ и линейку... алгоритмизацию, потом архитектуру ЭВМ... потом заняться ОСями... и только потом начать изучать язык...

    большинство на это дело забивают.. и становятся == индусы, прошедшие 3 месячные курсы по быстрому девелопингу
    (C)A15​
     
    1 person likes this.