Обновить
51
10.1
Евгений А. Симоненко@easimonenko

Любитель

Отправить сообщение

Будни ретрокомпьютерщика: Fujitsu FMV-Biblo NE7/800

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели4.7K

Одно из воскресений декабря 2025 г. Просматриваю избранное на барахолке на предмет очередной покупки. Конкретной цели нет, просто смотрю, нет ли чего интересного за приемлемые деньги. Один вариант не отпускает: Fujitsu FMV-Biblo NE7/800. Ноутбук выпущен 25 лет назад в Японии для внутреннего рынка. Решаюсь не сразу: ноутбук продаётся в Калининграде, до Краснодара ехать ему далеко, долго и дорого. И я не уверен, что продавец отправит в такую даль. Решаюсь, пишу. Продавец согласен. Оплачиваю. Ноутбук неисправен и не вполне комплектен, зато редок в наших краях и красив. Заведётся?

Читать далее

ReLifeBook, Будни ретрокомпьютерщика, Emacs Lisp и FPGA: подведение итогов моей хобби-деятельности

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели5.8K

Ровно три года назад, в декабре 2022 года, у меня появилось новое хобби -- увлечение старыми ноутбуками. А произошло это так. Однажды мне надоело таскать в рюкзаке туда-сюда единственный ноутбук, и я решил приобрести второй рабочий ноутбук, чтобы никуда без острой необходимости его не носить. Сначала я подбирал недорогой новый. Как оказалось, почти все современные ноутбуки не удовлетворяли моим требованиям в плане оснащения. Мне нужны были: порты Ethernet и HDMI и слот для полноформатных карт памяти SD. При этом процессор хоть и не топовый, но и не лоукост. Ну и дизайн хотелось, чтоб был приятный, а не как у бюджетников 2010 года. Вариантов было мало, а цена высокой. Решил искать подходящий среди подержанных в основном под привычными мне марками Acer и Fujitsu по приемлемой цене. И если среди Acer, Toshiba это были хоть и старые, но с более-менее актуальными характеристиками, то среди Fujitsu, Lenovo это были модели на Core 2 Duo и старее. Попадались и ретро, вызвавшие во мне ностальгические чувства к LifeBook, ведь одним первых ноутбуков, купленных мною новыми, был как-раз этой компании. В общем, купил я сначала один, потом другой... В основном покупал по низу рынка, полуживые и на запчасти. По возможности приводил в порядок и восстанавливал работоспособность. Иногда приобретал экземпляры и в хорошем состоянии. А в прошедшем, 2025 году, я завёл канал в Telegram и начал рассказывать о своём хобби на Хабр. Но это не всё. Думаю, что можно подвести итоги и немного рассказать о планах.

Читать далее

Будни ретрокомпьютерщика: Compaq Presario 1200

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели8.2K

Отойдя от дел в один из вторников декабря 2025 г., заглядываю в барахолку и в первой же строке вижу его. Compaq Presario, модель не написана, по виду тянет на конец 90-х. Цена такая, что думать смысла нет. Покупаю. На выходные должен приехать. По фото пытаюсь выяснить конкретную модель. Судя по всему это представитель серии Presario 1200, выпускавшейся с 1998 по 2000 г. Что меня ждёт, когда приедет, не знаю: купил кота в мешке. Так даже интересней. Тем более, что эта модель оснащалась микропроцессорами от разных производителей: Intel, AMD и Cyrix.

Читать далее

HP OmniBook XE3: брутальный ноутбук начала 2000-х с автономным CD-проигрывателем и хорошим звуком

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели7.4K

Пару лет назад, просматривая барахолку, наткнулся на HP OmniBook XE3. Я не был фанатом продукции HP, хотя в своё время интересовался их крутыми PDA iPAQ, а ещё у меня есть старый добрый сканер ScanJet компании Hewlett-Packard. Но этот ноутбук привлёк моё внимание своим брутальным внешним видом. Подобный дизайн я видел только у защищённых Panasonic. В общем, приобрёл его и был немало удивлён...

Читать далее

Fujitsu LifeBook C3: потребительский ноутбук конца 90-х

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели9.1K

В конце 90-х годов ноутбуки начинают избавляться от имиджа средств выражения высокого статуса или производственной необходимости: компании-производители выходят со своими новыми моделями на базе процессоров Pentium MMX и Pentium II на потребительский рынок. В частности, компания Fujitsu меняет классификацию модельного ряда и вводит различные линейки для различных рынков. Для широких масс назначается линейка, обозначаемая буквой C (по-видимому от слова Consumer, т.е. потребительский). В этой статье на примере Fujitsu LifeBook C3 посмотрим, какими были эти потребительские ноутбуки.

Читать далее

Создание режима GNU Emacs для C-подобного языка

Уровень сложностиСложный
Время на прочтение6 мин
Охват и читатели1.6K

