Kopec Explains Software
Activity Overview
Episode publication activity over the past year
Episodes
#135 Hacking the Classic Mac OS
20 Mar 2025
Contributed by Lukas
The Classic Mac OS refers to the operating system that Apple Macintosh computers ran from 1984 to 2001. While it was one of the first popular operatin...
#134 The CrowdStrike Incident
12 Aug 2024
Contributed by Lukas
On July 19th, 2024, the cybersecurity firm CrowdStrike released an update for its Falcon Sensor software that brought down millions of Windows compute...
#133 Ad Blockers
21 Jul 2024
Contributed by Lukas
Approximately one in four consumers uses an ad blocker. But do they stop to consider whether that is actually a good thing for them? In this episode, ...
#132 What is Machine Learning?
02 Jun 2024
Contributed by Lukas
Machine Learning is a discipline within the broader field of Artificial Intelligence concerned with using insights from datasets to make predictions, ...
#131 Abandonware
19 Apr 2024
Contributed by Lukas
Abandonware is old software that is no longer commercially available. It's not a legal term, and in fact it's not legal to download most of the softwa...
#130 Grace Hopper
18 Mar 2024
Contributed by Lukas
Grace Hopper is one of the most iconic people in the world of software. Her career as a mathematician, software innovator, computer science advocate, ...
#129 BASIC
01 Feb 2024
Contributed by Lukas
The creation of BASIC was one of the most important steps in the democratization of computing. BASIC, coupled with the Dartmouth Time Sharing System, ...
#128 Copyright & Machine Learning Models
11 Dec 2023
Contributed by Lukas
Many large sophisticated machine learning models, like those employed in generative AI, are trained on immense amounts of copyrighted images or text. ...
#127 The Google Search Antitrust Lawsuit
13 Nov 2023
Contributed by Lukas
In 2020 the Trump administration and eleven state attorney generals initiated an antitrust lawsuit against Google for its alleged anti-competitive beh...
#126 How Does Google Make Money?
30 Oct 2023
Contributed by Lukas
Alphabet, the parent company of Google, is one of the largest companies in the world by market capitalization. But where does all of the revenue come ...
Classic Episode: iOS vs. Android (2020)
16 Oct 2023
Contributed by Lukas
In this episode, originally published in 2020, we discuss the similarities and differences between iOS and Android. We delve into their history, busin...
#125 What is a Sandbox?
02 Oct 2023
Contributed by Lukas
In software, a sandbox is an isolated environment that limits the resources that a particular application can access. Sandboxes are used to protect th...
#124 What is a Cache?
19 Sep 2023
Contributed by Lukas
We explain what caches are, and where they're typically used. We can think of a cache as a piece of temporary fast memory used for the retrieval of pr...
#123 What is a Hash Table?
04 Sep 2023
Contributed by Lukas
Hash tables are some of the most widely used and powerful data structures. They allow for the efficient storage of key-value pairs. Keys are identifie...
#122 Open Source Licenses
21 Aug 2023
Contributed by Lukas
Understanding open source licenses is critical if you're a software developer. What are your rights and responsibilities when you incorporate an open ...
#121 Shareware with Richard Moss
07 Aug 2023
Contributed by Lukas
Shareware was a major distribution model for consumer software and games from the 1980s through to the 2000s. We’re privileged to be joined on the s...
Classic Episode: What is a Byte? (Remastered)
24 Jul 2023
Contributed by Lukas
We’re out this week, so we remastered a classic episode from 2020. It’s our third episode—a layperson’s introduction to bytes! Original descri...
#120 What is FreeBSD?
11 Jul 2023
Contributed by Lukas
FreeBSD is probably the most popular operating system that most people have never heard of. Currently celebrating its 30th anniversary, FreeBSD is a p...
#119 Myths About Open Source Software
26 Jun 2023
Contributed by Lukas
There are many misconceptions about open source software, even amongst those who think they understand it. In this episode we dispel five of the most ...
#118 Five ChatGPT Myths
12 Jun 2023
Contributed by Lukas
ChatGPT and other tools based on large language models (LLMs) have taken the software world by storm. While their capabilities are incredible, they ha...
#117 Early Video Game Console Software
29 May 2023
Contributed by Lukas
Early video game consoles (1977-1994) had primitive hardware, no operating systems, and software that was distributed on ROM chips embedded in plastic...
Classic Episode: What is an Operating System? (Remastered)
15 May 2023
Contributed by Lukas
We're travelling this week, so we remastered a classic episode from 2020. It's our second episode—operating systems explained for laypeople. Checkou...
#116 The Smallest Possible Programming Language
01 May 2023
Contributed by Lukas
How small can a programming language be and still be a programming language? In order for a programming language to be able to compute the same sorts ...
#115 Why Do Strong Passwords Matter?
17 Apr 2023
Contributed by Lukas
Strong passwords are so annoying to type-in and they're even more annoying to remember. Yet just about every modern website and app requires them. Why...
#114 What is an Instruction Set Architecture?
03 Apr 2023
Contributed by Lukas
An instruction set architecture (ISA) is a specification of the instructions that a microprocessor understands as well as the infrastructure necessary...
#113 The Go Programming Language
20 Mar 2023
Contributed by Lukas
Go, a Google-backed programming language, is by some measures one of the ten most popular programming languages in the world. Although it's a general ...
#112 Functional Programming
06 Mar 2023
Contributed by Lukas
Functional programming languages fit within a declarative paradigm and often have several key characteristics in common: immutable data types, pure fu...
#111 The Apple Lisa
20 Feb 2023
Contributed by Lukas
Last month marked the 40th anniversary of the Apple Lisa. The Lisa was an important evolutionary link in the history of the personal computer between ...
Classic Episode: What Is Software? (Remastered)
06 Feb 2023
Contributed by Lukas
We're out sick this week, so we remastered our first ever episode. It's a little more general in scope than what we typically cover on the podcast, bu...
#110 What Is Mastodon?
23 Jan 2023
Contributed by Lukas
Mastodon is a social network currently attracting significant buzz in the tech world. A lot of its new users are part of an exodus from Twitter. But h...
#109 How Is Memory Managed by Programmers?
09 Jan 2023
Contributed by Lukas
Different programming languages employ different memory management techniques. The most common are manual memory management, tracing garbage collector...
#108 How Does Mozilla Make Money?
26 Dec 2022
Contributed by Lukas
Mozilla is the entity that makes the Firefox web browser. It has an interesting corporate structure. The non-profit Mozilla Foundation has a for-profi...
#107 Free Software vs. Open Source Software
12 Dec 2022
Contributed by Lukas
In the late 1990s, the open source software movement split from the free software movement. A rebranding, the open source movement has a less philosop...
#106 Cross-Platform Mobile Frameworks
28 Nov 2022
Contributed by Lukas
Cross-platform mobile frameworks enable developers to write an app once and recompile it for both iOS and Android. This can reduce development costs, ...
#105 The 2038 Problem
14 Nov 2022
Contributed by Lukas
On January 19, 2038, certain non-updated legacy systems that use Unix time will roll their dates around to December 13, 1901. In Unix, time is recorde...
#104 Web Apps vs. Native Apps
31 Oct 2022
Contributed by Lukas
When planning the development of a new app, one of the most basic questions to answer is whether to develop it as a Web app or as a native app. In thi...
#103 Expert Systems: A Forgotten Area of AI
17 Oct 2022
Contributed by Lukas
Expert systems are a sub-discipline within artificial intelligence concerned with creating problem solving programs based on machine-encoded human dom...
#102 PDF
03 Oct 2022
Contributed by Lukas
The PDF (Portable Document Format) file format has become ubiquitous in the computing world. PDF is a super format that can embed vector graphics, adv...
#101 Accessibility
19 Sep 2022
Contributed by Lukas
It is important to make software that is usable by all people, and that includes users with physical or mental challenges. Accessibility is about remo...
#100 Early Web Innovations
05 Sep 2022
Contributed by Lukas
When it was released, the World Wide Web revolutionized communications and commerce. It was created by Tim Berners-Lee, who outlined its key technical...
#99 Android App Development
22 Aug 2022
Contributed by Lukas
Android is the most popular operating system in the world, but developing apps for it can feel intimidating. In this episode we breakdown the Android ...
#98 How Does Apple Make Money?
08 Aug 2022
Contributed by Lukas
It has long been debated whether Apple is more of a hardware company or more of a software company. In its quarterly reports it does not delineate bet...
#97 What Are APIs?
25 Jul 2022
Contributed by Lukas
An Application Programming Interface (API) is a specification for how a piece of software provides functionality to other pieces of software. APIs can...
#96 What is a BIOS?
11 Jul 2022
Contributed by Lukas
A BIOS (Basic Input/Output System) is a piece of firmware on a PC that sits between the hardware and the operating system. It takes care of some essen...
#95 DataOps, Data Pipelines, and Estuary Flow with Johnny Graettinger
27 Jun 2022
Contributed by Lukas
The world of data stores has become complex and fragmented. Companies find their data spread across a variety of sources with no obvious way to integr...
#94 Software Piracy
13 Jun 2022
Contributed by Lukas
There is a constant battle between software publishers and pirates who find ways to redistribute proprietary software in violation of its license. In ...
#93 Phone Location Tracking
30 May 2022
Contributed by Lukas
Your phone includes multiple technologies for tracking your location. Your location can be triangulated via signals to cell towers, precisely pinpoint...
#92 Python
16 May 2022
Contributed by Lukas
By several measures, including a 2021 survey by IEEE, Python is the most popular programming language in the world. But why? What's special about it? ...
#91 PayPal's Early Innovations
02 May 2022
Contributed by Lukas
Today we know PayPal as a financial powerhouse. But when it was a young company, it had to innovate to survive. PayPal was the result of the merger of...
#90 Binary Search
18 Apr 2022
Contributed by Lukas
Binary search is an algorithm for finding an item in a sorted data set. It requires that all of the items in the data set be of the same data type and...
#89 Multi-Touch
04 Apr 2022
Contributed by Lukas
Every modern smartphone and tablet uses a multi-touch user interface. Multi-touch is a relatively recent phenomenon. While the earliest research into ...
#88 Human-Computer Interaction
21 Mar 2022
Contributed by Lukas
Human-Computer Interaction is a discipline at the intersection of computer science, psychology, and design. It's about making ergonomic interfaces tha...
#87 Compilers and Interpreters
07 Mar 2022
Contributed by Lukas
A compiler is a program that takes source code written in a programming language and converts it into machine code that a microprocessor can understan...
#86 Tim Howes
21 Feb 2022
Contributed by Lukas
Tim Howes is a software executive, entrepreneur, investor, and computer scientist who has been at the forefront of many of the most important waves in...
#85 The End-to-End Encryption Debate
07 Feb 2022
Contributed by Lukas
Are your messages secure? End-to-end encryption protects messages and data from being viewed by anyone but their intended recipients. However, systems...
#84 What Is Blockchain?
24 Jan 2022
Contributed by Lukas
Blockchain may be one of the biggest tech buzzwords of the decade. But it's not as complicated as you may fear. Pieces of data, blocks, that follow on...
#83 Why Was the iPhone's Software Revolutionary?
10 Jan 2022
Contributed by Lukas
When the iPhone came out in 2007, it totally transformed the mobile industry. But what was so revolutionary about the software in even its first versi...
#82 What Are Cookies?
03 Jan 2022
Contributed by Lukas
Cookies are primarily used on the Web for two things: authentication and tracking. Although alternatives exist, cookies are the most popular way to pr...
#81 Is Software Getting Faster?
27 Dec 2021
Contributed by Lukas
Software runs on hardware. And of course, hardware has gotten faster over the past few decades by orders of magnitude. So, clearly our software is get...
#80 Logging and the Log4J Vulnerability
20 Dec 2021
Contributed by Lukas
Almost every large piece of software creates log files. Log files record events that happen during the execution of a program. These could be signific...
#79 The Logo Programming Language
13 Dec 2021
Contributed by Lukas
Logo is an educational programming language that was popular in elementary school computing labs in the 1980s. A generation of programmers began their...
#78 How Does Amazon Make Money?
06 Dec 2021
Contributed by Lukas
Amazon is the world's largest online retailer. But they are so much more. They sell cutting-edge consumer electronics like the Kindle and Echo lines, ...
#77 What is a Memory Leak?
29 Nov 2021
Contributed by Lukas
Memory leaks occur when a program allocates memory and fails to free it when the memory is no longer being used. They can cause the memory use of a pr...
#76 What is Protected Memory?
22 Nov 2021
Contributed by Lukas
Memory protection is a mechanism for protecting one program from another program, which ultimately protects the user. It stops malicious programs from...
#75 Why are Technical Interviews so Intimidating?
15 Nov 2021
Contributed by Lukas
The application process for a job in software development or software engineering typically involves what's known as a "technical interview." Technica...
#74 Hackers (1995): Fact or Fiction?
08 Nov 2021
Contributed by Lukas
Hackers is a cult classic 1995 movie about a group of teenage hackers and their counter culture. The plot revolves around an online battle between the...
#73 The Swift Programming Language
01 Nov 2021
Contributed by Lukas
Swift is one of the top ten most popular programming languages in the world by almost any ranking or measure. Yet, it's also a niche language. That se...
#72 The Missouri Governor and Tech Illiterate Leadership
25 Oct 2021
Contributed by Lukas
Last week a journalist in the St. Louis Post-Dispatch reported on a vulnerability they discovered in the Missouri Department of Elementary and Seconda...
#71 How Does Facebook Make Money?
18 Oct 2021
Contributed by Lukas
Facebook's been in the news again, and as usual it's not a positive story. In this episode we dive into some of Facebook's financial statistics from t...
#70 Steve Jobs Remembrance
11 Oct 2021
Contributed by Lukas
Last week marked the tenth anniversary of the death of Steve Jobs. We discuss his legacy and how he inspired people in the tech industry. David also t...
#69 The Objective-C Programming Language
04 Oct 2021
Contributed by Lukas
Objective-C was developed nearly contemporaneously with C++, yet it never achieved the same widespread level of industry acceptance. Both languages at...
#68 Open Source Business Models
27 Sep 2021
Contributed by Lukas
Open source does not mean non-commercial. We start this episode by dispelling the common myths amongst the general public about the relationship betwe...
#67 Clive Sinclair and his Personal Computing Legacy
20 Sep 2021
Contributed by Lukas
Last week, influential British inventor and entrepreneur Clive Sinclair passed away. Sinclair invented some of the first slim calculators, handheld te...
#66 What is a Firewall?
13 Sep 2021
Contributed by Lukas
Firewalls protect computers and private networks from threats originating across the wider Internet. They come in both hardware and software flavors. ...
#65 What is a Device Driver?
06 Sep 2021
Contributed by Lukas
Every hardware peripheral connected to your computer is powered by a device driver. A device driver sits between the operating system and a hardware d...
#64 What is a Content Management System?
30 Aug 2021
Contributed by Lukas
A content management system (CMS) is a piece of software that lives on a web server for the dynamic generation of web sites based on content that live...
#63 Intel's Current Challenges
23 Aug 2021
Contributed by Lukas
Intel has received a lot of bad press the last few years. It never successfully made the leap into the smartphone market. Its fab got stuck at a 14 na...
#62 What is an Algorithm?
16 Aug 2021
Contributed by Lukas
Algorithms are at the heart of computer science. And they're actually a really simple concept. What are the steps we need to take to solve a problem? ...
#61 What is a Data Structure?
09 Aug 2021
Contributed by Lukas
The official definitions of data structures are very vague. For example, Introduction to Algorithms defines a data structure as "A way to store and or...
#60 What is JavaScript?
02 Aug 2021
Contributed by Lukas
JavaScript is one of the most popular programming languages in the world for a simple reason: it's the only client-side programming language in every ...
#59 What is HTML and CSS?
26 Jul 2021
Contributed by Lukas
HTML, or Hypertext Markup Language, describes the content and structure of web pages. A web browser can also be thought of as an HTML document viewer....
#58 GitHub Copilot's Controversies
19 Jul 2021
Contributed by Lukas
GitHub recently launched its AI programming assistant, Copilot, in beta. Copilot can suggest lines of source code or even entire functions to the prog...
#57 Version Control Systems, Git, and GitHub
12 Jul 2021
Contributed by Lukas
Version Control Systems make it possible for software developers to seamlessly work together on large projects. In this episode we explain how version...
#56 What is the Cloud?
05 Jul 2021
Contributed by Lukas
The cloud is an amorphous term that at its heart refers to computation or storage resources that are remote, aka not on your device. What backs the mo...
#55 What is Java?
28 Jun 2021
Contributed by Lukas
Java, the most popular programming language in the world, is also a platform. It enables software to be written once, compiled into platform-independe...
#54 What is Compression?
21 Jun 2021
Contributed by Lukas
Compression is a classic trade-off between space and time. Compressed data uses less space than the original, but it takes computational time to compr...
#53 Developer Tools
14 Jun 2021
Contributed by Lukas
You need programs to make programs. In this episode we discuss the tools programmers use to make the software you love. We discuss compilers, text edi...
#52 One-Year Anniversary
07 Jun 2021
Contributed by Lukas
On our 1-year anniversary of the podcast we discuss our most popular episodes, our favorite episodes, and where we're going with the podcast moving fo...
#51 What is Lossless Audio?
31 May 2021
Contributed by Lukas
Lossless audio is coming to Apple Music and Spotify. But what is lossless audio? In this episode we explain the difference between lossy compression, ...
#50 What is DRM?
24 May 2021
Contributed by Lukas
Digital Rights Management (DRM) is a software or hardware mechanism that restricts what you can do with your digital media. It may limit a movie from ...
#49 Apple vs Facebook on App Tracking
17 May 2021
Contributed by Lukas
Starting with iOS 14.5, Apple forces developers who want to track users across multiple different apps to get permission on a per app basis. In this e...
#48 What's it Like Studying Computer Science in College?
10 May 2021
Contributed by Lukas
What is it like to study computer science (CS) at the undergraduate level? In this episode we dive into the qualities you need to succeed, the curricu...
#47 The C++ Programming Language
03 May 2021
Contributed by Lukas
Bjarne Stroustrup originally built C++ in the early 1980s as a successor to C with support for object-oriented programming. Since then, C++ has evolve...
#46 What is The Internet of Things?
26 Apr 2021
Contributed by Lukas
It seems like every electric device that we buy today is connected to the Internet. This movement is known as the Internet of Things, or IoT for short...
#45 Two Software Disasters
19 Apr 2021
Contributed by Lukas
While software has reduced human error in many industries, when software errors are made they can have tragic consequences. The Boeing 737 MAX crashes...
#44 Google v. Oracle
12 Apr 2021
Contributed by Lukas
Last week the Supreme Court of the United States made a decision in the case known as Google LLC v. Oracle America, Inc. The case centers on whether t...
#43 The Lisp Programming Language
05 Apr 2021
Contributed by Lukas
Lisp is the second oldest programming language still in wide use. Designed by John McCarthy in 1958, it introduced several new ideas to the field of p...
#42 What was DOS?
29 Mar 2021
Contributed by Lukas
Microsoft became the dominant player in personal computer operating systems through the release of MS-DOS for the IBM PC. Microsoft would go on to lic...
#41 How to Pick an Internet Service Provider
22 Mar 2021
Contributed by Lukas
Selecting an Internet Service Provider (ISP) can be difficult if you don't know the terminology. How is connection speed measured? How does download s...
#40 What is the Memory Hierarchy?
15 Mar 2021
Contributed by Lukas
A modern computer doesn't just have one type of memory. It has disk, RAM, CPU caches, CPU registers, and much more. In this episode we dive into the d...