Ilnar Salimzianov's Personal Site

English | Deutsch | Русский | Татарча | Türkçe

The Great Ideas of the Software World, or the Lessons Learned in Software

First published: 18 Mar 2020. Last update: 23 Jul 2025

  1. Domain-specific languages should be embedded. In practice, this means that you should be able to, either: have code written in a DSL inside of a non-DSL code, or, equivalently, be able to write and invoke non-DSL code in a file with DSL code.
  2. Gradual Typing is the Right Way (TM) [2]
  3. Programming should be taught in special pedagogical programming languages rather than 'industrial' ones.
  4. Federated over p2p. Keep the client-server distinction, but allow multiple servers. Examples: email, matrix, mastodon. Reason: enormous complexity of the latter with deminishing returns.

Footnotes

  1. Only partially true, because you can actually access arbitrary Python functions out of Jinja2 as described here.
  2. https://dropbox.tech/application/our-journey-to-type-checking-4-million-lines-of-python

Home | Work with me | Résumé | Projects | Publications | Talks | Now | Email | Reading log | Movies log

Powered by Buttondown.

Work with me