Daily Geek News @daily_geek_news Channel on Telegram

Daily Geek News

@daily_geek_news


Гиковские новости от авторов radio-t.com

Daily Geek News (Russian)

Ежедневные гиковские новости - это канал, который предлагает последние новости из мира гиков. Авторы канала radio-t.com постоянно обновляют подписчиков интересными и актуальными материалами о компьютерных играх, технологиях, науке, фильмах, комиксах и других гиковских темах. Если вы являетесь фанатом всего гиковского, этот канал обязательно станет вашим источником информации номер один! Получайте свежие новости и обзоры первыми, следите за популярными трендами и делитесь своими впечатлениями с единомышленниками. Присоединяйтесь к каналу "Daily Geek News" прямо сейчас и окунитесь в увлекательный мир гиковской культуры!

Daily Geek News

02 Jan, 23:26


Если вы всё еще почему-то пользуетесь iTerm2 - обновляйтесь прямо сейчас. Хотя дыра там такая, что как говорит один русскоязычный подкастер "вон из профессии". Поэтому предлагаю обновляться сразу до kitty, wezterm или ghostty.

Daily Geek News

30 Dec, 14:27


Мы почему-то про это не говорили, но лучший эмулятор андроида BlueStack наконец-то выпустили версию для Apple Silicon Mac. Выпустили давно, но потестировал я только сегодня и это идеальный способ запускать андроидные приложения на маке https://www.bluestacks.com/mac

Daily Geek News

29 Dec, 00:31


Fish Shell официально зарелизился с переездом на Rust. Поздравляю всех причастных (в перрвую очередь меня). Поучительную историю от автора читать по ссылке, там прямо многобукв https://fishshell.com/blog/rustport

Daily Geek News

18 Dec, 10:40


Очень красивый бюджет трекер в терминале. @umputun им пользоваться не сможет, т.к. трекер на питоне, но просто оцените как красиво и функционально это все выглядит! https://github.com/EnhancedJax/Bagels

Daily Geek News

11 Dec, 21:15


я не помню, когда точно появилась в errgroup поддержка лимитов (смотри SetLimit и TryGo), но я точно этот момент упустил. Много лет использовал свой собственный враппер до этого, который добавлял туда семафор и все прочее, необходимое для ограничения конкурентности.

Если вы тоже в танке, то теперь это все можно https://medium.com/@yardenlaif/go-sync-or-go-home-errgroup-f91a0ee72d3f

Задание ему лимита гарантирует, что не больше n горутин будут запущены одновременно, когда мы вызываем eg.Go. У этого есть ожидаемый, с одной стороны, но неконцептуальный с другой, эффект, когда вызов этой Go функции может блокироваться. Т.е. понятно почему, но с точки зрения семантики запуска горутин это немного необычно.

На всякий случай, для тех, кто от темы далек - errgroup простой это способ организации выполнения конкурентных задач в Go. По сути, это обертка над каналами, контекстами и горутинами, превращающая эти, относительно низкоуровневые примитивы, в нечто, чем можно пользоваться почти не напрягая извилины мозга.

Daily Geek News

08 Dec, 22:57


Вдруг попалось на глаза. Это прекрасно, я считаю и это один из тех моментов, когда фанаты го могут гордо сказать - “да, мы не зря его любим!”

https://danp.net/posts/synctest-experiment/

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

Тестировать такое непросто и прямого способа не было. Кривой был, например вместо time.Now использовать nowFn() и переопределять ее в тестах. Оно условно работало, но выглядело как грязный хак где нормальный код надо странно модифицировать исключительно для удобства тестов. Подобный хак можно и для Sleep навернуть, хотя тут все уже сложнее.

С этим новым synctest время внутри “пузыря” созданного synctest.Run виртуальное и может вести себя нелинейно. Тут надо смотреть на примеры, будет понятнее.

Daily Geek News

09 Nov, 12:29


Если вам зачем-то надо рисовать диаграммы сервисов, и вы как и я беситесь от графических редакторов - вот простой способ рисовать их удобно и программно. Минус только один - на питоне :)
https://diagrams.mingrammer.com/

Daily Geek News

08 Oct, 17:02


попалась на глаза эта штука https://github.com/getsops/sops

