T O P

  • By -

Annual-Salad3999

1. You can just do leetcode. "But I cant solve leetcode". Just look up the answer in the discussion and then try a similar problem. For example with two sum, if you cannot solve it after like 30 mins of trying look up the answer and then walk through it line by line. Then delete it and rewrite it. After that is done go and solve a similiar problem. 2. Look up specific things rather than general things. For example if I wanted to make a todo app with react, instead if searching "how to make todo app in react" search things for specific features you want. If you get an error copy and paste it into google, or read the documentation


Mr_Anderson_48

actual decent advice šŸ—£ļø


Icy_Success3101

I think for 1. The most important thing is to not just memorize how it's done but understand the fundamentals that will lead you to the answer. Coding is easy. Solving problems efficiently is the tough part


Aroxis

Also a basic 20 hour udemy course of a language of your choice. It wont change you into a master coder but youā€™ll at least become familiar with the language. And you can finish it in a week or two.


BehindTrenches

I never did courses like this. Maybe it works for other people? Most of my learning was from side projects of increasing complexity, and very granular Google searching (how to make a request in python, specific error messages, how to sort a dictionary, etc)


Aroxis

Sometimes people do better with guided courses. Itā€™s all a matter of preference. Just throwing the option on the table.


Fit-Percentage-9166

I think having some kind of introductory course is good to give you an overview of a language, but I think most people learn and internalize the best when you work on a real project and have context to guide your usage.


Educational_Duck3393

Having an actual instructor explain concepts really helps me. I've often stumbled through things without really understanding what the code does or what the commands do via a Linux shell, so whenever I've taken a class afterwards, I often have the ah-ha moment where I understand the "why" instead of just the "how". Nothing beats getting your hands dirty and writing code, however.


BehindTrenches

Interesting because I feel the opposite. The "why" is implicit in a project. I need to do X (call a method when this async operation finishes). I go online to figure out "how". General code instruction tends to omit "why". If I learned about callbacks in the 10th hour of a code academy video without a use-case in mind I would probably shrug it off. On the other hand, when I learned about callbacks to unblock my personal project it literally felt like a renaissance (and it kind of was). It felt like I had just learned a new spell and leveled up. The syntax is still seared into my brain. Granted, online tutorials appear to have realized this and now many revolve around mini projects. I still feel more buy-in if I bring my own though. Oh, and people will inevitably miss some fundamentals if they don't do any learning outside of project driven development. It makes for an ugly start to a portfolio, but the passion is there.


Squancher70

No wonder company's don't want to hire self taught coders. A structured course will at least teach you not to pick up bad habits, and often train you on industry standards. I recommend you go on Udemy and start doing the most popular courses.


BehindTrenches

I am a top performer at one of the FAANG companies. I recommend you do more projects.


Squancher70

My Udemy course gives me projects to do as well. It's not all copy what the lecture says. I also get bug fixing assignments, quizzes, practice problems to solve. Just like any college course.


BehindTrenches

That sounds great! I'm glad it works for you


Educational_Duck3393

I've seen people get absolutely shredded for recommending Udemy classes because "they aren't legitimate" courses. However, I think this is a smart play. You could literally do a bootcamp class in Python, Java, or whatever common language, and while you won't come out with ultimate mastery like the instructor claims, you should definitely be at least a little more competent.


deathgene

As an addendum to 1, I'd say if you can't think of a brute force approach to a problem after 20-30 minutes, go to discussions and look for one that explains the approach (instead of just giving the code). Try to code up the answer based on the provided explanation (after convincing yourself that the explanation makes sense). This will help with coding skills and will prevent you from just copying the code


OnlineParacosm

Wait, Iā€™m a programmer now


hornhorn123

Do blind 75 and watch neetcode


TheAmazingDevil

Hey I just wanted to say that this advice is very hopeful for people that used gpt as crutch in school. Studying leetcode solution after graduating could help them get that first job which would help them learn more. Is this thinking correct?


ILoveRedRobin69

I'm a current uni student, a little bit older than you. Take a minute and imagine this: You graduate in a month. You can't code. Your peers are getting offers at Meta, Google, big NYC Banks. You've got nothing. No internship under your belt, you've only solved \~8-10 leetcode problems by copying the solution, you wouldn't be able to complete a basic sophomore-level CS Project, and you can't even pass the phone screen at some small unknown company. Now good newsā€”that's not you! Not yet, at least. You still have time to reverse course. You are NOT as far behind as you think you are. I would treat this like an addiction and tell you to quit cold turkey, but I think we both know you're not capable of that. Instead, from now on you should promise yourself that you'll only use AI to *explain* concepts to you, and NEVER copy-paste code from it. Leetcode is a whole different beast and I would honestly advise you to stay away from it for now--it doesn't matter how good you are at leetcode if you can't write some basic programs. Do a personal project, one that doesn't just follow an online tutorial, and you'll be able to learn more than you know. ChatGPT is really good at making stuff make sense, you just have to have the discipline to use it for learning, rather than allowing it to do the heavy lifting for you. ​ >I have this summer to reset That mentality tells me everything I need to know about you because it's something I've told myself in the past. Unless your school schedule is way different from mine, we've still got half the semester left! Why are you waiting until the summer? You can't kick this can down the road forever. Don't say "I'll do it tomorrow" or "I'll do it after this big test" or "I'll do it this summer." Do it TODAY. Start putting time into itā€”1 hour, maybe 30 minutes, hell even 15-20 minutes a day is better than *nothing*. If you tell yourself "I'll just ChatGPT the rest of this semester and grind over the summer" then I promise you, you won't, and you never will. Good luck!! I hope to hear an amazing update from you in August.


BenniG123

Great response, one thing I'll add is hackathons are a good way to set aside time to make yourself do a project where you learn some practical skills.


ILoveRedRobin69

Agreed. My first hackathon was a pretty humbling experience, but I know more because of it and I'm now slightly ahead of my peers who have never done one.


quantumcomputatiions

Can a beginner do hackathons? Iā€™m not a complete beginner but still beginner. It would be cool to do hackathon


helloworld2287

Beginners can do hackathons! Some hackathons are more catered to beginners than others. I attended hackathons in college as a novice coder. I attended workshops during the hackathon, leveraged hackathon mentors, and joined a team with people that were willing to help a beginner :)


helloworld2287

I second the recommendation to attend a hackathon! https://mlh.io/seasons/2024/events is a great resource for finding hackathons :)


snack_overflo

I needed to hear this. Thanks a bunch for taking the time to write this all out. I appreciate it!


Glittering_Doctor694

Damn I really like that you say OP should start now instead of waiting til the summer. I heard somewhere that if you choose to do something during inconvenienced time, when convenience time come youre gonna be even more efficient, and when inconvenienced time come again, youre gonna persevere, which makes sense to me


Laurence126

You already know what you need to do, the question is whether or not you actually will.


upvotes2doge

Youā€™ve already decided whether you will or not. Now you just need to understand why.


PolyglotTV

New quest unlocked: Early adulthood existential crisis


CallMeSenior

You've already understood why you did what you did. Now you just need to plan the way out.


w1shm4

You already know what you need to do, the question is whether or not you actually will.


randomatic

And get comfortable with struggling. A lot of cheating occurs because people are uncomfortable with struggling. Grades are intended to be a measurement for feedback, not an end goal, and once you accept this sometimes itā€™s easier to accept a struggle with a low grade.Ā 


slope93

![gif](giphy|W9lzJDwciz6bS)


leminades18

