In the six months that have passed after the last USB-C article has been released, I have thought up a bunch of ways that these articles could have been improved. It’s, of course, normal to have such ...
Embedded developers often bemoan the fact that no programming language is ideal for their particular needs. In a way, this situation is unsurprising, because, although a great many developers are ...
The C language has been a programming staple for decades. Here’s how it stacks up against C++, Java, C#, Go, Rust, Python, and the newest kid on the block—Carbon. The C programming language has been ...
Does it ever make sense to declare a variable in C or C++ as both volatile (in other words, “ever-changing”) and const (“read-only”)? If so, why? And how should you combine volatile and const properly ...
Hardware abstraction layers (HALs) are an important layer to every embedded software application. A HAL allows a developer to abstract or decouple the hardware details from the application code.
Zig is a popular systems-oriented language that is serious about replacing C. Here's what you need to know about Zig. The Zig programming language continues its gradual advance into the world of ...
If you are a Pythonista or a data scientist, you’ve probably used Jupyter. If you haven’t, it is an interesting way to work with Python by placing it in a Markdown document in a web browser. Part ...