Rendered at 15:21:23 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
TrackerFF 1 hours ago [-]
At school we had a bunch of older machines with windows 3.1, which had some touch typing program installed - it was the only thing we were allowed to use
Our first family computer was bought back in 1995. IIRC it was a 166 MHz Pentium / 16 MB ram machine with Windows 95. It cost around $3500-4000 back then, and that's not adjusted for inflation.
EDIT: As a side note, 3 years later I managed to get my hands on a copy of Half-Life, right after it was launched. Our computer, with standalone graphics card, was barely able to run the game. Back in those days, being a gamer and chasing cutting edge graphics was really expensive.
Prior to this we had a electric typewriter, and the main purpose of the machine was to be used for writing documents and other business activities. My first experience with programming, was editing HTML files. I then went to the library to look for books on programming, and the only book I could find there (rural nowhere with population 3000) was a book on Pascal, or possibly Delphi.
I was told that there was this one wiz kid in our small rural town that as supposed to be "really good with computers", he was a couple of years old. I hit him up, and the first thing I noticed in his room was this big "Borland C++" box on his shelf - he showed me a basic 3D flight simulator clone he was working on, as well as some sort of Doom clone. I was in awe.
Suffice to say, he did very well during the dot com boom. Skipped college, and went straight into employment.
A couple of years later, when I started in high-school, some older semi-retired developer had recently moved to town. He worked with our school, and offered a Java programming class. Really excellent teacher, and that was the moment I decided I wanted to work with computers.
safety1st 28 minutes ago [-]
I essentially owe my career to two great strokes of luck.
The first was that my father purchased a PC in the early 1990s to help out with his self-employed publishing business, and like most PCs of the time, it came preloaded with QBasic and the source code for a couple of games like GORILLA.BAS that an introverted kid with a lot of free time could mess around with.
The second was attending a high school with a reasonably well funded computer lab and an unusually open minded computer teacher. If you demonstrated that you were dependable, he'd basically let you do whatever you want. While my school was mostly a Mac shop, I was a bit of a Microsoft shill in high school so by graduation I'd figured out how to stand up and run a Windows NT file & web server for our school newspaper. Another guy was a Linux nut and had been allowed to do something similar with RedHat for the school's drafting lab.
Inclination met opportunity, one thing led to another, and I went on to work with technology for the next 25 years of my life.
What worries me now is that so much technology is so locked down. It must be a very rare school today that allows the kind of freedom we had. There is no IDE preinstalled on a phone, and even merely installing an "unapproved" app is under fire.
If for no other reason, for the sake of the kids the industry, the tools, the operating systems need to be more open. They need to be tinkerable. That's how the most motivated kids tend to learn. Our best and brightest are not being made because we've closed things down to maximize some hedge fund's ROI somewhere. The financialization of America was a grave error.
pixel_popping 2 hours ago [-]
I'll always remember that moment on RPG maker (probably around 9 years old) where suddenly I've understood Variables (I was experienced with HTML and so-on prior), a whole world was unlocked, VB6 programs became possible, everything "clicked" suddenly. I feel once you understand the fundamentals on how it works, it's easy to progress very fast as a child/teenager afterward.
With my kid I want to ensure that fundamentals of computing are understood as early as possible, this is what allows you to understand how the world is interconnected.
embedding-shape 54 minutes ago [-]
I similarly remember struggling with understanding what "classes" were in PHP as a kid and why on earth they'd ever be useful for, seems like needless abstractions, but finally it clicked, and a whole world opened up, suddenly I could understand much more of Zend Engine than before, and software engineering became a thing I started caring about. Of course, later I was enlightened again so now I avoid classes.
pixel_popping 48 minutes ago [-]
I also remember the infamous "OOP" PHP war :)
qsera 45 minutes ago [-]
One thing that was nice about the graphics programming those days was that when you drew something on the screen, it remained there until your program erased it.
This means that you could create cool looking graphics easily. For example, you can just compute the points of a circle and draw the points one by one, and in the screen it will show a full circle being drawn.
"Modern" graphics libs (even SDL I think), made this impossible by having redraw the whole screen every frame so that now my program has to remember all the points there the program drew before to get the same effect.
The former workflow made graphics programming so much fun for me and I find the modern "fast rendering pipeline" boring and not a lot of fun.
Things like that, one by one, have sucked the whole fun out of computing.
PaulDavisThe1st 1 minutes ago [-]
Both so-called "retained" and "immediate" mode graphics libraries continue to exist for most platforms, and you can choose to use whichever one you prefer.
PhilipRoman 24 minutes ago [-]
SDL is a relatively high level API and framebuffer style graphics work fine on it. I think there are some edge cases for X11 with non-compositing window manager where you will get interesting glitches if the window moves.
Jtsummers 32 minutes ago [-]
It's been a while (over a decade now), but I think SDL allows you to leave the contents on the screen if you don't call the clear function before you render new content. I don't know how well that'd work with resizing a window though.
qsera 25 minutes ago [-]
I think it works like that if acceleration is no enabled. But even then I think it does not work reliably..I might be missing something though.
Enivel 2 hours ago [-]
For me it was the view source era. Around 2001 I was copying HTML from Geocities pages and modifying them in Notepad. I didn't know what a programming language was but I knew how to change the background color and add a marquee. That instant feedback loop -- save, alt-tab, refresh -- was enough to get me hooked.
Guestmodinfo 52 minutes ago [-]
You seem to be writing about me :)
I also lived a very similar childhood. Class 10 computer science Board paper I prepared using pen and paper computing only.
The only difference is that I had BASIC, instead of LOGO.
Another difference is that I was not in an industrial town. Since sometimes you write in your posts about growing up in a small industrial town. I have a hunch you grew up in Jamshedpur in Jharkhand state.
WillAdams 1 hours ago [-]
I actually had to revisit this sort of thing in a recent design for a CNC --- for want of a good way to determine the location of a smaller circle nested into the region between two larger circles, I made a Circular Array of circles of the desired size, adjusting the number of them until one lined up as desired:
(If someone knows a good/ideal technique for that, I'd be glad to learn of it --- my math background is kind of shaky)
sebastiennight 19 minutes ago [-]
Let's give it a try.
I'm going to make two assumptions based on your screenshot:
1. The large circles A and B are touching each other
2. You know the radius (a,b,c) of each circle and want the third one (circle C) to touch both of the first two.
What I'd do is place the center of both circles A and B on the same horizontal line and choose a frame of reference such that the center of circle A is the origin, and the center of circle B is placed at coordinates (a+b, 0)
Now we are looking for the coordinates (x, y) of the center of circle C, placed above the x-axis. Which by the way is one of two solutions, as there is a symmetrical circle C' placed below the x-axis, with the coordinates (x, -y)
We know that if we traced a straight line from the center of C, it would intersect the x-axis at a 90° angle. So drawing that line creates two triangles which each have a right angle in this spot:
- one triangle on the left, where the hypothenuse goes from the center of A (0,0) to the center of C (x,y). Its length is the sum of the radii of A and C.
- one triangle on the right, where the hypothenuse goes from the center of B (a+b,0) to the center of C (x,y). Its length is the sum of the radii of B and C.
Both of these triangles share a vertical segment of length (y).
The left triangle's bottom segment has a length of (x) and the right triangle's bottom segment has a length of: (a+b) - x
We know from Pythagore that the square of the length of the hypothenuse is equal to the sum of the squares of the two sides of each triangle, so we know that:
and from there you find y, from y^2 = (a+c)^2 - x^2.
I did notice that in your screenshot A and B are of the same size, so if you knew this from the start it becomes way simpler.
x = a (of course the center of your new circle is at the vertical of the point where both circles touch, which is obvious due to the symmetry of the problem)
and
y = squareroot(c^2 + 2ac)
raghavchamadiya 3 hours ago [-]
That smell thing is so real. I still get hit with it randomly and I'm immediately 10 years old again
macNchz 1 hours ago [-]
Yeah that jumped out to me, when I read that line I could instantly remember the smell of my school’s computer lab, like a time warp in my brain. More than 20 years later I can picture the lab from high school perfectly, I could draw a little map right now of which computers were where.
didgetmaster 46 minutes ago [-]
I remember playing Digger on my IBM PC clone sold by AT&T (6300) back in 1987 or 1988.
I also remember that the game speed was set to some factor of the computer's clock speed. When I later tried to run the same game after I upgraded my hardware, the game went so fast, you could not even play it.
1 hours ago [-]
cube00 2 hours ago [-]
I never understood why Microsoft didn't have affordable licences to encourage kids to program.
The school computer lab had Visual Basic but you only got an hour week in there as part of the computing subject, the school library computers couldn't have it because the licence was per seat not per site.
You really only had QBASIC which was great but we really wanted to write Windows apps. You'd be up for a thousand dollars for a MSDN academic subscription just to get Visual Basic.
I guess the blessing was instead of Windows apps we made web pages and JavaScript games hosted on our parents ISP webhost accounts while we dreamed of the day we'd have enough money to buy our own .com domain.
...because Sales is busy with bombing schools with CoPilot & MS365 subscriptions and Sales Guys does not have this in their crosshair: They could create a much bigger and earlier addiction to MS products if they would enforce coding-for-kids-activities in schools and colleges :)
jeremyjh 3 hours ago [-]
I had many similar experiences, but almost a decade earlier. At grade school we had Apple 2s with Logo, Oregon Trail and other education classics. My junior high was a small parochial school that still had TRS-80s in 1988, along with some apples. My freshman year of high school was in a well funded district in Chicago suburbs. They had Macs with Excel and Word - we wrote lab reports in science classes with our data input and graphed in excel and the graphs pasted into the word doc reports - in 1990.
bsoles 1 hours ago [-]
I had fun times around 1985 with zx81, ZX spectrum, Commodore 64, and Amiga 500. Creating "games" with sprites and all... Even writing for loops with print statements were fun.
king_geedorah 3 hours ago [-]
It's striking how concise the program in the first video is. Also I had no idea "Digger" existed. I've only ever known Dig Dug in that style.
echelon 56 minutes ago [-]
I remember the titles on the old Apple II machines at elementary school:
- Oregon Trail
- Where in the World is Carmen Sandiego
- Super Solvers (the best of the lot)
I also got a Windows 95 IBM Aptiva PC from my parents that had a lot of educational software. I can only remember some of it:
- The Lost Mind of Dr. Brain (I loved this game - it had logic programming, 3D spatial reasoning tasks, biology, ...)
- Encarta Encyclopedia virtual maze
- Mavis Beacon Teaches Typing (I hated it; I learned to type when I got onto IGN Boards, EZboards, AIM, and IRC.)
- King's Quest VII (this counts as educational logic puzzles, right?)
- MechWarrior II (well, I considered it educational...)
I'm envious of kids today growing up with LLMs and vibe coding. I would have had a blast at that age with the tools we have today.
kj4211cash 3 hours ago [-]
Love this! You've inspired me to write my own blog post about my early days with an Amiga (1000?). I wonder how many of us have similar experiences.
pelasaco 1 hours ago [-]
Childhood computing for me smells like LOGO programming, King Quest, Space Quest and Police Quest games.. I loved test drive from Sierra. I graduated as game developer, because of Sierra. I wanted to work at nintendo. I ended up writing my firsts exploits in 99, got some fame on bugtrag and became cyber security expert in the 2000s.. but the only thing that I wanted, was to do game dev for living.. maybe one day...
empressplay 49 minutes ago [-]
I was lucky enough to be an autistic kid in the 1980s with access to a steady stream of new and novel computers: Apple II, Sinclair, Commodore, Atari, TI, Macintosh... kept me engaged and off the 'short bus'. If I had been born ten years earlier I'm certain my life would have been dramatically different (in a very bad way).
sonnyproto 2 hours ago [-]
Good old time :)
k2xl 2 hours ago [-]
I miss those days. Oregon trail was the first game I played on the computer in 1993 (there was a computer in our Kindergarten class).
Nostalgia for the old web - building websites in HTML on Angelfire and Expage.com. Learning programming on visual basic and how to copy and paste <marquee> to welcome people to the site and to sign the guestbook…
anthk 1 hours ago [-]
Similar experience, but I sucked at Logo, as I was my first day with computer. I aced the 'encrypted' (number->letter substitution) math puzzle (similar to the Emacs one, M-x mpuzzle), tho.
qsera 1 hours ago [-]
As computers grew more powerful, they became less interesting.
There is a lesson in there somewhere that humanity has not yet woken up to.
bluefirebrand 46 minutes ago [-]
I don't know if it's that quite it
I think they became less interesting because they became more homogenous, more standardized, more commercialized
It's like the internet. It was more interesting when everything was spread out and you felt like you had to explore it. Now it's all the same content collected on the same 5 sites, and it feels like there's nothing actually interesting out there anymore
qsera 15 minutes ago [-]
Not sure. Computers where pretty homogenous back then as well. Every time I find myself infront of a computer, I would do "cd games", and there would be games...
I think it started becoming less interesting as it grew more powerful and with it came more capable displays and GUI interface, and before you know it, computers are indistinguishable from a damn television.
At least for me as computers started showing more realistic graphics, it became less abstract, less magical, less interesting. After all, reality is pretty boring...Not sure how we collectively missed that fact...
bluefirebrand 6 minutes ago [-]
That's fair.
There's probably also an aspect of "The computer used to be a place you would go, now it's a rectangle that comes everywhere with you"
It's definitely less magical when it is everywhere and in everythin
You're not alone in missing the magic though. I miss it too
Our first family computer was bought back in 1995. IIRC it was a 166 MHz Pentium / 16 MB ram machine with Windows 95. It cost around $3500-4000 back then, and that's not adjusted for inflation.
EDIT: As a side note, 3 years later I managed to get my hands on a copy of Half-Life, right after it was launched. Our computer, with standalone graphics card, was barely able to run the game. Back in those days, being a gamer and chasing cutting edge graphics was really expensive.
Prior to this we had a electric typewriter, and the main purpose of the machine was to be used for writing documents and other business activities. My first experience with programming, was editing HTML files. I then went to the library to look for books on programming, and the only book I could find there (rural nowhere with population 3000) was a book on Pascal, or possibly Delphi.
I was told that there was this one wiz kid in our small rural town that as supposed to be "really good with computers", he was a couple of years old. I hit him up, and the first thing I noticed in his room was this big "Borland C++" box on his shelf - he showed me a basic 3D flight simulator clone he was working on, as well as some sort of Doom clone. I was in awe.
Suffice to say, he did very well during the dot com boom. Skipped college, and went straight into employment.
A couple of years later, when I started in high-school, some older semi-retired developer had recently moved to town. He worked with our school, and offered a Java programming class. Really excellent teacher, and that was the moment I decided I wanted to work with computers.
The first was that my father purchased a PC in the early 1990s to help out with his self-employed publishing business, and like most PCs of the time, it came preloaded with QBasic and the source code for a couple of games like GORILLA.BAS that an introverted kid with a lot of free time could mess around with.
The second was attending a high school with a reasonably well funded computer lab and an unusually open minded computer teacher. If you demonstrated that you were dependable, he'd basically let you do whatever you want. While my school was mostly a Mac shop, I was a bit of a Microsoft shill in high school so by graduation I'd figured out how to stand up and run a Windows NT file & web server for our school newspaper. Another guy was a Linux nut and had been allowed to do something similar with RedHat for the school's drafting lab.
Inclination met opportunity, one thing led to another, and I went on to work with technology for the next 25 years of my life.
What worries me now is that so much technology is so locked down. It must be a very rare school today that allows the kind of freedom we had. There is no IDE preinstalled on a phone, and even merely installing an "unapproved" app is under fire.
If for no other reason, for the sake of the kids the industry, the tools, the operating systems need to be more open. They need to be tinkerable. That's how the most motivated kids tend to learn. Our best and brightest are not being made because we've closed things down to maximize some hedge fund's ROI somewhere. The financialization of America was a grave error.
With my kid I want to ensure that fundamentals of computing are understood as early as possible, this is what allows you to understand how the world is interconnected.
This means that you could create cool looking graphics easily. For example, you can just compute the points of a circle and draw the points one by one, and in the screen it will show a full circle being drawn.
"Modern" graphics libs (even SDL I think), made this impossible by having redraw the whole screen every frame so that now my program has to remember all the points there the program drew before to get the same effect.
The former workflow made graphics programming so much fun for me and I find the modern "fast rendering pipeline" boring and not a lot of fun.
Things like that, one by one, have sucked the whole fun out of computing.
https://community.carbide3d.com/uploads/default/original/3X/...
(If someone knows a good/ideal technique for that, I'd be glad to learn of it --- my math background is kind of shaky)
I'm going to make two assumptions based on your screenshot:
1. The large circles A and B are touching each other 2. You know the radius (a,b,c) of each circle and want the third one (circle C) to touch both of the first two.
What I'd do is place the center of both circles A and B on the same horizontal line and choose a frame of reference such that the center of circle A is the origin, and the center of circle B is placed at coordinates (a+b, 0)
Now we are looking for the coordinates (x, y) of the center of circle C, placed above the x-axis. Which by the way is one of two solutions, as there is a symmetrical circle C' placed below the x-axis, with the coordinates (x, -y)
We know that if we traced a straight line from the center of C, it would intersect the x-axis at a 90° angle. So drawing that line creates two triangles which each have a right angle in this spot:
- one triangle on the left, where the hypothenuse goes from the center of A (0,0) to the center of C (x,y). Its length is the sum of the radii of A and C.
- one triangle on the right, where the hypothenuse goes from the center of B (a+b,0) to the center of C (x,y). Its length is the sum of the radii of B and C.
Both of these triangles share a vertical segment of length (y).
The left triangle's bottom segment has a length of (x) and the right triangle's bottom segment has a length of: (a+b) - x
We know from Pythagore that the square of the length of the hypothenuse is equal to the sum of the squares of the two sides of each triangle, so we know that:
So Develop it all Simplify and from there you find y, from y^2 = (a+c)^2 - x^2.I did notice that in your screenshot A and B are of the same size, so if you knew this from the start it becomes way simpler.
x = a (of course the center of your new circle is at the vertical of the point where both circles touch, which is obvious due to the symmetry of the problem)
and
y = squareroot(c^2 + 2ac)
I also remember that the game speed was set to some factor of the computer's clock speed. When I later tried to run the same game after I upgraded my hardware, the game went so fast, you could not even play it.
The school computer lab had Visual Basic but you only got an hour week in there as part of the computing subject, the school library computers couldn't have it because the licence was per seat not per site.
You really only had QBASIC which was great but we really wanted to write Windows apps. You'd be up for a thousand dollars for a MSDN academic subscription just to get Visual Basic.
I guess the blessing was instead of Windows apps we made web pages and JavaScript games hosted on our parents ISP webhost accounts while we dreamed of the day we'd have enough money to buy our own .com domain.
https://www.folklore.org/MacBasic.html
- Oregon Trail
- Where in the World is Carmen Sandiego
- Super Solvers (the best of the lot)
I also got a Windows 95 IBM Aptiva PC from my parents that had a lot of educational software. I can only remember some of it:
- The Lost Mind of Dr. Brain (I loved this game - it had logic programming, 3D spatial reasoning tasks, biology, ...)
- Encarta Encyclopedia virtual maze
- Mavis Beacon Teaches Typing (I hated it; I learned to type when I got onto IGN Boards, EZboards, AIM, and IRC.)
- King's Quest VII (this counts as educational logic puzzles, right?)
- MechWarrior II (well, I considered it educational...)
I'm envious of kids today growing up with LLMs and vibe coding. I would have had a blast at that age with the tools we have today.
Nostalgia for the old web - building websites in HTML on Angelfire and Expage.com. Learning programming on visual basic and how to copy and paste <marquee> to welcome people to the site and to sign the guestbook…
There is a lesson in there somewhere that humanity has not yet woken up to.
I think they became less interesting because they became more homogenous, more standardized, more commercialized
It's like the internet. It was more interesting when everything was spread out and you felt like you had to explore it. Now it's all the same content collected on the same 5 sites, and it feels like there's nothing actually interesting out there anymore
I think it started becoming less interesting as it grew more powerful and with it came more capable displays and GUI interface, and before you know it, computers are indistinguishable from a damn television.
At least for me as computers started showing more realistic graphics, it became less abstract, less magical, less interesting. After all, reality is pretty boring...Not sure how we collectively missed that fact...
There's probably also an aspect of "The computer used to be a place you would go, now it's a rectangle that comes everywhere with you"
It's definitely less magical when it is everywhere and in everythin
You're not alone in missing the magic though. I miss it too