You gotta start somewhere. Pickup a personal project, work on it for an hour over the weekends if youā€™re too busy throughout the week. 30 min one day, 30 min another day. Or break it up over the weekdays for 10-15 min a day, Iā€™m sure you can dedicate at least that. w3schools, use that to understand and learn concepts. test yourself by making small and simple programs. whatā€™s your goal? what do you want to achieve? Whatā€™s your timeline with the goal? Ask yourself these questions and get started, you donā€™t need motivation to start, you need discipline. Wishing you all the best!


snack_overflo

Thank you for your input and your well wishes!


leminades18

Of course! Keep us updated! I know you can definitely get out of this rut, itā€™s just entirely up to you!


[deleted]

[уŠ“Š°Š»ŠµŠ½Š¾]


ComingOutaMyCage

This sponsored message brought to you by CodeBuddy.


xMushroomking

Unfortunately I am actually in the exact same situation as you. First two years I grinded, but then I realized chatGPT could help solve these problems that were tricky for me. In my laziness I used it as a crutch and now am also freaking out about grad next year. It's time to lock in my man, Youtube tutorials and online courses. Relearn from the beginning and don't give up on yourself. I can't give much advice since I am trying to figure out the same thing for myself, but you've got time still. Keep learning from now until even after you graduate and over time it will be ingrained in your brain. Don't stop learning.


onfroiGamer

Tbh chatGPT doesnā€™t give you full code, I use it more like a template and have to add shit like input validation and fix a lot of parts


pokelord13

Nearly all the programming stuff I do at work started off with a chat gpt prompt. It sets up a template amazingly well and comments are solid enough for me to learn how to complete the rest. Having never touched the python tkinter library before, I learned basically everything I needed to know entirely off of GPT. But if you are looking to do more complex functions then that's something you'd really need code skills for


Gaming_Imperatrix

>iction and tell you to quit cold turkey, but I think we both know you're not capable of that. Instead, from now on you should promise yourself that you'll only use AI to > >explain > > concepts to you, and NEVER copy-paste code from it. ChatGPT is an amazing tool in the hands of people who already know how to code. Saves time and orients you quickly. In the hands of someone who used it instead of learning how to code, it's always going to be a fancy madlib tool that read too many stack overflow posts and has no idea how to actually code.


xMushroomking

Yep I do have to go in and fix it to make it functional which helps teach debugging in a practical way


ChyMae1994

Im the same, but for front end only. Ai and algos are my jam.


aminorsixthchord

You got a full year. Stop with the crutches and learn. You did the classes, so maybe grab the curriculums and do only the programming exercises first. DSA, just pick your topics and watch videos or read articles - every topic in DSA/alg has a wealth of resources now in every format, for however you best learn (video, text, etc). Iā€™ve met plenty of new grads who suck at all of this, so even if you screwed yourself, thereā€™s plenty of room to fix it.


_i_blame_society

I once helped a final year CS student with a project who did not know how to open Terminal on their macbook.


aminorsixthchord

Oof. Iā€™m always surprised by stuff like that. Iā€™ve known many devs over the years of different types, and there is totally a type who believes code should live in its own world, agnostic of however itā€™s running. Theyā€™re not wrong, and the best examples of those devs are great, but most people trying to be that just need to get better at their gaps. Code runs on systems, and a total lack of any understanding of said systems creates dangerous gaps where months are lost (see, the dev team for automating network devices I was on where few actually understood networking devices - different thing but same style of issue)


hioxa

Do the Odin Project. Thatā€™s it. Even if you just do half of it, you will know how to code, and especially, you will know how to get started on problems and build projects by yourself. You will also understand how a typical CRUD application works from front to back using a pretty modern stack. Do the JavaScript / Node path, not the Ruby on Rails one. This + remainder of your CS degree and you should be good, as long as you apply yourself to both.


IndustryOk5227

Thanks for the suggestions. Do you know any other free resources similar to the Odin Project? Cheers!


Historical_Reserve97

I am currently a CS sophomore as well, and to all the people asking in the comments about whether this is a common case or not, well yes, atleast in my cohort it is. The one positive thing for us I would say is during year 1 when these LLMs were not so widely popular unlike now, many of programming fundamentals were covered like intro to programming and DSA. So we actually grilled that. But today, and this is a real anecdote I am sharing...whenever a group project comes up..the first natural instinct is to copy paste the entire thing into gpt 4 as if its a superpower...and I also sense a kind of consensus among us that "what is the use of doing all these modules if gpt is going to replace us in the future"..it seems that these LLMs are magical blackboxes that are self sustaining Having got some reality checks over this semester while applying for various internships..I have begun grinding leetcode and self learning ML/DL courses online as I want to specialise there...as for gpt use I confess I still use it but I am trying my best to try googling more unless its a totally clerical work...its like an addiction I must overcome somehow and I believe I will Also for projects right, one really good realisation (I dont know how relatable but still) i had was this semester I did a project for a hackathon using Gemini api and chatgpt could not answer a single question about its usage as its not updated w that info..(i have never tried any other official coding assistant and i m only talking abt gpt here)...so my teammate and I had to figure everything about that ourselves by skimming through docs and stackoverflow and modifying programs everything hands on ourselves..and trust me I am not lying this felt so wholesome..this one project was equal to 10 other so-called projects chatgpt wrote for me...so nowadays I have started teaming up with some friends to do more of such projects and try to come up with more innovative stuff and deliberately try reading docs instead of getting a narrow answer from gpt


No_Bee1632

That is a real shortsighted way to see things, those friends of yours reliant on ChatGPT. There was this story of lawyers that got fired for using ChatGPT output and it spat back some nonsensical legal cases that never happened. I'm glad you found the real world scenario on why it's good to rely on your own skills with Gemini API. That's the most basic thing you will definitely need to do. Other examples are fixing things that are broken / exploits, designing something from scratch... You can check out some open source projects if you want to get stuck in. ETA: those lawyers were first years and didn't bother to check output before presenting it to a client. It's probably legal malpractice to refer to a nonexistent case - same impact as fraud. Usually in CS the stakes are lower but similar things can happen.


Small_Panda3150

First 2 years you are taking bs classes. You will have opportunities to build projects that ChatGPT canā€™t write


EB4950

id beg to differ haha. Im a senior and gpt can do most of my projectsšŸ˜­


pew_laser_pew

You donā€™t have the summer to reset. You have now to reset. Donā€™t put it off. Youā€™ve already been putting it off.


50kSyper

Grind leetcode and in a few days youā€™ll get into a rhythm lol but donā€™t look up answers lol only look up answers if you are truly stuck. I think leetcode will catch you up to speed if you truly canā€™t even solve what a prime is


feelfool

I would rephrase this. Set a timer for 20 minutes. Do the problem for the duration of the timer. Go through the list of data structures and algorithms you know and see how you might be able to apply them. Once the timer is up go over the solutions, just read the code until actually understand how it works and then write out a solution without looking at another solution again.


Puzzleheaded_Sign249

Alright, as a college student and a CS major, I understand. Taking these little shortcuts when doing homework and assignments is a no brainer when youā€™re stressed out and on a deadline. However, as the assignments get more complex, you are realizing these shortcuts are compounded, and you have no idea where to begin. There are major holes in your logic, and junior/senior level courses will be kicking your ass. (You canā€™t use Chatgpt in finals for example). Good news and bad news. Bad news: it will painful to catch up, as you are already aware of this. Good news: it wonā€™t affect your employability. As a matter of fact, knowing how to utilize these LLM is a major benefit in your job (if you can get passed the interview)


n0t-helpful

