Those OS could do so much so early I'm impressed. Text-based input is a very powerful UI
@CallousCoder
Жыл бұрын
My first experience with Unix was minix in 1990. Before that I was a TOS and DOS guy - always disliked DOS. I was immediate sold to the basic Unix philosophy of “everything is a file”. I find that Linux unfortunately is slowly moving away from that paradigm. I started Linux in 1995, at the same time I had an Indy with Irix. Irix is a nice clean SystemV Unix. Then in 1997 I got a written off, microPDP11 from my work. I put SystemIII on it. Was quiet an ordeal so early in the time of the internet (not a lot of downloads available). Then I did Tru64/TruCluster (the best ever Unix!), AIX, HP-UX and SunOS and Solaris. Those days of the mid 90s to the early 00s were magical for Unix. Because the internet started to happen and that was what Unix excelled on. Great standard development tools, good networking stack, lightweight. Man… miss these days.
@CallousCoder
Жыл бұрын
@toonz9971 then you haven’t used Irix or Tru64. Full SystemV systems and DEC Tru64 with its Alpha blew everything out of the water with its speed. And then adding TruCluster to the mix made a 24x7 Unix you could migrate a running process to another node, not even the socket was disconnected just a little “hiccup as it moved across the memory channel”. And you could just patch the code or the OS. It was marvelous! And their SpecFp was a long-standing record. When Sun and SGI were doing 200MHz on 32 bits we were pushing 700MHz with full 64 bit. My jaw dropped back in 1995 when we gotten two GS140s with TruCluster for our 24x7 available database and fluid sim calculation. Me colleague who made the fluid sim code was like… how many CPUs 14? Oh… I think I will do my first ever parallel programming 😀And me well technically 28 but then you may want to fork a second instance. I did btw love Solaris 10 on Intel! I used the shit out of containers and zfs! I immediate realized containers solved our development system problems. As well zfs, snapshot the database run your integration tests rollback snapshot. New container for your feature, there you go! Have fun! It was amazing! We had lpar on AIX but this was better. Now Docker took its place.
@freedosproject
Жыл бұрын
My first Unix was SunOS 4.1.x in our campus computer lab in the early 1990s. SunOS was the precursor to Solaris. (Technically, SunOS 4.1.1 was also "Solaris" but it wouldn't be branded as "Solaris" until a little later than that - we ran SunOS at my first job, and Solaris at my second job.) I'll always have fond memories of running SunOS and Solaris. We had Sun 3/50 diskless workstations on campus, but I loved the SPARCstation "pizzabox" (S4? S5?) at my first job.
@freedosproject
Жыл бұрын
Glad you liked it! I always have a terminal window running on my Linux machine at home, even though I run GNOME as my desktop and run GUI apps. The terminal offers a very flexible and powerful command line.
@CallousCoder
Жыл бұрын
@@freedosproject Same here also on Windows I have both a CMD and Linux shell open and I see my Millenial colleagues look as if it's archaic. Just like today when suddenly something failed and I started nslookup and query what the machine is trying to connect to and see the forwarder no longer works. Or flush the dns cache, my colleague wanted to restart the VM and I was like nope, safe yourself the time from requesting a production change (my client is a bank) you can do it like this ipconfig /flushdns on Windows. People and Schools should really take more time in learning and teaching CLIs. It saves so much time and is incredibly powerful. Especially when it comes to troubleshooting or analyzing/formatting data. Hence vim is also my favorite editor :D
@nu11man
Жыл бұрын
I barely used ed a few times when I was in college, so it's nice to see a non-trivial intro to using it. Thanks for making this.
@freedosproject
Жыл бұрын
Glad you like it! I wrote an article about the experiment of using Linux like original Unix, but "screenshots" in an article doesn't show the experience quite like a video. I don't usually use ed for big projects - but when I could only use ed for this experiment, I found I quickly adapted to using it. While working on larger editing projects (I wrote several nontrivial programs and documents that I didn't show in the video) using ed became second nature. It's just a different way of thinking when I edit. 👍
@jbs.
Жыл бұрын
If you use sed, you're using ed commands.
@Ormaaj
Жыл бұрын
Fast forward to 2023 and still no good non-interactive editor
@jnharton
Жыл бұрын
@@OrmaajPerhaps that is because very few people would even want one.
@desertdude540
Жыл бұрын
@jnharton Non-interactive editors are useful. One of the options for the diff command (I think it's -e) makes it generate a script of ed commands to turn one file into another. This was then used to build the first version of SCCS, which later led to RCS, CVS, Git, Fossil, etc.
@JoniniTheChickenNugget
Жыл бұрын
I'm a 2004 kid and I started coding with a full blown IDE and Java as a kid, this is so cool to see and while ill probably never end up using fortran or unix os seeing the history of terminals and an editor predating even vim and vi is beyond cool.
@GeoffRiley
Жыл бұрын
If you can try a bit of FORTRAN, go for it. Just play with some non-trivial maths problems, and you'll be surprised at the ease it affords. I firmly believe that *all* programmers should have at least had a look at one of the early languages… it gives you an insight into how far we've come and helps you to appreciate what the modern high-level language takes care of for you.
@freedosproject
Жыл бұрын
I agree! I also started a FORTRAN 77 programming series on this channel. I've done one video so far, the next one will be this weekend.
@zeektm1762
Жыл бұрын
You will use UNIX, every time you use a POSIX standard OS or a Linux distro. Many things change, but the core remains eternal
@DutchmanRadio
11 ай бұрын
I was in the fourth grade when you were born, neat.
@mytech6779
9 ай бұрын
Modern Fortran has not been column based since the spelling stopped being in all caps (in the 80s) and it dominated HPC until just the last decade when C++ has started to overtake it. These language choices are partly due to speed/efficiency but it also has a lot to do with the availible proven debugged math libraries, no sense spending a week and $100k of electricity on a scientific calculation just to be slightly uncertain of the accuracy. The fixed-column thing was a direct artifact of punched-paper programming. Java is OK for portable widget apps that are distributed to run on many operating systems, but Java was in decline until Android came along and gave it some customers. Any language that is interpreted or JIT optimized at runtime, or even just garbage collected, is no good for applications like industrial machines, healthcare, music recording, and other real-time tasks that need deterministic behavior. (Real-time doesn't mean fast, it means the actual physical wall clock latency must be bounded with guarantees of worst case maximums and minimums.) Eg some fool at Boeing tried to use Java in a new landing gear control unit and during bench testing it would just fail to extend a few percent of the time; the reason was the JVM doing some "helpful" housekeeping thing in the background would block reception of the interupt signal. The C-17 engine contol unit on the other hand has mathmatical proofs of worst case behavior (This took several years though, it is proof of the whole hardware and software stack combined.) Simpler hardware generally helps a lot in this regard, eg an little AVR arduino can handle control of more stepper motors more accurately than an i9 desktop. The i9 has a latency variation of 150µS even after disabling hyperthreading and using a hard real-time operating system. Then you add the uncertainty of PCIe based I/O and such. This is why the 80386 remained in production through 2007 despite being of no use for new desktops after about 1993 and long after the 80486 went away. 386 was the last predictable x86 design. Newer x86 CPUs have out of order execution pipelining, branch prediction, cache effects, register renaming and so on and so forth. Even though you might know it takes 5 cycles to do a multiply on a modern CPU you can't know when it will get its timeslice or when it will flush to output.
@superjames22
Жыл бұрын
This was very fascinating. I can not imagine how many people must have written their own version of awk back then. Everyone must have had their own set of helper programs, I imagine. Thank you for sharing.
@freedosproject
Жыл бұрын
Pretty much, yes. Awk (1977) made it easy to write scripts to do lots of useful tasks that you'd otherwise need to write a one-off program. Sed was useful for simple mass edits, grep was excellent for one-line patterns. Awk made it easy to do things like "If *this* line in the log file says 'Error' then print the next few lines (line count might vary) until you see some end-marker." That's easy to do in awk, not possible in grep.
@yash1152
11 ай бұрын
hi! just to confirm, u can print a predefined number of "context" lines with grep too right? the -B or -A flags. > _"[untill end-marker] That's easy to do in awk, not possible in grep."_
@freedosproject
11 ай бұрын
What a great future world you must come from! ☺ The "grep" command was added in Unix 4th Edition in November 1973 - so it wasn't available in the Unix 3rd Edition I'm showing here. And no, grep didn't support context lines in 4th Edition .. it was one line of output per match. (Basically the same as the g/re/p command in the ed editor.) I'm not sure when Unix grep supported context lines, or if that was a GNU extension. And the example I mentioned in my above comment was meant to suggest a variable number of lines .. like a multi-line error message that might end with some "end error" message on its own line (typical in some large environments I've used). That's easy to write as an awk program (if line matches, then doprint=1 .. print if doprint==1 .. if we find the "end error" message, then doprint=0).
@mmuww
Жыл бұрын
This was a great demonstration, thank you for putting this together
@freedosproject
Жыл бұрын
Glad you enjoyed it! This was a fun video to do. 👍
@BDJones055
Жыл бұрын
I could watch this all day. Thanks! Keep up the great work.
@freedosproject
Жыл бұрын
Glad you enjoy it!
@techhoppy
Жыл бұрын
This video was fantastic. I've been using Unix for decades and admittedly I've gotten used to all the modern tools but there's a certain fondness for doing some things manually. Kudos to you, sir and keep the videos coming.
@freedosproject
Жыл бұрын
Glad it was helpful!
@alvarocafe
Жыл бұрын
This video was so cool, I'm particularly impressed by ed's capabilities.
@0LoneTech
Жыл бұрын
It has a far ranging legacy, with descendants like ex, vi, sed, grep and perl. The ex language is still there in neovim, although they removed ex mode to avoid confusion.
@freedosproject
Жыл бұрын
And you can "script" ed by doing something like this: ed
@freedosproject
Жыл бұрын
ed is pretty cool. I don't use it all the time, but I do use it occasionally when I need it. Good tool to have. And if you're like me, just to play around in sometimes.
@0LoneTech
Жыл бұрын
@@freedosproject Still can, though your example is more of a sed -i job. Another relation is that diff can output ed scripts.
@alvarocafe
Жыл бұрын
@@freedosproject I've just never seen it behave so well and fast, I've thought ed was a slow, grinding editor, but it's actually pretty elegant! I'll definetly try it more, I even played with it for a while after watching your video. Cheers!
@likebot.
Жыл бұрын
The first time I used a PDP-11 the Telex terminal had an accoustic coupler built in and I'd use it to dial the computer at our local university. Thank heavens, the computer room housing the PDP-11 had air conditioning so loud you couldn't hear the rattle and klankk of the Telex! Unix wasn't on that particular unit, we used RSTS/E, but I kind of recall that Unix was the OS at first but was changed for some reason. The memory is foggy - it was almost 50 years ago and I was barely 12.
@freedosproject
Жыл бұрын
I never used a Teletype or Telex terminal as a terminal, but the physics department in my undergrad years (I was a physics student) had a Teletype terminal set up as a printer in the mini computer "lab" (a tiny room with two VT terminals, plus a pen plotter, plus the Teletype "printer").
@pauldwalker
Жыл бұрын
us old computer folks still have these commands in our muscle memory.
@vitasomething
3 ай бұрын
most unix boomers use freebsd anyways
@johnlovell8299
Жыл бұрын
The terminal effect brought back many memories I had forgotten about. Thank you for the time travel tour!
@freedosproject
Жыл бұрын
Glad you enjoyed it!
@norurineiru785
Жыл бұрын
Amazing little CS class! looking forward to see more like these Jim, It would really help the new and old generations maintain fresh knowledge of these legendary tools of trade.
@freedosproject
Жыл бұрын
Thanks! Glad you liked it. 😃 Most of the videos are FreeDOS or FreeDOS-related, but I like doing videos like this every once in a while.
@anon_y_mousse
Жыл бұрын
This was a nice little bit of digital archaeology. I especially love that you pronounced char correctly, as it is short for character. Are we going to see a video series on you writing some program like a text editor or a compiler for your own programming language now? Maybe a new version of edit that has syntax highlighting. That would be awesome.
@freedosproject
Жыл бұрын
Glad you enjoyed it!
@christopherneufelt8971
Жыл бұрын
We need the Czar, we need the Czar Wait, you mean a Char for the Structure? No, man, the Czar is dead, long live the Czar. (From digital archeology from a Fortran, BCPL manual, late 70s. Not from me).
@davestorm6718
Жыл бұрын
So grateful things got easier to do (I worked on these systems in high school then in engineering school back in 1984). They still had a few teletypes at the University and would spit out a small "book" of errors when something went wrong, then we'd get charged for the paper (a big motivator to test your code on paper thoroughly, before typing it in - I recall typing code into one terminal, running the compiler, saving to an 8in floppy, then handing the floppy over to a system operator, who would insert it into another machine to actually run the program)
@fahmidamashura7076
Жыл бұрын
History and extra additional context, give you passion and motivation than any other method.
@novadea1643
Жыл бұрын
I'm so glad that I'm about thirty years late to this party and can just enjoy the wonderful desert that has come from people typing code like this (also makes it very understandable why it's near impossible to find anyone to maintain such systems). :w!
@brianh.000
Жыл бұрын
You never know. I'm actually so glad that I came to the party over 30 years ago, and got to mess around with lower-level stuff. In a way, it makes you more appreciative of the tools we have now, and also know their limits. ✌
@paulwratt
Жыл бұрын
There is a nice interview and discussion on roff / nroff development
@freedosproject
Жыл бұрын
And I recently interviewed Brian Kernighan about it for Technically We Write: technicallywewrite.com/2023/06/01/groff
@hejhog1961
Жыл бұрын
This takes me right back to my early days of my computer career. I started using a PDP 11/34 where I learned the basics of Fortran programming. It wasn't later until the 1990s when I entered the world of IT as a computer operator and eventually met my favourite operating system - Solaris 2.6 ...ah the nostalgia. Now some near 40 years later I'm working with various flavours of Linux and haven't touched Unix since 2009.
@bittertruth6575
Жыл бұрын
Awesome video. History can add so much context to computing and can help give a deeper understanding of why things are the way they are and why they are done a certain way. The days of elegant and long lasting solutions that squeezed every last bit of use out of the equipment have almost gone now and whilst I'm glad that computing has come so far, simplistic elegance and endurance have been replaced by superficiality and complexity. P.S. At 28.04 you missed out the ^2 for the equation x(t) = 1/2at^2
@AxelWerner
Жыл бұрын
Beautiful!! lean, lightweight, simple. no mouse pushing
@freedosproject
Жыл бұрын
Glad you liked it! ☺
@DevilsHandyman
Жыл бұрын
When I was in high school in the early 80's in the Albuquerque school system at the Career Enrichment Center they had a DEC System 10 and a bunch of TTYs and a single VT100 terminal. You had to get into the room early or be very lucky to get to use the VT100 instead of the TTYs where you would waste reams of paper. DEC was building the VT100 in Albuquerque at the time. The VT100 also supported 132 columns by 14 lines.
@StuartWoodwardJP
Жыл бұрын
This reminded me of my first week of University in 1985 where we were introduced to Berkley BSD 4.2. The professor had us writing programs in ed. After a day or two we switched to vim when one the students discovered the more modern full screen interactive editor and the word spread. We had rooms of terminals like this and few had early graphical windowed workstations from the local Whitechapel company. There was also a few colour graphics terminals that had a build it mode to do coloured text in the terminal with letters, punctuation and numbers in different colours like primitive syntax highlighter. Around that time I had my first digital photo taken and it was saved to a 10.5-inch magnetic tape to be able to transfer it to my home directory.
@freedosproject
Жыл бұрын
Very cool! 😃 Brian has a great story about Bill Joy writing vi, in his book 'Unix: A History and a Memoir.' Short version: Bill hung around the Labs when he was a grad student and showed off this new editor he was working on. Brian told Bill that he should focus on his degree, not the editor. Brian comments in the book that maybe he shouldn't give career advice. 🤣
@GodEmperorSuperStar
Жыл бұрын
@@freedosprojectexamination of 4.1c source code especially from the 4.1c.1 directory tree on the CSRG ISO shows traces of early SunOS. There was a partial implementation of a "unmount(2)" system call that was backed out. SunOS kept that system call. There is a kernel configuration file "files.sun". Guy Harris admitted on USENET in 1990 that SunOS ran on a VAX-11/750 and stated that Sun Microsystems had one of those minicomputers. I still don't know when they acquired it. There is a chance that the earliest SunOS development took place in the UCB CSRG before SMI got their own VAX-11/750.
@GodEmperorSuperStar
Жыл бұрын
@@freedosproject "Bill hung around the Labs" making 4.2BSD a reality while also helping himself to DoD time and materials to write his proprietary SunOS.
@glenyoung1809
Жыл бұрын
@@freedosproject There were holy wars fought over the best choice of editors to be used. Ed was primitive and time consuming when I first started using Unix back in 1985, then I discovered Vi, loved it. Then in 1986 GNU Emacs came along and thus began the holy wars over which was better. I tried learning Emacs and it felt too alien and not intuitive, which others strongly disagreed with. Those green screen CRTs brings back a lot of memories, first used printer terminals but they were strongly discouraged for use in programming because of the consumables cost. Then switched to VT100, and finally used Visual550s which was a larger screen and actually had a Textronics graphing mode for 2D plots! Made some amazing plots for physics assignments and could preview them on screen before sending the output to the wide carriage plotters down in computing services. A lot of memories of this era… used to program in f77 on the campus time-share Honeywell Multics mainframes, never fun when class assignments were due and typing a character sometimes took 30 seconds to come back and forget about Fortran compiling during peak times. The arrival of the first Sun-3 and 4 Unix workstations was a godsend! But only the profs with fat research grants could afford them…
@youreale
Жыл бұрын
I love computer history and I found this post extremely enjoyable! thanks dude.
@freedosproject
Жыл бұрын
Glad you enjoyed it!
@ruthlessadmin
Жыл бұрын
The first iterations of Unix were a bit before my time. However, when I was about 10 or 11 (circa 1993/94), I found a DEC VT100 at a yard sale (pretty sure that's where it came from). I used it with a 9600 baud modem to connect to some BBSs. I thought I was pretty hot stuff at the time lol
@squirlmy
Жыл бұрын
A friend of mine was born mid-March 1970, and he claims to share his b'day with Unix! 🙄 I don't think an exact date has ever been pinned down, but could be I suppose.🤷♂️
@ruthlessadmin
Жыл бұрын
@@squirlmy Well, either way, I hope we can agree that Unix existed before 1993, when I first used a VT100 terminal, which would have been used early on in Unix history...
@CallousCoder
Жыл бұрын
We actually connected veterinarians using dial up and a terminal to their central system. It was the most affordable way.
@freedosproject
Жыл бұрын
We had VT100's on campus - they got rid of them after I graduated. If I knew then what I know how - how "retro" cool they were - I would have found the space to keep one when the campus CS department gave them away for free.
@howardjones543
Жыл бұрын
Definitely this. I remember using top on a 9600 vt100-clone and you could clearly see the cursor flying around... I remember that more than the stereotypical "long phosphor" that things like Cool Retro Term lean heavily on. I can't figure out how you would limit the speed of a vty without an actual serial cable though. Cathode on the mac does have this option, from memory.
@markscheck
4 ай бұрын
Love this, masterclass in ed, the standard editor. Thank you!
@freedosproject
4 ай бұрын
You're very welcome! Since doing this video, I sometimes use ed (and FreeDOS edlin) unironically to edit files. Usually if I just need to make a quick edit to a file, or if I run several commands and realize "that should be a script" .. I can do ed and edit my file while I can still see the previous commands I typed.
@b43xoit
Жыл бұрын
As I see it, the most important thing that kernels have now that was missing from Fifth-edition Unix was support for networking.
@mihalachebogdan1
8 ай бұрын
Wow , just wow . Love this history
@freedosproject
7 ай бұрын
Glad you like it!
@MarkWitucke
5 ай бұрын
No IDE, no vim, a primitive text editor...and no compiling errors! Never seen one shot code that worked out of the gate. What you guys accomplished with such simple tools is amazing. Though I'm sure y'all felt the same way about the people working on pre assemblers with machine code. Thank you for the peek into what it was like to work on an early UNIX terminal. Friday night well spent.
@freedosproject
5 ай бұрын
Glad you liked it! Using Linux at the command line like this (and using ed) is really fun, and it's an interesting experiment. When I did this experiment (to use Linux like original Unix) I lived at the terminal. I just maximized it on my system, and did everything there. [Technically I cheated .. I had my work email up on my other monitor, so I can keep an eye out for client emails.] When you write nontrivial programs using ed, your brain starts to work differently. You build a kind of mental map in your head, and you can navigate pretty easily using ed. I became quite comfortable with ed - and I sometimes still use ed if I need to write something quick .. like make a script out of hte commands I just ran.
@sammosel3300
Жыл бұрын
Was the C compiler at the time capable of dealing with types in function declarations? I would have thought your main function should have been written: int main(argv, argc) int argc; char **argv; { ... Likewise for the linenum() function.
@CallousCoder
Жыл бұрын
No it wasn’t yet. I had to look up my first edition C book by Kernighan and it wasn’t no.
@DavidHembrow
Жыл бұрын
I came here to say the same thing. The first c compilers I used couldn't cope with the ANSI style function prototypes as in his example. They were a huge improvement, and came at the same as much better type awareness in the compilers. I found a couple of potential nasty bugs in my existing code when I ported it to a machine with a more modern compiler.
@freedosproject
Жыл бұрын
Oops - good catch! I'll have to do it the K&R way when I do this "for real" as a conference talk. Here's a "K&R C" version of the "66 lines" program: #include linenum(in,out) FILE* in; FILE* out; { int ltr; int line; line = 1; fputs(" 1:", out); while ( (ltr = fgetc(in)) != EOF ) { fputc(ltr, out); if (ltr == ' ') { fprintf(out, "%2d:", ++line); if (line == 66) { line = 0; } } /* if ltr */ } /* while */ } main(argc,argv) int argc; char** argv; { int i; FILE* pfile; /* usage: linenum [files..] */ for (i = 1; i < argc; i++) { pfile = fopen(argv[i], "r"); if (pfile == NULL) { fputs("cannot open file: ", stderr); fputs(argv[i], stderr); fputc(' ', stderr); } else { linenum(pfile, stdout); fclose(pfile); } } if (argc == 1) { linenum(stdin,stdout); } return 0; }
@b43xoit
Жыл бұрын
int argc is the default, so you don't have to say it. Also, argc comes first.
@CallousCoder
Жыл бұрын
@@b43xoit As far as I have always seen on Unix and Windows, is that you always have to define the integer. It will not assign it implicitly.
@mlongval
Жыл бұрын
Thanks for this Jim! It really brought me back to the old days (I must say that using ED kinda gave me a headache.... or was it the Apple II screen flicker??) Anyway thanks again and keep 'em coming, loads of fun! .... allowed me to write my first FORTRAN program.... yay!
@squirlmy
Жыл бұрын
🤔I'm sure Apple II didnt have "ed". Back I. The day, I remember getting countless reminders that it was pronounced ee-dee, but DOS also had an Ed that everyone pronounced "ed", so that battle was pretty much lost.
@freedosproject
Жыл бұрын
I learned it as "ed" back in the day, but later learned it was properly pronounced "ee-dee." But old habits are had to break. 😅
@noname-sk6zk
Жыл бұрын
I'm among some of the other young people here, I'm a first-year computer science major who's only had experience with programs and systems very abstracted away from the hardware. I feel like this video taught me a lot more about the much finer details of what a computer actually does with data like that and how much of that whole process you detailed has been automated by newer IDEs and word processors. Even if not every CS major is particularly interested in Linux/Unix, I think having some experience working with such raw, primitive programs would give them a much better idea of the work our newer computers really do and how they do it. As for me, I really enjoyed the video, I've been particularly interested in *nix operating systems for about a year now and have slowly been exploring our history with computers, operatong systems, and programming languages, and this video really taight me a lot about an area I've been wanting to learn more about. Thank you for your work!
@freedosproject
Жыл бұрын
I'm glad you liked it! 🤓 I think it's important for every CS student to have at least a basic understanding of how we got from "there" to "here" - that's why I did this video. You might also be interested in some of the articles in the "A Look Back" series that I write on Technically We Write: technically we write . com
@EricsEdgeVideos
Жыл бұрын
One of my first assignments in my C/Assembly programming class in uni was to write an ed clone. Fun times. I'd like to see more videos demonstrating how the early Unix tools would have been used.
@TheSulross
Жыл бұрын
Unix before pipes - gee, talk about some stone age computing using bear skins and stone knives!
@freedosproject
Жыл бұрын
I wrote an article once about "how to check spelling the 'old school Unix' way, but it was easier to show with pipes. Without pipes, it would have been like this: tr 'A-Z' 'a-z' < test.me > tmp1 tr -d ',.:;()?!_' < tmp1 > tmp2 tr ' ' ' ' < tmp2 > tmp3 sort < tmp3 > tmp4 uniq < tmp4 > tmp5 comm -2 -3 tmp5 words ..and then you get a list of words that are likely misspelled. (For anyone who doesn't understand the commands: convert all text from the teset.me document to lowercase, remove special characters, translate spaces to newlines, sort the output, remove duplicate lines, compare the list to show only the lines that don't appear in the 'words' dictionary.) 'sort' is from Unix 1st Ed, 'uniq' is from Unix 3rd Ed, 'comm' and 'tr' appeared in Unix 4th Ed (1973). And by 3rd Ed, you had pipes anyway. In 1st and 2nd Ed, you would have written a simple program that de-duped lines from input (basically 'uniq'), a one-off program to turn a document into lowercase words one per line, and another one-off program that compared line-by-line input to a list of words and printed the "not found" lines: ./makewords < test.me > tmp3 sort < tmp3 > tmp4 ./dedupe < tmp4 > tmp5 ./nonwords < tmp5
@AureliusR
Жыл бұрын
@@freedosproject There's a great video about UNIX from the AT&T History channel in which Brian Kernighan shows how to use pipes to do a basic spellcheck. It's so funny to watch, A) because he looks so young, and B) because he has his feet up on the desk, keyboard in lap, casually showing the viewers features of UNIX that were revolutionary. There were some other, lesser known Bell Labs employees who also did a lot for UNIX, including Lorinda Cherry, John Mashey, etc. They deserve credit too, though of course Thompson and Ritchie really did the heavy lifting for UNIX.
@mkd1964
Жыл бұрын
It's interesting to see how commands in vi/vim got their start in Ed, like 'i' and 'a' for insert/append, '$' for 'to-end-of-line', etc.
@pauldwalker
Жыл бұрын
vi = Visual editor, Improved. it still has an ed mode.
@mkd1964
Жыл бұрын
@@pauldwalker Technically, vi actually stands for the "visual" [mode] in Ex (not Ed). It was a shortcut for launching Ex directly into visual mode instead of line mode. Then we got "Vim" (vi improved) several years later.
@pauldwalker
Жыл бұрын
@@mkd1964 i’m getting old. i could have looked it up but went with my creative interpretation instead.
@mkd1964
Жыл бұрын
@@pauldwalker You're not the only one. I thought it was feature of Ed as well, until someone recently reminded me in a different video. 🙂
@Morality124
Жыл бұрын
Nice presentation Jim. Speaking of Unix, I believe I've read somewhere that FreeDOS supports the AVAILDEV and SWITCHAR options in CONFIG.SYS, which are the options that allow (MS-)DOS operating systems to function more like Unix with paths and parameter switches. Could these be covered in a future video?
@freedosproject
Жыл бұрын
Sure thing, especially SWITCHAR for those programs that support it.
@TheSulross
Жыл бұрын
the transition from line editing to full screen text editing is interesting subject - and when and where was the first full screen mode word processor? Did that happen first on late 70s CP/M systems ala something like Wordstar? Or does Xerox get credit for that with their GUI worstation perhaps?
@freedosproject
Жыл бұрын
@@TheSulross I tried to trace the history of word processors sometime last year as a side project, and "word processor" is hard to define clearly. My *personal* definition of "word processor" is a full screen program that supports basic page and text formatting (minimally: top/bottom and left/right page margins, line wrap, bold, italics, underline) and shows your text on screen how it will appear on paper. I'll allow that character mode can't display all text formatting, so it's okay to use colors (say, bright white for bold, cyan for italics, green for underline, ..) but otherwise the same. And a lot of older word processors don't meet that - you needed to type special codes (sometimes similar to nroff, sometimes not - depending) within the body of the text. That's not really "as it will appear on paper." So what's the oldest "word processor" according to that definition? I haven't figured it out. 🤔
@TheSulross
Жыл бұрын
@@freedosproject But you know, that approach of mixing formatting codes with the text content is all back in favor again. Any thing I document that needs to be dressed up a bit beyond plain text I write in Markdown using an editor specifically for that. It's a bit of a hybrid way to work because even in the working text representation it will, say, have bold faced text and the Markdown embedded codes for bolding that text, and then over in the preview pane it will show how it looks when rendered for final output display. Because of github Markdown has seen a dramatic uptake, and its great. It's expressive enough for most things and suites the non-paginated way most documentation gets seen these days. Okay, well, wish table of contents and footnotes were bit more officially incorporated, and so there are different variations of Markdown with extra features. So it's got some standardization problems. Just to say, though, that when you hang around in computing long enough you see things that are in style, then go out of style, and maybe decades later come back into style again.
@freedosproject
Жыл бұрын
@@TheSulross As one of my first bosses in my IT career said: "The pendulum of technology swings back and forth."
@Joao-uj9km
Жыл бұрын
Great stuff!! Ty so much for taking your time
@kojiy01
11 ай бұрын
I remember these good old days. Thank you nice post! From Japan.
@freedosproject
11 ай бұрын
Glad you enjoyed it!
@shrobbyy
Жыл бұрын
I low-key love the trail of the cursor when you type
@franciszek5831
Жыл бұрын
This is a great history lesson from the computer world. The world of the past is difficult to understand for many modern users. (and I still prefer nano) Those green letters remind me of DOS world and green Hercules monitors. Maybe it's time for something like CP/M?
Жыл бұрын
Amazing! Lots of memories watching this video. Please, more terminal sessions!
@freedosproject
Жыл бұрын
Will do! I'll try not to do too many, since I mostly cover FreeDOS things - but I think occasional videos about other retro computing is okay too.
Жыл бұрын
@@freedosproject I know that you mostly cover FreeDOS things, for that I appreciate it even more. I saw that you have a list of videos on "FreeDOS Programming" and I'm going to watch them. I really like the software development terminal session videos that explain how the development environment is built and the workflows used. Thank you very much for your content!
@oladunk9986
Жыл бұрын
Thank you very much for making this interesting video. I started learning DEC Ultrix back in 1988 and we tested the ED editor. We moved fast over to the VI editor. Liked and subscribed. Please make more videos. I'll follow them.
@freedosproject
Жыл бұрын
Glad you liked it! 😎
@DarianCabot
Жыл бұрын
I played along at home and typed out drop.f in ed. First time using ed and FORTRAN 😁 As a kid I started programming BASIC on my Dad's homemade TRS-80 clone (green screen and cassette tapes), so this felt nostalgic. Thank you for the video!
@freedosproject
Жыл бұрын
I'm glad you liked it! This was a fun video to do. ☺
@jwbowen
Жыл бұрын
Hehe, I really enjoyed this! I'd love to see more early FORTRAN content :)
@freedosproject
Жыл бұрын
More to come! I'm doing a "learn FORTRAN77" series on the channel. I've done just one video so far, but I have the rest of the series planned out.
@AM-wx9zl
Жыл бұрын
Absolutely fantastic video, I'm a junior dev getting more into Linux infrastructure for work and this was brilliant!
@freedosproject
Жыл бұрын
Glad you enjoyed it! ☺
@stanbrow
Жыл бұрын
Years ago, I did a project to control the generation of and interconnection to the utility for a paper mill. Wound upmwritib a lot of Groff stuff to generate some pretty fanc reports. Watching this brought back memories.
@freedosproject
Жыл бұрын
Glad you liked it! I found nroff and groff was really easy to use when I first learned it as an undergrad, and I still like writing some things in groff today.
@wl4dymir
Жыл бұрын
On one hand you could do today this amount of work and much more in minutes with modern OSes, IDEs and even now, an AI assistant. On the other hand... Think about the gap between what they had before, even just a few years, and how much this toolset brought to the table... The productivity gain from this tech was incredible.
@N.A._McBee
Жыл бұрын
Great demonstration of computing culture back then! I'm gläd that all this knowledge and all these tools and techniques are not forgotten and are still kept alive not only by the old-timers but by young enthusiasts also! Fascinating video, thanks a lot!
@freedosproject
Жыл бұрын
Thank you very much!
@coop_0128
Жыл бұрын
This was very interesting to see the processes involved in using Unix in a “daily use case” from 50 years ago. Thank you!
@freedosproject
Жыл бұрын
I'm glad you liked it! I think it's pretty cool too. 👍
@postmodernist1848
Жыл бұрын
Such a cozy video for a linux / unix fan
@freedosproject
Жыл бұрын
Glad you liked it! 🐧
@beardymonger
Жыл бұрын
Two of my favorite subjects: history and computing, it's great! Thank you very much, more uploads of this kind please 🙂 EDIT: Unix related history especially.
@freedosproject
Жыл бұрын
I will try! I'm planning more FreeDOS videos next, but I'll do another one on Unix history sometime.
@beardymonger
Жыл бұрын
@@freedosproject thank you!
@mytech6779
9 ай бұрын
I used Vim in cool-retro-term during my intro to programming classes, no fuss no muss. Can even run the compiler and test the executable without leaving vim. (Granted I had some prior vim experience) For larger assignments, I switched to kwrite text editor for its easy to customize built-in syntax-coloring; and a terminal emulator on the side to build and run. While all the kiddies struggled to setup IDEs in Windblows or even use purely online IDE/compilers, and they still had no clue what a compiler actually was. I really don't understand why the teacher didn't have 8GB+ flash drive on the required materials list and just make everyone use a live Linux.iso with persistence. (For those without a Linux machine.) I had already been on Linux full time for 12 years at that point, but looking at all the fuss and screwing around just to get setup on Windows really cured me of any lingering idea that Windows "just works".
@freedosproject
9 ай бұрын
I use different coding environments for different things-but for most of what I do, I use Vim. I know what I'm coding and how to code it, I usually don't need the help that an IDE provides. For very simple stuff, like demo programs or just some test/scratch program to try out an idea, I'll even use Edlin on FreeDOS or Ed on Linux. ☺
@JayJay-88
Жыл бұрын
Ed is the standard text editor.
@freedosproject
Жыл бұрын
😎
@edgarbonet1
Жыл бұрын
Indeed! In Version 6 Unix, the DESCRIPTION section of `man ed` starts with this exact sentence: “Ed is the standard text editor.”
@edwinrosales6322
Жыл бұрын
Thanks for the great content you publish, really appreciated!
@freedosproject
Жыл бұрын
Glad you like them!
@matthewbaker1364
Жыл бұрын
That took me down sone memory lanes. I wasn’t using Unix in the 70s but I was in the 80s. Saying “50 years ago” makes me feel very old!
@freedosproject
Жыл бұрын
😅 You're welcome!
@JamesHoughton
Жыл бұрын
very interesting video! the history of computing is fun to explore. thank you!
@nunuvyurbiz123
6 ай бұрын
I really can't get enough of retro/vintage computers.
@freedosproject
6 ай бұрын
Thanks! I try to keep the channel focused on FreeDOS, but sometimes I like to show Linux/Unix history too. ☺
@w9gb
Жыл бұрын
I used Xenix (Microsoft and SCO) on the Intel 8086 and 80286 (1983-1986). By 1986, the 80386 was released and Microsoft walked away from Xenix and started OS/2 development with IBM.
@ColonelPanic007
Жыл бұрын
This brings me back to the days of DEC workstations and Digital UNIX. :)
@freedosproject
Жыл бұрын
And you can bask in the warm "glow" of a simulated CRT. 😅
@MaghrebProductions
11 ай бұрын
I love the fact that Unix was born 20 years before I was born, but magically, I can fluently use that terminal from the 70’s. Consistency ❤
@freedosproject
11 ай бұрын
Very cool!
@r0k4k
11 ай бұрын
Your explanation make the cryptic ancient editor looks easy .. very good tutorial.
@freedosproject
11 ай бұрын
Glad you like it! The original ed command make sense after you've used them for a bit. Funny too that you start to think a little differently, you build a sort of mental map of the file and where you are in it.
@dl8cy
Жыл бұрын
Awesome presentation, would like to have more please
@freedosproject
Жыл бұрын
Thanks! I'll try to share presentations like this whenever I speak on a new topic at conferences.
@travisporco
Жыл бұрын
very cool. One thing that's hard to communicate is how cool and futuristic this all seemed to us back in the day.
@freedosproject
Жыл бұрын
I agree! 🤩 I grew up with an Apple II (actually a clone of the II+ called the Franklin ACE 1000) back when we measured memory in a few kB. I sometimes teach a university course on the history of tech, and I try to share what that was like - and how amazing it was to experience a powerful command line operating system like Unix for the first time.
@dangaines405
Жыл бұрын
Liked and subscribed! Well done Jim.
@Theineluctable_SOME_CANT
Жыл бұрын
I remember it being a bit tedious at times. But there's a feel to doing it over a slow serial hardware link.
@scottstempmail9045
Жыл бұрын
Slow serial link with line noise, even more fun.
@brianh.000
Жыл бұрын
This was what it was like! We're lucky we didn't have to use front-panel switches to manually load the C compiler in assembly into memory on our PDP-11. I started programming in the 80s, and worked on a VT100, editing my Pascal code in ED. It wasn't UNIX though, but VAX/VMS. My first intro to UNIX was in 1985. We had greenscreen Datamedia terminals, and used vi or emax, running on a Sequent UNIX system. I wonder how many hours I spent in that comp/sci lab, writing silly programs, or emails to my friends.
@MichaelGioan
Жыл бұрын
Next best thing to a time machine, thanks. I even caught myself thinking out loud: "use a ternary to reset line number to 1, saves 3 lines of code!". We were young then...
@freedosproject
Жыл бұрын
Thanks! I'm glad you liked it! I'm giving this as a conference talk in a few weeks. Also, I just posted a new video that's very similar to this, as a "history of tech writing" video. I know it's repeating some content from this video, but it's for a different article to celebrate National Day of Writing, so I wanted to record a shorter video just for that.
@youcantata
Жыл бұрын
One good thing about ed editor is that you can learn sed command syntax and Vi ex mode commands and regular expression syntax. The original Unix (Unix V7, System V, BSD4.3 etc) used K&R C compiler. Argument types in the function argument list is ANSI C style. K&R compiler used in original Unix did not support such ANSI-C style argument list.
@freedosproject
Жыл бұрын
Yup, a few others also pointed out that I used ANSI C style, not K&R C. In another comment, I rewrote the linenum.c program using K&R C style.
@replikvltyoutube3727
Жыл бұрын
This is straight up art. Yes it is maybe inconvenient, but the fact it still works, how easily math formula translated to fortran code...
@freedosproject
Жыл бұрын
Thanks! That was definitely the use for FORTRAN - in fact, the name stands for FORmula TRANslation. It's all about making it easy to turn math into code. 🤓
@GeoffRiley
Жыл бұрын
'ed' is so ingrained that I don't think I'd ever forget how to use it. It's like the original Wordstar key assignments: they'll be with me forever. It took me a while to switch to 'vi' when it became available, and for a long time, I found myself switching back to ed mode when I forgot the vi keys. 😁 There are times when I wonder if the 'modern ways' really are a step forward: it's rare that I don't have at least one or two terminal windows open.
@davetech1269
Жыл бұрын
Now that’s an old one! I’m not even sure I know how work that right.
@lhpl
Жыл бұрын
I first read about C and Unix around 1982-1984, just before starting in highschool. There was a public technical library at the engineering school in the town, and I read dozens of books on Unix: tutorials and introductions, programming, Douglas Comer's book on Xinu (OS design), and many other classic books. I only touched a Unix machine once in 1985, a Cromemco machine with Cromix at a computer trade fair - I dared type ls on a terminal when nobody was watching. It would not be until 1990 at uni when I finally had proper access to Unix. By then, I had memorised enough from the books to feel at home immediately, and with ed bring easier to learn "by the book", that's what I used for a long time (for big files I would edit on a Mac with BBEdit using CAP AppleShare or FTP to move files. I'd also typically login with NCSA Telnet.)
@byteforever7829
11 ай бұрын
Cool video... as someone who grew up with Linux and use bash all the time it's great to see the history and how it was in the earlier days. I'm now using cool retro term and Fortran programming using ed 👍👍
@freedosproject
11 ай бұрын
Glad you enjoyed it! ☺
@MyAmazingUsername
Жыл бұрын
Super entertaining retro flashback here in Sweden! You did a great job on this video. What color was your terminal back in the day? Mine was amber. I don't remember what system it was. By the way, it's interesting that ed, then vi, then vim, then neovim all carried on the same janky keybindings that someone came up with in the 1970s, back when screens couldn't even highlight/select text. I am sure they never thought those keybinds would live on for so long. Now there's Helix which uses the same bindings but cleans up the inconsistencies and changes from "verb, motion" (blind destruction a la Vim) to "motion, verb" (which shows the selection before you do the edit, to let you avoid mistakes, or continue expanding the selection if needed). It blows my mind that Vim's keybindings have been relatively unchanged for half a century.
@freedosproject
Жыл бұрын
Thanks - glad you liked the video! I grew up on green and amber screens, like on the Apple II.
@MyAmazingUsername
Жыл бұрын
@@freedosproject That's fantatic. I remember the Apple IIs didn't have lowercase. How far we've come! :D I honestly really like older hardware and the slow speed it ran at. It felt so cozy. You had to wait for things to happen, and had time to brew some coffee! Maybe I should run Cool Retro Term + something that limits the baud rate of the output for nostalgia. :)
@ResonantBytes
Жыл бұрын
Awesome look into the past and showcase for ed! I'll be back for more if there will be :) You seem to have missed the square for t in the simplified equation, though, so there's a potential part 2 :P
@freedosproject
Жыл бұрын
Oh no! 😧 I didn't realize I forgot that (27:50) Good catch!
@ResonantBytes
Жыл бұрын
@@freedosproject In a way why we do free software is, because we know there are always some mistakes that slip in, but we're not alone, isn't it? ;) Thanks for all your work on FreeDOS, you guys rock!
@redmartian
11 ай бұрын
05:22 The VT100 is connected to a PDP-11/70 RT-11 at Living Computers Museum running
@someusername1
Жыл бұрын
I enjoyed that. Thank you!
@BenShengOw
Жыл бұрын
makes me appreciate what we have now
@techserviceondemand9409
4 ай бұрын
Nicely done. There are a number of "seminal" developments related to Unix in the 70s into early 80s: 1) Unix 6, PWB (Programmer's Work Bench), those usually come together. 2) BSD, the University of California, Berkeley Unix release. If I am not mistaken, that's where VI, the editor, developed by Bill Joy was first released (he later on co-founded Sun Micro Systems). 3). Televideo, the first $395 video terminal, which "democratized" Unix, as people no longer had to spend a bunch of money to buy VTs or teletypes. 4). John Lions of University of New South Wales, Australia's Unix 6 source code and commentary. Everybody that works on Unix those days carries a (pirated, likely illegal) Xerox copy of those. 5). Dr Bob McClure, Professor at University of Texas, Austin at the time, wrote the first C compiler outside of Bell Labs, on a non PDP machine. I believe it was on a Data General.
@freedosproject
4 ай бұрын
Yes, UC-B is where Bill Joy wrote vi. Brian Kernighan has a note about that in his book 'Unix: A History and a Memoir.' The short version is Bill was a grad student at the time, and was working on Unix, and sometimes visited Bell Labs. During a visit, he showed off this editor he was working on .. video terminals had replaced paper terminals, and he used cursor addressing to move the cursor around. Brian said it was nice but maybe Bill should focus on his PhD. Brian says that he cites this example when students ask for career advice.
@Stopinvadingmyhardware
Жыл бұрын
I used to own a copy of System III. Was on a terminal used to control a mainframe. Huge tower with large format motherboard with a bunch of daughter cards.
@freedosproject
Жыл бұрын
That's great! 😃 The first Unix system I used was on a Sun 3/50 running SunOS (version 3? or was it version 4 by then?). My first job used a mix of Unix systems, including SunOS, HP-UX, and Apollo DomainOS/AEGIS (which provided both BSD and System V) … until I replaced some of the older systems with Linux.
@grazianofalcone3093
11 ай бұрын
it's just a unix terminal where the names of the executables have been changed to make more scene. I worked on it with the old SCO Unix and also with subsequent versions and it wasn't complicated at all, more or less like msdos, it had "case sensitivity" on its side and if you had to run a program if it wasn't in the search path you had to to specify ./
@t_kups8309
11 ай бұрын
Being a younger-generation programmer this was extremely fascinating. Also hats off to the programmers of that era. Using ed seems like such a chore that I don't think I would've had the patience to do anything productive on a computer.
@freedosproject
11 ай бұрын
It's interesting to experiment with ed. I use "visual" editors these days, but in playing with ed over the last few years, I find that my mind build a kind of "map" of what's in my file. I think differently about programming. And I now understand some early programming quirks that make more sense when you're editing with a line editor like ed. Unrelated to your comment, but: We don't have ed in FreeDOS, but we have something similar. Edlin is the original line editor for DOS systems. And Gregory wrote FreeDOS Edlin in a way that it's very portable - it even compiles on Linux. (I have it running on my Linux machine at home.)
@ersion
10 ай бұрын
You are 100% correct it builds you a map of what is on file and it makes you to be aware of every line.
@MontegaB
Жыл бұрын
Really cool video. You don't get to see UNIX really get "used" these days. A lot of creators will demo it, but to see it used in a real-world scenario is really cool. UNIX can seem daunting for someone who's only ever used a GUI or more modern Linux with all the time-saving bells & whistles, but really it's pretty intuitive once you take the time to learn the syntax and theory of operation.
@freedosproject
Жыл бұрын
I grew up on the command line so the Unix command line feels comfortable to me. I first used Unix as an undergrad student in the early 1990s. If I wasn't in the computer lab, I'd dial in from my dorm room. And even though the Sun 3/50 workstations in the lab had graphics and ran X, we didn't have very many of them (maybe 8) and the CS students always got priority (I was a physics major, math minor). So I often had to use the Unix systems from a VT220 terminal.
@MontegaB
Жыл бұрын
@@freedosproject I work in networking and up until a couple of years ago I supported an IBM mainframe running a UNIX-derivative. It was always a joy to watch the old-timers move their way effortlessly through the system. Those same guys helped stand that mainframe up in the late 70s. You can imagine after almost 50 years on the same system they knew every corner, they could practically tell you what was wrong by smell. I first started using computers in the late 90s and had a fascination with linux which was pretty exciting at the time. Even still it feels a bit alien to me when I use it, I imagine becasue >99% of my computing time is spent on a GUI now.
@dr.c2195
Жыл бұрын
@@freedosproject I grew up on the GUI but thanks to my natural talent and me being gifted with extraordinary intelligence I have become as one with the command line. All the power of the command line flows through my being and allows me to control any UNIX system as if it were but an extension of my body.
@St0rmcrash
11 ай бұрын
@@MontegaB Another place you can still see that kind of effortless navigating is airline agents at the airport. All the reservation systems still operate like they're terminals on mainframes since that's what they were developed as. Those agents just clicking away at the keyboard from memory pulling up passenger or flight information and keying in the changes is probably the last surviving use case of old school computing where the users aren't what computer nerds would consider technical background users
@dualbladedtvrecords4383
Жыл бұрын
Whats crazy to me is that the ": No such file or directory" has the exact same error message today, as back in the days (for example at 17:14). If you open python and then try to open a non-existing file, you will still see the same exact error message.
@therealgamingfire
11 ай бұрын
Cool retro Term is my favourite terminal out of them all
@freedosproject
11 ай бұрын
I still prefer CRT for certain things, like working on files. I like the throwback feel.
@darkarchon89
Жыл бұрын
Interesting stuff. A minor mistake? -> Early in the video you show that strip came in UNIX 1st edition and then also UNIX 2nd edition.
@freedosproject
Жыл бұрын
Thanks for spotting that. I'll have to fix it for when I do this as a live conference talk. 👍
@awksedgreep
Жыл бұрын
In 1997/98 Motorola proprietary(pre DOCSIS) cable routers required using ed to manage the router config. Apparently vi was just too difficult to port lol.
@kisielthe1st
11 ай бұрын
Amazing. Thank you. Yes I want to see more videos like this. I love the idea of using CRT for display purposes rather than a bog-standard terminal emulator. Tip for the next one: In the "Effects" menu of CRT you can reduce the "Screen Curvature" to zero to get rid of this distortion that makes it hard for you to align text columns, in the "Main" menu the value of Margin and Frame Size could be increased to centre up the contents, and in the "Terminal" menu by playing around with the Scaling and Font Width sliders you should be able to get 80x25 or 80x24 character display. It does however end up looking a little bit "stretched" since these old glass teletypes weren't 16:9.
@freedosproject
11 ай бұрын
Since recording this video, I switched to the 'default pixelated' theme, which fills my screen at 80x24 when maximized (and 80x25 if I go 'fullscreen' mode). It works very well. I had to turn off the static noise though. ☺
@mytech6779
9 ай бұрын
@@freedosproject Can your screen recorder catch a single window? You could just grab a corner and makit any dimension. I used vokoscreenNG to capture single windows within Xfce on Debian, it catches all of the C.R.T. noise. (Although the random snow makes compression difficult and greatly increases files size)
@freedosproject
9 ай бұрын
I'm actually recording a window window here. I'm using Cool Retro Term as full screen with the "Apple II" theme. That's what gives the CRT noise effect. Using Cool Retro Term was a neat idea, but it proved distracting in the comments. So I didn't use the "noise" effect when I gave the actual conference demo.
@mytech6779
9 ай бұрын
@@freedosproject C.R.T would not be stretched by the 9:16 display screen if you didn't maximize the window. That is the half of the point of recording a single window rather than recording the full screen. I only mentioned the static-noise as it impacts most codec's ability to compress the video file and can cause a lot of compression artifacts with greater compression ratios. I use a similar amount of effects with an Amber theme but I turn off the static-snow if I want to record.
@mback3713
Жыл бұрын
Cool *ed*, *nroff*, and UNIX workflow tutorial! Nits: 1) The squaring of "t" was missed in the second equation inside the *nroff* file. 2) I think the variant of C being used back then was not yet ANSI C, but one where you would declare the passed parameters outside the parentheses? (I'm pretty sure that gcc will still compile pre-ANSI C function declarations?)
@freedosproject
Жыл бұрын
Glad you liked the video! Yes, others have pointed out those issues too. I posted a followup video showing "original style" C, so you can find that on the channel. I'm giving this talk as a conference talk in a few weeks, and I am going to remind myself to square the "t" in the equation. ☺
@IbanNieto
Жыл бұрын
Very very VERY COOL VIDEO!! (and good C code style! ;-)
@freedosproject
Жыл бұрын
Thanks! 😀 I also recorded a followup video showing "old style" C coding. You can find that on the channel, too.
@michaeldeloatch7461
Жыл бұрын
Not that I am not terribly interested in Newtonian physics, fortran and old unix on a green CRT but after the first run of your code you kind of lulled me to sleep after my hi-carb breakfast for several minutes. Thanks for the free ASMR! ;-)
@freedosproject
Жыл бұрын
😴
@mcfincher29
Жыл бұрын
I love the look of that terminal, what are you using?
@freedosproject
Жыл бұрын
I'm using Cool Retro Term. You can find it here: github.com/Swordfish90/cool-retro-term
@JanBruunAndersen
Жыл бұрын
It must have been around 1982 when I first got exposed to SunOS 4 at the university. As a professional systems administrator I got exposed to Sun Solaris, Data General DG/UX, MV/UX, IBM AIX, HP/UX, and much later to SuSE Linux, RedHat Linux, etc. Because I was brought up with old time Unix'es, and because I never knew what toolset would be available on the next server, I stuck with the old-fashioned tools like Bourne Shell, awk, , sed, ls, find, grep, and vi, and did not use any of the GNU features. It is only these last two years that I have finally embraced GNU/Linux and started using Bash, vim, less, and all the other goodies that comes with the current GNU/Linux releases.
@freedosproject
Жыл бұрын
Same for me, but a few years later. My first job was managing Apollo, Sun, and HP - and I added Linux. My second job had HP and AIX - plus Linux. My third job was also a mix. I didn't learn the GNU additions until much later, after I no longer was a sysadmin, no longer had to worry about "will my scripts run everywhere?"
@itellyouforfree7238
Жыл бұрын
This is incredible! I would have loved to live those times. Men must have felt superhumans for the first time
@lilblackduc7312
Жыл бұрын
Thank you!
@TonyWhitley
Жыл бұрын
I still have printer paper in the attic that is full of my ed sessions in 1980, we didn’t have a monitor as it was too expensive! Probably one of those accountant decisions where the CapEx was the only thing that mattered, my time waiting for the terminal to print and the cost of the paper weren’t considered - no wonder it took two of us a year to write 4k of assembler! (Having to fit all the code into a 4k ROM didn’t help.)
@TonyWhitley
Жыл бұрын
Strictly speaking, not ed but "The Editor" which was a clone written for the RCA1802 processor in the COSMAC Development System worldradiohistory.com/hd2/IDX-UK/Technology/Technology-Modern/Archive-Elektor-IDX/IDX/00s/Elektor-2011-12-OCR-Page-0076.pdf Nothing as sophisticated as UNIX, there was no OS at all - the editor was "Disc 0: Track 00" (you literally typed 000 Enter to run it) and the assembler was "Disc 0: Track 02". Similarly for the source files, "Disc 1: Track 00" etc. If you added too much to a file when you saved it it would simply carry on to the next track overwriting whatever was there so it was best to leave a blank track between files: 00, 02, 04 etc!
@janglestick
Жыл бұрын
So cool, 1 minute 30 seconds in and I'm already commenting for no reason. Yay functional Unix history.
@davep8221
Жыл бұрын
My favorite FORTRAN joke: god is REAL unless declared INteger.
@freedosproject
Жыл бұрын
🤓 The person who taught us FORTRAN 77 also reminded us that relying on the IMPLICIT feature was a great way to add subtle bugs to a program, when someone later decides to change the IMPLICIT range for some reason. PI could suddenly be assumed INTEGER (the value 3) and even the Romans knew π was "3 and a bit more". 😛
@Backroad_Junkie
Жыл бұрын
I started working with Unix (Sys V) in 1985-86 as an OS. (We developed applications, but only used Unix as the OS. I had to do some admin stuff (because that's the way it was back then, lol), but never had to go inside the OS. In '88, I switched companies and became a full time system admin/programmer. At the time, there were two flavors of UNIX that I had to use, System V (because it was supported) and Berkley (BSD 3.0, because it was free, lol. A lot of companies based their OS's on BSD because of that, and tried to make it their own, which was a nightmare in itself.) From the early feel of Linux, it felt it derived from BSD more than System V... I'm still running some modified Bourne shell scripts to this day. (It generates HTML for a linked list of pictures for my website.) "Bash on Ubuntu on Windows" let's me do that today, lol. Putting BASH on Windows eliminated my UNIX machine... Don't know how far you're going to take this, but here's some things to consider. The speed of pre-microprocessor machines. It's hard to describe how slow they were. There's a reason everything was text-based. (Even early microprocessors like the 68K was painfully slow.) The kernel. Yes, the kernel exists today, but back then, it was EVERYTHING. Adding a new disk or tape drive? No dynamic reconfig for you! If you were lucky, you got a device driver. If not, you wrote your own. You then added the driver to a config file, and RECOMPILED THE KERNEL, and rebooted the machine using the new kernel. The size of the OS itself. It was tiny. Back in 1990 (or so), 1 GB double eagle disks were $1000. Yes, 1 gigabyte was a grand, but 1 GB was a biiiig storage device back then. (This was before SCSI became common. Or was even a thing.) Today, it's rare I upload a video to KZitem that's less than a gig. 😁 Oh, and I was an expert in vi, lol. I can still use it today, but I'd rather use a modern editor. Just remember kids, it's big before, and little after... 😁
@lhpl
Жыл бұрын
Fyi, in 1987, Apple released the first version of their A/UX, which ran on Macintosh II machines with 68020? and MMU. It had the entire Mac user interface of that time running as a Unix process. Yes, it was heavy, but it worked great. If you wanted to use the machine as a server, you would just not run the Mac UI.
@Backroad_Junkie
Жыл бұрын
@@lhpl Stuff like that was common. Guys over in physics used to buy Silicon Graphics machines (which were the high end graphics machines of the day) for the speed, and run their run-forever fortran programs on 'em, lol. None of the people I supported bought a machine for it's user interface, even though some of those machines did amazing stuff for the time... In 1985 or '86, I was working with 68020 NCR Towers running SysV doing real-time data collection. Since I was working for NCR at the time, I had no choice over the hardware, lol. Start up a bunch of production processes, and it became... painful. File systems then didn't even have jounalling, which meant exceedingly long boot/reboot times while the disks were checked. A 68020 felt fast at the time... But it wasn't. I'd cry if I had to do real work on such a machine today... 😁
@MobBarley
7 ай бұрын
wow, it's like being in some computer lab back in the 70s 🤓 funny how as ancient as people see vi/vim these days, back then it was state of the art, and when it comes to just writing a plain old C program even ed isn't too hard to use once you learn the basics
@freedosproject
6 ай бұрын
It's kind of cool to use ed(1) sometimes. I will use ed when I need to write something quick, like a 2-line Bash script to automate something. Typical example: I might run some commands with pipes to solve some problem, make sure it works, then start a new file in ed to type in my commands there (while I can still see the output of the previous command on my screen). It's very nice for that.
@unsuccessfulhermit
Жыл бұрын
Thank you that was fascinating!
@freedosproject
Жыл бұрын
Glad you enjoyed it!
@EvilDaveCanada
Жыл бұрын
My favourite terminal was the Wyse 60 & the Wyse 160
@AnonyDave
Жыл бұрын
It's all well before my time, but someone who was around at the time will probably berate you for using ANSI C function definitions in that C rather than classic K&R style....
@freedosproject
Жыл бұрын
Someone else pointed that out too. Good catch - I missed using K&R style in the video. I'll have to remember that when I do this as a live conference talk. ☺
@HaroldSchranz
Жыл бұрын
Cute. My first computer was a Cyber 73 or 74 and then I migrated to a DEC-10 using VT-100's and eventually began using Unix (Primix and Pyramid's version) while still using VMS. Main first exposure to Unix was AIX running on a network of IBM RT PCs I got tricked into setting up in Sweden. Eventually got to use DEC's Ultrix, SGIX, HP-UX and a bunch of supercomputers running UNIX. Command line was generally faster at getting real work done than the GUIs we use now. Still miss the most powerful text editor that has ever existed - but had to migrate to vi which was similar but much less powerful.
@freedosproject
Жыл бұрын
Very cool! I first used Unix (SunOS on Sun 3/50 workstations) as an undergrad in the early 1990s. I thought it was a great way to work, and inspired me to install Linux in 1993.
Пікірлер: 664