Обновить
17
Alexandr Ivanov@AlexSky

Системный программист

0,1
Рейтинг
6
Подписчики
Отправить сообщение

Что-то хрень какая-то. Дофига жилья до 5000 находится в СФ.

Вот, например, 200 квадратов за 3600 в месяц - https://www.apartments.com/28-twin-peaks-blvd-san-francisco-ca-unit-a/26jz0s9/

То же самое:

$ g++ -std=c++20 a.cpp && ./a.out
18446744073709551603

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

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

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

В итоге std::string_view подумал, что от него требуют: «Возьми строку "a" и отмерь от её начала кусок длиной в 140 триллионов символов».

Но std::string_view — штука не глупая. Внутри она хранит исходную длину строки a (длину пути сенсоров).

Вот тут совсем не понял. std::string_view просто сохранит указатель и длину строки.


std::string_view s = {"abc", 666666666};
printf("%lu\n", s.size());

output: 666666666

А ведь, кстати, да. Сделал мемчик с помощью ИИ, и тебе ко всяким "оскорблениям" и "фейкам" добавят отягчающее.

Ну вот, а выше про какую-то квалификацию сварщиков на уровне синьоров затирали. Тут не выше джуна варил.

Довести до абсурда можно все, что угодно.

Чувак постоянно велосипедит и думает, что все вокруг делают то же самое.

За 20+ лет работы нигде такого не видел, всегда начинают с поиска подходящей либы и делают свой велосипед, только если ничего подходящего не нашлось.

На C++, например. Дело только не в "на чем программировать", а "что разрабатывать". У меня, например, на рабочем ноуте крутятся тестовые ВМки с тяжелыми серверами облачных хранилищ. Иногда и 64 Гб бывает маловато.

Кстати, можно юзать подписку Клода:
result = subprocess.run(
["claude", "-p", question,
"--model", MODEL,
"--append-system-prompt", SYSTEM],
capture_output=True, text=True, )

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

Мне кажется, все объясняется гораздо проще: сначала ты играешь с компьютером, потом тебе надоедает.

Да, я просто ps -A сделал, в конце видно два процесса.

Очень просто же.

#include <unistd.h>
#include <stdlib.h>

int main() {
    pid_t pid = fork();

    if (pid == 0)
        _exit(0);
    else
        sleep(300);

    return 0;
}

Запускаем, смотрим дочерний процесс:

$ cat /proc/1313520/status | grep State
State:  Z (zombie)

Не понимаю хейта ИИшек.

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

При этом остается немало пространства покодить самому - и это наиболее интересные части проекта.

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

Пффф... У нас таких в школе половина была. Из них половина даже не пытались улыбку натягивать - вполне открыто ненавидели детей.

Первые две инициативы, набравшие 100 000 голосов, даже до думы не дошли - были отклонены "экспертной группой".

Зато была принята инициатива, набравшая 2 голоса.

Ну-ну.

Вот я заказчик. Мне, допустим, нужен сервис выдающий пользователям котиков.
Пишу исполнителю: сделай мне сервис, выдающий пользователям котиков по запросу.
Через некоторое время он мне приносит сервис, выдающий на 24124 порту при подключении слово "cat" в ответе.
Сделал? Сделал. Соответствует запросу? Соответствует.

А можно написать ИИ "Напиши design document для сервиса, выдающего пользователям котиков по запросу." и получить:

Design Document: Cat Delivery Service (CDS)

1. Обзор

Cat Delivery Service (CDS) — это API-сервис, который возвращает пользователю случайного или отфильтрованного котика (изображение + метаданные) по запросу.

Цель: обеспечить быстрый, масштабируемый и надёжный доступ к “cat content” для приложений, сайтов и ботов.

2. Функциональные требования

Сервис должен:

  • Возвращать случайного котика

  • Поддерживать фильтрацию:

    • порода (breed)

    • настроение (cute, sleepy, angry и т.д.)

    • возраст (kitten / adult)

  • Поддерживать пагинацию (листинг котиков)

  • Позволять загружать новых котиков (admin/API)

  • Поддерживать rate limiting

Полная версия

Дальше уже можно пройти по всему документу и поправить, что нужно. Или попросить ИИ переписать какие-то части.

То же самое с другой стороны. Пришел такой техдок, скормил ИИ, попросил кратко описать, и видишь:

Нужно спроектировать высоконагруженный API-сервис Cat Delivery Service, который по запросу отдаёт изображения котиков с метаданными — случайных или отфильтрованных по породе, возрасту и тегам, а также поддерживает пагинацию и загрузку новых данных через админ-API.

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

И что в этом плохого?

Напомнило статьи из серии Макаронный монст Илона Маска. Там тоже очень "убедительно" доказывалось, что Фэлкон-9 сплошной обман и никак может работать.

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

1
23 ...

Информация

В рейтинге
3 618-й
Откуда
Рязань, Рязанская обл., Россия
Зарегистрирован
Активность