они это называют “редактором для закодированных файлов” который поддерживает YAML, JSON, ENV, INI и BINARY. Насколько я понимаю, по сути это способ хранения encrypted секретов в конфигурационых файлах, чем-то напоминает мне то, как ansible-vault работает.

судя по описанию, штука могучая. Сам я не пробовал, но читал о ней у достойных доверия параноиков.

Daily Geek News

24 Aug, 19:21


в блоге go.dev подробно описали про range functions. Для тех, кто не совсем в теме - это свежее добавление (появилось в 1.23) и по сути позволят сделать свой тип/коллекцию “обходимым” посредством стандартного range.

https://go.dev/blog/range-functions

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

Daily Geek News

20 Aug, 20:12


У моего любимого редактора Zed запилили альтернативу копайлоту через Claude - Zed AI https://zed.dev/blog/zed-ai

Daily Geek News

15 Aug, 12:55


Ежемесячный пост в канал и опять про шрифты: шрифт со встроенной подсветкой синтаксиса.
Правда требуется чтобы был включен OpenFont COLR, но это не так важно особенно если используется в рамках браузера https://blog.glyphdrawing.club/font-with-built-in-syntax-highlighting/

Daily Geek News

28 Jul, 18:42


Cloudflare популярна среди гиков, несмотря на страшные истории, о которых мы рассказывали в подкасте. Вот простой скрипт, который реализует простой DDNS (они это называют NoIP Alternative). То есть, для машины с динамическим IP он обновляет DNS-запись на Cloudflare через его API.

Сделать такой скрипт самому, конечно, несложно, но здесь уже есть готовый вариант. Просто заверните его в контейнер и запустите на своем сервере/syno, и все будет готово. Хотя на syno уже есть свой DDNS, но здесь зато можно использовать любой домен.

https://github.com/devrim/cloudflare-noip

Daily Geek News

08 Jul, 18:02


неожиданно полезная штука - https://plugins.jetbrains.com/plugin/24753-combine-and-copy-files

этот плагин для продуктов JB (IDEA и все прочие), добавляет простую вещь - возмжность выделить несколько файлов прямо в ide и все сразу добавить в clipboard.

На резонный вопрос “а зачем?”, ответ простой - чтоб потом результат можно было вставить в ChatGTP и прочие одним нажатием. Реально, мелочь, но очень полезная однако.

Daily Geek News

06 Jul, 20:05


Я тут нашел прекрасную супер-маленькую штуку - GUI текстовый редактор, который решает только одну задачу, писать коммит-мессиджи. Но выглядит красиво и просто, есть темы, приложение нативное (для мака), рекомендую https://github.com/zorgiepoo/Komet

Daily Geek News

25 Jun, 11:42


Очень удобная консольная утилита, позволяющая использовать разные языковые модели. В этот раз действительно удобно, без сарказма. https://github.com/charmbracelet/mods

Daily Geek News

14 Jun, 16:27


а вот вам гугуловая альтернатива для tmux – https://github.com/shell-pool/shpool

строго говоря, это не совсем альтернатива, но скорее только способ создать сессию и потом к ней подключиться. При этом, весь терминал становится этой сессией. Больше всего это похоже на запуск с nohup с возможностью туда вернуться.

Из преимуществ - штука простая и она не добавляет всех красот TUI, но зато никаких проблем с нативным scrollback или copy-paste.

и да, написано на расте 😉

Daily Geek News

14 Jun, 08:08


Ежемесячная запись в Daily Geek News - очень любопытная идея, использовать языковые модели внутри lsp-сервера для текстовых редакторов. LSP сейчас поддерживает всё, что касается программирования, так что автоматом вы получаете интеграцию во всё что движется. Проект называется LSP-AI https://github.com/SilasMarvin/lsp-ai/

Daily Geek News

13 May, 16:51


мелкая полезность для пользователей raycast https://github.com/marekbrze/categorized-raycast-extensions

тут полный список всех extensions с короткики пояснениями. Есть и секция последних за неделю. Ничего особенного, но удобно

Daily Geek News

27 Apr, 20:58


Настали последние дни: гугл уволил (простите, сократил) всю свою команду разработки Python. Понятное дело, что в гугле очень мало кода на питоне (говорят, что примерно 20% кодовой базы, и эта цифра стабильна, не падает но и не растет). И понятное дело, что для того чтобы пользоваться питоном не надо держать core team разработчиков питона на зарплате. Но сигнальчик такой себе, причем не для питона, а для гугла.

