Posts

This profile is from a federated server and may be incomplete. Browse more on the original instance.

modev, to programming
@modev@emacs.ch avatar

The spirit of :clang: #clang:

  • Trust the #programmer. Generally speaking, the #C language assumes you know what you’re doing and lets you. This isn’t always a good thing (for example, if you don’t know what you’re doing).
  • Don’t prevent the programmer from doing what needs to be done. Because C is a system #programming language, it has to be able to handle a variety of low-level tasks.
  • Keep the language small and simple. The language is designed to be fairly close to the hardware and to have a small footprint.
  • Provide only one way to do an operation. Also known as conservation of mechanism, the C language tries to limit the introduction of duplicate mechanisms.
  • Make it fast, even if it isn’t guaranteed to be portable. Allowing you to write optimally efficient code is the top priority. The responsibility of ensuring that code is portable, safe, and secure is delegated to you, the programmer.
modev, to Software
@modev@emacs.ch avatar

Hello. You can call me @modev. I would like to write free #software, but I've been writing commercial software for 20 years to make a living for my family. I have been interested in #programming since childhood for about 25 years. I started with BASIC, Pascal, and even started learning :clang: #clang, but then switched to more “advanced” technologies. As a result, I found a job as a web #developer while still at university, where I still work. I am a JavaScript master, I created my own SPA Ajax framework from scratch back when React and Angular were not in the project, but who is interested in this, except for the company I work for? As a result, I, burned out many times, rising from the ashes of commercial development and all this crap, decided to return to the roots and teach :clang:. All I can do now is to believe that I will still make my contribution to the #development of free software, but for now I’m glad to be in your #community and learn new things, this is the only way I can save myself from burnout. Thanks everyone!

I could have written this way, but I decided not to do it there, having registered in the newly created community #writefreesoftware. Thank you, @drewdevault for creating it!

holgerschurig,

@modev @drewdevault

As a result, I, burned out many times

Wow, that's sad to hear. For some reason, that spared me. However, despite a bit working with Python+Flask, I never was in webdev. I went into systems programming, like Linux Kernel, Linux images, Linux apps in C, C++/Qt, Bootloader, Embedded. Hardware Drivers. I did some FOSS work (like upstream driver work for the Linux kernel, or patches to Barebox, or being one of the 4 founders of ) ... but like you I mostly did "behind the doors" code to pay my family and house.

But nothing of this ever touched my mental health.

I however heard several times from burnout of WebDevs. Do you think this is just by coincidence... or is there something in the WebDev industry that is gnawing on people's health?

modev, to programming
@modev@emacs.ch avatar

Personally, I have nothing against the emergence of new #programming languages. This is cool:

  • the industry does not stand still;
  • competition allows existing languages to develop and borrow features from new ones;
  • developers have the opportunity to learn new things while avoiding #burnout;
  • there is a choice for beginners;
  • there is a choice for specific tasks.

But why do most people dislike the :clang: #clang so much? But it remains the fastest among high-level languages. Who benefits from C being suppressed and attempts being made to replace him? I think there is only one answer - companies. Not developers. Developers are already reproducing the opinion imposed on them by the market. Under the #influence of hype and the opinions of others, they form the idea that C is a useless language. And most importantly, oh my god, he's unsafe. Memory usage. But you as a #programmer are (and must be) responsible for the #code you write, not a language. And the one way not to do bugs - not doing them.

Personally, I also like the :hare_lang: #harelang. Its performance is comparable to C, but its syntax and elegance are more modern.

And in general, I’m not against new languages, it’s a matter of taste. But when you learn a language, write in it for a while, and then realize that you are burning out 10 times faster than before, you realize the cost of memory safety.

This is that cost:

holgerschurig,

@modev

Personally, I also like the :hare_lang: #harelang. Its performance is comparable to C, but its syntax and elegance are more modern.

That exactly why I like #nim https://nim-lang.org/ --- it's IMHO much more mature than Hare and offers more targets (e.g. compile to C, C++, JavaScript, WASM or various embedded devices).

modev, (edited )
@modev@emacs.ch avatar

@holgerschurig I also started with nim, yes it's the best of new languages, but Python syntax... I am using C-like languages in everyday work and switching is tiring.

modev, to random
@modev@emacs.ch avatar

C is quirky, flawed, and an enormous success.

© Dennis Ritchie

modev, to random
@modev@emacs.ch avatar

Personally, I have nothing against the emergence of new programming languages. This is cool:

  • the industry does not stand still
  • competition allows existing languages to develop and borrow features from new ones
  • developers have the opportunity to learn new things while avoiding burnout
  • there is a choice for beginners
  • there is a choice for specific tasks

But why do most people dislike the C language so much? But it remains the fastest among high-level languages. Who benefits from C being suppressed and attempts being made to replace him? I think there is only one answer - companies. Not developers. Developers are already reproducing the opinion imposed on them by the market. Under the influence of hype and the opinions of others, they form the idea that C is a useless language. And most importantly, oh my god, he's unsafe. Memory unsafe. But you as a programmer are (and must be) responsible for the code you write, not a language. And the one way not to do bugs - not doing them.

Personally, I also like the Nim language. Its performance is comparable to C, but its syntax and elegance are more modern.

And in general I’m not against new languages, it’s a matter of taste. But when you learn a language, write in it for a while and then realize that you are burning out 10 times faster than before, you realize the cost of memory safety.

This is that cost:

louis, (edited )
@louis@emacs.ch avatar

@modev I don't think that C is "suppressed", it is just that it is undesireable to use it for most development tasks. What you gain (a bit more performance) comes at an extremely high cost.

Also, with so many languages that manifest through specifications, there are a multitude of solutions for common problems implemented and - naturally - nobody can agree on one. With C alone many applications still use C89. Most FOSS projects favor C99. Then there are GNU extensions, and so on. That makes collaboration on a wider scale very hard. Even with notable improvements in C23, wider adoption will likely take 10-15 years.

Moreover, writing platform independent C applications is a huge pain in the ass. Build systems are an even greater pain in the ass, CMake is an abomination. Pure C might be a "simple" language, but the C ecosystem is a mess. Package management is, for historical reasons, largely delegated to OS-native package managers and there is no way to make a library with declared dependencies easily available on all platforms.

All of these, any many more, factors contribute to adoptions of languages like Go or Rust, which basically solved all these issues from the start. Plus memory management, which is important because just by telling developers "don't do bugs" you won't avoid them.

I think there is no corporate agenda, it's just economics. When I can finish a project in a month with Go while it would take me 3 months to do the same in C, if not longer, there is simply no reason to use C anymore for commercial projects. Community projects are a different story.

Having said all that, C is freedom because nobody owns it. Which is why it will live on for a while, until the Rust crowd ... nah, let's not go into that 🙂

modev,
@modev@emacs.ch avatar

@louis I agree with you. For me, C is like an island in all these commercial development messes.

When I see teammates who can't understand how JS actually works (not to say about computers at all) and know only how to use frameworks I think about the future of programming. Companies care only about making money, not all of them, but...

It is not bad to have C skills in your portfolio even if employers do not need it. Just for yourself to be a better developer and know what you are doing.

Thank you for your answer.
Your server is great! 👍

modev, to random
@modev@emacs.ch avatar

Hi all, I have tried emacs editor, but it has not rolled into my mind. I prefer sublime text nowadays...
I hope it is not a problem here...

modev,
@modev@emacs.ch avatar

@dekkzz76 maybe, if you provide me usefull instruction how to set up it for win64 with all the sugar.

dekkzz76,
@dekkzz76@emacs.ch avatar

@modev

sorry never ran it on windows, but i'm sure if you ask on emacs.ch you'll get help.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • thenastyranch
  • rosin
  • GTA5RPClips
  • osvaldo12
  • love
  • Youngstown
  • slotface
  • khanakhh
  • everett
  • kavyap
  • mdbf
  • DreamBathrooms
  • ngwrru68w68
  • provamag3
  • magazineikmin
  • InstantRegret
  • normalnudes
  • tacticalgear
  • cubers
  • ethstaker
  • modclub
  • cisconetworking
  • Durango
  • anitta
  • Leos
  • tester
  • JUstTest
  • All magazines