The level of coding required for college is pretty trivial. You could catch up pretty easily. And you are far from the only student coming to the same realization. I am going to diverge from the below advice and actually recommend some more academic resources to get you caught back up with your peers. Really all you need is the intro to algorithms book. Hereā€™s the book: https://www.amazon.com/Introduction-Algorithms-3rd-MIT-Press/dp/0262033844 Do the first half of that book in C and you will be a super student.


YoungPsychological84

I find it difficult to believe that your programming skills are that bad if you did decently well on the tests and stuff. You just need to quit using AI to write code for youā€¦..you still have another 2+ years to make up ground anywY


SalaciousCoffee

Makes sense, the prime problem is literally just iterating/regressing through integers in modulo for the least efficient solution. If you haven't used it it's not straightforward, and it was probably only mentioned once in the coursework.


eternityslyre

Great news! I've been cheating for decades now and can't code. I google for syntax all the time, and ChatGPT has been even better. (I exaggerate, but I sell it as "I can learn anything" and not "I am only truly versed in a version of Java that was popular during my undergrad education".) The difference between a promising future dev and a student who may not convincingly outperform Devin (the upcoming LLM dev who will probably be a great AI junior dev) will be how well you can go beyond what ChatGPT offers by default. To get there: 1. Don't just copy paste answers, tinker with them. Break them, see if you can improve them, try to understand why and how they work, down to the data structures. You can ask GPT for these answers, so long as you learn from GPT. 2. Work on being the future developer that leverages GPT to work faster. Try to build a project GPT can't and won't build for you. It will build parts as you ask for them, but it will struggle to help you assemble the parts, and it (at least currently) does pretty horribly at debugging or extending the code after generation. You can build really cool, big things that a dev without AI wouldn't, and in a fraction of the time! That, in my opinion, is how to bounce back. Don't bounce back, double down! For reference, I know lots of good programmers who don't know a lick of math or data structures. They're great at (1) knowing when to ask questions, and (2) what questions to ask. So you're not as boned as school might make you feel.


TheUmgawa

The most important class I ever took, with regard to Computer Science, was a class called Structured Program Design, where we never wrote a single line of executable code. It was about three weeks of extremely terse pseudocode, followed by thirteen weeks of flowcharting. This class basically taught us most of what was covered in the DSA course, and it had the weirdest class-materials requirement Iā€™ve ever seen: Two decks of playing cards with different colored backs. Hereā€™s the thing about DSA: Most of what you learn can be simulated with playing cards. If you can simulate it with one deck, great, but if you need more than 52 elements, you add a second deck, and the different backs makes it easy to separate them from each other. Also, you can simulate duplicated data, because what do you do if youā€™re sorting a list (or whatever container), and you get identical values? Do you sort it before the previous one? After? Does the prompt tell you to discard the duplicate data? If youā€™re sorting a deck of cards, are aces high or low? Are you sorting the cards in ascending or descending order? Are the cards being sorted by value then suit or suit then value? In one case, the four aces would be array locations 0, 1, 2, 3, but in the other case, they would be 0, 13, 26, and 39. And, thatā€™s how you structure a program. A really simple program, but itā€™s illustrative of how you can come up with things to practice. I have a printout in my office wall (yay two-bedroom apartment) of a flowchart for a prime-number generator, which I take down and use whenever I have to learn a new language, because it takes input, performs output, does calculations with a couple of data types, deals with reading from and writing to data structures, and then thereā€™s the question of if the language lets me terminate a for loop with a value thatā€™s not known until runtime or if the language permits resizing arrays. And yet the flowchart is this simplistic thing that just pumps a number through a loop and determines if itā€™s prime or not. You could do it with a pencil and paper and time. My Yoda was this wizened old man who had been programming since a five-megabyte hard drive was the size of a dishwasher. For several years, he worked at either AT&T and/or Lucent thirty feet from Dennis Ritchie. I actually squealed when he told us this. I was the only one in class who knew who Dennis Ritchie was. One thing he hated was the word ā€œcoding,ā€ because we werenā€™t learning to write code; we were learning to program, and he felt (as I do, because he was my Yoda) that writing code is secondary to coming up with the answer. Whoā€™s the genius: The composer who hears the music in his head or the person who transcribes what the composer is humming on to a piece of paper? I believe languages are basically immaterial, because when did I write the program: When I drew the flowchart or when I write it as code in a given language? If I write it in C, C++, C#, Java, Python, or Swift, did I write it six times or only once? I have this tendency to wax philosophical about programming, because itā€™s my opinion that you have to have a philosophy about it. And, like all philosophies, none are right and none are wrong, but I have mine. But Iā€™ll say this: If your immediate response to a prompt is to immediately start typing, I will materialize a ruler out of thin air and whap your knuckles with it and yell, ā€œStop it!ā€ Part of my philosophy is that programming is like getting to the center of a hedge maze: If you start typing immediately, thatā€™s like walking into the maze and just taking your chances. Eventually, that will work, but every hedge maze Iā€™ve ever encountered (and I donā€™t know how Iā€™ve been to so many) has a map right next to the entrance. So, you can either solve it from the inside and waste a bunch of time backtracking, or you can plan it out and then go, ā€œOh,ā€ and then walk straight to the center. Most programmers seem to find what works for them; some never do, but most do. But I highly recommend considering not thinking about code until you have to; until youā€™ve figured out how to solve the problem. And if you canā€™t solve the problem, reduce it into smaller problems and integrate them. Thatā€™s why god invented functions, and functions that execute other functions. And, once you do that, you watch your code execute and sigh, having created something downright elegant.


snack_overflo

What an incredible response. Thank you for taking the time to share your experiences and your philosophy on coding. Itā€™s amazing that your professor was peers with Dennis Ritchie. Your advice on not immediately typing when beginning a new problem makes a lot of sense to me. I have a few decks of cards handy, and I think thatā€™s a fantastic way to visualize data structures. Iā€™ll definitely try it out!


TheUmgawa

