frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

France's homegrown open source online office suite

https://github.com/suitenumerique
292•nar001•2h ago•145 comments

British drivers over 70 to face eye tests every three years

https://www.bbc.com/news/articles/c205nxy0p31o
51•bookofjoe•37m ago•25 comments

Start all of your commands with a comma (2009)

https://rhodesmill.org/brandon/2009/commands-with-comma/
391•theblazehen•2d ago•141 comments

Hoot: Scheme on WebAssembly

https://www.spritely.institute/hoot/
70•AlexeyBrin•4h ago•14 comments

First Proof

https://arxiv.org/abs/2602.05192
20•samasblack•1h ago•14 comments

OpenCiv3: Open-source, cross-platform reimagining of Civilization III

https://openciv3.org/
760•klaussilveira•18h ago•236 comments

Reinforcement Learning from Human Feedback

https://arxiv.org/abs/2504.12501
45•onurkanbkrc•3h ago•2 comments

The Waymo World Model

https://waymo.com/blog/2026/02/the-waymo-world-model-a-new-frontier-for-autonomous-driving-simula...
1013•xnx•1d ago•574 comments

Coding agents have replaced every framework I used

https://blog.alaindichiappari.dev/p/software-engineering-is-back
127•alainrk•3h ago•141 comments

Stories from 25 Years of Software Development

https://susam.net/twenty-five-years-of-computing.html
16•vinhnx•1h ago•1 comments

Vocal Guide – belt sing without killing yourself

https://jesperordrup.github.io/vocal-guide/
148•jesperordrup•8h ago•56 comments

Google staff call for firm to cut ties with ICE

https://www.bbc.com/news/articles/cvgjg98vmzjo
68•tartoran•1h ago•10 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

https://arcadeblogger.com/2026/02/02/unseen-footage-of-atari-battlezone-cabinet-production/
96•videotopia•4d ago•24 comments

A Fresh Look at IBM 3270 Information Display System

https://www.rs-online.com/designspark/a-fresh-look-at-ibm-3270-information-display-system
10•rbanffy•3d ago•0 comments

Making geo joins faster with H3 indexes

https://floedb.ai/blog/how-we-made-geo-joins-400-faster-with-h3-indexes
149•matheusalmeida•2d ago•40 comments

Ga68, a GNU Algol 68 Compiler

https://fosdem.org/2026/schedule/event/PEXRTN-ga68-intro/
30•matt_d•4d ago•8 comments

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
256•isitcontent•19h ago•27 comments

Monty: A minimal, secure Python interpreter written in Rust for use by AI

https://github.com/pydantic/monty
267•dmpetrov•19h ago•144 comments

Hackers (1995) Animated Experience

https://hackers-1995.vercel.app/
536•todsacerdoti•1d ago•261 comments

Sheldon Brown's Bicycle Technical Info

https://www.sheldonbrown.com/
413•ostacke•1d ago•105 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
355•vecti•21h ago•161 comments

What Is Ruliology?

https://writings.stephenwolfram.com/2026/01/what-is-ruliology/
59•helloplanets•4d ago•58 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
329•eljojo•21h ago•199 comments

An Update on Heroku

https://www.heroku.com/blog/an-update-on-heroku/
453•lstoll•1d ago•297 comments

Microsoft open-sources LiteBox, a security-focused library OS

https://github.com/microsoft/litebox
368•aktau•1d ago•192 comments

Show HN: Kappal – CLI to Run Docker Compose YML on Kubernetes for Local Dev

https://github.com/sandys/kappal
12•sandGorgon•2d ago•3 comments

Cross-Region MSK Replication: K2K vs. MirrorMaker2

https://medium.com/lensesio/cross-region-msk-replication-a-comprehensive-performance-comparison-o...
7•andmarios•4d ago•1 comments

Female Asian Elephant Calf Born at the Smithsonian National Zoo

https://www.si.edu/newsdesk/releases/female-asian-elephant-calf-born-smithsonians-national-zoo-an...
58•gmays•13h ago•23 comments

How to effectively write quality code with AI

https://heidenstedt.org/posts/2026/how-to-effectively-write-quality-code-with-ai/
298•i5heu•21h ago•253 comments

Dark Alley Mathematics

https://blog.szczepan.org/blog/three-points/
107•quibono•5d ago•34 comments
Open in hackernews

Self-imposed ban – a lightweight bash script to block commands

https://github.com/alex-moon/ban
34•alex-moon•7mo ago

Comments

samrus•6mo ago
Why? I use the terminal but i have no idea how cli commands would get so distracting you have to parental lock yourself out of them like its entertainment or social media
haiku2077•6mo ago
On window managers like i3 or sway, you launch programs (including GUI applications) via their shell command in an autocompleting micro-menu.
hk1337•6mo ago
Ban yourself from vim so you don't get stuck in it for hours?
kjkjadksj•6mo ago
Some people get distracted by work and not social media during their down time
ABU_ALLIL_123•6mo ago
Lvoe
accoil•6mo ago
I have a small post command hook in fish that looks at arg0 and prints out any associated reminder for the program I just used. I use it to remind myself that I'm testing an alternative (e.g I used grep today, and it printed out a reminder that I have rg installed). I guess it could be used as a harsher version of that.
jmholla•6mo ago
Why have a dependency on Zenity instead of displaying the message in the terminal? Seems weirdly limiting to have a GUI dependency for a terminal application thus making this unusable on headless systems. I think you could make it optional and use STDERR if Zenity's not around.
yjftsjthsd-h•6mo ago
I assume it's meant to work for programs that aren't being launched from the terminal
xunil2ycom•6mo ago
My question exactly, minus the optional part. If it's a command-line tool, it should not require any GUI elements at all.
ramses0•6mo ago
So, I love that the README is nearly as long as the code itself.

