Много работы и ничего интересного, потому посмотрите как какой-то гик собрал WiFi-картридж для GameBoy . Меня всегда восхищало GB-коммьюинити своей ламповостью и искренней любовью к приставке которой больше лет чем мне 😕
there.oughta.be/
There oughta be a WiFi Game Boy cartridge.
It took a while, but I finally managed to create my own Game Boy cartridge. With WiFi! At this point, it can only demo a simple telnet-style communication and access Wikipedia articles, but I am confident that I will showcase more in the future. For now,…
На днях нашёл интересный сервис - https://tailscale.com/ . Ребята, через своё приложение, упростили сбор всех устройств в одну сеть. Т.е. находясь где-нибудь на отдыхе можно в один клик подключиться к своему домашнему серверу (у меня это raspberry pi 🙂) и использовать его как выходную ноду. Внутри крутится DNS, чтоб было проще подключаться к девайсам внутри сети.
И все вроде классно, но если девайсы за NATом, то трафик идёт через промежуточный сервер, который не контролируешь🤔 Впрочем, сторонний VPS тоже не гарантирует 100% приватность
#кодинг
И все вроде классно, но если девайсы за NATом, то трафик идёт через промежуточный сервер, который не контролируешь🤔 Впрочем, сторонний VPS тоже не гарантирует 100% приватность
#кодинг
Tailscale
Tailscale | Secure Connectivity for AI, IoT & Multi-Cloud
The connectivity platform for devs, IT, and security teams. Zero Trust identity-based access that deploys in minutes and scales to every resource. Start free.
Итоги года
Прочитал тут, что важно оборачиваться назад подводить итоги и ставить планы на будущее, дескать это систематизирует мысли и помогает устойчиво развиваться.
Решил попробовать, потому текст ниже будет в формате неких номинаций )
Технология года
Считаю, что всегда нужно стремиться к новому, хоть коллеги меня и попросили в "Оценке 360" (https://ru.wikipedia.org/wiki/Метод_360_градусов) сдерживаться и подходить к делу со здоровым скепсисом. Очень сложно это делать когда видишь что-то крутое, что теоретически может ускорить твою работу или избавить от рутины.
В этом году моя "Технология года" - это связка GoLang + Tarantool. Я не знаю, что может быть быстрее. Хотя еще в прошлом году было очень сложно в голове сменить парадигму с реляционных БД на нереляционные. Очень сложно когда нет связей между данными "из коробки" и приходится их конструировать руками. Но, та скорость извлечения этих данных определенно того стоит. Правда, надо помнить, что скорость такой связки сильно зависит от скиллов, очень легко выбрать не оптимальную архитектуру, а потом очень трудно ее "выпрямлять" - делать так, чтобы она работала быстро (как надо).
Еще в эту номинацию добавил бы gRPC/Protobuf. Да, это давно уже не новость, я его тыкал лет 5-7 назад, тогда казался каким-то супер-сложным, но сейчас выглядит как отличный способ структурировать модели данных приложения и сделать единную точку откуда по этим моделям будет генерировать код на разных языках (go, js, lua).
В этот своебразный топ не вошел Kubernetes по той причине, что уже воспринимается как данность, с ужасом вспоминаю когда надо было катить как-то хитро, а не через нажатие одной кнопки в CI.
Ресурс года
В этом году открыл для себя много кодерских ресурсов также несколько раз пытался начать более-менее стабильно писать в блоги. Побывал на платформах: medium, hashnode, teletype, и вот, наконец, остановился на телеге. Впрочем, телетайп, скорее буду использовать для больших постов с картинками.
Кроме блогов, были чисто информационные сайты/проекты, например: daily.dev. Но тем самым "Ресурсом года" стал HackerNews (https://news.ycombinator.com), очень классная новостная лента без кликбейта и чего-то лишнего, только самый свежак из мира IT. Еще пробовал reddit, но там как-то надо хитро настроить ленту, сейчас он для меня просто еще одна соц.сеть.
Экосистема года
Как-то тихо и незаметно попал в цепкие лапы экосистемы Apple. Испытал культурный шок, когда поехали в другой город поработать удаленно, поставил планшет рядом с рабочим макбуком и тот такой "Псс, парень! Не хочешь второй экран?", одно нажатие и вот уже получаешь +/- нормальный сетап, как дома. Еще куча всяких мелочей: скопировать на планшете, вставить на компе; продолжить слушать подкасты на другом устройсте; перекинуть вкладку сафари с одного девайса на другое. Я пытался делать нечто подобное на Gentoo Linux и Android окружении, но это работает либо очень медленно либо через раз, что нивелирует весь профит. А тут "магия Apple" действительно работает. Конечно, как и любая сложная система, она не идеально, но очень близка к моим ощущениям как оно должно работать 🙂
Достижение года
Наверно самым большим достижением за год, это мои успехи в многопоточном программитровании. В Python, к сожалению, с этим туго из-за GIL. Т.е. там есть места где очень классно работает asyncio, но в Go с этим намного проще. Но за простоту надо платить тем, что очень легко ошибиться и вместо проффита по скорости получить жор памяти и лютые затупы. Вообще, мои успехи в Go хорошо демонстрирует мои несколько проектов на гитхабе - менеджер паролей "nosepass" (https://github.com/ex0hunt/nosepass) и локальный dns-сервер "GoNS" (https://github.com/ex0hunt/GoNS). По ним прям можно проследить прогрессию.
Прочитал тут, что важно оборачиваться назад подводить итоги и ставить планы на будущее, дескать это систематизирует мысли и помогает устойчиво развиваться.
Решил попробовать, потому текст ниже будет в формате неких номинаций )
Технология года
Считаю, что всегда нужно стремиться к новому, хоть коллеги меня и попросили в "Оценке 360" (https://ru.wikipedia.org/wiki/Метод_360_градусов) сдерживаться и подходить к делу со здоровым скепсисом. Очень сложно это делать когда видишь что-то крутое, что теоретически может ускорить твою работу или избавить от рутины.
В этом году моя "Технология года" - это связка GoLang + Tarantool. Я не знаю, что может быть быстрее. Хотя еще в прошлом году было очень сложно в голове сменить парадигму с реляционных БД на нереляционные. Очень сложно когда нет связей между данными "из коробки" и приходится их конструировать руками. Но, та скорость извлечения этих данных определенно того стоит. Правда, надо помнить, что скорость такой связки сильно зависит от скиллов, очень легко выбрать не оптимальную архитектуру, а потом очень трудно ее "выпрямлять" - делать так, чтобы она работала быстро (как надо).
Еще в эту номинацию добавил бы gRPC/Protobuf. Да, это давно уже не новость, я его тыкал лет 5-7 назад, тогда казался каким-то супер-сложным, но сейчас выглядит как отличный способ структурировать модели данных приложения и сделать единную точку откуда по этим моделям будет генерировать код на разных языках (go, js, lua).
В этот своебразный топ не вошел Kubernetes по той причине, что уже воспринимается как данность, с ужасом вспоминаю когда надо было катить как-то хитро, а не через нажатие одной кнопки в CI.
Ресурс года
В этом году открыл для себя много кодерских ресурсов также несколько раз пытался начать более-менее стабильно писать в блоги. Побывал на платформах: medium, hashnode, teletype, и вот, наконец, остановился на телеге. Впрочем, телетайп, скорее буду использовать для больших постов с картинками.
Кроме блогов, были чисто информационные сайты/проекты, например: daily.dev. Но тем самым "Ресурсом года" стал HackerNews (https://news.ycombinator.com), очень классная новостная лента без кликбейта и чего-то лишнего, только самый свежак из мира IT. Еще пробовал reddit, но там как-то надо хитро настроить ленту, сейчас он для меня просто еще одна соц.сеть.
Экосистема года
Как-то тихо и незаметно попал в цепкие лапы экосистемы Apple. Испытал культурный шок, когда поехали в другой город поработать удаленно, поставил планшет рядом с рабочим макбуком и тот такой "Псс, парень! Не хочешь второй экран?", одно нажатие и вот уже получаешь +/- нормальный сетап, как дома. Еще куча всяких мелочей: скопировать на планшете, вставить на компе; продолжить слушать подкасты на другом устройсте; перекинуть вкладку сафари с одного девайса на другое. Я пытался делать нечто подобное на Gentoo Linux и Android окружении, но это работает либо очень медленно либо через раз, что нивелирует весь профит. А тут "магия Apple" действительно работает. Конечно, как и любая сложная система, она не идеально, но очень близка к моим ощущениям как оно должно работать 🙂
Достижение года
Наверно самым большим достижением за год, это мои успехи в многопоточном программитровании. В Python, к сожалению, с этим туго из-за GIL. Т.е. там есть места где очень классно работает asyncio, но в Go с этим намного проще. Но за простоту надо платить тем, что очень легко ошибиться и вместо проффита по скорости получить жор памяти и лютые затупы. Вообще, мои успехи в Go хорошо демонстрирует мои несколько проектов на гитхабе - менеджер паролей "nosepass" (https://github.com/ex0hunt/nosepass) и локальный dns-сервер "GoNS" (https://github.com/ex0hunt/GoNS). По ним прям можно проследить прогрессию.
Факап года
Самое плохое, что я сделал в этом году это перестал быть вовлеченным в один проект, который очень сильно постарадал из-за этого. Никогда нельзя терять фокус, всегда надо понимать что делаешь и для чего. Неважно как к этому относится твой коллега, надо всегда все решения принимать через диалог, как бы сложно это не было. Потому, что если "отпустить ситуацию", то коллега может уволиться, а тебе все равно придется с этим всем разбираться (если только сам не уволишься, хе-хе). В общем мораль такая - любые фичи, предложения надо пропускать через себя, через восприятие проекта. Потому, что если этого не делать можно получить "суперпозицию костылей" где любое неаккуратное действие может привести к фатальным последствиям для проекта. Так же, всегда надо просить время на рефактор и ретро по проекту, очень важно чтобы все понимали, что они сделали, что они делают и для чего это все.
Цель года
Неплохо было бы вылатить ипотеку. Как видно по тексту выше, очень увлекся программированием на Go, буду и дальше погружаться в этот язык и совершенствовать многопоточный кодинг. Но еще есть желание сделать second-brain ассистента, т.е. некий сервис куда буду кидать что-то интересное, а он сам будет переваривать входные данные и выдавать рекомендации и строить поиск по тегам. Как раз можно немного потыкать в ML и DataScience. Концепт с описанием технологий и road-map готов, нужно только время и желание 🙂
Такое годовое ретро получилось 🙂 Всем желаю хороших праздников и много достижений и отсутствия факапов в новом году
Самое плохое, что я сделал в этом году это перестал быть вовлеченным в один проект, который очень сильно постарадал из-за этого. Никогда нельзя терять фокус, всегда надо понимать что делаешь и для чего. Неважно как к этому относится твой коллега, надо всегда все решения принимать через диалог, как бы сложно это не было. Потому, что если "отпустить ситуацию", то коллега может уволиться, а тебе все равно придется с этим всем разбираться (если только сам не уволишься, хе-хе). В общем мораль такая - любые фичи, предложения надо пропускать через себя, через восприятие проекта. Потому, что если этого не делать можно получить "суперпозицию костылей" где любое неаккуратное действие может привести к фатальным последствиям для проекта. Так же, всегда надо просить время на рефактор и ретро по проекту, очень важно чтобы все понимали, что они сделали, что они делают и для чего это все.
Цель года
Такое годовое ретро получилось 🙂 Всем желаю хороших праздников и много достижений и отсутствия факапов в новом году
Собсно начал писать тулзу, которая систематизирует все, что нахожу в этих ваших интернетах. Работает пока как телеграм-бот, т.к. выделить из текста теги (NLP и вот это всё) оказалось не такой простой задачей и так проще отлаживать. Но, получается довольно неплохо. Сорцы: https://github.com/ex0hunt/second-brain
#кодинг
#кодинг
Походный роутер
На удаленке сложилось такое впечатление, что во многих аппартах и гостиницах интернет раздается чисто для галочки. Вроде как и есть, но расположение точки доступа (качество сигнала, скорость, вот это все) оставляет желать лучшего.
В какой-то момент понял, что так жить нельзя и надо бы таскать с собой походный роутер, желательно с поддержкой vpn, чтоб местные гостиничные админы, с потными ладошками, не могли отслеживать мой траффик. И такое решение нашлось.
В одном из выпусков radio-t, широко известный в узких кругах Bobuk расскзал, что пользует некий Gl-Inet Mango (https://www.gl-inet.com/products/gl-mt300n-v2/) как раз для поездок. Выглядит как идеальный девайс для путешествий, но несколько смутило отсутствие type-c (который есть уже везде) и 5Ghz канала ибо иногда бывает, что 2.4Ghz настолько зашумлен, что подключиться просто не реально.
Потому начал смотреть в более продвинутые решения и нашел Gl-Inet Beryl (https://www.gl-inet.com/products/gl-mt1300/). Как показали новогодние праздники, штука весьма годная, даже в режиме повторителя, на который я особо не расчитывал
Условия
Собственно, условия в которых тестил, это гостиница с точкой доступа которая расположена "где-то там по коридору", сигнал в номере есть только рядом со входной дверью (если верить телефону). Первичный осмотр показал, что розетка ethernet отсутствует в принципе, что несколько разочаровало т.к. полагал, что приемник в роутере ни чем не лучше телефонного.
Настройка
Вообще админка Gl-Inet - это прям самое простое, что я видел у роутеров. Включить режим повторителья можно буквально в один клик. Кроме того, роутер умеет из коробки WireGuard сервер для которого для заблоговременно поднял у себя на VPS'ке.
Использование
WireGuard'ом воспользоваться не получилось, т.к. из 9мбит/сек которые выжимал роутер из того слабого сигнала, оставалось только 2, а этого уже недостаточно для всяких там видосов из ютубчика. Потому, просто настроил DNS over TLS на Cloudflare, чтоб хоть как-то успокоить своего внутреннего параноика.
Отдельно, оказалось полезно что можно антены высунуть вперед относительно лицевой стороны роутера т.к. ничего подходящего под подставку для него я не нашел (в следующий раз, видимо, надо брать двусторонний скотч с собой), в случае с Mango такой фокус не прокатил, а так получил буст в пару тройку мбит по скорости.
В общем-то и все, это то устройство которое один раз настроил и оно работает. Единственно, что долго пытался настроить WireGuard на работу в таком нестабильном подключении пока не сдался. А дальше уже пользовался в свое удовольствие. Перегревов или проблем со стороны отельной точки не обнаружил, так что очень рекомендую этот девайс тем кто часто бывает в отелях и кому нужен там нормальный интернет.
На удаленке сложилось такое впечатление, что во многих аппартах и гостиницах интернет раздается чисто для галочки. Вроде как и есть, но расположение точки доступа (качество сигнала, скорость, вот это все) оставляет желать лучшего.
В какой-то момент понял, что так жить нельзя и надо бы таскать с собой походный роутер, желательно с поддержкой vpn, чтоб местные гостиничные админы, с потными ладошками, не могли отслеживать мой траффик. И такое решение нашлось.
В одном из выпусков radio-t, широко известный в узких кругах Bobuk расскзал, что пользует некий Gl-Inet Mango (https://www.gl-inet.com/products/gl-mt300n-v2/) как раз для поездок. Выглядит как идеальный девайс для путешествий, но несколько смутило отсутствие type-c (который есть уже везде) и 5Ghz канала ибо иногда бывает, что 2.4Ghz настолько зашумлен, что подключиться просто не реально.
Потому начал смотреть в более продвинутые решения и нашел Gl-Inet Beryl (https://www.gl-inet.com/products/gl-mt1300/). Как показали новогодние праздники, штука весьма годная, даже в режиме повторителя, на который я особо не расчитывал
Условия
Собственно, условия в которых тестил, это гостиница с точкой доступа которая расположена "где-то там по коридору", сигнал в номере есть только рядом со входной дверью (если верить телефону). Первичный осмотр показал, что розетка ethernet отсутствует в принципе, что несколько разочаровало т.к. полагал, что приемник в роутере ни чем не лучше телефонного.
Настройка
Вообще админка Gl-Inet - это прям самое простое, что я видел у роутеров. Включить режим повторителья можно буквально в один клик. Кроме того, роутер умеет из коробки WireGuard сервер для которого для заблоговременно поднял у себя на VPS'ке.
Использование
WireGuard'ом воспользоваться не получилось, т.к. из 9мбит/сек которые выжимал роутер из того слабого сигнала, оставалось только 2, а этого уже недостаточно для всяких там видосов из ютубчика. Потому, просто настроил DNS over TLS на Cloudflare, чтоб хоть как-то успокоить своего внутреннего параноика.
Отдельно, оказалось полезно что можно антены высунуть вперед относительно лицевой стороны роутера т.к. ничего подходящего под подставку для него я не нашел (в следующий раз, видимо, надо брать двусторонний скотч с собой), в случае с Mango такой фокус не прокатил, а так получил буст в пару тройку мбит по скорости.
В общем-то и все, это то устройство которое один раз настроил и оно работает. Единственно, что долго пытался настроить WireGuard на работу в таком нестабильном подключении пока не сдался. А дальше уже пользовался в свое удовольствие. Перегревов или проблем со стороны отельной точки не обнаружил, так что очень рекомендую этот девайс тем кто часто бывает в отелях и кому нужен там нормальный интернет.
👍1
Тут тихо и незаметно обновился крутейший инструмент без которого питоноводу нет жизни в консоли
#кодинг
#кодинг
Forwarded from Geek Links
https://blog.jupyter.org/release-of-ipython-8-0-6e034ff122ef?gi=5efbb52d543e
#blog #completion #feature #ipython #jan #jupyter #matthias #powerful #python #release #repl #several #top #tracebacks #useful
#blog #completion #feature #ipython #jan #jupyter #matthias #powerful #python #release #repl #several #top #tracebacks #useful
Medium
Release of IPython 8.0
IPython is a powerful Python REPL that gives you tab completion, better tracebacks, multiline editing, and several useful features on top…
TIL, что не надо страдать если вдруг открыл системный файл для редактирования не под sudo. Можно просто пользовать micro (https://micro-editor.github.io). Эт как nano, только micro (бадум-тс). #кодинг
Оказывается, существует сервис для определения типа сыра по фото https://cheezam.fr/ . Считаю, что чем больше такого тем лучше #знаетеливычто
cheezam.fr
Cheezam ! By Prevision.IO - Computer Vision with AI for cheese
Cheezam is a computer vision AI built on PrevisionIO platform. Detect French cheese and label them with this webapp. v2.3.7
👍2
Очень интересный постмортем от Roblox blog.roblox.com/2022/01/roblox… . Тот самый случай когда игра больше интересна как высоконагруженный сервис, а не как развлечение:)
Roblox Blog
Working at Roblox: Meet Richard Shu - Roblox Blog
Richard Shu is a Software Engineer on the Developer Content Sharing team. He is a recent college graduate and is working on building the infrastructure for Roblox developers to share and reuse their creations across multiple experiences.
Тут очередная компрометация UEFI, которая показывает, что без SecureBoot и TPM жизни нет. Но это все проприетарные технологии MS и никто не гарантирует, что там нет бекдоров 😕 #кодинг
Что-то прям богатый месяц на события в игровой индустрии.
Вот даже у Sony не хватило денег на Blizzard, но хватило на Bungie (https://www.gamesindustry.biz/articles/2022-01-31-sony-buying-bungie-for-usd3-6-billion). Забавно, что Банжи до 2018 года дружила с Activision и даже продавала Destiny в battle.net, но потом случился развод и довольно болезненный переезд в стим.
Думается мне, что под лозунгами про «метавселенные» игробизнес укрупняется и скоро придём к тому, что есть 3 (Microsoft, Sony, Facebook) крупные компании которые выпускают 90% всех игр 🤔
Вот даже у Sony не хватило денег на Blizzard, но хватило на Bungie (https://www.gamesindustry.biz/articles/2022-01-31-sony-buying-bungie-for-usd3-6-billion). Забавно, что Банжи до 2018 года дружила с Activision и даже продавала Destiny в battle.net, но потом случился развод и довольно болезненный переезд в стим.
Думается мне, что под лозунгами про «метавселенные» игробизнес укрупняется и скоро придём к тому, что есть 3 (Microsoft, Sony, Facebook) крупные компании которые выпускают 90% всех игр 🤔
GamesIndustry.biz
Sony buying Bungie for $3.6 billion
Destiny studio will remain multiplatform, able "to self-publish and reach players wherever they choose to play"