середа, 31 травня 2017 р.

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

Днями розповідав своїм студентам про те, що обов’язково треба вставляти текст повідомлень у Actual Result - наявний результат тесту у звіті про помилку. Ніби все зрозуміло і очевидно. Але потім у завданні кількох студентів побачив опис, що обурив моє почуття прекрасного:


Всі (принаймні, молоді тестери) чомусь думають, що поля Наявного (Actual Result, AR) та Очікуваного (Expected Result, ER) результату мають бути спорідненими, заповненими приблизно однаковими словами. Часто навіть бачу багрепорти, де ці поля відрізняються лише присутністю чи відсутністю частки "не". Табличка результатів тестування виходить гарна та однорідна. Я вважаю, що це "шкідлива однорідність". Бо вищенаведені поля мають принципово різну ціль, і мають бути заповнені відповідно до свого призначення, а не "для гарного візерунка".

Чому треба обов’язково додавати повідомлення в Наявний Результат?
Тому що це дозволить програмісту знайти ті місця в коді, де викликається показ саме цього повідомлення; і виправити логіку саме в тому випадку, що описаний у кроках відтворення, звісно якщо це необхідно.

Чому не варто, а часто навіть шкідливо, додавати текст повідомлення в Очікуваний Результат?
Тому, що це багрепорт - повідомлення про помилку - а значить логіка роботи системи потребує зміни. І ми дізна́ємося, які саме зміни були внесені, і яку шкоду покращення було зроблене тільки згодом. Тому зараз, коли ще навіть невідомо, чи це баг, і тим більше не відомо, як і коли його будуть фіксити, не можна диктувати програмістові з майбутнього, якими словами його логіка буде звертатися до користувачів. 
Але навіть тоді, коли логіка виправлення здається дуже ясною, як на картинці вище, багато всього залежить від контексту, який неможливо вмістити в одне речення звіту про баг. 

пʼятниця, 5 травня 2017 р.

Мої IT-проповіді у школах Києва


Завдяки Svitla Systems та IT-асоціації України, сходив за квітень у кілька (десь 5) шкіл Києва із отакою лаконічною презентацією власного виробництва: презентація тут




Враження залишились дуже добрі! 
Я і загалом люблю спілкуватись з дітьми, а тут навіть деяким з них було дійсно цікаво! Навряд чи я когось переконав вчити програмування, якщо він не хотів до цього. Але принаймні я додав рішучості тим, хто хотів, але вагався. 
Мої поради, поза презентацією, були наступні:
  • Математику та фізику треба вчити. Бо математика вчить будувати алгоритми, а фізика - моделі.
  • Англійську треба вчити передусім.
  • Починати треба з Python (Ну а з чого ж ще, гиги).
  • Програмування треба вчити усім. 
  • Не треба боятися. В теперішньому світі все можливо.