Earlier quoted context omitted.
My 0.02CHF: I studied at ETHZ from 2008 to 2015, and I've heard about Oberon once or twice back then, and read about it at least twice that much on HN. Never used it, never knew anyone who used it, never knew anyone who worked on it (though I believe the chair had slots for theses available at the time).
I was there from 2006 to 2012. The OS course (I think that's third or fourth semester) was being taught with Active Oberon. Must have been in 2007 or 2008, so might have changed right after. Eiffel, Oberon, Event-B are just the most notable examples of things that we were being taught that have never become mainstream.
Oberon (2009)
81–90 of 149 posts
Re: Oberon (2009)
#82The zooming reminds me of Prezi, except that Prezi is in 3D... (maybe Oberon is where they got their original idea from?). As interesting as it sounds and looks, I cannot imagine constantly zooming in and out (or panning) just to switch windows. Maybe I am so indoctrinated with the standard Windows task switcher concept that I don't want it to work in any other way. I was also completely lost when I tried to create a…
Smalltalk had/has this feature. You create a new "project-window". You can then "enter" it and within it you can open any number of windows including project-windows.
This works really well with programming where you are performing a task which requires a set of windows to be open, a class-browser, method-browser, change-list-window, debugger etc. As you are programming you soon discover you will need to do something else "first", perhaps fix a bug. You open a new project-window and "enter into it" to do that. Your current context of whatever you were doing remains as is in the parent window. Perhaps you leave an open debugger there halted at a given stack-frame, so you can continue that debugging later. Maybe even tomorrow.
When your bug is fixed you close its sub-project-window and come back up to what you were doing before.
If you can't fix the bug immediately you can leave its project window in place but exit into the parent-project and do something else there while keeping the bug-fix project open, and visible as a window-icon in its parent project-window.
The same approach could be adopted by the whole OS, and in a sense Smalltalk is an OS. So I'm waiting for MS or Linux or Mac come up with something similar. Not "multiple desktops" but "nested desktops". Or is there something like that already (outside of Smalltalk)?
Re: Oberon (2009)
#83Re: Oberon (2009)
#84> Oberon is very much in active use at ETH Zürich. We used it as one of our main operating systems. The article being from 2009, this must've been an interesting period for the students, as back then the introductory programming course was using Eiffel, taught by Bertrand Meyer himself.
My 0.02CHF: I studied at ETHZ from 2008 to 2015, and I've heard about Oberon once or twice back then, and read about it at least twice that much on HN. Never used it, never knew anyone who used it, never knew anyone who worked on it (though I believe the chair had slots for theses available at the time).
Re: Oberon (2009)
#85Earlier quoted context omitted.
Also the whole OS was a 1.44' bootable floppy disk which booted in 10 seconds on a 486
I think you meant it fit on 3.5” floppy drive (1.44 MB). Fitting on a 1.44 foot floppy disk would be much less impressive :P
I'd love to see that disk. Maybe you'd wheel it out on one of those TV carts all my teachers had.
Re: Oberon (2009)
#86Earlier quoted context omitted.
I think that my ideal CS education would include 3 things: 1. "We're going to ask you to build real software, with real tools, in a group. Even if it's only for one course." 2. "We're going to ask you to do some theory and write some proofs." 3. "We're going to show you some wild stuff that looks like it belongs on an alternate timeline." (3) might be something like Oberon, or Racket, or some eccentric faculty projec…
Well, that is how CS is mostly taught in European universities, across their software engineering degrees. For those that want CS theory only, there is applied mathematics into computation majors.
Re: Oberon (2009)
#87Earlier quoted context omitted.
Yet those are the kind of things universities are great, one get to learn about technologies that changes one's point of view (ideally), something that self taught or professional schools hardly achieve.
I think that my ideal CS education would include 3 things: 1. "We're going to ask you to build real software, with real tools, in a group. Even if it's only for one course." 2. "We're going to ask you to do some theory and write some proofs." 3. "We're going to show you some wild stuff that looks like it belongs on an alternate timeline." (3) might be something like Oberon, or Racket, or some eccentric faculty projec…
Do you start more abstract, and if so with functional, imperative or OO underpinnings? Do you intend to switch languages rather soon or later?
The good thing about Oberon, language set aside, is that you could get started without a lot of adminstrative debris. No 80% of the screen covered in an IDE, not even a big ol' "public static void main" that you're told to gloss over.
I can see good arguments for sticking to one language throughout many courses, too. Sadly that often means C++.
Re: Oberon (2009)
#88Via Javascript emulator: http://schierlm.github.io/OberonEmulator/
Re: Oberon (2009)
#89This operating system looks pretty much like Plan9. I do not know if there is any relation between those two.
Re: Oberon (2009)
#90Earlier quoted context omitted.
I graduated 2007 at the ETHZ. When I started studying, some student pcs were even running Oberon (no login was required). Only some IT students used them as it was too complicated for students from other departments. They were then later replaced with linux/windows machines. If my memory serves me right, when you bought a laptop through the university neptun program, you had oberon preinstalled too (or at least a dvd…
> that he really focused on invariants Oh the horror those classes were. Meyer is a great guy, and in hindsight I appreciate his ideas quite a bit. But the idea to take Eiffel for an introductory course, the questionable exercises (being encouraged/forced to write the code twice, once as invariant and once for the actual execution) plus the terrible Eiffel-IDE made those classes very easy to loathe.
And looking back, "I learned to deal with being completely overwhelmed with shitty tools, questioning if the opposite party has any clue what they're talking about, then had to work out how to pass that class" seems like one of the most useful career skills to pick up in your first year.
Who cares about the programming language.