RSSAmplifier

Blog

Observational Hazard

David Kopec's Blog

observationalhazard.comRSS feed ↗25 posts

Latest posts

C -> Java != Java -> LLM

Many have compared the advancements in LLMs for software development to the improvements in abstraction that came with better programming languages. But there s a key difference. While the end product of software development, a binary, has never drastically changed its form (though its distribution has radically changed), the intermediate product did with programming language transitions. The…

Writing Computer Science from Scratch

My fifth book, Computer Science from Scratch: Building Interpreters, Art, Emulators, and ML in Python was recently published by No Starch Press. It s a great book for intermediate or advanced Python programmers who have some gaps in their CS knowledge and want to learn from a code-centric, project-focused approach. It includes seven fun, educational projects like building a BASIC interpreter and…

After 10 Years, Yelp Gave My App 4 Days

Update August 1, 2024 The original blog post below went a bit viral on Hacker News and garnered 60,000+ page views in just a couple days. Maybe that (or more likely other API partners complaining) had some impact at Yelp. They just sent the email that follows. I appreciate the apology and acknowledgement of the mistake. I also would like to clarify what I wrote in more words in the original…

Adding Contacts on Apple Platforms without Entitlements

Adding a contact to the user s address book on Apple platforms using the prescribed method requires jumping through a lot of hoops. You have to: add NSContactsUsageDescription to your info.plist add an entitlement to your app ask the user for authorization (requires an in-app popup) if you want to modify the note field of the contact, you need to get permission from Apple using an online form to…

Book Review: Weaving the Web

Although it came out in the year 2000, Weaving the Web: The Original Design and Ultimate Destiny of the World Wide Web is as relevant today as it was when it was published. Weaving the Web is a memoir by Tim Berners-Lee about the creation and early growth of the Web. Most of the book concentrates on the ideas, insights, software, and previous attempts that led to the Web—as well as the decisions…

Introductory Programming Assessment Must Accommodate Copilot-like Assistants

GitHub Copilot and other machine learning based programming assistants will fundamentally change how we assess competency in introductory programming courses. Computer science educators can no longer rely on formulaic assignments and an honor code to ensure original work that demonstrates programmatic ability. Copilot-like assistants have blurred the line between the programmer s work and machine…

My Experience with Technical Interviews in 2022

I just had the chance to experience 8 different technical interview processes. And they were not what I expected! I didn t get asked a single data structures and algorithms question. No leetcode for me. This may largely be related to the types of organizations that I applied. Despite writing a book about algorithms and teaching a class called Data Structures & Algorithms, I don t do particularly…

Building Retro Dither: Dithering Algorithms, Run-Length Encoding, Resource Forks and More!

Today I launched a new novelty Mac app, Retro Dither . Retro Dither gives any photo a cool retro look using just black and white pixels. You may want this for artistic effect, or you may want to export your photo to MacPaint for display on a retro Mac. Retro Dither launched on the Mac App Store today . Note that we re talking about just black and white, not grayscale (no grays here!). Amazingly,…

Apple Apologetics

The common criticism of the modern news industry is that objective journalism has been replaced by opinion-slanted proselytizing. There s an interesting slice of the news world where proselytizing was never even at issue. I m talking about the world of news sites, blogs, magazines, and rumor mills that cover Apple. I ve been reading news sites like MacNN (now defunct), MacWorld , and MacRumors…

Book Review: Sid Meier's Memoir!

I ve played far too many hours of Civilization throughout my life. If you haven t, or you re not an aspiring game designer, then you may find large sections of Sid Meier s Memoir! hard to appreciate. But I do love Sid Meier s games and I do dabble in making games as a hobby. So, I really appreciated this memoir that takes you through Meier s entire career as well as some of his rules of game…

Book Review: No Filter

Instagram is one of the most important cultural phenomenons of the 2010s. No Filter by Sarah Frier covers Instagram s rise from a two-person startup to the second largest social network in the world. Along the way, Frier explores Instagram influencers, the network s effect on teens, and its sometimes rocky existance within the confines of its parent company, Facebook. No Filter is competently…

Book Review: Ghost In the Wires

Surprisingly, for a memoir about a guy who spends most of his time sitting in front of a computer, Ghost in the Wires: My Adventures as the World s Most Wanted Hacker is a gripping thrill ride. And it s a testament to Kevin Mitnick and his co-author, William Simon, that it works. In the wrong hands, the same material could easily be boring or overly technical. They found the right balance of…

The Web Has No Design Standards

