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

Мої емоджі:
https://t.me/addemoji/AdaptiveDevIcons
https://t.me/addemoji/VehicleBrands
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Мене загалом добряче піддратовує, що стеля наразі використовується вкрай неефективно! А тут якісь інженери розробили маленьких роботів-помічників на магнітах. Дуже круто! 🙂 В мене взагалі певна слабкість до swarm intelligence — вважаю це однією з найцікавіших галузей робототехніки.

Ось тут є цілий відос. Але краще підпишіться на канал @naukaua, де я про це дізнався. («Реклама», про яку мене ніхто не просив. Просто подобається дуже 🙂)
Cіпласпластик
Ніяк не дослухаю «Принципи» (хоча вона збс), але в беклог додав ще пару книжок з цього рейтингу. Звідки час брати?
Місяць чи два тому все ж дочитав «Принципи» Рея Даліо. Точніше навіть дослухав, бо першу частину книги читає сам Рей — в «оригіналі» завжди трохи цікавіше, як на мене.

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

Як керівник певної групи людей, я давно вже замислювався, як навчити інших приймати рішення в тих сферах, де я шарю, хоча б настільки вдало, як і я, а в ідеалі навіть ліпше (ну, щоб самому можна було відпочивати авжеж 😅, для чого ж ще?). В кращих інженерних традиціях прийшов до того, що треба записувати свій процес мислення, аби далі його проаналізувати та узагальнити. Втім, сказати легше, аніж зробити! Деякі думки здаються настільки очевидними, що ніби й немає сенсу писати, а інші навпаки існують тільки на рівні інтуїції. Так-так, інтуїція = знання + досвід, але ви спробуйте описати щось «інтуїтивне» так, щоб інші зрозуміли 🙂

Отже, Рей робить саме це: в «Принципах» він фактично узагальнив свої базові та робочі принципи, структурував та розклав все по поличках. Навіть попри нерідкі повторювання деяких моментів, щільність інформації така, що свідомість дуже швидко стомлюється сприймати її.

Чи треба просто брати й використовувати його принципи? Авжеж ні, принаймні точно не всі. Він насправді так і каже: «В мене», — мовляв, — «немає мети навʼязати вам свої принципи. Я хочу аби ви винайшли свої, які будуть допомагати саме вам». Проте деякі ключові мені дуже імпонують. Наприклад, колись я вже читав книгу «No Rules Rules» від CEO Netflix, й мене тоді здивувало, що можна побудувати культуру в компанії на засадах повної відкритості та щирості. Рей Даліо теж постійно каже про радикальну щирість як один з методів побудови меритократії ідей. Я навіть почав замислюватись, чи Netflix не надихнувся Bridgewater у свій час, але ліньки порівнювати дати 😁

В цілому книга справила настільки сильне враження, що я навіть замовив дружині друкований примірник українською. Аби ви не думали, що там якісь прям вау-відкриття й зовсім інше бачення світу — ні, нічого такого. Але для виражено раціональних людей, як я, особливо з сильною потребою все структурувати, вона може стати в пригоді, адже дає розуміння, для чого це взагалі робити, а також як саме. Ну а меритократія ідей буде корисна не тільки у вашій компанії, але й на вищому, загальному рівні: для відбудови України після перемоги в поточній війні. Отож раджу.
Про #тулзи та трохи про планування

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

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

Проте мені вкрай дивно дивитись, коли, наприклад, менеджери збирають та консолідують якусь інформацію руками, навіть не намагаючись опанувати хоча б 5% фічей того ж MS Excel.

Я доволі лінивий, якщо справа стосується нудної роботи (тобто у 80% випадків), тому постійно перебуваю в пошуку способів собі процес якось спростити або покращити, десь зрізати кути, щось автоматизувати.

