Haskell: The Bad Parts, part 2 (2020)
The second part of a blog post series on the parts of Haskell we should avoid using.
The latest blog posts to take off on Hacker News. 14,541 posts.
The second part of a blog post series on the parts of Haskell we should avoid using.
I fancied getting an eink screen to use for future projects. I bought a wee one with a raspberry pi "hat" attached. However, I realised later that I could maybe just re-purpose an old Amazon Kindle eb…
A review of Javascript performance. Part 1 - Techempower Rankings.
How to format blog content so it’ll last.
This is a description of the Common Lisp ecosystem, as of January, 2021, from the perspective of a user and contributor.The purpose of this article is both to give an overview of the ecosystem, and to help drive consolidation in each domain.Each application domain has recommendations for consolidating that part of the…
Audio on Unix is a little zoo, there are so many acronyms for projects and APIs that it's easy to get lost. Let's tackle that issue! Most articles are confusing because they either use audio technical jargon, or because they barely scratch the surface and leave people clueless. A little knowledge can be dangerous.
The Mediocre Programmer is a book about the journey of becoming a better programmer. But before we can become better programmers we have to pass through being mediocre programmers. Mediocre doesn't mean a bad programmer --- far from it. It means lacking skill. As beginners we start our journey full of fresh ideas of…
If you maintain an open-source project in the range of 10k-200k lines of code, I strongly encourage you to add an ARCHITECTURE document next to README and CONTRIBUTING. Before going into the details of why and how, I want to emphasize that this is not another docs are good, write more docs advice. I am pretty sloppy…
As was pointed out to us stable kernel maintainers last week, the overflow of the .y release number was going to happen soon, and our proposed …
Python is my favourite programming language. Since I discovered it in 2004, programming in Python became my favourite hobby. I've tried to l...
To answer this question, let me take you a few years back, when I worked with a small high tech startup. We were working on a pretty complex augmented reality system spanning all layers from low-level computer vision components to cross-platform mobile and web apps. Especially for the lower-level components, a good…
…same goes for option objects.
As someone who loves discussing Software Craftsmanship and best practices, Test Driven Development (TDD) is a bit of a sore spot for me. Let me start off by saying that I love TDD’s emphasis on tes…
Which means, that to test it, we need some data for recursive queries. This time I took directory listing of my /etc, and loaded it to db:
The functional programming analog of an object-oriented design pattern
Frost Ming's personal blog
Behind the beautiful imagery of the latest animated movie and the realistic environments of popular videogames lie some mysterious algorithms. Computer Graphics from Scratch aims to demystify these algorithms and shows you that computer graphics can be surprisingly simple.
Issue: March/April 2000 | PDF
Reading a blog post about what’s coming up in JDK 16 recently, I learned that one of the new features is support for Unix domain sockets (JEP 380). Before Java 16, you’d have to resort to 3rd party …
While this post is addressed to F# .NET developers, it introduces much wider concepts starting from hardware architecture to overall .NET runtime and JIT compiler optimizations. It shouldn't be a surprise - optimizing the application performance requires us to understand the relationships between our high level code…
TypeScript and JavaScript have steadily evolved over the last years, and some of the habits we built over the last decades have become obsolete. Some might never have been meaningful. Here's a list of 10 habits that we all should break.
Over the years, I’ve had the opportunity to work in architecture roles alongside experienced software/technical/solution architects. Through observing others and my own trial and error,...
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
If you ever wanted to learn about machine learning you could do worse than have Jason Gauci teach you. Jason has worked on YouTube recommendations. He was an early contributor to TensorFlow the open-source machine learning platform. His thesis work was cited by DeepMind. But what I find so fascinating with Jason is he…
F# is a language that will make you sleep better
I provide a deeper-dive on the tech stack I like to use in 2021. It is simple, easy to work with, and allows you to grow out of it when the time comes. Updated for 2021!