KyleEdward.com

Header Animation:


Dark Theme:



About Me:

   My name is Kyle Edward Solomon. I like to program in my free time, but I am also currently going to school for computer science, so it is not only my hobby but also my career path as well. I am currently 26 years old in 2021 and have been interested in computers all my life but have been programming seriously only for the past 6 years or so. I enjoy making small 2D game engines in JavaScript for fun, since JavaScript was the first OOP (Object Oriented Programming) language that I learned and so I am most comfortable/experienced with it, but I also know many other languages as well. I aspire to one day write programs that people will use and enjoy regularly, and also to work as a part of a team of programmers on a larger project that I could never fathom of making alone, but this website is just a starting point for me.



Site Info:
   This website was created for fun, and also to practice what I have learned from the website development languages that I have been studying.
   The entire website started out as a blank .txt file and I have only used my own knowledge of the syntax used in HTML, CSS, and JavaScript to script the entire website.
   There are much easier and more efficient ways of developing a website now with help from website development software or UI of some type that make it easier for anyone to create a website. But I wanted to script this website entirely by hand so it could give me a more thorough understanding.
   This is a personal project that I attend to in my free time to help me better understand the proper structure and format for efficient programming as a website developer. I will continue to update this website with relevant content that I have finished creating moving forward.
   The website itself should be compatible with most modern browsers. However, the games on the project page are not as compatible and as such I recommend either using Google Chrome or Microsoft Edge if you play them (or anything running Chromium). other browsers like Firefox will still run the games but seems to suffer from performance issues, and if you are running Internet Explorer and not Edge then the games will not work at all as IE is incompatible with them. If you are wondering why programmatically that IE is not supported for my games, it is due to IE's lack of support for the keyword "class". The games are using classical inheritance and not a prototypal inheritance which is what IE expects. I use prototypal inheritance for any scripts running on the main website though which is why any browser should be compatible with any of the main website functionalities.
   I also tried my best to make my website as device friendly as possible by making the content on each page collapsible so that when viewing the content from a smaller viewport, the content will rescale accordingly to fit the display area. Some of the simpler games on this site also work on mobile devices and were designed with touch controls in mind, but others are too much for mobile browsers and thus they don't run very well, so some must be played on an actual computer.
   When I originally created this website, it had no purpose, and I had no idea what sort of content it should contain so I was just making it for fun and for the experience. But now it is just basically a storage cloud for my various projects that I want to be able to access at any time on any web capable device.
My Experience:
   I am currently working towards a bachelor's degree in the Computer Science field. A lot of my programming experience comes from my field of study, but a lot of it also comes from just watching videos on the internet, messing around with coding recreationally, and looking up solutions to problems online.
   I have experience in all the following areas of computer science:
  • HTML, CSS
  • Programming in JavaScript, Java, C++, C#, Visual Basic, and 16-bit Assembly on x86 Intel architecture
  • 2+ years of undergraduate level college training in math and computer science including the following concepts and theories:
    • algebra, trigonometry, calculus, physics, and discrete mathematics
    • control structures, program flow, basic data structures, abstract data structures, recursion, measures of algorithm efficiency and complexity, nature and design of algorithms, top-down development of programs
    • searching/sorting algorithms, databases
    • pointers, dynamic memory allocation
    • encapsulation, class hierarchy, classical inheritance, prototypal inheritance, abstraction, interfaces, object composition
    • number theory, set theory, hashing, RSA encryption, Huffman encoding, obfuscation
    • translating binary and hexadecimal to and from base 10, digital logic circuits and other digital components
    • experience in both high-level and low-level languages
    • basic components, basic machine architecture and design, primary and secondary memory, central processing unit, organization of a computer, machine representation of data number systems, machine representation of instructions and data addressing techniques, memory organization and execution of instructions at machine level
    • Creating software user manuals and programmer manuals
  • Adapting to new programming languages, but most comfortable programming in JavaScript/Java/C++
  • Website development and server hosting processes/maintenance
  • Slight experience in software such as Photoshop, Unity, and Blender
  • Mac/Windows Operating Systems