Get Mystery Box with random crypto!

Radio Kottans

Логотип телеграм -каналу radio_kottans — Radio Kottans R
Логотип телеграм -каналу radio_kottans — Radio Kottans
Адреса каналу: @radio_kottans
Категорії: Технології
Мова: Українська
Передплатники: 2.05K
Опис з каналу

Share the knowledge (c)
Канал корисних посилань та новин зі світу програмування від спільноти розробників "Котани".
https://kottans.org/
Бажаєш підтримати? https://www.patreon.com/kottans

Ratings & Reviews

1.67

3 reviews

Reviews can be left only by registered users. All reviews are moderated by admins.

5 stars

0

4 stars

0

3 stars

0

2 stars

2

1 stars

1


Останні повідомлення 13

2021-02-16 16:59:56 На випадок важливих перемовин тримайте невеличкий допис про те, як давати назву змінним у програмуванні

https://gist.github.com/tmcw/35849b7e9b86bb0c125972b2bb275bc7
746 viewsIvan Tytarenko, 13:59
Відкрити / Коментувати
2021-02-16 12:59:56 Алексу Бірсану, досліднику у сфері безпеки, вдалося зламати Apple, Netflix, PayPal та інші провідні компанії.

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

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

Алекс отримав від свого знайомого Джастіна package.json який використовується PayPal в одному зі своїх проектів. У цьому файлі були залежності на приватні репозиторії npm - auth-paypal, wurfl-paypal та т.і. Тож Алекс поставив собі питання, яке ми ставили раніше - який репозиторій має вищий пріоритет?

У пошуках відповіді Алекс почав розшукувати файли маніфестів залежностей інших компаній для npm, PyPI та RubyGems.

Після цього він створив на GitHub купу проектів з такими самими назвами, як і приватні пакети.

І після виконання цих операцій він зрозумів, що менеджери залежностей віддають перевагу публічній версії репозиторія. Алекс додав preinstall скрипт у свої проекти, який ідентифікував комп’ютер на який було інстальовано залежність та використовував DNS, щоб передати цю інформацію та обійти внутрішній захист компаній.

Тож потенційно шкідливий код може потрапити у закритий проект компанії просто з наступним оновленням залежностей, без будь-якого контролю з боку розробників.

Детальніше про цю історію ви можете почитати тут: https://www.bleepingcomputer.com/news/security/researcher-hacks-over-35-tech-firms-in-novel-supply-chain-attack/

Закінчилося все добре - Алекс отримав більш ніж 130 000 USD як винагороду за пошук вразливостей. Проте захист у будь-якому випадку залежить від компаній, поведінка менеджерів залежностей залишилась незмінною
796 viewsIvan Tytarenko, edited  09:59
Відкрити / Коментувати
2021-02-14 15:30:38
843 viewsAnastasiya Mashoshyna, 12:30
Відкрити / Коментувати
2021-02-12 17:00:27 Fwdays оголошує Call For Papers на онлайн-конференцію по React

Ви ж знаєте, які круті івенти проводять Fwdays? Хочете виступити на такому івенті?

27 березня Fwdays проводять онлайн-конференцію по React та шукають класні, практичні доповіді. Якщо у вас є непереборне бажання поділитись своїми знаннями, зараз саме час!.

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

Подати заявку можна до 28 лютого за посиланням: http://bit.ly/3bIgmtE
1.1K viewsAnastasiya Mashoshyna, 14:00
Відкрити / Коментувати
2021-02-12 13:00:24 GitHub in 1 second

Додайте 1s до github для відкриття будь-якого репозиторію у VSCode у браузері

Це можливо, оскільки VSCode працює на Chromium, тож його дійсно можливо відкрити як веб-сторінку

https://twitter.com/hediet_dev/status/1359093978570907648
1.2K viewsIvan Tytarenko, 10:00
Відкрити / Коментувати
2021-02-11 17:00:24 Перше інтерв’ю з техлідом проєкту Ok Let's Talk! за вашими питаннями вже в ефірі!

Артур Міроненко з UpTech відповів на питання про процеси в компанії, ставлення до овертаймів та причини звільнення фахівців.

Також Артур говорив про деякі практики, що прийняті у компанії – чи досі UpTech лишається бірюзовою організацією, як ставляться до exit interview, на які червоні прапорці він звертає увагу при наймі та чи припустимо робити помилки та визнавати їх (спойлер: так, Артур розповів про власне помилкове рішення та як до нього поставилися колеги).

