About

I like software because it lets me work at the highest possible level of abstraction.

In software I can control everything about my development environment. I can make tools that have a compounding effect on my ability. I can simulate physics, chemistry, biology, all the natural sciences, and and I can test hundreds of thousands of solutions to problems on massively parallel architecture. I can instantly remix work that others have done, rapidly iterate upon designs, and I can collaborate with large groups of people from all across the world. I can create content and services at scale and present it to millions of users for pennies on the dollar. And I can do it all while thousands of miles away from my cloud provider. Soon even the cloud provider will be abstracted away by blockchain technology.

I like solving the kind of problems that don’t always have clear answers. I place intuition above rationality. The mind is a tool of the heart.

My favorite language is Clojure, it is a Lisp, and is also my strongest language.

clojure lisp

Here is what Clojure looks like:

  (defn raytrace [this elements]
    (lazy-seq
     (cons rayorigin
           (let [[closest distance-to] (get-closest this elements)]
             (if (infinite? distance-to) [(second (rayproject this 400))]
                 (let [[V0 V1] (rayproject this distance-to)]
                   (trace (->Ray V1 (reflect raynormal (normal closest V1)))
                          elements)))))))

Why I like Clojure

I feel powerful behind a clojure interpreter like nowhere else. I don’t feel the same with Python or Typescript. Lisp lets you think outside the box. It lets you move fast 🌪️. And has, beyond that:

  • A REPL (not a python REPL, a real Lisp REPL): allows interactive code development, and eliminates the perpetual halt->edit->restart cycle.
  • Declarative Code: immutability means your program has no state. It’s a perceptual shift from representing variables as volatile containers existing in the time domain, to representing them as fixed points in a cause and effect pipeline.
  • Macros/Homoiconicity: the crown jewel and major distinguishing factor of Lisp. Every other lispy feature can be adopted in [insert x language here]. In Lisp, code is data is code. It is the defining feature.

I also like these things:

Blockchains are sovereign entities that transcend the state. I think they are one of the most defining inventions of our lifetimes:

btc eth cardano monero ic polkadot avalanche

How I made this site:

  • I use hugo to generate static content from .md files.
  • I use a theme called cactus, which has generously been provided for free.
  • I dream of making my own theme one day.
  • I host this site on AWS for pennies.
  • To update all I have to do is $ git push

Written and Maintained by George Mourginakis

trbetr.zbhetvanxvf@tznvy.pbz (My ✉️ in rot13)

profile

Page Last Updated: 2022-10-17