Програміст Початківець: Де навчатися та як шукати Ментора

Це є другий пост із серії статтей “Програміст Початківець“. В попередній статті ми з вами обговорили, а головне, спробували визначити, чи треба нам це програмування взагалі. А оскільки ви зараз читаєте ці рядочки, я насмілюсь зробити висновок – що треба 🙂 Другим пунктом попередньої статті був огляд тих шляхів, через які люди приходять у сферу програмування.

Programming Mentor

Фото взято з @www.lovetefl.com

І вже після першої статті я почав отримувати питання на зразок “Де краще навчатися?”, “Який ВУЗ обрати?”, “Краще універ чи просто піти на курси?” та “Як шукати Ментора для навчання, якщо немає програмістів серед знайомих?”. Тому в цьому пості спробуємо з вам розглянути питання вибору місця навчання, а також те як шукати собі наставника у нелегкій та цікавій справі програмування.

То де ж краще навчатися? →

Моя Формула Продуктивності

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

Productivity 3.0

Фото взято з @www.ey.com

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

Далі до Формули Продуктивності →

Програміст Початківець: З чого почати свій програмістський шлях

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

Programming Road

Фото з @www.jonathanfsullivan.com

І замість того, щоб кожен раз повторювати свої відповіді, думки та поради кожній людині окремо, я вирішив почати викладати відповіді на подібні питання у себе на блозі. Таким чином цим постом я розпочинаю серію статтей під назвою “Програміст Початківець”. Це буде близько 10 статей, які я буду готувати приблизно раз в тиждень, де будемо висвітлювати наступні проблеми:

  • з чого почати свою кар’єру програміста
  • як готуватися до свого першого інтерв’ю на роботу
  • що ще потрібно знати і вміти програмісту окрім самого програмування для досягнення високих результатів у даному напрямку
  • як обрати правильний напрямок, спеціалізацію для себе
  • як постійно тримати свої знання та вміння в тонусі, як то кажуть “up to date”
  • розглядатимемо доступні інструменти та сервіси, які допоможуть вам швидко навчатися
  • обговоримо модель OpenSource як інструмент для набуття практики, а також як плюс у вашому резюме
  • англійська – це важливо для програміста? з чого краще почати, і що саме важливо знати?
  • як правильно обирати для себе місце праці та компанію
  • та інші теми, які вспливуть у нас як важливі в ході нашої серії постів. Тому ваші коментарі до статтей – відіграють важливу роль для вирішення – що є важливим для Початківця Програміста 😉

А тепер давайте з’ясуємо з чого ж таки почати →

Як з допомогою GDB дебагера з’ясувати чому ваш Python процес завис

