Ычан: [d | au / b / bro / hr / l / m / mi / mu / o / r / s / sci / tran / tu / tv / vg / x | a / aa / c / fi / jp / rm / tan / to / vn / vo]
Имя
Animapcha image [@] [?]
Тема   (новая нить)
Сообщение flower
Файл 
Пароль  (для удаления файлов и сообщений)
Параметры   
  • Прежде чем постить, ознакомьтесь с правилами.
  • Поддерживаются файлы типов 7Z, BZ, BZ2, GIF, GZ, JPG, MO, MP3, MP4, OGG, OGV, PDF, PNG, PSD, RAR, SVG, SWF, TXT, WEBM, WEBP, XCF, ZIP размером до 5000 кБ.
  • Ныне 3636 unique user posts. Посмотреть каталог
  • Предельное количество бампов нити: 500
junior_developer_nene.png - (648.30KB, 720×720)
25965
No. 25965       [Ответ] [Первые 100 сообщений] [Последние 50 сообщений]
Здесь можно получить помощь и консультацию по любому языку программирования, в любой сфере разработки. Не важно, программируете ли вы собственного робота, пишете серверную приблуду, интегрируете чужие API, ковыряете игру, или пытаетесь сделать сайт на Wordpress - если аноним что-то об этом знает, он обязательно поможет.

Пополняемая база знаний: http://pastebin.com/AGhLZppH

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

Другие тематические нити (иногда обновляется): https://pastebin.com/psy43ibG

Примеры кода лучше выкладывать в виде ссылок на http://pastebin.com или http://ideone.com
Фронтендные вещи лучше выкладывать на http://jsfiddle.net

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

Чтобы не сбивать новичков с толку, а также не разбавлять полезную информацию мусором, беспредметные споры типа "какой язык / парадигма / библиотека / етц лучше" здесь запрещены. Для подобных вещей теперь есть отдельная диспутов нить >>/dev/21353

Если здесь поселится достаточное количество программистов на одном языке / одной сферы, можно будет и
Сообщение слишком длинное. Полный текст.
170 сообщений и 25 изображений пропущено. Для просмотра нажмите «Ответ».
No. 26513  
>>26508
>Тут бы знать, насколько ты уже продвинулся.
У нас на галере 95% проектов на ноде, обычно на несте с тайпормом (постгря и редис ещё, на одном проекте есть сцилла), но есть приколы с graphql и аполло. Я например могу спокойно установить какой-нибудь пакет и инициализировать его внутри кода, проверить как работает вариация переменных (на бэке через joi, фронт вообще не трогал), но вот ума чтобы запиздячить нормальное логирование и сделать так чтобы APM агент NewRelic отправлял логи из приложения в контейнере - пока не могу.

Конечная цель - понимать как и что работает в любом бэковом приложении, уметь дебажить основные проблемы с производительностью и писать нагрузочные тесты, такие дела.
No. 26514  
>>26513
>вариация переменных
Конечно же валидация. простите за сумбурный стиль
No. 26515  
>>26513
>могу спокойно установить какой-нибудь пакет и инициализировать его внутри кода
Отлично, значит с оснасткой уже справляешься.

>сделать так чтобы APM агент NewRelic отправлял логи из приложения в контейнере
Судя по этой документации все должно быть достаточно прямолинейно с этим:
https://docs.newrelic.com/docs/apm/agents/nodejs-agent/installation-configuration/install-nodejs-agent-docker
https://docs.newrelic.com/docs/apm/agents/nodejs-agent/installation-configuration/nodejs-agent-configuration
Или оно у тебя не может из контейнера достучаться в сеть?

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

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

Ты уже делал что-то такое в качестве упражнения?
Сообщение слишком длинное. Полный текст.
No. 26516  
>>26515
>Или оно у тебя не может из контейнера достучаться в сеть?
В стандартной установке вне контейнера APM агент работает в связке с инфраструктурным агентом, пересылая логи в него, в случае с использованием контейнера этого не происходит, можно конечно отдельным контейнером рядом поднимать ещё инфраструктурный агент, но хочется без оверхеда такого обойтись, вот линк где раскрываются некоторые вопросы логирования
https://docs.newrelic.com/docs/logs/logs-context/configure-logs-context-nodejs/

