Live data from Hacker News

9front "This Was Supposed to Be Fun" Released

9front.org

41–50 of 52 posts

Re: 9front "This Was Supposed to Be Fun" Released

#41
post #40
post #31

Earlier quoted context omitted.

When did you get the idea that we're trying to please anyone? The type of people to scream about "wokerism" are not the folks we want in our community, conversely the people who scream that we're not sufficiently sanitized for them to put on their corporate website are also not who we want. The system is working as designed, we take no pain in 9front not being for you.

Why 9front humor (and indifference) attracts so much confusion and hate on HN I'll never understand

[deleted]

Re: 9front "This Was Supposed to Be Fun" Released

#42
post #40
post #31

Earlier quoted context omitted.

When did you get the idea that we're trying to please anyone? The type of people to scream about "wokerism" are not the folks we want in our community, conversely the people who scream that we're not sufficiently sanitized for them to put on their corporate website are also not who we want. The system is working as designed, we take no pain in 9front not being for you.

Why 9front humor (and indifference) attracts so much confusion and hate on HN I'll never understand

[deleted]

Re: 9front "This Was Supposed to Be Fun" Released

#43
post #22
post #10

Explanation of the codename, from the artist who did the "cover art" for an earlier version and who works on 9front: https://analognowhere.com/_/tcrxsm/

"Stairway to Anschluss" I see the 9front guys still love flirting with "nazi for laughs and giggles" esthetic...

Their front page is literally covered with anti fascist stuff so I think this criticism is probably misplaced

Re: 9front "This Was Supposed to Be Fun" Released

#44
post #2

What is it? Some hobby operating system or what?

I daily drive 9front. The historical emergence answers here are fine as far as they go, but they're a bit like saying that Linux is an OS developed by Linus to help him learn x86. IMO 9front is an exposé of what an OS can look like when it's written for and by hackers with a focus on simplicity. The YouTube channel adventuresin9[0] parades some nice examples of what real world usage looks like. For example, since eve…

[deleted]

Re: 9front "This Was Supposed to Be Fun" Released

#45
post #2

What is it? Some hobby operating system or what?

I daily drive 9front. The historical emergence answers here are fine as far as they go, but they're a bit like saying that Linux is an OS developed by Linus to help him learn x86. IMO 9front is an exposé of what an OS can look like when it's written for and by hackers with a focus on simplicity. The YouTube channel adventuresin9[0] parades some nice examples of what real world usage looks like. For example, since eve…

C99 added designated initializers and compound literals, and C11 added anonymous structs and unions of the kind you showed above. These are 3 of the biggest features Plan 9 added to C, and they were adopted relatively quickly. But there's another type of anonymous struct/union Plan 9 added; using a bare tag name, e.g. `struct foo { union bar; };` to implicitly define the members. And Plan 9 C will also automagically coerce (and adjust the pointer offset) a struct reference to a reference to a typed anonymous member when calling a function that takes the latter. And now that I think about it, this seems like the obvious predecessor to Go's duck typing.

Re: 9front "This Was Supposed to Be Fun" Released

#47

Earlier quoted context omitted.

Plan 9 is mostly Rob Pikes idea and did not involve Ritchie heavily. https://doc.cat-v.org/plan_9/1st_edition/designing_plan_9 Recently, Pike commented that he designed Plan 9 so he could build the windowing system he wanted. (edit: oops, link) https://9fans.topicbox.com/groups/9fans/T4fec171fec7e3845-M2...

So that would be 'rio'?[0] I can find screenshots but haven't found much that explains how or why it's different -- what I've read explains it's not how it looks so much as how it functions, eg, each process genuinely own a console or mouse rather than getting events from the OS as you might in, say, Windows. I can't tell if I am understanding this correctly, of course. I do know that in Plan9, 'everything is a file'…

> I do know that in Plan9, 'everything is a file' is literally correct.

Almost correct. There are also shared memory segments via segment(3). You segattach(2) to a segment from a user space process then read/write that memory as a file from a user space process [1]. Drivers can expose memory mapped IO (e.g. PCI cards) using a physical segment and segattach to that from a user space process. The vga(8) program does this to do low level register tweaking. Sometimes, a file server is either too tedious, or not the right abstraction. It also enables memory sharing between processes and user space programs. You can share it over the network with rexport(1) but it gets weird (networked PCI/RAM out of the box...)

> So owning a mouse would mean reading from /path/to/mouse. But what I've also read is that every process can do so believing they own it - it's theirs exclusively?

