Блоґ одного кібера

Історія хвороби контуженого інформаційним вибухом

Навчання і пам’ять

with 14 comments

Скільки мов ти знаєш, стільки разів ти програміст.

Сьогодні перше на порядку денному: вітаю себе з днем народження!

– Дякую. 🙂 А тепер до суті, тобто до другого:

Я знаю JavaScript! Принаймі зі словником читати вмію, і написав кривий хеллоувордний сапер. Який би він не був кривий, він працює, і що найдивніше – в простому HTML документі! Дивуюсь, чому я нехтував скриптами на стороні клієнта раніше? Мені все здавалось що вони тільки для створення всяких там випадаючих менюшок, та AJAX який потрбний тільки для оптимізації трафіку. Але з іншого боку – це новий рівень об’єднання даних та методів обробки, і зміна класичного уявлення про документи яке з’явилось ще в докомп’ютерні часи. Навіть цікавіше за мультимедіа, яке теж було до комп’ютера.

Але чому я не вивчив JavaSript раніше? Бо в мені закладений якийсь внутрішній спротив проти всього нового.

І я здається пам’ятаю в чому помилка. Вперше я близько познайомився з комп’ютером в природничо-математичному ліцеї. Це був 2003 рік, і 8 клас. І в нас була вчителька інформатики, яка думала навчити нас інформатики поглиблено. Я навіть трохи пам’ятаю як зубрив процес завантаження DOS, і команди. Я любив MS-DOS. Він такий простий:

command.com
msdos.sys
io.sys
autoexec.bat

Я навіть знав що за чим завантажується, і для чого msdos.sys. І форматував завантажувальні дискетки, записував туди свої програми, і прописував шлях до них в autoexec.bat. Потім забував ці дискетки в комп’ютері, чим сильно діставав свого брата.

Одним словом серйозна була вчителька. За її словами – вона програмувала комп’ютери ще з другого покоління, чи якогось іншого, я точно не пам’ятаю. Вчила нас Паскаль. І забороняла використовувати goto.

Але це все нормально. Найгірше те, що коли хтось сказав, що буде ще вчити і C (чи щось інше, я точно не пам’ятаю), то вона сказала, що був колись один, який вчив і C, і Pascal, а в результаті ні того, ні іншого добре не знав. Тому, вчіть паскаль, і не вимахуйтесь.

З того часу, я завжди перед тим як вивчити щось нове, думав а чи дійсно воно мені треба, і чи не краще користуватись тим що я вже знаю. Наприклад постійно шукав книжки про програмування графіки в Delphi, хоча більшість книжок по OpenGL були написані на C. А все що мені треба було знати – відмінності в типах даних цих мов.

Вивчаючи щось нове ми не зменшуємо об’єм вільної пам’яті! Ми просто відсуваємо старе трохи глибше. Потім воно після певних зусиль знову викликається назад. Просто треба знайти відповідний ланцюжок асоціацій, і полазити мережею. Крім того – запам’ятовувати це найприродніший спосіб тренувати пам’ять.

Крім того, вчаться не так мови програмування, як стилі і підходи. Ось наприклад гляньте на код мовою Python який пишуть програмісти з різним досвідом. Особливо на програміста Windows. Чиста правда. Коли я розбирався з OpenGL ті функції які стосувались Windows API так і виглядали.

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

Єдине виправдання тому що ми не вивчаємо щось зараз – це те, що ми в цей момент вивчаємо щось більш цікаве. Бо цікавість включить мимовільну пам’ять, і ви запам’ятаєте більше. Хоча з іншого боку довге і болісне зубріння може викликати сильні негативні емоції, а емоції теж запам’ятовуються відмінно. 🙂 (Хоча от я зараз пам’ятаю, що здавав рівняння матфізики п’ять разів, але не пам’ятаю як їх розв’язувати, тому цікавість таки краще).

І боятись того, що коли я вивчу JavaScript я забуду PHP ой як не треба. Навпаки, JavaScript після PHP зрозуміліший. Не кажучи вже про те, який він зрозумілий після Pythonа. Зі своєю динамічною типізацією. Яка щоправда нестрога. І зрозуміло, що саме треба генерувати на сервері, а з чим і клієнт справиться…

Крім того – в резюме ж не напишеш як довго ти вчив Pascal. Бо хоч рік, хоч два – в ньому більше нічого нового не вивчиш.

Одним словом висновок: пам’ять не зменшується від того що ми вчимось, а навпаки, від того, що ми нею не користуємось. Тому користуйтесь нею почастіше, і не просто навчаючись запам’ятовувати беззмістовні цифри, а читайте книжки, пишіть програми на незнайомих мовах програмування, і т.д. Це звісно важче, але цікавіше.

