Thursday, August 8, 2024

I Guess I'm a Geek

Last night as I was finishing up my shift at work, a young man, who is a Senior in High School, told me he is learning Python programming language. He ask if I knew what that was. So, I guess I'm a Geek because I do know what that is. His question spurred a conversation about my experience with computers and programming. A subject I am well versed in and love to discuss.

I asked him if he knew binary, asci, or DOS. He did know what binary was but didn't know what DOS was. So we talked about DOS for a while. DOS is an acronym for Disk Operating System and both IBM and Microsoft branded it in the early years.

One of the interesting memories I have is programming fonts in the early eighties. It was needed for publishing early childhood teaching courses at a Christian school I was working at. I was the tech guy doing layouts for pages that were reproduced on a printing press.

The ball and stick font hadn't been available in typewriters or on the computer. Actually, I had never seen a computer before that and when the director gave me one to use I proceeded to take it apart to see what was in it.

This raised her eybrows a bit, to say the least. I remember her saying something like, "Do you know how much that computer costs?" I said, "I can put it back together." She said, "You better. and it better work!" So I did and it did work. If you can call a flashing little green neon dash on the screen working.

The directors son and I created the font for our use and installed it into Word Perfect. It was a laborious process of plotting pixels and manually drafting letters and then 

That was the beginning of my computer career. Some 50 years later I have a vast amount of experience under my belt.

I remember buying a luggable Compaq computer with a 6 inch green screen, two 5 1/4 inch floppy drives and a keyboard that became my workstation for several years. I learned how to program DOS batch files and write in Basic so I could teach my son different subjects. I also programmed music lessons with words, music and a bouncing ball for him to sing along to.

So I looked up some information about operating systems and programming for those curious about the origin of such tech things. Here is what I found.

The origins of computer operating systems (OS) can be traced back to the early days of computing in the 1950s and 1960s. Here’s a brief overview:

1. Batch Processing Systems (1950s)IBM 701 and 704: 

Early computers like these did not have an OS. Programs were loaded one at a time, executed, and then the results were printed. The operator would then load the next program.

General Motors and IBM (1956): 

The first "true" operating system was GM-NAA I/O, created by General Motors for their IBM 704. It was a simple batch processing system, automating the sequence of jobs (loading programs, executing them, and unloading results).

2. Early Time-Sharing Systems (1960s) Compatible Time-Sharing System (CTSS) - 1961:

 Developed at MIT, CTSS allowed multiple users to interact with the computer simultaneously through terminals.

MULTICS (1965): 

Also developed at MIT in collaboration with Bell Labs and General Electric, MULTICS was a more sophisticated time-sharing system and is considered the precursor to Unix.

3. Unix (1969)Ken Thompson and Dennis Ritchie at Bell Labs: 

Unix was developed as a simpler alternative to MULTICS. It introduced many concepts still in use today, like hierarchical file systems and simple, modular utilities that can be combined in scripts.Unix later inspired a wide range of derivatives, including Linux and BSD, which are the foundation for many modern OSs.

4. Mainframe and Minicomputer Operating Systems (1960s-1970s)IBM OS/360 (1964): 

One of the first operating systems to manage hardware resources effectively, supporting a variety of programs and tasks simultaneously.

Digital Equipment Corporation's VMS (1977):

 Designed for their VAX minicomputers, VMS was influential in business and technical computing.

5. Personal Computer Operating Systems (1970s-1980s)CP/M (1974): 

Created by Gary Kildall, CP/M was a popular OS for early personal computers.

MS-DOS (1981): [This is where I fist started programming.]

Microsoft developed MS-DOS, which became the foundation for early IBM PCs. It was later replaced by Windows, which started as a graphical interface for MS-DOS.

6. Modern Operating SystemsWindows (1985): [Built on top of MSW-DOS]

 Microsoft introduced Windows as a graphical operating environment, which eventually evolved into a full-fledged operating system with Windows NT and beyond.

Mac OS (1984): 

Apple's Macintosh introduced a user-friendly graphical interface. Mac OS eventually evolved into macOS, based on Unix-like systems from the NeXTSTEP OS.

Linux (1991): [This worked good for servers I had at the Tech Center]

