Pull to refresh
41
0
Иван @janson

Разработчик. PHP, JS, TypeScript.

Send message

Скачиваем и смотрим YouTube на своём хостинге

Level of difficultyMedium
Reading time6 min
Views28K

У пользователей в РФ возникли затруднения с доступом к YouTube. Причины известны, как и варианты решения. Однако это битва кота и мыши: ТСПУ эволюционируют, и популярные инструменты часто перестают работать.

Чуть надёжнее использовать свою инфраструктуру в зарубежном дата-центре. Так можно скачать контент с YouTube на свой сервер, а оттуда раздать трафик внутри РФ любым удобным способом без всяких «замедлений».

Получается что-то вроде зарубежного прокси для YouTube. И это совершенно легально (пока).

Читать далее
Total votes 49: ↑46 and ↓3+64
Comments80

Гайд по деплою web-приложений для новичков. Часть 3. Простая автоматизация

Level of difficultyMedium
Reading time7 min
Views6.6K

Продолжаем цикл статей, посвященных деплою приложений на сервер. 

Сегодня покажу, как можно автоматизировать деплой. Два варианта, которые отлично подойдут новичкам для ускорения деплоя:

- bash-скрипт

- GitHub actions

Читать далее
Total votes 15: ↑13 and ↓2+12
Comments19

Игры, которые помогают понять абстракции

Level of difficultyEasy
Reading time5 min
Views6.7K

Замечаю за собой, что при обучении чему-то новому есть вещи, которые даются легко, а для некоторых как будто не хватает специальных шестеренок в голове, чтобы схватить суть. Особенно это касается абстракций. Например, понять взаимодействие частиц в атоме, увидеть что лежит в основе функций и логарифмов, осознать как работают физические силы в окружающем мире, почувствовать выгоду в стратегии принятия отложенного решения вместо сиюминутного быстрого. Как можно наловчиться думать и оперировать метаязыками, если дефолтных навыков в мозгу недостаточно?

Читать далее
Total votes 11: ↑10 and ↓1+12
Comments15

Пара тупых ответов про эволюцию

Reading time9 min
Views57K


В школе я очень любил биологию, но у неё была очевидная проблема. Эволюция — суть жадный алгоритм, который мгновенно вознаграждает за небольшие улучшения. Тысячи лет постепенных улучшений, и вот перед вами утконос.

Проблема в том, что у него есть глаз. И другие сложные органы. А у тех же птиц есть крылья. И никакой жадный алгоритм не даёт понять, как можно тысячелетиями отращивать половинку крыла. Эта штука не просто не помогает, а откровенно мешает.

Крыло работает только тогда, когда целое. Половина крыла не даёт оторваться от земли.

Примерно такой же вопрос к сложным мутациям. Как так можно поменять пару букв в коде, чтобы он вдруг стал отлаженной библиотекой с чем-то полезным?

Ну или вот хвост павлина. Как можно развить такую длинную бесполезную штуку, которая люто нравится хищникам? Разве не должны были выжившие павлины стать ловкими и короткохвостыми?

Свои ответы я получил уже довольно поздно, но помню, как был рад их услышать. И наблюдая за идущим сейчас холиваром про теорию Дарвина, вижу много людей, которые задают те же самые вопросы.
Читать дальше →
Total votes 283: ↑280 and ↓3+341
Comments633

Obsidian+Github вместо Notion: синхронизация, бекап и версионность (3-в-1)

Level of difficultyEasy
Reading time8 min
Views55K

О том, как сделать прозрачную синхронизацию заметок Obsidian между устройствами (Desktop, Android, iOS) через GitHub:

1. Без сторонних приложений (вроде iCloud, SyncThing, Termux и пр)
2. Бесплатно
3. Бонусом — резервная копия: как самих заметок, так и истории изменений.

В результате получается полноценная замена Notion: структурированные заметки с автоматической синхронизацией между устройствами.

Инструкция:
Total votes 144: ↑144 and ↓0+165
Comments136

