Mihai Olteanu

Assisted by Alien Technology™


Software developer. Common Lisper. Emacs user. (Arch)Linux & shells 100% of the time.

I like small and composable tools and interactive development environments and not the big, monolithic and closed apps that try to do everything but get along with no one. Incidentally, that might be the reason for UiPath success. Hmm.

I have been working for many years as an embedded C software developer in the automotive industry. My background is in electrical engineering and at one time I've even built my own minimal z80 computer with discrete logic gates, RAM and ROM modules inspired by the CPUville's Kit Instruction Manual or hacked the XinuOS internals. Fun times.

As of late, I've been bitten by the Lisp bug following the SICP's recipes. Now I'm starting to see all these XML files (arxml, ant, liquid, etc) as the inability of the languages that use them to express or to build higher abstractions. The "solution" seems to be an explosion of new DSLs built on top of XML which, by its very definition does not DO anything . A perfect, though inferior, medium to build your own abstractions. All for the simple reason that the main tool is not powerful enough.

Picking up new languages is a task for a few weeks once the fundamentals concepts are in place, or so I've seen. I've skimmed the surface of Rust, Elixir and a few others and have I wish I knew more about that moments every time I hear about Prolog, Smalltalk, OCaml or other little known gems. J, maybe?!

Articles & Projects

Last.fm like music player

A Common Lisp, mouseless music player for a brighter future. A reimplementation of last.fm's functionality but with StumpWM (or dmenu) integration thus getting rid of the browser. Project under development.

Use your palms to press the Control keys in Emacs

A plea, again, for all Emacs lovers out there, to properly use their keyboards and stop switching Control for CapsLock. Oh, and learn how to actually (touch) type!

Emacs counsel-sly

Add counsel support for Sylvester the Cat's Common Lisp IDE (sly) in Emacs.

SICP's Scheme Interpreter written in C

A learning project that reimplements the SICP's metacircular evaluator from scratch in C. I got it to the point where I can start a REPL, define new functions and evaluate expressions. Unit tests are also in place for a safer journey.

Lessons in Electronic Circuits

A Romanian translation project I've started over ten years ago for this excellent resource for students of electronics. A printed edition was in the works, but it was just not meant to be. I've managed to save this from old archives as the original website got hacked, cleaned it with some nice awk&sed and transformed it from html to org files. The html pages are now automatically generated with shell scripts on each new update.

How to download and boot the Xinu Os from a BeagleBone Black

I've had some problems booting up XinuOS on the BBB, as it seems nobody was feeding the watchdog. Some microcontroller documentation reading and hacking solved it.

lispy   lispy