Kopec Explains Software cover image

Kopec Explains Software

Latest episodes

undefined
Mar 21, 2022 • 20min

#88 Human-Computer Interaction

Human-Computer Interaction is a discipline at the intersection of computer science, psychology, and design. It's about making ergonomic interfaces that sit at the border between the human and the machine. In this episode we explain the field's history, what research in it entails, and its place alongside other disciplines. By the end of the episode you'll gain a general understanding of what HCI is. Show Notes Episode 21: How Have UIs Evolved? Human-Computer Interaction: An Empirical Research Perspective by I. Scott MacKenzie via Amazon The Design of Everyday Things by Don Norman via Amazon Simple and Usable by Giles Colborne via Amazon Follow us on Twitter @KopecExplains. Theme “Place on Fire” Copyright 2019 Creo, CC BY 4.0 Find out more at http://kopec.live
undefined
Mar 7, 2022 • 25min

#87 Compilers and Interpreters

A compiler is a program that takes source code written in a programming language and converts it into machine code that a microprocessor can understand. Compilers are sophisticated programs composed of several different phases including (but not limited to) tokenization, parsing, and machine code generation. In this episode we breakdown why compilers are important, how they work, and how they differ from interpreters. We also explain tangential topics like just-in-time compilers and transpilers. Ultimately compilers and interpreters often have to deal with several trade offs. After listening to this episode, you will better understand those tradeoffs and why one compiler will differ from another. Show Notes Episode 35: The C Programming Language Crafting Interpreters via Amazon The Dragon Book via Amazon Ukraine Humanitarian Organizations via Readdle Follow us on Twitter @KopecExplains. Theme “Place on Fire” Copyright 2019 Creo, CC BY 4.0 Find out more at http://kopec.live
undefined
Feb 21, 2022 • 43min

#86 Tim Howes

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 the technology industry since the 1990s. During his PhD work in computer science, Howes co-created the Lightweight Directory Access Protocol (LDAP), which has become the industry standard means of managing directory information services. In the late 1990s he worked at Netscape on the server side of their business. After Netscape was acquired by AOL, he joined Marc Andreessen and Ben Horowitz in founding Loudcloud, one of the first companies to sell cloud services, predating Amazon Web Services by nearly a decade. Loudcloud would transform into Opsware and be purchased by HP in a successful exit. Later in his career, Howes would co-found Rockmelt, the developer of an innovative web browser, which was later purchased by Yahoo. Howes has held engineering management and technology leadership positions at HP, Yahoo, AOL, and Facebook. He now does angel investing and advises early stage technology companies. In this episode, I interviewed Tim about his career and his advice for people just starting their journeys in the industry. The interview was recorded in-person on February 12, 2022 in my office at Champlain College. Champlain has a mask-mandate, so apologies about how my voice sounded a little muffled. Show Notes Tim Howes on Twitter Tim Howes on LinkedIn Tim Howes via Wikipedia Loudcloud/Opsware via Wikipedia Follow us on Twitter @KopecExplains. Theme “Place on Fire” Copyright 2019 Creo, CC BY 4.0 Find out more at http://kopec.live
undefined
Feb 7, 2022 • 21min

#85 The End-to-End Encryption Debate

Are your messages secure? End-to-end encryption protects messages and data from being viewed by anyone but their intended recipients. However, systems that implement end-to-end encryption also prevent law enforcement from intercepting the messages of criminals. In this episode we explain end-to-end encryption and the debate surrounding it as the UK government works to prevent its implementation on Facebook. We suggest first listening to our previous episode on encryption (linked below) if you are not familiar with encryption as a concept. Show Notes Episode 17: What Is Encryption? The UK Government is reportedly preparing a PR blitz against end-to-end encryption via Engadget Microsoft handed the NSA access to encrypted messages via The Guardian Messenger’s end-to-end encrypted chats and calls are available to everyone via The Verge FBI–Apple encryption dispute via Wikipedia Episode 12: Open Source Software Follow us on Twitter @KopecExplains. Theme “Place on Fire” Copyright 2019 Creo, CC BY 4.0 Find out more at http://kopec.live
undefined
Jan 24, 2022 • 0sec