Обходим блокировку VPN

Level of difficultyMedium
Reading time2 min
Views69K

Мой провайдер помимо замедления (читай полная блокировка) YouTube так-же стали блокировать соединения с моими рабочими VPN. Работодатель не очень любит, когда на встречах на вопрос о прогрессе, я неделю отвечаю, что у меня не работает VPN! Своими действиями, мой провайдер сам меня подтолкнул к поиску обходных путей.

Сразу скажу, обходной путь придумал не сам, мне его подсказал автор проекта zapret, а точнее его комментарий, более того, я использую его проект, чтоб смотреть нормально YouTube. Спасибо огромное!

Добавлю, я использую nftables и nfqws, если этот вариант работает у меня — это не значит, что оно заработает и у вас! Возможно, вам придётся изменить некоторые параметры.

Читать далее
Total votes 36: ↑34 and ↓2+39
Comments81

Obsidian — Notion свободного человека

Level of difficultyEasy
Reading time5 min
Views96K

Notion объявили, что уходят из России и 9 сентября блокируют аккаунты пользователей.

Пока не понятно до конца, касается ли это в том числе пользователей, которые используют бесплатный функционал.

Для любителей Ноушена это большая проблема, для любителей Обсидиана это возможность сказать: "Мы же вам говорили" и начать хвастаться своими кастомными обсидианами.

Я сам долгое время пользовался Ноушеном. Первое знакомство было умопомрачительно, захватывающе. Чего только стоят мои конспекты с футбольными тактиками, где я ковертировал видео с матчей и тренировок в гифки, а потом добавлял к конспектам.

Год назад перевёл все свои заметки в Обсидиан. Причина простая: Обсидиан может гораздо больше вещей, чем Notion.

О том, почему не стоит расстраиваться и даже наоборот, открыть большой, новый мир возможностей...

Читайте в статье
Total votes 121: ↑115 and ↓6+128
Comments266

Punk riff generator

Level of difficultyMedium
Reading time38 min
Views1.7K

В данной статье мы будем воспроизводить звук в браузере на примере небольшого проекта под названием Punk riff generator.

В проекте заложена нехитрая идея: дать возможность генерировать и воспроизводить в браузере 4 случайных аккорда, которые можно было бы в последствии использовать как основу для очередной панк-песни. Ну не здорово ли?

Читать далее
Total votes 15: ↑15 and ↓0+19
Comments13

Как создать свой стикер пак с помощью нейросети Stable Diffusion

Level of difficultyEasy
Reading time9 min
Views22K

Вы знали, что не обязательно быть дизайнером, чтобы создать свой красивый пак стикеров?

Сегодня я поведаю историю создания своего стикерпака из 20+ стикеров с моим персонажем по имени Эвелинн с помощью нейросетей. Вам не понадобится мощная видеокарта и даже Photoshop(в большинстве случаев): я покажу, как сделать всё это прямиком в браузере. Это простой, доступный и бесплатный способ создания уникальных стикеров, справится даже чайник, надеюсь, он уже закипел, приступим!

Читать далее
Total votes 31: ↑30 and ↓1+36
Comments14

Профилирование PHP (Laravel) приложений с xhprof. Учимся искать ботлнеки

Level of difficultyEasy
Reading time9 min
Views8.9K

Привет, PHP-шники!

Вам знакомо то чувство, когда ваш PHP-код отрабатывает за дофига миллисекунд, а иногда и секунд, и вы не можете понять, в чём дело и где тот говнокод, который я (или не я, а мой коллега 😵‍💫) когда-то написал? В этой статье хочу немного рассказать на примере профайлинга PHP-кода, как перестать гадать и начать выявлять боттлнеки, которые всё тормозят. Короче, помочь поискать говнокод.

Читать далее
Total votes 15: ↑15 and ↓0+20
Comments15

«Экструдер» филамента для 3D-принтера своими Оч.Умелыми ручками. Безэкструдерное получение нитей

