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

Мої емоджі:
https://t.me/addemoji/AdaptiveDevIcons
https://t.me/addemoji/VehicleBrands
Download Telegram
Як на людину, яка живе навіть не в місті, а в смт, та переважно сидить вдома, я якось забагато цікавлюся засобами індивідуальної мобільності.

Наприклад, в мене є вже другий електроскейт (а до того був і звичайний), щоправда трохи важкуватий. А ще я досі зрідка дивлюся в бік WALKCAR за всі гроші 😅

З іншого боку в мене є мотоцикл — абсолютно must have для душі.

Колись давно, десь 40 років тому, Honda випускала щось середнє за розміром між тим та іншим — такі кумедні складні мопеди під назвою Motocompo. Офіційно вони були доступні тільки в Японії й вироблялись роки три може, тож можете уявити собі ціну поза нею. Зараз досі можна знайти від 4000€, але це раритет та рідкість.

Ну й шо ви думаєте? Правильно, вони анонсували електричну реінкарнацію під назвою Motocompacto! Виглядає ця чудасія вельми сумнівно, їде до 20 км з максимальною швидкістю 25 км/год (мій скейт навіть швидший), коштує тисячу баксів. Якщо трохи розібратись, то в принципі це майже той самий самокат, тільки з сидінням та корпусом, на якому можна щось намалювати або нафігачити наліпок. Але все одно цікаво! 😋 Нині настільки розвинена тема всіляких скутерів, байків, моноколес тощо, що може навіть цього разу у них краще піде з продажами. Я б спробував проїхатись.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👀1
А ще там на днях #Python 3.12 релізнувся. Особисто для себе я багато цікавого не знайшов.

Наразі найкращим, що було за останній час, досі є pattern matching з 3.10.
👍2👀1
Ще вчора дізнався, що 23 лютого 2023 року в Україні випустили нову колекційну банкноту номіналом в 20 гривень з оригінальним вертикальним дизайном. Тираж всього 300 000 штук, тож навряд кожного дня такі можна буде побачити. Як вам?
👍7🤩1
Стан справ у відносно сучасній #macOS: вже щонайменше три major-версії операційної системи час від часу сам по собі змінюється баланс аудіопристрою. Якщо хтось раптом подумав, що це якась дуже специфічна локальна проблема у мене, то ні — люди навіть написали окрему програму (яку продавали за гроші, але згодом зробили безплатною), що моніторить баланс та повертає його на середину 🤦

І так, у мене Monterey досі. На іншому ноуті взагалі Catalina була, хоча нещодавно оновив до Ventura чи шо там передостаннє. Але готов закластися, що в Sonoma баг досі не пофікшений. Уникаю major-оновлень, бо по відчуттях кожна нова версія додає ще більше багів, а не фіксів )) Це старість, схоже.
Please open Telegram to view this post
VIEW IN TELEGRAM
👀1
Forwarded from Bite the Byte
Хочу вам розповісти за “ДрукАрмію”. Це дуже крута ініціатива з 3д-друку різних невеличких конструкцій, які потім використовуються в армії і навколо. У них є лендінг з прикладами і розрахунками економії. В мене ще є розповіді про приблизно такі самі гроші, але про дрони — проте не вистачає даних, щоб тут описати.

В мене вже кілька друзів долучилося — і здається, що такий умовно кустарний підхід має сенс має сенс, бо поставити друкування на поток і зробити індустріальним виходить дуже дорого: місця займає багато, друкує довго і потребує обслуговування. А коли ти робиш це сам вдома, то воно стоїть собі у куточку і сильно багато часу не займає. :) А ДрукАрмія - це маркетплейс фактично, зв’язує виробництво (вас) і покупців (військових), просто без грошей.

Тож якщо ви про це не чули, або не задумувалися, то може це саме час. 😁 Бо кількість запитів на друк росте куди швидше кількості друкарів.
👍8
Як довго працюєш над чимось, то зазвичай око замилюється, і стає важко раціонально оцінювати результати праці. Це актуально, мабуть, для будь-чого, де критеріїв для оцінювання або немає, або вони дуже складні: мистецтво, програмування тощо. Тож зрештою думка трохи підмагнічується чи то до «все лайно», чи до «наскільки ж офігенно».

