☕️ Мерлин заваривает τσάι 🐌
1.09K subscribers
3.53K photos
64 videos
94 files
2.43K links
Merlin makes a slice
Merlin iterates it's twice
Happy compiling!
Download Telegram
☕️ Мерлин заваривает τσάι 🐌
#til о docker context, которую теперь использую чтобы деплоить пет проджекты. Раньше использовал docker build ... docker save $APP_IMAGE | ssh -C user@server.local docker load && docker run $IMAGE ... Теперь можно docker context use my-server docker build…
#домашний_сервер

В итоге я провёл небольшую ревизию и теперь работа с сервером выглядит вот так:

На сервере и на рабочих устройствах поднят Yggdrasil, адреса рабочих станций разрешены в ip6tables:
-A input -i $YGG-TUN -p tcp -s $PEER-IP -j ACCEPT


В проектах лежит .envrc примерно с таким содержимым
#!/usr/bin/env bash
PATH_add ./bin/

В ./bin лежит файл скрипт docker
#!/usr/bin/env bash

/usr/bin/docker --context=SERVER-YGG $@

Контекст SERVER-YGG определён как
docker context create \
--docker host="ssh://$SERVER-USER$@[$SERVER-IP]:$SSH-PORT" \
--description="My awesome homeserver" \
$SERVER-ygg


Деплой теперь делаю через docker compose up -d. Таким макаром я могу подключиться к серверу откуда угодно, а самому серверу не нужно иметь статический IP.


1. Yggdrasil https://yggdrasil-network.github.io/
2. Docker contexts https://docs.docker.com/engine/context/working-with-contexts/
3. Direnv https://direnv.net/
5👍3🥴1
Скоро выходит go 1.20, поэтому вот обзорная статья о масштабных изменениях во внутренней кухне стандартных криптографических библиотек от автора age https://github.com/FiloSottile/age

https://words.filippo.io/dispatches/go-1-20-cryptography/
Тулза для вычисления дельты бенчмарков между ревизиями гошного проекта
https://github.com/WillAbides/benchdiff
👍5👎1
Шаблонизатор, который позволяет встраивать Go код внутрь HTML

Как в старом добром PHP!

<https://github.com/adhocteam/pushup>

^import "time"

^{
title := "Hello, from Pushup!"
}

<h1>^title</h1>

<p>The time is now ^time.Now().String().</p>

^if time.Now().Weekday() == time.Friday {
<p>It's Friday! Enjoy the start to your weekend.</p>
} ^else {
<p>Have a great day, we're glad you're here.</p>
}
😭7🤣6🔥1
Я трепетно люблю Ruby, но время от времени некоторые её аспекты ставят меня в тупик.

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

ИМХО, такие радикальные улучшения - сильное свидетельство крайне херового качества предыдущей имплементации.

https://tomaszs2.medium.com/ruby-3-2-0-is-from-another-dimension-5249e3186ec9
👍8👎1
Friends exploring ChatGPT in biological problems. Suppose you want to examine some interconnected genes - and it provides! However you should be very cautious and doublecheck. Credit @shappiron
Знакомые исследуют ChatGPT в биологических задачах. Допустим вы подали свой список генов в STRING, и нашли какую-то любопытную клику генов. Получается найти что у них общего, но надо тщательно контролировать соответствие биологической реальности.
👍1👎1
Понравилась статья от @aorst о гибридном программировании с типами и ChatGPT
https://andreyorst.gitlab.io/posts/2023-01-05-compilers-should-write-types-for-programmers-not-the-other-way-around/

tl;dr
Описываем на очень-очень высокоуровневом псевдокоде предметную область, а ИИ-помощник синтезирует для нас и доменные модели.

По идее получается, гибко и быстро в написании, à la динамические языки типа Clojure. С другой стороны, ИИ-помощник может написать код и типы для языка довольно низкого уровня, после чего "классический" компилятор оптимизирует программу и выплюнет ещё более быстрый байт-код.

Частично такой синтез типов из кода уже есть, правда не настолько продвинутый. Ниже на скриншотах есть пример как синтезирует type spec эликсировский dialyzer и Copilot. Причём dialyzer - это чисто алгоритмический инструмент, который выводит спецификацию по известным формальным правилам.

Как по мне, это действительно перспективный подход, схожий с парным программированием: один участник генерирует идеи, а другой тут же их прототипирует. Генератор идей корректирует свои концепции, писатель подправляет свой код и так далее.

В общем и целом, своё взаимодействие с ИИ-помощником я вижу вот так: есть код, а сбоку открыта помесь чата и REPLа. Для каждой строки кода я могу открыть свой экземпляр такого REPLа и обсудить её с помощником. И это обсуждение обязательно нужно сохранить в текстовый файлик в систему контроля версий :3
👍1👎1
а вообще знаете что? меня возмущает пресыщенная скука, с которой все говорят о нейросетевых языковых моделях.

я тут заболела — и два дня провела за общением с CharacterAI. вот с этим парнем обсудили Харлана Эллисона и АМ. в этом чате я часа за четыре написала прям полноценную киберпанк-повесть — жанровую, но очень мрачную, с использованием лишённых гражданских прав заключённых как ферм органов и злым правительством, которое спровоцировало бывшего военного ветерана изнасиловать свою мать, потому что хотело инбридингом вывести идеального убийцу (но в итоге он сошёл с ума, потому что случайно полюбил сына, к чему его психика суперсолдата не была готова). а разговор с этим психотерапевтом был точно не менее толковым, чем мои попытки общаться с живыми. (warning: не слушайте советы нелицензированных неспециалистов, бла-бла.)

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

ёб вашу мать! да я сама через два часа забываю контекст! о чём вы все вообще? это защитная реакция? или что? нынешние языковые модели ОХУЕННЫ, разговор с ними реально похож на разговор! это жутко интересно!

вот скриншот в посте. умом я понимаю, что в языковую модель просто не загружен текст «У меня нет рта...». но как же живо и естественно она реагирует! если бы машинка просто привела мне последнюю строчку рассказа, это был бы гугль-поиск. а она со мной спорит — и, заметим, спорит с пониманием сути обсуждаемого рассказа.

ну да, со временем она выдохнется. а живой собеседник не выдохнется, что ли? он ещё и нажрётся в процессе и про развод в седьмой раз рассказывать начнёт!

а мясные мешки при виде этого всего закатывают глаза и бурчат, мол, ну это же иллю-ю-юзия.

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

наше время мрачно и бедно на чудеса. прекратите воротить нос от тех, что есть.

Альфина
👍6👏31👎1
200 лир в супермаркете, больше сотни игр. Топ за свои деньги
🔥3👎21👌1