Hacker News
points by chipotle_coyote 15 hours ago | 0 comments
To promote this to a top-level comment, because I think it's important context: nothing in the README file says the point is to be "beginner-friendly". As far as I can tell, that's something that Hacker News or whoever submitted this used as a description. Neither the word "beginner" nor the word "friendly" appear in the README; its goal is to "be the smallest functional Emacs in less than 2000 lines of C."

I think somebody incorrectly described Atto as comparable to nano/pico, and these comments are dragging it because it's not something that it was never intended as.

[–] luke8086 14 hours ago
OP here, I just paraphrased the announcement:

> To ease the transition for new users, #NetBSD -current now includes an alternative editor to vi(1) and xedit(1) in its base system, atto(1). https://man.netbsd.org/atto.1

> It is a modeless screen-based editor similar to nano, pico, xedit, or emacs. It is only 48 kilobytes, making it suitable for inclusion in the rescue system.

I think it's fair to call it beginner-friendly, in context of BSD and vi, but maybe indeed it shouldn't be a part of the title.

[–] SoftTalker 14 hours ago
I can't imagine a beginner really knowing what is going on in nano.

Every time I get launched into nano/pico on a new system I find it very confusing. To use the help menu you need to know that ^-X means Ctrl-X and M-X means Alt-X. Why "Write Out" and not "Save"? And when I "Write Out" I'm offered DOS format or Mac format, and options to Append or Prepend (not even sure what that does).

It's completely bizarre if you're used to something like Notepad or Word.

[–] lakeviewterrace 9 hours ago
That's because no one knows their history anymore.

Nano was a (bloated as usual) GNU clone of Pico. Its only reason for existing is GPL freedumb nonsense that was popular back in the day. It copied the UX of Pico.

Pico was not developed as a standalone editor; rather it was the builtin editor for the Pine email reader. Hence the weird keybindings — it followed the UX of the email client.

Pico stood for PIne COmposer.

It became a simple universal editor because vi and emacs sucked and for some reason no one felt it necessary to invent something better.

Users repurposed the editor from a mail client because it was already there. Nearly every university Sun box in the 90s had Pine installed for reading email.

It was written by the same guy that invented IMAP at the University of Washington.

Can't wait for the Rust clone of Nano then the cycle will be complete.

[–] oblio 7 hours ago
Nobody learns to use an editor - or for that matter, learns anything - by figuring out a history lecture first.

People that do that are weirdos, and yes, I'm one. But I don't expect regular people to learn that way.

> Its only reason for existing is GPL freedumb nonsense that was popular back in the day.

These days we need more GPL, not less. We need AGPL and apparently, soon, AntiLLM-GPL.

[–] lakeviewterrace 3 hours ago
I should clarify.

The reason Pico became popular — if you went to university in the 90s — is normal people, not just turbonerds, needed the occasional ability to edit simple text files on Unix hosts.

They were already using Pine to read their email, so why not use the editor that used the same keybindings they already knew for sending mail?

[–] anthk 8 hours ago
Joe editor dates back to 1991 and it came with jpico, jmacs and jstar as pico, emacs and wordstar clones as a hard link.
[–] basscomm 12 hours ago
> I can't imagine a beginner really knowing what is going on in nano.

When you launch nano without a file loaded, there's a notice at the bottom of the screen: [ Welcome to nano. For basic help, type Ctrl+G. ]

Press 'Ctrl + G' and it takes you to a help page that says, among other things, "Shortcuts are written as follows: Control-key sequences are notated with a '^' and can be entered either by using the Ctrl key or pressing the Esc key twice. Meta-key sequences are notated with 'M-' and can be entered using either the Alt, Cmd, or Esc key, depending on your keyboard setup."

You can't force a user to read docs or learn how the programs they're using work, but this is a reasonable attempt.

[–] setopt 9 hours ago
Just FYI, they did try to improve that a bit. Release notes for nano v8.0:

> Command-line option --modernbindings (-/) makes ^Q quit, ^X cut, ^C copy, ^V paste, ^Z undo, ^Y redo, ^O open a file, ^W write a file, ^R replace, ^G find again, ^D find again backwards, ^A set the mark, ^T jump to a line, ^P show the position, and ^E execute.

> Above modern bindings are activated also when the name of nano's executable (or a symlink to it) starts with the letter "e".

So if you symlink nano to /usr/bin/editor and make it the default $EDITOR, then you now do get CUA-like bindings by default.

There’s still a lot of more things they perhaps should enable by default. I don’t know whether you’ve looked into .nanorc, but you can turn on stuff like syntax highlighting and line numbers, it’s just all off by default.

