Hacker Newsnew | past | comments | ask | show | jobs | submit | luismedel's commentslogin

Honest question. Where does one stop clarifying things?

One of the basic principles of communication is that you have a mental model of the person you're communicating with and are phrasing what you want them to understand in terms that you think they'll understand. So whenever you're writing something - anything - you should be writing with a target audience in mind, and stop explaining right around the point where you believe that your target audience doesn't need further explanation.

Of course it's normal for there to be a disconnect between your assumptions about your target audience and reality. In a real conversation this happens all the time and it's no big deal. When something's written and especially when it's printed it can be a bit more of a problem, so maybe better to err on the side of over-explaining. Also a good reason to have editors and proofreaders. But I'm rambling a bit.

In this case, the link was posted to HN by the author, so the author might have had "average HN reader" in mind. Oberon never really achieved success outside of a particular niche in academia, so unless they went to ETH Zurich I personally wouldn't expect someone - even someone in tech - to know about it.


Exactly. I knew what the link was about and didn't study at ETH Zurich. I (mistakenly?) think Oberon is that kind of "roots knowledge" shared between all of us, like Lisp or Forth. That's why I asked when one should stop clarifying things. Maybe some people need to know what a compiler os, or a VM, or a windowing system, or ...whatever.

What I mean is that having so much info at the toe of our tips, comments like "you should put a link about what this thing is" are needless.


> I (mistakenly?) think Oberon is that kind of "roots knowledge" shared between all of us, like Lisp or Forth.

Yes, I think that's a mistake. Lisp and Forth saw widespread commercial use, were hugely influential, and directly begat many other languages. While I'd expect most folks on here to be familiar with Pascal - you could say those same things about it - and maybe even know who Wirth is, Oberon basically saw no commercial use whatsoever and even in academia was basically only used at the school it came from. There's no real comparison.


Yes, you are likely confusing Oberon with Pascal. That is the Wirth language people usually have heard about. They may also have heard about Modula 2, but assuming that is stretching it. I was already interested in computers at the time, but I still only remember Oberon as that even bigger failure than Modula.

The problem with this is that there are so many branches of tech from 40 years ago that any one person is unlikely to be familiar with all of them.

I'm plenty familiar with the whole Modula 3 -> NextSTEP branch of this little tree, but the Oberon branch isn't something I've run into before.


Sorry, can you explain what ETH Zurich is? I’m not familiar with that term.

it is an Ethereum fork, named after Jan Zurich (a cousin of the famous Chief Niklaus Emil Wirth). Jan Zurich discovered a little moon on Uranus, and named it Blaise

see timeline on https://ethereum.org/ethereum-forks/


It’s also worth noting that Jan (who strictly uses the pronouns var / val) belongs to one of the most historically marginalized groups in modern tech: One-Pass Compiler Enthusiasts. They were repeatedly ostracized by the bloated LLVM cabal for stating that any build process taking longer than 50 milliseconds is a toxic social construct. The ETH fork was actually meant to fund a decentralized safe space where nobody is ever forced to use a borrow checker.

I assume you're just trolling to make a rhetorical point (apologies if not!), but FWIW:

ETH Zurich is one of the most well-regarded technical schools in the world, and arguably the most well-regarded technical school in Europe. It has many famous alumni, including Albert Einstein. I think it's fair to expect most people in tech to be familiar with the big schools in the field, even the ones in Europe, though maybe that's giving too much credit to Americans.

But maybe it's also worth pointing out some other principles of communication: ETH Zurich wasn't really the main topic of my comment, and it's OK if readers don't catch every reference; communication is invariably lossy, and as long as general meaning is conveyed that's OK! Also, given the context (the sentence "Oberon never really achieved success outside of a particular niche in academia, so unless they went to ETH Zurich...") even if the reader hadn't heard of ETH Zurich it could be reasonably inferred that ETH Zurich is an academic institution, probably in Zurich, where Oberon was successful. Part of writing is trusting that the reader is a rational person who understands how (the) language and the world work, otherwise communication becomes impossible.

