Hacker News new | past | comments | ask | show | jobs | submit login
Rob Pike (2001): Presentation looking back on 1 billion seconds of Unix. [pdf] (herpolhode.com)
57 points by bdhe on Sept 2, 2011 | hide | past | favorite | 22 comments



Graphics, at least on Linux, seem to be headed in a much better direction than at the time of this presentation. Intel open source drivers, Gallium3D, DRI, etc. all are culminating in the much-simpler, less redundant, and (imo) more Unix-y architecture of Wayland.

I also think it's interesting how he describes text files as both a strength and a weakness. I definitely agree here- grepping or awking a log file is very flexible, but ad-hoc, regex-style parsing-and-unparsing through pipes is very bad for real systems (i.e. not bash one-liners).

He also says "Drifting back towards typed, binary files (Ugly)." I would have to disagree here and say that something like a Lisp machine environment could have many (all?) of the advantages of Unix while solving some of the problems of text interfaces.


If Wayland delivers on the multiple monitor support that would help put Linux back in the running for me.


X11 has great multiple-monitor support, and has done for some time now. Unfortunately, many users are using video drivers from nVidia or ATi, and those vendors tend to have half-finished or sketchy implementations of less-mainstream features like multiple-monitor support. Like in so many things, if you've got Intel graphics, everything pretty much works out of the box.


After using Linux for a few years and learning that you had to do a bit of research and buy hardware carefully to make sure it all worked, I discovered that I could choose ever so slightly more carefully and everything would work with even less effort. I use a MacBook for my main workstation and since finding Divvy and SizeUp haven't missed Linux it all.

I just want a Unix machine that I don't have to fuss over or spend time setting up and maintaining.


Weirdly, that's the reason I switched from OS X to Debian. OS X's hardware support is fine, but I do a bunch of hobby and open-source programming, wrestling with getting stuff to compile under OS X is just not my idea of a fun afternoon. MacPorts is a joke compared to the size and reliability of Debian's package archive, and Debian doesn't make you compile everything yourself, or leave multiple, uncleaned build-trees lying around for every package you install.


That's a good reason to prefer Linux. If OS X didn't have pretty stable and easy system upgrades and migrations I would miss Linux package managers. Copying the list of installed packages to a new machine and then running aptitude update is just awesome.

I have pretty moderate package manager needs so homebrew is good enough, and when homebrew doesn't have it I just install from source.


Personally, I think multi-monitor support is quite good, at least with my window manager (awesomewm). Xrandr stretches the X session accross both screens, and awesome will clone it's interface for the other screen. Each screen has independent workspaces, and you can move windows between the screens by dragging them or using keyboard shortcuts. The only downsides are wallpaper stretching doesn't work well (but it may just be the application I'm using to set it) and the fact that there is a 'space' where the mouse will disappear into if you use two non-conforming screen heights next to eachother. If you find that the default screen settings isn't very good, or don't want to figure out xrandr, try arandr, a very good xrandr gui.


You have to restart X to hotplug displays with some drivers. That's a deal-breaker.


At least for the intel drivers, this isn't a problem.


I still strongly believe that Linux strength is in so many variances. For me it is natural way of building things. Probably, slower and taking more resources, but evolved, not engineered.


I'd rather put my faith in carefully engineered, not randomly evolved solutions.


You misunderstand engineering. Everything evolves, especially technology. The first airplane didn't spring forth from the minds of the Wright brothers fully formed. The technology evolved in spurts and hiccups, more at first but still a little up to the present day. The problems aren't even known beforehand, let alone the solutions. And even when you think you've got it figured out, requirements change. Good engineering IS evolution.


I think you misunderstand evolution. Engineering does not _evolve_, engineering _improves_. In order to make better airplane, you _think_ what would improve it, and if it makes sense, you try it, and if it does make it better, you test it some more, and if it seems safe, and the improvement is worth it, you implement it.

On the other hand, evolutionary approach would be introducing mostly pointless random changes in plane's schematics, building them all (even those doomed to failure), and making them carry passengers as soon as they're built. Then, after a few years, you'd take the schematics of those which did not crash, and repeat the process. _This_ is evolution, what you describe is rather closer to lamarckism.


Lamarckism is evolution too. Don't confuse Darwinian natural selection with "evolution" as a whole, which basically just means change over time.


What operating systems would you regard as "carefully engineered"?


Also, perhaps OS X? If there's an OS out there where everything from top to bottom seems engineered in harmony, it has got to be OS X...


OSX has a MacOS user interface bolted on top of NeXTStep, and underneath it all there is a BSD/Mach hybrid kernel.


That may be, but a user's perception when using the OS (even as a developer) is one of relative harmony, nowadays - Apple have worked hard to unify these disparate parts and make them work well together - hell they even managed to minify it successfully to produce iOS...


Maybe MINIX? But they don't tend to stick, for some reason.


Plan 9 From Bell Labs


Gnu is Not Useful


I definitely feel what Rob feels, that there is work left to be done.

The question is, what more can be done? How can we bring more of the community together into a flexible system?




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

Search: