Я хочу поделиться с вами статьей, которая во время прочтения очень сильно отозвалась во мне. Ее автор девятнадцатилетняя девушка веб-разработчик, Lydia Hallie, больше известная как «the most hardworking, yet most relaxed person» (очень трудолюбивый, но все-таки расслабленный человек) рассказывает о том, как современному разработчику справляться с многочисленными потоками входящей информации и сохранять мотивацию к саморазвитию.



После того, как я опубликовала свою предыдущую статью о том, как я стала разработчицей в 19 лет, сотни людей писали мне примерно одно и то же:
«Отличная статья. Я очень хочу научиться программированию, но просто не знаю, с чего начать. Это так расстраивает и подавляет, что я теряю мотивацию»
Моя задача: вовлечь в мир технологий как можно больше людей, поэтому очень важно сосредоточиться на тех, кто действительно мотивирован, но просто не знает, с чего начать.



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

«Всё это звучит хорошо, Лидия», скажете мне вы, «но, чувствую, это еще одна статья, которая мотивирует меня на 10 минут, пока я не вернусь к Netflix!» Прежде, чем я начну, хочу, чтобы вы поняли, что вы уже крутые, хотя бы потому, что решили научиться программировать. Это значит, что вы можете думать на несколько шагов вперед и способны выйти из зоны комфорта, даже если еще не сделали этого!

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

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

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

Эти мысли мешали осознать, как много важных шагов мне уже удалось сделать. При этом я писала код с первого раза, и создавала всё более сложные приложения. Продолжая сравнивать себя с другими, более опытными людьми, я не могла увидеть свой прогресс. И всё, о чем я могла думать: «я всё еще так далека от своей цели».

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

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



Заканчивая даже относительно небольшое проект, я чувствовала такое счастье! Я многому научилась в процессе и имела возможность поработать с технологиями, с которыми никогда раньше не работала.

Эффективная работа с новой информацией


Все мы разные, и по-разному усваиваем информацию. Да, я говорю как Капитан Очевидность, но это не столь очевидно, как может показаться. Прежде, чем научиться кодить, вам придется научиться учиться.

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

Чувствовать себя потерянным и запутавшимся во время просмотра курсов или чтения документации — нормально, каждый преодолевает это в начале своего пути. Разработчики с трудом могут обучить программированию людей, которые не слишком в этом разбираются, не прибегая к скучным расплывчатым терминам (да-да, это я про вас, Stack Overflow!).

Не важно, насколько по вашему мнению вы круты, не пропускайте основы. Всегда начинайте учить язык с самого начала и ничего не упускайте. База очень важна, и вы обязательно пожалеете о том, что не уделили ей достаточно внимания! Конечно, всегда можно погуглить, но это только замедлит вашу работу. Читая документацию, начинайте с первой страницы (или с 1.1 в некоторых случаях). Кому-то это может показаться пустой тратой времени, но поверьте мне: это не так. Уделяйте внимание всем деталям и в будущем вы будете себе благодарны!

Если вам трудно понять основы, расслабьтесь! Всё будет в порядке. То, как вам сейчас тяжело, никак не влияет, насколько хороши вы будете потом.

Каждые 10 минут или после каждого прочитанного абзаца объясните своими словами, что вы только что узнали. Это может быть достаточно трудно, но скоро вы поймете, какие части вы усвоили не до конца. Лучший способ выучить что-то: объяснить это кому-то другому, даже если рядом никого нет!

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

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



Сохранение мотивации


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

Мы все любим играть, не важно в какие игры. Игры приносят мгновенное удовлетворение, позволяют чувствовать себя успешным от незначительных достижений. Это идеальная формула мотивации! Я смогла получить её в процессе программирования. И это намного проще, чем вам кажется.

Ставьте себе небольшие цели. Не потому, что вы не стремитесь развиваться, наоборот — потому что вы стремитесь развиваться. Составьте список дел, которые вы хотите завершить сегодня. Может быть, прочитать одну страницу, просмотреть один курс или написать 10 строчек кода. Завершив свой список, вы почувствуете себя удовлетворенным и уверенным в своем успехе. Что звучит лучше: «я сделал всё, что планировал на сегодня» или «я сегодня прошел только 2 % курса»? К тому же, даже если вы всего лишь прочитали одну страницу или сделали одно поле ввода, это всё равно невероятно важно осознать. Мгновенное поощрение!

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

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

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

Поймите, что вы гораздо лучше, чем сами думаете. Это называется синдром самозванца. Вам может казаться, что люди вокруг знают и умеют гораздо больше вас, но это неправда. Я не устану повторять: вы станете хорошим разработчиком, если продолжите интенсивно работать. Вы уже доказали, что можете кодить, благодаря тому, что достаточно мотивированы чтобы учиться этому, у вас всё в порядке.



Вещи, о которых всегда стоит помнить


  • Никогда не сравнивайте себя с другими разработчиками. Довольно банальный, но очень важный совет. Не сравнивайте свою версию первого уровня с чьей-то версией двадцатого уровня. Вы доберетесь до них намного быстрее, чем думаете! Я поместила это фото выше, потому что знаю, что испугалась бы, увидев ее 4 месяца назад. Сегодня я просто смеюсь над ней и даже могу заметить некоторые ошибки, которые я допустила!
  • Вы гораздо более успешны, чем думаете. Вы растете каждый раз, когда учитесь или практикуетесь. Просто примите это (я знаю, что это сложно).
  • Вы не одиноки, все преодолевают трудности вначале, и это не значит, что вы плохой программист. То, что вы сейчас чувствуете — нормально, это просто часть учебного процесса. Скоро вы сможете оглянуться назад на этот период и согласиться со мной!

Если у вас есть возможность, попробуйте найти наставника. У меня был наставник, о котором я только могла мечтать, и я готова стать вашим, если пожелаете. Хорошо, когда вы можете быстро кого-то спросить и подпитаться мотивацией, это несомненно поможет преодолеть первые препятствия.