#84 What Is Blockchain?

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 one another chronologically are connected (the chain part) via cryptographic hashes. Each block has a cryptographic hash of the previous block, providing the ability to verify the validity of the chain. We explain the only tricky part of that description, the cryptographic hash function, and also explain why blockchain is only part of the underlying technology of bitcoin. Finally, we consider other applications of blockchain technology. Show Notes Episode 17: What Is Encryption? Episode 57: Version Control Systems, Git, and GitHub Follow us on Twitter @KopecExplains. Theme “Place on Fire” Copyright 2019 Creo, CC BY 4.0 Find out more at http://kopec.live
undefined
Jan 10, 2022 • 10min

#83 Why Was the iPhone's Software Revolutionary?

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 version? For the 15th anniversary of the announcement of the iPhone we talk about the three aspects of the original iPhone's software that set it apart from the smartphones that came before it: its robust operating system, its multi-touch user interface, and the App Store, which arrived 1 year later. We note that it wasn't necessarily the first in all of these categories, but explain why it was the most significant. Show Notes Episode 38: The History of macOS Episode 4: iOS vs. Android Follow us on Twitter @KopecExplains. Theme “Place on Fire” Copyright 2019 Creo, CC BY 4.0 Find out more at http://kopec.live
undefined
Jan 3, 2022 • 18min

#82 What Are Cookies?

Cookies are primarily used on the Web for two things: authentication and tracking. Although alternatives exist, cookies are the most popular way to provide some state for the stateless HTTP protocol. In this episode we explain what cookies are, how they work, the origin of cookies, applications of cookies, which browsers block "bad" cookies to protect your privacy, first-party versus third-party cookies, and why you need to click those popups about cookies on almost every website you visit. Show Notes Episode 6: How Does the Web Work? Episode 24: The Browser Wars Follow us on Twitter @KopecExplains. Theme “Place on Fire” Copyright 2019 Creo, CC BY 4.0 Find out more at http://kopec.live
undefined
Dec 27, 2021 • 14min

#81 Is Software Getting Faster?

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 getting faster. But what do we mean by faster? And why doesn't it always "feel" like it's getting faster? In this episode we explore the underlying factors that sometimes make modern software feel slower, despite actually being faster. Show Notes Computer latency: 1977-2017 via Dan Luu Follow us on Twitter @KopecExplains. Theme “Place on Fire” Copyright 2019 Creo, CC BY 4.0 Find out more at http://kopec.live
undefined
Dec 20, 2021 • 14min

#80 Logging and the Log4J Vulnerability

Almost every large piece of software creates log files. Log files record events that happen during the execution of a program. These could be significant routine events or errors. Logs help software developers fix issues. Last week a significant vulnerability was discovered in Log4J, one of the most popular logging libraries. In this episode we explain logging and why the vulnerability was such a big deal. Show Notes Episode 12: Open Source Software Follow us on Twitter @KopecExplains. Theme “Place on Fire” Copyright 2019 Creo, CC BY 4.0 Find out more at http://kopec.live
undefined
Dec 13, 2021 • 12min

#79 The Logo Programming Language

Logo is an educational programming language that was popular in elementary school computing labs in the 1980s. A generation of programmers began their careers with Logo. Logo is based on turtle graphics, which is centered on commands that guide a virtual turtle cursor around the screen to draw lines. With just a couple very simple commands, learners can begin to draw pictures in code. In this episode we explain Logo's niche, and also talk about educational programming languages more generally. Show Notes Episode 43: The Lisp Programming Language Episode 11: What is a Programming Language? Logo via Wikipedia SeaTurtle Scratch Follow us on Twitter @KopecExplains. Theme “Place on Fire” Copyright 2019 Creo, CC BY 4.0 Find out more at http://kopec.live

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode