HNHacker News
TopNewBestAskShowJobs

hamdouni

308 karma · joined February 3, 2012

Human from planet earth. Neutral good. I code in my dreams.

Blog: https://barim.us Mastodon: @CodeCadim

submissionscomments
hamdouni··on Suits ignored IT's warnings, so the tech team went for the neck
Reading some comments, like 'this is wrong because your job is to respect hierarchy decisions', reminds me how corporate still are military minded...
hamdouni··on Fourteen Years of Go
Getting things done with Go, effectively since then. That does not mean you can't do it with other languages, just that it works well for my business.
hamdouni··on Nature: Programming language to experience the joy of programming
Nice to see another language with different approaches... I will check it as it is always interesting to challenge its knowledge
hamdouni··on The Compact Calendar 2023-2024
The Google Spreedsheets version : https://docs.google.com/spreadsheets/d/1m1IWh6Mmli8K20DdH2wb...
hamdouni··on Compile-time safety for enumerations in Go
It's the game of the mouse and the cat :-D We can change the package color like this :

  package color

  type Color interface {
    void()
  }

  type color struct {
    v string
  }

  func (c color) void() {}
  func (c color) String() string {
    return c.v
  }

  var (
    Red   color = color{"red"}
    Green color = color{"green"}
    Blue  color = color{"blue"}
  )
hamdouni··on Ask HN: Is Svelte a good choice for large-scale apps?
I do not agree with other comments : I'm happily using Svelte in a very specific webapp with a lot of pages : forms, validation and datagrids with complex search queries. I use zero external UI components : if something missing, I can build it in Svelte quickly. It's simple, predictable and ... just works.
hamdouni··on Ask HN: What would you use to build a mostly CRUD back end today?
For every type of projects I'm involved, I choose Go as the backend and put maximum of business rules there to help me manage changes. Go standard library is sufficient and robust for many (all) cases I faced : http handlers, templates, concurrency...

If a web frontend is needed, I'll take svelte (not svelte kit) to code independente components that talk to the backend. I'll code there only interface logic (no control, no calculation, etc...)

hamdouni··on Ask HN: How do you make time for side projects and Leetcode grinding
50-60 hours weeks seems too much, even if it is semi-regularly, to have a side project. If you can "cut" 2-3 hours a week from your job, it helps to make space for some tinkering.

If you can, get up earlier every morning, before everybody wake up in the house. You must be very motivated if you are not a morning guy.

Other solution is to have a fixed schedule, like having a meeting with yourself, with a "not disturb" agreement with your family (very difficult with young kids)

hamdouni··on Ask HN: Alternatives to Google Analytics?
https://matomo.org/
hamdouni··on Switching from Chrome to Firefox
This part makes me smile :

  I am not a tab hoarder, I almost never have more than **15** of them open at the same time.
hamdouni··on Europa the Tech Third World
I did not observe the effects you are describing, on the contrary.

Where can I read more about those affirmations ?

hamdouni··on Europa the Tech Third World
Regulation/taxes has 2 effects : as you said it restrains economic growth but it also maintains a minimum 'social' level.
hamdouni··on Radical Simplicity
Totally agree on the observation (tendancy to accumulate shiny new tools) and 100% on the radical solution of choosing fewer and boring tech...
hamdouni··on Kernighan and Pike were right: Do one thing, and do it well
Two things come in mind after reading this:

There is no contradiction between monolith and DOTADIW. The code unit is the function, so each function does one thing and does it well.

I don't get why microservices is the opposite of large code base : having the code splitted in different files or in different repo, changes nothing about the sum of all lines of code, no ?

hamdouni··on Stopping at 90%
It's more like Pareto 80/20 than 90/10. Maybe 50/50 as the rest to be done is out of my league.

Half done is what I'll think when coding is finished.

hamdouni··on Walter Bright - Programming Language Ideas That Work and Don't Work [video]
You can avoid this by using :

  if err := DoFoo(); err != nil { ...
The 'err' variable will be local to the 'if' so you can write also :

  if err := DoBar(); err != nil { ...
It is also nice to write it in one line :-)
hamdouni··on Life After Coding: Becoming a Mentor
"... your code is technically correct. But let’s consider its performance."

Drop the "but" and you'll engage even more with your mentee.

It's like saying that considering performance is a natural thing to do after writing a correct code, instead of the opposition that the word 'but' introduces.

Dropping the 'but' is a powerful skill !

hamdouni··on Ask HN: What is the most enlightening concept that changed how you program?
Maybe. Or maybe it is not obvious with a small example. Not sure about the anti-pattern, but I'm sure an anti-conventional coder ;-)
hamdouni··on Ask HN: What is the most enlightening concept that changed how you program?
Avoid deep nesting by testing error case first and exiting/returning immediately.

Instead of :

  If foo then
    bar
  Else
    baz
  Endif
Now I write:

  If foo then
    bar
    return
  Endif
  baz
Exit early makes the code easier to read and understand
hamdouni··on Show HN: Writedown - Open Source Markdown Diary
Good job !

Glad to see yet another tools in this overcrowded field. It confirms my choice to never use one and stick to a text editor like neovim : key M-J to open a daily file, type in what ever I want and abuse using search and grep via telescope to navigate.

Flat files are easy to sync and mine follow me since 2013.

hamdouni··on Mistakes to avoid to build a better 1-person business
TLDR; avoid big consumer market, target small b2b market
hamdouni··on Vint Cerf’s career advice for engineers
What a nice bubble to live in ! Boss thankful to be corrected by subordinate, smart people around you happy to help and retired top level exec driving limos.
hamdouni··on The Wrong Abstraction (2016)
In all the article, no reference to the business those abstractions or duplications are made for. I mean the way to decide if it is a "good duplication" is to ask ourself if it is a coincidence that it is the same code: 2 business rules having the same implementation does not mean it is a duplication.
hamdouni··on This time, it feels different
Rich people benefit from poor people too
hamdouni··on He wrote a book on a rare subject. Then a ChatGPT replica appeared on Amazon
Yes, way down to the making of the keyboard used to type it. 100% organic ;-)
hamdouni··on Ask HN: Resources for older developers?
What ever is the age, nobody wants to work with a rude and dismissive person.
hamdouni··on Google Blocked our open source project as Deceptive
Report it as "non phishing". Hope it helps.
hamdouni··on Ask HN: I've run Linux for 13 years. Is it time to switch to a Mac?
I recommend to stick with Linux if you want to stay a learner. Linux forces you to keep up and adapt. If you choose the confort of an obscure black box that do all for you, then you'll loose this. Is it bad to let go this habit to always learn ? I think so.

I'm sure people would say this cognitive burden is not useful and freeing your mind from it will let you get more valuable knowledge. But tinkering with your computer is an underestimate skill.

hamdouni··on How repositioning a product allows you to 8x its price
If the client doesn't care to double the cost to double the leads, why not double the ads ?
hamdouni··on We achieved a 6-fold increase in Podman startup speed
Nice to see improvements in podman startup and how the team achieve it...

Constraints (car env) drive creativity !

← PreviousPage 4 of 7Next →