Є вираз, котрий приписують Аврааму Лінкольну: «If I had eight hours to chop down a tree, I'd spend six sharpening my axe» — ось це про мене. Знаєте цю звичку ПК-геймерів, коли при першому запуску гри ви йдете в налаштування? Ось я так роблю майже зі всіма продуктами 😅 Купив девайс — пішов в налаштування; поставив прогу — пішов в налаштування. Або help ще читаю до того, як щось почати використовувати. Так-так, читаю мануали до того, як все зіпсувати! 🤯

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

Є й зворотна сторона. Принаймні мене на самому початку спіткала проблема, що я не міг щось робити швидко (особливо, якщо це треба комусь, а не мені особисто 😁), бо спочатку купа часу йшла на підготовку. Але я досі впевнений, що це правильний (хоч і не єдиний) підхід, бо тепер це нівелюється доволі широким світоглядом. Певним чином на мене колись вплинув мій дружбан, в котрого на будь-яку штуку знаходилась цікава 3rdParty-ліба.

І ось, зробив я, значить, минулого тижня пет-проєкт. На дещо кволу підготовку пішло декілька тижнів, зате на, власне, імплементацію всього три — чотири вечори! Отож, на чому я сфокусувався:
- в першу чергу впевнився, що в мене достатньо ресурсів, аби уникнути шоу-стоперів вже в процесі;
- знайшов собі пару дешевих, але ефективних тулів, а також глянув на ютубі, як ними вправніше користуватись;
- оцінив ризики й дійшов висновку, що існує велика ймовірність натрапити на витік ресурсів з проєкту, тож заздалегідь подбав про тули для запобігання цьому й прикинув в голові, як то все інкапсулювати;
- купив собі на пробу (та для задоволення авжеж) один доволі дорогий напівавтоматизований тул, який хоч і не був вкрай необхідним, проте, став в пригоді й вже був успішно використаний і в інших проєктах також;
- не хотілося всю енергію на цей проєкт витрачати, тому в процесі пошуку дивився, щоб все легко деплоїлося та щоб за потреби легко було викинути.

Безперечно, я не зміг уникнути всіх помилок, не зміг все передбачити. Але чисто за допомогою правильно обраних тулзів я із фактично нульовим досвідом зміг зробити все швидко і ніби доволі якісно. Так, проєкт не софтварний — це я стелю в ванній кімнаті перефарбував, але яка різниця, еге ж? 🙂
Forwarded from Na chasi / Games (Oleksandr Mamzurenko)
🥳 EA тепер офіційно підтримує гривню

Ось ціни на передплату EA Play.
Media is too big
VIEW IN TELEGRAM
Не знаю, в кого як із цим, але я не можу запамʼятати значення значків на бирках від одягу.

Вчора остаточно терпець урвався, тож я за вечір зробив собі допоміжний інструмент, який безперечно не покладе край проблемі, але хоч мінімально полегшить мені життя. Отож, ця БД містить в собі всі значки з ISO 3758:2012 (що, до речі, доволі проблематично було, бо для отримання PDF будь-якого ISO-стандарту треба забашляти їм 100+ баксів 🤑, тож натомість довелося збирати інфу по крихтах зі всього інтернету), а також деякі нестандартні значки зі США, застарілі з GINETEX тощо.

Ну й зробив додавання, власне, одягу. Потенційно це відкриває різні додаткові можливості по типу групування їх за характеристиками абощо. Насправді подальших ідей для покращення купа, як-от зробити ще мапінг на дурні режими пральної та сушильної машин. Ніхто не ставив собі запитання, чому на одязі є стандартні символи, а на пральних машинах — їх немає? 🙂 В будь-якому разі, самому мені наснаги не вистачить, тож поки й так норм.
Про браузери

Не сказати, що Vivaldi (зображення №1) мене чимось не влаштовує, але спробував я врешті Arc (зображення №2). Кардинально нового порівняно з тим, чого я можу досягти з Vivaldi, він не пропонує.

В мене завжди мільйон сторінок в браузері, тож з часом у Vivaldi я дійшов до наступної схеми:
1) таби відображаються вертикальним списком справа;
2) я використовую групи табів (до речі вперше вони зʼявились у свій час в Опері теж);
3) всі посилання по дефолту відкриваються в тій самій групі табів, а не «поряд».

