
Today marks the 13th anniversary of this blog’s first post. The blog didn’t go live for a few months, specifically to ensure that I would A) keep up the posts (a fault with many blogs) and B) have plenty of material for visitors to peruse. It’s been going strong and consistently since that original post, April 13th, 2013.
The blog was presented as a companion to the book Beginning Programming with C For Dummies, which is a few books ago. It’s referenced in the current title, C Programming for Dummies, 2nd Edition. So whichever version of the book you have, the blog is supportive.
The stats: This blog has 982 posts with over 876 comments. I don’t know how many visitors show up every month. In fact, knowing the exact number might be disappointing, but I keep posting. Currently 28 humans subscribe; I limit subscriptions because otherwise bots subscribe to WordPress blogs in huge numbers.
New Lessons arrive every Saturday. New Exercises are posted the first of the month, with solutions posted eight days later.
Given the current state of my career, decimated by AI, I do have a termination date for this website and the blog. Right now, I’ve written that it will be in 2029, though I might need to move up the date to 2028 because that’s when the site’s SSL certificate expires. I don’t need the SSL certificate, but all the internal links are https, which would require a lot of updates. Even so, I’ll keep up with the posts and all that.
I’m also making the move from Windows to Linux. The graphic at the top of this page was created in Linux and not Illustrator. My plan is to completely eschew Windows within the year. I would strongly recommend that everyone serious about using a computer do the same.
Thank you for visiting. Thank you especially to those who contribute. I do appreciate it! I shall continue to write about C as much as I can. It’s a great language and will be with us for a long, long time.
This post should have a triskaidekaphobia warning 🙂
Haven’t used Windows for about ten years and the only MS software I use is VS Code, and I also use Github. I suppose I should start looking for alternatives.
I have seen a lot of code either auto-generated by some sort of deterministic process (typically database access or database admin code, export/import/migration etc.) and it is often ridiculously bloated. On one occasion I edited an automatically generated SQL script of many hundreds of lines down to a handful. On another occasion I spent many days trying to get an SSIS (Sequel Server Integration Service) package, about 30000 lines of XML, to work properly. In the end I gave up and replaced the whole lot with four stored procedures, each of about ten lines.
I have also been involved with a few outsourced projects where an external company has been given a spec and has delivered a “fully tested and operational” solution maybe six months or a year later which turned out to be a disaster area.
What I am getting at is that I’m very sceptical about the long term viability of AI generated code, especially at the low level C is typically used at. If code generated by code written by humans, or code written by humans without a direct connection to the end users, cannot be relied on then that doesn’t say much for code generated by mixing up and regurgitating other code. In the short or medium term it might increase the bottom line but I think it is creating an ever growing mountain of technical debt.
While I agree with just about everything Chris Webb has said, I think the somewhat sad truth we have to face is that Cʼs glory days are over. Rust, or Rust-like languages, will replace it—yes, even in embedded systems.
Although primarily for the PC, Canonicalʼs Ubuntu is probably a good example of where things are headed. Package by package, C solutions are being replaced by Rust variants (for example, sudo → sudo-rs, coreutils → uutils).
Personally, my first contact with MS software was in 1987 (MS-DOS 3.30, Windows 1.01), and with Linux in 1994 (Slackware 2.1, Linux 1.1)… and since then I have basically tried to achieve some mastery on both systems. Therefore, the answer I have found for myself is: Windows and Linux.
Anyway, the day this blog receives its last entry will certainly be a sad one. Not only because this is an invaluable resource for everything “C”, but also because Dan has quite obviously perfected the art of finding programming challenges that not only are interesting but also relatively easy to solve. A big thank you from me, for taking the time to write these weekly blog posts… and for coming up with all these programming exercises!
My unbiased guess is that C will take a place on the sofa with COBOL. You will still find C coders, but they’ll be in high demand to maintain legacy code. With the sheer volume of active C code out there, it’s going to take a while to turn everything over to Rust or whatever.
Thank you for your kind words. I’ll continue to maintain this site for as long as I can. I may end up archiving it on my private server so it’s still around after 2028.