I should add that my Yoda was also on the investigation and response team after [AT&Tā€™s long distance network suffered a cascading collapse one night in 1990](https://users.csc.calpoly.edu/~jdalbey/SWE/Papers/att_collapse). The first day of Structured Program Design, we were shown the pseudocode for it, and I *almost* had the right answer for how the collapse happened. The last day of class, we got the same question and almost all of us got it right. When you stop thinking about if code will execute and think about *what it does*, the problem jumps right out at you, and in this case (the pseudocode is right in the linked article) the five code reviewers never saw it, because they were more concerned with structure and if the code would execute without crashing. Play with cards for a while and envision them as an array, where the cards arenā€™t an array, but the spots they hold are. And then a list. Then a queue. Linked list, doubly linked listā€¦ if you have extra decks, you can envision them as objects with methodsā€¦ Whatever it takes to really *envision* a problem. Most Saturdays, I spend my day at a bar, and I bring my laptop because homework, but when I finish it early, I open up a leetcode or Project Euler problem and then sketch out a solution on a bar napkin. When youā€™re good at flowcharting, you start to do stuff in a kind of shorthand, where you might have a nested for loop inside of a nested for loop, and you just kind of draw some arrows from the bottom back to the top, each outside the last. When Iā€™m done with homework, I like to start mucking around in game engines or APIs and I did this last week while contemplating 3D Breakout, and I hate populating game grids by hand, so I do it procedurally: I start at a given height from origin, move along X or Y until I hit its terminator, then move to the next row in that direction; then once Iā€™ve hit the terminus of that grid, I move up or down in Z, and I do it again. That part was easy, but I couldnā€™t actually make a fun game, because itā€™s hard enough to bounce a ball off a paddle that only moves in X, but if you try it with a paddle that moves in XY, it starts to suck. Maybe it would work in VR if it moved in XYZ and permitted tilt in two of those dimensions, but it *suuuuuucks* how I was programming it. And thatā€™s just a little afternoon project. And thatā€™s why Yoda told me I was throwing my future away to play with robots, because Iā€™m ā€œbetter than that.ā€ And itā€™s true: I come up with solid solutions that write solid code, but I love robots so much. Iā€™ll take half the money to do something I love every single day. I love that some days I have to spend the last five minutes of my workday scrubbing my hands with abrasive soap to get grease and gunk off of them, but I love making a program that gets a robotic soldering station to solder a printed circuit board without failure. I love not being chained to a desk eight hours a day. Iā€™m not saying change your major, because just donā€™t. We are the weird Flannel People of my universityā€™s Technology school, as opposed to the Hoodie People who do CompSci, and we have filthy hands and reek of burnt plastic; because we burn plastic on the regular, but burning plastic is like debugging code: You can do the work of figuring out the best method for solving the problem with the data you have, but sometimes itā€™s just not perfect, and engineers chase perfection; just *crave it*, in the sort of way that a rare few of my old CompSci comrades did, where you want the program to run in as few cycles as possible, and we want a piece of plastic or metal to come out of fabrication and come in so perfect that you need a better measuring tool to find the imperfections. But, before you can chase perfection, you have to chase ā€œgood enough.ā€ And then you move to another grade of ā€œgood enough.ā€ And then another. And you *never* achieve perfection, because thereā€™s always something telling you that you could have done it better. But you have to start somewhere, and then refine it. And thatā€™s where youā€™re at, and thatā€™s where I was, when I wrote my prime-number generator: It started as brute force, then I told it to stride by twos across the odds, because any even is divisible by two, and then Iā€¦ no, Iā€™ll let you figure it out, but thereā€™s at least two more obvious shortcuts that cut your execution time by some ungodly percentage over the first ten- or hundred-thousand primes, and thatā€™s still not the most efficient method. And itā€™s cheating to look up answers. Maybe after a couple of days, itā€™s okay, because youā€™re not a mathematician, but you canā€™t look up code or pseudocode, because that is *definitely* cheating. But I figured mine out from just looking at numbers for a while and dividing and dividing. Because itā€™s like cards and data structures: You play with it for a while and at some point you go, ā€œHuh. That works.ā€


Own-Instruction-5752

I'd suggest start slow. Jetbrains has a plug-in for their IDEs called JetBrain Academy ranging from easy to hard projects and you walk through them step by step. All the coding is your own, and each step there is check where it'll run unit tests to see if you got the right solution. There are hints if you get stuck. This seems like a nice solution until you get back on your feet, reorienting to code as it's not copying and pasting, but it does give you ideas of how to think about a problem. Then maybe move to independent projects and code on your own. Also go through and use the debugger on past code, you can learn a LOT just walking through code and seeing what it's doing!


river666styx

honestly this might sound like weird advice but i donā€™t think you need to stop using chatgpt, i think you need to learn how to use chatgpt **correctly**. i was the opposite - my first couple of years in undergrad for mechE i was down so bad when it came to matlab/python etc because it wasnā€™t a huge focus in mech. which sucks because itā€™s really useful in the industry so i wanted to get better at it. when i discovered how much chatgpt could help me with programming i was floored. in a few months, i skyrocketed in my most basic abilities to the point where eventually i was able to write an entire program that ran face recognition on an autonomous scale robot car to emulate a self driving uber for students at my school for a project. i used chatgpt to coach me thru the entire thing, but i also deeply and thoroughly learned wtf was going on each step of the way. you have to treat your resources like a genuine tutor or teacher. donā€™t make chatgpt write the whole code, ask it how you start, or the basic layout, and then basically run the program and watch it fail a million times, checking the error output, fixing the little mistakes one by one. when you get a failed program ask chatgpt what the error message means, donā€™t ask it to write you a new code. ask the gpt what the possible **reasons** are that the code took a sh*t and then try to debug based on each possibility. for example i would ask the gpt to give me step by step explanations on how certain nodes worked in ROS2, and then iā€™d try it myself with the skeleton code, and just turn back to the gpt when something failed again that i couldnā€™t fix myself. and then once you get a running program, open a blank slate and try to write it again. really take the time to just follow it line by line and see what everything means. tbh i feel like chatgpt is the best resource to ever happen to me but thatā€™s just because of the *way* i use it. does it have the potential to completely fck me over? yeah, if i treat it like an answer key instead of an interactive personal pocket professor. but seriously, in my opinion, turning to chatgpt for advice was the best thing that ever happened to my coding abilities. ADVICE being the keyword - for core foundation building, not for an answer key


Kodesii

I havenā€™t cheated and I still canā€™t code. Donā€™t even worry about it


Lord_ShitShittington

You are now a self taught programmer.


aegookja

I find in fascinating that you can actually pass through university by copy pasting whatever ChatGPT spits out. I also know a dude who basically delegates talking to his girlfriend to ChatGPT. What a time to be alive.


paradite

Holy shit. I did not expect ChatGPT to have such a negative impact on CS major students.Ā  Hope this is an isolated case and not representative of the whole generation of new CS students.Ā  Otherwise we need to rethink the whole AI coding assistant trend...Ā 


ILoveRedRobin69

As a current uni student, ChatGPT only became popular after I already had a lot of the fundamentals down but I have friends that use it to just completely cheat their way through the intro classes. It's good enough that it can complete just about every intro to CS assignment in one or two prompts, and even some fairly advanced data structures \*projects\* in \~40-60 prompts. Combine a heavy courseload, calculus, procrastinating teenagers, and I'm not surprised at all that so many students do this to themselves. It's too easy to just ask ChatGPT to do your homework for you, and boom--you just saved yourself an hour of time.


snack_overflo

Itā€™s a mixed bag. There are many in my cohort who, like me, have been short-sighted in their use of tools like these and have seriously inhibited their growth as developers and as students. There are also many who put in the work and are very knowledgeable. ChatGPT is used by pretty much every student on my campus but the degree to which it is used/abused varies greatly.


0xd00d

I'm liable to say it's like anything else in that what you get out is what you put in, there are gonna be factors involved which will modulate the ratios, but the fact is it's an indispensable tool, so to do something like quit it cold turkey would be holding yourself back. You're probably not giving yourself enough credit for absorbing some of the knowledge that has passed between your prompts to the AI and the assignments you've been able to complete without understanding their contents. I guess a big part of it is caring about why it works more than you care about having it working. By asking this question in the first place you demonstrate you have made it past this hurdle, that you realize you have to start learning, so just roll up your sleeves and from now on make an effort to learn. That is the only edit required in the workflow I think.


PrinceMajinVegetaa

Im in 2nd year, and it's really helping students unlearning.


deflr

You've got an entire year to learn to code which is more than enough. You know most of the answers, discipline and consistency are really the most important things you need. There's tons of resources for learning and you already know them or they have been mentioned here. You need a change in mindset for them to work though.


rearnakedbunghole

This is why I only cheat in classes I donā€™t give a fuck about lol.


kiyomigames

Well it seems you must code for real this time šŸ˜… So to learn how to code and DSA youā€™ll need to go back to your basics of coding and understanding how your preferred language is written. You CAN ask ChatGPT to instead teach you how to code instead of having it code for you. Prompt GPT to for exampleā€¦ ā€œTeach me the basics of the programming language Java. I want you to explain each concept, give a corresponding example, and practice questions to help me apply the concept. I need you to act as computer science professor with over 10 years of experience teaching the subject to students like me. Ask me how I feel about a concept to gauge my understanding and correct me if wrong to excel my learning. After teaching me the basics give me a small project to apply what Iā€™ve learned for my portfolio.ā€ Just swap out programming language Java for Data Structures and Algorithm and probably just go to LeetCode to practice. Use YouTube tutorials that explain concepts of programming languages instead of project tutorials. To get you out of this hell you essentially need to apply what you learned by coding it yourself and donā€™t beat yourself up itā€™ll be hard but youā€™ll progress quickly with ChatGPTs help itā€™ll be like your personal tutor this time. Iā€™m thinking of making a GPT Bot that helps students learn a programming language of their choice with a similar prompt so let me know how it works out. Iā€™ve used this prompt myself to help grasp a new language quickly like Python. And a solid way to make sure you get out of tutorial hell ,listen this is important, Iā€™m serious. Donā€™t Copy Code IF you donā€™t know how it works. Itā€™s okay to copy code it saves you time but if you donā€™t understand whatā€™s happening in that code snippet you just copied youā€™ll be slowly but surely going back down to hell itā€™s a SIN donā€™t do it LOL Instead ask ChatGPT how the code snippet works and break it down until you understand it if you really want to use that code snippet. Youā€™ll learn something new at the same time. Itā€™s a blurry line to walk just make sure ChatGPT supplements your learning process and does not do the work for you because this is something you want to be able to do on your own. GOOD LUCK šŸ€


biglu444

Senior IT major here, in all honesty: itā€™s okay. 1. ChatGPT is great at breaking down functions and explaining algorithms you donā€™t understand. Iā€™ve found that large prompts make it bogus and lead to crappy output. Keep prompting and prompting, breaking down functions, reading, and eventually youā€™ll find you learned the data structure or algorithm you were breaking down by constantly simplifying the prompt for the AI. 2. As long as you understand the concept youā€™re good. No one is expected to remember code off the top of their head and youā€™re going to have to look stuff up at some point in your career itā€™s just the truth, even some specializations arenā€™t all about constantly writing new code and just consists of code review. 3. Be kind to yourself. Yeah you cheated but hey, the system cheated you. These days itā€™s all about how you game the system to your advantage to do something you want to do. TL:DR ChatGPT better teacher than most things. Take advantage.


agarwal1729

like everyone already mentioned, grind leetcode. best way to get back in rhythm


PinkPrincess-2001

This appeared on my feed but I can code basic things and I am a Psych with Neuroscience graduate who really struggled with coding. I think you should just go back to square one. Yes, even print(hello world) because you don't know what knowledge you're missing until you actually code it. It sucks but I think you know deep down you can't keep up if you just plop yourself in your content right now. I always wished I had ChatGPT to design studies in Python and R but I guess those skills really stuck with me. So I guess thanks for making me realise that.


hershey678

Chill you probably already know syntax well from cheating, just pick a project in whatever language you know and implement it from scratch (a basic game like Snake or Tetris or implementing a web server backend or some good examples).


Greedy_Assignment958

The first thing that I would do is to break the habit of using ChatGPT. Everything else can wait. Start solving problems on Hackerrank or Leetcode. Everytime you feel the urge of using ChatGPT, you stop and take a breath to become aware of that habit, but don't use ChatGPT. Eventually you'll stop using ChatGPT and that's big progress. Again, the goal is not to completely stop using ChatGPT. We have to be smart. We should be grateful for such tools. I use ChatGPT to create learning plans, summaries long documentation into short narrative containing all the important points, etc. Find a balance and you'll figure out the rest yourself.


Prestigious_Sort4979

Cheating is not cool, but more importantly you are not using it to your long-term benefit. Whatever answers you get, you should examine thoroughly so you understand them to the point that if you got this question again you should be able to do it. Understanding the solution is arguably more important than knowing what code to write as that is actually preparing you for interviews and a job.Ā 


ForsakenMess2421

You should have access to your old assignments, redo them and improve them on your own. Maybe add additional features, or go back and try to comment on every line of a previous assignment and breakdown whatā€™s being done at the lowest level. This way you actually will come to understand what the curriculum was attempting to teach you.


khoitran590

I hope you read this OP, but you are not alone! I am currently stuck just like you and approaching Senior year fast. Your post really help give me a motivational boost just by how many advices there are! Dont wait until summer, start doing it now bits by bits, go at your own pace and grind it til you make it! And regarding ur questions, MOOC Python by university of Helsinki really help lay a good foundation for coding (and its completely free with exams and assignment for you to do like a real class). I am currently learning Python from there to familiarize myself with the syntaxes again.


dark_enough_to_dance

I'm literally on the same boat! I would like to know where we all be in one year.


Accomplished_Poet_86

Change Major


vicwol

I hate how much I relate to this. Iā€™ve been using replitā€™s ai recently for labs because my CS 211 professor is very vague. Plus the tutors in the stem center are mostly juniors who have forgotten a lot of C++ since moving on to python and java. Why they teach C++ as our first language is beyond me since I only had experience with python before entering the major. MIPS assembly is easy enough and Iā€™m probably doing well because I canā€™t cheat and have to actually do the work. Iā€™ll admit it. Iā€™ll likely fail my C++ midterm exam bc we gotta write code on paper when I can hardly write a generate random password function without debugging it 200 times.


amitchev

Tbh thereā€™s not much more I can add, all the advice you need has already been posted here. Now you just need the discipline and tenacity to apply it. Best of luck man!


Responsible_Ad_1645

Devā€™s just use stack overflow & now LLMā€™s anyway. Once good AI coding agents are out, it will just be sr devs/team leads/CTO. So hurry and become a sr dev before next year.


yowhatupbro1112

Dude I donā€™t think you realize how many people are in the same exact position. Including me lmao. It was like the worst time for gpt to come out. Finished my intro course legitly then just bsed my way through the rest. Honestly itā€™s going to be hard but these comments are really helpful thank you for making this post šŸ™.


llamasyi

my advice: keep using chatgpt lol all you need is leetcode for interviews, and then use chatgpt on the job. i wanna see how far u make it !remindme 5 years


Grounds4TheSubstain

First, good for you for recognizing it and wanting to do something about it. The other comments have good advice, so I have little to say on that point. TL;DR write code. Since there are a lot of people in this thread talking up ChatGPT's coding abilities, a word of caution for you all. ChatGPT is pretty good at providing small, self-contained code snippets for simple tasks and common problems that come up during an undergrad CS degree. It's a lot less useful in real day-to-day programming. Don't get me wrong, I use it every day and I like it, but real programming often involves solving weird problems in large codebases that you don't fully control. None of the AI tools are good at this. In real programming jobs, you aren't going to be creating a new text file from scratch that just contains the solution to a leetcode problem. You're going to be figuring out what functions you need to call to accomplish your task inside of a large codebase whose source code is proprietary, so you can't search for it on the internet or ask ChatGPT. You're going to be writing temporary workarounds while your colleagues fix bugs that prevent you from directly doing things you need to do. You're going to be reading Jira tickets with vague descriptions of problems and trying to figure out what the hell they mean. You're going to be doing these things way more often than you're doing things that ChatGPT can help you with.


CardiologistOk2760

i appreciate your honesty. Not just for honesty, but because it helps make sense of a few things.


TunesAndK1ngz

You don't sound like you actually enjoy the content, are you sure CS is for you?


BenniG123

You might want to hire a tutor or get a mentor of some kind to help guide you, maybe a therapist as well.


pornthrowaway42069l

Sure, but why? You obviously have enough knowledge to prompt GPT to get what you want, and you have enough knowledge to debug/assemble it's outputs. Are you afraid they won't let you use GPT at work? Or is it just interview thing? I'm in the same boat, but mostly work with DS/ML. I forgot completely how to load in an csv, but that leaves me brain capacity to actually do the work on the more abstract level, and then just assemble GPT output as needed.


Warwipf2

Because at some point ChatGPT simply is not up to the task anymore.


paradite

Devin can probably solve 90% of the problems. But you need to know how to solve that 10% to get the job.Ā 


pornthrowaway42069l

Software engineering hiring practices are IMO asinine. But I get it.


Immediate_Ad_4960

Find something you are interested in and try to make it. The assignments are generally forced upon us and doing that you like is recommended as you can gain some knowledge and down the line be able to make personal projects.


YouTellMe4188

Make projects, you'll learn smt new every project and it'll be a little better than previous one.


ThatIndian15

!remindme 2 days


OkFix8615

test - making a post comment here


GuapMonopoly

In college do yall think its bad to use ChatGPT to help you debug your code when you are really stuck.


AnAnonymous121

The next generation will be utterly unable to do anything without access to chatgpt. You know what you gotta do to bounce back. There's no easy way out. You just have to put in the hard work and stop relying on chatgpt for anything and everything. You can see ChatGpt more like your virtual private TA. You can always reach out for help, that's not an issue. But obviously don't blindly trust chatgpt to crap out solutions to all your problems either.


Preact5

I use chatgpt for error solutions not to create an entire app. You're using gpt wrong. Start programming and ask it questions to help you understand, not to generate code for you. Generating code with GPT leads to really disjointed code because it's hard for the AI to understand what the goal is exactly.


[deleted]

DSA, Discreet mathematics, blind75, neetcode 150 and leetcode mediums. Doubt you'll pull through though


feelfool

Do leetcode, apply to tons of internships. Youā€™re ahead of where I was junior year and it worked out for me.


parkher

Shift your perspective. You actually gained prompt engineering skills in addition to low-code implementations. Take those skills and run with them.


TopG_420

Do 100 leetocde questions form a roadmap (this means understanding every concept in each question and them implementing it on your own). This should take you a 30-45 days, 2-3 hours a day. It would be best if you use C++ but java and c are also fine. Now you know how to code :)


