Staring CS with no coding backgroundđź«°
Posted by Practical_Record_794@reddit | learnprogramming | View on Reddit | 19 comments
Hi I’m about to begin CS major at a community college, I need advice to fight with it. I have a few questions:
Where should I start? As no background about coding, i want to know how people do project or research,…
Also, how can i build my portfolio at year 1 to find internship early?
What are fields should i focus bc CS is wide?
thank youuuu for answeringđź«°
Humble_Warthog9711@reddit
You know what you should be doing. It's a matter of doing it. But there is no good reason therse days not to have programming experience well before startingÂ
quasar_ayush@reddit
Try not to burn yourself out. Take breaks but be consistent because that will be the only key you will have.
SkerdiBuilds@reddit
Good choice, cs one if best majors. Start with one language and small projects, then build a few real, simple apps you can explain clearly.
shaq-ille-oatmeal@reddit
you’re actually in a great spot, starting from zero is normal and honestly better than coming in with random habits
start simple and don’t try to learn everything. pick one language, python is perfect, and focus on basics like variables, loops, functions, and lists. but don’t stay in “learning mode” too long, start building tiny things early, even if they’re bad. calculator, to do app, basic game, anything
projects don’t come from knowing everything, they come from trying something slightly above your level and figuring it out as you go. that’s how everyone does it
for year 1 portfolio, don’t aim for big projects, aim for 3 to 5 small complete ones. put them on github, write a short readme, and make sure they actually run. consistency matters more than complexity
for internships early, what stands out is not “perfect code” but proof you can build and finish things
as for fields, don’t stress about choosing early. try a bit of everything, web, data, maybe some systems, and see what you enjoy. you’ll naturally gravitate toward one
the biggest mistake is overthinking and waiting till you feel ready. just start building, even if it’s messy, that’s how you get good fast
BizAlly@reddit
Pick Python, build small projects fast don’t just watch tutorials, actually make stuff. 3 finished projects + active GitHub > everything else; stop overthinking and start building.
Cool_Owl_375@reddit
First of all, focus on building CS fundamentals, which your college or any college won't ever focus on.
Best thing for this would be pursuing Harvard's CS50.... Its free to access unless you need a certificate of completion.
Do it first. Then we will be good to go, and you will get a direction about what domain you want to pursue...
cheesecakegood@reddit
Internships or jobs after only a single year? Honestly a full CS internship will be a reach. However, decent chance you can find something more adjacent. Never hurts to try and apply for stuff! Connections, if you have any, can help. In my experience it seems you're most ready to do an internship and actually be useful after year 2. The exception is that if some of the professors are doing research or run some kind of lab, sometimes they will take on a few students, so try and visit office hours if you can and build relationships, and then partway through the year let them know you are interested in that kind of thing and ask if they can point you anywhere.
patternrelay@reddit
I’d start with one language and build tiny projects fast, even simple stuff like a to-do app or calculator. Don’t overthink fields yet, just explore a bit. Portfolio early on is just proof you can finish things, not big complex systems.
Complete_Instance_18@reddit
Hey there! Starting CS without a background is totally normal,
TigerAnxious9161@reddit
Background doesn't matter until you are eager to learn.
therealmunchies@reddit
As you learn the foundations, include the “non-sexy” stuff like networking, virtualization, and infrastructure.
Lost-Discount4860@reddit
As far as fields you should focus on--well, first make sure you work hard, learn Python, C++, Java, along with the usual web development stuff like Javascript and CSS. I'm going through a phase where I only want to do web apps and APIs, and I'm using Python and SQLite for my backend.
And really have a good handle on at least those things. It seems like every day someone else comes in here asking if there's any point to learning programming or getting a CS degree because everything is AI generated now. Even if you do use AI to generate code, you're going to want to at least have enough skill to review code, troubleshoot, and code logic. AI can't replace ideas, so you need to be a creative person who likes learning new things all the time. If you're lucky enough to land a big job in the programming field, mostly what you'll do is maintaining/updating legacy code.
Here's where I am right now: I never took any courses, never got a degree. My master's degree is in music composition. I specialized in electronic music, so I had a close relationship with analog and digital synths and computers. Taught myself PureData, which was my gateway drug into other languages. I tried Swift and Objective C, just couldn't get a handle on it, then started messing around with Python. And that's what clicked!!! I was writing MIDI schedulers almost right away. My son wanted to do neural networks for a science project, so I learned TensorFlow. I got a job with a library where the cataloging department had a huge backlog. I wrote UI macro scripts to streamline copy-cataloging (copying external bibliographic records, importing them into the ILS, and adding items locally), moved a few thousand books, got fired because "nobody can possibly catalog that fast, not even our in-house cataloger." Got a job at a snack manufacturing plant, threw together some quick-and-dirty Swift code to develop an iPhone app to estimate how much product to make to fill orders, track where we were in production, and alert us when the run was completed. Nobody asked me to do that, but my boss noticed. I did some other things (organization/planning kinds of things) to streamline our workflow, reduce down time, reduce waste, achieve tighter USDA compliance, and improve efficiency. I've never worked in a plant in my life, it's just these kinds of things are instinctive. And I think it goes back to problem-solving in computer programming, plus how I'm used to approaching repetitive tasks from studying music, solving problems in music creation, and organizing/managing space from teaching high school music (band, general music). I don't like that I've bounced from job to job so quickly and had bad luck in music, but damnit I'm GOOD and I'm TALENTED. lol.
And here's the point: Employers NOTICE. Working to a high standard in an environment where people are control freaks and suspicious of anyone who shows above-average intelligence and/or talent will get you fired, which isn't entirely a bad thing. But move into the commercial world and use that mindset to make things better? That will get you a raise. So I'm about to move up from "cook" to...well, we're not sure yet, but basically inventory. I'll have more free time, so rather than slave over spreadsheets, I'm going to use my time to build a database and write Python to automate and manage it. Then I'm going to build a browser front end so anyone can interact with it, and MAYBE write something that will help us monitor raw materials consumption in real time.
You want to play a real game? Attack where the enemy isn't. In other words, you're headed for a world dominated by senior devs who think entry level jobs are being made redundant by AI. Don't play that game. Get in on the ground floor, blend in amongst your general labor and trade school grads, get callouses on your hands, then write some code to make everyone's life easier and boost efficiency. My main goal is to cut costs. So we'll see what happens!
Sweet_Witch@reddit
How should we know if you like mobile app development better than web development? Find what paths there are and think which one you like better, find more interesting. We do not have a crystal ball to tell what you will like.
Error-7-0-7-@reddit
2 to 3 solid programming projects that solve real world issues on your Github account. No more than 3 though.
AncientHominidNerd@reddit
Don’t need experience, that’s what school is for. If you want to get ahead of others with no experience I’d suggest learning Sentential logic because it’s the hidden backbone of programming. The logic is the same in every programming language, so if you know the logic then you can learn any language.
I’d also at least familiarize yourself with data structures and algorithms and search/sort algorithms. I’m not saying to learn everything about them but at least what they are and how they can be used to store data and solve problems.
ExtraTNT@reddit
If you haven’t already: switch to gnu/linux -> teaches a lot passively
Get basics of programming in, js is very good, as you can do oop, procedural and fp, python can do the same, but setup is bit more complex, syntax is very special and especially fp is pain…
Do your first few programs procedural, then revisit them and write it once functional and once object oriented
In my experience haskell is a language that teaches you more, than any other language. But haskell is fp only. Many programmers struggle with it, but if you are not deep into opp, it’s very accessible -> so pick it up soon
Have a look at git, git is very powerful and makes life much easier…
For uni: networking is very important, study groups can help you a lot, take the time to visit a few events early and actively approach others
Aglet_Green@reddit
Start with the basic programming fundamentals first: variables, loops, functions, conditionals, and simple problem-solving. Don’t worry yet about research, internships, or which field to specialize in. CS is very wide, and right now your main job is just to see whether you like programming and can build a strong foundation.
Once you are comfortable with the basics, then you can start making small projects and thinking about portfolios and internships.
Successful-Escape-74@reddit
You don't need to have a coding background to major in CS. You can finish a CS degree with only a couple classes of programming. There is much more involved in CS than just learning to code like learning the intricacies of how computers and networks work and digging into the theory of computing.
HighlightExpert6407@reddit
same boat few years back
start with basics first - python good for beginners, then maybe java when college starts
for portfolio just make small projects, put them in github. even simple calculator or basic website counts
focus on what interests you most - web dev, mobile apps, data stuff. try different things first year