https://social.coop/@Yhg1s/112332127058328855

Daily Geek News

26 Apr, 08:05


Автор громко называет это "the hidden gem of 1.22”, но на самом деле это довольно мелкая полезность. Я, краем глаза, обратил на этот cmp.Or внимание, когда читал “что нового в 1.22”, но прошел мимо. И да, это про Go, если вдруг вы сами еще не догадались.

А вообще, это весьма полезная мелочь. Он приводит 2 основных использования:

- name := cmp.Or(jwt.Username(), "Almanack”) типа orElse для того, чтобы взять default, если первый (первые) параметры zero для этого типа.
- второе менее очевидно, но тоже весьма полезно - для упрощения цепочек сортировки по нескольким значениям.

https://blog.carlana.net/post/2024/golang-cmp-or-uses-and-history/

UPD: важно иметь ввиду, что эта функция “cannot do short-circuit evaluation”

Daily Geek News

23 Apr, 23:35


У IBM появился новый опенсорс продукт - Terraform(c) by IBM(r)
https://www.reuters.com/markets/deals/ibm-nearing-buyout-deal-hashicorp-wsj-reports-2024-04-23/

Daily Geek News

22 Apr, 19:15


Эта фиговина стиля “я не знал что такое бывает, не очень понимаю зачем оно мне, но ощущаю как нечто потенциально полезное”.

https://github.com/1buran/rHttp

Автор называет это “REPL for HTTP”. Я не уверен, насколько оно тянет на repl, но по сути это интерактивный построитель http запросов и визуалайзер ответов. Навигация у этой штуке немного неожиданная, это да. Но что-то в этом есть, хотя я пока не придумал зачем оно может понадобиться. Если у вас есть идеи то поделитесь в коментах.

Daily Geek News

21 Apr, 21:05


Если вы как и я иногда живете на win11 - есть святой человек, который сделал скрипты, удаляющие из образа для установки всё ненужное барахло (вроде GetStarted и Edge). Получается отличный мини-дистрибутив, а все что надо можно установить из стора или winget’ом. https://github.com/ntdevlabs/tiny11builder

Daily Geek News

17 Apr, 19:06


Из серии "хозяйке на заметку": сегодня случайно нашел, что GoLand умеет связывать template с типами приложения. Это не делается само, нужно добавить волшебный комментарий /*gotype blah*/. Не уверен, является ли это чем-то новым, либо всегда было, и я, как последний лох, не знал об этом.

https://www.jetbrains.com/help/go/integration-with-go-templates.html

Daily Geek News

16 Apr, 20:37


Приятная новость - прелестный плагин для IDEA (и прочих продуктов JB) CodeGPT https://plugins.jetbrains.com/plugin/21056-codegpt обновился, и теперь в нем есть возможность автодополнения в стиле Copilot.

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

Надо сказать, что в ситуации, когда есть подсказка от IDEA и дополнение от CodeGPT, оно работает как-то не совсем так, как Copilot, видимо, пока не допилили.

Но вообще, это крутая штука. Теперь можно иметь "Copilot", который, например, работает с Claude, или еще круче - с локально поднятой моделью.

Daily Geek News

13 Apr, 17:45


После того как меня подсадили на Raycast, я хотел себе устроить TLDR-сервис для Safari. То есть, оно берет текст той страницы, что я смотрю, отправляет в GPT API и показывает краткое содержание.

В Raycast нечто подобное есть из коробки, если вы подписаны на платную версию. Но, во-первых, оно только для Chrome (пока), а во-вторых, только для GPT-3.5, если не платите за продвинутый AI им отдельно.

В результате получился такой скрипт https://gist.github.com/umputun/151063e94a55fcf0ff67ae4c75ee871f

Там всё совсем просто, но на практике вышла весьма полезная штуковина. А если повесить её на хоткей, то вообще огонь.

Daily Geek News

02 Apr, 15:51


У нас тут с Умпутуном сообщения от лица канала, но сразу будет понятно кто написал эту новость по трем признакам: Cloudflare* запустили в бету поддержку своих воркеров на python*. Все это за счет компиляции интерпретатора питона в WebAssembly* через Pyodide https://blog.cloudflare.com/python-workers