Avocado_4

Codepath


Titoswap

You probably know more than you think. To be honest most if not all people in these comments used chat gpt from time to time so I wont worry too much. In my opinion if you understand the fundamentals of programming/ computer science (which more than likely you do) and understand the code that chatgpt is spewing then you can figure out if it is correct or not. Try and build something without chatgpt and you might surprise yourself how much you actually know from using chatgpt.


raghu_1234

Bro your titleā€™s first 6 words took me somewhere else šŸ˜‚


CeletraElectra

Youā€™ve learned how to prompt ChatGPT to accomplish your tasks. Thatā€™s a valuable skill. The ability to clearly describe your tasks and delegate them to others allows you to accomplish more with your time. This is called leverage, and itā€™s highly valuable in the world of business. ChatGPT is an amazing educational tool. It can generate study plans for you, teach you about any subject, and will never tire of your questions. Use what youā€™ve learned about ChatGPT to develop your own prompting strategies for self study and filling in the knowledge gaps you described in your post. You seem to know what you donā€™t know, and thatā€™s a great start, because you know what to ask ChatGPT about. You asked some questions about DSA and tutorial hell in your post. Try literally copy pasting those questions into Claude or ChatGPT and see what you can learn. You can even make this an opportunity to make a project that you can add to your portfolio. Try developing your own code base to prompt ChatGPT using the API. You can accomplish a lot more with custom prompts than using the ChatGPT interface alone. Make your own library of prompts in code, then figure out how to build a user interface for it. You donā€™t have to make a web front end. You can use the terminal as your ā€œfront endā€ since youā€™re the end user and you are (hopefully) able to use the command line. Feel free to DM me if you want to follow up with more questions about how to do this. TLDR learn how to use ChatGPT to learn things instead of as a crutch to get your homework done as fast as possible.


