Its very different living in the late 80s to early 90s coming up with cool ideas that push affordable hardware to their limits just like John Carmack did with games like Keen, Wolf3d, Doom and Quake.
It was at an era where someone good at their craft can get the recognition they deserve. However, while some things he managed to figure out himself.. other things were ideas from others. He simply tried it and reviewed the results!
Looking in the games industry today - an 'individual' is not going to get the same recognition like John Carmack back in the day (or Ken Silverman, etc)
This industry is LARGE. Any god-like programmer trying things within a large corporation is not likely to get noticed today as they hide away in the background pushing an in-house games engine forward. I am sure there are a fair number of John Carmacks out there. Invisible... nameless legends pushing things, etc.
As for indie companies - why risk trying to be a 2026 version of John Carmack when Godot, Unreal, etc, exists. Its a different world today!
Same thing for AI. I bet there have been some legendary programmers working on AI in the last 10 years. Again, nameless individuals behind the brand.
If any names are mentioned... its likely CEO's or other higher ups... not the talent underneath. I guess thats good business strategy and works [for the business].
Focusing on John Carmack - I am not taking anything away from him. He is a legend. I am sure he contributed towards VR before and after Meta purchase. With AI.. I guess we will see.
At the end of the day the guy could walk away and focus on hobbies. Still has a lot of batteries left. More power to him.
Where are you likely to hear a "Success Story" especially an adult who likely moved on from Scratch since they were... what.. 10 years old. Perhaps younger.
Truth is you are either going to be interested in programming.. or not. The question is how the brain triggers to get you interested.
I could argue the starting point (for me) was Visual Studio 6.0. (1998)
Or.. maybe.. it was Turbo Pascal and Turbo C. (1997)
Or.. maybe.. it was Quake and QuakeC. (1997)
Or.. maybe.. it was the Open University books laying around. (1995)
Or.. maybe.. it was watching DooM for the first time. (1993)
Or.. maybe.. it was playing the Amiga at my friends house (1991)
Or.. maybe.. it was playing the Amstrad at my friends house (1989-1990)
Or.. maybe.. it was the BBC Microcomputer I never got to touch in school. I saw others using it, though. (1988?)
Or.. maybe.. it was watching a zx spectrum advert around 1985. A little toddler pointing at the screen and expressing his interest to Mum. I loved that advert (and actually came across it again recently on YT) -- is this the REAL starting point?
Point is... Scratch is likely a great starting point for kids today. For some they might move to Python or something and forgetting where they started. Like me, they probably had other things before Scratch that peaked their interest.
scratch was the trigger for me just as you say. I was turning 11 when we used it at school (28 now). A year or so later I was reading Java for Dummies and making little tools on the TI-84. Then learning C++ and python on a raspberry pi 1B. I’m grateful to that computer lab teacher who thought scratch was worth teaching.
My usage of YAML has been limited. For the times I have used it (kubenetes, docker compose, other things, etc) -- I don't get what it so special about it.
It just seems reinventing the wheel again and again.
I am not suggesting JSON is perfect, either. However I do prefer it to YAML (and XML) by a mile.
It's a shame s-expressions never taken off.
(select (id name)
(:from users)
(:where (= name "Peter")))
12 years old when Windows 95 was installed on our 486 PC. Such a change from Windows 3.1
I do remember my dad jumping back to Windows 3.1 atleast once, likely for the reason of performance/memory issues at the time with Win95 - but he did go back to it. Overall, it was a big step.
A couple of years later, likely to run Quake better that in did on our 486, he built his own PC. Pentium 133. I couldn't remember what RAM and HD space it had. Maybe 32MB RAM with 200GB disk or something. I am just guessing.
Regardless, running Windows 95 on it was night and day. High resolutions and smooth experience! It likely crashed a lot but when you had nothing really to compare it to, it is annoyances that were not that big of a deal back then. You just accepted it.
Of course, playing Quake on it was an absolute dream. A year or so later - we then had 3dfx cards. Good times!
Moving to Windows 98 just didn't seem like a big step to me. Windows 98 looked exactly the same as 95 except the desktop was riddled with icons to the internet. I hated it. Eventually you moved over it. Looking back, Win98 was likely a heavily improved Win95 and didn't crash as often. Again, these are things forgotten in time.
How times changed. I also had Windows 2000 at University and then moved to Windows XP. I had to keep reinstalling WinXP every 6 months as my mouse cursor would start to move downwards on its own. As much as I liked XP (eventually) it was the starting point of moving over to Linux.
My experience with Vista was not great. Again, from memory felt very bloated. Windows 7 was good. Never used Windows 8. Windows 10 was good. As for Windows 11... its simply mixed with pros and cons.
Because despite all the fear, uncertainty and doubt thrown at the C language over the last 20 years, the truth is that its a relatively 'easy' language to use.
What do I mean by 'easy' ?
C books can typically be about 300-500 pages give or take. Compare that with modern languages especially a Java book in the 2000's, it would be closer to 600-1000 pages.
Why? Because half the book is talking about Object Oriented Programming.
C is simpler by comparison, once you get your head around it quirks and gotchas. Afterall, every language has their own gotchas!
To me, there is a difference between good C programmers and bad or non skilled ones. Those that understand C can write some good and efficient programs that care about performance and memory.
With all the above... the truth is that you could write this towards ANY language. They all have their pros and cons.
> I don't understand why anyone would still start a new software project in nodejs today, given the long track record of mistakes developers can make in it.
> I don't understand why anyone would still start a new software project in python today, given the long track record of mistakes developers can make in it.
> I don't understand why anyone would still start a new software project in java today, given the long track record of mistakes developers can make in it.
And dare I say this one...... ???
> I don't understand why anyone would still start a new software project in rust today, given the long track record of mistakes developers can make in it.
OK. You can argue that rust is not old enough to be labelled the "..given the long track record.." - but everything else stands.
Maybe I'm an old fart - but I miss when you could purchase a game and play it. No need for internet or signing up. Insert, press power, and play.
I understand times have changed. You cannot just insert a cartridge or CD\DVD and run. Games are so large that running off a disc is not good enough anymore. They need to be installed on a hard drive. I wouldn't be surprised that some games are so large they require more than 1 bluray disc. However, they should still work "out of the box"
Well this should be the case for single player mode. For multiplayer then you may need to create an account, etc.
I don't know.
Just seems that even when you purchase a physical copy it does not contain the full game. You still have to access the internet to download additional content.
Truth is ownership. Do you really "own" your physical game? I mean you own the Disc it's on but the contents all go through the games console and their services. You essentially own the rights to play the game!
It's nothing new with Microsoft since Windows 95 (even 3.1) and their end user license. You never owned it. It's just times have changed, now. Microsoft are not just trying to control your computer via its operating system, but to control the whole computer itself.
Why is this any different for game consoles? Do you really "own" the console? I mean I am willing to put money down that one of the 3 Companies would lock you out if you tried to do something on Sony, Microsoft, or Nintendo's latest systems that "you shouldn't be"
Let that sink in. You spend how much on a console... and it really is not yours. Oh, and how much do you spend on games... and it really is not yours. Yes.. physical or not!
None of this surprises me. However, I do not know what the solution is, either. Well, other than if you purchase it, it is your copy! If it isn't, then why should I spend over £/$40 for these games?
I believe this is a chunk of the reason why I am not a gamer anymore. There are some games I still play but I don't know if I will every play the latest and greatest of games including GTA6. Maybe one day.
If I made a game - I would still follow the old method. Maybe use Steam. If you buy it then you get the files. It's yours! You can play it! It would work without the need of the internet!
Could some people pirate it? Sure. However, I am confident that if the game is good or atleast enjoyable then I would have received a nice sum of money - or atleast allow people to buy me a coffee through my website if they enjoyed it.
The biggest power is consumers have is our wallets. Say no if you disagree and don't give them money. I am willing to do such a thing. Sadly, the majority don't care. They just want ease of use. This is not just about games, but many things.
GCC, GDB, CoreUtils, etc - A COLLECTION of useful programs alongside a kernel such as Linux.
Barely relevant?
We owe our thanks to the GNU project. If Linus did not create Linux, something else would have taken it's place. "Maybe" HURD... or maybe something else.
> HTMX makes it hard to build even basic things, because it swaps entire HTML forcing a full repaint. That's the foundation of how it works.
I 100% disagree with this comment.
Lets make this clear, htmx does not swap 'entire html' - you have control to refresh whatever section of the page. That is not a full repaint.
I am beginning to wonder what tests you have done in htmx before making such a verdict.
Yes - I break my Views into "small components" - I guess it's better to say I create a lot of Partial Views. I follow a simple 'where there's one, there's many' mindset. All Partial Views are designed to return an array, even if what I need is a single record.
> Examples include user highlighting text
I've written an Application (in htmx) that has a text area for sentences. There is 'compile' function that breaks down the sentence, colouring specific words/phrases. How does it do this? htmx! It sends it back to the server-side and builds the sentence.. returning back the html with coloured texts and other meaningful attributes. It overwrites that section of the screen. It is light and fast!
The great thing is all validation and html rendering is done of the server-side. No code duplications or anything.
Now, this is perfectly fine for what I am doing. However, the text is barely no more than 30 words. If I was trying to write a text editor the we have a different type of problem. If using htmx, would likely work it out to update a portion of the editing code, perhaps per line. This would move it away from using a text area.
> Or user mid scroll through a menu, the scroll is reset to the top
I believe, with the text solution I mentioned above, I also pass it the cursor position. As we are processing the text, any changes may move the cursor - so I let the server-side handle it. This is great because the functionality written is not designed for just the web - but any 'text area' in any GUI!
From memory, with some javascript, I managed to return to the caret position once the html section was refreshed. I cannot remember 100% how I did this as I do not have access to the source code.
> On game dev: I think it's good...
I've already commented about game dev and htmx. I will paste that section here:-
Would I use htmx if writing a web-based game? probably not. I guess it would depend. I would assume I'd be writing a fair be of javascript for WebGL-based rendering and typical update logic (input, physics, health, etc)
Maybe WASM is a better choice in this domain. I don't know.
I am one of those 'htmx lovers' but I do not comment that is the be all to end all.
Every website you create, just like any form of application, is based on solving a particular problem. How you solve that problem can vary from dev to dev. Some devs may disagree you your solution just as you can disagree with theirs.
I do stand that htmx can be used to solve a good chunk of problems that otherwise would be done with React, or angular, and so on. Personally, I think htmx makes the problem easier to solve. Well, once you get over the learning curve of the htmx way.
To be able to build a website or SPA without writing much client code (JS, etc) is a win in my book. You don't need a dedicated front end team for larger sites. Also, the designer/UX team (if you have one) can focus on the server-side template system.
Regardless - frontend is not dead. htmx, afterwall, is written in Javascript. htmx doesn't stop you writing javascript code. It's just I hardly need it for business logic. If anything it might be used to compliment CSS.
Would I use htmx if writing a web-based game? probably not. I guess it would depend. I would assume I'd be writing a fair be of javascript for WebGL-based rendering and typical update logic (input, physics, health, etc)
Maybe WASM is a better choice in this domain. I don't know.
Just curious.. what language(s) are you using now?