Is it possible to survive in Computer Science as a creative student?

For the past one and a half years , I was undecided in my major. I graduated in 2015 in High School. I changed from Biology to General Studies and then Computer Science major because thanks to my parents for recommending me to tell me to be a doctor, which I’m not happy with my poor decision making. I listened to my parents too much and I’m staying in community college for 3 and 1/2 years.

I go to SCCC and I wanted to transfer to Stony Brook. Changing my majors will take LONGER for me to get to a SUNY university. First, I’m unable to sign a joint admission with them because I thought you have to be over 24 credits, but no…you have to be less than 24 credits. So, I will have to find my way to get in there.

In the beginning when I attended SCCC, I did want to do something in the art major like graphic design or computer art, but couldn’t because it was in the other campus and I have to attend at this CC on the major they have available to me. I do not want to change any other major except the major that has Calculus. I didn’t want to go for engineering because it’s complicated for me to understand. I also hate physics because I never took physics in High School. I don’t know what physic is and I thought it’s about understanding the formula and math in physics. I’m too afraid, but I know you need to take it in computer science.

In Calculus I, I got an A and in Calculus II: I got a C. In Discrete Math for computer science, I have a B. Then, I took all the required courses for my degree which I have no problem with that except for my major. I’m back to level one in computer science. I’m 19 and I’m new at programming.

The problem is for me that I don’t know a lot about programming and take steps to build an algorithm. When I first take a computer science course, I withdraw because I have hard time making algorithm in Java programming and I overthink too much. I need to build my own confidence. I don’t know where to begin in programming. I want to learn ahead of my class too during the summer so I can be prepare for the next Computer Science course.

I’m a self-taught digital artist and I learned how to draw for five years already in high school. I know A LOT how to use Photoshop and other digital art programs. I love drawing and making arts on the computer, but java programming/ computer science is kind of new to me. You have to be good a math, logical, and good problem solving-thinking. I don’t know if that’s possible for me. I’m good on Calculus I, but not Calculus II because I got a C.

I’ve been creative for many years and I’m not being analytical enough. I used my imagination instead of thinking. I’m good at plugging in the formulas for variables and it’s like connecting the dots in Math. I understood how Java works, but Java programming is kind of like you have to build it like painting on a canvas. You have to put the puzzles into pieces together.

I tried to think of ways how to keep myself motivated in computer science, while I love art. I’m thinking about going to game design in the computer science field. I had a thought of making a Go Fish game with Java, but I don’t think I have the knowledge to do that yet.

My professor tells all of his CS students, “You must practice your algorithm.” My algorithm is illogical and how could I make computer science much easier for me? How do I improve my algorithm if I’m stuck as a creative student?

How can I advanced in computer science to understand much better? Plus, I will learn data structures, algorithm, Computer Architecture and Organization, Advanced Object-Oriented Programming, Object-Oriented Programming, and Fundamentals of Programming. Plus for Math: Applied Linear Algebra

I am not changing my major and I’m sticking with CS major. I want to buy a different book to learn Java while I wait for the spring semester to begin.

Thank you.

First of all, there’s no shame in taking longer than 2 years in community college and/or more than 4 years to graduate. I think the average time to college graduation these days is actually 5-6 years. It’s quite common to take longer than “projected,” and it’s fine to change your mind about what you want to do - better than getting a BS in biology and later realizing that you neither want nor need it.

The thing you need to know about programming is that it’s an iterative process. There’s a lot of failing, trying again, failing, trying again, ad nauseam. The thing you need to learn is that it is OKAY for your algorithm not to work the first or third or thirteenth them that you adjust it. Once you get used to the idea that programming is all about adjusting after lots of little failures until you get it to work…you can be more confident about your work.

Also, the secret is that software development is really about creativity.

You can teach a monkey to code (well, that’s an exaggeration, but you get it). The coding is a tool. It’s like writing, or public speaking, or statistics. Not that there’s not an art to it - there are more elegant ways to code and there are ugly/hacky ways to code. But ultimately, the coding is a tool to bring your ideas to life. The ideas are the important thing. Few people really care about the code behind Snapchat or Facebook or a Tesla’s internal computer. Those companies didn’t become top-notch because they have pretty code…it’s because of the creativity of their founders that made them create something that people could use, that fits a niche in their life. They just used coding to do it.

That’s especially true in game development (which is my field). Games are creative endeavors! And even our game developers are creative people who think of new solutions to make things work. Plus, the digital artists who work on games frequently know how to code, because you need computer science to work on digital art.

If you want to make a Go Fish game in Java, do it! Use it as a learning project. Maybe you don’t have enough knowledge yet, but who cares? The way to learn CS is to do CS. So hack something together, and maybe your first try will be really ugly and won’t work right. Secret: That’s the way every big video game you’ve ever played gets started, too. I work in UX research in games and the first iteration of video games are a MESS. And the second, and third, lol. Over time the games turn into something playable that looks nice, but they never start that way! But you will learn through the process of taking your game from something that’s kind of ugly and doesn’t really work the way you wanted it to to something that works better and looks better. You’ll learn from your mistakes, and you’ll learn how to fix them. Fixing mistakes is a core skill in coding.

You just started learning, so of course your algorithms are a bit hacky. Everyone’s code is really ugly when they first start. It gets better over time as you practice. You just have to keep telling yourself: I’m an intelligent person, I’m going to grasp this eventually. It just takes time.