Програміст Початківець: На скільки важлива англійська мова на старті кар’єри?

Давніше на dou.ua з’явилася дискусія на форумі із заголовком: “HR украинских IT компаний говорят, что главное знать английский, а программированию мы научим“.

Я абсолютно не погоджуюсь із даним судженням. Так само тоді можна сказати: “головне програмування, а англійську ми навчимо”.

Do you speak english?

@nativespeakers.ch

Так от. В даній статті із серії “Програміст Початківець” ми з вами розберемося у двох питаннях:

  • на скільки важливо знати початківцю англійську
  • як краще вивчати англійську програмісту початківцю

(більше…)

Retainer або Як Програмісту Фрілансеру Дорожче Продати Свої Послуги

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

Retainer

@agencypost.com

Почну з мого конкретного прикладу продажу першого Рітейнера, а вже потім розберемося з Рітейнерами глобальніше.

(більше…)

Програміст Початківець: Чому варто почати з мови програмування Python?

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

Languages

@vitalflux.com

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

В будь-якому випадку готовий до критичних коментів та цікавих дискусій…

(більше…)

Програміст Початківець: Як Отримати Першу Реальну Практику?

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

Theory vs Practice

@www.flprobatelitigation.com

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

То ж як набути першу практику початківцю… →

Як пришвидшити власну JavaScript аплікацію?

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

Page Speed

@www.organisationscience.com

Мені неодноразово приходилось оптимізувати повільні Javascript веб аплікації і в даній статті хочу поділитися кількома речима, що особливо запам’яталися.

Отже, якщо ваша веб сторінка буквально “замерзає” на 3, 5, 10 секунд одразу після завантаження чи в процесі роботи з нею, і ви вже спробували різноманітні швидкі способи її пришвидшення. Як от застосування порад від Google чи Yahoo, або можливо спробували автоматизовані сервіси для фронт-енд оптимізації сайтів як:

і тим не менше, відчутного покращення не має. Тоді саме час закатати рукава і трохи глибше копнути у власний код. Глянути чи можна щось пришвидшити у ваших стилях, html коді, ну і звичайно найважливіше – Javascript коді.

Хочу пришвидшити свою веб сторінку →

Програміст Початківець: Яку мову, технологію, напрямок обрати?

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

Popular Languages 2013

То ж, яку мову програмування і напрямок обрати? →

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

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

Programming Mentor

Фото взято з @www.lovetefl.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.

(більше…)