Тепер це трохи нагадує треди в чатах типу слака чи дискорда: якщо я починаю заглиблюватись в якусь тему, то все це буде відбуватись в «скоупі» однієї групи.

Також зліва в мене є постійний доступ до тих штук, якими я користуюсь часто, наприклад, до ChatGPT. Але то таке.

Лишається проблема: за порядком в групах все одно доводиться слідкувати вручну. В новій Опері щось там парять про AI для групування табів. Воно й не дивно, зараз всі показилися з ШІ. Проте нащо мені ШІ-шка, яка буде робити щось погано, якщо в мене вже є власний інтелект, який це робить добре? Бракує тільки способу це нормально автоматизувати в браузері: 💡 треба дати можливість писати свої правила з якимись регулярками абощо.

В #Arc така можливість, як виявилося, є. Називається Air Traffic Control (зображення №3). Але вона якась занадто примітивна, хоча це вже дещо.

Загалом я б не сказав, що Arc чимось краще за той самий Vivaldi: нових фічей замало, а багато старих — відсутні. Наприклад, немає синхронізації між різними операційними системами, бо він тільки під macOS наразі 🥲 Але я все-таки переїхав на нього, бо хоч якийсь рух відчувається, якесь життя. Решта браузерів занадто консервативні.

Є 5 інвайтів. Якщо треба, ви знаєте, де мене знайти.
Якщо ви в ЄС та досі не спробували ChatGPT, то не проґавте момент, адже OpenAI вже погрожує вийти з ринку 🙂 Тут прийняли законопроєкт про регуляцію ШІ як раз.

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

Шкода тільки, що деякі спроби щось урегулювати більш схожі на жарти, ніж на реальні рішення проблем.
Дописував сьогодні CLI-тулзу на Python за дизайнером (вправний хлопчина).

Перевів на Poetry, позаміняв де-не-де викорстання os.path (нащо ви ним користуєтесь досі взагалі?) на значно красивіший pathlib, позаміняв якісь триповерхові ifʼи на паттерн-матчінг — стало прям симпатично. Ну й логіку авжеж проапдейтив, для чого, власне, й сідав.

Шо я можу сказати: Python — досі одна з найкращих мов програмування. Прям дуже приємно нею писати. Не дарма вона чи не єдина є в топі всіх популярних рейтингів типу TIOBE, PYPL, StackOverflow Survey тощо.

А потім мені щось закортіло автоматизувати публікацію пакету. Значить, GitHub Actions сетаплять Python, встановлюють poetry, збирають wheel, а потім публікують його в GitLab Package Registry на іншому хості. На ґітлабі в свою чергу запускається пайплайн, котрий збирає докер-образ з новою версією скрипта та завантажує його в Artifactory.

Найдивніше тут те, що все запрацювало з першого разу, навіть авторизація 🤯, хоча я до цього не мав справ ані з Environments на ґітгабі, ані зі сторонніми PyPI індексами, ані з пайплайнами на ґітлабі.

Чи то день такий вдалий, чи то минулого разу я голодний був.
Please open Telegram to view this post
VIEW IN TELEGRAM
Трохи про #UX

Щойно витратив хвилин 10, мабуть, щоб знайти, як в Outlook для macOS створити подію на весь день. Натискаю велику кнопку New Event і бачу вікно, як на скріншоті.

Перевірив в ньому всі спливаючі менюшки, спробував потягати в панелі справа, клікав лівою, клікав правою кнопкою миші, навіть намагався поставити час від 0:00 до 0:00, бо думав, може, воно зрозуміє — нічого. Пішов шукати в Bing врешті, але там перші посилання на віндовий аутлук та на веб-версію.

