Cіпласпластик
471 subscribers
147 photos
32 videos
2 files
242 links
🇺🇦 Про айті та дотичні теми загалом, ну й трохи про C++.

Мої емоджі:
https://t.me/addemoji/AdaptiveDevIcons
https://t.me/addemoji/VehicleBrands
Download Telegram
Please open Telegram to view this post
VIEW IN TELEGRAM
Мені тут клауд зі світлинами підказує, що 13 років тому я з двома друганами брав участь у DOU-хакатоні.

Він проходив в офісі Ciklum, куди ми приїхали без жодних ідей, просто потусуватися. Але врешті написали гру 👇

На все відводилася 1 доба, а ми перші пару годин тільки роздуплялися, чи варто взагалі хоч щось починати та, якщо так, що саме. Одним зі спонсорів була GlobalLogic, яка роздавала свої блокноти. Тож під враженням від нещодавно зіграної Eufloria я запропонував зробити якусь схожу гру прямо «у тому блокноті». Накарлякав у ньому щось, пофоткав, трохи обробив у фотошопі та нарізав спрайтів. Чуваки поки почали писати код.

Я на той час віддавав перевагу C++, мій інший дружбан писав на C#, а третій взагалі прийшов з прикладної математики, тож вирішили писати все на Java як чомусь середньому для всіх 😁

За задумом це мала бути RTS, та ми не встигли зробити для того нормальний луп, тож це перетворилося на TBS, де треба було постійно клацати Next turn 😅 Гра проти компа. Гравцю та супернику дається по одній планеті + можливість будувати юніти: харвестери та файтери. Харвестери добувають ресурси з інших планет, а файтери фігачать ворожих юнітів (можна селектити та направляти їх).

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

А перше місце до речі посіли мої знайомі, які написали на #Haskell транслятор коду з #Pascal у JS. У одного з них була триста років тому написана мультиплеєрна TurboPascal-гра на співпрограмах (корутинах) під DOS, яку він схотів перенести у браузер. Врешті гра не запрацювала, бо воно їм там нагенерило 70 МБ коду чи щось таке, й жоден браузер не стягнув, але якісь простіші приклади вони продемонстрували тоді. Короч, люди також радше емоційно, ніж раціонально проголосували, бо вау-ефект був сильніший ))
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Bite the Byte
У Stack Overflow вийшов звіт по їх щорічному опиту розробників, і українські розробники на 5 місці по кількості відповідей. Зрозуміло, що це більшою частиною про активність, а не тільки кількість - але ж це і є круто! :)
А як щодо того, щоб підписати відкритого листа про додавання української локалізації у новий Dragon Age, який має вийти цього року? Або хоча б ретвіт зробіть: https://x.com/dragonUAge/status/1820469915830391057 А краще й те, й інше.

Дуже хочеться бачити українську частіше та більше 🤝
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Деякі люди думають, що ініціалізація в C++ — це складна тема. Зовсім ні! Ось ці 4️⃣ (так, чотири!) статті чудово пояснюють всі або майже всі її види: раз, два, три, чотири. (Особисто я визнав поразку на середині третьої).

Що ж робити? Як користуватися інструментом, яким ви не повністю володієте та розумієте? Та так само, як ви щодня робите у побуті!

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

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

Ось і з C++ та сама історія. Чи корисно знати всі нюанси, що описані в стандарті мови? Ну, наче так. А чи обовʼязково їх всі знати? Та наче ні.

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

Думаю, набуття досвіду — це, між іншим, і є зменшення кількості сумнівів.
Please open Telegram to view this post
VIEW IN TELEGRAM
Вирішив трохи доналаштувати собі #Nushell. У процесі відкрив для себе деякі нові #тулзи.

По-перше, це vivid, яка підбирає кольори $env.LS_COLORS під вашу кольорову схему. Я собі це зробив, бо раніше виглядало ще гірше, проте, якщо чесно, це лайно якесь. Воно все барвисте, але ці кольори для мене нічого не значать, тож виникає питання: а навіщо? Думаю, що в ідеалі я б собі лишив можливість відрізняти теки, файли та симлінки — й вистачить. Але впадлу розбиратися.

По-друге, це carapace. Як ви розумієте, під Nushell мало хто з розробників тулів робить custom completions на відміну від Bash/Zsh. Для деяких популярних штук типу ґіта існують доповнення, написані на Nu, але їх дуже незручно встановлювати, бо якийсь пекедж-менеджмент в Nushell досі на етапі зародження. А carapace — це, грубо кажучи, кросплатформний доповнювач, що вміє під різні шели генерувати доповнення з якогось узагальненого опису. Результат за якимсь хєром знов-таки різноколірний для деяких команд, та все ж це зручніше, ніж постійно набирати --help, щоб згадати, що там є.

Нагадую, що Nushell — це досі найкращий шел, котрим я користувався.
Знов трохи про low-code

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

А я трохи ще розповім про свій досвід використання low-code, та чому для певних потреб я завжди оберу саме таку платформу, а не самописний скрипт/програму/сервіс.
Я робив вже собі два простих напівжартівливих інструменти на базі Airtable (раз і два), і я навіть ними користуюся. Але все-таки якийсь достатньо складний UI там не накрафтиш, як мені здалося.