Зовсім недавно на одному з клієнтських проектів (http://www.ihoppers.com) ми мали проблемку із зависанням Python сервера. Під “зависанням” мається на увазі ситуація, коли процес “з’їдає” весь ресурс процесора і забирає необмежену кількість часу. Після того як усі потоки в межах даного процесу сервера зайняті аплікація повністю перестає обслуговувати відвідувачів.

Debugging with GDB

Фото взято з uplifted.net

Проект написаний на Plone CMS і обслуговується на Ubuntu сервері. Тому дана техніка дебагу була застосована саме для дослідження Python процесу на Лінуксі.

Зазвичай, коли є потреба подебажити те чи інше місце в Пітон коді я використовую pdb – Python дебагер. З допомогою нього ставлю точку зупинки в програмі, і вже там на місці досліджую змінні середовища, що не так, і т.д… Зазвичай працює добре! Чому ж тоді цього разу я звернувся за допомогою до GDB інструменту?

Проблему із зависанням процесу було важко відтворити як на розробницьких так і на продакшин машинах з реальною базою даних. Могло бути так що 3 рази на день трапляється після того як хтось поредагував контент на сайті, а могло бути так що 2 тижні все спокійно і ніяких глюків.

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

Далі до Інструкції і Відео по використанні GDB дебагера →

Звіт про Практичний Семінар – Python, wxPython, пишемо Калькулятор

Кілька тижнів тому я презентував мову Python студентам Політехнічного університету у Львові. Тоді ми домовилися, що зустрінемося вдруге і вже спробуємо провести короткий практичний семінар і написати щось корисне під час нього.

Семінар - wxPython Калькулятор

Семінар – wxPython Калькулятор

Так от минулого тижня ми знову зустрілися в одній із аудиторій Політехнічного і провели півторагодинний практичний урок на тему Python і декстопних аплікацій, а саме – написання простого Калькулятора з допомогою Python GUI бібліотеки wxPython.

(більше…)

iCamp – Інтернет-форум у Львові 2013

У цій статті поділюся з вами враженням від події, яку відвідав цієї суботи 26 жовтня – iCamp 2013. Наприкінці статті також розкажу кілька фішок – як взяти для себе максимум користі від конференції.

iCamp 2013

iCamp 2013 @ фото взято з smcamp.com.ua

(більше…)

Презентація мови Python для студентів Львівської Політехніки – Частина 1

Кілька тижнів тому мене запросили провести невеликий практичний семінар студентам Львівської Політехніки і розказати про мову програмування Python. Я із задоволенням погодився…

Вступ до мови Пітон для студентів Львівської Політехніки

Вступ до мови Пітон для студентів Львівської Політехніки

І вже навіть почав перебирати про що саме можна розповісти студентській аудиторії. Але проблемка була у тому, що ми точно не знали ні скільки людей там буде, ні рівень знань присутніх… Тому вирішили розділити цю подію на дві частини:

(більше…)

Розшукується Python Django Девелопер (Middle)

На повний робочий день в офіс, Львів (700-1700$)

Коротко:

Любиш програмувати на мові Python, під веб і на Django? Маєш вже непоганий досвід, будь-то власний проект, чи опенсорс, чи в команді на попередньому місці праці? Любиш писати код з юніт тестами, документацією і притримуючись Style Guide-у?

Ти – майстер на всі руки, і вмієш всього по троху –  тобі цікаво не лише Python, Server Side i Django, але й HTML, JavaScript, деколи щось поадмінити, задеплоїти, промоніторити, навіть не нехтуєш можливістю поковирятися зрідка в CSS? Ти хочеш бачити і розуміти весь процес розробки проекту на всіх його ланках, а не лише сервер сайд кодування?

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

Тоді читай далі!

(більше…)

Наступні 20 років мови Python

Цього року EuroPython (щорічна Пітон конференція у Європі), що відбувалася у Флоренції, була відкрита Ваном Ліндбергом (Van Lindberg) – головою Python Software Foundation. Він надав ретроспективний погляд на мову Python, а також спробував представити, що ж може бути з нею впродовж найближчих 20-ти років.

Я, на жаль, не зміг відвідати цю чудову подію цього року, тому вичитав опис даної доповіді з цієї англомовної статті: The next 20 years of Python.

Для тих, кому не байдужа доля цієї класної мови програмування (моя улюблена на даний момент :), а також кому просто цікаво, які проблеми вона переживає, чим взагалі живе, я постарався і переклав її нижче на українську мову. Я не професійний лінгвіст, тому перепрошую за неточності, але я старався перенести основний зміст якомога ближче. Надіюся зацікавленим буде корисно!

(більше…)

Lviv Mobile Development Day 2013

Минулого року я відвідав дуже класну подію у Львові: Mobile Development Day. Хоча сам розробкою мобільних додатків не займаюся, а поки працюю лише на рівні мобільних версій для веб-сайтів, подія для мене все одно була надзвичайно цікавою і корисною.

Уся подія відбувалася у два потоки: бізнес мобільних додатків, а також технічна сторона цього бізнесу. Тому подія була корисною як для розробників (тєхнарів 🙂 так і для тих, кому була більше цікава бізнес сторона цієї цікавої справи.

Оскільки я сам на той час був далекий від розробнки мобільних додатків, то вибрав для себе більшість доповідей в бізнес потоці. І не розчарувався. Супер доповіді про:

  • рішення доповненої віртуальної реальності
  • як одна людина з допомогою фрілансерів розробила кілька власних додатків і заробила більше ніж 100K $ за один рік
  • про успішні бізнес додатки
  • бізнес сторона мобільних ігор, приклади український компаній

і ще багато інших були надзвичайно цікавими і мотивуючими. Крім того купа нових знайомств, контактів і позитиву!

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

(більше…)