Very Secure

Silicon Valley companies refuse to create APIs for their customers

November 7th, 2018

Many SV companies have an issue of thinking that all of their customers would never want to interface with their product through code they wrote themselves. It is quite frustrating to always be forced to use their products through a GUI.

Take AirBNB for example. What I want from AirBNB is a get request endpoint that takes params:

latitude

longitude

radius

rent-start-date

rent-end-date

optional: max-price

optional: num-bedrooms

etc.

When I make the get request with the params i should get an array of available places.

Of course they already have something like this behind the scenes, as there is no other way the website could possibly work. But they obfuscate the api from the user. Perhaps the reason they do not publish an api is because they want to be able to feel that they can update their api without having to worry about breaking other people's code. ...Or some companies do not want anyone to be able to easily index their database.

Both the Apollo Music Project and Zylon will be built with an api that is documented and readily available for the user.

How much does it cost to save a copy of your dna inside of the blockchain?

November 7th, 2018

A full block gets about .2 btc in fees, so roughly .2 btc / 1MB of space. The human genome is allegedly somewhere between 1.5GB - 2.0GB of ATGC data.

Now there is going to be some extra space needed, because as you try to stuff your dna in the blockchain there is going to be other transactions inbetween. So you're going to need to put pointers to where your last data segment was so that you can reconstruct your genome in the future. But we're going to ignore all that overhead and get a lower bound of the price.

2,000MB * .2 btc / MB ~= 400 btc

Immortality isn't cheap!

keeping a program running on a remote computer

November 7th, 2018

When you ssh into a box, often times you want to run a program that will keep running even when you close your terminal window. There are basically two options i know of that do this:

1. nohup
2. screen

I recommend using screen. To run a program with screen simply type:

$screen -L ./my-program

Then you will be put into a new shell, the "screen" that will persist even when you close your terminal window. Then do Ctrl-a D to detach from the screen and return your normal terminal. Now you can close your terminal window and ssh back into your box. To view all your programs running through screen type

$screen -list

Then to go back into the screen that is running your program run

$screen -r

I don't know how to use screen beyond this. But these few simple commands are very powerful.

Making sure your website is running

November 5th, 2018

(while 't
(report-with-email-if-nil
(expected-elements-present?
(get-website *my-website*)))
(sleep-seconds 60))

Run on a separate server, and be the first to know that your website is down.

Blog Updates

November 3rd, 2018

Updates / style changes for the blog that I want to put in:1

1. A better organization of archives. Possibly by dates. Definitely an "All" button.

2. A better design for mobile, so that all the text can fit on the screen.

3. More/any pictures.

4. Syntax coloring for blocks of code.

5. Random article feature.

  1. This is pre-wp and thus no longer relevant []

Apollo Syntax Design Notes

November 3rd, 2018

Apollo should be able to put two instruments inside of a parens to have them start at the same time.

For example

((1/4 "guitar" C D E) (1/8 "piano" C D C D))

should have both the guitar and piano play a C note at time 0, it should have the piano play a D note at 1/8 seconds, and have the guitar and piano play a D and C at 1/4 seconds, and then the piano play another D at 3/8 seconds, and the guitar play at 1/2 seconds into the song.

Then any other notes after should continue at 3/4 seconds.

Some other notes: The quotes should not be necessary around the instruments, and there should be documentation for all the instruments that contains the function used to generate them and the wave sample for each note on the instrument.

Google shows you what you want to see

November 2nd, 2018

Humans are looking for confirmation of their beliefs rather than the truth. Imagine website A which gives the confirmation of what people already believe and website B which gives people an accurate picture of reality.

When a person visits website A, they will have their belief confirmed, and thus have website A make them happy and they will believe website A gave them the truth since the answer A gave was their prior belief. While website B, which give them the "objective" truth, will cause contradictions in the same person's mind, since it goes against what they currently believe. Website B will make people uncomfortable.

So in the end website A will be the more popular website, and a Google will be born. Of course often times people's beliefs are correct and thus website A will often give the truth. Website A will have to give the truth for things that are very easily verifiable, otherwise people will start to distrust website A's authenticity.

Google will help you answer most of your questions, but in so many cases it is completely worthless and in some it is downright misleading. Searcher beware.

I do think there is a great startup available, which is a company that indexes the web like google and creates a powerful version of grep that prioritizes webpages that have a high page rank similarly to Google's.

Reflection VS Mindless Repetition

November 2nd, 2018

After 4 years of attending Stuyvesant H.S. in NYC and 4 years at MIT in Cambridge I managed to stay oblivious to some obvious truths in the world regarding how to learn. I believe I would be justified in being mad at my teachers, how could there not have been multiple - if not all of them - making sure that i was not reinforcing bad habits?