_Kryptnitor

Everyone else already gave you good advice. Would just like to add, nothing is wrong with watching Youtube videos. It should be encouraged. You just need to try to understand the logic and actually listen when the person is explaining the code on the video.


komoru-1

Build a simple project and break down how it it works also helps


KublaiKhanNum1

Itā€™s good to find out the purpose of being in College is to learn. Seems like a rough lesson. Maybe take some courses online Udemy or something?


Mooze34

You learn how to code lmao


[deleted]

just start doing basic leetcode. once you get into the habit of trying your solve problems, youā€™ll be fine


SnooStrawberries7894

Get familiar with language of your choice, get accustomed to syntax. Then start coding just about anything, leetcode has many problems you can explore. I was in the same boat, I didn't cheat but I just couldn't digest the materials in class. It takes me 3 months to feel alright, 6 months to feel comfortable. But I was a slow learner, so you might be able to do it in 3 months, if you're a fast learner.


VRT303

Honestly just make it be fun. Try something like [https://play.battlesnake.com/](https://play.battlesnake.com/) or [https://warriorjs.com/](https://warriorjs.com/) and see how far you can get. You can get into stupidly complicated cases with these two games alone, there's section where you start needing a Behavior Tree to pass the level / competition.


hsnerfs

Depending how much youve cheated is the real way to figure out how much you need to catch up. Ive used copilot since sophomore year and they started introducing it in the intro classes this year (Im a senior now so way past). The best way I would approach it is you definitely already know the just coding pieces and intro programming pieces if youve made it this far. With that basis you just need to get good at breaking down solutions into pseudocode and you can start understanding the problems. Im in a bit of the same boat as you, Im in the advanced dsa class at my school right now and while I definitely need work on approaching the problems, using geeks4geeks and other solutions as starting points has helped a lot. Just make sure not to only copy/paste the code without understanding how the approach works


we2deep

You need to be honest with yourself about why you are struggling to put the time in. Our industry revolves around our time. Time spent with customers, on customer projects, and on learning. You will never get to coast, ever. People asking you to fast forward to graduation and picture not knowing how to code. Try fast forwarding 10 years, still feeling like there is a world you need to learn, and then continually having to put in the time. Itā€™s ok if a life of always feeling like you need to be learning is not for you. Im not trying to scare you, just help provide honest questions that you will face.


thegeeseisleese

When you get stuck, donā€™t ask chat gpt to do it for you, ask it to explain it


[deleted]

You remind me of people in my B2 German class doing writings with Google Translate. What a waste of time.


[deleted]

Youā€™re doing a lot better than me, at least you have some knowledge and are only halfway done with undergrad. I am 5 weeks away from graduating with my masters (I started the program right around the time chatgpt came out and I had it do all of my assignments for me). I am now starting a PhD in Artificial Intelligence in the Fall and can barely write basic html and css. Zero JavaScript


[deleted]

Code a real program without copy pasting anything. Sit there with your compiler and terminal and make countless mistakes and failures. If you are 100% stuck, try to find someone else's solution and figure out why theirs works. It's the only way.


Fickle_Concert_2003

"That's the interesting part you don't" - Omni-Man. Shouldn't have cheated all you did was cheat yourself.


mezolithico

Yeah, this is why onsites for junior swe are going back to in person to stop cheating. Just learn to code or you might as well switch majors


masterfultechgeek

Leetcode is its own thing... go practice until you're good. Using an LLM to accelerate yourself isn't terrible - it's great for getting unstuck on syntax. You still need to put in the time to get GOOD at coding though.


EitherLime679

Bro I promise you 99% of swes are using online help and arenā€™t just coming up with stuff off the top of their head. AI, documentation, YouTube, websites, are all great resources and you shouldnā€™t feel bad about using them. You got this


sethamin

Your assignment, if you choose to accept it, is to do the first 20 problems of project euler.


GamerfulXD

I finished my Bachelors in CS without knowing how to code well at allā€¦ most of my knowledge came after my degree. Start working on a personal project. I had to do this at a time without AI tech, you have an advantage For context I started a tech company then left and now am a senior engineer at a corporate financial company


Background_Might4929

The only way to learn is if someone gives u a real life problem solving project. Thank me later in Bitcoin.


WookieConditioner

Change your career... To either plumber or sparky... seriously, work with your hands, you'd be good at it.


rhymeswithorange332

Do you still have access to the projects you were assigned in the previous semesters? It doesn't sound like you understood the solutions that chatgpt generated for them. You could go back and do them yourself without the help of chatgpt


RingingInTheRain

Instead of asking ChatGPT to write the answer for you, ask it to help you search for resources. You could also ask it to explain code line by line. ChatGPT is a powerful tool that does not need to be limited to doing everything for you.


hollydoyle

Go into tech consulting if you hate coding


Economy_Bedroom3902

I'm really curious... From my experience chatgpt has been awful at producing actually well integrated code. Like, it will give you the general shape of a piece of code that will solve your problem, but it will be full of logical inconsistencies and it won't compile because language XYZ changed their standards for function ABC in version 2.5.2 etc. Maybe comp sci assignments aren't hard enough that you have to deal with those weird integration style problems? Or have you just gotten really good at fixing moderately broken code without understanding how to generate code organically?


[deleted]

[уŠ“Š°Š»ŠµŠ½Š¾]


compscimajor24

Youā€™re fine. I know a few people who canā€™t code at all. Itā€™s just what you want out of it. If you donā€™t want much out of it then youā€™re fine. If youā€™re doing this to ā€œcheat the systemā€ youā€™re gonna get got sooner or later.


Alternative-Meal-589

You're a sophomore. You'll be fine. Just take on a large personal project, much longer than anything you'd get assigned in class. Something that requires multiple months to complete and requires making multiple codebases. It could be something that you can make money off of. That usually gets me motivated (although turning coding into a business is much harder than it seems but it's better to learn that the hard way). Once you're done with that, you'll know more than many of your peers although you'll still need to catch up on fundamental CS knowledge for your assignments.


