The Correct 2-Key Strategy
   How to protect developer API keys from leaking into client-side code. 
  2024-09-03T10:31-07:00 
  At first I thought I found a way to protect developer API keys – or keys open to localhost – from leaking into client-side code. Boy, was I wrong.  (read more)  
       JavaScript's Different Size Properties for DOM Elements
   Learn about the dimensional data attached to each JavaScript-selected element. 
  2023-06-29T14:50-07:00 
  I wrote the following code that changes an element's CSS properties based on the user's scroll position. Normally the element is fixed to the bottom of the screen, but I didn't want it to overlap...  (read more)  
       Moon-Sun-Tides API
   Read the code documentation before you copy and paste. 
  2023-06-02T13:52-07:00 
  Creating my own API proved that rarely anything in programming is accomplished alone – instead it's built on the backs of the many engineers that came before. Another lesson it taught me: don't just...  (read more)  
       Kings Corner
   Learn about Firebase’s onSnapshot listener. 
  2023-05-26T13:52-07:00 
  If I were a JavaScript teacher, my final project for the class would ask each student to build a card game of their choice. It would be a great exercise in data structuring – I personally love...  (read more)  
       I-Ching
   Consult an ancient oracle on a modern webpage. 
  2023-05-12T13:53-07:00 
  It's difficult to live a spiritual life in Southern California. Here toxic body images and inflated egos are unavoidable, but a Taoist outlook keeps me humble. How can you be upset or self-conscious...  (read more)  
       Timers
   Learn how to repeatedly play the same sound file on mobile using setInterval in JS. 
  2023-05-05T13:53-07:00 
  Okay fine. I admit it. I'm not perfect. And before you inevitably try to convince me otherwise, I'll reveal my biggest flaw in the workplace: I'm not good at taking breaks.  (read more)