Email or username:

Password:

Forgot your password?
6 posts total
Saemon Zixel

Создавал новый образ в VisualWorks и опять всплыла сложность с отображением кириллицы. Пришлось напрягаться вспоминать как я N лет назад создавал образ и успешно настраивал отображение русских букв)

Вспомнил всё-таки. Там надо открыть GUI Painter и в нём в меню есть настройки Named Fonts. Вот там надо указать вместо Helvetica свои гарнитуры. Я обычно указываю PT Sans Mono. После этого, в главном окне в настройках уже сменить named font на какой-нибудь другой (например, medium на small или large), чтоб образ переключился на выбранную гарнитуру.

А ещё вспомнил как 7.4 не поддерживала UTF-8 и приходилось настраивать локаль koi8-r и запускать под ней образ, чтоб русский успешно работал. Но это было очень давно конечно)

#smalltalk #cincom #visualworks #fonts #cyrillic

Создавал новый образ в VisualWorks и опять всплыла сложность с отображением кириллицы. Пришлось напрягаться вспоминать как я N лет назад создавал образ и успешно настраивал отображение русских букв)

Вспомнил всё-таки. Там надо открыть GUI Painter и в нём в меню есть настройки Named Fonts. Вот там надо указать вместо Helvetica свои гарнитуры. Я обычно указываю PT Sans Mono. После этого, в главном окне в настройках уже сменить named font на какой-нибудь другой (например, medium на small или large),...

Saemon Zixel

Smalltalk пока что для боевого применения плохо годится.

Squeak/Pharo нестабильны и медлительны, VisualWorks Smalltalk стабилен и быстр, но стоит денег. А Cincom не работает с Россией в свете текущих событий. Есть ещё GNU Smalltalk, но коммерческая разработка вроде как запрещена на нём. Есть американская VisualAge Smalltalk, но она платная и возможно сильно устаревшая. Есть Smalltalk/X - вроде как немецкая разработка, тоже платная и, при этом, пощупать среду разработки бесплатно не дают. Есть Smalltalk MT - но он для разработки игр и под винду.

Может быть, Squeak/Pharo на GraalVM будут быстры и стабильны. Но я не знаю, не щупал.

#dev #lang #smalltalk #squeak #pharo #visualworks #cincom #gnusmalltalk

Smalltalk пока что для боевого применения плохо годится.

Squeak/Pharo нестабильны и медлительны, VisualWorks Smalltalk стабилен и быстр, но стоит денег. А Cincom не работает с Россией в свете текущих событий. Есть ещё GNU Smalltalk, но коммерческая разработка вроде как запрещена на нём. Есть американская VisualAge Smalltalk, но она платная и возможно сильно устаревшая. Есть Smalltalk/X - вроде как немецкая разработка, тоже платная и, при этом, пощупать среду разработки бесплатно не дают. Есть Smalltalk...

Saemon Zixel

Пётр Бормор "Игры демиургов" - хорошая книга. Философская. С юмором. Книга в которой есть и очень рациональная философия и хороший юмор)

--- Отрывок из книги ---

- Алло! Это служба технической поддержки?
- Да.
- Говорит демиург Шамбамбукли. У меня проблемы.
- У всех проблемы. Расскажите подробно.
- Я купил у вас книгу. "Creation, Professional Edition". Что-то у меня по ней не получается...
- Что именно не получается?
- Да ничего! С самого первого шага.
- Что вы делали?
- Все как написано. Шаг первый, "да будет свет". Раньше это всегда срабатывало, а теперь...
- Чем вы руководствовались раньше?
- "Creation, Second Edition".
- Ну, рассказывайте дальше. "Да будет свет" - и что?
- Ничего, в том-то и дело. Раньше зажигался свет. А теперь мне в ответ Голос спрашивает: "укажите основные параметры"
- Это значит, что вы должны определить спектр и интенсивность излучения.
- Я догадался. Все определил, а получилась какая-то пестрая муть!
- Какое у вас расширение Вселенной?
- 600-800 стандартных единиц.
- А наше руководство оптимизировано под 1024! Укажите в своих настройках.
- Ага, понял. Минутку...
(слышна возня, голос: "Да будет свет, б,Ж4,уа 1024, да, да, нет, ОК")
- Ага, свет есть. Теперь другой вопрос.
- Спрашивайте.
- У меня тут спрашивают подтверждения, для перехода на следующий этап. Что говорить?
- Скажите, что это хорошо.
- Это хорошо. ОК.
- Получилось?
- Да. Теперь нужно разделять воду?
-Это произойдет автоматически. Расслабьтесь, откиньтесь на спинку кресла...
- Опять требуют подтверждения. Это хорошо?
- Это хорошо.
- Это хорошо! ОК. Ага, третий этап. С травой и деревьями.
- Есть вопросы?
- Да. Меня просят отметить все виды растений, которые я хочу видеть в своем мире.
- Ну, а в чем проблема?
- Я не знаю, не нарушится ли природный баланс, если я вычеркну крапиву и ползучую колючку?
- Природный баланс не нарушится, по умолчанию их функции будет выполнять финиковая пальма.
- То есть, она начнет колоться?
- Да.
- Тогда я лучше ничего не буду менять... Это хорошо. ОК.
- Еще вопросы есть?
- Да. Следующий этап. Я тут произнес "да воскишит земля гадами!", а мне Голос: "вы уверены?"
- А вы уверены?
- Ммм... нет.
- Тогда пропустите этот этап.
- Это хорошо. ОК.
- Еще что-то?
- Пока нет, спасибо.
- Не забудьте, что после конечного этапа следует сказать "очень хорошо".
- Не просто хорошо, а очень?
- Да. Это сделано во избежание случайного срабатывания.
- Спасибо.
(звучит музыка сфер, приятный женский голос просит подождать соединения)
- Алло! Служба тех. поддержки? Это опять я. Демиург Шамбамбукли.
- Что-то случилось?
- Да, с людьми что-то странное. Они какие-то идиоты и совсем меня не слушаются!
- Вы их сотворили?
- Да.
- По образу и подобию своему?
- Ну... да.
- Тогда ничего удивительного...(короткая пауза, наполненная напряженным сопением. Щелчок. Гудки.)