Правильна відповідь: може я сліпий, але схоже, що у вікні створення нової події такої можливості й немає 🤡 Можна це зробити тільки з головного вікна, як в відосі.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Як зрозуміти, що прога написана на Qt? — Ніхто не вміє працювати з High-DPI екранами 🧐 Навіть дефолтний #QML-проєкт, що генерується в Qt Creator з офіційного шаблону, містить некоректний код для Windows.

В даному випадку бачимо завеликі іконки в macOS. Що цікаво: на рідному retina-екрані макбука як раз все ок, а це скріншот з мого «звичайного» монітора.

Хоч бери й пиши мануал.
Please open Telegram to view this post
VIEW IN TELEGRAM
Сідайте, зараз буде довжелезна розповідь не про inner-source. (Я б попросив нікому більше не розповідати, але вам ніхто не повірить 🙂).

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

Люди взагалі схильні недооцінювати важливість тулзів, як я вже писав. Правда в тому, що погані інструменти можуть поставити хрест на будь-яких ваших спробах досягти порядку, а класні — навпаки зробити дисципліну частиною культури.

В Німеччині є так званий ArbZG — Закон про робочий час. Згідно з ним, працівник не має переробляти, а роботодавець має це контролювати та бути в змозі довести. З цього витікає низка правил, як то: працювати до 8 годин (інколи можна більше, але не більше 10 на добу); на тиждень можна максимум 48, здається, але щоб не вийшло понад 160 за місяць; між робочими сесіями має бути щонайменше 11 годин відпочинку (не можна закінчити об одинадцятій вечора, а почати о восьмій ранку); ще там про перерви щось. Багацько, отож.

Раніше у нас в компанії для трекінгу часу використовувалась наймерзенніша, як мені здавалось, система німецького виробництва. Німці в принципі якось в софтварі не дуже ніби з точки зору UX в середньому, але це була квінтесенція нікчемності. В якийсь момент ще й вимкнули можливість самостійно виправляти помилки в трекінгу — треба було реквест до HR писати. Отож я намагався цим користуватись до першої HTTP 500, а потім просто забив на рік чи навіть більше. Мені за це авжеж ніхто не подякував, але якось обійшлося.

На щастя з початку цього року у нас нова система, яка нібито враховує всі ці німецькі правила. Ірландці, здається, розробляють. Я перші декілька днів навіть радів, бо на тлі попередньої це виглядало як значне досягнення (навіть на мобілку аппка є!). Але UX — це срака якась. Наприклад, скоригувати час за попередній день можна в гріді з текст-філдів, причому коли це текстове поле втрачає фокус, то зʼявляється попап (без клавіатурної навігації авжеж), в якому треба обрати причину редагування — тобто фактично немає жодної можливості зробити це хоч якось швидко чи зручно. Це суцільне безглуздя.

Вочевидь, проблема стосується не тільки мене, бо компанія невпинно продовжує проводити тренінги по «правильному тайм-трекнігу», пояснюючи знов і знов, як це важливо, повторюючи всю ту купу правил та наполягаючи на тому, що це наш обовʼязок. Я особисто був присутній щонайменше на 3–4 таких сесіях. Уявімо просто: 4 сесії по 1 годині завдовшки на 500 людей. Можете самі помножити на вартість людиногодини середню.

Я вирішив, що я можу покращити ситуацію, написавши якусь просту програму, що буде висіти в треї та нагадувати мені залогувати час, коли я вмикаю компʼютер, та зробити перерву, якщо я занадто довго сиджу. Ну й було б круто всі ці правила, що я згадував вище, якось симпатично візуалізувати. Подумав, що це може зацікавити ще когось, тож є сенс розробляти це в іннерсорс-манері. І написав команді, що займається інтеграцією системи: «Дайте API-шку, будь ласка», — кажу.

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

Ну а сам я трохи підзабив час відмічати знов 😅 І нещодавно мені HR пише дуже суворим офіційним тоном, лякає типу: «Чєл, в тебе купа випадків непокори», — каже, — «виправляй, бо інакше зп тобі різати почнемо».