Час мені автівку нову брати, тож думаю, чи не взяти собі щось трохи дорожче цього разу, ніж моя Куга. Пішов дивитись Мерседеси, бо дарма ми MBUX робимо вже 9 років чи шо? (Хоча я особисто цим вже два роки не займаюсь безпосередньо).

Коли бачиш систему щодня, катаєшся на S-class та EQS задля тестування та переймаєшся за фічі, які треба заделіверити вчасно, то фокус з простого користування зміщується в професійний бік.

А тут сів в GLC, потикався, замислився над повсякденним використанням. Інтерʼєр безперечно крутезний, інфотейнмент-система наша дуууже крута — тупо найкраще, що є на ринку — дуже швидка й красива. Звук в моєму Форді взагалі в порівнянні наче годинник «Montana» проти студійного запису 😂 АЛЕ! Я раптом збагнув, що окрім навігації у своєму автомобілі я здебільшого користуюся ще двома крутилками: гучність та температура. І все. А тут клімат повністю сенсорний на тачскріні, а гучність — маленький тачбар справа під екраном, причому + та − навіть не реагують на натискання чи дотик — тільки на свайп. І коли гучність регулюєш, то на екрані зʼявляється слайдер, але без циферок )) Ми з дружиною звикли, що коли разом їдемо, то ставимо на 6–7, щоб і музло норм чутно було, і поговорити можна. Коли я сам їжджу, то на 9 ставлю. А тут тупо слайдер.

Ну добре, годі про «преміальний» GLC. Сіли потім з дружиною в «бюджетний» GLA — і це зовсім інша справа! Нормальні хардварні контроли. І коштує на 30к євро менше 😅 Так, я розумію, що різниця між ними не тільки в цьому, але що важливіше обʼєктивно: дрібнички, які дратуватимуть щоразу, як сідаєш за кермо, чи ті пів секунди при розгоні від 0 до 100? В GLA навіть ручки на дверях зсередини зручніші ) Дуже дивні відчуття.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
Cіпласпластик
Як на людину, яка живе навіть не в місті, а в смт, та переважно сидить вдома, я якось забагато цікавлюся засобами індивідуальної мобільності. Наприклад, в мене є вже другий електроскейт (а до того був і звичайний), щоправда трохи важкуватий. А ще я досі…
О, а оце вже точно цікаво. Kawasaki зробила гібридний мот 🙂🏍 з двигуном на майже півлітра та мотором на 9 кВт (мені це ні про що не каже, але може хтось шарить). Кажуть, наче, пального має витрачати як 250cc, а від нуля до сотні жене наче літровий. (А ще назад може їхати 😍).

Кавасакі мені не подобаються. Памʼятаю, керував якимсь Ninja на 400 кубів, і вражений не був ) Але сам тренд з гібридами цікавий.