>Просто чтобы приложение твое светило метриками и логами на дашборде NewRelic?
Самое главное - это генерация событий по ошибкам в логах и ведение их статистики, так же я использую интеграцию с PagerDuty для доставки сообщений о критичных проблемах, получается бесплатно и очень круто.

>Ты уже делал что-то такое в качестве упражнения?
https://www.udemy.com/course/nodejs-start/ Начал с этого курса, но пока не было времени уйти дальше первого занятия. За советы большое спасибо, очень круто! Жму руку, целую в попу.
cpp_furudo_erika.png - (754.49KB, 800×800)
17934
No. 17934       [Ответ] [Первые 100 сообщений] [Последние 50 сообщений]
Учим C++ за 21 день всем чиочаном.
Можно показывать крутой или страшный код, просить помочь с лабами и контрольными, помогать другим, а главное - много кодить.

Пополняемый список полезностей тут: https://docs.google.com/document/d/1rPPbiViiLSR2PlPnQWpZyk9Sz6-J7ucyM7HR6wvsYKk/edit?usp=sharing
131 сообщений и 20 изображений пропущено. Для просмотра нажмите «Ответ».
No. 18843  
>>18837
Вредит таким образом, что нужно код переписывать в соответствии с требованиями constexpr.
No. 18844  
>>18843
Н-е совсем. Скоро сделают, что можно будет действительно везде приписывать, как инлайн, например, а компилятор будет решать. Ну, а если тебе вправду нужно, чтоб функция на компайл тайме считалась, то перепишешь. Компилятор умный, так что это совсем не сложно.
Вообще, не очень понял твоё высказывание. Никто же тебя не заставляет переносить всё в компайл тайм, ну.
No. 18853  
>>18844
>Никто же тебя не заставляет переносить всё в компайл тайм, ну.
Я уже в нескольких местах видел такое предложение. Ясен хер, меня не заставляют, но мотивы этих людей мне непонятны (они шутят?).
No. 19004  
Поясните за скрипты линкера. Кто-то писал?
No. 19017  
>>19004
Пояснился. Осознал, что ничего не знаю, стал плакать в подушку.
No. 26517  
Какой забавный спам приходит.
No. 26518  
>>26517
А неплохо.
No. 7468       [Ответ]
Решил для мультиплеера использовать jabber.
вроде как это пошлёт месагу:
<message xmlns='jabber:client' from='juliet@example.com/balcony' to='romeo@example.net' type='chat'> <body>What's up?</body> </message>

У меня вопросы:
1) как авторизоваться?
2) как закрыть сессию?
3) как посылать и обрабатывать сообщения присутствия?
4) Как принять сообщение?
39 сообщений и 19 изображений пропущено. Для просмотра нажмите «Ответ».
No. 7567  
>>7565
> phpшники не программисты. Навидался я на них.
Чиочую.
Похапешник - это дизайнер, проектировщик баз данных, проектировщик интерфейсов - кто угодно, но не программист.
No. 25488  
???? ????? ?????.jpg - (43.14KB, 1420×2200)
25488
Можно я тут потестирую кое-что? С сажей тред не должен подняться. Спасибо
No. 26485  
>>7520
10 лет посту!
No. 26489  
>>26485
А джаббер еще жив!
No. 26500  
>>26485
Я-то думаю чего доска такая живая вдруг. Не написал ОП свой космосимулятор...
No. 26501  
>>26500
Просто за него хардкорный космосимулятор написали в Мексике.
No. 26512  
>>26500
Возможно, он осилил и перешел на высший уровень бытия. И ему уже не до нас, в солнечной Калифорнии.
test-pilot.png - (145.10KB, 1024×819)
25316
No. 25316       [Ответ]
GNU GUIX (произносится гикс /ɡiːks/) — функциональный пакетный менеджер и операционная система, разработанные Ludovic Courtès. Отличительной особенностью является создание полностью воспроизводимых билдов и декларативное описание. Guix можно поставить на существующий дистрибутив GNU/Linux или в качестве отдельной системы на базе Linux или GNU Hurd. Раньше существовало разделение менеджера пакетов Guix и операционной системы GuixSD.