Недавно я разработал ещё один режим GNU Emacs для C-подобного языка программирования C2. Если в предыдущий раз для другого C-подобного языка я написал код с нуля, то в этот раз решил воспользоваться возможностью так называемого наследования режимов. В этой статье хочу поделиться с вами как это делается, и что у меня из этого вышло. (Предполагается, что читатель ознакомился с материалом предыдущей статьи Как написать свой режим для GNU Emacs и опубликовать его в MELPA или имеет собственный уникальный опыт разработки режимов GNU Emacs.)

Читать далее

Свободные инструменты для программирования FPGA

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели2.8K

Подборка свободных инструментов для программирования FPGA, включающая в себя средства поддержки языков HDL, синтезаторы, симуляторы и некоторые другие.

Читать далее

Программирование FPGA Gowin с использованием свободных инструментов

Уровень сложностиСредний
Время на прочтение3 мин
Охват и читатели2.8K

Краткая инструкция, о том, как запрограммировать чип FPGA Gowin с использованием только свободных программных инструментов и комплекта Sipeed Tang Primer 20K Dock.

Читать далее

Ретро Linux на ретро-ноутбуке

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели6K

Недавно мне захотелось поностальгировать, освежить ощущение от Linux спустя 25 лет, как я с ним познакомился. Я нашел в закромах старые диски с Linux, взял из своей коллекции старый ноутбук тех лет и поставил на него такой же старый Linux.

Читать воспоминания и смотреть кучу фото

Как организовать свой Zettelkasten в GNU Emacs

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели1.9K

Вам нравится пользоваться GNU Emacs, но вы ещё не используете его для ведения своего Zettelkasten? В статье мы немного поговорим о собственно Zettelkasten, а затем о том, как настроить и использовать Org-roam с этой целью. На снимке выше вы видите Emacs с двумя связанными друг с другом заметками и визуализуцию графа в браузере, в котором выделен узел одной из открытых заметок и все связанные с ним. Интересно? Тогда читайте дальше.

Читать далее

Как написать свой режим для GNU Emacs и опубликовать его в MELPA

Уровень сложностиСложный
Время на прочтение13 мин
Охват и читатели3.3K

Некоторое время назад я разработал режим GNU Emacs для редактирования конфигурационных файлов операционной системы Embox. Кроме всестороннего изучения Emacs Lisp мне потребовалось разобраться со структурой модуля режима, а также процессом и требованиями к публикации пакетов в MELPA, наиболее популярном архиве пакетов для GNU Emacs. В этом руководстве я расскажу, что нужно знать, чтобы написать свой собственный режим, и как опубликовать свой собственный пакет.

Запускаем свой Emacs!

Программируем Arduino Uno на Rust: настраиваем среду и моргаем светодиодом

Время на прочтение8 мин
Охват и читатели24K

Кто-то из вас наверняка задавался вопросом: а нельзя ли программировать Arduino на чём-то более современном и удобном? Вот и я задавался. И нашёл Rust (не то, чтобы я о нём не знал). И на нём можно программировать микроконтроллеры AVR и платы Arduino, построенные на них. И здесь я расскажу о том, как настроить среду разработчика на Rust в Linux, GNU Emacs и Visual Studio Code и как запрограммировать Arduino Uno на моргание светодиодом.


#![no_std]
#![no_main]

use ruduino::Pin;
use ruduino::cores::current::{port};

#[no_mangle]
pub extern fn main() {
    port::B5::set_output();

    loop {
        port::B5::set_high();
        ruduino::delay::delay_ms(1000);
        port::B5::set_low();
        ruduino::delay::delay_ms(1000);
    }
}
Читать дальше →

Обзор языка функционального программирования Koka

Время на прочтение5 мин
Охват и читатели8.4K

Как-то заглянув на GitHub, обнаружил Koka — язык функционального программирования со статической типизацией. Koka разрабатывается с 2012 года Daan Leijen в Microsoft Research, USA. Его исходники выкладываются на GitHub под лицензией Apache 2.0. Как признаются его авторы, он ещё не готов для промышленного применения: у него нет библиотек, менеджера пакетов и полной поддержки в средах разработки. При этом сам язык достаточно стабилен, а компилятор полностью разработан. Отдельными моментами язык напоминает Rust, Haskell и Scala. Сам же по себе он интересен контролем побочных эффектов. Это его основная фишка. Приглашаю познакомиться с Koka и обсудить его свойства.


fun main(): console ()
  println("Hello, World!")

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

Читать дальше →

Как мы узнаём, какой язык программирования самый популярный

Время на прочтение6 мин
Охват и читатели11K

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