Level of difficultyMedium
Reading time7 min
Views5.6K

Небольшая предыстория

В первой моей статье мне в панамку не напихали и вы, уважаемое сообщество, приняли её достаточно благосклонно, а значит, если хочется сделать доброе дело - никакие преграды и разрушения не остановят)))). Кроме того я получил обратную связь, в том числе через личные сообщения, в которых получилось обсудить многие важные вопросы, за что отдельное спасибо.

Как Вы могли сделать вывод из первой моей статьи я представляю гремучую смесь инженера-текстильщика-химика-полимерщика-... пытающегося чуток "в науку".

Эксперименты не останавливаются. Построенный прототип периодически выдает "на гора" минусы реализации, но это лишь результат дендро-фекального способа конструирования на коленке и сознательного игнорирования некоторых важных конструкторских постулатов... Тем не менее уже сейчас можно смело сказать, что принцип действия показывает хорошие и нужные результаты и используя мой опыт и выявленные ошибки можно самостоятельно всё воплотить в жизнь.

Еще на этапе создания прототипа, разработки технологии я задавался вопросом "Кому это надо в повседневной жизни?". Один из ответов последовал от моего друга и товарища, которому нужен был филамент для принтера.

Кратко изучив вопрос стало понятно, что вопрос актуален по прозаичным коммерческим причинам (средняя цена мотка филамента в 1000 руб. против 80 руб. за гранулят как-то не гуманно), в связи с чем предпринимаются многочисленные попытки создать различного типа экструдеры.

Поэтому, если не идет речь о коммерческом использовании конструкции, пожалуйста - WTFPL.

Читать далее
Total votes 14: ↑14 and ↓0+16
Comments17

Правда ли, что в Европе везде отсталые сервисы, медленные платежи и плохие онлайн-услуги?

Level of difficultyEasy
Reading time36 min
Views147K

На Хабре неоднократно в комментариях звучало мнение, что Россия впереди планеты всей по онлайн‑сервисам. Мол, у нас и госуслуги, и финтех, и такси, и доставки — все на высочайшем уровне, а в остальных странах, а особенно в отсталой Европе бедные бюргеры до сих пор стоят в многочасовых очередях, заполняют вручную тонны бумажек и ждут в очередях на кассах чтобы сделать банковский перевод, а курьер не привезет им ночью смузи в течении получаса после заказа. Давайте разбираться, так это или нет.

Читать далее
Total votes 245: ↑207 and ↓38+208
Comments1140

«Робокоп» — рыцарь нашего времени

Level of difficultyEasy
Reading time13 min
Views10K


Порой, когда смотришь на путь создания того или иного художественного произведения, просто дух захватывает от понимания того, сколько звёзд должно было сойтись, чтобы оно смогло увидеть свет в том виде, в каком мы его знаем и ценим. А если речь идёт о большом и претендующем на культовый статус боевике, то там целый парад планет должен выстроиться, не иначе. Поэтому меня не перестают удивлять истории создания кинолент, на которых мы с вами выросли. Об одной из них, а именно о «Робокопе» 1987-го года за авторством Пола Верховена, мы сегодня и поговорим.
Читать дальше →
Total votes 56: ↑54 and ↓2+71
Comments24

Взлом грамматики английского. Часть 2

Reading time5 min
Views14K

Системный косяк в восприятии времен

Все мы учились в школе. Плохо ли, хорошо ли — учили грамматику. Попробую обобщить простыми словами то, как воспринимаются «времена» через школьный фильтр.

«Времена» — это такие «виды» действия. Надо взять действие, про которое хочешь сказать и понять, к какому «виду» оно относится. Тогда и «время» выберешь правильно. 

Звучит очень логично. А что? Находишь соответствие правилу и дело в шляпе. Здесь вполне естественным кажется вопрос «А какую конструкцию мне лучше употребить?»

Читать далее
Total votes 9: ↑6 and ↓3+4
Comments26