A reader recently complained to me about the hyperlinks on this blog. The reader thought the links were too hard to distinguish from the rest of the text. And the reader s right. The Swedish Greys desktop theme that I thought looked cool eight years ago, while attractive in an aesthetic sense (to me at least), is not the most usable or accessible. I ll be looking for another theme. I was able to…

Classic Computer Science Problems in Java is Published

I am pleased to announce that my fourth book, Classic Computer Science Problems in Java , has been published. It is now available for purchase from the publisher s website . As Manning s deal of the day, the book is available today (January 5, 2021) for 50% off. Classic Computer Science Problems in Java is a continuation of the Classic Computer Science Problems series, with previous incarnations…

Book Review: The Presentation Secrets of Steve Jobs

I give a lot of presentations. As a college instructor, I present at least once every week, and usually multiple times. I ve also presented in business contexts and to general audiences. The Presentation Secrets of Steve Jobs: How to Be Insanely Great in Front of Any Audience by Carmine Gallo caused me to rethink how I m delivering my content. I had seen every Steve Jobs video available online,…

Book Review: Edison by Edmund Morris

Thomas Alva Edison is almost inarguably the greatest inventor of all time. The first device for recording and playing back sound, the first large scale power distribution system, the first practical light bulb, and the first commercially successful video recording and playback device were just a few of his numerous inventions. His inventions span the gamut from mining, to electricity, to…

Book Review - No Rules Rules: Netflix and the Culture of Reinvention

No Rules Rules: Netflix and the Culture of Reinvention is not a history of Netflix. It s an extended account of the corporate values that have resulted in Netflix s success as told by its cofounder/CEO Reed Hastings and accomplished business writer & academic Erin Meyer. This well written and clearly explained book offers insight into managing a creative company using non-traditional management…

On Taking Criticism

I am what I would call a non-famous public person. What do I mean by that? I mean that I have jobs where people publicly review my work. As a college instructor, I receive student reviews. Some of them get read internally at our school, and some of them get posted publicy. And they re attached to my name. They re not some product where people might just know my company or my brand. They know me ,…

Book Review: Let It Go by Stephanie Shirley

A child refugee builds the first wholly female software company, putting feminism into practice, and goes on to become one of the most noted philanthropists in her country. It s a story fit for Hollywood. Stephanie Shirley tells it with gusto, raw honesty, and compelling writing in her autobiography, Let It Go . As a half-Jewish child during the beginning of World War 2, Shirley was saved from the…

Book Review: Blood, Sweat, and Pixels

Blood, Sweat, and Pixels: The Triumphant, Turbulent Stories Behind How Video Games Are Made by Jason Schreier is a compilation of vignettes about the development of ten different video games. Many of the games are RPGs, and most of them are produced by large studios. Despite the many different accounts, there is a real lack of diversity in the stories. Almost all of the stories deal with the same…

Announcing Classic Computer Science Problems in Java

I am pleased to announce the availability of my fourth book, Classic Computer Science Problems in Java . You can now purchase early access to the book from Manning . Use promo code ccspkopec for 40% off. This is the third book in the Classic Computer Science Problems series, following Classic Computer Science Problems in Swift and Classic Computer Science Problems in Python . You can find out more…

Updating the Declaration of Independence

The Declaration of Independence is considered to be one of the most important documents in human history. Not only was it the seminal document in the political formation of the United States, it also was arguably the first time that a nation was expressly formulated with an understanding of the essential nature of human rights, despite not living up to it. It inspired many more rebellions against…

Building a Local Newsletter

One year ago, I launched BTV Daily , a daily email newsletter that delivers news, events, top social media posts, and other items of local interest to subscribers in the Burlington, Vermont area. The newsletter is largely automated, although I write a short daily blurb in a section called “Dave s Corner.” BTV Daily is a hobby, but one that I take quite seriously because it provides real value to…

Book Review: Showstopper! The Breakneck Race to Create Windows NT and the Next Generation at Microsoft

I enjoy books about tech history and business. I also enjoy biographies. So, Showstopper!: The Breakneck Race to Create Windows NT and the Next Generation at Microsoft by G. Pascal Zachary was a perfect fit for me. It has a compelling software business narrative, backed up by significant author access to the major players, and features non-stop action throughout most of the book. Showstopper ,…

One Year of Classic Computer Science Problems in Python

Approximately one year ago today, my most recent book came out, Classic Computer Science Problems in Python. It is the second book in the Classic Computer Science Problems series . You can purchase it on Amazon or through the publisher s website . It has been an amazing year for the book. I had the good fortune to be on several podcasts to promote the book. I really appreciate all of the podcast…