В декабре 2021 года Python остается одним из самых популярных языков программирования. Об этом мы узнаем из рейтингов IEEE Spectrum, TIOBE, PYPL. Однако рейтинги GitHub Octoverse и Stack Overflow Annual Developer Survey сообщают нам, что Python на 2-м месте, а GitHut, что лишь на 3-м. А самым популярным является JavaScript. Дело в том, что у разных рейтингов разные задачи и методики подсчета. А значит пора разобраться, как устроены эти рейтинги и для чего они нужны.


Место TIOBE IEEE Spec. PYPL GitHub Oc. Stack Overf. GitHut
1 Python Python Python JavaScript JavaScript JavaScript
2 C Java Java Python HTML / CSS Java
3 Java C JavaScript Java Python Python
4 C++ C++ C# TypeScript SQL CSS
5 C# JavaScript C / C++ C# Java PHP
6 Visual Basic (.Net) C# PHP PHP Node.js Ruby
7 JavaScript R R C++ TypeScript C++
8 Assembly Language Go Swift Swift C# C
9 SQL HTML Objective-C C Bash / Shell Shell
10 Swift Swift Matlab Ruby C++ C#
Читать дальше →

Как учиться в университете, чтобы было интересно и полезно

Время на прочтение8 мин
Охват и читатели22K

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


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

Читать дальше →

Встраивание Haskell: компиляторы и компиляция компиляторов

Время на прочтение5 мин
Охват и читатели4.5K

Эта статья является переводом поста Chris Hodapp Embedding Haskell: Compilers, and compiling compilers В своём посте автор рассматривает различные подходы к использованию Haskell для написания кода для встраиваемых систем. Предоставим слово автору.


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


Этот блог посвящен использованию Haskell со встраиваемыми системами. Что это хотя бы значит? Мы видим пару широких категорий (которые отражают слайды на последней странице, а также наша страница ссылок):


  • Полная компиляция: компиляция кода на Haskell для встраиваемого назначения.
  • Ограниченная компиляция: компиляция некоторого ограниченного подмножества кода на Haskell для встраиваемого назначения.
  • Хостинг EDSL и компилятора: хостинг в Haskell, EDSL и компилятор для встраиваемого назначения.
Читать дальше →

Введение в язык запросов Cypher

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели25K

Язык запросов Cypher изначально разработан специально для графовой СУБД Neo4j. Целью Cypher является предоставить человеко-читаемый язык запросов к графовым базам данных похожий на SQL. На сегодня Cypher поддерживается несколькими графовыми СУБД. Для стандартизации Cypher была создана организация openCypher.


Основы работы с СУБД Neo4j описаны в статье Основы работы с Neo4j в браузере.


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


Генеалогическое дерево в Neo4j, отредактированный вид

Читать дальше →

Основы работы с Neo4j в браузере

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели20K

В статье рассматривается как начать работать с графовой СУБД Neo4j, используя Neo4j Browser. Это руководство может быть полезным как дополнение к книге Редмонда и Уилсона "Семь баз данных за семь недель", так как рассматриваемый веб-интерфейс был полностью переработан, а также к книге "Графовые базы данных" (Робинсон, Вебер, Эифрем), так как в ней этот вопрос вообще не рассматривается. Статья рассчитана на приступающих к изучению Neo4j. Те, кто уже знаком с этой СУБД, могут смело её пропустить.


Neo4j Browser: home screen

Читать дальше →

Инструменты разработчика на языке Elm

Время на прочтение7 мин
Охват и читатели8.4K

С момента публикации статьи Основы разработки на языке Elm (руководство по инструментарию для начинающих) прошло полтора года. За это время в инструментарии для языка разработки веб-интерфейсов Elm произошли многочисленные изменения: появилась более удобная система сборки с возможностью генерации нового проекта; для редактора Atom набор дополнений в некоторых отношениях теперь лучше, чем для популярного тогда среди разработчиков на Elm редактора LightTable; заработал инспектор состояния приложения. Давайте пройдёмся по этому набору на простом примере.


Инструменты разработчика на языке Elm: обложка

Читать дальше →

Обзор пакетов Node.js для разбора опций командной строки

Время на прочтение9 мин
Охват и читатели26K

Node.js, как и другие среды разработки, предоставляет базовые средства работы с опциями командной строки. В нашем случае это массив process.argv. Но обычно, кроме простейших случаев типа A + B, обрабатывать опции командной строки вручную очень неудобно. Для этого есть несколько популярных пакетов. Автор написал небольшую программу, которая построила сводную таблицу по этим пакетам, выбрал из них три самых популярных и рассмотрел их поближе.


(Материал статьи на 7 января 2020 года по прежнему актуален, сводная таблица обновлена и дополнена.)

Читать дальше →
1

Информация

В рейтинге
589-й
Откуда
Краснодар, Краснодарский край, Россия
Зарегистрирован
Активность

Специализация

Инженер встраиваемых систем, Создатель контента
Linux
Git
Базы данных
C
Системное программирование
Assembler