Web Overflow 🇺🇦
4.32K subscribers
388 photos
40 videos
3 files
519 links
Затишний блог про веб-розробку і не тільки 💛

Чат: @web_overflow_chat
Співпраця: @web_overflow_support
Автори: @lluchkaa & @anastasiia_tarasenko
Download Telegram
Advent of Code 2024, Day 20 🎄

Сьогоднішнє завдання коротко: у нас є 2-вимірна мапа, яка відображає трек для гонок. На ній:
S - початок;
E - кінець;
. - траса;
# - стіна.

Кожен рух на сусідню клітинку коштує 1 пікосекунду. Але є особливість: ви маєте 2 пікосекунди для "мухлювання". Це означає, що ви можете перестрибнути одну стіну:
- перша пікосекунда витрачається на перехід на стіну;
- друга - на повернення на трасу.

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

Завдання із зірочкою: у цьому випадку у вас є 20 пікосекунд для мухлювання. Вони можуть бути використані лише в одному безперервному відрізку, не розділяючи.

👉 Відкрити посилання

#aoc
👍52
Advent of Code 2024, Day 21 🎄

Сьогоднішнє завдання коротко: є цифрова клавіатура у форматі:
789
456
123
0A


З нею працює робот, який може рухатись вгору, вправо, вниз та вліво. Цей робот керується клавіатурою зі стрілками у форматі:
^A
<v>


А - виконати натискання.

Однак, цією клавіатурою також керує інший робот. Усього є ланцюжок із 5 таких клавіатур і 5 роботів, які один за одним передають команди. Ви керуєте шостою клавіатурою і управляєте п'ятим у черзі роботом.

Потрібно визначити, які кнопки на своїй клавіатурі вам потрібно натиснути, щоб у результаті введення команд було виконано заданий код.

Завдання побудоване доволі складно і дуже цікаве, тому відкривайте посилання, щоб прочитати усю історію детально.


Завдання із зірочкою: існує 1 цифрова клавіатура, з якою працює робот, 25 клавіатур з стрілками, з якими працюють роботи і 1 клавіатура з стрілками, якою керуєте ви.

👉 Відкрити посилання

#aoc
👍4🤯4
Advent of Code 2024, Day 22 🎄

Сьогоднішнє завдання коротко: реалізувати генератор псевдовипадкових чисел.

Для генерації псевдовипадкових чисел маємо задане початкове число. Алгоритм для обчислення наступного числа виконується в три етапи:
1. Домножити поточний результат на 64, виконати операцію mix із поточним результатом і застосувати операцію prune.
2. Поділити число на 32, виконати операцію mix із поточним результатом і застосувати операцію prune.
3. Домножити число на 2048, виконати операцію mix із поточним результатом і застосувати операцію prune.

mix — виконати бітову операцію XOR між з результатом попереднього обчислення.
prune — обчислити залишок від ділення числа на 16 777 216.

Потрібно обчислити, яке число буде згенеровано на 2000-й ітерації алгоритму.

👉 Відкрити посилання

#aoc
👍41
Чи склали план на наступний 2025 рік?
Anonymous Poll
11%
Так, звичайно!
89%
Ні 🥲
👍61
Advent of Code 2024, Day 23 🎄

Сьогоднішнє завдання коротко: Дано пари компʼютерів, які знаходяться в одній мережі, у форматі xx-yy.

Потрібно обчислити кількість унікальних триплетів (наборів із 3 компʼютерів), які перебувають в одній мережі та містять хоча б один компʼютер, імʼя якого починається з літери t.

Завдання із зірочкою: знайти найбільший за кількістю набір комп'ютерів, які мають зв'язок один з одним.

👉 Відкрити посилання

#aoc
👍41
Advent of Code 2024, Day 24 🎄

Сьогоднішнє завдання коротко: Потрібно обчислити значення в різних точках логічної схеми.

Дано початкові значення на деяких проводах, наприклад:
x00: 1
x01: 1
y00: 0
y01: 1


Також наведені описи елементів схеми у випадковому порядку. У схемі використовуються три операції: AND, OR, XOR. Наприклад:
x00 AND y00 -> z00
x01 XOR y01 -> z01
x02 OR y02 -> z02


Потрібно визначити значення на всіх проводах.

Завдання із зірочкою: виявляється, що вся схема має виконувати додавання чисел x та y, представлених проводами, що починаються на x та y відповідно. Результат повинен записуватися на вихідних проводах z. Однак зараз додавання працює некоректно, оскільки 4 пари вихідних проводів переплутані. Потрібно визначити, які саме пари проводів були переплутані.