Created by Linus Torvalds, Linux is a Unix-like OS that is free and open-source. It has become widely used in servers, embedded systems, and as a basis for Android.The development of operating systems is a reflection of the evolving needs and capabilities of computing technology, from batch processing and time-sharing to multi-user, graphical interfaces and beyond.

Programming languages have evolved significantly since their inception, with the earliest forms dating back to the mid-20th century. Here’s an overview of their development and usage:

1. Early Mechanical Languages (19th Century)Ada Lovelace (1842-1843): [Way before my time!]

Often considered the first computer programmer, Ada Lovelace wrote an algorithm for Charles Babbage’s Analytical Engine, though it was never built. This algorithm is considered an early example of a programming language, albeit for a hypothetical machine.

2. Assembly Language (1940s)ENIAC and Early Computers (1940s): [Still before my time.]

The first computers like the ENIAC were programmed using machine code, which is the most basic level of programming directly in binary. Assembly language was introduced as a human-readable representation of machine code, using mnemonic codes and labels instead of binary.Usage: Assembly languages were used to write programs that controlled hardware directly, offering more readability and manageability than pure machine code.

3. High-Level Languages (1950s)FORTRAN (1957): [Started when I was born]

 Developed by IBM, FORTRAN (FORmula TRANslation) was the first high-level programming language, designed for scientific and engineering calculations. It allowed programmers to write code using mathematical formulas instead of needing to manage hardware details.

COBOL (1959): Created for business data processing, COBOL (COmmon Business-Oriented Language) was designed to be readable and understandable by people without a deep technical background.

LISP (1958): Developed by John McCarthy, LISP (LISt Processing) was one of the first languages used for artificial intelligence research and introduced many concepts still in use today, such as recursion and symbolic expression processing.Usage: High-level languages abstracted away the complexity of hardware, allowing programs to be written more easily and ported between different machines.