Тільки не розумію оцієї теми з використанням пального. Дивишся автівки такий, а там пишуть: споживання 1,1 л / 100 км. І спочатку думаєш: «WTF?» — А далі авжеж одразу: «А-а-а-а, plug-in hybrid…» — Так ось запитання: а чого електрику не враховують ніде, наче вона безплатна? ) Писали б краще вже, скільки воно жере, коли батарейка в нуль.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Cіпласпластик
О, а оце вже точно цікаво. Kawasaki зробила гібридний мот 🙂🏍 з двигуном на майже півлітра та мотором на 9 кВт (мені це ні про що не каже, але може хтось шарить). Кажуть, наче, пального має витрачати як 250cc, а від нуля до сотні жене наче літровий. (А ще назад…
Але ще цікавіше — їхній, з вашого дозволу… кхм…, instrument cluster. Та й не тільки їхній, а в цілому на мотоциклах здебільшого. Чого вони всі виглядають, наче NFS: Underground вийшла вчора? Я ще розумію, коли подібне робили на багатосегментних дисплеях, але ж зараз це тупо піксельний екран — малюй там, що хочеш. Я б попрацював на проєкті HMI для мотів, ех. (А то забагато там механічних контролів, час переходити на тач ггг).

Хоча у мене на Хонді до речі вельми непогано візуально виглядає, проте, по фічах нуль.
👀1
Сьогодні дізнався, що в #Git можна мати декілька робочих копій проєкту в одному клоні репозиторію.

Вони прям пишуть приклад:

You are in the middle of a refactoring session and your boss comes in and demands that you fix something immediately. You might typically use git-stash to store your changes away temporarily, however, your working tree is in such a state of disarray (with new, moved, and removed files, and other bits and pieces strewn around) that you don’t want to risk disturbing any of it. Instead, you create a temporary linked worktree to make the emergency fix, remove it when done, and then resume your earlier refactoring session.


Я бував в подібній ситуації неодноразово. В деяких випадках я навіть просто робив другий клон рєпи, хоча це не завжди зручно, особливо коли вона важить 20+ ГБ 😅

Користуйтеся на здоровʼя.
#TIL
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71
Тру сторі. (Я належу щонайменше трьом категоріям).
👍3😁31
This media is not supported in your browser
VIEW IN TELEGRAM
Зробили з друганом лібу на С++ та байндінги для #QML, щоб керувати Elgato Stream Deck напряму без їхньої офіційної апки (ну й емулятор також на випадок, якщо фізичного пристрою немає). Точніше як зробили… Здебільшого він зробив авжеж, але мені як менеджеру теж можна хизуватись, я вважаю 😇

В імплементації протокола надихалися лібою на Python, яка в свою чергу списувала у ліби на Node.js. Так і живемо 🤷‍♂️

Поки що немає, що ще показати, але як буде більш-менш стабільним, скину посилання.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2👀1
This media is not supported in your browser
VIEW IN TELEGRAM
Інколи навіть в лінуксі можна побачити щось прийнятне на вигляд. На днях натрапив на тайловий композитор під Wayland — Hyprland. На плюсах написаний, до речі.
👀1
Якщо раніше я рекомендував уникати префіксів в назвах класів, то чимдалі переконуюся, що з цього треба робити саме правило. Я про оті всі ваші vstring, CString, TString (хто памʼятає?), QString тощо, але не тільки про них.

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

Отже, на прикладі нашої поточної проги для мультимоніторного слайд-шоу (ну, що замовили…): є, значить, у нас модель дисплеїв, доступних в системі. Як вона називається? DisplayModel авжеж. Нормальна лаконічна та зрозуміла назва. Для цієї моделі є відповідна вьюшка, яка створює для кожного елементу моделі делегат. Вгадайте назви? DisplayView та DisplayDelegate, ага. Нє, ну а шо. Ще є DisplayInfo, DisplayIdentificationOverlay і тому подібне.

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


Якщо мова про C++, то можна зробити namespace, і тоді в найгіршому випадку назви будуть: Display::Model, Display::View, Display::Delegate, тобто всього на два символи : більше — а в найкращому можна зробити по місцю використання using namespace Display, а далі просто писати Model, View та Delegate. Зазвичай в книжках не рекомендують писати using namespace, бо новачкам легко налажати, але при зваженому використанні це дуже корисна конструкція. Наш поточний підхід полягає в тому, що в cpp-файлі з реалізацією класу ми прям одразу пишемо using, або в деяких інших місцях в тій самій бібліотеці, але не в інших місцях використання. Іншими словами, якщо ти в контексті предметної області, то можна писати короткі імена, а якщо зовні — то повні.

В #QML того самого можна досягти за допомогою qualified imports. Наприклад, маючи модуль під назвою display, можна імпортувати його в глобальний скоуп імен через import display і писати всюди Model, View та Delegate, але QML трохи всратий в цьому плані, бо дозволяє… ммм… to shadow (затіняти?) імена з раніше імпортованих модулів і навіть не пише ворнінг. Тож краще одразу імпортувати як import display as Display або навіть import display as D, якщо надто впадлу, і тоді імена компонентів перетворюються на D.Model, D.View та D.Delegate відповідно.

Що маємо в результаті? По-перше, відсутні тавтологічні назви а ля Display::DisplayModel, в яких немає жодного сенсу, по-друге, потенційно писати менше, бо можна користуватися коротшими назвами доти, доки (по-третє) не буде конфліктів імен, які легко вирішуються повними назвами. Недоліки також є: треба трохи більше контролю за тим, що, де та як писати.

В ідеалі авжеж хотілося б мати тулзу, в яку можна зашити всі свої правила іменування та організації коду, причому не тупі банальності на кшталт «змінні з маленької, класи з великої» або «camelCase, а не snake_case», а щось глибше, як-от «короткі назви всередині ліби — повні назви зовні».
🔥2👀1