ми погуглили дещо за вас:
Бірюзові організації (teal organisations) – це організації, що роблять ставку на самоорганізацію працівників та надають їм для цього максимум свободи

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

Де послухати? Обирайте:

Anchor - https://bit.ly/2LALArV
Google Podcasts - https://bit.ly/3cUylxH
Apple Podcasts - https://apple.co/36Z62uc
Spotify - https://spoti.fi/3aJDAxe
Youtube -


Telegram - https://t.me/Skyworker_Insights
965 viewsIvan Tytarenko, 14:00
Відкрити / Коментувати
2021-02-11 13:00:23 Перша лекція курсу FrontEnd 2021

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

Цього року на курсі ми плануємо розповісти про HTML/CSS та роботу браузера, провести модуль з JS по книзі YDKJS Кайла Сімпсона, написати свій невеличкий фреймворк та повивчати TypeScript.

Лекції відбуваються щотижня у суботу чи неділю. Запис лекції викладається протягом одного-трьох днів на нашому YouTube каналі.

Тож ми подумали, чому б не повідомляти про лекції у нашому телеграм каналі?

Сьогодні пропонуємо лекцію Олександра Островного з HTML/CSS, яка розрахована на початківців у сфері фронтенду.

Олександр досвідчений верстальник з багаторічним досвідом у фронтенді. Він дуже прискіпливий до деталей та має досить багато досвіду у a11y.

Лекція за посиланням


Посилання на профіль Саші https://twitter.com/Alex_Ostrovny

Якщо у вас є питання, коментарі або думки, залишайте їх під цим дописом або на YouTube.
873 viewsIvan Tytarenko, 10:00
Відкрити / Коментувати
2021-02-10 17:00:30 Вийшов npm v7

Критична зміна, що може вплинути на ваші проекти - нова версія package-lock.json.

Якщо package-lock.json проекту створено під попередні версії npm, то на машині з npm v7 команда npm install перезапише lock-файл. Якщо оновлений lock-файл запушити в ремоут, то це може дещо ускладнити життя тим, кто все ще користується npm v6. Workaround є: npm install --no-save, але, можливо, буде доцільніше усім контриб'юторам проекту переїхати на npm v7

https://justfrontendthings.com/post/npm-7-now-standard
919 viewsOleksiy Rudenko, edited  14:00
Відкрити / Коментувати
2021-02-09 13:00:14 if … else для великих веб-сайтів

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

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

Який браузер першим спадає на розум? Мабуть ви зараз подумали про Internet Explorer? Але ні, ми говоримо про рушій WebKit який використовується для Safari та iOS.

Так наприклад для пошти Yahoo Safari буде синтезувати touch events.

Або ж vimeo та google.docs обходять уперед/назад кеш браузерів за допомогою "Cache-Control: no-store” та ‘HTTPS’. Але розробники браузера все одно кешують контент, що призводить до багів на цих сторінках. Тож для них існує окрема логіка кешування цього випадку.

Є код для Вікіпедії, google.com та microsoft.com та Netflix.

Зі свого боку додамо, що означений підхід не є ознакою чогось дуже поганого. Свого часу хлопці з Chrome припинили підтримку старої версії Polymer та зламали YouTube.

Тож… такі справи Що тут додаш?

Дивіться посилання https://github.com/WebKit/WebKit/blob/31b77296cf6d85c40313812d9f65a003cf41f440/Source/WebCore/page/Quirks.cpp
895 viewsIvan Tytarenko, 10:00
Відкрити / Коментувати
2021-02-06 15:00:04 Кешування vs мемоізація

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

Кешування – збереження даних при запиті для того, щоб при наступному запиті на ті самі дані віддати їх швидше. Кешування – досить широке поняття, зокрема воно охоплює мемоізацію. 

Мемоізація описує специфічний вид кешування, коли кешується значення функції, тобто результат її роботи (return) для певних аргументів. При повторному виклику з тими самими аргументами функція повертає збережений результат та економить повторні обчислення.

Кешування часто описує збереження результатів запитів на ззовні (читання файлів, запити мережею, до БД тощо), мемоізація натомість описує тільки збереження результатів власних обчислень.

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

До речі, слово “мемоізація” споріднене з memory, проте літери “р” у ньому не має. Ми теж обурені, але вже майже змирилися.
1.0K viewsAnastasiya Mashoshyna, 12:00
Відкрити / Коментувати