Commute talk: Learning C before C++?

  Рет қаралды 9,698

Andreas Kling

Andreas Kling

Күн бұрын

Пікірлер: 30
@aphaxtwan
@aphaxtwan 4 жыл бұрын
I had a pretty similar experience with starting C++. It feels like there's a huge amount of style variations between old and new C++, and as a beginner, I had no idea about the "modern expressive" way of writing.
@JoshuaKisb
@JoshuaKisb 4 жыл бұрын
Ooh controversial topic... Honestly it depends on where you learn from. Recently watched a video called "Stop teaching C" (click baity title), basically relaying your experience also. most C++ tutorials end up teaching C in weird ways and make it hard for people learning C++. therefore easy path is C then C++. However it is very possible to find some good C++ beginner tutorials that teach things properly. so it all depends on where one learns from IMO
@AlexanderRomanenko
@AlexanderRomanenko 4 жыл бұрын
C++, JavaScript, Java books were the first ones I came accross. I legitimately tried and could not get passed what is boolean or what is for-loop. I then came across ColdFusion Markup Language. It then made perfect sense how all the basic programming constructs worked by seeing the way HTML page gets changed within HTML-like commands , , even how to query database. Following that, retrying Java, PHP, JavaScript, C++ were no trouble at all :)
@CalvinAytch
@CalvinAytch 4 жыл бұрын
Ah, I see, I should learn ColdFusion first.
@PizzaGamingTheReal
@PizzaGamingTheReal 3 жыл бұрын
Hey there. Which books do you recommend to read for Operating Systems and Computer Architecture in 2021?
@Chewchewman
@Chewchewman 4 жыл бұрын
I agree with you on this
@TBasianeyes
@TBasianeyes 2 жыл бұрын
To me, C++ is still scary. Much like you I read these 500 page C++ books when I was a kid and I feel that the language got even more complex since then. It feels like you have to know sooo much before you can even get started with something relatively simple.
@your-mom-irl
@your-mom-irl 2 жыл бұрын
You don't have to use all the bloat they dumped on top of it
@carlosbentzen
@carlosbentzen 4 жыл бұрын
Hey Andreas, recently watched your drag & drop stream, really interesting! Always took this feature for granted. In the topic of window managers, what do you think about the different WMs in Linux, MacOS and Windows? I recall X11, Wayland, XQuartz (no idea what runs on Windows), oh and the good old DirectFB. Have you got your inspiration on any of those for SerenityOS? Great content!
@SlyEcho
@SlyEcho 4 жыл бұрын
C was my first real language, before I even had a PC I had a book about it. Not counting BASIC. Recently I got back to it because of some coursework in my master's and it's honestly pretty refreshing to not have to think about references and smart pointers. And it's possible to write object-oriented code just fine. With C11 even some basic template kind of things are possible with macros and inline functions. Anyway, I've been meaning to ask if Serenity will have an object oriented ABI like COM in Windows etc?
@taha7shaikh
@taha7shaikh Жыл бұрын
Thank you.
@yanu5067
@yanu5067 4 жыл бұрын
I Like your videos, keep up the good work. Any thoughts on the new c++ features. Are you using c++14/17 features?
@DevlogBill
@DevlogBill 2 жыл бұрын
Wow, basic? That’s an old language. I think basic was the language used for the old commodore computers! Brings me back memories. That was my very first programming language as a kid, I never learned it completely but my father taught me how to create loops on that plate form. Now after so many years I got into coding fairly recently. Four months ago I began by learning SQL on MySQL, Python for data Science and eventually fairly recently took up JavaScript for web development. Now I am taking a CS50 course online a Harvard course and they are teaching C and I love it. It has so much utility. Question, how similar is C and C++? If I learn how to use C is it hard to switch to C++? How different are they? Also, if you don’t have college but your decent with math can you get a job if you know C/C++?
@subhadiplayek
@subhadiplayek 4 жыл бұрын
What do you think about Rust programming language?
@TheSulross
@TheSulross 3 жыл бұрын
Subhadip Layek I myself have used C++ off and on since back when it was implemented only as CFront in the late 80s (used C for professional programming before that). Rust is generally a rather good language with a number of worthy concepts in play. And it has been very influential on C++ community because there's really a lot of cross-over that goes on. Rust is the first language, out side of the D language, that has become perceived as a reasonable language to use for systems programming. Before then C was the goto systems programming language, and then to some extent C++. But C++ (and D) haven't really been used to write operating systems as C has - more so middleware server stuff and apps, and especially games. This SerenityOS is rather notable for its primary use of C++. So Rust is often talked about as a good language choice for systems programming and is often spoken of as a new modern language that one cloud reasonably chose in place of C++. A lot of that has to do with how it deals with memory management on terms more comparable to C and C++ (i.e., no intrinsic garbage collection runtime), but brings a lot of compiler assistance to the management of memory that facilitates safe use of memory. C++ has been going this direction to since C++ 11 but is not as sophisticated as Rust is (yet). That gap is closing as C++ has been on a rapid evolutionary path since C++ 11, and various IDEs and tools are providing additional rules checking such that programming with C++ is closer to Rust in that department than it otherwise would be (if left to the compiler language unassisted). C++ community has been inspired by the functional programming concepts found implemented in Rust, and some of that has made its way into C++. And there are proposals for adding pattern matching to C++ 23, which Rust implementation of pattern matching is a significant example and influencer for that. The thing C++ still enjoys over Rust is a richer, deeper eco system - and it still leads in areas such as programming GPUs (and other modes of true parallel programming). There are some that complain that Rust is way too hard to port over and bring up on new platforms and that it only has good support on tier one platforms. C++ tends to have a very wide breadth of platform support, well because it's been around since the Triceratops was gazing the Great Plains.
@kalekold
@kalekold 3 жыл бұрын
Rust's syntax is too strange for people to move from C and C++.
@insaneminer
@insaneminer 3 жыл бұрын
I really like c, but is there better things in c++ for os dev. And what do you think about rust?
@2hstrikes
@2hstrikes 4 жыл бұрын
I saw Casey Muratori roast your C++ kernel code in one of his Twitch streams, i think it was 2 or 3 streams back.
@awesomekling
@awesomekling 4 жыл бұрын
Beware those who would roast instead of toast :)
@willmcpherson2
@willmcpherson2 4 жыл бұрын
I have huge respect for Casey Muratori but I would never take advice from game programmers on anything other than games. The data-oriented design stuff really exists in its own game programming bubble.
@2hstrikes
@2hstrikes 4 жыл бұрын
@@willmcpherson2 Unfortunately i couldn't agree with you, OOP brings more problems to table than it solves, C++ sure has useful stuff like RAII, that helps avoid stupid memory mistakes. Now to OOP, if you have these inheritance tree's and you decided you wanted change something few years or 10 years down the road, you can't just do that, because now you have logic that's stuck in tree structure and it's very hard to add new features. Now with data oriented design you can swap out old logic for new logic quiet easily and even make the old and new logic co-exist if you wanted to test out new features.
@2hstrikes
@2hstrikes 4 жыл бұрын
Also games are one of the most complicated software there are next to OS development: Graphics, Servers, Sound, Logic, Performance etc... Game's programming pretty much touches on all possible categories there are in software development.
@VexillariusMusicEDM
@VexillariusMusicEDM 4 жыл бұрын
Do you know which specific stream it was? I like watching Casey talk out of his ass about stuff that he didn't make that has to be bad because he didn't make it
Commute talk: Quality of browser code (my opinions)
13:05
Andreas Kling
Рет қаралды 4,6 М.
Commute talk: How I learned OS development
15:59
Andreas Kling
Рет қаралды 9 М.
Bike vs Super Bike Fast Challenge
00:30
Russo
Рет қаралды 23 МЛН
Will A Guitar Boat Hold My Weight?
00:20
MrBeast
Рет қаралды 195 МЛН
Как подписать? 😂 #shorts
00:10
Денис Кукояка
Рет қаралды 5 МЛН
Commute talk: What do I hate about C++?
10:57
Andreas Kling
Рет қаралды 6 М.
Commute talk: Advice for beginners
10:29
Andreas Kling
Рет қаралды 4,5 М.
Premature Optimization
12:39
CodeAesthetic
Рет қаралды 806 М.
2 Years Of Learning C | Prime Reacts
22:24
ThePrimeTime
Рет қаралды 285 М.
Commute talk: How to start building an OS?
12:20
Andreas Kling
Рет қаралды 10 М.
Car talk: My top advice for programmers looking to improve
10:27
Andreas Kling
Рет қаралды 4,5 М.
Car talk: How I learned to get hard things done at Apple
11:27
Andreas Kling
Рет қаралды 14 М.
Just enough C to have fun
39:29
Kay Lack
Рет қаралды 40 М.
How different are C and C++? Can I still say C/C++?
10:25
Jacob Sorber
Рет қаралды 223 М.