Some associated ideas in the philosophy of language might be the "cooperative principle", the "principle of humanity", and the "principle of charity". I'll frankly make a muddle of trying to explain them in detail, and this reply is already too long and too snarky, so in this case I'd ask the interested reader to consult Wikipedia, the Stanford Encyclopedia of Philosophy, etc.


> even if the reader hadn't heard of ETH Zurich it could be reasonably inferred that ETH Zurich is an academic institution, probably in Zurich, where Oberon was successful. Part of writing is trusting that the reader is a rational person

The first sentence of the README says, "This project modernizes the Kernel of Oberon System 3 (version 2.3.7) by migrating it from the original Oberon Boot Loader (OBL, written in assembler) to the Multiboot specification (handled in Oberon directly in the Kernel)."

Armed with that and the headline "Oberon System 3 runs natively on Raspberry Pi 3", it can be reasonably inferred that "Oberon System 3" is an operating system (shown here of being capable of running on a Raspberry Pi). It doesn't require prior familiarity with Oberon, despite what the previous commenter said.

Neither you nor the original questioner are being particularly rational about this.


> it can be reasonably inferred that "Oberon System 3" is an operating system

"Oberon is an operating system" was indeed evident, but it's also not particularly illuminating. There are dozens of niche operating systems, why do we care about this one in particular? What does it do that other operating systems don't?


> "Oberon is an operating system" was indeed evident,

No, it is not evident: this is not correct.

Oberon is bare-metal self-hosted programming system. It is both a language and an OS.

> why do we care about this one in particular?

1. It is the final development in the career of Niklaus Wirth, the creator of Pascal. Pascal is the Wirthian language that had considerable commercial success.

(A dialect called the USCD p-System was one of the original 3 OSes that IBM offered for the PC, for instance. Apple created Object Pascal, and implemented parts of the Lisa and original Mac OSes in it. In the early days of DOS, Borland TurboPascal was one of the leading IDEs, and then when 16-bit Windows achieved commercial success, Borland's Delphi led the way as the most sophisticated Windows IDE.)

2. It's the end of his life's work. Wirth did not stop with Pascal.

The next generation was Modula. It was a bit of a flop, but the successor, Modula-2, was a hugely influential language too. Topspeed Modula-2 was at one time the fastest compiler of all kinds for the PC.

Development did not end there.

Others did Modula-3, not Wirth. He moved on to create Oberon.

3. This is the end of the line of the single most widespread and influential family of programming languages outside of the C world.

> What does it do that other operating systems don't?

Wirth was a keen advocate of small size and simplicity.

https://cr.yp.to/bib/1995/wirth.pdf

Oberon is one of the smallest simplest compiled languages of all time. It is also an OS, and an ID, and a tiled mouse-controlled windowing system. The core is about 4000 lines of code.

4k LOC.

The entire core OS is smaller than the tiniest trivial shell tool on any FOSS Unix.

It is almost unbelievably tiny, it is fast, and it is self-hosting. It can run bare-metal, on multiple platforms, or as a conventional language under another OS. It has its own GUI. It can interop with other languages. You can, and people do, build complete GUI apps in Oberon.

https://blackboxframework.org/

It may be less well-known than its own ancestors but this is an important, significant language, and the final generation of a very important and very much alive dynasty.


Borland Turbo Pascal for CP/M and MS-DOS was developed by Anders Hejlsberg, who went on to develop All The Languages for Microsoft.

Perhaps more surprisingly, Turbo Modula 2 for CP/M (which was certainly surpassed by Topspeed Modula 2) was developed by Martin Odersky, who created Scala.

Throw in Robert Griesemer and his co-creation of Go, and the Wirth family tree is as influential in modern programming as it possibly could be.


> No, it is not evident: this is not correct.

It is evident. It is correct.

You aren't making this any better.


> "Oberon is an operating system" was indeed evident

> I was about 5 links deep before I figured out what Oberon actually was

You aren't being consistent.


I like how you assumed I’m American because I don’t have knowledge of international top ranking technical schools.

One of the basic principles of communication is that you have a mental model of the person you're communicating with and are phrasing what you want them to understand in terms that you think they'll understand. So whenever you're writing something - anything - you should be writing with a target audience in mind, and stop explaining right around the point where you believe that your target audience doesn't need further explanation. Not everybody lives in Europe or has knowledge of what the top technical schools are (which is a bit classist to assume tbh), and this type of Euro-centric thinking doesn’t work very well when communicating with people from other backgrounds.


I always loved that intro too [0] :-) I implemented the effect in Pascal back then.