4. Structured Programming and Language Expansion (1960s-1970s)ALGOL (1960):

 ALGOL (ALGOrithmic Language) introduced structured programming concepts like block structure, which influenced many later languages.BASIC (1964): [I used to program on a Tandy PC with Basic.] Designed to be easy for beginners, BASIC (Beginner's All-purpose Symbolic Instruction Code) became popular in schools and with hobbyists.

C (1972): Developed by Dennis Ritchie at Bell Labs, C provided low-level access to memory but with the flexibility of a high-level language. It became widely used for system programming, including the development of Unix.

Usage: These languages emphasized structured programming techniques, improving code readability, maintainability, and reusability.

5. Object-Oriented Programming (1980s)Smalltalk (1972-1980):

 Smalltalk introduced the concept of object-oriented programming (OOP), where data and the methods that operate on that data are bundled together into objects.

C++ (1985): Bjarne Stroustrup developed C++ by adding object-oriented features to C. It became widely used for large-scale software development.

Usage: Object-oriented languages made it easier to model complex systems and reuse code, becoming dominant in software engineering.

6. Scripting and Internet Languages (1990s)Python (1991): [They are still teaching and using this in school.]

Created by Guido van Rossum, Python emphasized readability and simplicity, becoming popular for a wide range of applications, including web development and data science.

Java (1995): Developed by Sun Microsystems, Java was designed to be platform-independent, running on any device with a Java Virtual Machine (JVM). It became a standard for enterprise applications and Android development.

JavaScript (1995): JavaScript was created by Netscape for adding interactivity to web pages and has since become a crucial part of web development.

Usage: These languages were designed for rapid development, ease of use, and cross-platform compatibility, which were essential as the internet and web applications grew in importance.

7. Modern Programming Languages (2000s-Present)

C# (2000): 

Developed by Microsoft, C# is used primarily for Windows applications and has similarities to Java.

Swift (2014): 

Created by Apple, Swift is used for developing iOS and macOS applications, emphasizing safety and performance.

Rust (2010): 

Developed by Mozilla, Rust focuses on memory safety and concurrency without sacrificing performance, becoming popular for system programming.

Usage: Modern languages focus on safety, concurrency, and developer productivity, addressing the challenges of modern software development.SummaryProgramming languages have evolved from low-level machine and assembly code to high-level languages that abstract away hardware details, enabling more complex and powerful software development. Each generation of languages introduced new concepts and abstractions that made programming more accessible and productive, reflecting the changing needs of computing over time.

I hope this helps some of you who have actually read and enjoyed this historical review up to this point. If so, please comment and follow me for future geeky stuff. 

May God bless you this day as you seek him in all you do.


ReplyForward

Tuesday, August 6, 2024

Our Recent Turn in Life

These past few months have been rather interesting while I have been on leave from work. It's been a definite turn in direction for our life. God is good and He has protected us and brought us through a new year of events.

My wife has several medical issues that have been dealt with and caused her to go on disability. She has not been able to return to work since before the first of this year. Between diabetic wounds and a diagnosis of cancer in her leg we have spent many hours in surgery, recovery, wound care, home care and Doctor visits. We are still doing recovery and wound care but, we are making progress.

There is a treatment for wound care called hyperbaric oxygen treatment which is a process of sitting in a hyperbaric chamber—an enclosed space filled with high-pressure oxygen— and breathing. This allows your lungs to take in more oxygen, thereby increasing circulating oxygen in your bloodstream. This was prescribed for her as a treatment for her wounds.

We drive 37 miles to the hospital wound center each morning so my wife can receive this treatment. The treatment takes about 2 hours with 1/2 hour on each end for prepping and dressing. Everything about the chamber is pretty high-tech and includes the option of video or audio for my wife to watch or listen to. Some days she catches up on sleep. This treatment will last till September 18th. It reminds me of a diving decompression chamber since it is pressurized and must be regulated going in and coming out.

None-the-less, we get up at 5:30am and return home about noontime. Once we are home we start an infusion treatment of antibiotics to address a staph infection in her toe. We did this once before for 6 weeks but staph is hard to deal with and we have had to repeat the process for 8 weeks this time. It requires a PICC line being installed in the arm and the introduction of fluids for clearing the lines and the application of the antibiotic fluid. This takes about an hour every day.

Included in our daily regimen is the changing of bandages on my wife's leg and feet. She had two surgeries for a mass that formed in her leg last year and then was diagnosed as cancerous. Her second surgery was on June 10th at Baptist Hospital in Memphis. This was performed by a sarcoma cancer surgeon. He is a  specialist since this type of cancer is tricky to remove. He was able to remove all of the mass but of course this left a pretty hefty incision which he nicely stitched up. We are still seeing quite a bit of weeping from the incision as it slowly heals. We change the dressing every day.

The week of July 15th we had a scare as the surgery incision became infected with cellulitis and we ended up in emergency at Magnolia Hospital Monday morning. This progressed into a hospital stay the rest of the week. Cellulitis is a common, potentially serious bacterial skin infection. The infection happens when a break in the skin allows bacteria to enter. We were able to get this under control with more medication and then Friday she was released to go home.  

My wide's feet represent a different challenge since she has to walk on them to function each day. It's somewhat better now as it has been in the past. Prior to our meeting she went through a trying time of life with an appendectomy's which led to a staph infection and the amputation of her right foot little toe area. This required her to recuperate and sent her into a series of wound treatment years for ulcers that formed in both of her feet. 



She has suffered the need for orthopedic shoes, inserts, a medical boot, offset "duck shoes" (that requires a walker for balance), required wound care visits and daily bandaging of her feet, all while trying to earn a living by standing and walking in a retail sales environment. Until the beginning of this year when she had to take medical leave and disability from her job. It's been a painful and trying few years.

So, now I have to say that in and through all of this process my wife has an awesome testimony of faith and perseverance in trusting the Lord for healing and comfort. She publicly prays with other patients when ever we are attending appointments. Her friendships with so many past customers leads to meetings and more prayer and testimony as we travel to appointments, in the hospital and in the parking lots of grocery stores. God has used every one of her ailments to bring honor and blessing to so many people, known and unknown, and given so many others the blessings of praying with and for her. I'm not trying to put her on a pedestal because we know and confess that the Lord Jesus Christ is the provider and spiritual supply of her very life.

Our exact future is not known but we do know that through it all we are blessed with the life of our Lord and Savior. God is good all the time. We love our life in Him and know He is eternally with us through it all.