«Я просто роблю те, що мені подобається». Як 18-річний студент навчає дітей програмуванню та видає підручники з Python
Євгену Козолупу лише 18 років, а він вже викладає програмування в київському ліцеї, видає власні підручники з навчання Python та працює над розробкою онлайн-курсів. Спеціально для DOU Євген розповів про ті, чому юний вік — не перешкода програмуванню, реалізації амбітних цілей та ведення всеукраїнського проекту з навчання програмуванню.
Разом з учнями Сумської ССШ #17
Як і чому захопився програмуванням
В 11 років у мене з'єднання явився перший комп'ютер, і я почав з найпростішого — створював малюнки, презентації та візуалізації. Хоча це все було доволі примітивно, мою зацікавленість помітили в школі й запропонували піти на курси програмування. Я був у п'ятому класі, і це здавалось мені чудовою пригодою. Проте надовго з навчанням не склалося: викладачу було нецікаво нас вчити. Спочатку він пропускав уроки, а потім просто заявив, що зайняти більше не буде. Хоч мені і подобалось вивчати З++, я кинувши.
Опубліковано: 02/12/19 @ 08:00
Розділ Різне Читати далі...
5 книжок про роботу мозку від Олексія Молчановського, керівника магістратури з Data Science в УКУ
Від редакції: у рубриці DOU Books спеціалісти розповідають про 5 своїх улюблених книжок — ті, які змінюють світогляд та корисні читачам-колегам.
[Про автора: Олексій Молчановський — керівник магістерської програми Data Science Українського Католицького Університету, співзасновник Prometheus]
The Tipping Point: How Little Things Can Make a Big Difference by Malcolm Gladwell
УкраїнськоюМалколм Гладуелл «Поворотний момент: як дрібні зміни спричиняють великі зрушення»
За рівнем вражень та захоплення ставлю книгу в один ряд з працею Канемана «Мислення швидке і повільне». Книга про ті, які закони керують поширенням соціальних явищ (епідемій). Вона так добре мені «лягла», бо, напевно, останнім годиною я сильно захопився мережевим підходом: я бачу мережі майже скрізь :) Хоча в самій книжці автор слово «мережі» використовує, мабуть, менше п'яти разів. Але мова йде про ті самі процеси, які описуються в Science Network.
Опубліковано: 27/11/19 @ 11:07
Розділ Різне Читати далі...
Збірка домашнього 3D-принтера своїми руками: рекомендації з особистого досвіду
3D-друк і складання 3D-принтерів — моє хобі і захоплення. Тут я не буду ділитися детальними схемами і кресленнями, їх більш ніж достатньо на профільних ресурсах. Головна мета цього матеріалу — розповісти, з чого почати, куди копати і як уникнути помилок у процесі складання домашнього 3D-принтера. Можливо, хто-небудь з читачів надихнутися на прикладні інженерні звершення.
Навіщо потрібен 3D-принтер? Сценарії використання
Вперше з ідеєю 3D-друку я зіткнувся в далеких 90-х, коли дивився серіал Star Trek. Пам'ятаю, як мене вразив момент, коли герої культового серіалу друкували необхідні їм під час подорожі речі прямо на борту свого зорельота. Друкували вони все що завгодно: від взуття до інструментів. Я думав, що було б здорово коли-небудь теж мати таку штуку. Тоді це здавалося чимось неймовірним. За вікном — похмурі 90-е, а «нокіа» з монохромним екраном була вершиною прогресу, доступною лише обраним.
Роки йшли, все змінювалося.
Опубліковано: 26/11/19 @ 11:00
Розділ Різне Читати далі...
Оцінка трудомісткості розробки проектів. Частина 2
У першій частині статті ми розглянули загальні міркування про цілях, структурі і складнощі оцінки. Тепер розглянемо як підійти до визначення скоупа і вимог і як, власне, отримати і описати заповітні числа передбачуваної трудомісткості проекту. А в кінці «під капотом» вас очікує трохи математики.
Метод оцінки
У цій частині дано детальні рекомендації для оцінки трудомісткості проекту. Практично за кожним пунктом стоять роки досвіду, успіхів і помилок. Запропонований метод в основному застосовується до проектів на етапі, коли опрацьовані вимоги до рівня користувача або функціональних. Багато ж поради та рекомендації підійдуть до будь-яких проектів розробки та інженерних проектів взагалі.
Крок 1. Підготовка (Prerequisites)
1. Виділяйте або вимагайте ресурси для оцінки. На жаль, далеко не всі менеджери і клієнти розуміють всю складність і трудомісткість якісного процесу оцінки. Вимагайте, щоб у оцінювачів було достатньо часу і інших ресурсів для роботи.
Опубліковано: 25/11/19 @ 11:00
Розділ Різне Читати далі...
Висновок реалізацій інтерфейсів в Scala c бібліотекою Shapeless
У статті розглянемо приклад перетворення даних алгебраїчного типу в уявленні через sealed trait family в узагальнене уявлення. Покажемо техніки роботи з цим узагальненим поданням на прикладі структурного порівняння, операції diff. В кінці статті — працюючий приклад в репозиторії на GitHub. Мотивація Напевно багатьом програмістам, які пишуть на статично типізованих мовах, часто доводиться мати справу з введенням операції порівняння (метод equals, операція == і т. д.). У більшості мов ця операція вводиться безпосереднім написанням коду операції. Найчастіше це може виглядати якось так: class Foo { private var bar: Int private var baz: Double private var qux: String override def equals(that: Foo): Boolean = { this.bar == that.bar && this.baz == that.baz && this.qux == that.qux } } Однак написання такого коду буває досить громіздким і трудомістким, особливо для великої кількості класів.
Опубліковано: 23/11/19 @ 08:00
Розділ Різне Читати далі...
Java дайджест #45: Micronaut і Quarkus, відео з Devoxx Belgium 2019
Посилання, на які краще таки натиснути (на думку автора), відзначені знаком (!) Щось на зразок новин AdoptOpenJDK Introduces Quality Assurance Program . Вийшов Spring HATEOAS 1.0.0.RELEASE . Хто реально використовує HATEOASв комерційних проектах? Чи всі перейшли на gRPCі GraphQL? (!) Вийшов GraalVM 19.3 з підтримкою JDK 11. Gradle Вийшов Gradle 6.0 . Decommissioning HTTP for Gradle Services . Avoiding dependency hell with Gradle 6 . Micronaut і Quarkus (!) Battle Of The Microservice Frameworks: Micronaut versus Quarkus edition! Щось мені підказує, що Micronautі Quarkusбудуть гарячою темою ще рік. Micronaut: Declarative HTTP Client . Чомусь мені здається, що декларативні HTTP-клієнти — така ж мерзота, як і Spring Data. Хто-небудь з читачів ДОУ користується ними в реальних проектах? Quarkus for Spring Developers . Як на мене, Micronautповинен бути ближче для Spring-девелоперів. Почитати і подивитися (!) JEP 358: Helpful NullPointerExceptions .
Опубліковано: 22/11/19 @ 11:58
Розділ Різне Читати далі...
Здоров'я ІТ-спеціаліста: сон, харчування, фізична активність
Хотілось би, щоб ця стаття стала мотивацією стежити за власним здоров " ям: мити руки з милому, їсти фрукти, носити шапку. А враховуючи специфіку роботи в ІТ — перевіряти зір, займатись спортом або хоча б влаштовувати піші прогулянки, відвідувати масажний кабінет, вимикати всі девайси за годину до сну тощо. Це якщо стисло. А якщо детальніше — читайте далі.
Ця стаття є першою з серії матеріалів на DOU, присвяченої здоров'ю. Тут ви знайдете загальні поради від сімейного лікаря, тренера та дієтолога, а також кейсі від ІТ-спеціалістів та HR. Наступні статті будуть більш профільними: розглянємо проблеми з зором, спиною, неврологію та психічне здоров'я.
Нагадуємо: самолікування може зашкодити, тому у будь-якому разі радимо звертатись до лікарів. Також важливо пам " ятати, що універсальних порад не існує, тож не варто сприймати текст як абсолютну істину. Все індивідуально.
Опубліковано: 21/11/19 @ 11:00
Розділ Різне Читати далі...
Certonid — SSH центр сертифікації, який працює на AWS Lambda
Всім привіт! Мене звуть Олексій, я розробник/девопс/подкастер, і в цій статті я хочу вам розповісти про свій проект Certonid — серверлесс-SSH-центрі сертифікації (serverless SSH certificate authority). Цей інструмент може допомогти вирішити проблему менеджменту доступу до Linux-серверів по SSH. Давайте почнемо по порядку.
SSH-сертифікати
SSH всюдисущий. Це де-факто стандарт для віддаленого адміністрування *nix-систем. Коли девопс налаштовує Linux-сервер, то зазвичай створюється пара облікових записів з паролями. Локальне керування обліковими записами добре працює з невеликими групами серверів, але по мірі зростання продукту потрібно створювати центральну систему аутентифікації, таку як LDAP і/або Kerberos, щоб уникнути ручного управління обліковими записами на кожному сервері. При подальшому зростанні девопс може прийти до висновку, що центральна система аутентифікація — єдина і потенційно руйнівна точка відмови всієї системи.
Опубліковано: 19/11/19 @ 11:00
Розділ Різне Читати далі...
Шукаємо причини овертаймів в команді: чек-лист для менеджера
Досить часто, заходячи в нові проекти, я стикаюся з ситуацією, коли команда проекту багато і безнадійно працює понаднормово. Це позначається як на настрої в колективі, так і на результати проекту, неминуче катящихся по похилій, і навіть на відносинах із клієнтами, на яких вихлюпується пасивна агресія. Для виникнення понаднормової роботи в проектах існує ряд причин і передумов. У цій статті ми не будемо розбирати кореневі причини овертаймів. В той же час я б хотів поділитися деякими практичними спостереженнями про те, куди дивитися, щоб усунути або, як мінімум, зменшити час понаднормової роботи команди. Все, що розбираємо, відноситься до проекту, який вже перебуває на стадії виконання. Розглядайте список як неприоритизированный і не є кінцевим. Ви можете пробувати все нижчеперелічене (у форматі healthcheck) або застосовувати при аналізі проекту на ретроспективах або інших зустрічах, щоб визначити конкретні кроки більш предметно.
Опубліковано: 18/11/19 @ 11:01
Розділ Різне Читати далі...
Security Sandwich: інструкція з приготування
Привіт! Мене звати Таня, і я все ще тестувальник. За той час, що ми з вами не бачилися, я встигла заснувати митап QA Amsterdam і дати інтерв'ю про те, як докотилася до такого життя. А сьогодні я хочу розповісти про Security Sandwich. Кіт Матроскін говорив, що краще їсти бутерброд маслом вниз: так смачніше. Про те, що таке бутерброд безпеки і як потрібно їсти, щоб не вдавитися, ця стаття. Що ж представляє із себе класичний бутерброд безпеки Початкова стадія , яка включає у себе вимоги до безпеки, оновлення інфраструктури, угоди і принципи реалізації. Розробка , що включає впровадження цього добра в итеративную аджайл-методологію, інсайти, основні елементи, постійні вимоги та перегляд. Go-Live-стадія , що включає код рев'ю і тестування на проникнення. Початкова стадія: всі хочуть від чогось захиститися. Але від чого? Перш ніж починати робити щось у цьому напрямку, добре б подумати над тим, що ми захищаємо і від кого .
Опубліковано: 15/11/19 @ 11:00
Розділ Різне Читати далі...
Як у SoftServe втілили концепцію Mixed Reality, у якій віртуальні фрази об'єкти можна відчути на дотик
У рубриці DOU Labs ми запрошуємо IT-компанї ділитись досвідом власних цікавих розробок та внутрішніх технологічних ініціатив.
Привіт, я Тед Романус, Research Engineer у SoftServe в напрямку Human-computer interactions (HCI). Наша група в R&D працює над новими технологіями, що змінюють взаємодію людини з цифровими медіа — від віртуальної (Virtual) і доданої (Augmented) реальності до ефектів дотику (Haptics) та взаємодії через мову тіла й емоції (Affective computing).
Сьогодні я розповім про наш проект Touch My Heart — першу у світі голограму, якої можна торкнутися, яку можна штовхнути і яка передає такі легкі модуляції як серцебиття людини. Це демо, яке ми вже презентували на кількох найбільших HCI-конференціях у Великій Британії, США, Японії, Іспанії та Китаї, відкриває нові можливості природнішої й інтимнішої взаємодії з віртуальними об'єктами та дозволяє вже тепер почуватися героєм Blade Runner.
Опубліковано: 14/11/19 @ 11:00
Розділ Різне Читати далі...
Union-find: алгоритм, застосування та аналіз складності
Всім привіт! Мене звати Данило, і я Java-розробник в компанії TeamDev, займаюся написанням ПО мережевих пристроїв.
Думаю, багато хто з вас читали Роберта Мартіна, а може, і є поціновувачами його ідей. Мені запам'яталася одна його фраза з книги «Ідеальний програміст» : «Недостатньо виконувати свою повсякденну роботу і називати її тренуванням». Тренуванням Мартін називає «застосування своїх навичок... з єдиною метою вдосконалення цих навичок».
Мене ця книга мотивувала займатися предметними областями, не пов'язаними з моєю безпосередньою роботою. В одній з таких тем я постарався ретельно розібратися і поспішаю поділитися з вами накопиченою інформацією.
Опубліковано: 13/11/19 @ 11:00
Розділ Різне Читати далі...
Поради для початківця Java розробника. Підготовка до співбесіди — частина 3
Після обговорення найбільш поширених питань з основ Java в першій частині і двом популярним фреймворкам у другій частині статті, розберемо, що залишилися, але не менш важливі інструменти і технології. Алгоритми Основна тема на співбесідах за кордоном користується у нас набагато меншою популярністю. Про підготовку до закордонним співбесід на позицію розробника написано десятки книг і сотні статей, в яких левову частку займає саме постановка алгоритмічного мислення і розбір популярних завдань. У нас, на щастя, великої необхідності в студіюванні сайтів на кшталт leetcode.com немає. В іншому випадку час підготовки до співбесіди збільшилася б як мінімум удвічі. Втім, жодне співбесіду без подібних питань не обходиться все одно. У кожного собеседующего є свій список «вдалих» завдань для перевірки здатності послідовно і структуровано мислити. Іноді досить абсурдних і мало застосовні до реальних ситуацій.
Опубліковано: 12/11/19 @ 11:00
Розділ Різне Читати далі...
Як правильно поїдати чуже печиво: GDPR-аспект
Я Лідія Климків, старший юрист практики захисту персональних даних Axon Partners. І на жаль, зараз ми не будемо про «лизни, покрути, булькни в молоко». Я розповім про файли кукі та про ті, як правильно одержувати згоду користувачів на їх установлення та оброблення зібраної ними інформації. Ця стаття буде цікавою тим, хто пригадує свій біль від порад юриста щодо їхнього кукі-банеру, а також тим, хто взагалі не здогадувався, що до цього банера можуть бути якісь серйозні правові вимоги.
Як би смішно це не звучало, питання кукі-банера, що займає три речення, часом забирає у юристів більше часу на роздуми про його форму та її обговорення з клієнтом, ніж написання якогось простенького договором або позовної заяви.
Опубліковано: 11/11/19 @ 11:00
Розділ Різне Читати далі...
C++ дайджест #21: дебаг у Visual Studio та Visual Studio Code
Привіт, мої любі сішники! Сьогодні випуск буде присвячено відладці у Visual Studio та Visual Studio Code. Тож почнімо? :) Debug у Visual Studio та Visual Studio Code Visual Studio: 11 Visual C++ Debugging Tips That Will Save Your Time ; C++ Debugging Tips and Tricks(відео) ; 7 Hidden Gems in Visual Studio 2017 . Visual Studio Code: Configuring C/C++ debugging ; VS Code Tips and Tricks ; Debug C++ in Visual Studio Code . Новини Embedded Fest — 30 листопада, Київ — найбільша у Східній Європі конференція для Embedded & Linux розробників. Для читачів дайджесту знижка 10% за промокодом: D-DIGEST-10. LoGeek Night — 12 листопада, Київ. Software Architecture Meet-Up — 21 листопада, Харків. GlobalLogic Kharkiv Embedded TechTalk #5 — 22 листопада, Харків. Games Gathering 2019 Kiev — 7-8 грудня, Київ — найбільша у Східній Європі конференція, присвячена розробці ігор.
Опубліковано: 09/11/19 @ 11:00
Розділ Різне Читати далі...
Застосування GameplayKit Randomization і State Machine в iOS-проектах
У попередній статті було описано, як застосовувати ігровий 2D-движок SpriteKit для швидкого створення простих анімацій в iOS. У новій статті я хочу поділитися, як використовувати GameplayKit в неігрових додатках.
GameplayKit — це набір інструментів, який Apple представляє для швидкого конструювання ігрових процесів і алгоритмів. Розглянемо інструменти, які застосовуються навіть в UIKit/Appkit-проектах.
Randomization
Так називається інструмент, що дозволяє застосовувати різні алгоритми рандома, які досить часто доводиться використовувати в іграх. Тут не буде обговорюватися генерація рандомних чисел для створення секретних ключів шифрування, так як навіть в самій документації у Apple зазначено, що ці сервіси рандомізації не є криптографічно стійкі, і для таких цілей рекомендується застосовувати зовсім інші інструменти .
Раніше найчастіше багато застосовували метод random() або arc4random(), побудований на ARC4-алгоритмі і генерує числа від 0 до 4294967295. Після виходу Swift 4.
Опубліковано: 08/11/19 @ 11:00
Розділ Різне Читати далі...
DOU Hobby: кікбоксинг – ефектне поєднання боксу і східних бойових мистецтв
[DOU Hobby — рубрика про нетехнічні проекти IT-фахівців: творчість, цікаві хобі та інші lifestyle-досягнення. Якщо вам є про що розповісти — пишіть на valentina@dou.ua ]
Віталій Шквира — Sr. Project Manager в компанії SoftServe. Він вже три роки займається кікбоксингом. В інтерв'ю для DOU Віталій розповів, як він захопився цим видом єдиноборства, як минають тренування та чим отримані у спорті навички можуть виявитися корисними в роботі й у житті.
Люблю «бій із тінню», бо тут ніхто не дає здачі :)
— Віталію, що таке кікбоксинг? З чого почалося твоє захоплення?
Кікбоксинг — це вид контактних єдиноборств, який вінік у США в 1966 році. Один з його засновників — японець Ноґуті Осаму. У кікбоксингу поєднуються техніка і правила боксу, альо додаються удари ногами. Зазвичай кількість раундів у поєдинку менша, ніж у боксі — від 3 до 5 в залежності від версії або турніру. Проте кікбоксинг за рахунок ударів ногами та більшої кількості нокаутів вважається більш видовищним.
Опубліковано: 06/11/19 @ 11:00
Розділ Різне Читати далі...
«Живий» прогноз погоди, або Як використати генеративне мистецтво у вебі
У рубриці DOU Проектор всі охочі можуть презентувати свій продукт (як стартап, так і ламповий pet-проект). Якщо вам є про що розповісти — запрошуємо взяти участь. Якщо ні — можливо, серія надихне на створення власного made in Ukraine продукту. Питання і заявки на участь надсилайте на editors@dou.ua .
Мене звуть Мар'яна, я випускниця програми Computer Science в УКУ. У цій статті я хотіла б розповісти про свій дипломний проект. Його суть у тому, щоб зробити веб-застосунок , який зображатиме реальні погодні умови на прикладі природного пейзажу, створеного за допомогою генеративного мистецтва. Ідея полягає в тому, щоб створити новий підхід до зображення погодних умов, що має спростити сприйняття інформації користувачем.
Що таке генеративне мистецтво
Генеративне мистецтво створюється за допомогою автономної системи, яка сама ухвалює сет рішень, обмежуючись правилами. Автор диктує правила, а система генерує контент. Такий собі дует людини та машини.
Опубліковано: 05/11/19 @ 11:00
Розділ Різне Читати далі...
Рейтинг ІТ-роботодавців 2019: опитування
Рік тому ми анонсували оновлений рейтинг роботодавців на jobs.dou.ua . Ї вісь знову запрошуємо ІТ-спеціалістів узяти участь та оцінити свою компанію. Рейтинг є безкоштовним та відкритим для всіх компаній.
Цього року маємо зміни в алгоритмі голосування — відтепер спеціалістам потрібно підтвердити своє місце роботи за допомогою корпоративного імейла. Альо все по черзі.
Анкета
В анкеті ми пропонуємо респондентам відповісти на 13 запитань, які розділено на п'ять блоків:
Компенсація
1. Я задоволений(-а) матеріальною компенсацією своєї праці в компанії.
2. Мене влаштовує корпоративний соцпакет (кількість днів відпустки, медичне страхування, оплата лікарняних днів, оплата овертаймів, абонемент у спортзал тощо).
Умови праці
3. Мені подобається офіс компанії (місцерозташування, ремонт, освітлення, температура повітря, вентиляція тощо).
4. У мене є все необхідне на робочому місці (меблі, техніка, канцтовари, ПЗ).
5. У мене зручний і гнучкий графік роботи.
Опубліковано: 04/11/19 @ 11:00
Розділ Різне Читати далі...
BA дайджест #5: архітектура підприємства, формальні методи валідації UI
Всім привіт! В цьому номері ви знайдете найбільш гідні матеріали за вересень-жовтень, серед тих, що потрапили мені до рук, а також кілька більш ранніх статей, які мають актуальність й сьогодні.
Також, якщо в когось є ідеї тим, які варто висвітлювати в дайджесті — пишіть в коментарях :) Приємного читання!
Цифри в дужках біля заголовків — приблизний час на вивчення матеріалу.
Статті
Загальна
Архітектура підприємства очима аналітика (10 хв). Огляд напрямки Enterprise Architecture — ключові поняття, фреймворки, інструменти.
Крос-культурна комунікація англійською в ІТ: нюанси, які важливо знати (10 хв). В дайджесті № 2 я вже згадував схожу статтю — в ній теж йшлося про комунікації між різними культурами. Разом з тим, в поточній статті розкрито трохи більш конкретні теми — листування, зворотній зв'язок, small talks. До речі, в цілому спостерігаю «піднімається» хвилю дискусій на тему софт-скілів об, так що вивчити матеріал по темі буде не зайвим.
Six Estimation Safety Tips (8 хв).
Опубліковано: 02/11/19 @ 11:49
Розділ Різне Читати далі...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180