C vs C++ vs C#

Поделиться
HTML-код
  • Опубликовано: 21 янв 2025

Комментарии • 2,6 тыс.

  • @conaticus
    @conaticus  2 года назад +2772

    Thanks for checking out my video, made a small mistake in saying that C was a functional language. It is actually a procedural language. Sorry for the mix up!

    • @erikgrundy
      @erikgrundy 2 года назад +226

      Hey, it's functional, if you use the definition of "it functions"

    • @conaticus
      @conaticus  2 года назад +157

      @@erikgrundy Haha yeah, what separates it from C++

    • @SkyyySi
      @SkyyySi 2 года назад +85

      @@conaticus C++ will always _object_ to what you're doing.

    • @erikgrundy
      @erikgrundy 2 года назад +34

      @Mikołaj Kraszewski Kind of - it depends on what you're talking about. It's sometimes said that the difference is procedures don't return anything, whereas functions do. In that sense, they're very much the same. However, a functional language is very different from a procedural language. Functional languages put heavy influence on passing around and returning functions, and describe a program as a composition of a bunch of functions. Procedural languages view a program as a series of actions (procedures) that are taken one after the other.
      Tldr: functions and procedures are very similar. Functional and procedural languages are very different

    • @danieleccleston7928
      @danieleccleston7928 2 года назад +5

      @@erikgrundy thanks for the clarification I like how procedural languages go about doing stuff

  • @Lunix_Hardcore
    @Lunix_Hardcore 2 года назад +4537

    C++ is beautiful... in a very chaotic way... kind of like how the light of a nuclear weapon is probably beautiful before it kills you...

    • @bambalus8418
      @bambalus8418 2 года назад

      Looks like you are into BDSM, or something like this.

    • @fededevi1985
      @fededevi1985 2 года назад +73

      @@bambalus8418 Probably a common trait in c++ devs

    • @filip9587
      @filip9587 2 года назад +44

      Man this is the best comment here.😂

    • @ghosthunter0950
      @ghosthunter0950 2 года назад +17

      @@fededevi1985 WHAT DID HE SAY

    • @obed818
      @obed818 2 года назад +44

      Did ya know that you can still see the shadow of people printed on the ground near the atomic explosion this is terrifying.. you can really see human shadow on the ground/wall etc..
      (Not made with print())

  • @CaptainTechnicalityLP
    @CaptainTechnicalityLP 2 года назад +11180

    I know people often say that C# is basically the same as Java, but as someone who has done both, Java really has a special quality to it that makes me want to tear my eyeballs out that I can't quite place my finger on. C# on the other hand makes me happy like 90% of the time.

    • @brkr78
      @brkr78 2 года назад +824

      They are most certainly related to each other. I call Java the ugly twin of C# that has some issues but through sheer tenacity and some luck still is more popular.
      But in the last few iterations C# realy began to diverge in a lot of ways, more and more functional programming concepts are added, more and more syntactic sugar and if you show somebody a C# 6.0 and a C#10.0 program, both utilizing the language features to the fullest, you would not believe it is the same language. The only thing, IMHO, that Java has over C# is its enums, the rest is equally or better solved in C#.

    • @akj7
      @akj7 2 года назад +563

      Java is a piece of shit programming language and was made for those who couldn't programm in C++. Everything in the language feels like a compromise.

    • @randomaccount6146
      @randomaccount6146 2 года назад +100

      What is bad about java ?

    • @brkr78
      @brkr78 2 года назад +490

      @@akj7 Dude, chill, it's just a programming language. While I do agree that Java feels like it is afraid to fully commit to a concept (I mean, it is OO, but its primitives aren't, because ... reasons ...), but every language has its own niche. Javas big plus is its platform independence and ridiculously many and huge supporting libraries. It kinda somewhat turned into the COBOL of the 2000s.
      I for my part avoid Java-Script as much as possible, I just don't like it. But I wouldn't call it trash, it just isn't for me. C++ isn't the be-all end-all of languages either, even that language keeps on developing, just look at the differences between C++98 and C++20. Calling other people "too stupid to code in C++" misses the point and only shows that you somehow feel that this language is superior in some way. And the first C++ I coded in was Borland C++ 3.1, so I've been around the block for quite some time now.

    • @brkr78
      @brkr78 2 года назад +175

      @@randomaccount6146 This is only my personal opinion, but Java is just ... inconsequential in so many ways. It's OOP, but abandons it when it comes to primitive types. It's best practice to implement getters and setters, yet the language refuses to add the functionality, even as syntactic sugar. There are libraries that allow you to annotate fields and provide these automatically, but then again you kind of lose the reason they are there in the first place as you now have limited control on how they behave. It has generics, but they are statically replaced at compile-time, which brings along its own can of worms if you dig deeper into it. Jakarta is a hodgepodge of different frameworks that wear a coat and pretend to be a unified thing. The fact that its best practice that you have to convert a literal string that contains a decimal value into a decimal variable, because "the compiler sometimes doesn't play nice" and rounds it in weird ways. It has a metric shit ton of libraries and frameworks that can be used, a lot of them overlapping or intended as replacement of other frameworks - yes, it gives you a lot of possibilites to choose one, but at the same time you have to choose one, without knowing how long it will be supported. It's not one big thing that makes the language bad, by no means. It just adds up and adds up, a lot of small and IMHO unnecessary inconveniences.

  • @crappywindow
    @crappywindow 2 года назад +5735

    "C++ , the language has a steep learning curve, and despite what many will say I would not recommend this language for beginners, especially if you're already suicidal" this is ridiculously true. lmao

    • @ironlake8944
      @ironlake8944 2 года назад +60

      What programming language a beginner like myself should learn first ?
      I want to become a data analytics.
      What should i learn ?

    • @FoxSlyme
      @FoxSlyme 2 года назад +5

      @@ironlake8944 3 days ago and 7 mins ago, lol

    • @ironlake8944
      @ironlake8944 2 года назад +41

      @@FoxSlyme ?

    • @пидарасина_228
      @пидарасина_228 2 года назад +18

      @@ironlake8944 probably SQL

    • @ironlake8944
      @ironlake8944 2 года назад +32

      @@пидарасина_228
      Hey bro I'm a bit confused.
      There are many names but i don't know what are them. For example, github, frameworks and many more.
      Is there any video or website that explains what is what because I'm a total newbie

  • @Anne_Grapple
    @Anne_Grapple 2 года назад +3347

    I had C++ as my first language because my teacher decided so. And then, I decided to learn C# for myself and every time I learned something new I was thinking: "No, it cannot be THAT easy". But it could, and it was THAT easy despite the feeling that I coded too little for anything to even exist.

    • @gaymerjerry
      @gaymerjerry 2 года назад +178

      Do pointers and direct memory manipulation allow you to write more efficient code? Yes of course
      Are they good for a beginner to learn? I dont think so because its so easy to write unsafe code and memory leaks. I mean theres a reason in order to do anything with pointers in C# first you need to surround the code in a 'unsafe' block and the compiler setting needs to allow the use of 'unsafe' blocks

    • @0114mercury
      @0114mercury 2 года назад +50

      Try python ;-)

    • @cerulity32k
      @cerulity32k 2 года назад +103

      "My child will use functions to index into an underlying list."
      "int this[int index] => this.list[index];"

    • @Joseph-ms3iq
      @Joseph-ms3iq 2 года назад +28

      @@cerulity32k Holy shit I didn't think I would've laughed louder tonight than I laughed after reading this.

    • @joyner92
      @joyner92 2 года назад +84

      my experience going from c++ to python
      my reaction to see my exercise of a 50 lines linked list with hash table be completely replicated with 2 lines of code in python was "FUCKING WHAT"

  • @GameInOne
    @GameInOne 2 года назад +475

    As someone who learned c++ when I just started I can confirm c++ provides nothing but depression except the time when code magically works

    • @francocavecchia8246
      @francocavecchia8246 Год назад +35

      That dreadful feeling when somebody was struggling with the same issue and sees your program run and asks excitedly "how did you do it?!" And you cant decide wheter to lie and say you're just a code magician or be honest and admit it was a lucky compile.

    • @Cartilog-z4f
      @Cartilog-z4f Год назад +7

      And when you finally get it to work, you find out that it is one huge memory leak.

    • @wiquid
      @wiquid 8 месяцев назад +4

      My main rule whenever I’m doing something in C++ is “If it works, it works, it doesn’t not work, I don’t know how, I don’t know why, I don’t care how, and I don’t care why.”

    • @bamf6603
      @bamf6603 Месяц назад

      @@Cartilog-z4f whats a memory leak? i have heard this phrase pretty often, but i still havent learned about it? would you mind to explain?

  • @batoobdx
    @batoobdx 2 года назад +3662

    I like how C++ is depicted as a depression source through the whole video

    • @el2746
      @el2746 2 года назад +139

      He's not wrong...

    • @jacobvandyk3
      @jacobvandyk3 2 года назад +15

      I can’t wait for AP cs next year which is in Java bc c++ is gonna make me kill myself

    • @kibbewater
      @kibbewater 2 года назад +2

      it is

    • @elcalabozodelandroide2
      @elcalabozodelandroide2 2 года назад +1

      It kinda is.

    • @fatmagamal3701
      @fatmagamal3701 2 года назад +5

      and through your entire college years

  • @ayubsunarya6284
    @ayubsunarya6284 2 года назад +5789

    Fun fact: C# is C with 4 +

    • @yummysoup
      @yummysoup 2 года назад +547

      you just blew my mind now i cant unsee it .

    • @rpe
      @rpe 2 года назад +296

      you can also see it as 2 +'s. if they are long enough

    • @darkstar9942
      @darkstar9942 2 года назад +335

      @@fengchen303 wth is that translation

    • @HollyWarlock
      @HollyWarlock 2 года назад +65

      rip musical notation

    • @toomanyhobbies2011
      @toomanyhobbies2011 2 года назад +83

      Absolutely, but it's really C++ ++.

  • @Hellhound_RedFox
    @Hellhound_RedFox 2 года назад +1904

    Just so everyone knows:
    C# application can be used accross multiple systems without having to be build specific, thanks to its interpreter. You can also program mobile apps and web applications. C# also allows you to quickly and easily wrap C/C++ in your code

    • @ljose007
      @ljose007 2 года назад +84

      C# is my farourite.

    • @sudoalex
      @sudoalex 2 года назад +43

      You mean MS Java?

    • @eminkilicaslan8945
      @eminkilicaslan8945 2 года назад +8

      Does it use something like Java bytecode?

    • @cheherklai4078
      @cheherklai4078 2 года назад +11

      Sorry i might be a newbie , i still cannot understand, can C# be used to program video games for pc?

    • @ilasilas3261
      @ilasilas3261 2 года назад +32

      @@taoliu3949 there may be a misunderstanding. I'm not talking about the .NET framework which is windows only but actually .NET 5. I think there are very few areas where .NET 5 and above won't be a good fit, however it is still really new, that's just my opinion.

  • @tomsterbg8130
    @tomsterbg8130 2 года назад +436

    I started out with C++ algorithm programming and I'm glad I did because the way you write in C++ makes you understand a lot of the core concepts of languages. I'm using Lua now.

    • @pyp2205
      @pyp2205 2 года назад +39

      Well I started with Python, and I remember I tried learning languages like C++ before Python. But I just couldn't wrap my head around it (pretty much I couldn't understand or memorize anything). Now that I've been using Python for a few years. I decided a while ago to learn some other languages like C++. And now it's actually easy, maybe because of how I learned a lot of concepts of programming from Python. I just wanted to move onto other languages, because I can't stay in one language forever. I gotta at least know some other languages.

    • @tomsterbg8130
      @tomsterbg8130 2 года назад +13

      @@pyp2205 I had an amazing teacher so that's one of the reasons why I was able to understand one of the more complicated languages. However it was extremely hard to learn new stuff myself. I made an ASCII game, tried to wrap my head around how graphics work and then couldn't do it anymore without proper teaching. I'll however go back to UE5 which uses C++ after I get a PC that can run it smoothly

    • @shivam-hs7fz
      @shivam-hs7fz 2 года назад +12

      You are alive thats amazing

    • @oozecloud4511
      @oozecloud4511 2 года назад +4

      @@pyp2205 thats exactly my story

    • @mrhat1073
      @mrhat1073 Год назад +6

      Lua my beloved

  • @traxcanonch.2421
    @traxcanonch.2421 2 года назад +777

    Trying to learn C++ as a first language, has been great. But haven't gotten deep yet. I'm only 7 hours in a 66 hours C++ course. Wish me luck guys.

    • @0uzi
      @0uzi 2 года назад

      Brace your butthole good sir. I salute you o7

    • @LiegeMaximo
      @LiegeMaximo 2 года назад +166

      Do you still function?

    • @trenwar
      @trenwar 2 года назад

      @@HenryLobber i think this guy commit suicide

    • @exnihilonihilfit6316
      @exnihilonihilfit6316 2 года назад +253

      Same here. I'm only 24 years in.

    • @docmadhattan
      @docmadhattan 2 года назад +73

      Are you still alive

  • @krtirtho
    @krtirtho 2 года назад +1312

    I thought people hate Java the most. But your hat for C++ is at another level
    RIP C++

    • @conaticus
      @conaticus  2 года назад +379

      It's a love hate relationship

    • @alessandrobelottidev
      @alessandrobelottidev 2 года назад +73

      i actually like c++, I'm not an expert in it at all, I write simple code and for that it's awesome

    • @godnyx117
      @godnyx117 2 года назад +45

      Yeah I don't blame him. You need 10000 years to properly learn C++.

    • @fbi..nasa.
      @fbi..nasa. 2 года назад +44

      when he says "CIA Torture Programme"

    • @robokpl
      @robokpl 2 года назад +3

      c++ is a feature, high lvl languages always have their bootleneck's - as many as u have more experience in using them

  • @XoADREADNOUGHT
    @XoADREADNOUGHT 2 года назад +468

    C# "is" not just a copy of Java. It "was" on creation. It is pretty radically different now. And in very positive ways, IMO. It seriously diverged around C# 4.0.

    • @TuLox876
      @TuLox876 2 года назад +32

      It's actually based on C++, you could say it's C++++. A matter of fact if you slice the # symbol in two you get four pluses. It was going to be named COOL which means C like Object Oriented Language. So that whole copy of Java statement is just a myth.

    • @XoADREADNOUGHT
      @XoADREADNOUGHT 2 года назад +40

      @@TuLox876 If you google it, it was basically a copy of Java. The syntax was extremely similar. It angered the Java team because of how similar it was. But calling it a copy is hyperbolic, sure. But C# is FAR closer to Java in syntax than C++.

    • @pharoah327
      @pharoah327 2 года назад +31

      @@XoADREADNOUGHT and yet syntax is a very superficial part of a language. It is FAR closer to C++ when you actually compare features and how they are implemented. I know all three languages very well, so I feel confident comparing and contrasting them. C# is in a league of it's own, several levels above both C++ and Java but if we must look at the features and compare them, it is closer to C++. For example, here are the features both C# and C++ have in common: unsigned types, default parameters, variable number of parameters, operator overloading, base keyword, structs, enums (Java enums are very different), namespaces, ability to have multiple classes in file regardless of visibility, can split class into two files (yes you can create the equivalent of headers from C++), lambda functions (again Java does it differently), and a whole lot more. A language is far more than just it's syntax.

    • @diadetediotedio6918
      @diadetediotedio6918 2 года назад +5

      ​@@XoADREADNOUGHT
      He is right, when comparing the way "VM" works in both systems they are quite different, in Java the JVM acts more like an entire operational system abstracting memory control and thread management and handling all the resources for the program, while in C# the CLR is just a layer of abstraction over some of the resources of the program that are used intentionally by the programmer like managed objects memory control (with GC) and some other tiny things, and of course the Jit. In the end, the CLR acts more like a utilitary tool that power the C# while C# itself is compiled in IL and then in machine code by the Jit, so it is far more closer to C++ than to Java in this sense. Of course the syntax is much more closer to Java in managed part, at the same time, the unmanaged one is very closer to C/C++ with things like pointers and optional manual memory management.

    • @XoADREADNOUGHT
      @XoADREADNOUGHT 2 года назад +1

      @@diadetediotedio6918 That's great. I was only comparing the syntax. People are arguing against points I never made. ** shrugs **

  • @ethanbuttazzi2602
    @ethanbuttazzi2602 10 месяцев назад +17

    2:13 "use C++ if you want to write low level applications with more control at the sacrifice of your will to live" kkkkkkkkkkkkkkk, bro i cant that was too good.

  • @YashasviPratap
    @YashasviPratap Год назад +4

    As someone whose first language was C++, learning Java felt very weird, as if something was amiss. Then I learnt Python and felt like I am committing sacrilege.

  • @lonylon4887
    @lonylon4887 2 года назад +307

    My school chose to teach C# and so far it’s been quite fun to code with,
    But I also have to learn assembly and trust me, if you don’t hate yourself, do not learn assembly.

    • @ryanwogget
      @ryanwogget 2 года назад +59

      This. I hate myself, and I learned x86-64 assembly just for fun.

    • @feandil666
      @feandil666 2 года назад +46

      learn C. you'll understand as much about the hardware, and core programming concepts, without the headfuck. and when you switch to a higher language you'll actually have respect for all the people who developed all the libraries you're using

    • @lonylon4887
      @lonylon4887 2 года назад +9

      @@feandil666 my school chose to teach C# and assembly, (and I have a really bad teacher) so I basically have to learn them by myself, So I won’t be learning another language for a long time

    • @sanket.hande9
      @sanket.hande9 2 года назад +2

      @@ryanwogget same with me

    • @Celastrous
      @Celastrous 2 года назад +17

      When I was in uni, I learned C, C++, and assembly.
      I'm in embedded engineering, and I mainly use C and python.
      Assembly was fun. More fun than C and especially C++, that's for sure.

  • @coolbrotherf127
    @coolbrotherf127 2 года назад +673

    As a CS student, I learned pointers pretty early on in my programming journey and they aren't that crazy to deal with once you just practice with them a bit. As far as C++ goes, pointers are some of the least difficult parts to learn and it goes way deeper.

    • @TopchetoEU
      @TopchetoEU 2 года назад +29

      I haven't dealt with C++ in over an year and yet C++ templates still bring me nightmares an a regular basis

    • @arnoldhau1
      @arnoldhau1 2 года назад +36

      Pointers are still a source of bad bugs and security flaws regardless how experienced you are. Unless they are safe as in go.

    • @tinkot
      @tinkot 2 года назад +12

      Its also important to know how memory works, and where you store variables in your code. Pointers can easily be misinterpreted

    • @Starhawke_Gaming
      @Starhawke_Gaming 2 года назад +28

      One of my research topics in university was to present about and implement a "Weight Ballenced Binary Search Tree" data structure in C.
      After my experience with that, basic pointers were never an issue, after having dealt with pointers to pointers to pointers to pointers to tree nodes. And no, I'm not even kidding, four layer deep pointer pointers.
      So happy to just have Collection objects in Java that can take care of all that heavy lifting for you.

    • @arnoldhau1
      @arnoldhau1 2 года назад +32

      @@Starhawke_Gaming it is not complicated to use pointers at all once you know how. But that does not eliminate the endless source of bugs, security flaws and memory leaks that is caused by handling raw pointers. In commercial development, there is only limited time...

  • @Gabriel-gw6gb
    @Gabriel-gw6gb 2 года назад +63

    01:13 don't start with this language if you are a beginner, epecially if you are already suicidal
    Every University: ignores this advice and starts with C and C++ in the beginner courses

    • @Ibloop
      @Ibloop 2 года назад +1

      Universities: ruclips.net/video/_xZ_TD3QDw4/видео.html

    • @isaacbruner65
      @isaacbruner65 11 месяцев назад +11

      C is the basis for the majority of popular languages today, so learning it first makes sense. Makes learning C++, Java, C#, Python, JavaScript much easier.

    • @3DMVR
      @3DMVR 10 месяцев назад +1

      starting with (and only having) c++ made me drop the major lol

    • @artcory6224
      @artcory6224 2 месяца назад

      As a first year student I don't think stu(dying) C was something excruciatingly hard, and also I can already see , that it will be simpler to learn other languages from now on

  • @ThePuddingStone
    @ThePuddingStone 2 года назад +13

    Trying to teach myself a few languages a few years prior I remember C++ was the one I tried first because of the good things I've heard about the language. It gave me a hard time so I switched to java really soon and now I use both java and c#
    Thanks for making this video and making me feel like I'm not stupid for having trouble with c++

  • @kikexfrancis
    @kikexfrancis 2 года назад +5

    This is my first time in this channel and I love this narration 😂, I've liked and subscribe

  • @adilsongoliveira
    @adilsongoliveira 2 года назад +456

    I'm 53 and started programming at 14 though I don't do it any more except for hobby projects. I've done Basic, Fortran, Pascal and C mostly and I *really* don't see why people have problems with pointers. Maybe because I got it at a young age, so to speak, to me is quite natural and simple to use, even pointers of pointers. I understand it can get very messy quickly and it is quite dangerous because you are basically messing directly with memory but it also gives you the power to do some amazing tricks with incredible speed.

    • @kaseyboles30
      @kaseyboles30 2 года назад +40

      Exactly. Pointers are a potentially powerful tool. It's the programmer that is dangerous, not the language. It sounds like your about 2 years ahead of me (be 52 in a few months, also got my C64 at 14 after growing very frustrated with the limits of a timex sinclare 1000)

    • @rustycherkas8229
      @rustycherkas8229 2 года назад +18

      Anything is dangerous when in the hands of those unwilling to understand what they have. Look at the calamity that Mickey Mouse caused when his sorcerer went off to bed and Mickey animated the broom...
      I admit that I'm 'jaded', but "lowering the bar" (eliminating pointers) so that any baker or butcher can "learn to code" is the tail wagging the dog...
      Don't know if I'd want to live in a world without dynamic linked lists...

    • @kouko6727
      @kouko6727 2 года назад +7

      @@kaseyboles30 As a relatively new programmer, my first language was c++. I never really had much of a hate for pointers as I think I understood how to use them decently(Atleast i'd hope I was) but from my friends words they hated them. It probably doesn't help that the teacher also made it seem like it was going to be a very annoying lesson to get into when I first learned.

    • @kaseyboles30
      @kaseyboles30 2 года назад +7

      @@kouko6727 The problem with C++ is it is a mid level language tryin to be a high level language by tacking on OOPS. OOPS in of itself isn't even what they guy who invented the term meant and has issues in it's current incarnation. For one it tries to lump code and data into a single 'thing' which is stupid in many cases and bad in others. It's a niche use case, but it's become a cult and say anything bad about oops and you get treated poorly. I don't care for myself, I learned before home computer were 32 bit, and only a few even touched 16bit. I learned basic (which is just that for the most part) and 6502/6510 assembly/ml and later ISO C and some ansi-c (which requires you tell the compiler everything 3 times it seems compared to iso c). and some pascal and logo and other things. I remember when html was just a simple markup language and programmers used to laugh at people who said they 'coded' html.
      Learn a bit about how computers actually work on insides, what a register is and does, what a context switch is and how branches and calls work at the machine level and which is more cpu cycles that the other and when. What endian is. And a little bit about programing paradigms (functional, procedural, imperative, etc.).
      Starting at C++ is like starting in a junk yard and trying to understand automotive engineering. Mind you a lot of code monkeys who just convert specs into code don't learn much more than C++ and java and a few other languages and basic patterns to match to common problems, it's not the most creative and effective career.

    • @corporategreed
      @corporategreed 2 года назад +6

      I think the fear of pointers could possibly come from the fact that high level languages hide their existence from you. I have somewhere around 6 years of experience in programming, all high-level languages and only now since I started learning C++ I actually need to learn what pointers are and how they work. I tried to look for a tutorial on pointers and it was almost 4 hours long and would, for me, be a deal-breaker if I didn't HAVE to learn C++ anyway.

  • @ziyadcodes
    @ziyadcodes 2 года назад +44

    The best video to watch after suffering one and a half weeks of C++ learning. I agree with the fact that it makes you lose the will to live

  • @SkyyySi
    @SkyyySi 2 года назад +580

    C is NOT functional, it's procedural. Functional means that functions have no side effects, which is definitely not the case for C. Functional also implies other things, like First-Class-Functions, meaning you can pass them around just like any other data type, ie:
    def f(af):
    return af(5) + 3
    def g(x):
    return x * x
    print(f(g)) # --> 28
    EDIT: Also, in functional programming, a function can be created anonymously. If you define an int, for example, you would use a syntax like this:
    myint: int = 69420
    In a functional language, functions can also be created like this:
    myfunc = lambda x: x//2 if x % 2 == 0 else x*3+1
    This comes in useful when, for example, a function A takes another function B as a parameter, but you don't want to bind B to any function name.

    • @r.t.5767
      @r.t.5767 2 года назад +45

      Your comment should be pinned

    • @dimi5862
      @dimi5862 2 года назад +23

      But you can pass function pointers

    • @meandyours
      @meandyours 2 года назад +57

      @@dimi5862 that's not what being functional means

    • @r.t.5767
      @r.t.5767 2 года назад +23

      @Pavel Alexandru linguistic banter
      I can go deeper and claim that every language is in fact unstructured and imperative, because in the end everything is binary code
      functional languages are those with minimised state and first-class functions, simple as that

    • @griglog
      @griglog 2 года назад +7

      Bruh. C CAN pass functions as arguments.

  • @RealValkor
    @RealValkor 2 года назад +55

    I would say it's worth learning all of them, starting by C.
    If you learn C, learning the rest becomes considerably easier, and each language comes with its own uses.
    C# is very flexible for all platforms (PC, mobile, console), making applications really easy and accessible to port to these.
    C++ is great for game developing, especially for triple A entries.
    I myself like C# the most, because despite many considering C++ the better one to develop games with, C# also is good for game-making but for other things as well.

    • @hjrgf
      @hjrgf Год назад +6

      c# is for unity, unreal engine uses c++ but you have blueprints anyways
      c# is easier to write and i know a lot of good games written in unity
      unreal engine is more for games with good graphics
      so it depends on your use case
      but unity also has visual scripting and its compatible with c# scripts

    • @RealValkor
      @RealValkor Год назад +1

      @@hjrgf yeah, since that comment I have been working on a game on Unity ans C#, I can confirm C# is great for game making.

    • @mohammedu7105
      @mohammedu7105 Год назад +6

      ​@@RealValkor it's sort of funny how some people write off unity just cuz it uses C#. What, you hate languages that aren't a pain in the ass to learn?!?

    • @RealValkor
      @RealValkor Год назад

      @@mohammedu7105 yeah lmao, plus programming follows the same logic, even if the language is easy... It's good to learn it as it can set a base for learning harder languages. The basics of C# helped me understand programming and in turn made learning C much easier.

    • @Amy-kh3zl
      @Amy-kh3zl Год назад

      Im currently learning c++ for hobby (i wanted to make my own mobile game)🥲.reading all of these comments confused the heck outta me......again.😭c# or c++?

  • @dovahsenbrom836
    @dovahsenbrom836 2 года назад +98

    Also, use C/C++ if you want high performance, properly structured code, not having to deal with 10 million classes, not having to create a class any time you want to do anything, learning operating systems, learning embedded systems, learning network systems, learning security systems, and even scripting if you're good enough - vim and fast fingers go a long, long way.
    Don't learn C/C++ if you want to glue some code fragments together and hope it works. It'll suck your soul and joy like a Dementor. It'll make you want to rip pieces of your own flesh out just to balance out the psychological pain. It'll get inside your head and make your eyes bleed while spending hours parsing through those thousands of lines of code to find that shitty off by one that's generating your runtime error. It'll make you scream in agony when someone cracks your software open because you forgot to free a pointer or used a deprecated unsafe version of a string library. It'll fuck you up, heal you, and fuck you up again.
    IMO these languages are the best languages. They provide both abstraction - you can implement OOP concepts in C if you're good enough to do it - and control - memory management, kernel calls, process execution, etc. You get fast speeds, you get proper syntax - so long having a line of code that fills up your whole screen - and you're pretty much forced to use best practices, principles and patterns - the other option is ripping your eyes out while figuring out why the hell 1 out of 3 runs generate a seemingly nonexistent segfault. These are not your standard find-a-lib-read-a-tutorial-glue-some-shit-together-there-you-go java-type languages. These are craft languages. They reward those that take the time to learn how stuff hows. To figure out how the compiler processes things. To understand how the linker manages resources. To deeply think about what's the best way to cut a corner and get that min-max optimization that will make your system 1ms faster on that particular function. On the other hand, they punish everyone who doesn't do that. Harshly. Terribly. They'll scream "WRONG!" in your face, and when you ask why the answer will be "STOOPID!". Very punitive. Very rewarding. Very fun.
    And truth is, the world runs in C. Your OS runs in C. Your phone runs in C. Your browser, your server, your database, your router, your car, your toothbrush, your microwave. Everything. Even if it's not in C, you can code it in C. That's the beauty of it. That's why it's so hard. It's an art form in it's own right. Plus it'll make virtually any other language feel like pushing solids into shapes. It's wonderful - and highly addictive.
    Then there's the culture. I've found that C coders are very ruthless, but very empathetic once they assert you're in it for the long run. The same person that gives a half backed sour answer will take their time to slowly guide you through the process if they feel you really want to learn, really want to master it. It's really a whole thing. Spiritual, even. Can't enter the Temple unless your heart is in the right place.
    So yes. Access your goals, take your time, figure out how far down the rabbit hole you want to go, and if the answer is 1, you'll know.

    • @Maks-rq9kp
      @Maks-rq9kp Год назад +5

      C# best.

    • @randomperson5454
      @randomperson5454 Год назад +3

      Ngl I wanna learn c++ but I’m discouraged, lowkey just doesn’t seem fun. Programming needs to have that aspect that makes it enjoyable. I don’t mean that challenges aren’t necessarily enjoyable, it’s definitely fun to be challenged when coding. C++ just looks so goofy and unpleasant. I just learnt Java too btw and realized after months of learning and trials that I can’t do nothing with it, I originally wanted to mod Minecraft but now I’m just like..

    • @souland3566
      @souland3566 Год назад

      @@randomperson5454 #include

    • @Cobalt985
      @Cobalt985 Год назад

      @@randomperson5454 I'm halfway through my first C++ class and I'm really enjoying it. The problem solving tickles my brain in a way almost nothing else does. I have lots of experience with Linux and some with shell scripting so a lot of operators look and feel how I expect, it's like I'm right at home. I do recommend it.

    • @mariandecker3942
      @mariandecker3942 Год назад

      ​@@Maks-rq9kpuse either C/C++/Rust or Python...

  • @yt-sh
    @yt-sh 2 года назад +162

    entertaining and educative, hopefully this channel will be popular soon

  • @nightlifebartenders
    @nightlifebartenders 2 года назад +38

    After watching this video, I'm glad I chose to learn c#. Thanks for the upload! It's funny I've already programmed 2 full games but if anyone ask me to explain how I coded them, i have no Idea what to say..

  • @Wafflebro
    @Wafflebro 2 года назад +51

    no way you only have 61 subs this video was educational, funny, professional, and simple to follow

    • @ME0WMERE
      @ME0WMERE 2 года назад +5

      he had 61 subs 3 days ago??

    • @hermanzhukov8044
      @hermanzhukov8044 2 года назад

      @Meowmere ikr?

    • @ME0WMERE
      @ME0WMERE 2 года назад

      @@hermanzhukov8044 oh hey he's increased the size of his channel by over 25% in 12 hours

    • @randomguy-gb9ge
      @randomguy-gb9ge 2 года назад

      wtf 61?

  • @JayVariety
    @JayVariety 8 месяцев назад +3

    Started learning my first programing language C#. Enjoying it so far

  • @theworm7156
    @theworm7156 Год назад +17

    0:05 two are coding languages, one is a musical note

  • @quimblyjones9767
    @quimblyjones9767 2 года назад +25

    Honestly man, this is exactly what I need. Quick learning snack to help me get my bearing. Keep up the awesome work man!!

  • @xniyana9956
    @xniyana9956 2 года назад +21

    1:02 You know you're about that life when you instantly recognize the fast inverse square root function from the Quake 3 source code lol.

  • @CrimsonTide001
    @CrimsonTide001 2 года назад +18

    As someone who has been programming in C++ for over 20y and uses it almost exclusively... This video is extremely accurate.

    • @Admiral45-10
      @Admiral45-10 2 года назад +1

      I've been using *just* C++, so things you call ,,torture" is normal for me.
      I mean, I remember when I helped my sister with something in Python, but I've never gone anywhere outside C++ past that point.

  • @soul1543
    @soul1543 2 года назад +2

    I love the way you tell the information to the audience all while being funny

  • @bayedevilakazi6328
    @bayedevilakazi6328 2 года назад +7

    I'm glad I started by learning c++,I left halfway because it was too much.i went to python and i learned in a just a week what took me two years to learn in c++.
    Moral of the story is,sometimes it helps to go for the boss first get your ass beat and then go for the weak,it will be much easier

    • @Fouzia71
      @Fouzia71 3 месяца назад

      like dark souls 1

  • @WolvericCatkin
    @WolvericCatkin 2 года назад +144

    _"C is a functional language..."_
    No, correction, _procedural_ describes it's paradigm, because functional describes another, much wonkier, paradigm, aimed at mathematicians...
    Edit: Yeah, so that last part was really divisive... 😂 I should clarify: I'm absolutely onboard with imperative styles of programming, but it's a fact that purely functional programming is derived from Lambda Calculus, often in a fashion to accurately represent mathematically proofs programmatically, a fact which has resulted in wonky decisions in designs of purely functional languages in particular... if you want to question that, take a look at APL, and tell me that syntax makes for a good programming experience...

    • @netoskin
      @netoskin 2 года назад +2

      I was going to leave the same comment, Hope he reads yours

    • @jakebrowning2373
      @jakebrowning2373 2 года назад +19

      Wonky is in the eye of the beholder

    • @kulkalkul
      @kulkalkul 2 года назад +3

      I don't think "aimed" is correct term there. While it is correct that functional paradigm has lots of mathematical concepts, they are just different tools that accomplish similar results. Languages that aim to non computer science people like mathematicians, engineers, scientists etc. are usually python or python like; easy to learn, batteries included.

    • @ivanf.8489
      @ivanf.8489 2 года назад +2

      It's not aimed at mathematicians. It is aimed to solve some problems in a much simpler way. You just have to know when to use, but in CS it has a hella lot of use.

    • @fatbirb5481
      @fatbirb5481 2 года назад +2

      @@TheDragShot no, wonky is definitely in the eyes of the beholder. As someone who learned OOP first, functional programming is the most beautiful shit i've ever laid my eyes upon and it's so much easier to reason about than OOP.

  • @connorhovelmeier4004
    @connorhovelmeier4004 2 года назад +7

    I did C++ a really long time ago and he is really not lying about it.... Sometimes I get nightmares and wake up in the middle of the night in a sweat, tears streaming from my eyes and my hands tightly gripping my throat as I try to catch my breath.

  • @cluerip
    @cluerip 2 года назад +18

    I recognize that algorithm! (1:02) It is the fast inverse square root used in Quake III. Nemean made an excellent video on it.

  • @mingusog7036
    @mingusog7036 2 года назад +10

    During one of my networking classes in college, we had a group project where one person made a PHP repository connected to a SQL database and the rest of us had to make our own unique client using a different language to pull specific data from the database through the repository. The kid who had to make the C++ client was easily the most miserable, and the kid who made the Java client I don't think even finished the project lmao

    • @docafavarato
      @docafavarato Год назад +2

      Kid who choose python 😁

    • @morijin5568
      @morijin5568 Год назад +3

      this is unfair lol

    • @dvxv4016
      @dvxv4016 Год назад

      ​@@morijin5568 someone was making the client in assembly

  • @fahadabbas5252
    @fahadabbas5252 Год назад +1

    I learned C in my college days and C++ in my CS degree, It was really fun to play with the pointers, you just have to practice in order to understand them. Now, I'm an associate software engineer starting my career in application development. Learning another language like JavaScript feels like a piece of cake...

  • @dextreme1754
    @dextreme1754 2 года назад +26

    wow you deserve more attention great video short and full of the important infos also funny great job keep it up mate!

  • @jimparsons6803
    @jimparsons6803 2 года назад +16

    Liked the presentation. Some older add-ons (many of which are pretty nifty I've found, like the various versions of Allegro, [enhanced] Glut, and on and on --- the older versions) work better under C or C++ --- just because some stuff is a bit long in the tooth doesn't mean you toss it away. I like the KISS ways of doing things: 'Keep It Simple, Stupid.' Simple, I've found, is generally the smarter way to go.

  • @teknologipanda4333
    @teknologipanda4333 2 года назад +36

    nice video mate! I subscribed this channel, a lot of beginner will ask, why there is no "string", but "pointers everywhere" in c++ XD

    • @conaticus
      @conaticus  2 года назад +3

      Thank you! And yeah, C can be weird

    • @aaronspeedy7780
      @aaronspeedy7780 2 года назад +5

      C++ has strings. It's in the standard library
      std::string

    • @valizeth4073
      @valizeth4073 2 года назад

      @@aaronspeedy7780 and the non-owning string_view.

  • @lotwar
    @lotwar Месяц назад

    I recently started on a C project. honestly, I really love it! I think I learned more about computers the last week than I did with Java, C#, Javascript and Typescript the last 10 years, but that in mind, I guess that was the pure purpose for some of those languages.

  • @foxfire230
    @foxfire230 2 года назад +4

    I had to learn OOP in college by making a game in C++ without an engine. It was a huge challenge.

  • @agator116
    @agator116 2 года назад +13

    "pretend to know what you're talking about"
    isn't that every person on RUclips who does tutorials and isn't a nerd

    • @agator116
      @agator116 2 года назад

      i mean you sounded like you knew the C family, i feel like you actually do

    • @valizeth4073
      @valizeth4073 2 года назад

      That is everybody doing tutorials on youtube period*. I am yet to find one good youtuber that is beginner oriented teaching C++ that actually knows what he's talking about.

  • @rufdymond
    @rufdymond 2 года назад +9

    For a old timer - I suppose it’s what you grow up with. I leaned C back in the mid 80s and loved the language, maybe I’m a bit strange, but I loved pointers too, never had a problem with them. In my time I’ve probably used every major language including C++ and C# right back to the days when it was still a Microsoft experiment named project Cool. I found this video quite numerous, my software dev days are now over, but the 30 or so years I spent doing it were some of the best times I’ve had.

  • @ashuzon
    @ashuzon 2 года назад +14

    Don't stop bro. Keep making such videos, and I bet you'll be better than fireship.

    • @conaticus
      @conaticus  2 года назад +4

      No one could beat fireship!

    • @ashuzon
      @ashuzon 2 года назад

      @@conaticus No, actually conaticus can.

  • @CSharpHub
    @CSharpHub 3 месяца назад +1

    Great content! Congratulations!!
    ❤❤

  • @Havok98
    @Havok98 2 года назад +1

    C++ is like Lego. You can build the castle of your dreams or scream in pain because of the peices scattered on the floor

  • @tobiewolfen01
    @tobiewolfen01 2 года назад +30

    Having learned C++ and C# in parallel to each other, I can say that I prefer C# despite the benefits of C++. My previous group wrote a C++ based service to communicate with IoT devices along with a C# based installer. The senior developer said C++ was preferred for the service because of the level of control he had with TCP packets and memory pointers.

    • @drgusman
      @drgusman 2 года назад +7

      Then that "senior" developer was not so senior as in C# you can simply enable unsafe code and have exactly the same benefits: pure native system calls, pointers, self-managed memory, etc...

  • @testdasi
    @testdasi 2 года назад +7

    This reminds me of the many jokes I have heard in my comp science class. e.g.
    - There are only 2 kinds of people, those who don't understand pointers and those who are dead
    - The Geneva Conventions have a critical loophole - you can torture PoW by teaching them pointers
    - 3 C programmers went to a bar. One pointed at the wrong beer. One pointed at someone else's beer. One pointed wildly at all the beers. The bartender couldn't understand them because she could only serve basic instructions.

  • @bombi7375
    @bombi7375 2 года назад +23

    Dude I loved this video was def expecting you to have more subscribers. Very well done:D

  • @trp
    @trp Год назад +2

    "Use C# if you want a job."

  • @alexandrubossro
    @alexandrubossro 2 года назад +1

    "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"

  • @That1PlaceBehindTheBush
    @That1PlaceBehindTheBush 2 года назад +53

    The situation with between C# and Java has changed drastically over time.
    Back in pre-2010, before the Oracle buyout Java was well-supported by Sun. Java was incredible for supporting multiple OS’s (“Write Once Run Anywhere”), whereas C# was very similar but without any portability.
    Now the situation is the opposite. Mono made C# extremely good for cross-platform development. C# added a lot of new features, improved performance, etc. Meanwhile Oracle has repeatedly sh*t the bed with Java.
    In case y’all don’t know: Oracle is known for buying up a lot of great services from struggling companies (hey, you remember OpenOffice?) and then becoming a greedy patent troll demanding a toll from everyone who relied on that service. See: Dalvik (Google/Android lawsuit), MySQL, etc

    • @Vexxel256
      @Vexxel256 Год назад +2

      Oracle is the greedy soop of the programming world

    • @Gamerappa
      @Gamerappa Год назад

      only oracle product i use is virtualbox even though i should be using qemu

    • @thomd2332
      @thomd2332 Год назад

      Exactly this.

    • @shyshka_
      @shyshka_ Год назад

      Oracle Database is also another whole different piece of garbage lol

  • @Waifu4Laifu
    @Waifu4Laifu 2 года назад +4

    Just watched a video about Quake 3. The code at 1:01 is how they quickly calculated inverse square roots for angle calculation

    • @theworm7156
      @theworm7156 Год назад

      You put the worst time stamp possible

  • @vlOd_yt
    @vlOd_yt 2 года назад +17

    Pretty much everything summed up:
    Use C if you want to have mental issues
    Use C++ if you want to end your will to exist
    Use C# if you want to not touch a computer again

    • @Wahinies
      @Wahinies 6 месяцев назад +1

      And use Java if you hate the user

    • @UltimateGamer-sl2kx
      @UltimateGamer-sl2kx 5 месяцев назад

      What's wrong with C#

    • @GrowMode_YT
      @GrowMode_YT 5 месяцев назад +1

      ​@UltimateGamer-sl2kx Idk, the only problem I had with C# was that i kept forgetting the semicolon (which is because I was coming from Python, and all of the languages mentioned also use the semicolon, so C# isnt alone). Other than that, the language is simple

    • @UltimateGamer-sl2kx
      @UltimateGamer-sl2kx 5 месяцев назад

      @@GrowMode_YT Thanks haha

    • @some-fan
      @some-fan 4 месяца назад

      so, just torture? lol

  • @filename1674
    @filename1674 Год назад +4

    As a c++ programmer, when starting it might be challenging to learn c++ if you have no programming background. But if you really want to learn c++ I would recommend you to learn python first and master the basics or at least be proficient at it like using loops, functions, class, and other fundamental stuffs then learn c++ after that. I promise you, the transition will be smooth since most programming languages if not all are fundamentally the same the only differences are syntax and their capabilities.

    • @ugib8377
      @ugib8377 Год назад

      Am learning python first. Then gonna eyeball C/C++. I hear it's better to learn C before ++. Any weight to that? Or?

    • @willmungas8964
      @willmungas8964 Год назад

      @@ugib8377there’s a lot more you have to do on your own when you go from a higher level language (like python) to a lower one (like C/C++). I’d say mentally prepare yourself to have to think a lot more in the planning phase of your programs, especially about what kinds of data will be needed and where, because C++ is a strongly typed language so you’ll have to be specific in your declarations of variables

    • @willmungas8964
      @willmungas8964 Год назад

      @@ugib8377just realized I answered a question you didn’t really ask lmao. As someone who started with C++ on my own, then Java then C in college, I would say that the order doesn’t really matter so much as learning each language correctly and understanding different programming design patterns. Knowing C at all is maybe the best thing you can do. It makes you a much better programmer in any other language because it forces you to do so many things on your own and you really have to break problems down to the level the computer works at. It will definitely help you appreciate (and be able to better take advantage of) the convenience of other languages and Object-Oriented features.

  • @You-qe6qb
    @You-qe6qb Год назад +1

    I started off with c++ and honestly I’m very glad I did. Since the language is multi paradigm it made learning other languages a lot easier (or atleast in my experience)

  • @DipsAndPushups
    @DipsAndPushups 2 года назад +8

    Pointers aren't hard to understand, you don have to spend some an hour or two to understand them and then practice them before you are ok with them. If you are interested in the topic and you love mental challenges of this type than you will enjoy the time spent on learning pointers. It is that people learn programming while actually hating math, mathematical-logical thinking and hate doing mental challenges of that type. But they still want to do computer science stuff, or at least they say they do.

    • @o.aggelos
      @o.aggelos 2 года назад +1

      Hard to understand they're not, they're just hard to find any use for them in the beginning. They seem to not provide any actual functionality in the beginning

    • @rauldragu9447
      @rauldragu9447 2 года назад

      @@o.aggelos Yeah, because in school almost everything is thought in completly the wrong way, relying on memorization rather that understanding and guided self-discovery. Pointers aren't even somthing new, they are just an extension of array indicies, but you treat the whole memory as a single array. I guess people from garbage collected languages find it cool to hate on them because they don't understand them? Or is that just the beginner, they know that each time they instantiate a class, they are using a pointer, right?

    • @o.aggelos
      @o.aggelos 2 года назад

      @@rauldragu9447 I didn't learn C in school. I'm literally 14

  • @_Cfocus
    @_Cfocus 2 года назад +10

    for me if you are a complete beginner learning c++ might be hard but if you understand it you basically understand most if not all other programming languages, just the syntax will differ

  • @lewisd56
    @lewisd56 2 года назад +95

    having taught myself C# about 8 years ago, then learning a bit of C and C++ at uni (and now teaching myself the rest of C++ working with Qt), yep, you are right. Maybe i'd say C++ isn't quite as bad as you say it is (ok, other than pointers and references), but I guess i came from knowing a language that is OOP and has a lot of similarities with C++. As one of my lecturers put it, C# was what happened when Microsoft asked its visual C++ devs what they didn't understand about C++ and then wrote a language to cater for them. And as another comment put it, C# is MUCH BETTER java, java just seems to make things unnecessarily difficult. Updating to a newer version breaks 90% of your dependencies, primitives arent objects, its got no support for unsigned types (because the developer decided no one should be using them... I don't care what the dev thinks, I expect unsigned types in a static typed language), and of course not forgetting factories to create objects that want to make you throw your PC out the window because of the amount of extra code it takes to do stuff. oh, and the entirely ridiculous state of UI libraries.

    • @quelqunderandom6143
      @quelqunderandom6143 2 года назад +4

      C# has been conceived as a middle ground for Java and C++, you can write non techie stuff but if you need to optimize you can make techie stuff appear and use it

    • @marcos_silvestri
      @marcos_silvestri 2 года назад +2

      I've been learning Java and you won't make me give up after all I went through till now :D

    • @quelqunderandom6143
      @quelqunderandom6143 2 года назад +2

      @@marcos_silvestri imagine having a standard logging library that does something else than logging

    • @marcos_silvestri
      @marcos_silvestri 2 года назад

      @@quelqunderandom6143 I haven't reached that log part in my studies. Is that Log4J?

    • @quelqunderandom6143
      @quelqunderandom6143 2 года назад

      @@marcos_silvestri yep

  • @AppsTricksByNazakatUmrani
    @AppsTricksByNazakatUmrani Год назад

    These types of videos I can watch non stop, great work please don't stop it ever

  • @Err-G
    @Err-G Год назад +1

    Amei a sinceridade no final do vídeo :)
    Hi from Brazil!

  • @inzaghiposumaalkahfi9650
    @inzaghiposumaalkahfi9650 2 года назад +5

    These are the Comparisons among of Programing Languages :
    C vs C++
    C# vs Java
    Python vs Ruby
    Javascript vs PHP
    HTML/CSS vs XML

    • @auritro3903
      @auritro3903 2 года назад +1

      I think you meant ruby

    • @imtauqeerkay
      @imtauqeerkay Месяц назад +1

      winner:
      C++
      C#
      Python
      Javascript
      HTML/CSS

  • @anibaldk
    @anibaldk 2 года назад +4

    1:48 that won't compile. "Elemenets" is not found. 😀

  • @sagemailer
    @sagemailer 2 года назад +6

    FOR SOME REASON YOU THOUGHT POSTING THIS WOULD PUT YOU ON THE MORAL HIGHGROUND YOU WILL BLEED IT APPEARS AT 0:46

  • @Sound_.-Safari
    @Sound_.-Safari 2 года назад

    As a programmer the thumbnail scared me away. Your takes are brilliant

  • @LUGENBÜHLSTÜDIOS
    @LUGENBÜHLSTÜDIOS 3 месяца назад

    Concise, funny, humble, cool, stick with that kid and you’ll be a ⭐️

  • @blaugranisto
    @blaugranisto 2 года назад +5

    Your C++ description is spot on! I studied C back in Uni and I never came close to liking C++! I tolerated C and Pascal but C++ was just a nightmare!

  • @stingray427
    @stingray427 2 года назад +4

    from what I've seen/read, compilers like Clang/LLVM is written in C++ and GCC leans more and more towards C++ nowadays. So major compilers use C++ and not C, if I am not mistaken.

    • @dylanfleming1124
      @dylanfleming1124 2 года назад

      This is true, although originally C++ wasn't truly compiled but rather translated to C, and then passed into a C compiler.
      As C++ because a 'stronger' language (for lack of a better word) a C++ compiler became more doable, until eventually it took over, largely due to the fact you don't need a lot of the low level benefits of C for a compiler, and some higher level concepts such as strings are useful for compiler development.

    • @DJstarrfish
      @DJstarrfish 2 года назад +2

      GCC absolutely does not lean towards C++, most of its source has only barely been edited enough to be passed through a C++ compiler. At best, it uses a very C-like subset of C++ for most of its source code. Also, to quote the man himself:
      "C++ is a badly designed and ugly language. It would be a shame to use it in Emacs. The reason the GCC developers wanted to use it is for destructors and generics. These aren't much use in Emacs, which has GC and in which data types are handled at the Lisp level." - rms

  • @matmajthm3222
    @matmajthm3222 Год назад +21

    "Use C++ if you are looking to write low level applications with more control at sacrifice of your will to live."
    That's exactly what we need, perfect!

  • @Petra_Christalbert
    @Petra_Christalbert 2 года назад

    Can u just stop being so relatable? I felt the pain on every word u said XD

  • @open-mindedlearners
    @open-mindedlearners Год назад

    Thank you for this video. Going to learn c++ in detail after java to get more control over hardware because I like to become a tough person.

  • @isnull_or_empty
    @isnull_or_empty 2 года назад +17

    I write mostly C# and when I have to go back and use Java it's easy to understand why C# exists. To call it a copy of Java seems like a bit of stretch but that being said C#'s syntax definitely borrowed ~some~ cues from Java but did it better, imo.

    • @pharoah327
      @pharoah327 2 года назад

      That's my problem. People who don't know the languages will look strictly at the syntax and say, "hey they look the same." This just proves those people have not looked any further into it. Once you actually learn both languages they couldn't be more different from each other. This myth of C# being a Java clone is only believed by those either not knowing C# or not knowing Java.

  • @matyasmarkkovacs8336
    @matyasmarkkovacs8336 2 года назад +4

    I started Pascal and later C++ as a beginner, I didn't find it hard to learn the basics of programming. Now I prefer C over C++ as a hobby "programmer".
    Python is too convenient for beginners, they get used to it's syntax and logic, and when they meet a more efficient language like C or C++ they'll find that hard. So I would still recommend C, C++, or maybe Pascal or Ada for beginners. (Ada has a Pascal like, very easy to understand syntax and it's a very powerful, yet underrated and forgotten language.)

    • @Poiuytrew-uq7dl
      @Poiuytrew-uq7dl Год назад

      Thanks! I was unsure about continuing a C++ course.

  • @Chironexe
    @Chironexe 2 года назад +13

    C++ is my official first language. I learned a bit of Python like variables, loops, if-else, lists/arrays, but I wouldn't consider it my first. C++ isn't that hard.

    • @toomanyhobbies2011
      @toomanyhobbies2011 2 года назад +4

      You clearly don't understand C++.

    • @anujmchitale
      @anujmchitale 2 года назад +1

      @@toomanyhobbies2011 And you do? Stop considering that it's universally difficult because it's difficult to you or you have seen videas claiming it's difficult.

    • @tomasstana5423
      @tomasstana5423 2 года назад +4

      Maybe for a God, but for us mere mortals, C++ is brutal ...

    • @Chironexe
      @Chironexe 2 года назад +3

      @@tomasstana5423 You just need to put more effort into it. It's definitely doable and in my opinion it teaches you more than easier languages. That's my opinion tho.

    • @Waitber
      @Waitber 2 года назад

      @@tomasstana5423 HHHHHHHHHHHHHHHHHHHHHHHHH

  • @astha_yadav
    @astha_yadav 2 года назад

    I love your sense of humor 😂
    Instant subscribe

  • @vixy236
    @vixy236 Год назад

    You roasted me in the end. I'm subscribing.

  • @kenshynoshana1783
    @kenshynoshana1783 2 года назад +6

    I wanna see more of this guy pretending to know what he is talking about :3

  • @animerge7057
    @animerge7057 2 года назад +7

    In short
    C : depression
    C++ : clinical depression
    C# : depression but java

  • @Adam_Lyskawa
    @Adam_Lyskawa 2 года назад +2

    It's not that C# is slower by itself. It uses the garbage collector that is slow, automatic memory allocation that can be slow in some cases. And it uses a framework instead of a kind of a standard library, that is not slow, but uses a lot of disk space and RAM. C# can be super fast in many applications, with the speed comparable to lower level languages. However, if you need real-time timing precision or low-level hardware access - it's no joy. Also GC can get in the way when you need smoothness, like in games. GC is good, but when you don't exactly control WHEN and how it happens, it could introduce annoying lags. BTW, C# is fast only with the latest .NET. 6.0 or newer. Best - compiled into native executable. Still, not yet any good for embedded - too bloated. Also, making C# code fast is not an easy task. You have countless ways to make anything very slow. BTW, pointers are not scary. Their magic is overrated. Think of them as normal references in C#. BTW, you can use pointers in C#. But it's pretty POINTLESS ;) JK, I actually found some uses, like processing the bitmaps for example. Most of the time you just don't need them.

  • @kouki7099
    @kouki7099 2 года назад +1

    I actually recommend starting with c++ because after you master that, you will feel easier when you'll learn a new language as opposed to learning other language first then c++

  • @gayathri1525
    @gayathri1525 2 года назад +1

    1:06 - 1:11
    Which website is this ? Can anyone please tell me ... Bcz I just want to run through my C++ carrier 🙏🤕

  • @barionlp
    @barionlp 2 года назад +5

    2:16 don’t use Java at all

  • @vini9598
    @vini9598 2 года назад +5

    Sehr gutes und lustiges Video, später wenn du erfolg hast kann ich einmal behaupten ich war von anfang an dabei.

  • @Wincohax
    @Wincohax 2 года назад +4

    1:09 - 1:13 This part killed me xD

  • @justmoody5797
    @justmoody5797 2 года назад +2

    In my Class they taught me C# at first I was like i never heard of it I learned it and used it a lot and it was great and then They taught us C++ and From that moment I lost the well to live and consider C# one of the most humble language you will ever learn.

  • @ClashClash89
    @ClashClash89 5 месяцев назад

    I learned programming on a very basic level in school with Pascal and Delphi, ended in a job were I coded html on a even lower lever (basically just textformatting), decided I wanna give game development a chance, and use Godot. Find out I forgot most of what I knew (which wasn’t much to start with) And decided I should „brush up on the basics“. Enrolled into cs50x and now I am learning C … instead of c++ or c# which would’ve actually been more useful. ^^D
    I feel like I am doing something wrong… but as long as I fail forward…

  • @thebagelbomb
    @thebagelbomb 2 года назад +6

    "Use C if you're looking to write low-level applications with high control over hardware. Use C++ if you're looking to write low-level applications with more control at the sacrifice of your will to live. Use C# if you don't like the look of Java and are looking to write high-level applications with ease."

  • @theinventor8793
    @theinventor8793 2 года назад +5

    the way you described C++ is very true for beginners(random linker errors, missing semicolon means random compiler sh*t, etc.) but if you give C++ some time(about 5 years of daily practice) to sink in, you would realize that whatever you can do with other languages, you can easily do with C++ with the luxury of memory control and fast af performance and keeping your user happy, while other languages cant achieve the same level of performance but can achieve the same task and make your user extremely unsatisfied with your application's performance and give a 1 star rating. C++ is f***ed sh*t when a beginner, but a boon when an expert.
    If you are a beginner looking to learn C++ and almost every feature in it, C++ Primer 5th Edition by Barabara Moo and Stan Lipmann is very good

    • @howldread
      @howldread 2 года назад +1

      ah, only 5 years...

    • @gavintantleff
      @gavintantleff Год назад

      Or you could learn rust and start avoiding memory errors immediately

  • @AboveTHATUSA
    @AboveTHATUSA 3 года назад +4

    you will be famous
    Thanks :)

    • @AboveTHATUSA
      @AboveTHATUSA 2 года назад +1

      that's exactly what i said :)

  • @Blaineworld
    @Blaineworld 10 месяцев назад

    0:18 what is so hard about pointers? is there something confusing about pointers i haven’t heard of yet?

  • @majdakkari5853
    @majdakkari5853 2 года назад +1

    Unpopular Opinion: Have a good grasp of C eases learning C++ immensely.

  • @LoganLeGallou
    @LoganLeGallou 2 года назад +4

    Je code actuellement en C# en cours et franchement le langage est super cool à apprendre, même si des fois a une erreur de merde et on sait pas pourquoi.. En tout cas merci pour les explications

    • @cookiedough5055
      @cookiedough5055 2 года назад

      Que codes-tu avec C#

    • @LoganLeGallou
      @LoganLeGallou 2 года назад +1

      @@cookiedough5055 ​ On apprends à coder en OOP par exemple des menus, avec plusieurs choix tels que "Ajouter un Complexe dans un tableau" et "Afficher l’inverse d’un nombre complexe saisi par l’utilisateur". Et avec les données de l'utilisateur on va faire des calculs et lui retourner les résultats.. ex: Inverse de (10, 3) : (0,0917431192660551, -0,0275229357798165). C'est relativement simple je trouve. Et bientôt on ferra de la programmation évènementielle, interfaces graphiques (Windows Forms .Net Framework)

    • @boris500
      @boris500 2 года назад +3

      @@LoganLeGallou You write french, with a Russian username in an English comment section. It's quiet confusing

    • @maelstrom57
      @maelstrom57 2 года назад +1

      @@boris500 #MrWorldwide

    • @boris500
      @boris500 2 года назад

      @ö you know I meant "quite confusing" right?

  • @electronicmag16
    @electronicmag16 2 года назад +4

    This guy must be protected at all costs! (cpp is a guilty pleasure however😬)

  • @Seriousbear
    @Seriousbear 2 года назад +1

    *what about Objective-C?*

  • @diegoabche
    @diegoabche 2 года назад

    Thought I would watch a very serious informative video, but it turned out to be a Gem!!!

  • @jondeere5638
    @jondeere5638 4 месяца назад

    Most programmers forget to mention that many if not most programming jobs are for editing or improving existing code. And a lot of that existing code is in C.