John Dalesandro

About

So your name is John? I see... Not the easiest name to say, is it?

Who am I?

I like to write code — both professionally and as a hobby. I like to design and implement efficient and elegant solutions to problems. I like to build full-blown end-to-end applications or even small scripts and utilities. I have a BS and MS in Computer Science.

My first computer was an IBM PS/1. This particular model had an Intel 80286 running at 10 MHz with 1 MB of RAM (upgraded from a meager 512 KB) and a 30 MB hard drive. It came with King’s Quest IV: The Perils of Rosella and Where in the U.S.A. Is Carmen Sandiego? on multiple floppy disks. Until that time, my only experience with computer games was Oregon Trail at school on an Apple IIGS that we were allowed to use perhaps once a year. I was fortunate to also have a Nintendo Entertainment System (NES), but computer games were different. At the time, computer games required some effort and knowledge of PCs to get them to work. You also had the ability to inspect the game files. So, while the NES was perfect for gaming, the computer was great for both gaming and tinkering.

Opening screen from King's Quest IV: The Perils of Rosella
The adventure begins! Opening screen from King's Quest IV: The Perils of Rosella.

I started programming at around 12 years old when I found a QBasic game called Gorillas (gorillas.bas) on my computer. I had upgraded the operating system to MS-DOS 6.0 and the game was buried somewhere in the file system. It was the first time I had seen actual source code and I probably spent more time trying to understand it rather than playing the game. I taught myself QBasic by attempting to modify the game physics and graphics. As computer game technology advanced, it drove me to keep learning about how computers work in order to get games to run on older hardware. Again, I probably spent more time trying to figure out IRQs and RAM disks to get Doom II, Duke Nukem 3D, and Star Wars: Dark Forces to run versus actually playing those games.

Opening screen from QBasic Gorillas (gorillas.bas)
Ready to use physics and throw some bananas. Opening screen from QBasic Gorillas (gorillas.bas).

This all led me to pursue a Computer Science degree. Computer Science must be all about programming and games, right? Well, it didn’t have too many games unless your idea of games is programming to structure data, sort data, and search data. So much sorting — bubble sort, merge sort, quick sort, insertion sort, selection sort and more! Don’t forget math. A lot of math. And physics. While that may not sound like fun to everyone, it does offer a logical approach to problem solving. That’s fun for me so I kept at it and earned a master’s degree in Computer Science.

What is this website?

This website generally focuses on programming and technology to solve problems and get things done. I don’t favor one platform or language over another so you’ll find posts covering Windows, Linux, Java, C++, VBA — whatever the best tool may be to solve a particular problem. I assume that if I wasn’t able to find an already built solution to a problem, then perhaps someone else is also out there searching for an answer to the same problem. I try to share solutions to help passersby avoid many hours of stumbling, but it mostly serves as a personal reference for when I forget how I did something. It’s a small addition to all of the great information posted by others which has saved me from many hours of stumbling.

I suppose it’s like the technology/programming version of "Sheldon Cooper Presents: Fun with Flags" from The Big Bang Theory.

This is a personal website and, as such, the posts represent my personal opinion. While I’ve tested and used the code posted on this website, I can’t guarantee that it will work in every possible scenario or configuration. All content is provided as is and should be used at your own risk with no warranties implied or expressed.