Why am I writing this post? Not because I hope for something or believe in change. These are just words. I could write this at the end, but then you would be looking for answers for me while reading, and I don’t need them. They won’t change anything.
So here it is. I don’t claim to be a software development guru or a C language expert. I’m just a simple developer.
Why are we looking for new technologies? Why do we want to be part of a community that is buzzing with new projects? Why do we think that this new programming language will definitely help us create something amazing and truly great and, of course, will make us rich and provide us with a comfortable old age?
Why are we offered so many courses in so many programming languages and frameworks? Why do we teach what is required for companies that make money from us?
Why are there a lot of conferences on banal simple things, such as *** framework or ### technology (so as not to offend anyone), and there, with a smart look, newly minted gurus tell us how important it is to be able to transfer the value to the client and how to use certain templates?
Why do computers become more and more powerful, but programs continue to lag?
Why, when applying for a job, do we look for a vacancy based on knowledge of a programming language, but find it only based on knowledge of certain frameworks? Is it really difficult for a professional programmer to learn a framework in a week?
Why do we go into software development with the enthusiasm to create something great, but end up in a situation where we are developing some other catalog or some other digital yo-yo to make money?
Reason: because we want our passion for programming, our interest, to also bring us income.
Feature: we do not earn this money for ourselves, but for companies whose main goal is to quickly receive income from the software they sell.
Bugs: posts like this one.
C is modern hippy-dippy shit, let’s go back to the only good compiled language: FORTRAN
Eh. If you are not using punch tape, are you even really programming?
FORTRAN does work on punch tape; that’s why column numbers matter.
Pfft. Compilers.
Okay FORTRAN is not that bad.
Was this thing generated by a poorly trained LLM?
I can only hope so
deleted by creator
I expected such reactions. Thank you all for your answers. We are living in the stream. Every one of us has his own. And circumstances restrict us from changing these streams. What you are feeling when reading this post is your mind’s memory safety. :) I also feel pain when someone is trying to say that my way may be wrong. But I did not tell you that your way is wrong. I also have my way restricted by the fact that I need to earn money for my family. And I hate this fact, and that I can’t change my stream just by one click.
You should not switch to the C, it will be very dangerous. We just can be aware that all can be different and use this knowledge on our way.
Memory safety is exactly why c needs to die
What is memory safety? You as a programmer must control what you are doing. Right?
Software written by some (not you) developers using high level tools can be written by AI and will be soon.
Let’s learn C to not loose your job, lol.
You as a programmer must control what you are doing. Right?
You telling me you’ve never made a programming error? Your code always compiles and passes all tests right?
No. And what? I made a million errors and I am still alive.
Tell that to the victims of the Therac-25
that burned more than therac 25
Do you really not know what memory safety is? How long have you been programming?
It’s rust’s borrow checker or garbage collectors or smart pointers.
That’s not true at all. But if it was what stops the LLMs writing c?
deleted by creator
I love c# personally. Gives you flexibility to write high level code when performance isn’t an issue or jump all the way down to raw pointers and native compilation when it does.
Interestingly the new tiered jit can achieve better performance than a traditional compiler as it has runtime information to further optimise code.
C in my experience becomes a nightmare as code bases grow.
Why stop at programming languages? Let’s scrap everything invented in the last 50 years!
Does that mean we can go back to when houses were cheap? I’m willing to make this sacrifice.
Sure, asbestos is effective and cheap insulation
If I went back to the early days of C, it would be because John Connor sent me there in a time machine to destroy the first compiler before it could become self-hosting
But the time machine has been written in C so you could not return back and had to write a C compiler from scratch. Here the story about returning to the roots begins…
We have better tools than C today, in C’s own domain.
So many parts of C are poorly designed or outdated and we’re stuck with them because of backwards compatibility.
Look how long it took to deptecate “gets”, a function that is pretty much impossible to use safely.
My choice pick is Nim but Zig and Odin are contenders too.
Plus rust as well.
Nim has beautiful syntax. But does it has a lot of tools?
One problem with this is that C is in no way the “roots” of programming; it’s older than most of the languages we use today, but Fortran, Lisp, and Cobol are all older and are also still in use. (And of course there are other languages that predate C but have mostly fallen out of use, such as Pascal.) It feels “low-level” because it closely reflects the hardware for which it was originally designed, the PDP-7 and later the PDP-11. But in fact it hasn’t truly been “low-level” for a long time: I highly recommend the ACM article “C Is Not a Low-level Language; Your computer is not a fast PDP-11.”
Sooo, why return to C? I don’t get it.
Most (popular) programs are lagging because they’re all bundling an entire web browser to get around the cross-platform hurdle. Good in theory, bad in practice. However, even infamous programming languages like Java are now as fast as C thanks to advances in hardware and software, such multiple cores and asynchronous tasks.
As fast as C is likely an overstatement, few languages can claim that, but the difference can be negligible or faster in certain optimized usecases.
Jesus, just stop talking