About Me
David Not David
Hi, my name is David (Daveed, not Day-vid) Alejandro McDowell. Correcting people on the pronunciation of my name can get old. More than likely, if someone across the room yells Day-vid, I will not respond. My name is the result of Spanish being my first language, as I grew up in a Spanish-speaking household. The pronunciation of my name is nonunique; it transcends the limitations of English.
Education
On December 12, 2021, I graduated from the University of Houston-Clear Lake with a Bachelor of Science in Computer Science.
First Langauge
My first programming language was Python. The syntax and intuitiveness of the language lured me down the rabbit hole, the rabbit hole that is programming. And along the way, it made me appreciate math, physics, nature, and their beauty. A significant portion of my Python knowledge comes from doing Physics I & II labs with VPython (glowscript.org). I recall spending countless hours debugging code to find perfect solutions, writing lab reports explaining code, and discussing the minute details of charged particles moving through magnetic fields. Creating visual representations reinforced my understanding of various concepts and developed my programming skills early on.
It was not until I learned C (the language I wished was my first) that I appreciated curly braces and built-in data structures. But had C been my first language, my teenage self might have chosen a different path and not studied computer science. When others ask what language they should learn, I hesitate to give them a specific language because I lack the profundity of teaching. The best thing that anyone interested in programming can do is pick a topic of interest, research what language would be appropriate for the project, and build the desired product. Find a balance between frustration and reward and move on.
Favorite Programming Language(s)
When asked, "what is your favorite programming language?" My response is something like, "I don't have one; I 'dislike' them all equally." What I mean by this: languages have trade-offs and serve various purposes. My favorite language depends on a given problem and its constraints. C is a language; one of my favorites, but if I'm using it alongside several domain-specific languages to make a website - I will have a terrible time. The amount of time and energy spent building a site to "scale" (using C) will not yield a great return. Time to market is a huge factor; for that reason choosing a language with a higher level of abstraction would be a better option. Higher-level languages such as Go, Python, or TS would offer more productivity while not suffering from the safety issues of C. Programming is fun, but problem-solving is fulfilling.