<
  • Главная
Статьи

Як я вивчив PHP і Python, не став гуру коду, але зібрав багато інших булочок

  1. PHP: початок
  2. Спроба номер раз: як не треба вчити мову програмування
  3. Спроба номер два: ніколи не знаєш, де тобі пощастить
  4. Практика: дрібні скрипти just for fun і для полегшення роботи
  5. Ще більше практики: публічний платний сервіс
  6. Python за три тижні
  7. Наостанок: навіщо і як вчитися програмуванню

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

PHP: початок

Бажання освоїти PHP з'явилося, коли я почав займатися власними інформаційними сайтами. Років п'ять тому, без купи якісних сучасних полігонів для WordPress, працювати всерйоз, не маючи навичок розробки було непросто. Постійно виникали дрібні проблеми, для вирішення яких доводилося замовляти послуги на фрілансі або задавати питання на форумах.

наприклад:

Історія мого знайомства з програмуванням досить кумедна і повчальна

Завдання абсолютно елементарна для будь-якого, хто приділив вивченню програмування хоча б пару тижнів.

Підлив масла у вогонь і невдалий проект , Де на підготовку ТЗ і контроль результатів пішло неймовірну кількість часу і сил. Так я частіше листувався з програмістом, ніж з дружиною! Було потрібно поміняти ситуацію.

Спроба номер раз: як не треба вчити мову програмування

Що робить сучасна людина, якщо йому треба чогось навчитися? Правильно: гуглит.

На мене вивалився купу інформації - офіційний мануал, статті в блогах, відео. Я старанно вивчав все це, помічаючи окремі конструкції мови і прийоми, але толку було відверто мало. Розрізнені відомості ніяк не складалися в загальну картину. Мені здавалося, що навчитися кодіть - це значить вивчити мільйон типових прийомів і діяти за аналогією. Представляючи, скільки часу піде на подібний подвиг, я не раз хотів все кинути.

Спроба номер два: ніколи не знаєш, де тобі пощастить

Не знаю, у що вилилися б ці потуги. Але мені дуже пощастило.

Я застудився.

А тому два тижні провалявся на дивані в обнімку з книжкою «Створюємо динамічні веб-сайти за допомогою PHP, MySQL, JavaScript, CSS і HTML5»

Не можу сказати, що це ідеальний підручник (мені нема з чим порівняти). Але основи він дає добре. А головне - на початку пояснення йдуть буквально на пальцях і з картинками. Це дуже важливо, тому що допомагає розгледіти за карлючками в текстовому файлі їх зміст, зрозуміти суть програмування інтуїтивно. Пам'ятаю, для мене поворотним моментом стало порівняння змінних і сірникових коробок. У змінну, як і в коробок, можна покласти різний зміст, але сам коробок залишиться колишнім.

Практика: дрібні скрипти just for fun і для полегшення роботи

Коли самопочуття дозволило переповзти з дивана в комп'ютерне крісло, я взявся перевірити на практиці, чого навчився. Виявилося, що в теорії знаю досить багато, але практичних навичок нуль. Приходить ідея, начебто знаєш як її реалізувати (в пам'яті спливають назви функцій і конструкцій мови), але ось як зв'язати це все разом?

Проблем, втім, не виникло. Свій перший простенький калькулятор на php я писав близько 3 годин (зараз впорався б за 15 хвилин). Потім пішло куди легше. Мені нудно було шукати нові підручники і виконувати завдання по порядку, я з перших днів працював над цікавими завданнями.

Так з'явилися:

Трохи пізніше став писати скрипти для SEO, які використовують API різних сервісів (Яндекс.Метрика, Search Console). Тоді я на потоці робив SEO-аудити на замовлення, так що економія часу завдяки автоматизації виявилася дуже істотною.

Ще один приємний бонус від нових навичок - стало набагато легше спілкуватися з програмістами (цього SEO-шнику не уникнути).

Ще більше практики: публічний платний сервіс

Поступово скриптів для аналізу сайту накопичилося близько 30 штук. Деякі існували в п'яти і більше версіях, так що папка на сервері, де вони лежали, нагадувала неодноразово утрамбованное відро для сміття. Шкодую, що не зробив скріншот цього неподобства, перш ніж його видалити. Був би справжній пам'ятник ліні і криворукості організації коду.

В один прекрасний момент мені набридло копатися в цьому непотребі. Я вирішив впорядкувати код і об'єднати різні інструменти у вигляді онлайн-сервісу. У липні минулого року випустив першу версію .

Не до кінця вірив у комерційний успіх проекту. Хоча левова частка можливостей не тільки корисна, а й унікальна на ринку, досвіду просування сервісів у мене не було. «У крайньому випадку, буду з зручністю користуватися сам, вже користь», - подумав тоді я і c чистою совістю виділив на розробок три місяці свого часу.