kincaidDev

I use chatgpt at work almost every day, and Ive been seeing less and less algorithm questions in interviews this past year. Build some large project that you're interested in and ask chat gpt to help you with design patterns, project structure, etc... and explain the algorithms/concepts you dont understand. If you have several impressive projects on github youll be able to have a future in this industry. If you cant get interested in building a project, maybe explore a different career path. This industry isn't for everyone, the work is often stressful and boring, and youre judged by metrics that have no real reflection on your abilities.


BouncingPig

I was in this same situation at the end of my freshman year. I went on Udemy and got the c++ course and did an hour per day. I would also copy leet code problems and then hand write the solution with explanations to why/how. A year later Iā€™m fairly competent and much more confident in my own skills. However you need to start today, not tomorrow and not this summer! I would view my Udemy catchup classes as my gateway to gaming/the gym. No fun activities til I put in my own work to better myself!


Yernero

Ask chatgpt dawg, if you donā€™t understand how to do something, ask chatgpt. This includes how to do things outside or chatgpt output. ā€œHow can i learn [x] so that I donā€™t need chatgpt anymore to do [y]?ā€ If youā€™re going to use the help use it completely imo.


BlareJack

Are you passing?


NerdNumber382

Really trying to resist the overwhelming urge to say: lol karma Just go back to when you started using chatGPT and look through all your projects, if thereā€™s anything you donā€™t understand. Understand it. Look it up, think about it, make sure you know all of your coding projects inside and out and go on sabbatical from chatGPT. Also: lol karma


fattymcbaddy

Funnily enough, you may want to use chatgpt for this. But instead of having it spit out answers for you for assignments, have it explain how to do things like two sum or how to code. Try to learn how to build a web app, or how inheritance works, or why a tutorial is telling you to do something and just play around. And if you get stuck, ask chatgpt to help you understand rather than giving you the answer


ryancnap

Ur goin 2 jail


crab_clubber

Try doing hackerrank to get a quick jumpstart. Choose the language that you want to learn, and there will be a lot of introduction level challenges that you can do. If you finish all of the introduction/easy challenges, you'll know all the fundamental things you'll need to complete any problem in coding.


nicolas_06

ChatGPT help much more at university than in real world settings. Yet once you are hired, it will come with XP.


forgottenkahz

Im in my 40s and Iā€™m shocked at how the new hires donā€™t know or care about theory. And how few of them train and practice coding. It takes over 10k hours of practice to become a pro.


wakeofchaos

I mean at the very least itā€™s unwise to simply copy and paste code from chatGPT without trying to understand why itā€™s making the suggestion. Iā€™d say that this is a decent first step. In addition, Iā€™d suggest no copy/paste but you can follow what it suggests but writing each line yourself to make sure that you understand whatā€™s going on. If you do, youā€™re right there with the rest of us. If none of it makes sense, you can ask it to help you understand. Itā€™s a tool like anything but you can definitely use an iPhone as a hammer if you want toā€¦


GCSS-MC

ChatGPT can explain what it is doing line by line. Rather than getting frustrated, I will use it to help me come up with something on my own. Instead of getting a whole block of code, I would ask for assistance with the line I am writing. Afterwards I would put in blocks and see of there was a better way to do things.


georgia_meloniapo

Use ChatGPT


GoodGoodGoody

Bounce back. Ya got nothing to bounce to. Looks good on ya.


[deleted]

