Archive for February, 2019

Apollo Music Update

Tuesday, February 26th, 2019

After a month or so hiatus i am back to working on Apollo. Right now Apollo has two main features

(1) The Ability to Synthesize Sound

(2) The Ability to Compose Music easily with ASCII Characters

Apollo's main focus is on (2) but I want it to be a piece of code that makes music "all by itself" so using samples of instruments recorded in a studio will only be a side feature, if it ever even gets implemented. The nice part of having all your music synth'd yourself is that for every instrument you can usually easily pre-generate sound waves of different lengths with different notes.

Today I fixed a few bugs:

1. An error calculating the equation for an exponential based envelope (which involved solving the system of equations y1 = ab^(zx1) y2 = ab^(zx2) for a and b where z is a chosen parameter by the user and the two points are the points where you want to draw an exponential curve between.

2. Fixed a bug where I called (apply #'max a-huge-list) . Common Lisp has a limit on the number of arguments you can pass to a function, so the correct way to do what I was trying to do was (reduce #'max a-huge-list)

3. Fixed a performance bug where I was iterating through a list and each time trying to get the nth element using the function nth, which caused the computation to be n^2.

Now I need to add a feature where I create two different types of instruments - ones that have a sustain such as wind instruments vs. those that peak and die off (piano, guitar, drums). The former needs a way to have a variable envelope function.

Coming of Age

Sunday, February 24th, 2019

mircea_popescu: there's this common tendency among noob bloggers to regard the blog as some sort of trophycase/showcase. they miss out on their own youth, as the lived story of their own personal path through life, consisting as such always does of failure, and tribulation.

Reading your own writing is akin to looking at yourself in the mirror. If you haven’t done it in a long time (or ever) you are going to be quite unhappy when you look. You'll notice all the blemishes and faults that everyone else can see but are invisible to you. The childish approach to dealing with this is to never look in the mirror. But not looking into the mirror does not make those imperfections disappear.

In reality writing for a blog is much more daunting than looking in the mirror, because instead of just seeing your reflection you are taking a snapshot of your mind and posting it for yourself and the world to see. When I take a look back at my previous writings I often cringe from reading what I wrote. I read my writing about goals I still haven’t made progress into, let alone accomplished. I read world views that not only seem ridiculous now, but were written in broken English. And I know that in the future I will likely feel the same way reading the post I’m writing today.

But I take solace knowing that there is more honesty in blogging frequently and keeping a record of one’s development than there is in showing only a very curated “trophy case” of thoughts. Everyone save naive children knows that in-between the highlight reel of a millennial’s antisocial media posts are painful and embarrassing moments. The crime of erasing one’s past and cherry-picking content to display on your blog is not that your lying to everyone else. It’s that you’re lying to yourself. It prevents you from confronting your inner hayseed.

In You Know Me Al by Ring Lardner, Jack writes to his friend Al constantly updating him about his life. Reading Jack’s letters is amusing not only because you see how foolish he is and how he can’t keep any of his commitments, but also because Jack manages to remain complete oblivious to his own character. One wonders if had the fictional character Jack written blog posts instead of writing letters, he perhaps would have been able to see his ridiculousness and improve himself.

Here’s to finishing Apollo, starting my game Zylon, staying healthy, avoiding my bad habits, and most importantly using every minute of my time wisely.