----------------

Вобщем, рекомендую))

#чтиво #книги #философия #юмор #федичитальня

Пётр Бормор "Игры демиургов" - хорошая книга. Философская. С юмором. Книга в которой есть и очень рациональная философия и хороший юмор)

--- Отрывок из книги ---

- Алло! Это служба технической поддержки?
- Да.
- Говорит демиург Шамбамбукли. У меня проблемы.
- У всех проблемы. Расскажите подробно.
- Я купил у вас книгу. "Creation, Professional Edition". Что-то у меня по ней не получается...
- Что именно не получается?
- Да ничего! С самого первого шага.
- Что вы делали?
- Все как написано. Шаг первый, "да...

[DATA EXPUNGED]
Saemon Zixel

ReiserFS очередной раз меня выручил.

Командой "reiserfsck --rebuild-tree --scan-whole-partition /dev/sdc1" успешно удалось восстановить мой наиболее ценный файл на 2,4Гб и несколько других, которые я нечаянно вчера вечером удалил. Фух)

Правда некоторые файлы, которые были изменены, но не удалены, попортились. Но они в общем-то не столь важны. Их можно и заново пересоздать.

#linux #utils #reiserfs #recover #undelete

Saemon Zixel

Bash тоже умеет слать данные по TCP и UDP. Я этим пользовался, когда писал сетевые тесты.

Например, вот так можно послать минимальный валидный HTTP GET запрос:

echo -e 'GET /maintenance/start HTTP/1.0\r\n\r\n' > /dev/tcp/127.0.0.1/80

А вот так можно отправить Standart query на Google Public DNS:

echo -e '\x00\x01\x01\x00\x00\x01\x00\x00\x00\x00\x00\x00\x03www\x06google\x03com\x00\x00\x01\x00\x01' > /dev/udp/8.8.8.8/53

При этом если IP-адрес не существует или не отвечает, то в случае с TCP, bash будет где-то минуту пытаться подключиться (слать SYN-пакеты) прежде чем вернёт ошибку. А в случае с UDP, bash просто пошлёт данные в никуда и не вернёт никакой ошибки.

К сожалению, получить ответ на посланные данные нельзя :(. Но можно прочитать из сокета данные. Например, вот так можно узнать, что нам скажет GitHub.com с SSH порта:

cat < /dev/tcp/github.com/22

Через некоторое время в терминале выведется "SSH-2.0-babeld-077acb5b" и bash продолжит ждать следующие данные, пока сокет не будет закрыт с той стороны.

А вот открывать сокет на слушание - bash уже не умеет. И вот это жаль, конечно.

#linux #unix #bash #net #tcp #udp #testing #dev

Bash тоже умеет слать данные по TCP и UDP. Я этим пользовался, когда писал сетевые тесты.

Например, вот так можно послать минимальный валидный HTTP GET запрос:

echo -e 'GET /maintenance/start HTTP/1.0\r\n\r\n' > /dev/tcp/127.0.0.1/80

А вот так можно отправить Standart query на Google Public DNS:

echo -e '\x00\x01\x01\x00\x00\x01\x00\x00\x00\x00\x00\x00\x03www\x06google\x03com\x00\x00\x01\x00\x01' > /dev/udp/8.8.8.8/53

Saemon Zixel

Решил написать заметку. Т.к. Сам раньше не знал, что конкретно обозначают колонки VIRT, RES, SHR в top/htop.

SHR - память занятая кодом shared-библиотек (например libc.so). Фрагменты этой памяти могут быть общими между разными процессами.

RES - память занятая самим процессом и его тредами. Включает внутри себя SHR.

VIRT - память которую процесс попросил операционную систему выделить ему, но ещё не начал использовать (не одного байта не записал/не прочитал). Т.е. физически ещё не выделена.

Прикладываю скриншот с моего VPS сервера. Можно наглядно увидеть что SHR всегда меньше RES.

#linux

Решил написать заметку. Т.к. Сам раньше не знал, что конкретно обозначают колонки VIRT, RES, SHR в top/htop.

SHR - память занятая кодом shared-библиотек (например libc.so). Фрагменты этой памяти могут быть общими между разными процессами.

RES - память занятая самим процессом и его тредами. Включает внутри себя SHR.

Go Up