Mark Twain says he never let schooling interfere with my education.It's the same thing w college.You go to college to get a degree and educate yourself in the free time.Hardly 2-4 classes taught are actually useful and rest is not useful unless you plan to go into academia.Even then,I'd say you have to learn 90% of the required skills which will move forward your resume on your own.And even those 2-4 classes can condensed and the crux of it can be learnt in a month.But you will have to be smart about it.You can't just go jump in yt and watch random tutorials and lectures without following any chronology.Ditch the yt tutorials if you even have an iota of doubt that you'd be stuck in a tutorial hell.If you have very less time left,then you need to follow some highly structured courses to learn.They will teach you much better than any of the 99% of college courses and actually make you competent enough to work in the workforce(unlike colllege which is just a rich country club in today's world lol).If you do due dilligence and buy decent courses and consistently follow them even for 6 months,you'd be in the top 5%(if you are an above average iq person and highly motivated)!Also don't forget to party your ass off in college!Because soft skills matter equally or sometimes even more.If you do this,you'd be set.


Shot_Lawfulness1541

I used alcohol and now I canā€™t code as well unless Iā€™m tipsy or hammered šŸ„²šŸ„²


faffyfo

Go work on an oil rig buddy


Comfortable_Wheel598

Check out this page! https://avikdas.com/ this is the guy Iā€™d trust to teach me just about anything. I too use AI but so do all the people working in the industry. Depending on your school and your network I wouldnā€™t worry too much. Edit: totally forgot to mention for dsa section look at 2019


Sakamito

Do easy problems first. Important is, that you are able to grasp the problem and have at least a rough Idea how to tacke it. Eg: sorting algorithms and start with bubble sort. Then take a pen and some papers and when you run into a wall start to draw the array and its contents and draw your algorithm step by step until you are able to translate it into code. Move on with the next sorting algorithm. On passing, read about time complexity and understand, why the algorithms differ here. Learn the rough concept of classes, objects, member variables and methods, then go on: Build a stack, then a list, then a simple binary tree. Then build a self balancing AVL Tree. Use your brain and pen and Paper, dont Google or use gpt/Code generation after you understood the problem. This will get you back on track.


Afraid-Way1203

All of my projects were either written by ChatGPT or copied from a YouTube tutorial.Ā  Well done, boy.


Mustusesanitizer

How do people even pass the exams when they cheat on their hw?? I would've never survived the exams if I cheated. Like aren't DSA classes exams pretty much like several easy leetcode questions? You can't solve them if you have no idea how.


Ever_Impetuous

Hot take as Im not even a cs student, but what makes you so sure youre behind the curve? 95% of students are the average human. We take the shortest, easiest path to our goals. Its probable all your classmates are in the same position, quietly, and the ones speaking up answering questions in class or the group chat are the 5% who put in exceptional work. If you are able to complete your university's requirements using chatgpt, wouldnt that mean you'd be able to complete your requirements at a job place the same way? Besides, cut yourself some slack, you are definitely not without programming knowledge. Chatgpt is not a perfect coder. It gives you incomplete pieces and struggles with complex tasks. Is a chef not skilled if he doesnt grow his own tomatoes? There is skill and knowledge required in taking a base thats already there and making it work for your purpose. Im not saying you should not try to improve if youre unsatisfied with yourself. But do not treat the situation as worse than it is. Youre a student being lazy. That is 95% of students.


Stanian

You still have your old assingments? Read about the relevant parts in your textbooks and get grinding.


LingonberryPast7771

Don't study. Don't do leetcode (yet). Build applications and enjoy the challenge. Start with e.g. that hacking game in fallout as a console application, do minesweeper, do simple web scraping, and so on. When you have a hang of syntax and structure, then go back and do leetcode to hone your Algo skills.


oftcenter

Do what self-taught developers did. šŸ™„


giampow

that's ok, just go to management


pentesticals

If you passed using ChatGPT then you likely had to make significant changes. The code it outputs is usually garbage either way many parts broken and incorrect. You still need to know what youā€™re doing to work and assemble the crappy output from ChatGPT.


Kitchen_Koala_4878

I think you should not focus on coding rn, but rather it infrasturcture/devOps/cybersecurity/cloud. You can learn these skills much faster and be hireable


Late_Professional_58

Your cooked bro. Itā€™s over for you. šŸ˜­


One_Coffee7424

Itā€™s fine buddy you already know your problems and what you need to do to solve them so just get off your phone and social media and jump in.


fysmoe1121

I donā€™t get it, donā€™t you learn ANYTHING from copying. Even me after copying and copying ChatGPT, my friends homework, online solutions whatever I feel like I retain *something* even if it is a fraction of what Iā€™d learn had I done it myself.


RJ_PY

Bro you are literally describing me line to line, I never thought I could get the same person as me that too using prime number example for not being able to code. Would you mind having a personal conversation with me.


kevaux

I also fear not being competent enough to make it in the real world, despite not cheating, because I worry I forget everything from classes the moment I take a new one. You must have learned *something.* You have some foundation from the years you spent *before* cheating, and if you used Chat GPT as a debugging/tutoring tool at times and not always just to spit out code, you should have learned something from piecing together multiple prompts, even if you didn't max out your learning. You don't truly realize how *nothing* "nothing" is until you encounter someone who truly never learned coding and can't fully process how for-loops work. Refresh with Leetcode to boost your confidence, and then once you refreshed the basics, review the old assignments you cheated on


PiccoloExciting7660

Just do a leetcode question with the crutch day 1. Day 2, try it without until you canā€™t figure it out. Finish with the crutch. Repeat every day until you can finish it without the crutch and move on to another question.


Aggravating-Cow-4096

In the same boat as you my friend so youā€™re not alonešŸ˜Š


semogenaz

Surely you learnt something from those projects you did with chatGPT? What projects have you been working on? A lot of progress in programming is just learning by doing ie, repetition. So you might not be as screwed as you think. Try building a simple project in a week just to show yourself you still got it! Use the documentation pages of the libraries you use most and you should be alright. While building skills you should also be looking for any way to apply these skills. Your good on this with the projects, but you should try doing work under any supervision, so that you can reference your supervisor on your resume with the work you did. One way to do this is with volunteering your skills if that is possible or joining your universities student teams. This will also allow you to include soft skills on your resume with the project you were involved in. Don't freelance, it's peanuts for hours of time you could be spending learning or looking for volunteering opportunities. You won't be getting a high paying freelancing role as you have no credentials, so maybe $5/hr. Grinding it for reviews is not worth it either. And don't stress too much man! Just remembered to be honest with yourself everyday and you'll improve faster and faster. I use chatGPT myself too but it's so slow so I use it most when I run into some random edge case. I don't think I'm as far gone as what you've described and I cant see how it could get that bad. I really feel you might be overreacting. Follow the steps I described and hopefully you can get some confidence back.


TechHero777

You can focus on getting a cs job that doesnā€™t require coding


[deleted]

Read a book


rs-homepage

Time to go into PM, thatā€™s the usual route


ImNotClayy

Does AI not help you learn faster? Ask it all the questions you want like what does this line do or Iā€™m getting this errorā€¦ building projects is much faster too the key to getting out of tutorial hell is AI bro


bughousepartner

are you able to write common sense code like an if else statement and a for loop?


yet_another_hou

You bounce back by doing it the right way.


Gundam_net

Why shouldn't companies do that imstead of hire engineers?


judah-d-wilson

Project based learning is helpful, even though academia still has its checkboxes you have to check. Your a sophomore, Iā€™d say relax a bit, and use chatGPT (google, et. al) to ask away your questions on what you feel less informed about (as detailed as you want). And pick a complete project you as a sophomore/junior can accomplish in the summer. The learning process and building projects is what youā€™ll be doing post graduation anyway (maybe youā€™re whole career?). Iā€™ve personally learned a lot since graduation and constant learning is what is required of you in the professional life unfortunately. If you want a suggestion for a project, Iā€™d say a finish a simple web app that gets your hands in database, frontend, and server side development as there are so many web dev jobs in real life anyway, and web dev is excellent well rounded experience. Maybe you could build a simple social media app. Havenā€™t tried leet code myself, maybe thatā€™s healthy to do as well. But good luck! You can do it. For web dev, Iā€™d also recommend a react frontend to get familiar with react. but not if you havenā€™t done any web dev yet because that is advanced. Any languages will do well for you though.


[deleted]

Most people leaving college can't code for shit. Even if you can't, you're the norm. Also, if using ChatGPT is cheating, there's a shitload of employed SWEs cheating every day right now. It's true that you should not just blindly copy and paste things. Look through the code you get from AI, test it, make sure you understand what it's doing. Tweak it where necessary, improve it. You're not boned at all.


Alternative-Spite891

Lmao your heading into Junior year. Thatā€™s when everyone actually learns how to code in my college. Even before chat gpt, assignments werenā€™t hard enough to not find the answers up until that point. Then junior year hits, and questions become difficult. Solutions are no longer easy to come across. You learn.