But the world needs people looking in the mirror instead of pointing fingers; I have only myself to blame. And I am lucky to have learned some of the secrets of learning while I still have time to gain the benefits.

witout furder abdu:

Caps are used to STRESS THE IMPORTANCE OF THIS MESSAGE

THE HUMAN BRAIN IS A SELF PROGRAMMING MACHINE WITH A CONSCIOUS AND SUBCONSCIOUS COMPONENT. THIS MESSAGE WILL TEACH YOU HOW TO BETTER CONTROL THE CONSCIOUS COMPONENT.

THE CONSCIOUS COMPONENT MAPS THOUGHT -> ACTION. IF YOU HAVE A COMMAND THOUGHT, SUCH AS "RAISE MY RIGHT ARM" YOU WILL SEND AN ELECTRICAL SIGNAL TO YOUR MUSCLES THAT WILL PERFORM THE ACTION OF RAISING YOUR RIGHT ARM.

YOU WILL THEN RECEIVE A SUCCESS OR FAILURE SIGNAL FROM YOUR SENSORY INPUT, I.E. YOU WILL VISUALLY SEE YOUR HAND RAISE AND THEN YOUR BRAIN WILL REGISTER A "SUCCESS" AND STRENGTHEN THE CONNECTION BETWEEN THE THOUGHT YOU JUST HAD AND THE NEURAL TISSUE THAT CONNECTS TO YOUR MUSCLES IN YOUR RIGHT ARM.

THE PROCESS OF HAVING AN INPUT SIGNAL PERCEIVED AND JUDGING WHETHER OR NOT IT WAS THE CORRECT ACTION IS REFERRED TO AS "BIOFEEDBACK". ISSUES WITH YOUR BIOFEEDBACK, WHICH OCCUR ALL THE TIME, WILL GREATLY IMPAIR YOUR ABILITY TO PROPERLY MAP THOUGHT -> DESIRED ACTION. HAVE YOU EVER HEARD A DEAF PERSON SPEAK? THEY CANNOT SPEAK NORMALLY BECAUSE THEIR BIOFEEDBACK LOOP IS SEVERELY IMPAIRED BY THEIR NON-FUNCTIONING EARS.

WHEN YOU HAVE A THOUGHT AND PERFORM AN ACTION, NO MATTER WHETHER OR NOT YOU JUDGE IT AS A SUCCESS, YOU ARE STRENGTHENING THE CONNECTION BETWEEN THAT THOUGHT AND THAT ACTION. THUS YOU MUST:

STOP IGNORING YOUR "NEGATIVE BIOFEEDBACK" SIGNAL. IF YOU DO SOMETHING WRONG - A BAD TENNIS SWING, A POOR PLACEMENT OF A FINGER ON THE GUITAR FRETBOARD, A BAD TURN WHILE SKIING - WHATEVER - YOU MUST FIGURE OUT A WAY TO LEARN THAT IT WAS WRONG FROM YOUR BIOFEEDBACK SYSTEM AND CORRECT YOURSELF AS SOON AS POSSIBLE.

YOU WILL NOT GET ANYTHING FROM DOING SOMETHING "OVER AND OVER" AGAIN UNLESS YOU ARE REFLECTING ON EVERY ACTION YOU DO AND FIXING ALL OF YOUR PROBLEMS AS FAST AS POSSIBLE. YOU WILL ACTUALLY USUALLY JUST BECOME WORSE AT THE ACTIVITY YOU ARE TRYING TO DO, AS YOU WILL BUILD A BROKEN THOUGHT->ACTION MAPPING.

P.S. THE FASTER YOUR BIOFEEDBACK THE BETTER, PRACTICING IN FRONT OF A MIRROR BEATS TAKING A VIDEO AND WATCHING IT 30 MINUTES LATER.

P.P.S. SOMETIMES YOU NEED TO USE TECHNOLOGY TO CREATE A BIOFEEDBACK LOOP THAT IS OTHERWISE IMPOSSIBLE. TECHNOLOGICALLY INCLINED YOGI'S HAVE ALLEGEDLY BEEN ABLE TO CONTROL THEIR HEART RATE BY CONNECTING WIRES TO THEIR PULSE AND LEARNING TO BREATH WHILE WATCHING THEIR PULSE ON A MONITOR.

Apollo Music Project

November 2nd, 2018

The Apollo Music Project is a personal project I've been working on for a little over two months with some spare time. I have put an estimate of about ~100-200 hours of time into it. The code base is pretty awful, on account of it being the first project I've written in Common Lisp. The formatting is garbage, there is code duplication everywhere, a bunch of unused code that is not cleaned up, and a dependency graph that makes no sense. When I load the project I get three warnings.