FYI, you can download the source code [1].

[0] https://news.ycombinator.com/item?id=31311461 [1] http://ftp.lanet.lv/ftp/mirror/x2ftp/msdos/programming/iguan...


What if the agents were trained by leaked Microsoft code?


With the way the courts seem to judge LLM outputs, I don't think that's an issue as long as it's provable that the code was shat out by an LLM.

Of course Microsoft could still claim that someone used a leaked Windows build as the source so any LLM use would be a ticking time bomb.


Is this defense even viable if the Windows XP source code has been leaked and openly shared online, and you can find many copies of it on GitHub?


There's definitely irony in that Microsoft's GitHub is hosting the leaked source code (which probably got sucked into Copilot and every other AI under the sun as a result).

However, I don't think copyright lawyers will care. "They're also committing a crime" doesn't mean you're free to do what you want. That applies especially in ReactOS vs MS, because if ReactOS succeeds, it will compete directly with Microsoft.


"Microsoft's GitHub is hosting the leaked source code (which probably got sucked into Copilot and every other AI under the sun as a result)." "However, I don't think copyright lawyers will care. «They're also committing a crime» doesn't mean you're free to do what you want. That applies especially in ReactOS vs MS, because if ReactOS succeeds, it will compete directly with Microsoft."

And ReactOS uses GitHub Copilot: https://github.com/reactos/reactos/pull/8516

There's also such thing as being responsible (for an outcome), which in case of litigation means being culpable. Microsoft here is the sole actor that has any control on the GitHub Copilot, on what it was fed with, and thus - on its output (which would be the base of their accusation if they sue). How do you imagine such a case could be made to look like it would have any legal standing?


> "They're also committing a crime"

But Microsoft has the rights to the code, so they do not commit a crime by broadcasting it.


That creates a loop hole. Take code, feed LLM and let it spew it again - voilà - you have perfectly legal code. Just fix bugs


Perfect answer, fellow cimmerian.


Honestly, I feel that everything UI related has gone backwards to the stone age.

I wonder how hard would it be to go back to visual designers like we had with Delphi or VB6. There were flexible layout container components which helped a lot when adapting forms to varying screen resolutions.


All companies I've worked at had (paid) on-call set up. The right to disconnect isn't incompatible with business needs and the law contemplates it. Also, nurses and doctors do it too.


Yeah that law is really about not taking advantage of low paid-by-the-hour employees vs high paid salaried.

But give people any excuse and they'll run with it.

In the UK custom has always been to require a standard opt-out to be signed as part of hiring process.


Another kind of porn?


InfoPorns


I remember not only running commands while debugging. I remember moving the program counter back, until a statement above my breakpoint, making live changes in the code and stepping it again until the breakpoint to see the effects of my changes without needing to restart the program.


Yes, but as i wrote "though it wasn't fully editable as many changes requiring restarting".

FWIW this was actually something you could do in QBasic too.


I consider myself a generalist, but, to be honest, I don't remotely think that I "know a lot of everything". In fact, I suffer about the contrary :-)

About the "when do I say 'I know enough'"...well, never. I just follow my curiosity and it's infinite ramifications. I loss/gain interests about very diverse topics in a somewhat short amount of time.


You're in luck. Your device isn't supported.


It's supported.

But it's going to be the last major OS update for my device, so I won't upgrade. I don't want to be stuck with a half-assed version.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: