Що таке тести, коли їх писати, як та для чого?

Що таке тести, коли їх писати, як та для чого?

Тема автоматизованих тестів – це ще одна популярна тема, про яку часто питають початківці. Найчастіше запитують:

  • що таке ці тести і якими вони бувають?
  • коли потрібно ними займатись в проекті?
  • що таке TDD, Continuous Integration, Test Coverage?
  • як зробити тести максимально корисними і ефективними?

У своїй книзі “Веб-розробка з Python та Django для Початківців” я присвятив цілу главу автоматизованим тестам. В даній главі є доволі об’ємна теоретична частина, яка вводить студента у курс справи і відповідає на усі вищенаведені запитання.

Тому у сьогоднішній статті я просто викладаю теоретичний вступ 14-ї глави своєї книги…

(більше…)

Кілька змін, фішок та чуток щодо ведення Зовнішньої Економічної Діяльності (ЗЕД) для ФОПа

Кілька змін, фішок та чуток щодо ведення Зовнішньої Економічної Діяльності (ЗЕД) для ФОПа

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

В даній статті ми піднімемо ряд важливих для вас тем:

  • чи потрібна ФОПу печатка при роботі із закордоном;
  • останні зміни щодо договорів і інших документів при роботі із закордоном;
  • коли краще продавати валюту на міжбанку і чи варто враховувати курсові різниці;
  • останні нововведення та чутки щодо змін в оподаткуванні ФОПів;
  • гарантування повернень вкладів ФОПам при банкрутстві банку.

А тепер прямий текст від автора – Галини Кульба, фінансового менеджера однієї із львівських фірм (автор побажав не розголошувати ім’я фірми).

(більше…)

Історія успіху: з нуля до першої роботи програмістом, Олександр Велимчаниця

Історія успіху: з нуля до першої роботи програмістом, Олександр Велимчаниця

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

Саме для мотивації читачів моєї книги “Веб-програмування з Python та Django для Початківців” я підготував 11 інтерв’ю і запакував їх у рекомендований пакет. Відтепер намагатимусь публічно ділитись усіма історіями успіху, про які буду дізнаватись, на сторінках цього блогу.

***

А почнемо ми з Олександра Велимчаниці. Олександр вже на базовому рівні володів мовами PHP та HTML, коли потрапив до мене на персональне наставництво. На початку навчання давалось доволі складно і повільно. Однак завдяки дисципліні і звичкам, які ми разом напрацювали, на 212-ий день менторства Олександр вже самостійно продовжив навчання. А через місяць після зупинки менторства отримав свою першу роботу (Python/Django junior, веб-програмування), на якій працює успішно і до цього часу. І ще одна важлива деталь: Олександру на час написання цих рядків лише 18 😉

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

(більше…)

Редизайн інтерфейсу вашого життя як спосіб досягнення цілей

Редизайн інтерфейсу вашого життя як спосіб досягнення цілей

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

Із початком осені врешті-решт почав знову входити у звичний режим і вирішувати хоча б одну важливу справу на день. При цьому вирішуючи й надалі масу операційних щоденних завдань (такий тип завдань я також називаю “щоденною метушнею” 😉

Тому в сьогоднішній статті розкажу про один класний підхід, який мені зазвичай допомагає повертатись знову і знову до правильного режиму. Якщо ви маєте відношення до IT і чули таке слово як “інтерфейс”, тоді даний підхід вам також сподобається.

(більше…)

Чи потрібна програмісту вища освіта?

Чи потрібна програмісту вища освіта?

Давніше я уже писав про варіанти освоєння професії програміста. Одним із таких варіантів є ВУЗ. Навчання у ньому є з однієї сторони довгим і часто невиправданим, але з іншої сторони може дати надзвичайно хорошу базу і розуміння професії.

У цій статті я розбирав спеціалізації у ВУЗах для програмістьких напрямків. А в даному пості хочу поділитись своїми думками і позицією щодо того чи потрібна вища освіта програмісту взагалі. Дане питання я неодноразово отримував від читачів блогу. Ось останнє із них:

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

Бачите, що питання стоїть в тому чи потрібна вища освіта саме для працевлаштування. Я ж розгляну ще і варіант чи потрібна освіта для отримання знань. Почнемо із другого варіанту:

(більше…)

У яких випадках мова програмування Python є правильним вибором?

У яких випадках мова програмування Python є правильним вибором?

Першою мовою програмування, яку я спробував була мова Паскаль. Її нам в універі (на мех-маті в ЛНУ ім. І. Франка) викладали, на скільки пам’ятаю, один симестр. Далі, на останньому курсі університету мені порекомендували спробувати освоїти мову Python, щоб націлитись на свою першу роботу в якості веб-програміста. Пізніше у своїй програмерській кар’єрі я також непогано освоїв Javascript i PHP. Також “бавився” із Ruby і вивчав C++ (чисто по книжці із виконанням цікавим домашок).

Наша команда володіє кількома різними мовами програмування і розробляє веб-сайти використовуючи мінімум 3 різних фреймворка та CMS на різних мовах. Ми вже давно зрозуміли, що не існує єдиної мови, інструменту для всіх проектів. Класно володіти арсеналом інструментів та підбирати той, який допоможе найшвидше та найякісніше вирішити задачу. Адже ніхто не буде нарізати хліб сокирою чи колоти дрова ножем 😉

Тим не менше улюбленою мовою програмування в мене особисто була і залишається мова програмування Python. Її простий синтаксис, швидшість написання програм, великий набір бібліотек, відкритий код та широкий спектр застосування – все це ставить її на першу позицію в моєму особистому рейтингу.

Незважаючи на це я чудово розумію, що дана мова також має свої мінуси. Є задачі і сфери, де на Python можна успішно проскакати до фінішу, а є речі, які краще на ній не писати.

В сьогоднішній статті поділюсь власним досвідом і думками щодо тих задач, які варто розв’язувати з допомогою мови Python і наведу приклади, коли Python краще уникати. Думаю в наступних статтях я також розкажу про застосування інших мов, якими володію. А сьогодні розберемось із моїм улюбленцем – Python…

(більше…)

Що потрібно вміти, щоб бути веб-розробником і де цього навчитись?

Що потрібно вміти, щоб бути веб-розробником і де цього навчитись?

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

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

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

(більше…)

Як програмісту-фрілансеру легально працювати із закордонним замовником (ЗЕД)?

Як програмісту-фрілансеру легально працювати із закордонним замовником (ЗЕД)?

Ще давно, коли я лише починав займатись фрілансом, я одразу почав працювати через закордонні фрілансерські біржі: elance.com, odesk.com, freelancer.com (до речі нещодавно elance.com i odesk.com злились у одий сервіс upwork.com). Перші 2 місяці, коли я тільки навчався фрілансерського ремесла і пробував розібратись з усіма його нетехнічними нюансами, я не легалізував своєї діяльності, адже не був впевненим, що все піде як хотілось.  Вже тоді можна було замовити Payoneer.com картку і на неї скидати валюту. З деякими проблемами, але все ж таки далі можна було знімати в Україні із цієї картки валюту.

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

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

(більше…)

Скільки потрібно часу, щоб стати програмістом?

Скільки потрібно часу, щоб стати програмістом?

Коли я почав продавати свою книгу, запустив перших студентів у закриту групу підтримки, почалась класна тусовка. Усі весело йшли по перших главах книги, виконували домашки, мотивація і позитивний настрій зашкалювали! І так тривало до глави 5-ї. Далі, коли пішло саме “м’ясо” веб-розробки, стало доволі “глухо” в групі, маса запитань, і, врешті-решт, трохи скарг на те, що приходиться по кілька разів перечитувати глави. Що вже тиждень сиджу над главою і не йде. І тому подібне…

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

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

(більше…)

Чи потрібно програмісту знати математику, яку та на скільки добре?

Чи потрібно програмісту знати математику, яку та на скільки добре?

Сьогодні розглянемо чергове досить популярне запитання від людей, які думають переходити в програмісти: “Чи потрібно програмісту знати математику?”. Останнім часом дане питання зачастило у моїй емейл скриньці та серед приватних повідомлень в соцмережах, тому саме час розширено дати відповідь.

Що розглянемо в даній статті? По-перше, розберемось із термінами, щоб зрозуміти, що таке математика і якою вона буває. Кожен із програмістів, хто дає відповідь на дане запитання, має на увазі “свою” математику. Тому важливо дане питання уточнити.

Далі розберемось, яку саме математику потрібно знати програмісту. Також, які області математики потрібно знати для різного роду програмістських задач. Поділюсь своїм досвідом. Ну і, звісно, розберемось із необхідним мінімумом для будь-якого технічного спеціаліста в IT.

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

То ж, почнемо із розбору термінів…