Cіпласпластик
Сиджу в тімзі на нараді з якимсь мужиком )
Короч, головний ауткам:
Бьярне каже, що його нині трохи дратує, наскільки повільно рухається комітет стандартизації💻 . (Останній раз, коли він рахував, там було 527 членів 🤯 ). І якби він міг повернути минуле, то докладав би значно більше зусиль, щоб уникнути такої моделі управління й натомість розвивати мову групою в 6–7 людей. Водночас вважає, що шанси були примарні.
Ще пан Стауструп скаржиться на хаос, утворений сотнями різних налаштувань в сучасних компіляторах під різні платформи. Каже, що це теж через ISO, бо ті займаються стандартизацією мови, але не тулінга.
А ще відзначив, що Rust — не та мова, яка покладе край💻 .
(Хотів запитати його, як добре він знає C++ від 1 до 10 і які інші мови йому подобаються — шкода, що не встиг).
Бьярне каже, що його нині трохи дратує, наскільки повільно рухається комітет стандартизації
Ще пан Стауструп скаржиться на хаос, утворений сотнями різних налаштувань в сучасних компіляторах під різні платформи. Каже, що це теж через ISO, бо ті займаються стандартизацією мови, але не тулінга.
А ще відзначив, що Rust — не та мова, яка покладе край
(Хотів запитати його, як добре він знає C++ від 1 до 10 і які інші мови йому подобаються — шкода, що не встиг).
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Скільки насправді коштують книжки? А ігри? А інші ваші хобі?
Ви можете або почитати книжку по програмуванню, або піти на прогулянку мацати траву — що вибрати і чому?
Коли ви купуєте книжку за 30 баксів, може здатися, що ви втратили 30 баксів (так і буде, якщо не прочитати). Проте окрім «першого внеску» ви платитимете своїм часом, який далеко не безкоштовний.
Якщо ви маєте регулярний дохід💰 , то ціну часу легко вирахувати. Уявімо, що ваша місячна зарплатня — 5000 доларів. У місяці в середньому 22 робочих дні, в кожному робочому дні 8 годин, тому ваша погодинна ставка — 28,4$/год. Втім рахувати все з нею було б трохи несправедливо, адже навряд чи в позаробочий час ви зможете заробляти ще стільки ж, принаймні достатньо довго. Тому натомість «нормалізуємо» й порахуємо всі години, а не тільки робочі. З 30 днями в середньому і 24 годинами на добу маємо близько 7 доларів на годину.
На читання книжки ви витратили 4 години, тобто ще 28 баксів — майже подвоївши її початкову ціну!🤯 А тепер ще гляньте на свою статистику в доті, КС й геншині. Скіки там вже? Ще 3000 годин загалом? Це вартість автівки )) Годі витрачати отак свої гроші. Почніть заробляти вже зараз!
Пропоную вашій увазі свій новий суперпродукт, який дозволить вам досягти небаченого рівня персональної продуктивності — Crastinator Pro™. Як бачите на відео зверху, цей ультракорисний таймер показує вам вартість того, чим ви зайняті, в реальному часі. Підтримуються різні валюти, рейт можна встановлювати погодинно, по місячній зп або як річний дохід. Наразі це реалізовано як плаґін для Raycast, але в дорожній карті проєкту вже закладено переписування на Rust і додавання AI-фічей.
Враховуючи, що янавайбкодив його за пів години витратив на його розробку значну кількість особистих ресурсів, безплатно я його віддати не можу, зате гарантую коректність розрахунків, адже вже встиг протестувати його проходженням Mass Effect 🎮 (200 годин), Baldur's Gate 3 🎮 (300 годин), низки дрібніших активностей, а також щоденними регресійними й смоук-тестами за переглядом фільмів. Тому пропоную стартову ціну 800 гривень 🤑
На жаль ця ціна покриє тільки мої початкові витрати, тому якщо ви хочете отримувати оновлення й фічі, мені доведеться знову пройти Mass Effect, тож апдейти на рік коштуватимуть ще 250₴, що на мою думку дуже вигідна пропозиція! Не зволікайте!
У мене ж до вас лишилося всього два запитання:
1. Шо думаєте з цього приводу?
2. Чого досі не пограли в Mass Effect?
Ви можете або почитати книжку по програмуванню, або піти на прогулянку мацати траву — що вибрати і чому?
Коли ви купуєте книжку за 30 баксів, може здатися, що ви втратили 30 баксів (так і буде, якщо не прочитати). Проте окрім «першого внеску» ви платитимете своїм часом, який далеко не безкоштовний.
Якщо ви маєте регулярний дохід
На читання книжки ви витратили 4 години, тобто ще 28 баксів — майже подвоївши її початкову ціну!
Пропоную вашій увазі свій новий суперпродукт, який дозволить вам досягти небаченого рівня персональної продуктивності — Crastinator Pro™. Як бачите на відео зверху, цей ультракорисний таймер показує вам вартість того, чим ви зайняті, в реальному часі. Підтримуються різні валюти, рейт можна встановлювати погодинно, по місячній зп або як річний дохід. Наразі це реалізовано як плаґін для Raycast, але в дорожній карті проєкту вже закладено переписування на Rust і додавання AI-фічей.
Враховуючи, що я
На жаль ця ціна покриє тільки мої початкові витрати, тому якщо ви хочете отримувати оновлення й фічі, мені доведеться знову пройти Mass Effect, тож апдейти на рік коштуватимуть ще 250₴, що на мою думку дуже вигідна пропозиція! Не зволікайте!
У мене ж до вас лишилося всього два запитання:
1. Шо думаєте з цього приводу?
2. Чого досі не пограли в Mass Effect?
Please open Telegram to view this post
VIEW IN TELEGRAM
Пару тижнів тому дослухав «Start small, stay small» — книжку про мікропідприємництво (micropreneurship). І якщо чесно, мені не дуже зайшло попри деякі цікаві думки й низку досі корисних порад.
По-перше, не раджу аудіокнигу. Читає її сам автор, і зазвичай я полюбляю почути оригінал. Але цей настільки манірно це робить, що аж нудить. Таке враження, що тренується перед дзеркалом зніматися у вестернах чи в бондіані. А ще я багато кого слухаю десь на 1,2× швидкості, а цього довелося на 0,9×😅 Окрім того, автор у своїй книжці лишив багато посилань на різні статті й ресурси. Зазвичай в таких випадках разом з аудіокнижкою просто йде маленька PDF-ка на додачу, але цей чувак буквально зачитує урли!!! (Не кажучи вже про те, що не всі з них досі валідні).
По-друге, Audible мене намахав, вказавши 2018 рік на книжці. Я нічого не підозрював аж до моменту, коли автор почав казати про сторінку в MySpace🤫 І далі по тексту ще трохи розповідав про власні сумніви щодо того, що реклама в Twitter працюватиме. Виявилося, що книжка 2010 року, а в Audible потрапила у 18-му.
Ну, а по-третє, є в мене дойоби до змісту книжки.
На початку автор каже: «ця книжка не для тих, хто хоче створити новий фейсбук на мільярд користувачів. Вона для тих програмістів, хто хоче писати власний продукт і займатися тим, чим цікаво саме їм, працюючи на себе, а не „на дядю“ (і щоб при цьому на життя вистачало)» — окей, продано! Мене це цікавить!
І далі за текстом поступово зʼявляються такі твердження:
• Скоріш за все ваша ідея продукту — лайно. Натомість знайдіть собі якусь іншу життєздатну за оцими й оцими порадами.
• Програмування — це всього 30% успіху максимум. (З цим згоден). І не обовʼязково робити це самому. А краще взагалі зааутсорсити😐
• Ну й все в такому дусі.
В мене тут постає питання: якщо врешті ідея не зовсім і моя, та й код пишу теж не я, то який мені як програмісту інтерес-то? Таке шось…
Очікував, що чувак розповість, як робити те, що подобається (програмувати), і отримувати за це гроші. А вийшло, що щоб отримувати гроші, треба, щоб почало подобатись інше🙂
До речі, нагадує мені мій перехід на роботі з якогось типу техліда на чисто керівну роль. Це не миттєво трапилося звісно, але в якийсь момент довелося сісти й прийняти правду: займатися технічними питаннями без шкоди для інших своїх обовʼязків я більше не можу. І виконувати менеджерські задачі ефективно теж не можу, бо ніколи цьому не вчився. І коли змирився з цим, то далі якось прям краще й легше пішло.
По-перше, не раджу аудіокнигу. Читає її сам автор, і зазвичай я полюбляю почути оригінал. Але цей настільки манірно це робить, що аж нудить. Таке враження, що тренується перед дзеркалом зніматися у вестернах чи в бондіані. А ще я багато кого слухаю десь на 1,2× швидкості, а цього довелося на 0,9×
По-друге, Audible мене намахав, вказавши 2018 рік на книжці. Я нічого не підозрював аж до моменту, коли автор почав казати про сторінку в MySpace
Ну, а по-третє, є в мене дойоби до змісту книжки.
На початку автор каже: «ця книжка не для тих, хто хоче створити новий фейсбук на мільярд користувачів. Вона для тих програмістів, хто хоче писати власний продукт і займатися тим, чим цікаво саме їм, працюючи на себе, а не „на дядю“ (і щоб при цьому на життя вистачало)» — окей, продано! Мене це цікавить!
І далі за текстом поступово зʼявляються такі твердження:
• Скоріш за все ваша ідея продукту — лайно. Натомість знайдіть собі якусь іншу життєздатну за оцими й оцими порадами.
• Програмування — це всього 30% успіху максимум. (З цим згоден). І не обовʼязково робити це самому. А краще взагалі зааутсорсити
• Ну й все в такому дусі.
В мене тут постає питання: якщо врешті ідея не зовсім і моя, та й код пишу теж не я, то який мені як програмісту інтерес-то? Таке шось…
Очікував, що чувак розповість, як робити те, що подобається (програмувати), і отримувати за це гроші. А вийшло, що щоб отримувати гроші, треба, щоб почало подобатись інше
До речі, нагадує мені мій перехід на роботі з якогось типу техліда на чисто керівну роль. Це не миттєво трапилося звісно, але в якийсь момент довелося сісти й прийняти правду: займатися технічними питаннями без шкоди для інших своїх обовʼязків я більше не можу. І виконувати менеджерські задачі ефективно теж не можу, бо ніколи цьому не вчився. І коли змирився з цим, то далі якось прям краще й легше пішло.
Please open Telegram to view this post
VIEW IN TELEGRAM
Сьогодні короткий дайджест новин щодо мов програмування, які трапилися мені на очі за останній місяць.
У Python💻 десь в районі версії 3.6 додали так звані f-рядки з інлайн-інтерполяцією:
Дуже зручно. Хоча знаходяться унікуми, що використовують їх тупо для усього, зокрема для формування запитів до БД з включенням шматків, що прийшли від користувачів — привіт, SQL-інʼєкції.
Fear no more: до 3.14 вирішили додати t-рядки! Літерали на вигляд такі самі, але насправді це не
Нащо це все? Власне, саме для того, щоб не отримувати на вихід готовий рядок. Натомість ви отримуєте купу статичних шматків рядка + низку інтерполяцій і можете з ними щось зробити до формування фінального💻 .
Для останнього, до речі, багацько років (на доволі високому Stage 2) висіла пропозиція від типців з Блумберга додати в мову «глибоко незмінні структури даних» —💻 є тільки вельми мінливі
У спільноті💻 тим часом ТРАГЕДІЯ! Компанія AdaCore провела презентацію нових фічей в їхньому компіляторі GNAT Pro, де зокрема розповіла, що додала до мови ООП-класи (а ще підтримку Rust, але то інша історія). Взагалі-то в Ada і до того ООП давно було (з 1995), але реалізувалося через так звані теґовані типи:
Тут процедури, що обʼявлені в тому ж скоупі й приймають першим параметром відповідний тип, стають фактично «методами». Однак для тих, хто прийшов з, боже збав, C++ та інших схожих мов, такий підхід був невтямки. Тому віднині можна буде створювати класи отак:
Зʼявилося ключове слово
Прикол же тут глибше на ділі. Ada — це ISO-стандарт, тож мова нікому не належить. Але єдиний живий компілятор GNAT підтримується компанією AdaCore, тому 99% штук, які зʼявляються там, врешті потрапляють до стандарту. Такі справи.
Ну й трохи про ліспи. Нещодавно я вже розповідав про Janet👩🦰 — мову, дуже схожу на Clojure 💻 , яка компілиться в сішку. Взагалі кложа наче друге дихання ліспам відкрила, бо вона проста, елегантна й прикольна. Якби ж ще не JVM поперек горла… Якось так подумали й автори Janet у свій час. А з ними автори ще мінімум штук пʼяти інших варіацій, і це тільки ті, що мені траплялися.
Однією з таких варіацій є Jank, яка вже на C++ базується, а не на сішці. Так-от вони днями анонсували «безшовний інтероп» з плюсами, тобто можливість прямо з джанка створювати й працювати з плюсовими обʼєктами. Скажу чесно, я зацікавився🤤 Прямий плюсовий інтероп (не через C) — це одна з фічей, яка раніше мене зацікавила у Swift 🕊 . Якщо у цього ліспа щось таке вийде, то я навіть готовий почати називати їх не джанк, а дженк.
Може ще щось цікаве було, та зараз вже не згадаю. Тож наразі все.
У Python
f"a + b = {a + b}"
# замість
"a + b = {}".format(a + b)
Дуже зручно. Хоча знаходяться унікуми, що використовують їх тупо для усього, зокрема для формування запитів до БД з включенням шматків, що прийшли від користувачів — привіт, SQL-інʼєкції.
Fear no more: до 3.14 вирішили додати t-рядки! Літерали на вигляд такі самі, але насправді це не
str
, а string.templatelib.Template
:template = t"a + b = {a + b}"
assert isinstance(template, Template)
Нащо це все? Власне, саме для того, щоб не отримувати на вихід готовий рядок. Натомість ви отримуєте купу статичних шматків рядка + низку інтерполяцій і можете з ними щось зробити до формування фінального
str
(наприклад, екранувати потенційно небезпечне). Фактично, це ті ж шаблонні рядки, які вже є в Для останнього, до речі, багацько років (на доволі високому Stage 2) висіла пропозиція від типців з Блумберга додати в мову «глибоко незмінні структури даних» —
Record
і Tuple
. Нагадую, що зараз в Object
і Array
. Якщо ви мріяли про value types у джаваскрипті, то годі — декілька тижнів тому пропозицію скасували, бо домовитися не змогли, зацікавлених виявилося не так і багато тощо.У спільноті
package Example is
type Base_Class is tagged null record;
procedure Print (Self : Base_Class);
type Derived_Class is new Base_Class with record
A : Integer; -- додаємо нове поле
end record;
overriding procedure Print (Self : Derived_Class);
end Example;
Тут процедури, що обʼявлені в тому ж скоупі й приймають першим параметром відповідний тип, стають фактично «методами». Однак для тих, хто прийшов з, боже збав, C++ та інших схожих мов, такий підхід був невтямки. Тому віднині можна буде створювати класи отак:
package Example is
type Base_Class is class
procedure Print (Self : Base_Class);
end;
end Example;
Зʼявилося ключове слово
class
, методи оголошуються прямо всередині відповідного блока, також можна private
зробити прям там же. Багатьом це прийшлося не до вподоби, мені включно. Особисто я просто не бачу в цьому сенсу, бо й до того було збс.Прикол же тут глибше на ділі. Ada — це ISO-стандарт, тож мова нікому не належить. Але єдиний живий компілятор GNAT підтримується компанією AdaCore, тому 99% штук, які зʼявляються там, врешті потрапляють до стандарту. Такі справи.
Ну й трохи про ліспи. Нещодавно я вже розповідав про Janet
Однією з таких варіацій є Jank, яка вже на C++ базується, а не на сішці. Так-от вони днями анонсували «безшовний інтероп» з плюсами, тобто можливість прямо з джанка створювати й працювати з плюсовими обʼєктами. Скажу чесно, я зацікавився
Може ще щось цікаве було, та зараз вже не згадаю. Тож наразі все.
Please open Telegram to view this post
VIEW IN TELEGRAM
У Microsoft Research часто трапляються цікаві проєкти. Колись навіть мріяв там працювати.
Вчора ось показали Claimify — штуку, яка дістає з текстів конкретні твердження. Шкода, що нема ґітгаб-репи самому цей тул спробувати. Хоча може вони там його запускають на кластері за 100500 мільйонів.
Вчора ось показали Claimify — штуку, яка дістає з текстів конкретні твердження. Шкода, що нема ґітгаб-репи самому цей тул спробувати. Хоча може вони там його запускають на кластері за 100500 мільйонів.
YouTube
Claimify: Extracting high-quality claims from language model outputs
Dasha Metropolitansky, Research Data Scientist, Microsoft Research Special Projects, introduces Claimify, a new method for extracting simple, verifiable claims from LLM outputs. Claim extraction is a key step in fact-checking LLM-generated content. Claimify…
This media is not supported in your browser
VIEW IN TELEGRAM
Пошук у сучасних системах be like… 🤦
Please open Telegram to view this post
VIEW IN TELEGRAM
Дізнався вчора від другана, що JetBrains CLion, їхня IDE для C++, стала безплатною для некомерційного використання.
Я ніколи прихильником їхньої ІДЕЇ та усього, що з неї виросло, не був, але декому дуже заходить. (Єдиний, мабуть, виняток для мене — це MPS💻 , але там скоріш концепція зацікавила, аніж сам редактор).
Я ніколи прихильником їхньої ІДЕЇ та усього, що з неї виросло, не був, але декому дуже заходить. (Єдиний, мабуть, виняток для мене — це MPS
Please open Telegram to view this post
VIEW IN TELEGRAM
Зацініть, який я знайшов інструмент розбору слів. AI-powered звісно, тому інколи парить маячню замість етимології.
Часто бачу, як на запитання щодо найкращої мови програмування для початківців (повних нулів) починають пропонувати Python 💻 , JavaScript 💻 , інколи TypeScript 🕸 , а особливо хворі люди радять Rust або навіть, хай би йому грець, 💻 . І звісно починають розповідати різні байки про зручний тулінг, про те, що одразу можна потім на роботу піти, що з памʼяттю навчишся працювати, що типи дуже допомагають й іншу маячню.
Я розумію, що зараз так заведено і що програмувати йдуть, бо гроші: три місяці на курсах — і вже треба джуном десь влаштовуватися, формочки клепати. І в мене навіть претензій нема: попит є, то й пропозиція знайдеться.
Втім найкращі спеціалісти, котрих я знаю (і я сам теж хехе), почали програмувати не через гроші чи престиж, а… ну, бо не могли інакше. Я мав потяг до всього електронного з дитинства: будь-що, де є батарейка й екран, ставало предметом мого інтересу. А коли я побачив уперше ігрову консоль, у мене ледве мозок не вибухнув🤯 🤩 Тоді (років у 4–5) я зрозумів, що моє життя мусить бути повʼязане з цією галуззю.
Не всім щастить аж настільки. Багато хто приходить до програмування радше «випадково». Але цих людей окрім певного природного рівня зацікавленості компʼютерами обʼєднує найважливіше: допитливість стосовно того, а як же це працює (і що ще можна зробити).
Допитливість ця може бути потужним рушієм, але на ранніх стадіях легко ламається об коліно перешкодами, розбиратися з якими вимагає забагато зусиль. А значить мова мусить бути така, яка цю зацікавленість підтримуватиме, а не топитиме.
В практичному сенсі це значить:
- Легко встановити тулчейн, легко запустити, легко використовувати (а якщо ще й легко поділитися з кимось результатами, то взагалі чудово).
- Базові аритметичні операції, трохи тригонометричних і (обовʼязково) операції для маніпуляцій над текстовими рядками.
- З колекцій — масивів достатньо.
- Примітиви для графіки з коробки (кольори, лінії, фігури).
- Якщо також є програвання звуків/музики — ще краще. (Хоча б MIDI якийсь).
- Спрощена робота зі вводом користувача (клавіатура/мишка).
- REPL? Ну, можна.
- Адекватні й зрозуміли повідомлення про помилки.
- Вбудована система довідки про оператори/команди/функції тощо.
- Статична типізація? — Зайва!
- Керування памʼяттю? — You lost me here.
- Зовнішні залежності? — Не треба.
- Модулі? — Одного файлу достатньо.
- Треба білд-систему? — Вже у смітнику.
Я сам починав з мови BASIC. Спробував декілька різних, але QBasic від Microsoft став найулюбленішим. У мене щодо нього досі виключно теплі спогади.
Тож згодом, коли я випадково натрапив на Microsoft Small Basic і спробував його, то почав радити й іншим. На жаль у порівнянні з QBasic вони трохи ускладнили все тим, що додали ООП. Втім це досі доволі приємна мова з непоганою IDE. (Або ось є веб-версія, хоча вона погірше).
Я розумію, що зараз так заведено і що програмувати йдуть, бо гроші: три місяці на курсах — і вже треба джуном десь влаштовуватися, формочки клепати. І в мене навіть претензій нема: попит є, то й пропозиція знайдеться.
Втім найкращі спеціалісти, котрих я знаю (і я сам теж хехе), почали програмувати не через гроші чи престиж, а… ну, бо не могли інакше. Я мав потяг до всього електронного з дитинства: будь-що, де є батарейка й екран, ставало предметом мого інтересу. А коли я побачив уперше ігрову консоль, у мене ледве мозок не вибухнув
Не всім щастить аж настільки. Багато хто приходить до програмування радше «випадково». Але цих людей окрім певного природного рівня зацікавленості компʼютерами обʼєднує найважливіше: допитливість стосовно того, а як же це працює (і що ще можна зробити).
Допитливість ця може бути потужним рушієм, але на ранніх стадіях легко ламається об коліно перешкодами, розбиратися з якими вимагає забагато зусиль. А значить мова мусить бути така, яка цю зацікавленість підтримуватиме, а не топитиме.
В практичному сенсі це значить:
- Легко встановити тулчейн, легко запустити, легко використовувати (а якщо ще й легко поділитися з кимось результатами, то взагалі чудово).
- Базові аритметичні операції, трохи тригонометричних і (обовʼязково) операції для маніпуляцій над текстовими рядками.
- З колекцій — масивів достатньо.
- Примітиви для графіки з коробки (кольори, лінії, фігури).
- Якщо також є програвання звуків/музики — ще краще. (Хоча б MIDI якийсь).
- Спрощена робота зі вводом користувача (клавіатура/мишка).
- REPL? Ну, можна.
- Адекватні й зрозуміли повідомлення про помилки.
- Вбудована система довідки про оператори/команди/функції тощо.
- Статична типізація? — Зайва!
- Керування памʼяттю? — You lost me here.
- Зовнішні залежності? — Не треба.
- Модулі? — Одного файлу достатньо.
- Треба білд-систему? — Вже у смітнику.
Я сам починав з мови BASIC. Спробував декілька різних, але QBasic від Microsoft став найулюбленішим. У мене щодо нього досі виключно теплі спогади.
Тож згодом, коли я випадково натрапив на Microsoft Small Basic і спробував його, то почав радити й іншим. На жаль у порівнянні з QBasic вони трохи ускладнили все тим, що додали ООП. Втім це досі доволі приємна мова з непоганою IDE. (Або ось є веб-версія, хоча вона погірше).
Please open Telegram to view this post
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Вчора я написав критерії вибору мови програмування для тих, хто тільки починає свій шлях, і отримав купу корисних і цікавих коментарів. А також зауважив, що раніше радив Small Basic.
Але нещодавно я натрапив на Easylang, і це мій новий фаворит серед мов для початківців! В ньому текстові змінні мають долар в імені (
Ну й, власне, я вирішив портувати на Easylang одну з найперших програм, яку ми написали з моїм корешем Коляном у коледжі. Ми намагалися зробити чи то більярд, чи то арканоїд, для чого треба було накодити рух і відбиття кола від стінок.
Вам смішно зараз, але для деяких одногрупників тоді навіть текст в правильній позиції екрана вивести — це вже було досягнення, не те що анімувати щось. Якщо просто чистити весь екран на кожний кадр, то зображення неприємно блимало, тож натомість ми робили це так: малюємо коло, робимо затримку, стираємо коло, оновлюємо координати — і так в циклі. Команда😂 ).
Постає питання, як стирати намальоване, не зачіпаючи решту. Для цього після малювання робимо зняток ділянки екрана командою
На Easylang написати це звісно було значно легше. Та головне, що я намагаюся донести: людина має отримувати задоволення від процесу. Як бачите, у нас тоді навіть «некоректний» результат не пішов у смітник: навпаки роздмухав зацікавленість, а які ж іще візерунки можна отримати. І ми почали створювати складніші багатоколірні речі, музику додавали й оце все. Файно було.
А якщо ви почнете початківцю сушити мізки встановленням ліб, парсингом XMLʼів з інтернетів або боротьбою з тайп-чекером, то є ризик відбити бажання цим займатися назавжди🤔 З іншого боку я радше візуал і все сприймаю в першу чергу саме візуально, вчуся очима тощо. А комусь, може, оце все й не треба, а треба якраз XML з інтернетів.
Проте Easylang спробуйте.
Але нещодавно я натрапив на Easylang, і це мій новий фаворит серед мов для початківців! В ньому текстові змінні мають долар в імені (
name$
) — прямо як у QBasiс, є масиви, суперлегко малювати, координати від 0 до 100 (вісь Y йде вгору), кольори від 000 до 999, легка й зручна обробка клавіатури й мишки, таймер, звуки тощо. IDE у бравзері автоматично форматує код. Інтерпретатор на WASM, тож готова програма — це PWA.Ну й, власне, я вирішив портувати на Easylang одну з найперших програм, яку ми написали з моїм корешем Коляном у коледжі. Ми намагалися зробити чи то більярд, чи то арканоїд, для чого треба було накодити рух і відбиття кола від стінок.
Вам смішно зараз, але для деяких одногрупників тоді навіть текст в правильній позиції екрана вивести — це вже було досягнення, не те що анімувати щось. Якщо просто чистити весь екран на кожний кадр, то зображення неприємно блимало, тож натомість ми робили це так: малюємо коло, робимо затримку, стираємо коло, оновлюємо координати — і так в циклі. Команда
SLEEP
у QBasic приймала тільки секунди, що задовго для анімації, тому затримку ми робили порожнім циклом FOR … NEXT
від 1 до 100000 (а якщо комп удвічі потужніший, то до 200000 Постає питання, як стирати намальоване, не зачіпаючи решту. Для цього після малювання робимо зняток ділянки екрана командою
GET
. А потім накладаємо назад командою PUT
у режимі XOR
. І короч десь ми щось наплутали порядок абощо, і вийшло так, що воно нічого не стирало, замальовуючи екран колами. В результаті вийшло щось дуже схоже на мережива, які ви могли бачити у себе в хаті або принаймні у ваших бабусь і дідусів. Тож цей витвір мистецтва ми гордо назвали SERVETKA.BAS
(якраз 8.3 символів, якщо ви розумієте, про що я)!На Easylang написати це звісно було значно легше. Та головне, що я намагаюся донести: людина має отримувати задоволення від процесу. Як бачите, у нас тоді навіть «некоректний» результат не пішов у смітник: навпаки роздмухав зацікавленість, а які ж іще візерунки можна отримати. І ми почали створювати складніші багатоколірні речі, музику додавали й оце все. Файно було.
А якщо ви почнете початківцю сушити мізки встановленням ліб, парсингом XMLʼів з інтернетів або боротьбою з тайп-чекером, то є ризик відбити бажання цим займатися назавжди
Проте Easylang спробуйте.
Please open Telegram to view this post
VIEW IN TELEGRAM
Обожнюю такі способи встановлення )) Що може піти не так? 😂
(Сертифікат вже ніби пофіксили, але пайпити скрипти з інтернетів у🤪 ).
(Сертифікат вже ніби пофіксили, але пайпити скрипти з інтернетів у
sudo
— це треба бути дуже хоробрим Please open Telegram to view this post
VIEW IN TELEGRAM
Усі з вас це, певно, вже знають, але там вчора Microsoft відкрила код своєї WSL (Windows Subsystem for Linux), а також пообіцяла найближчим часом відкрити код розширення GitHub Copilot для 💻 . Обидві штуки під MIT-ліцензією до речі.
З цього приводу можу лише зазначити, що останні роки на мою думку Microsoft вельми вправно балансує між компанією, якій всі дорікають, і компанією, продукти якої обожнюють.
Цікаво канєш, що нині навіть лінуксоїди користуються принаймні тією ж VS Code (а дехто взагалі пересів на WSL). Нагадаю, що в опитуваннях, які я раніше проводив, вінда🪟 для робочих задач посіла 3 місце з результатом 18%, а для неробочих — 2 місце з 31% (всього на відсоток менше за 🐧 ).
А зараз ще й чутки ходять, що Microsoft зайнята інтеграцією Steam у свої іксбокси🙄
З цього приводу можу лише зазначити, що останні роки на мою думку Microsoft вельми вправно балансує між компанією, якій всі дорікають, і компанією, продукти якої обожнюють.
Цікаво канєш, що нині навіть лінуксоїди користуються принаймні тією ж VS Code (а дехто взагалі пересів на WSL). Нагадаю, що в опитуваннях, які я раніше проводив, вінда
А зараз ще й чутки ходять, що Microsoft зайнята інтеграцією Steam у свої іксбокси
Please open Telegram to view this post
VIEW IN TELEGRAM
Windows Developer Blog
The Windows Subsystem for Linux is now open source
Today we’re very excited to announce the open-source release of the Windows Subsystem for Linux. This is the result of a multiyear effort to prepare for this, and a great closure to the first ever issue raised on the Microsoft/WSL repo:
Рівно тридцять років тому C++ народився вдруге 🥳 Адже рівно тридцять років тому відбувся один з найперших замахів на вбивство цієї мови — вийшов перший офіційний реліз Java 😆 Відтоді багацько ще таких «асасинів» приходило, та все марно.
С++ — як Україна: з кожним замахом стає лише міцнішим. І звісно були скрутні часи, проте, зараз ця мова знову квітне. І «населення» значно побільшало. Якщо на той же TIOBE подивитися, то у 2022 плюси посунули ваші джави і сішарпи назад, і на сьогодні C++ посідає другу сходинку після Python, випередивши навіть C.
До речі, якщо на TIOBE дивитися чисто списком, то складається хибне враження, ніби деякі мови вже майже наступають на пʼяти тим, хто на одну позицію попереду. Але вочевидь це не завжди так: Python нині зазвичай в районі 23-25%; C++, а за ним і C з Java — десь по 8–10%; C# і JavaScript — 4–4,5%; ну а далі числа просто мізерні. Rust, наприклад, дійсно молодець: він зазвичай тусується вже на 18–19 місці, хоча було навіть таке, що він увірвався в топ-15 зі своїми 1,16% чи скіки (зараз знов менш як 1%). Чисто як референс: Visual Basic, Delphi, Fortran — зазвичай мають ≈2–2,5%😊
Тож якщо ви міркували, чи варто починати вчити C++ зараз, то я вважаю, що так. Якраз буде час встигнути до 2029😅 😅 , коли в стандарт мають увійти нові топові фічі на кшталт Страуструпівських профілей, які «узаконять» різні діалекти (котрі де-факто вже й так існують).
С++ — як Україна: з кожним замахом стає лише міцнішим. І звісно були скрутні часи, проте, зараз ця мова знову квітне. І «населення» значно побільшало. Якщо на той же TIOBE подивитися, то у 2022 плюси посунули ваші джави і сішарпи назад, і на сьогодні C++ посідає другу сходинку після Python, випередивши навіть C.
До речі, якщо на TIOBE дивитися чисто списком, то складається хибне враження, ніби деякі мови вже майже наступають на пʼяти тим, хто на одну позицію попереду. Але вочевидь це не завжди так: Python нині зазвичай в районі 23-25%; C++, а за ним і C з Java — десь по 8–10%; C# і JavaScript — 4–4,5%; ну а далі числа просто мізерні. Rust, наприклад, дійсно молодець: він зазвичай тусується вже на 18–19 місці, хоча було навіть таке, що він увірвався в топ-15 зі своїми 1,16% чи скіки (зараз знов менш як 1%). Чисто як референс: Visual Basic, Delphi, Fortran — зазвичай мають ≈2–2,5%
Тож якщо ви міркували, чи варто починати вчити C++ зараз, то я вважаю, що так. Якраз буде час встигнути до 2029
Please open Telegram to view this post
VIEW IN TELEGRAM
В одному з місцевих супермаркетів зʼявилися отакі ручні сканери (за нирку грошей, певно, бо це Zebra!): береш на вході, в процесі все скануєш — і (за задумом) не витрачаєш час на касі.
Ідея звучить настільки чудово, що нам не западло проїхати заради цього десяток зайвих кілометрів саме в цей супермаркет. Я взагалі за змоги мінімізую необхідність контактувати з незнайомими людьми: навіть бензин заливаю на АЗС із самообслуговуванням. А тут раптом у супермаркеті такі технології⚡ , що гріх не скористатися.
Досвід користування цією штукою донині:
• За відчуттями це дійсно економить час, бо просканувати в процесі не так вже й важко, зате (за задумом) не треба чекати на касі.
• Першого разу виявилося, що окремих кас для користувачів з цими сканерами нема — треба йти на звичайну з чергою🤡 Ми натомість пішли на швидкі каси самообслуговування, куди зазвичай люди йдуть з < 10 одиницями товарів.
• Очікування: тиснеш на сканері кнопку «сплатити», прикладаєш картку або телефон, щасливий ідеш додому. Або хоча б: тиснеш «сплатити», отримуєш штрих-код, скануєш на касі, платиш там, ідеш додому. Реальність: тиснеш «сплатити», а сканер показує якесь число. Кличеш працівника магазину, вона/він прикладає свою спецову картку до термінала, потрапляє в якесь приховане меню, там проходить через купу екранів з зовсім іншим інтерфейсом, вбиває це число, воно з третьої спроби сінкає список зі сканера, і вуаля — можна платити🤦
• Іншим разом звичайна каса була вільна, тож пішли з цим сканером туди. Там усе той же прикол з числом і якимись робочими меню. А далі раптова перевірка! Очікування: касир бере декілька рандомних штук з візочка й сканує їх, а система підтверджує, що вони дійсно наявні в списку. Реальність: касир бере декілька рандомних штук, сканує по одному, система показує якийсь внутрішній артикул, а далі касир очима вишукує цей артикул у списку🤪 На все це йде ще більше часу, ніж пропикати всі наші 100500 товарів зі стрічки, як зазвичай.
• І останній випадок… Очікування (зауважте, як планочка впала вже): просканував усе в процесі, помаявся на касі з цими мутними інтеракціями, сплатив, пішов додому. Реальність: просканував усе в процесі, за пʼять хвилин до виходу прога на сканері крашнулася (там звичайний💻 до речі), при повторному запуску нічого не відновила — тупо порожній список 🤬 😂 Ото в мене дупа згоріла з такого, що аж сюди пишу тепер…
Черговий доказ того, що сучасний софт завжди смокче в порівнянні з хардваром. Сам пристрій дуже класний: якісний, доволі зручний — жодних нарікань. Але софтвар, як завжди, все зіпсував.
Вкотре нагадую, що найстрашніший гріх в UX — це втрата користувацьких даних. І це не про тільки про випадки, коли сервери десь погоріли, а бекапів у хостера не було. Це також про всі ті дрібниці, з яких складається наше щоденне користування програмними продуктами: десь поставили галочку, десь ввели текст, десь попикали сканером — а програма це забула? Ну оце воно і є.
Ідея звучить настільки чудово, що нам не западло проїхати заради цього десяток зайвих кілометрів саме в цей супермаркет. Я взагалі за змоги мінімізую необхідність контактувати з незнайомими людьми: навіть бензин заливаю на АЗС із самообслуговуванням. А тут раптом у супермаркеті такі технології
Досвід користування цією штукою донині:
• За відчуттями це дійсно економить час, бо просканувати в процесі не так вже й важко, зате (за задумом) не треба чекати на касі.
• Першого разу виявилося, що окремих кас для користувачів з цими сканерами нема — треба йти на звичайну з чергою
• Очікування: тиснеш на сканері кнопку «сплатити», прикладаєш картку або телефон, щасливий ідеш додому. Або хоча б: тиснеш «сплатити», отримуєш штрих-код, скануєш на касі, платиш там, ідеш додому. Реальність: тиснеш «сплатити», а сканер показує якесь число. Кличеш працівника магазину, вона/він прикладає свою спецову картку до термінала, потрапляє в якесь приховане меню, там проходить через купу екранів з зовсім іншим інтерфейсом, вбиває це число, воно з третьої спроби сінкає список зі сканера, і вуаля — можна платити
• Іншим разом звичайна каса була вільна, тож пішли з цим сканером туди. Там усе той же прикол з числом і якимись робочими меню. А далі раптова перевірка! Очікування: касир бере декілька рандомних штук з візочка й сканує їх, а система підтверджує, що вони дійсно наявні в списку. Реальність: касир бере декілька рандомних штук, сканує по одному, система показує якийсь внутрішній артикул, а далі касир очима вишукує цей артикул у списку
• І останній випадок… Очікування (зауважте, як планочка впала вже): просканував усе в процесі, помаявся на касі з цими мутними інтеракціями, сплатив, пішов додому. Реальність: просканував усе в процесі, за пʼять хвилин до виходу прога на сканері крашнулася (там звичайний
Черговий доказ того, що сучасний софт завжди смокче в порівнянні з хардваром. Сам пристрій дуже класний: якісний, доволі зручний — жодних нарікань. Але софтвар, як завжди, все зіпсував.
Вкотре нагадую, що найстрашніший гріх в UX — це втрата користувацьких даних. І це не про тільки про випадки, коли сервери десь погоріли, а бекапів у хостера не було. Це також про всі ті дрібниці, з яких складається наше щоденне користування програмними продуктами: десь поставили галочку, десь ввели текст, десь попикали сканером — а програма це забула? Ну оце воно і є.
Please open Telegram to view this post
VIEW IN TELEGRAM
Декілька років тому 💻 на своєму World Summitʼі мала доповідь, в якій чувак натякав, що було б цікаво використовувати цю бібліотеку в програмах іншими мовами.
Зараз Qt можна використовувати з C++ (очевидно), плюс є офіційні привʼязки для Python під назвою PySide. Ще промайнули якісь дивні поробки для інтеграції з💻 . На цьому все. Існує безліч неофіційних, та щось довіри до них нема.
Я вже якось згадував, що #QML як мова для використання фреймворка Qt Quick — це одна з останніх вагомих причин, чого я досі користуюся C++. Просто мені подобається робити UI і подобається, коли врешті він працює достатньо швидко й не вимагає 2 ГБ оперативки, як це нерідко буває з туду-програмами на електроні. Втім C++ у своєму поточному стані дійсно далека від приємної мови, хоча я потроху прямує до неї.
Так-от місяць тому пройшов черговий QtWS, де вони нарешті анонсували так звані Qt Bridges. Поки що жодної конкретики, але за їхніми розповідями це якась достатньо високорівнева апішка для інтеграції QML-ного рушія (і, може, не тільки) в програми іншими мовами. Першими їхніми обранцями стали:💻 , Kotlin 💻 і Java 💻 , Python 💻 , Rust і Swift 🕊 . Я особисто найбільше зацікавлений в останньому, бо під час Advent of Code 2024 мені загалом ця мова сподобалася. З іншого боку дуже хотілося б ще мати змогу писати на QML разом з 🦶 . Ну й з Janet 👩🦰 ще б теж непогано ))
Найбільше в усьому цьому мене зараз хвилює навіть не технічний бік питання, а легальний. Nokia в свій час перевела Qt з GPL на LGPL, що зіграло на руку популяризації бібліотеки. Але зараз ми бачимо, що Qt Group в пошуках додаткових джерел для заробітку робить навпаки: створює нові модулі, інколи попередньо задепрекейтивши «старі» LGPL-ні, і релізить їх тільки під GPL та комерційною ліцензією. Наприклад, Qt Graphs, Qt HTTP Server, Qt Lottie Animation, Qt Quick 3D тощо.
А як хотілося б мати змогу писати UI на QML, а бізнес-логіку на чомусь компільованому, потім збирати це в один невеличкий бінарь — і щоб це все ще й безплатно!🤑 Хоча, мабуть, легше вже свій рушій для QML написати натомість.
Зараз Qt можна використовувати з C++ (очевидно), плюс є офіційні привʼязки для Python під назвою PySide. Ще промайнули якісь дивні поробки для інтеграції з
Я вже якось згадував, що #QML як мова для використання фреймворка Qt Quick — це одна з останніх вагомих причин, чого я досі користуюся C++. Просто мені подобається робити UI і подобається, коли врешті він працює достатньо швидко й не вимагає 2 ГБ оперативки, як це нерідко буває з туду-програмами на електроні. Втім C++ у своєму поточному стані дійсно далека від приємної мови, хоча я потроху прямує до неї.
Так-от місяць тому пройшов черговий QtWS, де вони нарешті анонсували так звані Qt Bridges. Поки що жодної конкретики, але за їхніми розповідями це якась достатньо високорівнева апішка для інтеграції QML-ного рушія (і, може, не тільки) в програми іншими мовами. Першими їхніми обранцями стали:
Найбільше в усьому цьому мене зараз хвилює навіть не технічний бік питання, а легальний. Nokia в свій час перевела Qt з GPL на LGPL, що зіграло на руку популяризації бібліотеки. Але зараз ми бачимо, що Qt Group в пошуках додаткових джерел для заробітку робить навпаки: створює нові модулі, інколи попередньо задепрекейтивши «старі» LGPL-ні, і релізить їх тільки під GPL та комерційною ліцензією. Наприклад, Qt Graphs, Qt HTTP Server, Qt Lottie Animation, Qt Quick 3D тощо.
А як хотілося б мати змогу писати UI на QML, а бізнес-логіку на чомусь компільованому, потім збирати це в один невеличкий бінарь — і щоб це все ще й безплатно!
Please open Telegram to view this post
VIEW IN TELEGRAM
Спитав у ШІ-шки, як мені витягнути скриптом список усіх моїх ігор зі Стіма, Епіка, ГОГа тощо. ChatGPT поганого не порадить 😅
Please open Telegram to view this post
VIEW IN TELEGRAM
Забув закинути в цей канал таку штуку як непевний калькулятор (хоча в коментарях вже десь було). Ідея проста й водночас потужна та вдала: у деяких розрахунках просто не знаєш конкретних значень, тож чого б не дати змогу оперувати приблизними?
Приблизні значення тут задаються діапазонами від/до. Ну, знаєте, як ото в рецептах інколи пишуть, типу, «візьміть 2–3 яблука»? А вам треба вдвічі більшу порцію, наприклад. То пишете просто:
і воно каже вам, що відповідь
Окрім референсної імплементації від автора на Dart💻 люди кинулися переписувати це на своїх улюблених мовах. Мені сподобалася ось ця вельми лаконічна версія на гаскелі 💻 , де чувак просто в монаду все загорнув.
Тепер хотілося б побачити аналогічний синтаксис у всіх програмах-калькуляторах (або навіть у пристроях!).
Приблизні значення тут задаються діапазонами від/до. Ну, знаєте, як ото в рецептах інколи пишуть, типу, «візьміть 2–3 яблука»? А вам треба вдвічі більшу порцію, наприклад. То пишете просто:
2~3 * 2
і воно каже вам, що відповідь
4~6
. Це звісно можна й в голові обрахувати, та коли формула стає складнішою, і непевних параметрів стає більше, то легко заплутатися. До того ж цей калькулятор ще й гістограму з розподілом будує:above | ▒▒▒▒
6.10 | ▒▒▒
5.99 | ▒▒▒▒▒
5.88 | ▒▒▒▒▒▒▒
5.77 | ▒▒▒▒▒▒▒▒▒▒
5.66 | ▒▒▒▒▒▒▒▒▒▒▒▒▒
5.55 | ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
5.44 | ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
5.33 | ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
5.22 | ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
5.11 | ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
5.00 | ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ (5.00)
4.89 | ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
4.78 | ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
4.67 | ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
4.56 | ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
4.45 | ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
4.33 | ▒▒▒▒▒▒▒▒▒▒▒▒▒
4.22 | ▒▒▒▒▒▒▒▒▒▒
4.11 | ▒▒▒▒▒▒▒
4.00 | ▒▒▒▒▒
3.89 | ▒▒▒
below | ▒▒▒▒
Окрім референсної імплементації від автора на Dart
Тепер хотілося б побачити аналогічний синтаксис у всіх програмах-калькуляторах (або навіть у пристроях!).
Please open Telegram to view this post
VIEW IN TELEGRAM
filiph.github.io
Unsure Calculator
The Unsure Calculator is an online tool that lets you calculate with numbers you’re not sure about.
Чи то я вже дід, чи то дійсно все настільки погано…
Бачили-чули ж, певно, про презентацію Apple нещодавню? Всі очікували якихось інновацій, а натомість отримали жменю старих фічей з самсунгів і візуальний стиль від Microsoft (щоправда, всі порівнюють з Windows Vista, а мені воно більше схоже на свіжіші моушн-дизайнерські відоси про Fluent UI).
Але мова не тільки про Apple. Буквально за декілька днів до того проходив великий фестиваль відеоігор — Summer Game Fest. Презентацію від Epic Games я проґавив. А от далі пішли State of Play (PlayStation), власне Summer Game Fest і купка дрібніших на кшталт Future Games Show, PC Gaming Show тощо. І знаєте, що їх всіх обʼєднує? Показані ігри — переважно лайно! (Не кажучи вже про засилля московії — мінімум 4 великих гри від них💩 ).
Таке враження, що лишилося три жанри: анімешні чік-чік-вжух-слешери, абсолютно однакові соулс-лайк з босами розміром з будинок і всраті мультиплеєрні шутери а ля Овердроч з Fortnite-подібними пластмасовими персонажами. Все МАКСИМАЛЬНО вторинне, ще й просякнуте недоречною сексуалізацією.
У мене тут питання до всіх продюсерів, продакт-менеджерів тощо: про шо ви думаєте взагалі, коли таке розробляєте? Що декілька місяців читаєш, як за три тижні з релізу закрився якийсь черговий нікому не потрібний шутер, а потім на фесті дивишся ще на 5 таких самих, тільки гірше🤡
В історії розробки ПЗ бували, звісно, миті «революційності», принаймні на перший погляд. Але це траплялося суперрідко. Значно ефективнішою стратегією для «інновацій», на мій погляд, є «взяти щось чинне й значно покращити якийсь аспект, не погіршивши решту».
Для цього хоча б інколи варто спілкуватися зі своїми користувачами, щоб зрозуміти, де їм найбільше болить, а що навпаки дуже подобається. І видається, що як Apple, так і купа ігрових студій дедалі менше розуміють, що й для кого вони насправді роблять. Буквально щойно прочитав статтю про розробку останнього Dragon Age: The Veilguard (aka The Failguard), і там треш: то вони мультиплеєр роблять, то не мультиплеєр, то серйозне, то поверхнево-саркастичне — вісім років дрочки туди-сюди.
But fear not! Скоро люди перестануть робити такий вторинний непотріб… адже тепер це робить #ШІ! Весь контент вже 100500 разів перетравлений, поживних речовин в ньому нема. Навіщо писати щось, що ніхто не читатиме, а просто попросить ШІ-шку підбити підсумки одним абзацем?
А знаєте, до речі, у кого була найтоповіша презентація? У Xbox! Мінімум бла-бла-теревень, максимум премʼєр крутих і цікавих ігор. Все-таки Microsoft щось тямить у бізнесі, хто б міг подумати.
Бачили-чули ж, певно, про презентацію Apple нещодавню? Всі очікували якихось інновацій, а натомість отримали жменю старих фічей з самсунгів і візуальний стиль від Microsoft (щоправда, всі порівнюють з Windows Vista, а мені воно більше схоже на свіжіші моушн-дизайнерські відоси про Fluent UI).
Але мова не тільки про Apple. Буквально за декілька днів до того проходив великий фестиваль відеоігор — Summer Game Fest. Презентацію від Epic Games я проґавив. А от далі пішли State of Play (PlayStation), власне Summer Game Fest і купка дрібніших на кшталт Future Games Show, PC Gaming Show тощо. І знаєте, що їх всіх обʼєднує? Показані ігри — переважно лайно! (Не кажучи вже про засилля московії — мінімум 4 великих гри від них
Таке враження, що лишилося три жанри: анімешні чік-чік-вжух-слешери, абсолютно однакові соулс-лайк з босами розміром з будинок і всраті мультиплеєрні шутери а ля Овердроч з Fortnite-подібними пластмасовими персонажами. Все МАКСИМАЛЬНО вторинне, ще й просякнуте недоречною сексуалізацією.
У мене тут питання до всіх продюсерів, продакт-менеджерів тощо: про шо ви думаєте взагалі, коли таке розробляєте? Що декілька місяців читаєш, як за три тижні з релізу закрився якийсь черговий нікому не потрібний шутер, а потім на фесті дивишся ще на 5 таких самих, тільки гірше
В історії розробки ПЗ бували, звісно, миті «революційності», принаймні на перший погляд. Але це траплялося суперрідко. Значно ефективнішою стратегією для «інновацій», на мій погляд, є «взяти щось чинне й значно покращити якийсь аспект, не погіршивши решту».
Для цього хоча б інколи варто спілкуватися зі своїми користувачами, щоб зрозуміти, де їм найбільше болить, а що навпаки дуже подобається. І видається, що як Apple, так і купа ігрових студій дедалі менше розуміють, що й для кого вони насправді роблять. Буквально щойно прочитав статтю про розробку останнього Dragon Age: The Veilguard (aka The Failguard), і там треш: то вони мультиплеєр роблять, то не мультиплеєр, то серйозне, то поверхнево-саркастичне — вісім років дрочки туди-сюди.
But fear not! Скоро люди перестануть робити такий вторинний непотріб… адже тепер це робить #ШІ! Весь контент вже 100500 разів перетравлений, поживних речовин в ньому нема. Навіщо писати щось, що ніхто не читатиме, а просто попросить ШІ-шку підбити підсумки одним абзацем?
А знаєте, до речі, у кого була найтоповіша презентація? У Xbox! Мінімум бла-бла-теревень, максимум премʼєр крутих і цікавих ігор. Все-таки Microsoft щось тямить у бізнесі, хто б міг подумати.
Please open Telegram to view this post
VIEW IN TELEGRAM
Bloomberg.com
Inside the ‘Dragon Age’ Debacle That Gutted EA’s BioWare Studio
The latest game in BioWare’s fantasy role-playing series went through ten years of development turmoil
Посидів сьогодні онлайн на Ada Developers Workshop, який є частиною AEiC 2025 — конференції, присвяченої мові 💻 , що проходить зараз у Парижі. Сподобалося, що там не тільки діди, а й молоді доволі багато.
Спочатку послухав про те, як чувак матчить ліцухи за шаблонами у своїй тулі spdx-tool. Можна, наприклад, пробігтися по всіх файлах і позаміняти заголовки з текстом ліцухи на
Потім подивився трохи на новий GUI-фреймворк — LibreFrame від контори, що займається хостингом чи чимось таким. Загалом нічого такого прям вау, але приклади коду сподобалися — дуже лаконічні й прості!
Далі чувак з тесли🚗 розповідав про написання програм на Ada під Zephyr OS ⌛️ — це така крихітна система реального часу, яку зараз часто крутять на всіляких 💻 ESP32. Щось доповідач там крутив разом 💻 , CMake 🤮 і Ada, але я знудився слухати.
Інший чувак розповідав про нову бібліотеку для рядків — UXString. Юнікод — це завжди біль, особливо для таких старих мов. Врешті у чувака вийшло 4 різні реалізації бібліотеки з різними базовими типами всередині😐 Але інтерфейс вийшов доволі зручний (бо надихався 💻 та 💻 ).
В іще одній доповіді мова йшла про bbt — інструмент для black-box-тестування, в якому тести пишуться природною (англійською) мовою. Насправді там Gherkin в Markdown. Якість самої тулзи наразі «інженерного рівня», так би мовити, хоча працювало! Мені сподобалося.
Пару доповідей про property-based testing і про імплементацію BZip2 я слухав у пів вуха — можна вважати, що пропустив.
Ну а наостанок чувак розповідав про створення марсохода на Ada. Раніше в блозі AdaCore вже була стаття на тему, але зараз розповіли трохи більше деталей (працює на🍓 -Pico, контролюється геймпадом від плейстейшна тощо). Робочий прототип можна прямо там на конфі подивитися. Плюс ще тіпок розповів про деякі інші демки й прототипи, які вони програмували на Ada: іграшкова залізна дорога, квадрокоптер Crazyflie, якась штука, яка малює маркером логотипи RISC-V 5️⃣ і AdaCore, а потім їх стирає, може ще щось.
У підсумку можу сказати, що прям вау-ефекту в мене не було від цієї події, але враження лишилися приємні. Звичайна така конфа нормальної спільноти навколо мови програмування. Шкода, що так мало людей про неї знають.
Якби я років 20 тому дізнався, що Ada досі не вмерла, може цей канал би називався Адамантій🦾 , а не Сіпласпластик 😂
Спочатку послухав про те, як чувак матчить ліцухи за шаблонами у своїй тулі spdx-tool. Можна, наприклад, пробігтися по всіх файлах і позаміняти заголовки з текстом ліцухи на
SPDX-License-Identifier: MIT
чи шо там у вас. Ще можна створювати шаблони власних ліцензій. Загалом цікаво доволі. Він токенізує шаблони й використовує TF-IDF для пошуку найбільш схожої ліцухи (схожість видає як число — косинус подібності). Я для схожих потреб зазвичай користувався REUSE-тулою, до якої маю низку нарікань.Потім подивився трохи на новий GUI-фреймворк — LibreFrame від контори, що займається хостингом чи чимось таким. Загалом нічого такого прям вау, але приклади коду сподобалися — дуже лаконічні й прості!
Далі чувак з тесли
Інший чувак розповідав про нову бібліотеку для рядків — UXString. Юнікод — це завжди біль, особливо для таких старих мов. Врешті у чувака вийшло 4 різні реалізації бібліотеки з різними базовими типами всередині
QString
з String
з В іще одній доповіді мова йшла про bbt — інструмент для black-box-тестування, в якому тести пишуться природною (англійською) мовою. Насправді там Gherkin в Markdown. Якість самої тулзи наразі «інженерного рівня», так би мовити, хоча працювало! Мені сподобалося.
Пару доповідей про property-based testing і про імплементацію BZip2 я слухав у пів вуха — можна вважати, що пропустив.
Ну а наостанок чувак розповідав про створення марсохода на Ada. Раніше в блозі AdaCore вже була стаття на тему, але зараз розповіли трохи більше деталей (працює на
У підсумку можу сказати, що прям вау-ефекту в мене не було від цієї події, але враження лишилися приємні. Звичайна така конфа нормальної спільноти навколо мови програмування. Шкода, що так мало людей про неї знають.
Якби я років 20 тому дізнався, що Ada досі не вмерла, може цей канал би називався Адамантій
Please open Telegram to view this post
VIEW IN TELEGRAM