Learn Blogging the Hard Way

Announcements and essays about the Learn Code the Hard Way project.


Very Deep Not Boring Beginner Projects

A list of projects that anyone with basic programming knowledge can do in any language, but have a lot of depth and aren't boring to do.

OpinionPublished Oct 1, 2024

C++ Is An Absolute Blast

Where I try to explain why I feel like C\+\+ is so much fun, and to correct some misinformation.

TechnologyPublished Oct 1, 2024

Just Use MSYS2 You Say?

Debunking idiots on HackerNews who think a total beginner can just 'Use MSYS2' on Windows.

TechnologyPublished Jul 16, 2024

Solving the Worst Problem in Programming Education: Windows

I've created a set of install scripts for Windows that helps people install many different programming languages using standard tools.

TechnologyPublished Jul 11, 2024

Minimum Educational C++

I go through various style guides and attempt to extract the minimum C++ someone can learn to be functional on many code bases, and in your own code.

OpinionPublished Jun 1, 2024

How Long Does it Take to Learn to Code?

My standard answer when people ask me how long it will take for them to become competent enough to get a job.

OpinionPublished Jun 1, 2024

Exploring the Replacement for C as an Educational Language

My thoughts so far on finding a replacement for C in teaching compiled languages and memory safety.

ResearchPublished Apr 20, 2024

How to Read Programmer Documentation

An excerpt from Learn Python the Hard Way, 5th Edition that explains how I analyze learn from projects with poor or no documentation (which is most of them).

PythonPublished July 29, 2023

The 5 Simple Rules to the Game of Code

An experimental idea to teach the basics of a Turing machine before teaching loops and branching. Feedback welcome.

PythonPublished July 29, 2023

Announcing Learn Python the Hard Way's Next Edition

Announcing the new version of Learn Python the Hard Way which will be entirely focused on Pre-Beginner Data Science and not web development.

AnnouncementPublished May 11, 2023

Ten Reasons Youtube's Streaming is Awful

I did a test of Youtube and its streaming has tons of problems. Here's 10 reasons why Youtube's streaming is mostly pointless when compared to Twitch. I'll use Twitch for streaming, then post to youtube.

JavaScriptReposted from
Learn JS the Hard Way

SPA vs. MPA, FIGHT!

Getting realistic about Single-Page vs. Multi-Page applications.

JavaScriptReposted from
Learn JS the Hard Way

How to Create Your Own npm init and Get Off npmjs.com

After struggling with npm init I figured out a way to avoid it entirely that ends up being easier.

JavaScriptReposted from
Learn JS the Hard Way

Stripe is Paypal circa 2010

After integrating both Stripe and Paypal I've come to the realization that they are nearly the same, including all the evil.

PaymentsReposted from
Learn JS the Hard Way

Equal Height Holy Grail Layout in Modern CSS

Cheap and easy ways to get paths out of your web server logs.

CSSReposted from
Learn JS the Hard Way

A Frontend Development Process

An excerpt from Learn JavaScript the Hard Way teaching a starter creative process for using HTML and CSS.

SampleReposted from
Learn JS the Hard Way

Process and Web Development

What would a traditional artistic process look like for a web page?

OpinionReposted from
Learn JS the Hard Way

NaN is Not a Math

A critique of the counter-claim that JavaScript's use of NaN errors is valid because it's 'math.'

EssayReposted from
Learn JS the Hard Way

Convoluted Team Code and Software Urban Planning

An idea about the irrational focus of developer technology on teams to the detriment of everyone else.

OpinionReposted from
Learn JS the Hard Way

No Tracking, Part 3

The result of my work to eliminate my own ability to track other people around the internet, and how that might end up working in practice.

AnnouncementReposted from
Learn JS the Hard Way

Your Side Projects are Your Future

How the prevailing view of side projects is a damaging perspective for early programmers.

OpinionReposted from
Learn JS the Hard Way

No Emails, Update 2

Thoughts on implementing a method for not storing email addresses while still allowing for password reset, Part 2.

TheoryReposted from
Learn JS the Hard Way

Getting Rid of Emails

Thoughts on implementing a method for not storing email addresses while still allowing for password reset.

TheoryReposted from
Learn JS the Hard Way

How To Ask for Help

A brief description of how to ask another programmer for help with your code.

OpinionReposted from
Learn JS the Hard Way