In technical interviews, there's one trait I hone in on. It's a litmus test for potential hires. Through careful dialogue and tailored questioning, I unravel this decisive factor. Curious?
Problem-solving is a universal skill, applicable in numerous scenarios, even when the context shifts from software to hardware. Today, I want to share a tale from my own experience, where I applied problem-solving strategies, typically used in software debugging, to an entirely different realm - a mechanical keyboard. My trusty
What truly lies at the heart of software engineering? Is it the lines of code we meticulously craft, or is it something more profound? Having navigated through various programming languages like F#, Clojure, and TypeScript over two decades, I've uncovered that the essence of software engineering lies not within the
Discover surprising probability insights from a Wordle bot competition, where a risky optimization strategy led to unexpected lessons.
In this post, we optimize our brute force search for solutions to n-queens problems for a few small boards.
In this post, we take the brute force and other abstractions we created earlier, to solve the n-queens problem for a relatively small n.
Earlier, we added a few abstractions to brute-force search. Now, we add yet another abstraction and unlock a wide range of possibilities.
In part 2, we test our initial abstraction with a few additional problems. In the process, we figure out a few more useful abstractions.
Writing simple but powerful abstractions is a necessary skill in software. We start with a simple abstraction that solves a few problems.
Recently, I’ve been fiddling with clojure and having some fun. It has some pretty powerful abstractions that allow neatly expressing ideas…