↩️
Please open Telegram to view this post
VIEW IN TELEGRAM
Cіпласпластик
Сідайте, зараз буде довжелезна розповідь не про inner-source. (Я б попросив нікому більше не розповідати, але вам ніхто не повірить 🙂). Моя спеціалізація — це #тулзи. Я полюбляю тестити якісь нові, мені подобається писати власні, подобається поєднувати різні…
↪️ (продовження)

Тут у мене вкотре терпець урвався. Сів я, значить, посніфав трафік в браузері, роздуплився трохи, що воно там де шле. Там ще й не REST ніфіга, а клятий ASP.NET — тупо жесть. Може SOAP якийсь чи хтозна-що, я не шарю. Авторизацію їх з WS-Federation взагалі не викупив — довелось із браузера кукі брати. Тим не менш, за вечір і день написав на пайтоні модуль, щоб балком можна було заповнювати ці таймшити. Трохи навіть похизувався й додав рандому, щоб було схоже на реальні логи часу. Цим насправді нікого не надуриш, бо там все одно в системі видно, що час редагований, але по приколу було. Місцями налажав авжеж, як без цього. Не скажу, що працює на 100%. Думаю, як раз через стейти щось не так йде інколи. Втім досі краще, ніж руками це заповнювати.

Блін, а скільки часу можна було б всім зекономити, якби сорци були відкриті… 😬
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Cіпласпластик
Хтось з вас полюбляв читати гороскопи в дитинстві? Наприклад, я — дуже! 😅 Це антинаукова маячня та марновірство безперечно, але цікаво було ) …маячня на відміну від психологічних тестів! І я не про ті тести, як на малюнку зверху, бо це також повна нісенітниця…
Одразу зазначу: це найдовший тест, що я коли-небудь проходив 🥵 Загалом там існує 28 архетипів, а результат (9-сторінкова PDF) містить до 3.

Мені він каже, що ймовірно я Coach, Explorer та Shaper з найяскравіше вираженими рисами першого. І це дуже схоже на правду!

З приводу Coach: я про себе доволі давно зʼясував — ще, може, років 20 тому — що мені дуже подобається ділитись досвідом та знаннями з людьми. Щоправда, раніше нерідко виникали труднощі, якщо людина цього не бажала, бо мені інколи прям кортить доїбатись зі своїми порадами. Зараз вже рідше, але трапляється ) В мене й нікнейм GooRoo ті самі років 20. Я авжеж зайвий раз не втрачав нагоди похизуватись розумом, через що нікнейм може сприйматись трохи інакше 😂, але насправді мені подобається допомагати людям знайти свій шлях.

В мене навіть є список конкретних людей з їх досягненнями, яким я допомагав у минулому. Варто зазначити, що я не витрачаю час на безнадійних або тих, в кого не вистачає власної мотивації. За руку нікого не тягну. Це також значить, що всі, кому я допомагав, врешті до своїх цілей дійшли самі, а я тільки показав напрям — пишаюсь ними 🙂 Є й ті, хто у свій час вплинув так само на мене, але вони про це не знають, мабуть. Треба подякувати, чи шо.

Щодо Explorer та Shaper все теж зрозуміло: перше зумовлене постійним пошуком нового, тягою до інновацій, embracing change і т.і., а друге допомагає мені з формуванням бачення, як все це втілити в життя.

І тут мене спіткала невдачка! Я давно відчував, що безпосередньо імплементація мене тішить значно менше, аніж хай-левел планування чи обмірковування деталей, архітектури, ризиків тощо. Були навіть моменти, коли це мене пригнічувало. Останні роки я це в собі прийняв і навіть дійшов висновку, що для втілення ідей мені потрібен партнер із зовсім іншим майнд- та скіл-сетом, ніж мій. І ось — тест мені одразу про це сказав: я ані Implementer, ані Problem Solver. Можна було не гаяти десять років, а одразу шукати когось в команду 🥲

Кидайте в коменти власні результати, якщо комусь вистачило наснаги.