BUT despite all this I can type:

(1/4 (E2 B3 E3) (G2 D3 G3)) (3/8 (A3 E3 A4))
(1/4 (E2 B3 E3) (G2 D3 G3)) (1/8 (A#3 F3 A#4)) (3/8 (A3 E3 A4))
(1/4 (E2 B3 E3) (G2 D3 G3)) (3/8 (A3 E3 A4))
(1/4 (G2 D3 G3) (E2 B3 E3))
(1/8 E2 E2 E2 E2 ()))

and the intro to smoke on the water begins to play, on loop.

The world moves too fasts for perfection. I focus a lot on the style of my code and on following "best practices." But those are only a means to an end. The high level goal (creating the simplest syntax for creating organized sounds) will always come before the goal of creating clean code, which is just a means to an end.

Music Can Bring More Than Just Ideas To Life

October 31st, 2018

Last night I made a trip back to where I've spent most of my time in Costa Rica, Tamarindo. I brought the essentials: clothes, board shorts, a computer, my guitar, and my friend's melodica. Shortly after I arrived the sound wave weapons were drawn and we started to play some of our classics.

I had been living alone for a few days with very little human interaction, and it was good to be back with the boys and some new friends. One of my buddies started playing a song written by him, and i hastily picked up the melodica because his song is one of the few things I can play on that little device.

Now for those of you who don't know what a melodica is, it is essential that you understand the structure of this instrument to comprehend what happens later in the story. It is essentially a piano and a flute combined. Before I knew the instruments proper name, we had aptly named the device the "plute." It has a normal piano keyboard, but instead of the keys making drums hit strings, the keys change the structure of an internal tube, and the sound is produced by blowing through a hole.

Normally a melodica is played by laying it down on a surface, like you would for any other type of keyboard, and a long bendable tube is attached to the melodica's air input hole. However, absent having the bendable tube, you can just hold the melodica with your hands and blow directly into the hole. It limits your ability to play the melodica, because your thumbs must be used to hold the instrument. But for simple tunes it is a much more enjoyable way to play. This was the manner I was playing that night.

Now back to our story...

My buddies began the jam and I waited patiently to play trying while i tried to listen to and remember the notes in the song. (It's better to be silent and thought of as a non-musician than to play out of key and remove all doubt...) As the notes came back to me I readied my weapon by placing my fingers on keys and and took in a long breath.

The song came to life as three of us danced around our instruments to the pleasure of ourselves and our two lady audience members. My role in this song is pretty simple, cycle through four notes, blow hard when my buddies strum their guitars hard. Staying in beat and playing the notes to this song is easy, so I add a little color to the music by playing the melodica with absurd expression.

The melodica is an instrument that you just can't help but laugh at. It looks like a kid's toy, indeed it is a kid's toy, but the notes come out loud and proud. It took me a bit to be able to play the thing without starting to giggle myself, especially while moving it up and down as if it were the instruments position in space that changed the notes and not the keys pressed.

As I was playing I felt a tingly sensation on my face. Bugs in Costa Rica are more than abundant, and thus I feel these little guys on me all the time. However I also occasionally have tingling sensations on the extremities of my fingers etc. and it so the bugs can really mess with me, since sometimes I can't tell if i am just tripping or if there really is a bug brushing against me. However the music train was in motion and there was no option to stop, so i just contorted my face and kept jamming.

I managed to forget this uncomfortable sensation and push through the rest of the song to its proper conclusion where the notes peacefully fade away into the distance. We had one of the brief moments in life where something special was just experienced and no one can figure out what to say next. For the few moments before, the realization we filled the void with giggles and smiles.

And then it came. Out of nowhere she screamed,

"WILL THERE ARE ANTS ALL OVER YOU"

what? I thought ot myself, and then in just under two seconds my brain put it all together. Ants create bases. The inside of the melodica is a large space with a tiny entrance, an absolutely perfect design for an ant colony. And the ants had just experienced the most tremendous thunderstorm of air waves and were NOT happy. They were rushing out of the sound hole at an unbelievable rate. How many fucking ants were in that thing, i have no idea, but it was no short of 100 and probably in the 200-250 range.

I rushed to the sink and sipped water, spat it out, sipped water, spat it out, i felt it all hit me at once. Now i had known just how strong the trance i must have gotten in with the music, because i felt the mother fuckers biting me everywhere. I rushed to the bathroom and threw off all my clothes and started showering immediately.

It took me only a few minutes to start laughing harder than i was laughing before, but that horribly disturbing image of the ants marching out of the melodica will probably stick with me for the rest of my life.