How I got into Web Dev as a Computer Science Major
# From Computer Science to Web Development: My Journey
Hello everyone, my name is Chris. I’m kind of new to this meetup, so most of you probably haven’t seen me before or have seen me around but haven’t really talked to me. I’m currently studying computer science at OU, and I’ve noticed a general theme that for freeCodeCamp and around here in general, a lot of people either didn’t finish computer science in school or are coming from a different field. I wanted to share how I got started in web development while studying computer science in college so you can understand where I’m coming from.
## My College History
I was born and raised in Canada, the land of Canadian geese, mice, and maple syrup, among other things. After finishing high school in 2012, I moved to Oklahoma to live with my mom because I thought it’d be nice to attend college in the states. Since we lived really close to Edmond, I decided to attend UCO (University of Central Oklahoma) initially. There, I started studying electrical engineering for my first two semesters. That’s when I had my first programming and computer science experience through their engineering computing class, which was a required class for all engineering disciplines. They taught that class in C#, so after those first two semesters, I decided I wanted to do something more related to computers.
I switched to OU (University of Oklahoma) from UCO, where I’m now studying computer engineering. The computer engineering curriculum is basically the same as computer science for the first two years or so. So, I went through all their other Java courses and studied abroad for a year in 2015. I came back last September and that’s when I decided I didn’t want to work with hardware anymore; I wanted to focus more on computer science. Now, I’m fully a computer science major, and I’ll probably stick with this one—fingers crossed.
## How I Got Started in Web Development
I didn’t learn any HTML, CSS, or JavaScript in school. My first experience was actually through an internship. I got the internship through a personal connection through my mom at a company somewhat notorious around here called AlaMode. If you don’t know what AlaMode does, they sell software for real estate agents, appraisers, mortgage brokers, and one of their products is basically custom websites for these agents and brokers hosted on their custom CMS system.
As an intern, my job was to revamp their legacy Flash-based system, which had all these fancy animations and sound effects. The system was like a rich text editor where you could put in text, lists, tables, images, etc., and it would compile it into HTML. It worked great for simple text but got messy when adding styling. For example, they had a lot of default content pages laid out with tables or font tags everywhere. My task was to turn that code into clean HTML using Bootstrap.
I’ll admit, I didn’t know anything about web development before the internship. When I started, I had to learn HTML on the fly every day for the first week or two. It was challenging but also rewarding. I spent about two weeks transferring all their content pages into clean HTML and then started building template pages that customers could buy.
## Challenges in School
When it comes to how learning computer science at OU helped me in this internship, I have mixed feelings. OU is mostly a Java school; most of your classes will be in Java for the better part of your degree. While Java is a great language with a robust API and good type safety, students can get locked into thinking about how to write software in Java rather than understanding broader programming concepts.
I wish they had taught me some key things that would have been helpful. For one, learning different languages early on would have broadened my perspective. I was using Java basically the whole time except for one class. Good programming practices, like writing clean code and adding proper comments, were also not emphasized in a way that stuck with me. The professors told us to put comments in our code or risk losing marks, but there was no real emphasis on how to do it effectively.
Another issue was the lack of encouragement to improve past assignments or build upon previous work. Most projects felt like just another class assignment to be completed and then discarded. Additionally, there wasn’t much focus on the practical application of theory. For example, in my data structures class, we built a binary tree data structure as an assignment, but I never really understood when or why to use it beyond what was taught in class.
Version control was another area where I felt lacking. Git and GitHub are essential for collaboration and tracking progress, but OU didn’t teach us how to use them until much later in the degree, if at all. Collaboration itself was also an issue; most assignments were done individually, which doesn’t prepare you for working on a team or remotely.
## What Did Help
Despite these challenges, there were things that did help me. First and foremost, I got used to coding through my assignments. By the time I started my internship, coding didn’t feel foreign, and I was comfortable having others look at my work. This is something that might not happen as much if you’re learning on your own without feedback.
I also found that learning a new programming language wasn’t too bad once I understood the fundamentals of programming—like loops, conditionals, and so on. Once you have those basics down, it’s just a matter of looking up syntax. For example, my data structures class was taught in C++, and while the professor didn’t go into much detail about the language beyond basic syntax, understanding the underlying concepts made picking it up easier.
Finally, learning how to search for help was invaluable. Whether it was Googling solutions or using Stack Overflow, I had to rely on these resources heavily both during my studies and at my internship.
## Conclusion
Learning computer science didn’t directly help me in web development because I was working with HTML, CSS, and JavaScript—subjects not covered in school. My main message here is: don’t worry if you’re not a computer science major or if you stopped studying CS. It’s not a big deal, especially when working in something like front-end web development, which focuses more on design and building pages rather than optimizing algorithms or balancing binary trees.
What’s important is to focus on the fundamentals: how to write clean code, how to use version control, and how to collaborate with others on big projects. These skills will serve you well regardless of your background.
That’s it for me. Feel free to contact me if you have any questions!