А тут в коменти до попереднього допису принесли приклад використання Retool для побудови приблизного того ж, про що я й сам для своїх дрібних потреб думав давно. Зацініть, як класно 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from SnC Museum Lab
Історія успіху з Retool.Займаюся розробкою та дрібним виробництвом усіляких залізяк для ретро комп'ютерів та консолей. (Картриджі, адаптери, додатки, моди)

Проблема - облік електронних компонентів (резистори, конденсатори, мікросхеми і так далі) для виробництва плат. На Retool зробив собі веб-додаток, який дозволяє:
* Вести склад, щоб не згадувати, а чи є такий компонент в наявності (коли їх більше 100 це вже проблема)* Вести каталог проектів
* Контролювати наявність компонентів для кожного проекту* Розраховувати собівартість проекту
* Швидко дозамовляти потрібні компоненти, бо для кожного є ціна та посилання на останнє замовлення. * Списувати компоненти зі складу при виробництві

Є навіть відео, але за озвучку заздалегіть перепрошую :)
https://www.youtube.com/watch?v=xRW76rmpUlg
Був колись такий чувак Jef Raskin. Його взагалі-то спочатку Jeff звали, але він дуже не любив надлишковість, тож позбувся зайвої літери, бо звучить все одно так само.

А ще він є автором системи Macintosh. Правда він з Джобсом посрався, тож з Apple «пішов» врешті. І зробив компʼютер під назвою Canon Cat, про який доволі багато писав в одній з найвпливовіших книжок з дизайну користувацьких інтерфейсів — The Humane Interface. Дуже раджу.

От тільки зображень там бракувало, тож подекуди важкувато було уявляти, що саме він там описує.

Наприклад, на клавіатурі Canon Cat були дві додаткові кнопки LEAP, якими можна було користуватися для супершвидкої навігації. І ось три дні тому виявилося, що є відос з демонстрацією!

Мені показане прям дуже подобається і дуже часто цього не вистачає, коли код пишу. Є, звісно, якісь схожі шорткати, але всі вони якось не зовсім підходять.

Це мені пан Гизила підкинув у коментарях до допису в своєму каналі.
З коментів до попереднього допису:
Швидкий UX «лікнеп» для тих, хто не в темі:

• У людини є свідоме та підсвідоме. Свідомість може обробляти максимум 1 одиницю інформації в моменті. Вона потужна, але однопоточна та вижирає дофіга енергії. Підсвідомо можна робити дофіга одночасно і майже безплатно по енергії. Але як туди щось запхати?

• Переведення чогось зі свідомого в підсвідоме — це навчання та формування звички практикою. Що більше звичок ми маємо, то легше. Приклад: керування автівкою. Спочатку йде вкрай важко, бо намагаєшся обробляти все свідомо, потім стає ізічно, бо значна частина переходить в підсвідоме.

• Хороший UX — це коли можна використати наявні звички у новому контексті. Цього неможливо досягти для 100% випадків, бо інша ментальна модель може ставати на заваді, та є купа інших перепон, але це те, до чого варто йти.

• Поганий UX — це коли треба окремо (довго) навчатися, щоб мати змогу зробити хоч щось.

• Фактичний UX — це завжди щось посередині між хорошим та поганим. І що ближче він до хорошого, то краще. Робота UX-дизайнерів — оптимізувати це. Як і з будь-якою іншою оптимізацією, ніколи не можна досягти 100% успіху.

• Контраргументи щодо того, що vim/emacs/whatever else робить вас суперпродуктивними — не впливають на хуйовість UX цих продуктів. Так, вони справді роблять вас ефективнішими, але тільки після того, як ви сформували багато додаткових звичок aka навичок (див. п.2). Питання UX цих або будь-яких інших штук та вашої продуктивності з ними — дещо ортогональні.

• Всі попередні пункти мають сенс тільки якщо брати якусь усереднену ситуацію звісно та дивитися на більшість. Не може існувати такої загальної штуки як хороший чи поганий UX, бо передумова така, що навички у всіх вже різні. Проте UX-дизайнери орієнтуються на серединку (бо там нормальний розподіл), щоб покрити якомога більшу авдиторію. Якщо ви десь по краях розподілу, то це мало кого цікавить.
#TIL не зачіпати у дискусіях vim 😂
Please open Telegram to view this post
VIEW IN TELEGRAM
Три тижні максимум.
(Ідея жарту не моя, проте, моя імплементація)
Створив короч пак монохромних адаптивних емоджі на девелоперську тематику. Додавайте собі та пересилайте знайомим!

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

Деякі додаткові обмеження:
За 10 🌟 під цим дописом згоден додати черговий 1001-й вебфреймворк-одноденку.
За 100 🌟 можу додати щось з продуктів гугла.
А за 2500 🌟 або 1000 реакцій під цим дописом готовий додати навіть Rust! 😂

P.S. Шкода, що цим можна користуватися тільки з преміумом ((
Please open Telegram to view this post
VIEW IN TELEGRAM