Hossein Naderi

Hossein Naderi

code & math

    • About
    • Archive
    • Links
    • Problemset
    • Thesis
  • April 11, 2025

    Fooling Ourselves

    For a long time, people have quoted Martin Fowler: “Any fool can write code that a computer can understand. Good programmers write code that humans can understand.” But now, computers can write code that’s more readable than what most programmers produce! Update: I’ll be joining Google soon! More on that later.

    uncategorized
    > Read more: Fooling Ourselves
  • December 21, 2024

    Welcome To The New World

    Things are getting old so quickly that humanity has never seen such fast change in history. When I was a kid, my father got me a PC with a flat desktop case. On it was a label that said, “Never Obsolete.” Back then, the idea behind that computer was groundbreaking: it was designed so you’d…

    software
    > Read more: Welcome To The New World
  • December 19, 2024

    About Today

    I’m writing this post for myself and for people who read it in 20 years and wonder about my thoughts (feelings?) in 2024. After COVID, the IT job market crashed. Investors were not investing in tech startups anymore, which meant companies didn’t have cash. The first thing companies do when they don’t have cash is…

    uncategorized, writing
    > Read more: About Today
  • November 21, 2024

    List of Good Distributed Systems Blogs

    Here is a list of blogs that I find interesting.

    uncategorized
    > Read more: List of Good Distributed Systems Blogs
  • October 31, 2024

    Does it really matter?

    I’m not a fan of Gradle, but I like it much more than Maven. I was browsing the internet to understand why people still use Maven, and I came across a Reddit post. It made me laugh and then think, “Does it really matter?” So often, we spend a lot of time deciding or comparing…

    draft
    > Read more: Does it really matter?
  • September 23, 2024

    Go: What is rune?

    One of the new concepts developers encounter when working with strings in Go is the rune. As shown in the code below, s[0] is a byte, and its ASCII code is 72. However, the code below results in a compilation error, stating that ch is of type rune, not byte. If you examine Go’s internal…

    coding, go
    > Read more: Go: What is rune?
  • September 23, 2024

    Go: cannot assign to struct field in map

    One of the surprising things beginners realize about Go is that maps are passed by reference. This means if a map is modified in the function it was passed to, the caller will also see the changes. However, if m is a map[int]node, m[0] is not a reference to a node but the value stored…

    coding, go
    > Read more: Go: cannot assign to struct field in map
  • August 30, 2024

    Go DOES NOT have references!

    As a beginner, I found it a bit confusing to work with slices in Go. Even now, I sometimes forget this. When reviewing code, I often see that colleagues pass pointers to slices in an attempt to optimize performance. Or people might be hesitant to slice a slice because they’re concerned it could affect performance.…

    go
    > Read more: Go DOES NOT have references!
  • June 28, 2024

    Practicing Coding Problems with Go (I)

    It’s been two weeks since I started practicing coding problems to get ready for technical interviews. I’ve been solving questions like C and D on Codeforces. I have chosen Go to practice as well. So far, I’ve had a great experience with Go; I believe Go is even more intuitive than Python, at least for…

    draft, uncategorized
    > Read more: Practicing Coding Problems with Go (I)
  • June 28, 2024

    Go Docs are good, but not enough!

    I believe programming language standard library documentation should mention the time and space complexity of every operation. Currently, Go docs only explain how to use data structures, but nothing more. This is unacceptable. I need to know how much time it takes to initialize an array of size n without reading the source code. One…

    coding, go
    > Read more: Go Docs are good, but not enough!
1 2 3
Next Page