І крім того це цілком природньо. Не вчиться хіба що сліпа та глуха людина. І їй здається не позаздриш.

Що дивно – Vim кросплатформенний. Але я чомусь ним не користувався до того як перейшов на Linux. Google може знайти все. Але тільки якщо ми будемо знати які запити вводити. Так от, чим більше знаємо – тим більше виборів перед нами буде.

Все, йду спати, бо вже не зовсім розумію про що пишу. Перечитав, терпимо.

Можете прочитати щось подібне

Advertisements

Written by bunyk

Серпень 1, 2010 at 06:36

Відповідей: 14

Subscribe to comments with RSS.

  1. С прошедшим)
    Могу сказать про себя, что JavaScript я стал лучше понимать после того, как выучил C. Да и вообще (imho) C – основа основ, мне очень помогло. Причем учить сишку мне было ооочень нелегко после паскаля. Я буквально брал и переписывал проги с паскаля на си (у меня уже было много исходников из-за acm.timus.ru).

    А теперь главное! Знать язык (синтаксис) недостаточно. Что толку от того, что ты знаешь C или JavaScript или PHP? Имхо после Сишки выучить синтаксис нового языка – задача на неделю максимум (если не брать что-то совершенно другое типа lisp, self, f# etc…).

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

    Захотел писать сайт – html/php/mysql/javascript а может и фреймворк какой-нить.

    Захотел писать че-нить на c++ – c++/qt/opengl/….

    Надеюсь, мои мысли понятны)

    jtimv

    Серпень 2, 2010 at 21:04

  2. p.s. Сапер твой в FF и konqueror работает, а в opera – нет 🙂

    jtimv

    Серпень 2, 2010 at 21:11

  3. p.p.s. Блин, почему нельзя редактировать комментарии????

    #Unix programmer
    import os
    def fact(x):
    os.system(‘factorial ‘ + str(x))
    fact(6)

    это как понимать?)

    jtimv

    Серпень 2, 2010 at 21:13

    • іронізування над Unix Way

      ulidtko

      Серпень 3, 2010 at 06:28

      • я к тому, что в остальных вариантах просматривается факториал, а здесь его явно нет.. в этом и есть ирония чтоли? o_O

        jtimv

        Серпень 3, 2010 at 11:26

      • Ну, типу кожна програмка має виконувати одну задачу, і добре. Значить є програма яка добре обчислює факторіал. А раз вона це робить добре, то нащо писати свою?

        bunyk

        Серпень 5, 2010 at 16:05

        • Плин.. дошло. Я почему-то сначала думал (и не только сначала), что эта прога выведет “factorial 6”.
          Только сейчас перечитал внимательно и увидел, что там вызов внешней программы.
          А так, да, Unix-way рулит.

          jtimv

          Серпень 5, 2010 at 22:59

  4. JavaScript на самом деле куда более сложный и мощный язык, чем кажется на первый (а также на второй и третий) взгляд. 🙂 Попробуй освоить в нём концепцию замыканий и ООП-модель – станет намного интереснее.

    Mourner

    Серпень 6, 2010 at 15:50

    • З запізненням на кілька років, але мені таки стало неймовірно цікаво. 🙂

      bunyk

      Червень 26, 2013 at 19:29

  5. прочитав твій CV, виправ кілька граматично-орфографічних помилок

    and most off all -> and most of all
    to see how work teams -> to work in team
    Secondly, I very glad -> Secondly, I’m very glad
    that in Ivano-Frankivsk is software companies -> facepalm…
    so after I have finish education in Kyiv -> so after I will finish education in Kyiv
    i -> I

    короч, попрацюй над граматикою, рекомендую Вербу.

    danbst

    Вересень 1, 2010 at 12:33

  6. Дякую!

    Верба в мене вже 14 років. Читати я навчився читаючи. А от писати… Може треба спробувати писати щось в англвікі, і дивитись як виправляють? Тільки от ліньки.

    bunyk

    Вересень 1, 2010 at 16:47

  7. […] З гордістю згадати про те що Агафонкін якось коментува…. Подумати що розумних людей варто було б слухатись раніше. […]


Залишити відповідь

Заповніть поля нижче або авторизуйтесь клікнувши по іконці

Лого WordPress.com

Ви коментуєте, використовуючи свій обліковий запис WordPress.com. Log Out / Змінити )

Twitter picture

Ви коментуєте, використовуючи свій обліковий запис Twitter. Log Out / Змінити )

Facebook photo

Ви коментуєте, використовуючи свій обліковий запис Facebook. Log Out / Змінити )

Google+ photo

Ви коментуєте, використовуючи свій обліковий запис Google+. Log Out / Змінити )

З’єднання з %s

%d блогерам подобається це: