There's an extended version (with a few more minutes about COLOR and HCOLOR) on Nebula! nebula.tv/videos/codingtrain-coding-challenge-174-fractal-tree-on-apple-ii
I'm a big fan of this new series. I like the commitment you have to the style of the era, even with the silly intro and a theme song. Something about you programming in this reduced environment is very relaxing. I always try to use the least complicated tool for a task and this feels just perfect. Thank you for making these videos.
Totally agree. I'm not big on processing or P5, but this series has me completely fascinated. There's something very relaxing about it, definitely. Maybe this is the programming equivalent of manual machining videos, compared to CNC?😁
Totally share the feelings. As a kid I started to make silly programs in a friend's house who owned an Apple IIe and these videos about programming in the apple IIe makes me travel to those times.
I literally watched this in between college classes and I’m just so happy that I can watch a coding video as pure entertainment. Please keep this series going!!!
I have been struggling with bouts of depression as of recently and I just wanted to say that your videos are one of the only things that actually make me feel happy. Seeing you work through algorithms on this old outdated computer and seeming so happy whilst doing it genuinely makes me feel so good for some reason. It's taking something that I have a lot of interest in, that being programming, and making it purely entertaining instead of making it to be a sort of monotonous chore. Thank you for putting so much effort into these videos.
Exactly. Man, if he can have this kind of fun today, I can only imagine the wonders he must have witnessed with his apple when he was twelve. Funny thing, my 1st home pc was a 286, and I was very bad at coding then, and the only thing I could imagine to do was pixels with random colors all over the screen. These first examples of him put me a bit on TBT mode... lol...
Despite his infectious enthusiasm, the whole video does have a cool, calming, almost hypnotic effect, The video flew by too fast, I'm watching it again. Taking notes this time around.
When I was a kid in the '80s I "invented" push and pop by using a string as a stack and pushing numbers on by converting integers between 0 and 255 to characters using CHR$. I think that was before I learned machine code and learned about stacks. I probably didn't even realize they were the same thing. I really miss being able to just turn the computer on and start plotting pixels. The stuff you have to do on any modern OS and programming language to just plot a pixel is ridiculous. Installing some kind of framework like Processing or SDL2 is usually the easy way and is not always easy and never as satisfying as doing it natively.
I wish there were more capable versions of the renderers that processing provides. Getting a triangle, or even a pixel with something like openGL with plain code (meaning not as easy as "pixel(40,60)" is just garbage. It's either starting easy with processing or directly getting into vulkan, shaders and whatnot. No small step up...
It's so much fun to see you having so much fun with this thing. I love the little Ziggy (from Quantum Leap) moments from Future Dan. Also, I think a double buffering video would be pretty interesting indeed.
I've recently been binging a bunch of your coding challenge videos and these recent apple II+ videos have been great! I would also like to mention that the genuine fascination and happiness you convey in your videos have brightened my days, during some recent tough times, thank you for doing so much for the coding community. You are like the Bob Ross of programming! 🚂
This actually looks like fun. The overall tone and snobbery on coding forums, all this "the right way to do stuff", actually prevented me from getting into coding multiple times. The same thing happened with music. Then i found youtubers (like this one) that make it actually fun to learn things.
I no joke loooooove these videos. There's something crazy about how intuitive and usable coding in BASIC is that makes these so fun to watch! Hope to see more!
back in 1989 my mother was 14 and actually helped pay for her education by learning Basic on an Apple ][ and then teaching at schools, showed her this video and she loved the fact people still enjoyed the wonders of the past. thanks for the videos!
@@robertsyrnicki5638 ahhh cool yeah i forgot they can drive LED's really nicely , been watching Dave's Garage and he's done some cool stuff with esp32's and led's, i thought maybe you made some kind of gpu out of the esp32 or something like for another micro controller to use. I think the esp32 is fast enough on its own, my 25mhz 486 computer from way back could run doom, im sure a 240mhz dual core esp32 could do it but i hear the limits is the ram, not big enough for a screen buffer
This is by far the best thing I’ve accidentally stumbled upon. I took coding classes in late middle and high school. None got hem matched this guys absolutely adorable energy. He’s funny, smart, and extremely relatable. I laughed so many times while watching your video and really want to try coding in basic. Keep doing what you’re doing, you’re inspiring the young generation. :)
I remember typing in a Mandelbrot plotting program listing from a copy of Incider magazine and letting it run all day while I was at school. It still hadn't finished by the time I got back home. Regarding renumbering; the DOS 3.3 Master disk came with a Renumber program that would load a renumbering utility into memory. It utilized the so-called "ampersand hook" in that you invoked it by typing '&' at the prompt and pressing RETURN. By default it would renumber all lines in the program so they start at 10 and increment by 10.
So glad TH-cam recommended this and the previous AppleSoft BASIC video... absolutely fantastic. Thank you so much for making these; they've really revived my interest in programming! You're great at teaching and so genuinely enthusiastic-it's really a beautiful thing. Please continue.
i'm not sure what he's better at: math, coding, or keeping the viewer interested in the process. TOTALLY subscribing, love the video, love the attitude, love everything. keep it up!
Daniel - this is so cool! There are people out there that are still teaching kids how to code using BASIC and computers from the 80s. Your videos are very good for that. All the best with you Apple II nebula series as well! ;-)
@@eBrunoro 8 bit computers are very friendly for coders. There is nothing to install, they have a simplified language with a simple graphics API. There are also tons of type-in programs. ... and there is also nostalgia. However - I think the best method to introduce kids to coding is by using a simplified online platform... (I have my preferences here).
@@eBrunoro because the machine is 'instant on". You flip the power switch and it's there ready for your input. And coding is not confined to some programming language, it is more the kind of thinking required to break down tasks into managable steps until the computer understands it. Although I must say 'unlearning' all the unsavoury habits BASIC put into my brain was really one of the harder tasks 😉
The variable name length used by Apple Basic is 2 characters. You can use longer, but "10 STARTX=5; STARTY=10;Print STARTX" will print "5" as the actual variable name in applesoft is "ST" Also, what's this whiteboard thing, That's some weird futuristic magic. That should be a blackboard and chalk. renumber was a BeagleBros tool.
You are the prof that programing skill is not about Hi tech computers or hi level language, but about reasonning, patience, problem solving and efficient algorithms..good job.
Your enthusiasm for graphics programming on retro devices is infectious, and this brings back wonderful memories of writing similar programs for my Tandy TRS-80 Color Computer 2 when I was a kid. Thank you for this video, it was so much fun!
@Ryan : those good old memories from 40++ years ago :-) my first "computer" was the SR-52 from TI in 1975, and my first real computer in 1979 had a 6502 with hex keyboard, 8 digit 7-segment display, and 1.25 kb ram. a year later i got the apple ][+ (choice was between trs80, pet, and apple). later we severely modded its hardware by soldering stacks of ram chips to its mainboard to increase it from 48kb to 4×48 kb, getting an additional 144kb (just enough for a ram-floppy disk of 140kb and 4kb of tricky driver software to do the bank switching; loading of new levels of one game reduced from two minutes every minute to only less than one second each time), and also replacing the character generator prom with another eprom and a ram so that we could load variable fonts, or separately access each single dot to do better graphics. a friend designed the hardware and i did the software (mostly not even in 6502 assembler, but directly in hex, lol). too bad that all this is not possible to do with any emulator :-( btw: i also found that the sound generator (done with software in the apple rom) had a timing bug and replaced it with a new gosub to a short routine that i placed in some free bytes among dos :-) ... later, i extended this to playing two selectable notes at the same time by changing the ratio of on/off (using hystheresis of the transistors) on that original speaker (the simple toggling by peeking created that sound you heard in this video) a year later we blew the power supply by pulling 5A from it while it could only deliver 4A (officially only 1A or 2A) ... which then got me the Atari 1040, while other people switched from pet/c64 to amiga ... the apple's corpse still is somewhere in my storage ...
I don't know how I missed this the first time around, I see that I'm still subscribed and I check my subscriptions page every day. Especially considering that I love fractals. The interesting thing about this fractal tree is that you don't need an array, stack or recursion to draw it. You just need to keep track of the angle and count of the nodes. Then each level can be drawn left to right or right to left and it'll run faster on older hardware that way too. One of the more beautiful aspects of symmetric fractals, they're super easy to make efficient.
Thank you for making these, sincerely. The Apple IIc was my first computer, BASIC my first language, and this fills me with such warm nostalgia. GOTO statements. Those sweet monochrome graphics. The simple joy of coding something and seeing it happen. We're so lucky to be able to do this for a living
I like that you keep your mistakes in rather than editing it out. Reminds people new to code and programming (like myself) that everyone makes mistakes
This series is sooooo cool! I love it! Please make another one! Don‘t stop now! What about reading a graphics file from disk and display it in HGR? Or programming a simple racing game with horizontal lines, steering a car with a joystick?
I was never interested in BASIC until I watched this series. And I also love the fact that you have so much joy while coding. It makes me feel at home to see other people enjoy it as well!
I can't express how I enjoy your 80s-retro-series, this is totally awesome! I grew up with the C64 of my dad and I have a special sentiment to this decades computers.. thank you very much!
This is truly so entertaining to watch! The theme song at the beginning and the whole setting just gives such a good vibe. I'd love to see more of this 🤩
This totally gave off retro/nostalgic vibes, reminding me of how fun it was to simply sit at the computer and figure out how to make the lines dance every which way in HGR mode. You've re-captured the excitement and sense of adventure in exploring the possibilities many of us experienced in our teens (give or take), and how satisfying it is to write code, and make it work. Thank you for this.
Love your enthusiasm, it is contagious. I was a little burnt out while learning to code and this really helped. I hope one day have this much passion about programming and life in general. Keep up the good work!
its really beneficial that your video includes making mistakes, figuring out where it went wrong, then fixing and explaining it. i dont think many newcomers realize that often times debugging takes far more time&effort than writing code to begin with. and that never, ever ends; no matter how good you get :)
I love this! I started programming when I was 11 on a TRS-80 CoCo, at first in Microsoft BASIC, then supplemented with 6809 assembly for performance, eventually moving on to PC's with C and other languages. It turned into a career for me, and sometimes I long for these days when it was pure programming - no DLL or library hell, odd OS and driver bugs, connectivity issues, or weird bugs in one of the 30 packages you import.
very fun to watch what I learned back in high school. We (computer programing class) would try to make a video game with mini fractals with trees, and snow flakes. The game was of a skier and you had to miss the trees. The snow flakes were just for background. When we were able to use a color monitor we would put in a random color for the snow. The trees were always one color, but the skier would have different color clothes at first of the life. Its been over 30 years since then. Thanks for the walk down memory lane.
Thanks for this video. I appreciate seeing you struggle through this. Because I tend to program on my own, I never get to see how others do it, or see what they don't know.
I love your video and enthusiasm for programming on Apple II computers. This brings back good memories of learning to program Apple II's, TRS-80, and Commodore computers.
I love your enthusiasm! Too many programming related channels are monotone. I always learn something interesting in your videos. Also, the intro video for this series is amazing :)
Really loving these videos as it takes me back to when I was learning to code in the 80's on a TRS-80 CoCo 3 and looking at code written in another computers Basic and trying to replicate it on your own machine then wondering why certain syntaxes don't work the same.
I coded a Mandelbrot fractal on the Apple 2+ circa 1982 when I was a kid. I'd got a copy of Mandelbrot's book and spent quite a bit of time working out the mathematics - That's where I first found out what a complex number was. The program took 2 days to run. Many years later I'm designing cryptographic circuits for a semiconductor company. Maybe there's a connection there.
Hi Dan... this is... amazing. I was 12 when I started programming in Basic on an Olivetti PC 128, (an italian rebrand of the Thomson MO6), connected to the living room television... [It also had an optical pen... SCI-FI!] I never stopped coding since then, in any language, for every purpose. Now I'm a web developer, and a teacher in the field of VR / XR... and all started with those 128 Kb of RAM... in the living room!
This is the first video of yours that I have seen. I really like your style and enthusiasm. Definitely more retro videos please. I would love to see you play around with forth on the Apple ][!
I thought I'd poke in to say how much I'm really, really enjoying this series. As useful and informative current as the other videos are, I feel like there's a lot to be learned about the basics of computing from using BASIC or ASM on a limited system. No libraries or includes or additional bits to use, nothing else going on elsewhere to think about. It makes the ideas clear an immediate and easy to follow. I'm sure there are some frustrating elements like constantly re-writing most of a line. But something tells me you think more about a line of code the fourth time you have written it out. I really want this series to continue, it would be really interesting to see how an assembly version of the same fractal tree program would run vrs the basic one on the same system. Keep up the good work sir. It means a lot!
This is so extremely cool, please continue that series. Actually each of your previous Coding Challenges would be interesting to seen recreated 🙂 (even that lots of them probably would run really slow^^)
Thank you so much for this excellent video! The apple][ is such a direct machine, where one can truly interact and be creative on the computer. The first Applesoft Renumber was published by Apple Computer in 1978. Later in 1980, it was part of the Applesoft Toolkit. ProDOS came out in 1983.
These videos are great, I just recently picked up an apple //e and without any disk drives, and these videos let my try different things to do with it!
I really LOVE your apple II+ videos! That very machine was the first computer I ever had. I learned programming on it. Also spent hours and hours playing Wizardry, Zork, and other games. Please make more! :)
Reminds me of the time I developed a text based quiz on a Dec Vax using Fortran, then added colour and flashing text and using inverse to create a 3D effect on the orange screen monitor. Those were the days! Loving the energy you provide, I’m buzzing trying to locate an emulator to see if the data feature enables storage of binary to create a sprite using hgr or hgr2 lol 😆 keep them coming!
problem with the colors in hgr was that each dot used 2 bits (4 colors only), and an additional bit per byte selected between two "palettes" of 4 colors each. thus you could only have dots with the same palette next to each other, and painting a dot from the other palette over one of those dots would change all dots of that byte.
@@Anson_AKB Actually, pixels used just one bit each with an additional "palette selection" bit for each group of seven pixels. The palette selection bit delayed the video signal by the width of half a pixel. Color was achieved by alternating pixels on and off horizontally. Steve Wozniak took advantage of the NTSC composite video signal to produce color graphics without using the amount of RAM really required for independently colored pixels. That is, the hi-res color was, more or less, faked. From a color perspective, the horizontal resolution was really only 140 pixels instead of 280 pixels.
OMG Daniel! You've joined THE CLUB-welcome! That club? That would be anyone who's effortlessly melded two or more "worlds"- computer art with cinema in your case, as per the opening. Still, you have a seriously wonderful curiosity that you're pouring into these tutorials-kudos! ! !
I really like how you solved your x and y inversion. Normally we try to keep these kind of fix secret but you make it a statement!!! really enjoyed the video. thanks bud :)
this is really interesting. I've recently gotten into coding in python and am working on wirelessly controlling motors for robotics. I really wish I would have had more of an interest in this growing up.
The excitement this guy feels when his code just works just reminds me of my own excitement when I started working as a software developer decades after him. X3
I was thinking all this time: "whay does it look so familiar?" Then it came to me: I used to have an Agat - USSR clone of Apple II and I used to learn coding on it when I was in school...
Great video as always. I cut my teeth on the Sinclair ZX machines and the BBC Model B in the early 1980s before ending up working as a professional developer from the mid 90s. I've been working in event driven OOP systems for the last 27 years and had forgotten the fun and challenges of procedural coding. I am loving watching you re-explore the world of Apple Basic.... it's fun getting back to coding this way. Would love to see something about double buffering if you get around to it!
Love your videos! DO NOT switch that monitor out! That setup is all period correct AND the apple ii is a monochrome machine at heart. If you do go for it, the only acceptable monitor would be an Amdek Color I or II I already know this as this is the first computer I ever put my hands on and grew up on these in elementary school, but I just love to watch you! PLEASE More Apple II ...I still learn stuff.
Why did you use multiply operation for changing (pre)sign? :) This is a slow CPU operation. Use instead VX = 0 - VX. If VX is minus 1 then new VX will be 0 - (-1) = +1. Else if VX is positive 1 then new VX will be 0 - 1 = -1. :) Adding or decreasing is faster CPU operation than multiply :)
back when I was in high school, we had a basic editor we used to use to help write the code, cannot remember what it was called but we would load it in then load the program you were working on and it made life so much easier. If i remember correctly it used the upper part for your 'display' area and the bottom 2 lines for instructions to the program. Oh and as a fun side note that original twisting bouncy line screen saver was written by a class mate in pascal on the apple ][ and he later went on to MIT to do some more programming.
This reminds me of something we would do using Logo back in grade school. I don't remember whether this was possible on Apple II Logo, but I do recall using multiple turtles and recursion to draw trees like this on some Logo implementations.
@@TheCodingTrain I'm adding the comment again. I hope to not be a duplicate. The previous version was deleted by TH-cam because it contained a Url. // LOGO program from fmslogo [dot] sourceforge [dot] io [slash] workshop /* TO PLANT :SIZE :ANGLE IF :SIZE < 1 [ STOP ] RIGHT :ANGLE FORWARD :SIZE REPEAT 4 [ PLANT :SIZE / 2 DIFFERENCE RANDOM 160 80 ] BACK :SIZE LEFT :ANGLE END
PLANT 100 0 */ // and JS version function plant(size, angle, t) { if (size < 1) return;
Showing how programming works, hands down awesome. Teaching you the first step of debuging. Check. We have it pretty simple with vs code, but the fundametals haven’t changed that much. At the end of the day READ and learn how to understand the DOCUMENTATION. And find yourself in it. Awesome video.
If you run out of lines, you don't necessarily have to renumber. You can just goto out and come back in. Gosub also works, but it uses stack space. Yes, that's spaghetti code in action! 3d sounds cool, but ugly without hidden line removal, too slow with it. You may want to use an old trick like the one Elite uses. Only render viewer facing polygons on convex objects.
it helps to write a main program in lines 100, 200, 300, etc, with each line being a gosub to 1000, 2000, 3000, etc. if changes are needed, all these separate parts are easier to maintain.
I can kind of relate to this, i am currently studying computer engineering and the first language that i learned to the core was C, but not the most recent C, we actually used an IDE that was developed for the MS-DOS system and it was called TC-2.0 It also included a graphics mode that had support for up to 16 colors. And one of my assignments for the Programming Languages class was to program a minesweeper. I loved this video, and i loved your recursive fractal tree, keep up!
There's an extended version (with a few more minutes about COLOR and HCOLOR) on Nebula! nebula.tv/videos/codingtrain-coding-challenge-174-fractal-tree-on-apple-ii
psshey what is drought
among
I asked no painkillers
Can you ask @ImbaMarinesto unblock me? I got blocked iny sleep.
me
I'm a big fan of this new series. I like the commitment you have to the style of the era, even with the silly intro and a theme song. Something about you programming in this reduced environment is very relaxing. I always try to use the least complicated tool for a task and this feels just perfect. Thank you for making these videos.
Totally agree. I'm not big on processing or P5, but this series has me completely fascinated. There's something very relaxing about it, definitely.
Maybe this is the programming equivalent of manual machining videos, compared to CNC?😁
I love this series too!
Thank you I really appreciate this feedback!
Totally share the feelings. As a kid I started to make silly programs in a friend's house who owned an Apple IIe and these videos about programming in the apple IIe makes me travel to those times.
The intro is just ❤😍 but I am an eighties fan
Cheer from France
I literally watched this in between college classes and I’m just so happy that I can watch a coding video as pure entertainment. Please keep this series going!!!
I literally watched this too! With my eyes!!!
Apologies for some of the comments on this thread, they have been removed. Thank you for watching!!
Wholesome and educating entertainment!
I have been struggling with bouts of depression as of recently and I just wanted to say that your videos are one of the only things that actually make me feel happy. Seeing you work through algorithms on this old outdated computer and seeming so happy whilst doing it genuinely makes me feel so good for some reason. It's taking something that I have a lot of interest in, that being programming, and making it purely entertaining instead of making it to be a sort of monotonous chore. Thank you for putting so much effort into these videos.
They should honestly make a retrospective movie about your life. You're the Bob Ross of programming, my guy. 💕
Happy little trees as well
Happy little fractal trees!
YES! That’s a great description of this guy. Bob Ross of programming. I learn so much and feel better about life on earth at the same time.
Exactly. Man, if he can have this kind of fun today, I can only imagine the wonders he must have witnessed with his apple when he was twelve. Funny thing, my 1st home pc was a 286, and I was very bad at coding then, and the only thing I could imagine to do was pixels with random colors all over the screen. These first examples of him put me a bit on TBT mode... lol...
Despite his infectious enthusiasm, the whole video does have a cool, calming, almost hypnotic effect, The video flew by too fast, I'm watching it again. Taking notes this time around.
LOVE THIS!! Brings back 9th grade memories. HGR!! Parents bought an Apple ][ + a year later and my "career" started...
I'm glad you point out mistakes for the people that are somehow following along, so they don't have to fix it by the time you realize it in the video
the intro song, the aspect ratio, the colour grading … pure perfection
When I was a kid in the '80s I "invented" push and pop by using a string as a stack and pushing numbers on by converting integers between 0 and 255 to characters using CHR$. I think that was before I learned machine code and learned about stacks. I probably didn't even realize they were the same thing.
I really miss being able to just turn the computer on and start plotting pixels. The stuff you have to do on any modern OS and programming language to just plot a pixel is ridiculous. Installing some kind of framework like Processing or SDL2 is usually the easy way and is not always easy and never as satisfying as doing it natively.
I wish there were more capable versions of the renderers that processing provides. Getting a triangle, or even a pixel with something like openGL with plain code (meaning not as easy as "pixel(40,60)" is just garbage. It's either starting easy with processing or directly getting into vulkan, shaders and whatnot. No small step up...
It's so much fun to see you having so much fun with this thing. I love the little Ziggy (from Quantum Leap) moments from Future Dan. Also, I think a double buffering video would be pretty interesting indeed.
I've recently been binging a bunch of your coding challenge videos and these recent apple II+ videos have been great!
I would also like to mention that the genuine fascination and happiness you convey in your videos have brightened my days, during some recent tough times, thank you for doing so much for the coding community. You are like the Bob Ross of programming! 🚂
This actually looks like fun. The overall tone and snobbery on coding forums, all this "the right way to do stuff", actually prevented me from getting into coding multiple times. The same thing happened with music. Then i found youtubers (like this one) that make it actually fun to learn things.
Yeah as a beginner one should just code however one likes, keeping track of software architecture can come way later, at first it should just be fun
I no joke loooooove these videos. There's something crazy about how intuitive and usable coding in BASIC is that makes these so fun to watch! Hope to see more!
back in 1989 my mother was 14 and actually helped pay for her education by learning Basic on an Apple ][ and then teaching at schools, showed her this video and she loved the fact people still enjoyed the wonders of the past. thanks for the videos!
I'd love to see a 3D Renderer for an Apple 2. I did one for an ESP32 Microcontroller and it was so much fun!
thats cool, how does that work? I wasnt aware the esp32 could do graphics
@@mikejones-vd3fg I'm just using an adafruit library to some draw triangles on a oled screen.
Not a renderer, but back then I loved GraForth!
@@robertsyrnicki5638 ahhh cool yeah i forgot they can drive LED's really nicely , been watching Dave's Garage and he's done some cool stuff with esp32's and led's, i thought maybe you made some kind of gpu out of the esp32 or something like for another micro controller to use. I think the esp32 is fast enough on its own, my 25mhz 486 computer from way back could run doom, im sure a 240mhz dual core esp32 could do it but i hear the limits is the ram, not big enough for a screen buffer
@@smanzoli shudders in RedPower 2 FORTH
I love this new style of videos keep it up!
This is by far the best thing I’ve accidentally stumbled upon.
I took coding classes in late middle and high school. None got hem matched this guys absolutely adorable energy. He’s funny, smart, and extremely relatable. I laughed so many times while watching your video and really want to try coding in basic.
Keep doing what you’re doing, you’re inspiring the young generation. :)
Stick with basic! This is great. I haven't been so excited about a series in a long time.
I remember typing in a Mandelbrot plotting program listing from a copy of Incider magazine and letting it run all day while I was at school. It still hadn't finished by the time I got back home. Regarding renumbering; the DOS 3.3 Master disk came with a Renumber program that would load a renumbering utility into memory. It utilized the so-called "ampersand hook" in that you invoked it by typing '&' at the prompt and pressing RETURN. By default it would renumber all lines in the program so they start at 10 and increment by 10.
So glad TH-cam recommended this and the previous AppleSoft BASIC video... absolutely fantastic. Thank you so much for making these; they've really revived my interest in programming! You're great at teaching and so genuinely enthusiastic-it's really a beautiful thing. Please continue.
i'm so glad to hear this!
Обожаю этого чувака. Бейсик. 1995 год, 5 класс, компьютеры YAMAHA. Финалом было написать игру с использованием спрайтов. Ностальгия...
i'm not sure what he's better at: math, coding, or keeping the viewer interested in the process. TOTALLY subscribing, love the video, love the attitude, love everything. keep it up!
Daniel - this is so cool! There are people out there that are still teaching kids how to code using BASIC and computers from the 80s. Your videos are very good for that. All the best with you Apple II nebula series as well! ;-)
I am puzzled about the reason why someone would teach a kid that 😵
@@eBrunoro 8 bit computers are very friendly for coders. There is nothing to install, they have a simplified language with a simple graphics API. There are also tons of type-in programs. ... and there is also nostalgia. However - I think the best method to introduce kids to coding is by using a simplified online platform... (I have my preferences here).
@@eBrunoro because the machine is 'instant on". You flip the power switch and it's there ready for your input. And coding is not confined to some programming language, it is more the kind of thinking required to break down tasks into managable steps until the computer understands it. Although I must say 'unlearning' all the unsavoury habits BASIC put into my brain was really one of the harder tasks 😉
What a brilliant feel good channel. Takes me back to my childhood days on my Atari 800XL.
The variable name length used by Apple Basic is 2 characters. You can use longer, but "10 STARTX=5; STARTY=10;Print STARTX" will print "5" as the actual variable name in applesoft is "ST"
Also, what's this whiteboard thing, That's some weird futuristic magic. That should be a blackboard and chalk.
renumber was a BeagleBros tool.
I think you meant, "10 STARTX=5: STARTY=10:Print STARTX" will print "10".
I left a similar comment before reading yours.
I think we can all accept his use of a witchcraft whiteboard! I never liked blackboards, their noise just sends shivers down my spine.
This is such a throwback to the past. I honestly prefer this to modern graphic apis! Thank you so much for this!
You are the prof that programing skill is not about Hi tech computers or hi level language, but about reasonning, patience, problem solving and efficient algorithms..good job.
I am loving this series, and I would love to see more!
Your enthusiasm for graphics programming on retro devices is infectious, and this brings back wonderful memories of writing similar programs for my Tandy TRS-80 Color Computer 2 when I was a kid. Thank you for this video, it was so much fun!
My first 3D programme was on my CoCo2. 21 lines making the shape of a jet plane. It ran at 1.5 frames per second.
@Ryan : those good old memories from 40++ years ago :-)
my first "computer" was the SR-52 from TI in 1975, and my first real computer in 1979 had a 6502 with hex keyboard, 8 digit 7-segment display, and 1.25 kb ram. a year later i got the apple ][+ (choice was between trs80, pet, and apple).
later we severely modded its hardware by soldering stacks of ram chips to its mainboard to increase it from 48kb to 4×48 kb, getting an additional 144kb (just enough for a ram-floppy disk of 140kb and 4kb of tricky driver software to do the bank switching; loading of new levels of one game reduced from two minutes every minute to only less than one second each time), and also replacing the character generator prom with another eprom and a ram so that we could load variable fonts, or separately access each single dot to do better graphics. a friend designed the hardware and i did the software (mostly not even in 6502 assembler, but directly in hex, lol). too bad that all this is not possible to do with any emulator :-(
btw: i also found that the sound generator (done with software in the apple rom) had a timing bug and replaced it with a new gosub to a short routine that i placed in some free bytes among dos :-) ... later, i extended this to playing two selectable notes at the same time by changing the ratio of on/off (using hystheresis of the transistors) on that original speaker (the simple toggling by peeking created that sound you heard in this video)
a year later we blew the power supply by pulling 5A from it while it could only deliver 4A (officially only 1A or 2A) ... which then got me the Atari 1040, while other people switched from pet/c64 to amiga ... the apple's corpse still is somewhere in my storage ...
I don't know how I missed this the first time around, I see that I'm still subscribed and I check my subscriptions page every day. Especially considering that I love fractals. The interesting thing about this fractal tree is that you don't need an array, stack or recursion to draw it. You just need to keep track of the angle and count of the nodes. Then each level can be drawn left to right or right to left and it'll run faster on older hardware that way too. One of the more beautiful aspects of symmetric fractals, they're super easy to make efficient.
Thank you for making these, sincerely. The Apple IIc was my first computer, BASIC my first language, and this fills me with such warm nostalgia.
GOTO statements. Those sweet monochrome graphics. The simple joy of coding something and seeing it happen.
We're so lucky to be able to do this for a living
I like that you keep your mistakes in rather than editing it out. Reminds people new to code and programming (like myself) that everyone makes mistakes
This series is sooooo cool! I love it! Please make another one! Don‘t stop now! What about reading a graphics file from disk and display it in HGR? Or programming a simple racing game with horizontal lines, steering a car with a joystick?
I was never interested in BASIC until I watched this series. And I also love the fact that you have so much joy while coding. It makes me feel at home to see other people enjoy it as well!
I can't express how I enjoy your 80s-retro-series, this is totally awesome!
I grew up with the C64 of my dad and I have a special sentiment to this decades computers.. thank you very much!
This is truly so entertaining to watch! The theme song at the beginning and the whole setting just gives such a good vibe.
I'd love to see more of this 🤩
This totally gave off retro/nostalgic vibes, reminding me of how fun it was to simply sit at the computer and figure out how to make the lines dance every which way in HGR mode. You've re-captured the excitement and sense of adventure in exploring the possibilities many of us experienced in our teens (give or take), and how satisfying it is to write code, and make it work. Thank you for this.
Love your enthusiasm, it is contagious. I was a little burnt out while learning to code and this really helped. I hope one day have this much passion about programming and life in general. Keep up the good work!
This video is like my blankey if i ever need something to cheer me up this always does the trick.
His happiness and energy is contagious! ✨
its really beneficial that your video includes making mistakes, figuring out where it went wrong, then fixing and explaining it. i dont think many newcomers realize that often times debugging takes far more time&effort than writing code to begin with. and that never, ever ends; no matter how good you get :)
Man, this brings back SOO many memories.
I love this! I started programming when I was 11 on a TRS-80 CoCo, at first in Microsoft BASIC, then supplemented with 6809 assembly for performance, eventually moving on to PC's with C and other languages. It turned into a career for me, and sometimes I long for these days when it was pure programming - no DLL or library hell, odd OS and driver bugs, connectivity issues, or weird bugs in one of the 30 packages you import.
i expected it to be boring, but the peek made me laugh with nostalgia. The second part of video is where the story begins ;)
I love how you always reach the point in wich you say "this does't work, we need an array". We all love arrays
very fun to watch what I learned back in high school. We (computer programing class) would try to make a video game with mini fractals with trees, and snow flakes. The game was of a skier and you had to miss the trees. The snow flakes were just for background. When we were able to use a color monitor we would put in a random color for the snow. The trees were always one color, but the skier would have different color clothes at first of the life. Its been over 30 years since then. Thanks for the walk down memory lane.
Thanks for this video. I appreciate seeing you struggle through this. Because I tend to program on my own, I never get to see how others do it, or see what they don't know.
absolutely loving this low series, please keep it up. I'd love to see the 3D renderer!
I love your video and enthusiasm for programming on Apple II computers. This brings back good memories of learning to program Apple II's, TRS-80, and Commodore computers.
Holy moly. This is so cool. Millennial programmer here. Graphics are just too easy today 😄 this just seems like too much fun.
aaah yesss. the Bob Ross of programming. Thanks for all your content, it's really enjoyable and inspiring.
Me too! Mandelbrot set zoom ins (in Applesoft BASIC) , captured with an assembly program for later playback. Ahh memories.
I love your enthusiasm! Too many programming related channels are monotone. I always learn something interesting in your videos. Also, the intro video for this series is amazing :)
I do enjoy watching you work through the problem and update the code.
His teaching methods and enthusiasm really makes me wanna get an apple ii and just code for the fun of it.
It's not the same as the real thing but this emulator is pretty great! www.scullinsteel.com/apple2/
Really loving these videos as it takes me back to when I was learning to code in the 80's on a TRS-80 CoCo 3 and looking at code written in another computers Basic and trying to replicate it on your own machine then wondering why certain syntaxes don't work the same.
I coded a Mandelbrot fractal on the Apple 2+ circa 1982 when I was a kid. I'd got a copy of Mandelbrot's book and spent quite a bit of time working out the mathematics - That's where I first found out what a complex number was. The program took 2 days to run. Many years later I'm designing cryptographic circuits for a semiconductor company. Maybe there's a connection there.
With your videos my learning curve will shrink drastically. Thank you.
Go on! I love this flashback of my youth!!!!!
Hi Dan... this is... amazing.
I was 12 when I started programming in Basic on an Olivetti PC 128, (an italian rebrand of the Thomson MO6), connected to the living room television... [It also had an optical pen... SCI-FI!]
I never stopped coding since then, in any language, for every purpose.
Now I'm a web developer, and a teacher in the field of VR / XR... and all started with those 128 Kb of RAM... in the living room!
I love hearing these stories so much!!!
Holy cow, I love your energy! I was so excited every time you got something working and threw your arms out in joy.
This is the first video of yours that I have seen. I really like your style and enthusiasm. Definitely more retro videos please. I would love to see you play around with forth on the Apple ][!
i love these so much i actually saved this for my lunch break so I could watch it all in one go!
I thought I'd poke in to say how much I'm really, really enjoying this series. As useful and informative current as the other videos are, I feel like there's a lot to be learned about the basics of computing from using BASIC or ASM on a limited system. No libraries or includes or additional bits to use, nothing else going on elsewhere to think about. It makes the ideas clear an immediate and easy to follow. I'm sure there are some frustrating elements like constantly re-writing most of a line. But something tells me you think more about a line of code the fourth time you have written it out.
I really want this series to continue, it would be really interesting to see how an assembly version of the same fractal tree program would run vrs the basic one on the same system.
Keep up the good work sir. It means a lot!
This is so extremely cool, please continue that series. Actually each of your previous Coding Challenges would be interesting to seen recreated 🙂 (even that lots of them probably would run really slow^^)
I really love these serie on Apple II+, it's really awesome for me, a young programmer, to see how people used to code
Thank you so much for this excellent video! The apple][ is such a direct machine, where one can truly interact and be creative on the computer. The first Applesoft Renumber was published by Apple Computer in 1978. Later in 1980, it was part of the Applesoft Toolkit. ProDOS came out in 1983.
These videos are great, I just recently picked up an apple //e and without any disk drives, and these videos let my try different things to do with it!
I really LOVE your apple II+ videos! That very machine was the first computer I ever had. I learned programming on it. Also spent hours and hours playing Wizardry, Zork, and other games. Please make more! :)
I just LOVE these videos! I am planning to order an Apple II in the future. Keep up the good work!
You can try an emulator! There are links in the description and at thecodingtrain.com/challenges/174-graphics-applesoft-basic
Reminds me of the time I developed a text based quiz on a Dec Vax using Fortran, then added colour and flashing text and using inverse to create a 3D effect on the orange screen monitor. Those were the days! Loving the energy you provide, I’m buzzing trying to locate an emulator to see if the data feature enables storage of binary to create a sprite using hgr or hgr2 lol 😆 keep them coming!
problem with the colors in hgr was that each dot used 2 bits (4 colors only), and an additional bit per byte selected between two "palettes" of 4 colors each. thus you could only have dots with the same palette next to each other, and painting a dot from the other palette over one of those dots would change all dots of that byte.
@@Anson_AKB Actually, pixels used just one bit each with an additional "palette selection" bit for each group of seven pixels. The palette selection bit delayed the video signal by the width of half a pixel. Color was achieved by alternating pixels on and off horizontally. Steve Wozniak took advantage of the NTSC composite video signal to produce color graphics without using the amount of RAM really required for independently colored pixels. That is, the hi-res color was, more or less, faked. From a color perspective, the horizontal resolution was really only 140 pixels instead of 280 pixels.
OMG Daniel! You've joined THE CLUB-welcome! That club? That would be anyone who's effortlessly melded two or more "worlds"- computer art with cinema in your case, as per the opening. Still, you have a seriously wonderful curiosity that you're pouring into these tutorials-kudos! ! !
I love that you do stuff on the apple II. I just got one, this is going to be so much fun
I really like how you solved your x and y inversion. Normally we try to keep these kind of fix secret but you make it a statement!!! really enjoyed the video. thanks bud :)
this is really interesting. I've recently gotten into coding in python and am working on wirelessly controlling motors for robotics. I really wish I would have had more of an interest in this growing up.
The excitement this guy feels when his code just works just reminds me of my own excitement when I started working as a software developer decades after him. X3
It was a pleasure to see you code on the Apple II. I am very grateful to have my modern IDE's now!
Seeing that fractal tree drawing out was incredible! What a little trigonometry and logic can do!
There you go, makin me smile. Love the intro. Love the energy. Awesome stuff!
I was thinking all this time: "whay does it look so familiar?" Then it came to me: I used to have an Agat - USSR clone of Apple II and I used to learn coding on it when I was in school...
A basic 3D-ish renderer in apple basic sounds way to cool to just ignore!
You've actually got so quality stuff on your channel. Keep that up man!
Great video as always. I cut my teeth on the Sinclair ZX machines and the BBC Model B in the early 1980s before ending up working as a professional developer from the mid 90s. I've been working in event driven OOP systems for the last 27 years and had forgotten the fun and challenges of procedural coding. I am loving watching you re-explore the world of Apple Basic.... it's fun getting back to coding this way. Would love to see something about double buffering if you get around to it!
Really nice series, I would be super glad to see anything else on this topic, it's so fascinating.
Begin music is AMAZING!!! i like it!
PLEASE do more vids in this series. So so good
Excited to get into the 3d renderer... I assume you might have go into some machine code to make something fast enough! Excited for that too
Love your videos!
DO NOT switch that monitor out! That setup is all period correct AND the apple ii is a monochrome machine at heart.
If you do go for it, the only acceptable monitor would be an Amdek Color I or II
I already know this as this is the first computer I ever put my hands on and grew up on these in elementary school, but I just love to watch you!
PLEASE More Apple II ...I still learn stuff.
Why did you use multiply operation for changing (pre)sign? :) This is a slow CPU operation. Use instead VX = 0 - VX. If VX is minus 1 then new VX will be 0 - (-1) = +1. Else if VX is positive 1 then new VX will be 0 - 1 = -1. :) Adding or decreasing is faster CPU operation than multiply :)
back when I was in high school, we had a basic editor we used to use to help write the code, cannot remember what it was called but we would load it in then load the program you were working on and it made life so much easier. If i remember correctly it used the upper part for your 'display' area and the bottom 2 lines for instructions to the program. Oh and as a fun side note that original twisting bouncy line screen saver was written by a class mate in pascal on the apple ][ and he later went on to MIT to do some more programming.
This reminds me of something we would do using Logo back in grade school. I don't remember whether this was possible on Apple II Logo, but I do recall using multiple turtles and recursion to draw trees like this on some Logo implementations.
Ah, yes, this would a great demonstration for Logo!
Having done it on an Apple II with Apple Logo, I can definitively say that it was possible.
Apple ][ had ZOTs you could programme as shapes. Then scale/rotate and hplot them.
@@TheCodingTrain I'm adding the comment again. I hope to not be a duplicate. The previous version was deleted by TH-cam because it contained a Url.
// LOGO program from fmslogo [dot] sourceforge [dot] io [slash] workshop
/*
TO PLANT :SIZE :ANGLE
IF :SIZE < 1 [ STOP ]
RIGHT :ANGLE
FORWARD :SIZE
REPEAT 4 [
PLANT :SIZE / 2 DIFFERENCE RANDOM 160 80
]
BACK :SIZE
LEFT :ANGLE
END
PLANT 100 0
*/
// and JS version
function plant(size, angle, t)
{
if (size < 1)
return;
t.right(angle);
t.forward(size);
t.repeat(4, () => {
plant(size / 2, random(160) - 80, t );
});
t.back(size);
t.left(angle);
}
// BASIC version?
Was nice going down memory lane watching this !! I used to program my C64... lots of fun!
You’re doing a great job to keep the beginnings of coding! ❤
Showing how programming works, hands down awesome. Teaching you the first step of debuging. Check. We have it pretty simple with vs code, but the fundametals haven’t changed that much. At the end of the day READ and learn how to understand the DOCUMENTATION. And find yourself in it. Awesome video.
Ahh, so nice to watch this very simple yet powerful programming environment!
thank you!! we need modern programmers making these videos, finding old archived code tutorials from the 80s is way too strenuous for me
If you run out of lines, you don't necessarily have to renumber. You can just goto out and come back in. Gosub also works, but it uses stack space. Yes, that's spaghetti code in action!
3d sounds cool, but ugly without hidden line removal, too slow with it. You may want to use an old trick like the one Elite uses. Only render viewer facing polygons on convex objects.
it helps to write a main program in lines 100, 200, 300, etc, with each line being a gosub to 1000, 2000, 3000, etc.
if changes are needed, all these separate parts are easier to maintain.
I think that REN does renumber the lines ; In my souvenir, the command did accept parameters (lines from, to)
This is a great series. It's cool to see that relatively primitive technology can actually do pretty advanced stuff.
I can kind of relate to this, i am currently studying computer engineering and the first language that i learned to the core was C, but not the most recent C, we actually used an IDE that was developed for the MS-DOS system and it was called TC-2.0 It also included a graphics mode that had support for up to 16 colors. And one of my assignments for the Programming Languages class was to program a minesweeper. I loved this video, and i loved your recursive fractal tree, keep up!
I absolutely love the style of these videos, they're really fun to watch and teach you a lot without you even realizing. Keep it up!