Shorthand:

    PATH=$HOME/.bans:$PATH  # (prefix path with "banned" cmd-dir)
    printf "echo 'bad!'" > "$HOME/bans/some-cmd"  # (make `some-cmd` run `echo 'bad!'`)
...and then some goodies around tracking, reasons, etc... some niftiness around "auto-expiring" the banned command (self-deletes the "bad" shell script that's shadowing the actual command usage).

As to the sibling "why?" ... it's trivial to circumvent: `ban ls "I run it too much..."`, `/bin/ls` is still unaffected, `rm ~/.bans/ls`, etc... but I _do_ like the pause to allow a return to rationality, eg: "Hey, maybe I do run `ls` too much..." and then deciding how to proceed.

It'd probably be nicer if it did something like `(Bad) Chrome.app/*` on OSX, but as an exercise in shell gymnastics, I'm kindof all here for it! :-)

samrus•6mo ago
> "Hey, maybe I do run `ls` too much..."

This cant be a though someone has ever had. Your telling me people are getting addicted to the ls command?

lupusreal•6mo ago
I'm addicted to sl. I love those trains.
z_open•6mo ago
I am. Every time I cd I ls even though I know what's in there.
zamadatix•6mo ago
I think it's more an example of a "why did I just cd ls cd ls cd ls that directory tree instead of leveraging tab completion" type thing than "man, I gotta get over my ls addiction or I won't be able to provide for my family".

I've found myself doing similar hints to nudge more efficient-but-less-exercised things into my day to day usage. E.g. making /etc/crontab a comment to get more used to creating systemd timers instead. Otherwise I'd just do it without thinking.

zahlman•6mo ago
> why did I just cd ls cd ls cd ls that directory tree instead of leveraging tab completion

Sometimes I find myself repeatedly ls'ing even though I'm making good use of tab completion. There's something about seeing the names that helps with remembering what I was going to do.

hombre_fatal•6mo ago
This is why I like GUIs. Seeing the files that are modified in my git gui reminds me of what Im doing instead of running git status. And seeing all the available things I could do is more stimulating than having to keep coming up with the text commands to type.
johnisgood•6mo ago
For that I use Git Cola[1], it is quite nice.

[1] https://git-cola.github.io/

zahlman•6mo ago
Come to think of it, I would probably benefit from rate-limiting myself on `git status`.
zamadatix•6mo ago

  cd /etc/c<tab><tab>...
can list the names similar to

  cd /etc/<enter>ls c*<enter>cd c...
but there will always end up being times an actual ls is the right call, just not necessarily as ones default method.
max-privatevoid•6mo ago
Bad habits do happen. I forced myself out of `sudo su` and into `sudo -i` by configuring my sudo rule to allow any command except `su`.
ofalkaed•6mo ago
This popped up on HN last week: https://github.com/mieubrisse/cmdk I don't really get it but apparently some people really have issues with ls and cd and feel they use them too much.
skeptrune•6mo ago
Haha, this is fun
nikolayasdf123•6mo ago
kind of cool. like "App/Time Limits" in Apple
foxinsocks5•6mo ago
What if I ban rm too?
johnisgood•6mo ago
You will not be able to use the command. I am not sure if other scripts could, however. I have not checked the implementation.
msgodel•6mo ago
I wrote a similar piece of software but it just limits time spent on certain web sites per day.

It's amazing how much something so simple can change your life if you have a problem with that. I'd highly recommend everyone enable it. I think iOS has something like that built in too so you don't even need my stuff unless you're on eg Linux.

RS-232•6mo ago
> ban ban
teddyh•6mo ago
Frog put the cookies in a box. “There,” he said. “Now we will not any more cookies.”

“But we can open the box,” said Toad.

“That is true,” said Frog.

zahlman•6mo ago
Yes. It's still helpful.

The same arguments apply to, for example, leading-underscore names in Python code.

haiku2077•6mo ago
"That is true," replied a commenter. "But it has successfully worked for breaking my bad habits in the past."
nektro•6mo ago
wish the README showed an example of what trying to use a banned command looked like.

rather than this being useful to stop "distracting" commands i see this being useful in stopping agents from calling `rm` for example

nektro•6mo ago
oh i see, it installs a bash script in a PATH thats a higher priority than the real one.
autoexec•6mo ago
> i see this being useful in stopping agents from calling `rm` for example

I used to do that kind of thing a long time ago. MS-DOS wouldn't ask for confirmation when deleting files, so I'd use a hex editor to rename the del command, then create a batch file named del.bat that would ask if you really wanted to remove the file. Even had something like the recycle bin at one point to prevent accidental deletes.

You could even set up some very weak security by renaming commands like ls/dir and it could keep some casual snoops out of your system or prank/annoy someone else by replacing their commands to make them do funny things.

priyashpatil•6mo ago
What if I ban ban
SlightlyLeftPad•6mo ago
Yeah I’ve used this strategy simply to avoid accidents. If not for me, but also for others. On an old source control server, backed up of course, avoiding an errant “rm” or something else stupid can still save me hours of restore work, the outage and the RCA.
alex-moon•6mo ago
Woah thanks for all the comments everyone! To answer a recurring question: this is to prevent things from being called from bemenu (and its ilk) - definitely could have made that clearer in the README. Hopefully that clears up a lot of things.