Rio and other window managers like Lola, multiplex it [2]. This is how each window only sees the mouse when the cursor is within its border window. If I open two windows and run 'cat /dev/mouse' in each window then move the mouse around, cat only outputs data when the mouse is over the window it's running in.

1. https://man.9front.org/3/segment 2. https://man.9front.org/3/mouse (2nd to last paragraph)

Re: 9front "This Was Supposed to Be Fun" Released

#48
post #17

Earlier quoted context omitted.

Plan 9 is mostly Rob Pikes idea and did not involve Ritchie heavily. https://doc.cat-v.org/plan_9/1st_edition/designing_plan_9 Recently, Pike commented that he designed Plan 9 so he could build the windowing system he wanted. (edit: oops, link) https://9fans.topicbox.com/groups/9fans/T4fec171fec7e3845-M2...

I knew this about Pike, but not Ritchie. Thanks. I think, though, that one of the vastly underestimated aspects of Plan 9/9front is its simplified C. AIUI one of the biggest differences is that a file is not allowed to `#include` anything that has already been #included in a parent project. You are not allowed to nest #includes. The result is vastly reduced compile times. I have read claims of over 1000x fewer lines…

If only Go were as simple as the Plan 9 compilers it is derived from. Go is so big it is used as a disk thrashing benchmark for the new 9front gefs disk file system. In addition to disk thrashing it also helped shake out some deep kernel bugs. It also frequently breaks, most recently the bootstrap, likely stack corruption issues. Go also keeps threatening to drop Plan 9. Go: The good, the bad and the ugly - Plan 9 edition. Last time I built it, it took forever (like 15-20 min) vs rebuilding ALL of 9front from source, kernel included (see below.)

Plan 9 C is wonderful to work in. I really enjoy its simplicity and how the system design has trimmed away a lot of the ugly API's (select and poll, thank god they're gone...) and replaced them by modern multi-process solutions like thread(2) and ioproc(2). Plan 9 was designed ground up for multi-processor machines and it's all channels (if Go were an OS...)

> Decades and centuries of compute-time saved.

Rebuild all of 9front user space from source: 'cd /sys/src; mk clean; time mk install' - 51.48u 36.14s 51.23r mk install. almost 51.5 seconds, under a minute on a measly quad core i5-6500T CPU @ 2.50GHz - a Dell micro desktop with a SATA SSD.

9front amd64 PC kernel build: 'cd /sys/src/9/pc64; mk clean; time mk' - 5.38u 1.16s 4.19r mk. FIVE FUCKING SECONDS. Same machine as above. Time to build the Arm64 Pi kernel: 4.66u 0.83s 3.99r mk. About one second faster. Edit, I should add the kernel sizes: 9pc64 - 5,412,046 bytes, 9pi3 - 4,443,400 bytes. About a second per megabyte of executable machine code generated.

Re: 9front "This Was Supposed to Be Fun" Released

#49

Earlier quoted context omitted.

A lot of the aesthetic and the "9" in a circle seems inspired by Death in June, who have similar Nazi-adjacent imagery, sans-serif text over reappropriate historical photos and use "6" as an icon similarly It seems really weird and misplaced for OSS

[flagged]

Being woke is being evidence-based.

Re: 9front "This Was Supposed to Be Fun" Released

#50

Earlier quoted context omitted.

Plan 9 is mostly Rob Pikes idea and did not involve Ritchie heavily. https://doc.cat-v.org/plan_9/1st_edition/designing_plan_9 Recently, Pike commented that he designed Plan 9 so he could build the windowing system he wanted. (edit: oops, link) https://9fans.topicbox.com/groups/9fans/T4fec171fec7e3845-M2...

So that would be 'rio'?[0] I can find screenshots but haven't found much that explains how or why it's different -- what I've read explains it's not how it looks so much as how it functions, eg, each process genuinely own a console or mouse rather than getting events from the OS as you might in, say, Windows. I can't tell if I am understanding this correctly, of course. I do know that in Plan9, 'everything is a file'…

> haven't found much that explains how or why it's different

Windows are directories in the filesystem. Their properties are files inside it. Modify the file, the window changes.

This means that to open a window on another machine is trivial. Machine A mounts the relevant part of the filesystem on Machine B over the kernel's integrated 9p networking stack, then creates and populates a folder, and now the window is on the other machine.

No "servers" or "clients", no special network protocols, works locally or across the planet, according to appropriate permissions of course. Definitely no need for Windows-like crude hacks such as VNC or RDP.

Post reply on HN