I don’t actually use nano myself, but I was really taken aback by how featureful it is when you look closely. Not st the level of Vim or Emacs, but more than expected. I basically stumbled upon someone on Reddit /r/unixporn that "riced" their nanorc and it piqued my curiosity.

For most people though, I think micro is a better fit than nano if you want a terminal CUA-style editor.

[–] echoangle 6 hours ago
> Above modern bindings are activated also when the name of nano's executable (or a symlink to it) starts with the letter "e".

Maybe stupid question but do you then need to run nano through the symlink to get the new bindings or is the existence of a symlink enough? Wouldn’t nano have to check every directory for a symlink to itself to do that? There’s no way to get all symlinks for a specific file without checking the whole file system, right?

[–] setopt 5 hours ago
I believe you have to run it through the symlink, and that it just checks argv[0] to decide. It’s the same Vim does, FWIW: if you run it via a symlink called `vi` it enters a vi-compatible mode, and if you run it as `evim` it suddenly acts as a non-modal text editor, and as `vimdiff` it enters the diff mode.
[–] mmmlinux 12 hours ago
I use nano the same way I use notepad. I open a file, edit it, hit close, and agree to save when it complains to me.
[–] forgotpwd16 12 hours ago
>Why "Write Out" and not "Save"?

At least "Uncut" has been renamed to "Paste".

[–] jpablo 10 hours ago
First time I opened vi I had to power cycle the computer to get out of it. If nano/pico is not user friendly, vi is user user antagonistic.
[–] SoftTalker 4 hours ago
Oh I absolutely agree, none of vi, emacs, nano/pico make any sense to a beginner. vi probably the worst because of the modes. But I my point was just that I don't think nano is particulary beginner-friendly. Maybe the least worst though.
[–] dang 11 hours ago
Ok, we've removed beginner-friendliness from the title above. It's still interesting!
[–] drummojg 15 hours ago
I would never drag pico. I wrote software that's been packaged in Linux distros in pico. And I lost the urge to be The Smartest Guy In The [Room/Mailing List/Forum] a long, long time ago.
[–] Natfan 15 hours ago
what's really the point in being the smartest person in the room? you'll never learn anything!
[–] majorchord 12 hours ago
Not only that, but you constantly feel like Idiocracy is playing out in real time, and that everyone else around you is closer to monkeys than a rational empathetic human... it's exhausting, lonely and debilitating. Then you realize there are people much smarter than you, and you wonder how they must feel.

Reminds me of that House MD episode where the delivery driver was a secret genius who was abusing DXM to dumb himself down just to feel happy.

"For with much wisdom comes much sorrow; the more knowledge, the more grief."

[–] metchio 14 hours ago
sometimes humans do irrational things / have illogical behaviour just to glorify their own ego. it happens also to the very best sometimes
[–] MonkeyClub 14 hours ago
Yep, whenever you find yourself being the smartest person in the room, you need to find yourself a smarter room.
[–] vinceguidry 14 hours ago
Or just learn how to teach.
[–] aleph_minus_one 13 hours ago
> Or just learn how to teach.

Most people don't want to learn (in particular not learn sufficiently hard to really improve).

[–] lioeters 12 hours ago
True, many a junior dev I've had to work with was convinced they're the smartest person in the room, good at what they do but so full of themselves they're unable to adapt, acquire new knowledge or consider new paradigms.

Learning requires some amount of humbleness, to accept you don't know everything.

[–] vinceguidry 12 hours ago
Motivating students to want to learn isn't rocket science, just a rare skill to see.
[–] aleph_minus_one 5 hours ago
If it is not rocket science, how does it work?
[–] marssaxman 9 hours ago
I used pico or nano as my everyday unix coding editor for something like fifteen years, starting in the late '90s. It was just fine. I couldn't stand vi and didn't see the point of emacs; I type faster than I think, so I never found that text-editing was enough of a bottleneck to make sophisticated automation worth the effort.

I only stopped using pico/nano after writing my own editor, which blatantly stole pico's interface design.

[–] zimpenfish 11 hours ago
> nothing in the README file says the point is to be "beginner-friendly"

"for users who are not accustomed to text editors with separate insertion and editing modes"[0] could be construed as "beginner-friendly" (albeit with some squinting, I'd concede.)

[0] https://man.netbsd.org/atto.1

[–] insanetake 15 hours ago
From the announcement

> To ease the transition for new users...

So I would consider it for beginners ("new users") and friendly ("to ease").

[–] shevy-java 12 hours ago
Well nano pico atto ... the name makes it comparable. Why would you expect people to not draw that connection?

I think the main take-away is that vi/vim is too complicated for many folks. I use nano a lot on the commandline. For quick editing it is so much more convenient than vim.