👉 Відкрити посилання

#aoc
👍6🤯32
👍52
Що виведе консоль?
Anonymous Quiz
30%
1 1
19%
1 undefined
13%
1 0
38%
1 2
👍92
Advent of Code 2024, Day 25 🎄

Сьогодні, на Різдво, відкривається остання комірка AoC.

У цей день ми хочемо подякувати всім, хто був із нами в цій подорожі! Це була чудова можливість навчитися проходити лабіринти, опанувати рекурсію та розв’язати безліч цікавих задач.

👉 Відкрити посилання

#aoc
🎉7👍41
This media is not supported in your browser
VIEW IN TELEGRAM
Я вже кілька місяців слідкую за Ghostty, і сьогодні його перший реліз 🎉

Більше тексту пізніше, поки читайте все у автора - Mitchell Hashimoto

👻 Відкрити посилання

#news
🎉9👍43
Welcome!

Let's practice our English! So...

👉 What is the best thing that happened to you in 2024?

Have a nice #english_friday 💛
3👍1
Короткий відгук про Ghostty 👻

В цілому я задоволений і, швидше за все, буду використовувати його як основний (до цього я використовував WezTerm).

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


theme=catppuccin-mocha
font-family=Monaspace Krypton Var
font-variation=wght=300
window-padding-x=0
title=" "
macos-titlebar-proxy-icon=hidden
cursor-style-blink=false
shell-integration-features=no-cursor
keybind=cmd+t=unbind


#experience
4🔥2👍1
Хей-хей 🎄

Я обожнюю вигадувати різні традиції, а Юра "обожнює" їх підтримувати. Але серед усіх цих дивних речей є одна дійсно крута - починати рік з відпустки. Щороку в новорічно-різдвяний час ми відкладаємо всі справи й намагаємося повністю перезавантажитися. Тож хочемо попередити, що деякий час будемо відсутні.

Веселіться, спілкуйтеся в чаті, ми й самі намагатимемося там з’являтися. А після повернемося до вас із новими силами!

Веселих свят і будьте чемні! 😁
👍205
З Новим 2025 Роком!

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

У ньому було все: злети та падіння, релізи та баги, підвищення та звільнення. Сподіваємось, що наступного року у всіх будуть лише 9-значні зарплати та супер-цікаві проєкти. Також, будемо надіятись, що AI стане достатньо розумним, щоб виконувати роботу за нас, але водночас достатньо дурним, щоб не замінити нас.

Нехай мир і спокій запанують у вашому житті у 2025 році. Слава Україні! Слава ЗСУ!

Усіх щиро вітаємо! 💛
19👍7🍾7😱1
Особливий день 🥳

Так, так, саме сьогодні 18 років і 2557 днів тому зʼявилось оце чудо.

Ти робиш кожен день світлішим, кращим і насиченішим для мене та для усіх нас тут.

Тому нехай кожен твій день буде сповнений лише позитивними емоціями та кожен пунктик кожного твого плану збувається ❤️
🎉349👍7
Money 💸

Один зі способів заробітку — оплата за послуги у ваших застосунках. І один із найпопулярніших способів це зробити — підключити Stripe.

Ми ще не маємо достатнього досвіду роботи з ним, щоб давати поради. Натомість ділимося статтею від Theo Browne, який описав план інтеграції Stripe у застосунок.

Також є кілька порад, зокрема список подій, які він зазвичай обробляє, а також пояснення, чому варто відключити Cash App Pay (здається, це стосується лише проєктів у США).

👉 Відкрити посилання

#tips
👍122
👍6🤯3😁2
🤯11👍7👀2
Nice Modal 💅
#post_from @vova_taras

Робота з модальними вікнами в React може бути доволі дратівливою. Потрібно тримати стан (isOpen) і продумати способи закривання (як із зовнішньої компоненти, так і всередині самого вікна).

@ebay/nice-modal-react використовує трохи інший підхід до роботи з модальними вікнами. Ви можете просто викликати функцію show та передати в неї компонент із пропсами. Це не зовсім декларативний метод, але, на нашу думку, значно зручніший.

Також великим плюсом є робота через Promise. Якщо у вас коли-небудь було модальне вікно для підтвердження, і потрібно було передавати колбеки для onConfirm та onCancel, тепер можна просто повернути значення з функції виклику.

const modal = useModal(ConfirmationModal)

const onDelete = async () => {
const confirmed = await modal.show({text: "Are you sure?"})

if (confirmed) {
...
}
}


👉 Відкрити посилання

#library
👍12🔥32