This is never worth it. Thoughts about cheating in computer science classes.

แชร์
ฝัง
  • เผยแพร่เมื่อ 8 ก.ย. 2024
  • Patreon ➤ / jacobsorber
    Courses ➤ jacobsorber.th...
    Website ➤ www.jacobsorbe...
    ---
    .
    ***
    Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
    About me: I'm a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
    More about me and what I do:
    www.jacobsorbe...
    people.cs.clem...
    persist.cs.clem...
    To Support the Channel:
    + like, subscribe, spread the word
    + contribute via Patreon --- [ / jacobsorber ]
    + rep the channel with nerdy merch --- [teespring.com/...]
    Source code is also available to Patreon supporters. --- [jsorber-youtub...]
    Want me to review your code?
    Email the code to js.reviews.code@gmail.com. Code should be simple and in one of the following languages: C, C++, python, java, ruby. You must be the author of the code and have rights to post it. Please include the following statement in your email: "I attest that this is my code, and I hereby give Jacob Sorber the right to use, review, post, comment on, and modify this code on his videos."
    You can also find more info about code reviews here.
    • I want to review your ...

ความคิดเห็น • 69

  • @ttc0419
    @ttc0419 5 ปีที่แล้ว +90

    “Your degree may get you hired, but I am trying not to get you fired” - Jacob

  • @GaussianBluff
    @GaussianBluff 5 ปีที่แล้ว +47

    I agree that integrity is vital. I always check my students' MD5 and SHA1 before any exams.

    • @JacobSorber
      @JacobSorber  5 ปีที่แล้ว +23

      I don't know. Machines are getting more powerful. Maybe you should up it to SHA256 or SHA512. :)

    • @4zv4l38
      @4zv4l38 2 ปีที่แล้ว +1

      May I ask what do you check with md5 or sha1 and how does it help from finding cheater ? Since the checksum changes depending on what's on the file right ?

    • @GaussianBluff
      @GaussianBluff 2 ปีที่แล้ว +15

      @@4zv4l38 It's a joke about the double meaning of integrity: The video is about moral integrity; the algos I list check file integrity.

    • @martiananomaly
      @martiananomaly 2 ปีที่แล้ว

      lmfaoo

    • @fosres
      @fosres 10 หลายเดือนก่อน

      Both hashing algorithms are now outdated

  • @wandererstraining
    @wandererstraining 2 ปีที่แล้ว +4

    I read an old article by a recruiter saying that an alarming number of computer science graduates that were applying couldn't write a fizzbang program in the language of their choice during an interview. I thought that was an outrageous claim, so I asked about it to one of my trainees (in gymnastics) who's studying computer science in university. He was also baffled by it, but after thinking for a couple of seconds, he said "Yeah, some people cheat and get their degree like that. Probably same people, but they're not as frequent as the article implies." It's pretty pathetic. In gymnastics, those who cheat during training don't make it very far, either.

  • @AliAkbarFaiz
    @AliAkbarFaiz 3 ปีที่แล้ว +8

    Quality content deserves so much more appreciation

  • @PraneshArry
    @PraneshArry 4 ปีที่แล้ว +6

    I given so many tests in my high school, like I am in 12th grade, i am actually bored passing tests, i have a test tomorrow so yeah i thought of trying and bypassing all the ways teachers catch a copied code idk man the level over here is too low, how many times do we have to make the same console application,its so repetitive that i can probably just make another application to write code for me, saves time and energy. But after watching this video, you make a lot of sense ngl.

  • @ropersonline
    @ropersonline 4 ปีที่แล้ว +26

    Based on what you describe I find it potentially difficult to discern where that line is between learning and cheating. After all, most learning starts out as monkey see, monkey do. Suppose I find a really elegant little function or hack on stackexchange or some such place. I read it, I understand it, and I conclude, hey, that's way more elegant than my inferior approach. Am I barred from including the better solution? Do I have to try and present a sedan chair because I wasn't first to invent the wheel? When does this sort of learning from others and reinventing the wheel become cheating? If I document it and say, this is based on a function I found here, can I include it then?

    • @CoolKoon
      @CoolKoon 3 ปีที่แล้ว +3

      I think the point he tried to make is that what (some?) students do is to try and make a verbatim copy of stuff they found on stackexchange and then pass it off as their own (and probably say "I'll just change the variable names, he will never know" too). Of course you're not allowed to do this, because that's cheating and didn't demonstrate ANY thought on your side. However when you analyze the code and will attempt to re-implement it chances are that the pattern of your code will be slightly different from the original (at least in C).

    • @ropersonline
      @ropersonline 3 ปีที่แล้ว +3

      @@CoolKoon It depends. There's a neat way to do formatted printing of binary numbers I learned from some guy on stackexchange, and I don't see why I would want to significantly change that function. Literally the only reason to change it would be intentional obfuscation. Sometimes you're not going to top what's already there, because let's be honest, it'd be totally over-the-top to expect your novice programmer to always be the smartest kid in the room. Granted, there are people who are one in a million, but you can't make that the standard for everyone to live up to.

    • @casperes0912
      @casperes0912 3 ปีที่แล้ว +4

      Do you learn from reading how to implement a function on Stack and acknowledge where you got it from? Good. Do you clone a git repo, change all the names in it to be your own to take the credit for other people’s work? Bad

    • @ropersonline
      @ropersonline 3 ปีที่แล้ว +2

      @@casperes0912 That sounds like a decent plan. However, there are reasons why I have a special hatred in my heart for StackExchange, assuming that's what you were referring to.

    • @casperes0912
      @casperes0912 3 ปีที่แล้ว +1

      @@ropersonline yes stackexchange. It’s so ubiquitous I just refer to it as stack haha. It’s got good and bad sides to it

  • @andrewfischer-garbutt2867
    @andrewfischer-garbutt2867 4 ปีที่แล้ว +3

    This is great video and I completely agree. Cheating is a horrible thing for everyone involved.

  • @mattbaca7835
    @mattbaca7835 3 ปีที่แล้ว +1

    Great video! I'm running an intensive series for the MS programs at UC Irvine's School of Information and Computer Science, and will be assigning this to my students. Nice resource from the professor's perspective!

  • @belesiu
    @belesiu 3 ปีที่แล้ว +1

    Jacob! Great content; been binge watching them during the break and I’m very much enjoying and learning from them. You’re spot-on wrt to cheating. In my career, I’ve interviewed hundreds, if not thousands, of graduates from very good engineering schools and I’ve always been astonished by how many of those kids with outstanding grades just interview poorly. My conclusion is that for some reason the fundamentals just didn’t stick and to me that’s the most important skill (along with being a life long learner). Now I’m wondering if these graduates took shortcuts to get through their classes. Thanks again for the videos!

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว +1

      Thanks, Jim. And, you're welcome. Glad I could help.

  • @henryrodriguez3444
    @henryrodriguez3444 2 ปีที่แล้ว +1

    "A degree may get you hired! But I'm trying not to get you fired." 💎

  • @AliAkbarFaiz
    @AliAkbarFaiz 3 ปีที่แล้ว +1

    I absolutely stan u sir. Just amazing videos. I came for getting info on signals but then looked up to more videos and your videos have helped me alot especially to improve my code. Keep up the good work love from India ❤️❤️

    • @JacobSorber
      @JacobSorber  3 ปีที่แล้ว +2

      Thanks! Glad I could help.

  • @brianfiszman3179
    @brianfiszman3179 5 ปีที่แล้ว +7

    Jacob, I would like to know more about structuring the files in a C project. I don't know if it would fit a video but every time I start a project, no matter the language, I start wondering how to order the files and the structure of the project when I start working with lots of source files.

  • @CoolKoon
    @CoolKoon 3 ปีที่แล้ว +2

    If somebody intends to earn a CS degree by cheating their way through the exams then that begs the question that why the hell is he there in the first place.

    • @CoolKoon
      @CoolKoon 3 ปีที่แล้ว +1

      @@rosewhip5332 If you'd ever work at a software company you'd quickly realize that it does matter and a LOT. Not understanding most of that stuff greatly hinders one's ability to comprehend all the pre-existing code and pretty much disables their capability to support or expand it/add new features to it.

    • @MinecraftMP4
      @MinecraftMP4 ปีที่แล้ว

      Is it fine if I cheat cuz stuff is due then self learn later?

  • @loc4725
    @loc4725 ปีที่แล้ว

    On the flip side an institution which gives students grades they really shouldn't be entitled to has the same effect.
    Back when I went to University I started to suspect that those doing the Degree course were being treated _very_ leniently. I couldn't prove it but some of the students who claimed to be doing well just didn't have the knowledge I'd expect and whilst the teaching at that PoS institution was very poor they still shouldn't have been that bad. Then I did some team work with them. Oh. My. God. Most only turned up the first and last days, they didn't listen to instructions and the quality of their work... To give an example the best degree student in the group submitted only *half* the agreed work and even then it was the easy bit.
    He scored 80%.
    After graduating they sent me a copy of their alumni magazine containing amongst other things a kind of 'where are they now' section. Not one person in the magazine who took the Computing Degree course was working with computers. Employers will find out, and when they do your Degree will be an unsightly stain on your CV / résumé.

  • @JohnHollowell
    @JohnHollowell 5 ปีที่แล้ว +6

    Yeah if you are gonna cheat, cheating in the subject where all the cheat detecting software in the world is created is not a great idea.

  • @DD_DripGod
    @DD_DripGod 2 ปีที่แล้ว

    I use codequiry to check if my code has any marked code that is plagiarised, instructors use it too, it checks on the web if your code was copied

  • @JoaoMartins-or6pq
    @JoaoMartins-or6pq 5 ปีที่แล้ว +3

    Some subjects are just boring, unfulfilling, difficult, useless, outdated and have horrible teachers. So why bother?! If every teacher was like you even the most useless and uninteresting subject would not be a problem. I agree with you that students should learn and pass instead of just passing. But with some subjects it's just not possible because of the factors I've mentioned above. I think the problem is not the students but the system.

    • @JacobSorber
      @JacobSorber  5 ปีที่แล้ว +8

      So, are you're saying that if a student takes a boring, unfulfilling, difficult, useless, outdated class with a horrible teacher, he or she has no choice but to cheat? I don't think so. Yes, avoid classes like this at all costs, but I think reason #3 still holds (at the very least).

    • @SoDamnMetal
      @SoDamnMetal 2 ปีที่แล้ว

      @@JacobSorber When it comes to a class that's relevant to my degree, I'd never cheat. But the system is built to suck as much money from the student as possible, so they stick in these filler worthless classes that are "required". I cheated in those and I'd do it again. Not sorry! 😁

  • @taureanwooley
    @taureanwooley 3 ปีที่แล้ว

    The strangest thing that I have seen is the psychology professors explaining things that engineers don't need to do their job which includes "how to lie properly" which could kill millions of people. Also some of the payment methods that they use to get funding has also built up a bubble that has failed miserably for the majority of developers. There's also the extreme macro-management that is mulled over with certain architectures that have created numerous bad situations to get people stuck in a job because it was too complicated to explain if you did not create it. This alone has created the news stories that have continued to excuse situations that only get discussed later down the line for ... funding?

  • @chinesechicken4818
    @chinesechicken4818 4 ปีที่แล้ว +1

    What if you don't cheat but you still barely make it through with a C+? And right after summer or winter break, everything is forgotten. What if I can't afford the money to retake the class? Does that mean upper classes are going so much harder for me?

    • @JacobSorber
      @JacobSorber  4 ปีที่แล้ว +6

      If you're forgetting everything that quickly, you probably need to rethink how you are approaching your studies. Assuming you don't have some sort of neurological issue that affects your memory, you probably need to focus on mastery not grades, with an emphasis on active recall-based learning methods instead of passive. Because, yes, computing classes tend to build on each other, and they definitely get harder if you aren't keeping up.

    • @chinesechicken4818
      @chinesechicken4818 4 ปีที่แล้ว +1

      @@JacobSorber wow this is really helpful, thank you so much. I'm going to sub too!

    • @chinesechicken4818
      @chinesechicken4818 4 ปีที่แล้ว +1

      @@JacobSorber If you don't mind, what are some ways that will allow myself to engage in active based recall studying?

    • @JacobSorber
      @JacobSorber  4 ปีที่แล้ว +5

      Active recall is just a fancy way to say, you need to be actively using what you learned. So, if you watch a tutorial or lecture that teaches you something new. You should immediately try to apply it in a real program without looking at the tutorial. Just do something active with what you learned. It helps your brain realize that what you learned is important, and you will hold onto it much better.

    • @chinesechicken4818
      @chinesechicken4818 4 ปีที่แล้ว +2

      @@JacobSorber Thank you sir, hopefully I can ace my upper CS classes. Thank you again!

  • @bahaadendane6339
    @bahaadendane6339 4 ปีที่แล้ว +1

    can you do a demonstration on how to spot cheating using programs (pattern recognition like you said )plz

    • @ChristopherGray00
      @ChristopherGray00 3 ปีที่แล้ว +1

      you open google.com and type a question similar to the question you are giving out to your students and check for similar code

  • @bigthrillsmike3950
    @bigthrillsmike3950 ปีที่แล้ว

    I got caught plagiarizing in a computer science class myself this past semester worst decision of my life

    • @2saintlovature
      @2saintlovature ปีที่แล้ว

      What happened?

    • @bigthrillsmike3950
      @bigthrillsmike3950 ปีที่แล้ว

      @@2saintlovature first offense just a 0 on the assignment with no opportunity to make it up but if it happened again F for the course I got lucky all things considered

  • @HansBezemer
    @HansBezemer 3 ปีที่แล้ว

    There are two kinds of people: those who do and those who don't. If you cheat and you still get in the first category, good for you. May be school isn't really your thing. However, chances are you end up in the second category. And that's not a good thing. The only option left to you is to become a spokes person or politician.

  • @brianfiszman3179
    @brianfiszman3179 5 ปีที่แล้ว +1

    Jacob, another great video!
    Question, I'm trying to get a std::thread as a member of a class.
    What I've achieved is creating a Worker abstract class that has a std::thread member.
    Also, for sharing mutexes and semaphores between childs of Worker I'm setting them as static, so when Worker is inherited by a child, the mutexes and semaphores are the same for every instance. Am I going the right way or there is a better way for wrapping threads in an OOP way?

    • @JacobSorber
      @JacobSorber  5 ปีที่แล้ว +1

      I don't have a lot of information about what you're trying to do, but this sounds reasonable. One question is the reason for having the Worker class, so that you can tie the std::thread and sync primitives (locks, semaphores) together in one? Seems like you could also just subclass std:thread. I would need more info to know which I would prefer.

    • @brianfiszman3179
      @brianfiszman3179 5 ปีที่แล้ว

      @@JacobSorber www.github.com/brianfiszman/ObserverCpp
      I'm just wrapping the thread into a class for making it scalable, so everytime I want to do more stuff in parallel, I just create a Worker subclass and run it.
      I've sync the primitives to make sure that every instance of the worker subclasses is using the same mutex and semaphore.

  • @thatobritou9271
    @thatobritou9271 2 ปีที่แล้ว

    What if you reference the code you use ? Give credit?
    🤔

  • @funlovenboy
    @funlovenboy 4 ปีที่แล้ว

    I have a C sharp class I saw how to do this distance project online and saw how they coded it and did it. Is that considered cheating?

  • @ahnafahmed3615
    @ahnafahmed3615 3 ปีที่แล้ว +1

    @Jacob Sorber is using stack overflowing considers cheating⌛️

  • @omarjallow7102
    @omarjallow7102 5 ปีที่แล้ว +1

    Agreed 💯

  • @derex47
    @derex47 3 ปีที่แล้ว +1

    Not if im stressed and cant think straight due to all the pressure i want to learn but i cant under stress cheating is the solution

  • @nikodims5724
    @nikodims5724 2 ปีที่แล้ว

    stop complaining

  • @csbnikhil
    @csbnikhil 4 ปีที่แล้ว +3

    Cheating is never worth it. Let alone Computer Science.