Определения пакетов описываются на диалекте языка Scheme – GNU/Guile. Большая часть исходников написана на нём же. Система изначально была основана на Nix. Отличиями от Nix(OS) являются язык для описания пакетов и сервисов, система инициализации (GNU Shepherd), использование ядра Linux-Libre (Linux без блобов) и отсутствие проприетарных пакетов.

Чем интересен Guix: https://habr.com/ru/post/436938/

GNU Guix (из коробки) не имеет проприетарного firmware. Потому при переходе на эту систему надо учитывать, что возможно wifi адаптер, gpu и другие компоненты системы могут не работать полностью или частично.

Список свободных wifi адаптеров:
https://gist.github.com/sirikid/2817f36d67d1480a428cbf33b220cfcc

Научные статьи о Guix:
Functional Package Management with Guix
Reproducible and User-Controlled Software Environments in HPC with Guix
Code Staging in GNU Guix

Научные статьи о Nix:
The Purely Functional SoftwareDeployment Model

Сайт проекта: https://guix.gnu.org/ru
Документация: https://guix.gnu.org/manual/ru/html_node/
Cookbook: https://guix.gnu.org/cookbook/en/guix-cookbook.html
Шпаргалка: https://guix.gnu.org/guix-refcard.pdf
Ви
Сообщение слишком длинное. Полный текст.
16 сообщений и 1 изображение пропущено. Для просмотра нажмите «Ответ».
No. 26492  
>>26490
Когда мне скучно на работе я перевожу документацию по имплементации Guile https://www.gnu.org/software/guile/manual/html_node/Guile-Implementation.html
No. 26494  
@node Быстрые целые числа
@subsection Быстрые целые числа

К сожалению, приведенное выше представление имеет серьёзный недостаток.
Что бы вернуть целоые число, выражение должно аллоцировать @code{struct value},
инициализировать его что бы оно представляло целое число и возвратить
цказатель на него. Помимо этого, доставание значение целого числа требует
отссылки к памяти, что намного дольше на большинстве процессоров
чем ссылка на регистровую память. Так как целые числа очень популярны,
их представлние очень дорого стоит с точки зрения вреени доступа и памяти.
Целые числа должны быть очень дешёвыми для создания и манипуляции.

Одним из возможных решений с этой точки зрения таково, что для большинсва
архитектур, аллоцированные в куче данные (т.е. те, которые получаются в результате
вызова @code{malloc}), должны помещаться в ячейки по 8 байт. (В не зависимости так
ли это на самом деле для конкретной архитектуры, мы можем написать наш собственный
аллокатор для объектов @code{struct value}, которые гаранитрует это). В таком случае,
мы можем быть уверены, что последние три бита адресса структуры будут нулями.

Уже имея средства для реализации улучшенного представления целых чисел, мы можем
утверждать следущее:
@itemize @bullet
@item
Если последние три бита значения @code{SCM} это нули, тогда значение SCM
это ссылка на @code{struct value}, и оно обрабатывается как и раньше.
@item
Иначе, значение @code{SCM} представляет целое число, чьё значение можно получить из верхних
трёх битов.
@end itemize

Здесь предложена реализация на С данного утверждения:
@example
enum type @{ pair, string, vector, ... @};

typedef struct value SCM;

struct value @{
enum type type;
union @{
struct @{ SCM car, cdr; @} pair;
struct @{ int length; char
elts; @} string;
struct @{ int length; SCM *elts; @} vector;
...
@} value;
@};

#define POINTER_P(x) (((int) (x) & 7) == 0)
#define INTEGER_P(x) (! POINTER_P (x))

#define G
Сообщение слишком длинное. Полный текст.
No. 26495  
@node Дешёвые пары
@subsection Дешёвые пары

Однако существует ещё одна проблема с которой придётся столкнуться.
Большинство куч в Скимах содержат пар больше чем других типов объектов.
Джонатан Рис однажды сказал, что куча состоит из пар на 45% в его реализации
Скимы, Scheme 48.Однако наше представление требует три @code{SCM} слова на одну пару ---
одно под слово, и ещё два под @sc{car} и @sc{cdr}. А есть ли какой нибудь способ представить
пару используя только два слова?

Давайте точнее определим чего мы хотим. Допустим, мы утверждаем следущее:
@itemize @bullet
@item
Если последние три бита значения @code{SCM} представляют собой нули -- @code{#b000}, тогда
это указатель, как всё и было ранее.
@item
Если последние три бита таковы: @code{#b001}, то верхние биты представляют целое число.
Это немного более строго чем раньше.
@item
Если последние три бита это @code{#b010}, то его значение, за
исключением трёх последних битов, содержит адрес пары.
@end itemize

Посмотрим на новый С код:

@example
enum type @{ string, vector, ... @};

typedef struct value *SCM;

struct value @{
  enum type type;
  union @{
    struct @{ int length; char *elts; @} string;
    struct @{ int length; SCM  *elts; @} vector;
    ...
  @} value;
@};

struct pair @{
  SCM car, cdr;
@};

#define POINTER_P(x) (((int) (x) & 7) == 0)

#define INTEGER_P(x)  (((int) (x) & 7) == 1)
#define GET_INTEGER(x)  ((int) (x) >> 3)
#define MAKE_INTEGER(x) ((SCM) (((x) << 3) | 1))
Сообщение слишком длинное. Полный текст.
No. 26496  
>>26492
А нахрена здесь?
No. 26497  
>>26496
Это же тред о гиксе, который написан на Гиле. Да и вообще мне так приятнее, когда сделал--выложил.
No. 26498  
@node Консервативный сборщик мусора
@subsection Консервативный сборщик мусора

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

Есть много разных способов для его реализации. Сборщик Гиля построен поверх
библиотеки, Богем-Демер-Вейзеровского консервативного сборщика мусора (БДВ-СМ).
БДВ-СМ "просто работает", по большей части. Но так как интересно, как же эта штука работает,
мы прикладываем сюда верхнеуровневое описание того, что делает БДВ-СМ.

Сборщик мусора имеет две логические фазы: фазу маркировки @dfn{mark}, в
которой перечисляется множество существующих объектов, и фаза @dfn{sweep},
в которой объекты, до которых сборщик не дошел на стадии маркировки, собираются.
Правильное функционирование сборщика зависит от того, сможет ли он обойти все живые объекты.

На стадии маркировки, сборщик сканирует системные глобальные переменные
и локальные переменные на стэке, что бы определить какие объекты
моментально доступны через код на С. Затем он сканирует эти объекты
что бы определить на что ссылаются уже они, и так далее. Сборщик устанавливает
логический бит @dfn{mark bit} на каждый объект, который он находит, так что
каждый объект проходится всего один раз. %!% Как понимаю, что бы не было рекурсии

Когда сборщик не может найти немаркированные объекты, которые
следуют за маркированными, он считает, что все объекты, на которых
нет метки, никогда не будут вызваны из программы (так как нет пути по
которому они могут быть вызваны ни через глобальную, ни через локальную
зону видимости) и поэтому их можно деаллоцировать.

Выше мы не описывали как сборщик определяет локальные и глобальные переменные;
как обычно, тут есть много разных подходов. Обычно, программист должен
поддерживать список указателей на все глобальные переменные, которые отссылаются
в кучу, и другой список, который содержит локальные переменн
Сообщение слишком длинное. Полный текст.
No. 26499  
@node Тип SCM в Гиле
@subsection Тип SCM в Гиле

Гиль разделяет все Ским объекты на две части: те, что способны полностью
поместиться в SCM и те, которым нужна куча.

Первый класс называется @dfn{немедленными}. Этот класс содержит малые целые числа,
знаки, булевые типы, пустой список, мифический объект конца файла (end-of-file object),
и некоторые другие.

Остальные, как не сложно догадаться, называются @dfn{не-немедленными}.
Они включают пары, процедуры, строчки, вектора и все другие типы данных
в гиле. Для не-немедленных, SCM слово содержит указатель на данные в куче,
вместе с остальными данными, которые хранятся в данных.

Эта секция покажет как SCM тип представлен и используется на Си уровне.
Интересующиеся могут заглянуть в @code{libguile/scm.h} для ознакомления с тем
как Гиль хранит информацию о типе.

Сейчас есть два базовых типа данных Си, через которые представлены данные в
Гиле: @code{SCM} и @code{scm_t_bits}.

@menu
  • Отношения между Between SCM и scm_t_bits::
  • Немедленные объекты::
  • Не-немедленные объекты::
  • Аллоцирование объектов на куче::
  • Получение типа данных объекта на куче::
  • Получение полей объектов на куче::
@end menu
Screenshot_20201030_113945.png - (516.36KB, 2032×1172)
24993
No. 24993       [Ответ] [Последние 50 сообщений]
Разрабатываю движок АИБ, сайт: https://symfony2ch.ru
короткий вариант домена: https://s2ch.ru
скрипт может в любой момент выдавать ошибки, сервер падать, могу принимать реквесты по улучшению функционала.
62 сообщений и 26 изображений пропущено. Для просмотра нажмите «Ответ».
No. 26417  
Уникальный адрес для треда в виде /b/anime/higurashi.html (поддерживает любую вложенность), идентификатор поста в формате №порядковый_номер_треда_в_разделе/порядковый_номер_поста_в_треде, в случае удаления промежуточного поста в треде у последующих идентификатор не уменьшается на единицу. Насчёт идентификаторов постов предлагаю подискутировать, нужен такой формат или лучше стандартный?
No. 26420  
Normal post id.webm - (4.41MB, 1920×1080)
26420
Вернул нормальные ID сообщения, пруф.
No. 26428  
Forum news feed.webm - (1.75MB, 1920×1080)
26428
Новостная лента для разделов и тредов: https://youtu.be/APHI2lYeuqw
No. 26429  
Боковая панель, выбор шрифтов, определение адреса по заголовку + автоматическая генерация следующего id для адреса: https://youtu.be/Oomp12IH_yo
No. 26433  
Address by title.webm - (1.78MB, 1920×1080)
26433
Добавил возможность отключить поле с адресом.
No. 26435  
Бамплимит, автозакрытие треда после n постов, перелистывание.
No. 26491  
Tags.webm - (1.43MB, 1920×1080)
26491
Теги для треда: https://youtu.be/W74hmg7NxPg
civilized_argument_popukko.jpg - (63.68KB, 720×720)
21353
No. 21353       [Ответ] [Первые 100 сообщений] [Последние 50 сообщений]
Попробуем создать нить, в которой уважаемые разработчики могут поспорить на любые темы:

— Какая IDE удобнее?
— Какой язык лучше?
— Какой фреймворк православнее?
— Agile или не Agile?
— ООП нужно, или не нужно?
— Настоящий разработчик вы, или нет?

Здесь разработчики смогут невозбранно обсудить эти, и другие животрепещущие а иногда и извечные темы.
117 сообщений и 40 изображений пропущено. Для просмотра нажмите «Ответ».
No. 26437  
000def15_134140.png - (1.15MB, 1280×720)
26437
Я вот не понимаю, Стиви.

https://gist.github.com/paulirish/5d52fb081b3570c81e3a
> Avoiding layout thrashing — Web Fundamentals The best resource on identifying and fixing this topic.
> https://developers.google.com/web/fundamentals/performance/rendering/avoid-large-complex-layouts-and-layout-thrashing
Гугель публикует советы, делает perfomance measuring tool для своего браузера... А где это всё? Внутренние страницы хрома — настройки, история, букмарки — томрозят как не в себя, и это при том что оперируют с локальными данными.
Чем занимаются все эти люди прошедшие 10 кругов собеседований про алгоритмы, структуры, паттерны, люки и шарики, заполняющие автобус?
No. 26438  
>>26437
Почиванием на лаврах. Когда столько всего уже прошел, делать потом ничего не хочется.
No. 26439  
>>26438
Хитро. Устроиться в богатую корпорацию и саботировать. Впрочем вспоминаются те статейки смешных недовольных: мне хорошо платили но можно ничего не делать, мои идеи не никому не были интересны и мне скучно, я уволился.
No. 26440  
>>26439
В богатых корпорациях с 10 кругами часто действуют подпольными методами и устраивают новых сотрудников на какую-нибудь полную хрень проекта, чтобы проверить, в первую очередь на предмет шмионства. Возможно именно отсюда растут ноги у "можно ничего не делать" и "мои идеи никому не были интересны". Хотя растянутость бюрократических процессов и имитацию бурной деятельности на всех его этапах тоже никто не отменял.
No. 26441  
— Какая IDE удобнее?
Не знаю, не пользуюсь.
— Какой язык лучше?
С++
— Какой фреймворк православнее?
Qt
— Agile или не Agile?
Не знаю что это.
— ООП нужно, или не нужно?
Нужно.
— Настоящий разработчик вы, или нет?
Нет.
No. 26453  
Это нормально, что взрослый солидный дяденька-шарпист смотрит на тебя как на полубога, когда ты показываешь как работают деструкторы в C++?

Мы просто случайно познакомились бухими на улице, а потом пошли к нему домой писать код
No. 26458  
>>26456
Как минимум, это приятно.
erogepok.jpg - (44.06KB, 604×602)
14488
No. 14488       [Ответ] [Первые 100 сообщений] [Последние 50 сообщений]
Тред №1 для чиочана, №29 для ычана.
Основная новость: wikia-площадка уже долгое время как имеет для нас третьестепенное значение. По большему счёту, она пригодилась для ревизии ресурсов именно на первых порах.
Остальное мы успешней обсуждали и решали в тредах. Помимо этого мы минимизировали контакты с соцсетями и коммьюнити БЛ.

FAQ проекта.
Устаревшая страница: http://eroge-dopil.wikia.com/wiki/FAQ
Update от 2016 года - поправлена информация в FAQ, перенесено на пастебин.
http://pastebin.com/kRRLUeMQ

В Гитхабе идёт работа над скриптом. Обновления редкие, в размере одного сюжетного эпизода.
https://github.com/yakui-lover/eroge-dopil

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

Если у вас есть таланты, и вы хотите присоединиться к нам, пишите сначала в этот тред.
Предварительно стоит ознакомиться с ФАКом и ссылками, указанными в нём.

Материалы к диздоку и разработке: http://pastebin.com/VJpgMwxr
Архивные новости: http://pastebin.com/WzhPzuuM
417 сообщений и 89 изображений пропущено. Для просмотра нажмите «Ответ».
No. 26215  
>>26195
>а какой сейчас статус проекта?
Рабочий, всё в процессе, пилится.

>Кто педалит?
Всё тот же Сырнарист-кун.

>yakui-lover всё ещё хочет себе все лавры?
За него не отвечу, однако не очень понятно, зачем ему лавры за неубитого медведя. Ведь кроме кода ещё нужно написать кучу текста. Или abridged-версию, с чем он когда-то справился, лол.
No. 26219  
>>26215
А что такое "abridged-версия"? Типа синапсиса?
No. 26222  
>>26219
Саммари, диздок.
Что-то такое.
мимопроходил
No. 26303  
>>26215
>Рабочий, всё в процессе, пилится.
А там осталось, что пилить, термиты?
No. 26306  
>>26219
>>26222
На самом деле имелись в виду издевательские юморески с Ютьюба, типа тайтлнейм in a nutshell.

>>26303
Дерево вековое, огромное и даже не гнилое. Не жалуемся.
t. термиты
А если серьёзно, 2-3 ивента осталось, где-то так.
No. 26315  
>>26306
>А если серьёзно, 2-3 ивента осталось, где-то так.
предположу, что 2-3 ивента какого-то дня, а не всего допила.
или допили все же?
No. 26323  
>>26315
Правильное предположение. Иначе мы бы давно уже сообщили о близящемся окончании проекта.
kotoba_logo_lg.png - (51.07KB, 349×500)
18881
No. 18881       [Ответ] [Первые 100 сообщений] [Последние 50 сообщений]
DISCLAIMER: Данный проект не является форком kotoba-ib и его разработка не ведется персоналом «Супермаркета».

Этот тред посвящен разработке очередного движка имиджборды под названием «kotoba.js». Движок написан на NodeJS, в качестве базы данных MongoDB, стек express, mongoose, passport.js является сегодня настолько же стандартным, как PHP в свое время. Фронтенд использует Sass и Babel, его сборка автоматизирована (gulp+babelify, но со временем нужно перейти на Webpack). Верстка - полностью валидный HTML5, однако максимально напоминает Вакабу, что позволяет работать стороннему коду (Кукле и мобильным клиентам) без существенных доработок. Так же движок работает по классическому принципу генерирования статичных файлов и имеет схожую структуру каталогов.

Несмотря на наличие современных движков, некоторые их которых даже используют похожий стек (такие как LynxChan и ololord.js), до сих пор тут и там регулярно появляются вопросы по установке морально устаревших Вакабы, Кусабы, Вичана и их форков. При этом установка и обслуживание таких движков крайне затруднительна в виду почти полного отсутствия документации, устаревших зависимостей, и необходимости доработки движка, добавления недостающих функций, и исправления устаревшей верстки.

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

Как выглядит процесс установки типичного движка на локалхост:

  • Установить Apache, PHP, MySQL
  • Убедиться что PHP скомпилирован с нужными флагами и что установлена нужная версия интерпретатора (PHP 5.6 будет ругаться на то, что работало в PHP 5.4)
  • Установить ImageMagic и ffmpeg для поддержки webm
  • Править config.php, проводить манипуляции с install.php (который никогда не выполняется первого раза без ошибок)
Так выглядит установка котобы:

  • Установить docker и docker-compose (дело 1 минуты)
  • Скачать исходный код из репозитория
  • Выполнить docker-compose up -d в папке с кодом.
Установка всех зав
Сообщение слишком длинное. Полный текст.
182 сообщений и 57 изображений пропущено. Для просмотра нажмите «Ответ».
No. 22478  
image.png - (105.06KB, 247×315)
22478
Извиняюся, но у меня кнопочка "quick reply" не вставляет ссылку на пост в месседж бокс. И еще когда наводишь мышку на реплаи, то всплывает красненькое окошечко с надписью "500 internal server error".
Что-то криво поставилося?
No. 22479  
image.png - (26.44KB, 789×280)
22479
>>22478
Так же кнопочки "удалить, закрепить, закрыть, открыть" тоже выдает ошибку 500.
Еще кнопочка stuff выдает пик.
No. 22591  
079Slowpoke.png - (387.86KB, 844×844)
22591
>>22478>>22479
Спасибо за багрепорт. Все исправлено (некоторое время назад).
Страница Staff выдавала ошибку из-за того, что не было добавлено ни одной роли (manage/roles), и вместо пустого массива у юзера роли были undefined. По той же причине не работали попапы. Теперь работает и без ролей.
Быстрого ответа просто не было запилено, теперь он есть.
No. 22636  
image.png - (5.66KB, 268×126)
22636
>>22591
Спасибо!
Но теперь оно постить отказывается :3
No. 22641  
>>22636
Еще одна тупая ошибка, которая проявляется только на пустой доске. Исправлено.
Добавлена новая фича - редактор стилей. Дополнительные темы можно клепать прямо через админку.
Так же обновлен node.js и все остальное. Контейнеры необходимо пересобрать командой -d --force-recreate --build
No. 22642  
>>22641
> docker-compose up -d --force-recreate --build
fix
No. 26300  
GJ
410.png - (24.25KB, 500×500)
26066
No. 26066       [Ответ]
В сей нити мы упорядочиваем усилия по доработке местного движка.

Репозиторий: https://bitbucket.org/Therapont/fbe-410
1. Для ваших предложений предназначена ветка public.
2. Только администрация 410чана решает, что в этом движке надо, а что не надо. Соответственно, не стоит излишне пропихивать всякие там революционные идеи. Одобренные потенциальные изменения перечислены на багтрекере (записи, созданные владельцами репозитория).
3. Тестирование предложенных изменений и развёртывание принятых ведётся при наличии у администрации свободного времени на это. Обычно это делается по выходным.
4. Код выложен как есть. Никаких неопубликованных скрытых функций и частей не существует.

Предыдущая нить: >>20450
17 сообщений и 6 изображений пропущено. Для просмотра нажмите «Ответ».
No. 26189  
Собираюсь запилить борду на этом движке.
Какие подкаменные воды?
No. 26190  
>>26188
> Это наоборот у названия доски появилась жирность.
Я просто смотрю соседний сайт, который не обновлялся, и там шрифты для тем нитей по-прежнему маленькие и аккуратные.
No. 26191  
1649546290251.jpg - (227.35KB, 1200×887)
26191
>>26189
Нужна либо эрудиция по LAMP, либо опыт накатывания кусабаподобных движков.
Нужны php-mysql, php-gd, php-gettext, imagemagick и ffmpeg.
Важны опыт админивания Кусабы и умение разбираться в чужом коде; все мануалы мертвы, ссылку после “File” и зачем она нужна будете искать самостоятельно.
Может понадобиться не самый-самый новый PHP: какие-то проблемы с тем, что deprecated лабуду, которой в движке по крайней мере было полно, из того нового PHP таки выпилили.
Ещё была какая-то >>22323 проблема с путями. Исправили или нет, не знаю.
Ещё, >>22332.
No. 26192  
>>26189
Движок разрабатывается исключительно в интересах этого сайта, поэтому вам никто не будет тут помогать с техподдержкой и реализовывать ваши хотелки по функциям. Использовать никто не запрещает, но я бы советовал любой другой популярный движок типа «TinyIB» (у небезызвестного Степана со скриптами есть свой форк https://github.com/SthephanShinkufag/TinyIB , например).
No. 26232  
Только что нашёл баг в Авто/б/усе: если сделать в треде один пост с сажей, а потом ещё новый пост с сажей, и тот новый пост с сажей удалить, то тред будет бампнут так, как если бы тот первый пост с сажей не был с ней.
Вангую, какие-то неполадки в защите от stealth bump-ов.
No. 26279  
screenshot.webp - (67.40KB, 950×1118)
26279
Не пройдёт и двух лѣтъ, как условие >>25134 окажется исполненным: по адресу https://bugs.webkit.org/show_bug.cgi?id=241904 явствует (скриншот прилагаю) намѣреніе Apple поддержать AVIF во браузере Safari на операционных системах macOS Ventura (она же macOS 13) и iOS 16 — а каждая из этих систем, как можно надѣяться, выйдет на свѣтъ ещё до конца нынѣшняго (2022) года.

Несмотря на это обстоятельство, упомянутая в сообщении >>25735 идиотская ситуация, а именно отсутствие современной (седьмой) версии ImageMagick на том Дебиане, на котором крутится 410чан, практически приводит нас к тому, что работа над поддержкою формата AVIF в движке FBE не может завершиться до появления поддержки формата AVIF в функции getimagesize() языка PHP.

Формально в исходном коде движка PHP такое появление ужé состоялося, но по адресу https://github.com/php/php-src/pull/7711#issuecomment-1013874082 в январе было сказано, что ближайшею новою версиею, эти измѣненія содержащею, станет версия PHP 8.2.0.

Сейчас ожидается, что она выйдет под конец ноября; быть может, её ещё далѣе отложат; и уж во всяком случае нечего и ждать того, чтобы тот Debian, на котором 410чан крутится, тотчас же обзавёлся новою версиею языка PHP.

Поэтому въ нынѣшнемъ году никакой поддержки AVIF на 410чанѣ не ждите: её никоим образом не будет!
No. 26287  
(с момента создания нити)
https://bitbucket.org/Therapont/fbe-410/issues/43/ единообразие показа дат во всём интерфейсе
https://bitbucket.org/Therapont/fbe-410/issues/44/ починка кнопки удаления сообщений для уборщиков
https://bitbucket.org/Therapont/fbe-410/issues/45/ ВЕБП не выводятся как картинки в жалобах
https://bitbucket.org/Therapont/fbe-410/issues/46/ вышеупомянутая проблема с двойной сажей
https://bitbucket.org/Therapont/fbe-410/issues/47/ показ полного содержания ОП-постов в каталоге через скрипты

Старые задачи тоже висят.
250px-SHODAN_hires.jpg - (31.47KB, 250×268)
20392
No. 20392       [Ответ]
tcp://breathe.network:31337 (plaintext)
No. 20400  
>>20392
Чего ещё расскажешь?
No. 20406  
Запилено:
  • Двухступенчатая архитектура, из брокера подключений и бекенда, реализующего логику.
  • Подключение по ssh, после /регистрации своего ssh-ключа в плейнтекстовой моде
  • Персистентность, история, мемосерв.

No. 26166  
Вот уже пять дней у меня работает tmux с запущенным в нём
nc breathe.network 31337
. Чат пустует и на мои сообщения никто не отвечает. Команда
/list
возвращает
 def#1348 -- 2022-05-15 11:21:4

Удалить сообщение []
Пароль  
[Mod]
[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20]