Зараз я дуже задоволений, що почав цей проект. У сервісі зареєстровано майже 3000 користувачів, є ряд постійних клієнтів - при тому що на рекламу за весь час було витрачено рівно 500 рублів (став спонсором SEO-календаря на 2017 рік ).

Ще пару років тому я б не повірив, що зможу своїми руками спорудити щось подібне, але факт залишається фактом - 90% роботи над https://bez-bubna.com/ виконав сам, віддавши на сторону тільки кілька приватних завдань. По ходу справи вивчив багато нового, але до теперішнього моменту перестав надавати цьому особливого значення. Головне - це вдається тобі вирішувати поставлену задачу, а скільки всього знаєш - неважливо.

Я до сих пір не вважаю себе справжнім PHP-розробником. Але знаю, що вивчити відсутню не складе проблем, якщо раптом виникне така необхідність.

Python за три тижні

На початку 2017 раптом виявилося, що стоїть шалена мода на машинне навчання. І SEO-шнику, по хорошому, треба б в ньому розбиратися не на рівні жовтої преси ( «нейромережі знову учудили»).

А в машинному навчанні використовується що? Багато чого, але в першу чергу Python і R. Недовго думаючи, я вибрав Python - він якось більше на слуху в моїй середовищі спілкування. Насамперед я пішов вчитися на онлайн-платформу Shultais Education . Її засновник - мій хороший знайомий. Кілька днів позанимался і зрозумів, що курс відмінний, але не зовсім підходить мені за рівнем. Він призначений для новачків і в Пітоні і в програмуванні взагалі. А в другому я вже не зовсім новачок.

Став шукати навчальний посібник з більш стисло викладених матеріалом і набрів на сайт Пітонтьютор . Читаючи уроки і виконуючи завдання, отримав гарне уявлення про синтаксис мови. Але - не з'явилося відчуття, що володію їм по-справжньому. Весь час хотілося збитися на рідній PHP, хоча з перших уроків було видно, що Пітон набагато витонченіше і простіше.

Зрештою, я вирішив зайти з іншого боку і зайнявся безпосередньо машинним навчанням за допомогою курсу « Машинне навчання та аналіз даних »На Сoursera. Над першим серйозним завданням по програмуванню довелося повозитися. Але воно було схоже на реальну задачу з практики, так що виявилося не тільки складним, але і цікавим. А головне - коли я домігся-таки правильної роботи коду, нарешті з'явилося відчуття інтуїтивного розуміння мови.

Далі пішло як по маслу. Зараз я постійно використовую Phyton в роботі, парочка нових інструментів в сервісі написана саме на ньому (а саме - інструмент для пошуку LSI за допомогою word2vec і лемматізатор ).

Оновлення: влітку і восени 2018 навчався також на курсах «Python для SEO»: https://py4seo.com від Сергія Черненко. Можу сміливо рекомендувати, відмінний викладач. Більш того, він запропонував знижку для моїх читачів - по промокодом «trudov» ви отримаєте цей курс на 10% дешевше.

Наостанок: навіщо і як вчитися програмуванню

Як не дивно, програмування - в першу чергу свобода. Свобода поводження з даними. Ти можеш скільки завгодно їх комбінувати, порівнювати, обробляти складними алгоритмами, класти в основу моделей машинного навчання ... При цьому тебе не відволікають дрібниці на зразок різних форматів і джерел (API? Просто сайт? Купа файлів? - без різниці! Під все давно є готові рішення ). Виключно цінне вміння для SEO-спеціаліста та інтернет-маркетолога.

В ході навчання головне - якомога швидше домогтися цього відчуття свободи, спорідненості з мовою. Воно з'являється, коли ти робиш перший самостійний крок, вирішуєш справжню завдання. Дуже схоже на стрибок з парашутом.

Спочатку довгий період страху і сумнівів. Метушлива, не надто осмислена підготовка (копання в статтях і мануале без системи).

І раптом - політ наодинці з небом. Все стає простим і зрозумілим (почуття, коли написав свій перший справжній скрипт).

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

Приходить ідея, начебто знаєш як її реалізувати (в пам'яті спливають назви функцій і конструкцій мови), але ось як зв'язати це все разом?
А в машинному навчанні використовується що?
API?
Просто сайт?
Купа файлів?


Новости
  • Виртуальный хостинг

    Виртуальный хостинг. Возможности сервера распределяются в равной мере между всеми... 
    Читать полностью

  • Редизайн сайта

    Редизайн сайта – это полное либо частичное обновление дизайна существующего сайта.... 
    Читать полностью

  • Консалтинг, услуги контент-менеджера

    Сопровождение любых интернет ресурсов;- Знание HTML и CSS- Поиск и обновление контента;-... 
    Читать полностью

  • Трафик из соцсетей

    Сравнительно дешевый способ по сравнению с поисковым и контекстным видами раскрутки... 
    Читать полностью

  • Поисковая оптимизация

    Поисковая оптимизация (англ. search engine optimization, SEO) — поднятие позиций сайта в результатах... 
    Читать полностью