Взлом грамматики английского. Часть 1

Reading time10 min
Views32K

Вопросы, на которые отвечает статья:

1. Как ощущать грамматику английского как родную?

2. Есть ли технологии встраивания такого навыка? 

3. Какова внутренняя механика грамматики?

Черный ящик. Именно так представляют себе механизм использования грамматики носителем классические и окололежащие методы. Под окололежащими я подразумеваю коммуникативную, метод Петрова, Пимслера и т.д. и т.п. 

Подавляющее большинство методик вообще не задается вопросом, как именно мы управляем грамматикой. Вместо этого используются два подхода:

1. Изучения классической грамматики с помощью «мнемотехник» и «лайфхаков».

2. Карго-культ. Попытка сделать как у детей, не понимая механизма. Т.е. накидываем побольше, авось сработает.

Между тем, без понимания механизма и отдельных шестеренок, все попытки выстроить методику будут подобны попыткам средневековых алхимиков получить философский камень.

Читать далее
Total votes 18: ↑15 and ↓3+18
Comments72

Ыыыы ыыыыыыыыыы с помощью AmneziaЫЫЫ

Reading time3 min
Views90K

Ну что теперь будем писать про VPN вот так?

Кстати, в Китае вместо слова VPN вы часто можете встретить «Science Online»(科学上网), «ladder»(梯子), или «Internet accelerator»(上网加速器), все это обозначает VPN. В России, кажется еще все не так плохо, но это не точно. С первого марта писать о VPN на русскоязычных площадках нельзя, наказание для площадок — блокировка на территории России. При этом считаются как новые статьи, так и статьи, опубликованные до вступления в силу приказа о запрете. В скором времени, крупные ресурсы будут блокировать любую информацию о VPN, поэтому мы настоятельно советуем подписываться на телеграм каналы разных VPN, в том числе на наш. Мы не знаем сколько еще статей нам отведено на Хабре, и как хабр дальше будет показывать статьи со словом VPN в разных странах.

А теперь о хорошем.

Самый ожидаемый нашими пользователями бесплатный VPN AmneziaFree v.2 c защитой от блокировок наконец‑то готов. Должны признаться, последнее время мы много работали над self‑hosted приложением AmneziaVPN, а так же над протоколом AmneziaWG (или по простому — AWG, его мы используем в бесплатном VPN), поэтому работа над проектом AmneziaFree v.2 немного затянулась. В любом случае, мы очень рады, что наконец можем пригласить Вас присоединиться к числу пользователей нашего бесплатного сервиса. Все так же, как и раньше, без регистрации, рекламы и ограничении по сроку работы.

Бесплатный VPN AmneziaFree v.2, можно использовать только для популярных недоступных на территории России сайтов (не будем их перечислять, вы и сами их знаете), список достаточно большой, поэтому, скорее всего, то что вам надо в нем есть. При этом, не заблокированные в России сайты, будут открываться напрямую, без VPN. То есть напрямую с Вашего IP‑адреса.

Читать далее
Total votes 133: ↑121 and ↓12+134
Comments123

Как работает физика в играх

Level of difficultyMedium
Reading time17 min
Views21K

В мире видеоигр игровая физика играет важную роль, определяя реалистичность и взаимодействие игрового мира с игроком. Что же происходит под капотом? Какие алгоритмы и подходы используются в современных движках? И что же значит «застрять в текстурах»? (спойлер: чушь полнейшая)

В этой статье мы рассмотрим основные принципы и технологии, лежащие в основе работы физических движков, а также предоставим советы по ее оптимизации для улучшения производительности игрового движка.

Читать далее
Total votes 74: ↑74 and ↓0+74
Comments36
1
23 ...

Information

Rating
Does not participate
Location
Бишкек, Кыргызстан, Кыргызстан
Date of birth
Registered
Activity

Specialization

Backend Developer, Fullstack Developer
Senior
PHP
OOP
Git
Database
Docker