Комментарии (99)


  1. kingzfate
    19.12.2017 15:11
    +1

    Хорошая статья. Новоприбывших разработчиков заставит задуматься и возможно не допустить некоторых ошибок


  1. oWart
    19.12.2017 15:50

    Где ж найти этого наставника?! Иногда очень не хватает быстрого совета или просто общения по теме.


    1. KsHoxton
      19.12.2017 15:58
      +1

      Самое быстрое и простое, что мне приходит в голову — так это ходить на конференции и митапы и задавать вопросы там. Если такой возможности нет, то есть куча онлайн-комьюнити. Да, придется, возможно пройти, через боль и унижение ритуал приветствия, но в итоге то, кто-нибудь на вопросы то ответит. Оно же все для этого то и нужно


      1. Alexsandr_SE
        20.12.2017 18:16

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


    1. terrier
      19.12.2017 16:00
      +2

      Где ж найти этого наставника?! Иногда очень не хватает быстрого совета или просто общения по теме.

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


  1. perfect_genius
    19.12.2017 16:01

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


    1. feudorsam
      19.12.2017 17:04

      Действительно. А может будет стимул заслужить ее симпатию, получая при этом опыт ;)


  1. Germanets
    19.12.2017 16:52

    Пусть это несколько оффтоп и обратная сторона проблемы, но может быть кто-то сможет подсказать статьи или полезные блоги на тему — как именно обучать человека программированию? Разумеется речь не про основы педагогики и общие принципы обучения, а именно про обучение программированию.


    1. EKovaltsov
      20.12.2017 10:40

      Берешь желающего и отвечаешь на вопросы. С какой-то периодичностью берешь с него фидбэк.


      1. felidae
        20.12.2017 15:55

        Если желающий может сформулировать вопрос — он и сам найдёт на него ответ. А если нет — то как ответить на такой вопрос?


  1. Melonom
    19.12.2017 17:03

    Хотите расти как специалист?
    Не можете заставить себя прочитать новую книгу?
    Вам не хватает мотивации?
    Решение есть!
    Жена, ребенок, ипотека на 20 лет!


    1. therhino
      19.12.2017 17:13

      Хотите быть идиотом? Решение есть:

      Жена, ребенок, ипотека на 20 лет!


      1. Pashkevich
        20.12.2017 10:41
        +1

        Полегче на поворотах
        Семья и дети — это лучшее что происходит в жизни!


        1. background_space_jpg_no-r
          20.12.2017 13:20

          wow! этим ребятам не угодишь)


        1. 0xd34df00d
          20.12.2017 20:05

          У всех своя жизнь и своё лучшее.


    1. dro1d
      20.12.2017 10:43

      Жена и ребенок как раз таки тормозит рост. Раньше я мог дома спокойно заниматься саморазвитием, а сейчас «помой попу ребенку», «сделай молочную смесь» и тд


      1. Pashkevich
        20.12.2017 10:50
        +1

        У комментария выше был «тонкий» намек на обстоятельства.
        «Хочешь жить — умей вертеться».
        И когда у тебя (меня) есть дети — ты сделаешь ВСЁ на свете, чтобы обеспечить им хорошую жизнь.
        Для кого вы живете? Для себя?
        Все люди живут для других: соц.сети, фотки, статусы. Все делятся своими успехами для других, но не для себя.
        А вот когда есть дети, внимание переключается на них.
        И говоря о развитии — да, ты развиваешься как специалист. Но для чего? Для кого?
        Для детей.
        А времени никогда не будет хватать. Хоть ты пива захочешь попить, хоть саморазвитием позаниматься. Для свободного времени нужно искать возможности.


        1. 0xd34df00d
          20.12.2017 20:14

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

          Да и жить для себя. И вы, кстати, тоже живёте для себя, для некоторой химии от системы вознаграждения в вашем мозгу, которая поощряет репродуктивное поведение и заботу о потомстве. Мы все живём для себя.

          И попробуйте как-нибудь задать себе такой крамольный вопрос, как «а зачем дети?».


          1. gotch
            20.12.2017 22:20

            Трудно быть богом.


          1. vlreshet
            21.12.2017 10:28
            +1

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


            1. h0rr0rr_drag0n
              21.12.2017 12:07

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

              Можно же бармена попросить стакан воды принести — зря что ли он за стойкой стоит?)


            1. sumanai
              21.12.2017 15:48

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


  1. Mugik
    19.12.2017 17:10

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

    Пробежался по гитхабу, по портфолио. Что-то сложнее хеллоуворлд сайта на реакте не увидел.

    Я не осуждаю и не оцениваю. Просто не очень люблю такое.


    1. Syndr0me
      19.12.2017 18:48

      Солидарен, показухи многовато. Не палил ее соц. сети и даже не знаю откуда она, но может там это считается веб разработчиком?)


    1. Polarisru
      19.12.2017 21:13

      Согласен, опытный 19-летний разработчик способен решать самые серьезные задачи. Математика? Не, не слышал! Код и фоточки — наше все!


    1. vlad2711
      19.12.2017 23:14

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



  1. sumanai
    19.12.2017 17:12

    19 лет

    Я много лет была наставником и часто слышала от студентов, что им не хватает мотивации.

    Может она просто гений?


    1. therhino
      19.12.2017 17:18

      Может она просто пи****ол?


      1. evgenWebm
        19.12.2017 19:11

        Вопрос риторический.


    1. Samehadar Автор
      19.12.2017 17:32
      +1

      Согласен, получилось немного неоднозначно из-за того, что слово «students» было переведено буквально. Но тем не менее если дочитать до конца (см. последний параграф), то становится понятно, что речь идет о тех людях, для которых Лидия выступала наставником.
      Уточнил перевод, спасибо.


  1. Barafu
    19.12.2017 18:05

    Текст — пустота в пустоте ни о чём. Все статьи на примерно эту тему содержат эти же утверждения этими же фразами. А фото слишком постановочное.


  1. Syndr0me
    19.12.2017 18:28

    Очень много ее фотографий с кодом)) Это забавно, кажется, что показуха. На деле, надеюсь, девушка смогла, молодец.
    Я с ней солидарен. Начал учиться с августа, но, как я понял, она как и многие, учится, сидя у родителей на шее, в 19 то лет, и ее учебе ничего не мешает. В остальном же я придерживаюсь тех же принципов, что и она, но на код уделяю максимум 4-5 часов в день, хотелось бы больше.


    1. alix_ginger
      21.12.2017 12:22

      Очень много ее фотографий с кодом))
      В каком-нибудь другом банке это могло бы быть нарушением NDA


  1. freeart
    19.12.2017 18:33
    +1

    Вот такие люди становятся евангелистами, преподавателями, активными деятелями ай-ти сообществ, которые вводят других в заблуждение. Но программировать такие, увы, так и не научатся. Она продвигает себя, ничего более. Вот ее один из проектов. javascriptguide.herokuapp.com Не удивлюсь если выиграет какой-нибудь грант и станет большим начальником.


    1. Error1024
      20.12.2017 07:08

      К сожалению все именно так, у нее талант не к программированию, а к продвижению себя.


    1. codemax
      23.12.2017 16:12

      И вообще, там, на JavaScript Guide, на фоновой картинке слева код на PHP, а не на JS. Мой перфекционизм возмущен! :)


  1. third112
    19.12.2017 18:35

    Возьмите другой вид деятельности и поставьте в статью вместо слова «программирование», все сказанное в статье можно в равной мере применить к вышиванию крестиком и к технологии химического производства. У меня впечатление, что оригинал писал не программист, а копирайтер по не раз использованному шаблону: как стать программистом, как стать математиком, как стать пчеловодом и т.д. Мотивация, мотивация и еще раз мотивация… — многократный повтор смысла сюда не добавляет.

    Работайте над личным проектом, в котором вы действительно заинтересованы! Не над одним из миллиона в списке дел, но над тем, который вы действительно хотели бы сделать. Я не имею в виду автомобиль с автопилотом или личного робота-повара, выберите что-то поменьше. Освежите макет сайта или напишите маленькую игру.
    А вот это ИМХО вредный совет для начинающего программиста. Потратиить 3 месяца на программу «морской бой» — не лучшее занятие. Нужно изучать алгоритмы и делать упражнения из учебников, нпр., Кнута.


    1. akryukov
      19.12.2017 19:22

      И снова здравствуйте!


      А вот это ИМХО вредный совет для начинающего программиста. Потратиить 3 месяца на программу «морской бой» — не лучшее занятие. Нужно изучать алгоритмы и делать упражнения из учебников, нпр., Кнута.

      Тратить 3 месяца на программу "морской бой" и правда слишком много. Но пару-тройку недель уделить этому полезно. Алгоритмы это просто преобразование одних фактов в другие. А реализация пусть даже игры помогает научиться решать с помощью кода не абстрактные, а человекопонятные проблемы. Иными словами — программирование игр во время учебы развивает умение применять алгоритмы, а не просто их реализовывать.


      1. third112
        20.12.2017 11:45

        И снова здравствуйте!

        Здравствуйте!


    1. multiprogramm
      19.12.2017 20:20

      ИМХО советовать начинающему программировать читать Кнута — это всё равно, что советовать начинающему программировать на C++ читать Страуструпа. Книги-то обе отличные, вот только новичок с них как начнёт, так и закончит. Потому что, во-первых, нужен бекграунд, которого нет, во-вторых, понимание отсутствия этого бекграунда сразу начинает давить и демотивировать.


      1. akryukov
        19.12.2017 20:42

        У Страуструпа, кстати, есть книги на разные уровни. Для совсем новичков он предлагает "Программирование. Принципы и практика с использованием С++" и судя по беглому просмотру содержимого, она вполне годится.


      1. vlad2711
        19.12.2017 23:12

        Забавно, но я начинал с С++, да это боль и адские муки, но зато после этого я начал ценить Java, ведь она после Си казалось такой простой и понятной, так что это тоже не преграда.


      1. dro1d
        20.12.2017 10:46

        Кнут не про программирование, а скорее, про математику и алгоритмы.


      1. third112
        20.12.2017 11:43

        У Кнута помечена сложность задач — от очень простых до никем не решенных.


    1. symbix
      19.12.2017 23:07

      Пфф. Если в 14 лет не игрушки пытался программировать, а изучать Кнута, то, скорее всего, получится как-то так.


    1. vlad2711
      19.12.2017 23:10

      Делая тот же Морской бой вы тоже изучаете алгоритмы находя новые нестандартные решения задачи, просто вы не думаете о том что сейчас вы также изучаете алгоритмы


      1. third112
        20.12.2017 11:48

        Делая тот же Морской бой вы тоже изучаете алгоритмы

        Какие алгоритмы в игре Морской бой?
        находя новые нестандартные решения задачи

        У новичка новые нестандартные решения задачи могут произойти только случайно с очень маленькой вероятностью.


        1. vlad2711
          20.12.2017 16:00

          Какие алгоритмы в игре Морской бой?

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

          У новичка новые нестандартные решения задачи могут произойти только случайно с очень маленькой вероятностью.

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

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


          1. third112
            20.12.2017 16:10

            Допустим человек по неопытности будет хранить их в листе, для того чтобы это работало эму надо будет накодить такой велосипед, что мама не горюй, велосипеды — это не гуд конечно, но как не крути они качают алгоритмику.
            И какие конкретно алгоритмы ему тут помогут?

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


            1. vlad2711
              20.12.2017 16:59

              Учить алгоритмы можно не только на каких-то абстрактных олимпиадных задачах, но и в реальных проектах. Мы каждый день юзаем алгоритмы, просто мы на это не обращаем внимания. Любая программа сложнее System.out.println("Hello world!"); это уже алгоритм. Тем более далеко не все нужно гуглить, с чем-то полезнее самому разобраться.


              1. third112
                20.12.2017 17:55

                При чем тут олимпиадные задачи? Есть классические алгоритмы, имеющие всеобщее значение, есть алгоритмы, важные в определенной предметной области, а могут быть алгоритмы только одной никому не нужной задачи. «Алгоритм морского боя» звучит смешно.


                1. vlad2711
                  20.12.2017 18:05

                  Алгоритм морского боя? Морской бой — это программа, а уже в ней алгоритмы, и это может быть как классическая сортировка пузырьком так и навороченный велосипед. Сортировку пузырьком можно много где юзать, но и для велосипеда где-то найдется место.

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


                  1. third112
                    20.12.2017 18:25

                    А что сортировать в морском бою?

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


                    1. akryukov
                      20.12.2017 19:13

                      Что именно вы считаете алгоритмами, которые нужно изучать?
                      Оформите конкретный список и можно будет предметно поговорить. Либо в морском бое найти применение, либо другую задачу выбрать.


                      1. third112
                        20.12.2017 20:17

                        Что именно вы считаете алгоритмами, которые нужно изучать?
                        Нпр., сортировку пузырьком изучить невредно. А в игре «морской бой» ценных алгоритмов не вижу, поэтому и привел в пример малополезной траты времени.


                        1. akryukov
                          20.12.2017 20:42

                          Разговаривать предметно на одном алгоритме пузырьковой сортировки не получится. Какие еще алгоритмы вы считаете ценными? Какой критерий ценности?


                          В игре "морской бой" при реализации честного компьютерного противника (который не стреляет прямо по кораблям игрока) есть задача выбора цели таким образом, чтобы была наибольшая вероятность попадания в корабль.
                          Поначалу то все просто. Стреляй в каждую четвертую ячейку и все. А если потоплен хотя бы один корабль противника? Как выбрать из оставшихся такую ячейку, чтобы была наибольшая вероятность?


                          Какой классический алгоритм подходит для решения этой задачи?


                          1. third112
                            21.12.2017 04:59

                            А если потоплен хотя бы один корабль противника? Как выбрать из оставшихся такую ячейку, чтобы была наибольшая вероятность?
                            Думаю, что когда потоплен корабль нужно исключить клетки этого корабля и соседние (т.к. корабли не могут соприкасаться) и стрелять по другим клеткам случайным образом. Если начинающий программист, проделав подобное рассуждение, захочет строго его доказать и займется изучением тервера, вместо продолжения кодинга малоинтересной игрушки, то такое переключение можно только приветствовать.
                            Какой классический алгоритм подходит для решения этой задачи?
                            Я не знаю и спросил Вас выше:

                            Какие алгоритмы в игре Морской бой?


                          1. third112
                            21.12.2017 05:11

                            PS

                            Какие еще алгоритмы вы считаете ценными?
                            См. книги Вирта, Кнута, Седжвика. Это классика. Еще бы посоветовал С.Окулов, Программирование в алгоритмах.


                          1. third112
                            21.12.2017 05:15

                            PPS Вспомнил одну из своих первых программ — задание из книги Кнута: треугольник Паскаля. Даже начинающий справится за 3 часа.


                            1. Bromesh
                              21.12.2017 20:33

                              Как по мне, вы упустили момент мотивации. Да алгоритмы по книгам — круто, но слегка(нет) скучно. При вашем подходе кривая обучения выйдет еще та. А начинать с морского боя, тетриса, всяких чатов — самое то. Да, потом, придется подтянуть базу, ну если подопытный осилит, то сам все систематизирует, без книг


                              1. felidae
                                22.12.2017 12:57

                                Тут есть проблема в том, что подопытный может научиться делать неправильно и потом его будет сложно переучить.


                                1. akryukov
                                  22.12.2017 13:42

                                  А вы уверены, что сами делаете правильно?
                                  Останется ли ваше "правильно" таким же, если его перенести в другую прикладную область?


                                  Если учить конкретным алгоритмам, то запросто можно получить на выходе человека, который всегда будет руками сортировки писать.
                                  Именно поэтому целью обучения должен быть образ мышления. В том числе умение систематизировать информацию и дообучаться при необходимости.


                              1. third112
                                22.12.2017 18:46

                                Может и в школе учить не алгебру с геометрией, а в тетрис играть? География — вообще скука извозчик татксист довезет…


  1. renich
    19.12.2017 21:13

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


    1. vlad2711
      19.12.2017 23:08

      А чего боитесь? Я знаю людей которые в 45 и 50 начинали, а 30 лет — средний возраст в отрасли так что если захотите то вполне справитесь.


    1. Columnistdc
      20.12.2017 10:14

      Мне 30, потихоньку вкатываюсь во фронтэнд.
      Для себя понял, что возраст — не помеха, если приняли решение о том, чтобы взять Вас на работу, чего и Вам желаю.
      Единственное, в чем Вы правы — после 30 работу искать чуть подольше/посложнее.
      Мой результат — 5 собеседований за 2 месяца активного поиска.
      Стек — JS + пара фреймворков.


      1. sumanai
        20.12.2017 16:08

        Мой результат — 5 собеседований за 2 месяца активного поиска.

        5 удачных собеседований? А то сходить на собеседование и я могу, только кто ж меня возьмёт.


    1. rasswet
      21.12.2017 08:53

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


      1. glestwid
        21.12.2017 20:34

        И что, по Вашему если про ограничение (противозаконное, замечу) не написано, то его нет? Мне в каком месте с наивности посмеяться?


  1. hmelni
    19.12.2017 21:13

    Она рвёт шаблоны. Какие ассоциации со словом программист? Ну точно не такая леди как на фотках. Согласен что постановочно, но если она и правда кодит, то это уже хорошо. И советы она даёт годные!


    1. azhira
      20.12.2017 09:21

      Во-первых, советы может и годные, но уже столько раз повторенные, что стали банальностью. Уж если на то пошло, могла бы дополнить их списком ресурсов, которые помогли лично ей. Да, это был бы не первый список в интернете, но от него хоть какая-то польза.
      Во-вторых, какие шаблоны она рвет, а, главное, зачем? Я видно что-то упустила и образ няшной девушки-программиста, по совместительству инстаграм-модели и бьюти-блогера (на YouTube и такое встретила) становится популярен, но что тут хорошего? Не понимаю восторга.
      Люди занимаются, чем нравится и это отлично. Но мне казалось, что в IT-сообществе больше ценят знания, навыки, опыт, а не вот эту мишуру.
      А фраза «если она и правда кодит, то это уже хорошо» убила наповал. Т. е. если девушка «кодит», то и ладно? Как именно — неважно, лишь бы лицо смазливое?
      Простите за резкость, накипело.


      1. hmelni
        20.12.2017 12:58

        Во-первых, «Повторение мать учение» Хорошие советы от повторения хуже не становятся и не для всех это банальность для кого то это будет чем то новым.
        Во-вторых она рушит стереотип что программист это «социофобный ботаник мужского пола» (да простят меня программисты) Ведь в этой профессия считается мужской И хвала тем девушкам которые идут в программисты
        В третьих смазливым мордашкам много прощается (это шутка!)
        В последних не надо судить строго людей которые только вступили на путь программиста главное не останавливатся и идти дальше и требовать от них какого сверх естественного скила или знания не надо


        1. azhira
          20.12.2017 15:38

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


  1. erty
    19.12.2017 23:48

    Тоже в школе клепал сайтики. Так оказывается я уже 15 лет как программист и даже не знал об этом :(


  1. Error1024
    20.12.2017 07:07

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


  1. Mimus_spb
    20.12.2017 07:28

    Статья настолько полезная, насколько райф хороший банк.


  1. akkuraten
    20.12.2017 07:50

    Нравится людям оскорблять других.


  1. olexsyn
    20.12.2017 07:50

    Зачем код сразу на трех экранах? Да еще в несколько колонок!


    1. cheshircat
      20.12.2017 10:39

      Мне кажется это фотограф попросил для красивости кадра


    1. venrok
      20.12.2017 15:56

      Для нее это видимо образ «крутого» программиста.


    1. vlreshet
      21.12.2017 10:31

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


  1. Legomegger
    20.12.2017 10:39
    +1

    Красивая девушка)


  1. kroketmonster
    20.12.2017 10:43

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


  1. makdoc
    20.12.2017 10:59

    Как успешно научить себя программировать — волшебный пинок под зад или подзатыльник делают свое дело лучше чем новомодные мотиваторы (сарказм), а по факту как вашей душе угодно. Мотиватором может стать все что угодно.


  1. lega
    20.12.2017 10:59
    +1

    Поймите, что вы гораздо лучше, чем сами думаете. Это называется синдром самозванца. Вам может казаться, что люди вокруг знают и умеют гораздо больше вас, но это неправда.
    Похоже, девушка под эффектом Даннинга — Крюгера.


    1. vl-sm
      20.12.2017 13:22

      Да вообще присутствуют какие-то странные советы

      Никогда не сравнивайте себя с другими разработчиками. Довольно банальный, но очень важный совет. Не сравнивайте свою версию первого уровня с чьей-то версией двадцатого уровня

      Всегда думал, что пример других людей мотивирует лучше всего


  1. Nay4ite_Babushku
    20.12.2017 13:21

    Всё так замечательно, все такие умные… А может кто-нибудь научить хоть чему-нибудь распоследнюю тупицу? Вот прямо жизненно необходимо. Нет, я, конечно, не совсем уж тупица, но смотря о чём говорить. Самые-рассамые азы вроде принципа двоичной системы знаю с детства, системный блок разбирала в полном одиночестве, обалдевая от того, что на самом деле я очень много внутри него знаю. Но. Простейшие операции «копировать и вставить» мне стоили двух лет слёз и прочего. Сейчас передо мной стоит задача создать собственный сайт, но я стабильно застреваю в конструкторе сразу же после слов «сайт создан». Дальше требуется его наполнение, а я не знаю, что писать. Спрашивать в других местах пыталась, пока меня наконец не обозвали хамкой. Это последняя попытка. Не знаю, что будет дальше с моей работой, скорее всего, так и останусь в соцсетях. И моя игра так и останется в виде сценария мультика или карты далёкой планеты.


    1. Rumlin
      20.12.2017 14:26

      «Наполнение» — это другая творческая задача. Лучше всего если это будет совпадать с интересами, что и будет мотивацией. Может сайт посвященный вашему городу. Истории города, улиц. Старые и новые фото с того же объекта с той же точки. Группа для обсуждения публикаций в соцсетях. Главное начать.


      1. Nay4ite_Babushku
        20.12.2017 14:30

        Благодарю за помощь, вы мне очень помогли.


  1. JasterOne
    20.12.2017 15:55

    Хорошая статься… :) Даже захотелось научиться программировать…


  1. artemmityushov
    20.12.2017 15:55

    Как я сказал как-то жене — будучи юристом не сильно умничай про ИТ только потому что у тебя муж программист, эти вещи половым путем не передаются


  1. vlad2711
    20.12.2017 17:20

    Мне вот что интересно: ей 19 лет, кодить начала она в 15, это значит что у нее 4 года опыта. Ну ок дадим время на раскачку и школу, тогда выходит что 2 года опыта железно. С таким багажем можно смело идти в компанию или на фриланс, но что-то не вижу ни одного проекта по работе, меня одного это немного напрягает?


  1. helgisbox
    21.12.2017 10:47

    Не совсем понял вот это: «поместила это фото выше, потому что знаю, что испугалась бы, увидев ее 4 месяца назад». То есть написать кода на 3 монитора — это достижение? Или она смогла купить на заработанные деньги 3 девайса со скринами, как оценить, что это результат работы?!


  1. hexploy
    21.12.2017 12:01
    +1

    Не просто слушайте курсы и читайте документацию: активно пользуйтесь новой информацией в своих проектах. Внедряйте все, чему вы научились, даже если это кажется вам незначительным!
    Пожалуйста, не делайте так. Внедряйте только то что действительно необходимо для проекта.
    Пожалеейте тех, кто будет поддерживать проект в будущем.


    1. helgisbox
      21.12.2017 12:10

      Внедрять все и везде вновь услышанное — это фишка деффективного менеджмента в IT. Уже столько всего навнедряли за последний десяток лет… Эта ниша уже занята. Там, где на этом можно заработать деньги ней ревностно следят.


  1. WeltRogg
    21.12.2017 20:34

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


  1. YMax
    22.12.2017 14:50

    Неплохая статья для мотивации, но 20(!) восклицательных знаков — зачем? Было сильно заметно, посчитал :)


  1. Strazur
    22.12.2017 19:25

    Пёсик тоже шарит в коде?