Systems Past: software innovations we actually use (2014) - <AUTHOR> http://davidad.github.io/blog/2014/03/12/the-operating-system-is-out-of-date/ <comment><USER2> Read the section "Conclusion" at the end, if nothing else. It is extremely well written. The author throws out some potentially controversial ideas, but he (like many people I have seen) are all hoping for a common outcome - dramatically "rethinking" the concept of the OS and programming language, but really embracing ideas that are as old as time. I'll highlight one section:

"Most of all, let's rethink the received wisdom that you should teach your computer to do things in a programming language and run the resulting program on an operating system. A righteous operating system should be a programming language. And for goodness' sake, let's not use the entire network stack just to talk to another process on the same machine which is responsible for managing a database using the filesystem stack. At least let's use shared memory (with transactional semantics, naturally – which Intel's latest CPUs support in hardware). But if we believe in the future – if we believe in ourselves – let's dare to ask why, anyway, does the operating system give you this "filesystem" thing that's no good as a database and expect you to just accept that "stuff on computers goes in folders, lah"? Any decent software environment ought to have a fully featured database, built in, and no need for a 'filesystem'."

<comment><USER3> What programming language should the OS be? That's the problem. What he's saying will never happen, because nobody can design a programming language that will fit all use cases. Unix is polyglot by design; that's a feature and not a bug.

Everybody wants the OS to be easier for THEIR use case, underestimating the diversity of computing. "Why can't I just have a whole OS in node.js, e.g. [https://node-os.com/](https://node-os.com/) ? That's all I need."

Well some people need to run linear algebra on computers and don't have any need for that stuff. Likewise you don't have any need for Fortran.

The "language as OS" thing has been tried with Lisp and Smalltalk, and failed to gain adoption for good reason. They are both just languages now.

Microsoft already tried and abandoned the second idea (WinFS). File systems are complex, but databases are an order of magnitude more complex. OSes evolve on a slower time scale; databases and languages on a relatively faster time scale.

Multiple databases are also a feature. Both sqlite and Postgres/MySQL work on top of the file system. The file system supports the minimum API you need to write a database. (It's somewhat bad, but the way to fix the API isn't to replace it with a database)

If you had bundled a a relational database with the OS, then you wouldn't have had the right abstractions to make distributed databases like Dynamo and BigTable and whatnot. A database just has more design parameters than a file system and so you can't write one that will fit all applications. Again, the problem is underestimating the diversity of use cases.

So yeah I think both of these ideas are badly mistaken.

EDIT: I also don't think idea about shared memory is good idea. You can can have IPC without the network stack using Unix domain sockets, and that's what people actually use to connect to databases on the same machine. It has the benefit that you can move the database to another machine with minimal changes.

A shared memory interface between and application and a database sounds like a bad idea.

<comment><USER4> Which leads us to ask, "Where are the revolutionaries?"

It used to be the younger generation, around college-age, would rethink their parents' systems: political, business, etc. These kids would look at the buildings around them and imagine what could be accomplished in razing those buildings and creating a new foundation. I don't see that anymore. I see college-aged kids simply wanting to add a new floor on top of a very rickety shack that should have been discarded ages ago.

Ironically, the people writing these types of manifestos for Computer Science are almost exclusively older. They often wrote that first foundational layer and know that it needs to be overhauled.

By the way, I would phrase it more that "any righteous programming language is also an operating system," and that "no righteous operating system operates on files, so no righteous programming language is coded in files." _Data that is not stored or accessed as data eventually will be._

It's true we've tried many variations on these themes in the past, but if we do the logical syllogism in our heads, we come invariably to the conclusion this is how the future should be. We know these things. So why give up? What does failure mean other than that we need to continue trying?

It infuriates me that we don't try -- when people say "we've tried everything and there's no way forward." No, we're just lazy. Charles Duell never actually said in 1899 that "everything has already been invented," yet, oh my God, we can't stop saying it now. So I'm going to ask again, "Where are the revolutionaries?"

<comment><USER3> It absolutely does need to be overhauled, but the problem is that people don't agree on the direction. I think most of your ideas are profoundly mistaken, and have been disproven by history. I'm sure you think my ideas are wrong too.

I think that people tend to dismiss the success or failure of certain systems as luck or even marketing, rather than deeply reflecting on the intrinsic properties of those systems that led them to be adopted or not adopted.

Unix and the web have lots of flaws, but they're not an accident of history. They have fundamental architectural properties that made them succeed. (In particular, REST is the same idea architecturally as Unix/Plan 9 style file systems. Long story, because it's basically avoiding O(m*n) problems in the ecosystem.)

You also have to accept evolution as a fundamental force in computing (as Linus Torvalds does). To ignore it is to set yourself up for failure and frustration. After all, humans are by no means the optimal living being either, but they're the best that evolution came up with.

And as I said in my other post, "revolutionary" ideas tend to just add to the pile. They fail to meet their expectations and then Unix subsumes them. It's almost an economic inevitability.

And Linux WAS revolutionary, if you compare to to Microsoft. The first couple decades of my life were DOS and Windows based, so from that perspective the revolution happened. Microsoft is porting all their stuff to Linux now.

[http://www.revolution-os.com/](http://www.revolution-os.com/)

If you want a single language OS, check out Mirage: [https://mirage.io/](https://mirage.io/) . I know somebody is going to say "I don't like OCaml". Now you understand why Unix dominates: it supports heterogeneity. Even Mirage can't really get rid of Unix, because it runs on Xen, which typically runs on Linux.

<comment><USER4> I recognize that we disagree and I respect your opinion, I would just like to add a bit more:

> _" have been disproven by history."_

I guess that's my point. I don't think we've had enough history to be conclusive yet. I keep hearing this, over and over, and it's the equivalent of "heavier than air objects can't fly -- it's been proven in attempt after attempt."

In my opinion, the reason why there are thousands of programming languages, for example, and is not because we can't agree on them; it's because it hasn't been solved yet. No language is good enough, so we keep trying. In the late 1990's there were seemingly hundreds of search engines. Google/Page Rank came along and all the other search engines went away almost overnight.

> _" revolutionary" ideas tend to just add to the pile_

They do until they don't. All those crazy attempts at flight were truly crazy, until they lead to flight.

We're at the beginning of history, not the end of it.

<comment><USER5> Search engines are comparable in terms of how successful they are at their unique task.

Languages? What metric are you going to use that equally applicable to all tasks?

Think of it as vehicles and their different purposes. Would you support condensing all vehicles to one, so that one vehicle has to both haul and mix concrete _and_ take your kids to get ice cream?

<comment><USER4> I think systems programming would continue to be separate. I left it off because it amounts to a small fraction of in terms of usage in terms of total code written (and I consider it to be able to be grouped in with hardware frankly).

The rest is application programming, and yes, when it's right, it will absolutely consolidate: There will be one "language". Sure, the current conventional wisdom is that languages are the "different tools in the toolbox." I know. My statement wasn't borne out of ignorance. What I'm saying is that kind of thinking is what's holding us back.

What is a program? Is it expressive text? Is it, "Shall I compare thee to a summer's day?" No, of course not. There's no narrative. We use text flow for instruction flow but that's coincidence. We are acutely aware that programs are discrete instructions. Code is data.

I made a statement above. I'll repeat it because it's important. It's a law: _Data that is not stored or accessed as data eventually will be._ Any programming language that uses text files will eventually go away. There will be one "language" eventually because the natural inclination of data is one representation. There will always be a market for new widgets to manipulate data or find insight in data, of course, but there will be one language -- and it will be data. It's the law.

Now I should admit, it's not that we haven't tried. We've tried many times and failed. What I'm saying is that if we come to a conclusion for a destination then there is no other choice but to make that the target.

<comment><USER5> I'm not fully grokking the theory/philosophy you're trying to express here, and I'd really like to, so I'll ask for forgiveness in advance if I seem too dense.

When I think of language and getting a message across (be it to someone else, or to a computer as code), I think of the components that are required for communication:

      - Emitter (myself) (EM; mostly obvious)
      - Recipient (someone else/the computer) (RE; also obvious)
      - Message (what I want to communicate) (MS)
      - Medium (what carries the message) (MD)
      - Protocol (base rules that both sides agree on) (PR)

If I'm trying to help my mother-in-law with a computer problem, I'll tell her to click on such-and-such over phone lines using English. (MD=phone line; MS=instructions; PR=English grammar)

If I'm writing a script to unzip a bunch of files at once and distribute the contents into different folders based on the file type, I'd probably whip up a Python script. (MD=text file; MS=task description; PR=Python)

My script in turn will communicate with the file system and the operating system to complete my task. (MD=bits; MS=instructions; PR=Python-to-Machine- Language-Interpreter)

If I understand you correctly, you're saying that all application programs should distill down to just the message, as the one representation of what I want to communicate. I'm hesitant to accept that, since it tends to assume that both emitter and recipient can independently determine and adapt to the correct protocol when all they have is the message.

For example, my Python script will probably use the file extension as a heuristic for the file type, but will make an error when picture.txt actually is a badly named JPEG. If I want to increase correctness, I can change the script so that it uses the file's Magic Number, but that may be overhead I don't need if the files are correctly named. Choosing one technique over the other requires that I craft the message differently, because Python doesn't make a decision on how best to determine file type.

TL;DR: Data needs a protocol to be used as information, and languages provide that. Doing away with languages means we need to define and agree on a non- ambiguous way of reading data, which is a tall order.

<comment><USER4> You raise an interesting point. Data, as we use it today, is often bare-bones and without meta-data. How you interpret it is very much up to you. It's as if, in English, we said "... apple ... tree" and then leave it to the user to decide if that's "I'm planting an apple tree" or "You can't get an apple from a walnut tree."

You're definitely describing how we work in today's terms -- there's nothing wrong with that, I'm just challenging it. I'm saying that we can describe the protocol better using data; or more I'm saying that it is data and that any other way of describing it is sub-optimal and for that reason will eventually desist.

 _> Doing away with languages means we need to define and agree on a non- ambiguous way of reading data_ Actually I'm saying that language is more ambiguous than data -- at all times and in all cases. Anything you can get language to do, you can get data to do better (in this context). But it's not a hard case to prove because actually we're using language as data. We're doing the equivalent in programming languages of typing in "three hundred" into a text file and having it read from the text file and converted to a single data unit of 300.0 when we could just be operating directly with the data.

But I didn't clarify how this would happen, so I can see that it would seem a bit abstruse. I need to better communicate and clarify that we need to expand how we're viewing data and how we work with data -- that we need to incorporate more meta-data as an ancillary part of the data that both comes with it and yet is still secondary.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> It's not easy to make such a comprehensive list over such a broad category, so cheers to the author for trying. I think it's a good list, but to challenge myself, I tried to think of some things that he missed.

1\. Encryption 2\. Compression

These might fit into another broad category like OS or Networking, but they are both distinct from those I believe.

<comment><USER7> If you read the footnotes he states that he was tempted to include those, but then there would be problematic to separate what algorithms would fit his text, so he decided against including any.

<comment><USER8> Encryption: RSA

Compression: JPEG or MP3

<comment><USER9> > RSA

No thanks.

<comment><USER8> Why? RSA is one of the greatest breakthroughs of the last half century in my opinion.

It was the first implementation of an asymmetric crypto scheme. Merkle came up with the _idea_ of public key cryptography, but he never provided a mathematical technique to achieve that.

Imagine a world where RSA was never invented. We would not be able to exchange secrets over an insecure channel, so naturally, HTTPS/TLS would never have existed - this alone is huge. We would not be able to exchange secure email in a scalable way (PGP). We not be able to securely sign messages for authentication. And there's a ton more. This is without counting the schemes and techniques designed on top of RSA!

<comment> Ar-Curunir There exist other asymmetric encryption schemes; indeed there exists one that is basically non interactive Diffie Hellman key exchange, and DH was discovered before RSA was.

<comment><USER8> I was under the impression that RSA was first, but I guess I was wrong.

DH is a key exchange algorithm, not a general public-key encryption algorithm. So, as far as I understand, TLS would work, but the others I listed would not.

<comment> Ar-Curunir RSA was the first PKE scheme, but El Gamal, another PKE, is essentially a small modification of DH. Elgamal was discovered in 1985; before encryption really hit the mainstream.

<comment><USER8> I see. I'm not too familiar with crypto, so thanks for explaining. I guess that the argument is now: would ElGamal have been invented had RSA never existed?

<comment> Ar-Curunir I think so; as I said it's essentially a small modification to DH.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> See also [http://danluu.com/butler-lampson-1999/](http://danluu.com/butler- lampson-1999/)

Here are some more that come to mind:

Sandboxing+permissions+isolation. Being able to easily install, safely use and cleanly uninstall untrusted software totally changed the way most people consume software, on both the web and mobile. (Virtualization is neither sufficient (because I do want to give some apps access to some hardware) nor necessary (see NaCl))

Types. The static-typing wars may still be raging in other domains, but the vast majority [1] of our infrastructure is written in statically-typed languages, and many popular dynamic languages are growing gradual-typing tumours.

LLVM. Writing a compiled language used to be a major effort. Codegen quality was a huge incumbent advantage. Five years ago C, C++ were pretty much it for compiled languages, with some heroic efforts like OCaml and GHC on the sidelines. Nowadays pretty much all the language and database research that I see involves LLVM.

Packaging. Both OS and library package managers have come a long way since 1950, and to a first approximation 100% of programmers use one or the other.

[1] [http://danluu.com/boring-languages/](http://danluu.com/boring-languages/)

<comment><USER11> Trying to take your categories and find where they started.

Re isolation. From high-assurance security, I believe the first, secure kernel that was general-purpose was this one:

[http://csrc.nist.gov/publications/history/schi75.pdf](http://csrc.nist.gov/publications/history/schi75.pdf)

Types. Guess that would be ALGOL.

LLVM. BCPL seems to have gotten the idea started with a two-pass compiler that went from complicated stuff to byte-code (O-code) then to assembly. That got ported to PDP-11 in form of B & then C. Wirth further developed it & popularized it with P-code in Pascal/P. Helped non-compiler experts port it to 70 architecture in 2 years whereas compiler experts could target something easy. Did it at hardware level with Modula-2 & M-code assembly. So, either Richards of BCPL or Wirth of P-code get credit for such a concept. Maybe both.

re packaging. I got nothing. Anyone know what the first package managers were that had something inspiring modern functionality? Those ahead of their time.

<comment><USER9> I believe the first package manager was "pkg" in System V (early 80s).

The modern notion of package-manager-with-builtin-download-and-uprades only came in the mid-to-late 90s, when internet bandwidth grew enough to make that feasible.

The first one of these might've been FreeBSD ports.

<comment><USER11> I tried to dig it up. I think the terms "version control" and "package management" overlap a lot in how people classify their software or do the histories. They're different with some overlap but it's all muddied up. Interestingly, I found no history in Google of package management from early to modern stuff. There's an interesting project right there for some CompSci student interested in computer archaeology. :)

I did find VC history where the first thing to track software seemed to be SCCC on UNIX:

[https://en.wikipedia.org/wiki/Source_Code_Control_System](https://en.wikipedia.org/wiki/Source_Code_Control_System)

The rest, from CVS to mainframe stuff to Apollo Aegis's, all showed up around mid-1980's in similar time frame per Wikipedia descriptions. pkg seems strong contender for first, package manager if even version control of source didn't hit others until after its creation.

<comment><USER12> There were versioning file systems in the 1960s (MIT's ITS among them, and I think Univac's EXEC 8, though I can't find a reference) [1]. Often, new writes to a file bumped a version (or cycle) count in the file system. I don't know, but I wouldn't be surprised if there were tools to do diffing and patching much like modern VCS systems.

[1] [https://en.wikipedia.org/wiki/Versioning_file_system](https://en.wikipedia.org/wiki/Versioning_file_system)

</comment></comment></comment></comment></comment><comment><USER13> The only 3 real-life innovations we actually use:

\- Vehicles. Invented in Mesopotamia about 7,500 years ago.

\- Buildings. Invented by Neanderthalers about 44,000 years ago.

\- Tools. Invented by early humans some 2,500,000 years ago.

I'm mostly kidding - but I do think the 'innovations' listed in the article are rather broad.

<comment><USER14> Did Neanderthals build dwellings or similar structures? I don't think I've heard that before.

<comment><USER15> Suspect the source is [http://www.telegraph.co.uk/news/science/science- news/8963177...](http://www.telegraph.co.uk/news/science/science- news/8963177/Neanderthals-built-homes-with-mammoth-bones.html) or similar.

</comment></comment></comment><comment><USER11> I'm sure it will be debatable but I think Burroughs B5000 should be on this list somewhere.

[http://www.smecc.org/The%20Architecture%20%20of%20the%20Burr...](http://www.smecc.org/The%20Architecture%20%20of%20the%20Burroughs%20B-5000.htm)

If not for OS or interactivity, I think it should be on there for being the first machine with OS written in high-level language whose CPU was designed to safely execute it. Entry would go something like this:

"5\. High-level, safe execution of software."

Benefits: Stuff crashed less. Hackers had harder time. Easier to expand or maintain.

Drawbacks: Cost some performance due to higher level and some extra money for extra hardware.

Exemplars: Ada language + secure, Ada chips. Java processors + OS's. SAFE and CHERI architectures. Maybe NonStop with hardware/software architecture applied to fault-tolerance. Erlang.

</comment><comment><USER16> I found this essay to be fairly comprehensive, accurate, and informative; some of the items mentioned I have little experience or knowledge of - or didn't even know existed (BGP, for instance, was new to me).

I think the author's heart is in the right place, and I would love to hope to see some of the ideas espoused in the essay come to fruition - but I think that the momentum of history may be difficult to overcome (much like tiling window managers are now popular with some people - though IIRC, Windows 1.0 was a tiling system, then for some reason switched to overlapping windows - perhaps as a result of singular lower-resolution displays being the norm). The author mentions LISP and some other programming languages trying to be an OS, but failing to gain hold commercially for various reasons (though in LISP's case, one could argue Symbolics did succeed to an extent?).

This essay certainly is "food for thought", and I plan to re-read it and think about it; I'd love to see it expanded to book form (or some other format to explore the subject in a deeper manner).

Kudos to the author.

</comment><comment><USER17> Discussed at the time: [https://news.ycombinator.com/item?id=7402571](https://news.ycombinator.com/item?id=7402571).

</comment><comment><USER18> As Clubber said, I'd add a few things to a list that should be absolutely there.

\- I'm not sure why he left out machine learning, deep learning and other AI concepts

\- The GUI (from Xerox)

<comment><USER19> Not that I agree or disagree - the idea of the GUI can be considered a logical extension of hypermedia and interactivity.

<comment><USER20> I think there is a difference between "GUI" in general and Xerox Park GUI specifically. Sketchpad and GRAIL clearly had GUIs of sorts, but Xerox developed UI concepts that were highly generalizable. And just because they became popular doesn't mean they were "obvious". Without Xerox Park all the computers we use right now could have drastically different interfaces.

</comment></comment></comment><comment><USER21> I'd love to hear feedback about this (even if it's mean).

Based on the notes toward the end of the article on the limitations of a traditional OS with filesystem, I had this thought.

The OS clearly seems to be going in the direction of Smalltalk or a Lisp machine as an environment. What would it look like, or what would be the limitations of a merged OS/programming environment with something like a single SQLite DB as the filesystem?

<comment><USER22> > The OS clearly seems to be going in the direction of Smalltalk or a Lisp > machine as an environment. What would it look like, or what would be the > limitations of a merged OS/programming environment with something like a > single SQLite DB as the filesystem?

MUMPS, most 4GLs, RPG on the AS/400\. I have not programmed in any of these but have heard a lot of bad things about them. Also I think it is a mistake to say the the OS is going in the direction of Lisp/Smalltalk. If anything, Linux containers/Docker is more like the IBM VM mainframe operating systems.

<comment><USER21> The OS that the author is pointing toward _

</comment></comment></comment><comment><USER15> How many of these still have substantial unrealised potential?

For example, thinking back through various organisational Wikis I've encountered over the years leaves me thinking that practical Hypermedia needs a little bit more work yet...

<comment><USER23> I think that Operating Systems could do a lot better in representing content as more than just a list of files in a folder, using metadata to package and present the content into something that behaves more like a object you can interact with in different ways, and is more user-friendly, dividable (take a smaller piece of the content on a flash drive for portability, or divide content into two pieces and don't lose the metadata associated with it), automatically versioned, and with a variety of presentation modes (instead of just icons, perhaps it could show 'box covers' or 'banners' or the first few words of the text as a generated picture, etc).

I make all sorts of different types of content, and keeping everything organized is just so difficult, especially if copies exist on different drives and computers. I can't effectively put gigs of video into Git either, as far as I know, so most of it you have to take care of manually (or maybe I should set up a Perforce server, but most end-users and less tech-savvy content creators aren't going to go through with that).

<comment><USER24> > instead of just icons, perhaps it could show 'box covers' or 'banners' or > the first few words of the text as a generated picture, etc

Dolphin does that. The Windows explorer tries to do that as well, but in a much more limited fashion.

Dividing metadata (with the respective privacy issues) and versioning large files are incredibly hard problems. And not the kind of "hard" that a genius in academy writes a paper and it's solved, but the kind where no two people want things to behave the same way, and getting into an usable shared set of assumptions may be even impossible.

<comment><USER23> Not disagreeing with you, it is very difficult, and people would have difficulty coming to a consensus for sure. But I still think it could and should be attempted, at least with one of the operating systems out there.

</comment></comment></comment></comment><comment><USER25> In case someone is wondering what is HyperCard.

\- [http://www.loper-os.org/?p=568](http://www.loper-os.org/?p=568) A short article demonstrating how to build a calculator app. \- [https://vimeo.com/95380430](https://vimeo.com/95380430) A 10-min talk showing the full potential of the language.

</comment><comment><USER26> For a different look at the topic of key software innovations, look at my paper "The Most Important Software Innovations" [http://www.dwheeler.com/innovation/innovation.html](http://www.dwheeler.com/innovation/innovation.html)

</comment><comment><USER27> I think that relational databases made a huge leap forward. It's built on top of a solid foundation presented and accessed using a 4-gl language that describes intent.

But I guess as a database, it's just a continuation of the hierarchical databases, general storage, and cards and index cards before that...

</comment><comment><USER28> > FORTRAN's conflation of functions (an algebraic concept) and subroutines (a > programming construct) persists to this day in nearly every piece of > software, and causes no end of problems

I'm not really sure what the author's point is here. I think "subroutine" is a more descriptive name than the more commonly-used "function," but I'm not aware of any problems this has caused.

<comment><USER29> Functions have properties which are completely defined by their inputs and outputs.

Subroutines (I prefer the term procedure) are just a sequence of commands. They may use arguments and return a value but they can also do anything else.

Functions, real functions, can be reasoned about, composed, mapped over collections, and otherwise trusted to behave themselves. Very few programming languages provide strict functions. One may write them, of course, if one is careful, but that is doing work a compiler could be doing for you.

<comment><USER30> There's also a disconnect with using a PL's concept of a function (procedure, calling convention) instead of the simple intellectual concept (composition) whether or not you're concerned with the mathematical concept (purity); language compilers or runtimes often perform poorly because as a matter of course every function call adds to a stack (failing to perform obvious inline or tail call optimizations), involves a dispatch that might be more expensive than the function itself (just in case inheriting code overloaded it or because every procedure lives in a run-time mutable table), or causes potentially large copies of arguments (to pretend at them being immutable by called code), etc. -- paying costs which in many cases could be avoided.

</comment></comment></comment><comment><USER31> I feel the premise of "the OS as a Language" is missing a very critical point: our common definition of what "a computer is" has changed drastically in the intervening years.

Take a close look at those early computers. It is easy to ask "why do we even need an OS" when we don't have extra things like USB, hard drives, or RAM (it's all just storage anyway). What was once called "a computer" is now known as "a processor."

Even within the CPU itself we find layers of abstraction: caches, interpreters, even out-of-order execution! Just because you write assembler today, doesn't mean the processor is going to do exactly what you specified.

Some of these abstractions should be questioned and challenged, such as the CISC instruction set I alluded to above. But we should remember _why_ these abstractions are there in the first place, instead of blindly questioning (or accepting) how things work.

</comment><comment><USER32> I'd like to see something about dependency and package management here.

<comment><USER22> I think it is no exaggeration to say that until Eelco Dolstra's 2006 PhD dissertation there is nothing worthwhile to mention: [http://nixos.org/~eelco/pubs/phd- thesis.pdf](http://nixos.org/~eelco/pubs/phd-thesis.pdf)

</comment></comment><comment> nv-vn All programming languages were derived from Fortran? _Really?_

<comment><USER33> This point and the few exceptions to it are addressed in the footnotes. I was skeptical too, particularly of the claim that the lisp family tree is rooted in Fortran, but the claims seem to be pretty well researched.

<comment> nv-vn Maybe, but there are plenty of languages I would say are completely independent -- APL, Prolog, and Forth don't seem to resemble Fortran in any major way. At least Lisp shares the same notion of functions=subroutines.

</comment></comment></comment><comment><USER20> I would add virtual files and filesystems to the list. We take them for granted, but without files we would probably stuck with storing everything in a giant database a=la Windows registry. That would make a lot of things complicated and some things practically impossible.

</comment><comment><USER34> Slightly relevant:

\- MIT Technology Review Emerging Technologies Top (2002-2016): [https://www.technologyreview.com/lists/technologies/2016/](https://www.technologyreview.com/lists/technologies/2016/)

\- Gartner Hype Cycle history since (2000-2016): [http://imgur.com/gallery/noBKI](http://imgur.com/gallery/noBKI)

\- Google N-gram viewer (using technology as a keyword): [https://books.google.com/ngrams/graph?content=xerox%2Cfax%2C...](https://books.google.com/ngrams/graph?content=xerox%2Cfax%2Cemail%2Cphone%2Ccell+phone&case_insensitive=on&year_start=1980)

<comment><USER35> This info would be a lot easier to process if the images were juxtaposed and you had a slider to move through the years.

That way you could visually track how a particular item evolved.

</comment></comment><comment><USER36> This is interesting, and can be sort of hard to really understand until the original examples are really internalized. In the end, we can say that everything is change over some dimension, all systems have input and output. Everything is energy or matter, just like it is data or operations. I think these concepts and patterns are natural logical generalizations, and it's good to remember these patterns when beginning to analyze something, but ultimately it is moot and not helpful for any one specific task we are trying to solve. I can't play Angry birds on ENIAC, but that is what I may want to do, now.

</comment><comment><USER37> So many amazing ideas were produced in 1955 & 1956.

<comment><USER38> Makes you wonder what those ideas would have looked like with more powerful hardware. Give Englebert and his NLS team or Kay and his Smalltalk team gigabyte RAM and processors with powerful networking, and see what they would have come up with. It would be akin to taking the most innovative people today and starting over from scratch.

</comment></comment><comment><USER39> Under the second item - Operating Systems this author states:

"Well-specified interfaces are great semantically for maintainability. But when it comes to what the machine is actually doing, why not just run one ordinary program and teach it new functions over time? "

What is her referring to there? What is the "alternative" a a time-sharing system that the author is alluding to? Does anyone know?

<comment><USER40> Likely alluding to the Forth development experience where you start with writing a word (function) that toggles a single bit on an IO port and a couple dozen layers of abstraction later you have an assembly line or telescope, but just like Feynman and the turtles, its turtles all the way down, or Forth words all the way down or whatever.

Whereas OS style, you'd pick some layer of device abstraction, probably extremely arbitrary, and on this side its all assembly or C and on that side its all ... something else, Perl or shell scripts who knows, and generally people don't ever cross the arbitrarily placed abstraction barrier. Its an extremely hard arbitrary barrier.

A classic example of randomly tossing down a barrier over the decades, should RS232 API be bit banging a TX bit with your own timing routines on the application side and the OS merely arbitrates access or way on the other side should the OS implement a full TCP/IP stack and your application talks to the RS232 API at the TCP session layer while the OS does all the rest, maybe the OS even implements a NFS server talking UDP in the kernel and your API is being a NFS client? I've lived thru both extremes and everything in between. It is totally arbitrary and mostly just gets in the way.

Back in the old days when the unix kernel was written in C and so were all the apps... Well no one wants to hear this, but those were good days...

<comment><USER39> I not sure I really understood this but it sounds wildly fantastic if it involves Feynman and Forth :)

</comment></comment></comment><comment><USER41> forgot porn, ok maybe its not a software innovation. please downvote me</comment>


Space firm creates ArcaBoard – a 'real hoverboard' - <AUTHOR> http://www.bbc.com/news/technology-35201724 <comment><USER2> It looks like it is hard as hell to balance on. The riders in the videos are obviously having a hard time. And there is no video of any forward motion.</comment>


Windows 10 critical failure: Microsoft admits June updates trigger reboots - <AUTHOR> https://www.zdnet.com/article/windows-10-critical-process-failure-microsoft-admits-june-updates-are-triggering-reboots/ <comment><USER2> How does this keep happening Win10 updates? Seems like every update now for Win10 is "critical failure" and causes XYZ problems. In house QA is a complete failure. Any insight as to why this keeps happening?</comment>


Google Chrome Gets a Bold New Icon - <AUTHOR> http://neosmart.net/blog/2011/googles-chrome-gets-a-new-logo/

<comment><USER2> I suppose they had to launch the brand new browser with a 3D Spherical icon when joining the market along with IE, Firefox and Safari, but now they're comfortable enough with awareness of the browser that they want to 'innovate'.</comment>


Andrew Warner is out of the hospital - <AUTHOR> http://mixergy.com/thanks-support-out-of-hospital/

<comment><USER2> _I kept trying to explain to Olivia why disappearing for even a few days would kill my momentum and lead the world to move on to other people, other sites, other things._

I really admire your sense of urgency Andrew, but it would take a _lot_ more than a few days to kill your momentum.

<comment><USER3> I think it is irresponsible to condone priorities like this. Being dead will kill your momentum a lot faster than being alive and in the hospital. I've got to say, that I don't really care about this guy. I have no idea who he is. I've never even met him.

I wish him the best, and I do hope he gets better, but any caring that I could do is going to be dwarfed by those around him. His wife, his family, his friends. Maybe this is callus of me, but please, focus on the people who would actually lose you.

<comment><USER2> _I think it is irresponsible to condone priorities like this._

I wasn't necessarily condoning Andrew's priorities, but I don't really find anything wrong with them either. Mixergy is clearly very important to him, and I think he's lucky to have something he cares about so much. I've found it can help to take your mind off a bad situation by thinking about something you're passionate about, and I know if I was in a hospital bed right now I'd want to be working on a fun programming project, not worrying about the here and now.

</comment></comment></comment><comment><AUTHOR> Definitely one of the kindest people in this space - welcome back Andrew!

</comment><comment><USER4> I've suffered through a gastric obstruction before. It is the most painful thing I've ever experienced (even the kidney stones I've had didn't compare). It's also incredibly scary if you know anything about the sepsis that can be caused by an intestinal tear.

It says something about Andrew's commitment that, in the midst of that, he was worried about Mixergy. That's is truly the "founder focus."

</comment><comment><USER5> Glad to hear he's doing better. He's a nice guy and he does awesome work. His interviews are practically priceless.

</comment><comment><USER6> glad you are out, welcome back

</comment><comment><USER7> You're an inspiration to a lot of people Andrew ... And all the ones I know can wait. Please take your time ... Get well

</comment><comment><USER8> I sincerely hope everything turns out ok buddy. Take care, and remember, your health should always be your top priority.

</comment><comment><USER9> Hope you make a full recovery!

</comment><comment><USER10> Take it easy and enjoy life.

</comment><comment><USER11> Get well soon bro. Family frist before the HN and internet peeps.

</comment><comment><USER12> I hope he recovers soon!

</comment><comment><USER13> hope you get better Andrew</comment>


YC's Jessica Livingston Was Hit on by a VC on the Way to This Interview - <AUTHOR> http://recode.net/2014/08/21/ycs-jessica-livingston-was-hit-on-by-a-vc-on-the-way-to-this-interview/

<comment><USER2> This entire article seems like a stretch. It goes from asking her about companies in their portfolio to sexual harassment and sexual advances.</comment>


Lectures Aren't Just Boring, They're Ineffective, Too - <AUTHOR> http://news.sciencemag.org/education/2014/05/lectures-arent-just-boring-theyre-ineffective-too-study-finds <comment><USER2> While substantive data is always nice, this has always struck me as a bit of a "duh" factor. Lectures are omnipresent because they're _cost_ effective. Pedagogical effectiveness is an afterthought.

Anecdotal :

Honestly, I'd go so far as to say that _teaching_ as a whole is an afterthought, even (or especially?) at top universities. I work for a research institution affiliated with a top CS school, and attend their classes regularly. The quality of instruction and academic support in the undergrad classes makes me _cringe_ for the students, particularly given the astronomical tuitions demanded of them. Over-crowded (and un-recorded) lectures are a staple.

<comment><USER3> Little freshman sharkweek back in '03, having gone to a small high school (graduating class of ~70 or so) walks into his first class at the University of Washington, Economics 201 (the first of the series).

The class is 700 people, in Kane Hall, literally 10x my entire graduating class from HS.

After the first lecture, and with extreme naivety, I walk up to the professor, Eugene Silberberg, and ask him when his office hours are in case I need any help with the material.

The perplexed look on his face was probably the most memorable thing I experienced my entire four years in college.

"Uh, go talk to your TA"

<comment><USER4> It's pretty easy to avoid the enormous introductory level lecture classes. Nearly every large university will grant credit for AP or CLEP exams towards undergraduate level classes like Econ 201. These exams cost under $100 for an entire course.

You can also find many schools offering these courses online, for a bit more money. Transferring in a credit is painless.

<comment><USER5> > Transferring in a credit is painless.

Actually transferring college credits is one of the most painful things I've done in my academic career.

<comment><USER6> How long ago did you attend? Almost all states have made public colleges and universities arrange transfer agreements to guarantee credits will transfer. Most private, not-for-profits have taken up this cause as well. For-profits are still a bit wonky with transferring, because their academic rigor tends to be terrible.

Now, out of state transfers, that's another story.

<comment><USER7> At UCLA and Cal, 30% of freshmen are out of state[0]. As you said, this is not an easy thing to do to begin with. I don't think that these numbers hold as high for other universities, but it's not 10 or 20 people at a school. It's like 1/8 to 1/4 of the freshmen that may need to transfer credits.

[0][http://www.mercurynews.com/education/ci_25731300/uc- nonresid...](http://www.mercurynews.com/education/ci_25731300/uc-nonresident- students-increase-californians-admissions-slow)

</comment></comment></comment></comment></comment></comment><comment><USER8> I used inquiry-driven project-based learning -- [http://joshuaspodek.com/inquiry-driven-project-based- learnin...](http://joshuaspodek.com/inquiry-driven-project-based-learning- rocks) \-- to teach my class at NYU-Poly, "Entrepreneurial Marketing and Sales" this semester.

Experiential learning rocks! I never want to go back to lecturing.

I had only recently learned of the teaching style, mainly from a K-12 education conference where I was the only university professor, which KQED reported on -- [http://blogs.kqed.org/mindshift/2014/03/can-university- profe...](http://blogs.kqed.org/mindshift/2014/03/can-university-professors- benefit-from-k-12-progressive-teaching-tactics). After the conference I redid the syllabus to replace lectures and texts with the students and I getting to understand each other to connect the material to their lives to motivate them and so I could help them create projects they'd care about because they'd be connected to their lives.

The results:

\- The students loved the class.

\- Over half of them are continuing the class projects after the course ended.

\- Several reported me the best professor and the class the best class they took.

\- The students are getting together to create a video about the class even after it ended.

As much as I'd like to brag, the credit goes to the teaching style.

Engaging students with empathy and helping direct them to personal projects connected to their lives works better than any lecture, at least in my experience. It was a lot more engaging, fun, and educational for me too.

The core, to me, is to see the students as the most important consideration and the content lower, the opposite of the lecture model. With the internet, the students can find any information they want at any time. Lecturing wastes their time. My value is in connecting with them, helping direct them, sharing my experience, and holding them accountable -- more like a manager or colleague in the world.

<comment><USER9> How do you avoid having students stick to what they are familiar and comfortable with?

How do you ensure students get a broad understanding of the subject?

In my experience the major difference between hiring self directed learners and people who studied cs in college is the lack of breadth in self directed learners. Great python/js/php web dev who has never heard of pointers or a priority queue?

<comment><USER8> Great questions.

I can't speak on avoiding what they're familiar with generally, but my strategy was to make the deliverable for most sub-projects a five-minute presentation on their results to the rest of the class. I reasoned that presentations are critical for marketing, sales, and entrepreneurship in general, and that the students had very limited presentation experience so the format would give them experience. Then I followed many presentations with students meeting one-on-one to give advice to each other.

Public presentations with feedback are accountability tools that force them to do thorough, quality work, to pay attention to each other, to see how others tackle similar challenges, and to develop communication skills. Several of them were scared to present at first but then reported improving presentation skills as one of the most important parts of the class. They grew a lot in that area.

I also made deliverables similar to real-world problems. I assigned them to talk to people in the field, even experts in the field, which forced them to prepare (I didn't just throw them to the wolves. We worked up to that by having them practice with classmates and then friends and family to develop their business communication skills).

Regarding breadth, I told them at the beginning of class something like this: "Even the best salespeople learn sales their whole lives. Nothing anyone can do can make you the worlds' best salesperson or marketer in one semester. You'll always have more to learn. If you became the best, you'd probably keep learning faster. My goal in this class is to develop in you the skill to improve yourself by finding out what you need to know and learning it -- to improve the slope of your learning more than the y-intercept."

The most important tool was having them act, not just listen or read. I can't comment on how things will go for them in the future, but they've already hit major business challenges and learned how to overcome them, like how to find an expert in the field and get him on the phone. Each saw others do it. Their barriers are lower. If they have depth without breadth and they need it, I hope they'll figure out how to get that breadth. The class is only a semester so we couldn't cover everything no matter what.

By the way, they weren't purely self-directed learners. I created the course structure and they never worked more than a week without oversight.

Incidentally, I don't claim to have mastered inquiry-driven project-based learning, only that it's gone great so far. I expect to keep learning my skills in it forever. Part of why I'm posting at such length here is to try to find or create community of people who work similarly. I saw how much the K-12 IDPBL community helps each other. I hope university IDPBL teachers do too.

</comment></comment></comment><comment><USER10> Small point about the title: just because B is more effective than A doesn't mean A is ineffective.

Also, I didn't read the original source, but I wonder how difficult it is to get a class to be active participants in a lecture. I know plenty of people, if given a clicker to answer questions in class, would either not do it, or just click randomly (if it was required).

I think it is pretty obvious that getting students to actively participate is the ideal, but I feel like a lot of teachers and/or professors have given up on this strategy because it is more work on their part. If students don't want to learn (a good amount of) teachers probably don't want to put forth the effort to force them to.

<comment><USER11> I don't know a single faculty member who has positive things to say about clickers, even those who were optimistic.

<comment><USER12> I'm a lecturer and I think clickers are great, for large classes especially. Clicker questions and small group discussion about the answers gets students thinking rather than just sitting there with eyes glazing over. It works well. By giving a small amount of real credit to the answers you even get all the slackers discussing the topic and arguing about which answer is right.

Technologically clickers are impressively easy to use as well, you just need to put in slides with questions into the main presentation. The biggest disadvantage is students who forget to bring their clicker or have endless excuses about why they couldn't be in class on a certain day.

<comment><USER13> They seem unfair to me :). I learned most afterwards when I was sitting in room alone and really learning. I was present at lectures wrote notes and all that, but found it hard/uncomfortable to absorb it immediately or form an opinion. I prefer to have time to think about material before being questioned on it.

My grades were good, so I do not think it is the issue of me being incapable of college level of learning.

I also usually managed to get enough participation points or answers or whatever was necessary for the grade, but rarely felt that the whole thing added something to my learning. It felt more like waste of time, especially those parts when people asked or had comments only to show they are participating.

</comment></comment></comment></comment><comment><USER14> Back when I was at University, a lot of the lectures (and more generally courses) felt like advertising platforms for the lecturers. We would follow bland Powerpoint slides which would regularly point to particular chapters of books, more often than not written by the lecturers themselves.

The slides would often be years old and would fail to adapt to common trends. As for the books, the few updates they received each year seemed to be a way for lecturers to force students to buy the new editions (e.g. page 10 becomes page 20), rather than actual research updates.

This, to me, just feels like lecturers trying to get their money's worth. The students have become secondary to the whole "education thing". I'm aware that higher education systems are largely at fault, not just the lecturers, but one would think integrity would have gotten the better of this odd machinery.

Unfortunately the problem seems even larger to me, we assume Education is this linear, step-by-step thing, when in fact people learn different things at different speeds, in very different ways. Lectures are only a symptom of trying (and failing miserably) to normalize Education. It's the quote by Einstein in all its glory: "Everybody is a genius. But if you judge a fish by its ability to climb a tree, it will live its whole life believing that it is stupid".

<comment><USER15> I'm actually very optimistic for education in the near future. After taking some Coursera classes, I'm confident a more personalized education is completely attainable.

There are a lot of weaknesses to point at with the online education platforms popping up, but I think those weaknesses minuscule compared to our standardized brick and mortar structure we have today. Really the only thing I find particularly lacking is a mentor. I don't need a person to lecture me in person everyday for an hour, I just need someone to check in to make sure I'm staying on track, or to point out a different area I might find interesting if I'm bored with what I'm working on.

We really only need a few expert lecturers to build high quality online classes. The 40 students to one teacher can be slightly modified by 40 students to one mentor, whose job is simply to make sure everyone is staying relatively engaged. I don't think a teacher can effectively instruct a class of 40 students, and it's wildly ineffective and inefficient. A trained mentor, however, can make sure a group of 40 students are progressing on their own. (The 1:40 certainly needs to be up for experimentation, but the point is I feel online education can be a close fit to the general infrastructure of our system today).

</comment></comment><comment><USER16> Well, scientists and computer engineers are typically working on real world problems, for which certain learning styles are better. I'm an engineer, so I actually would agree with this article... for those domains.

For other areas, like theoretical physics and philosophy, however, the lecture and the seminar are awesome.

So we need to be careful not to paint the world with an engineering brush.

<comment><USER17> I agree.

I think that in Computer Science in particular you can completely move to video recorded lectures. Some say that we need live lectures so that people could ask questions, but from my experience, the questions asked during lectures are usually inane (mostly stemming from the fact that the person didn't pay attention) and could be answered by simply rewinding the video, or looking something up online. At the worst case, you could always email the professor/TA.

I guess the only thing being lost here is the social aspect of college where you get to meet new people.

</comment></comment><comment><USER18> Here's an article from 1981 lamenting that although the science was settled and everyone agreed that lectures weren't any more effective than unstructured reading, you couldn't get the people giving lectures to stop doing so, generally for rather insipid reasons:

[https://www.brookes.ac.uk/services/ocsld/resources/20reasons...](https://www.brookes.ac.uk/services/ocsld/resources/20reasons.html)

 _" Disclaimer: The ideas, explanations and evidence which form the arguments of this paper are not the outcome of years of esoteric study and hence accessible only to professional educationalists. On the contrary, they are readily available in popular paperbacks, notably in Donald Bligh's "What's the Use of Lectures?" The evidence is not new. The arguments have been made before. Only the continued prevalence of lecturing justifies the writing of this paper."_

[...]

 _" Conclusion: I would not like to leave the impression that I feel that there is no justification for ever lecturing. I lecture myself (though seldom for more than fifteen minutes at a stretch and then seldom when written substitutes are available). I believe there are circumstances when a well structured, well paced, varied, lively lecture can be the most efficient teaching method. But I do believe there is far more lecturing going on than can reasonably be justified by the evidence concerning the efficiency of lectures, especially bearing in mind the nature of the educational goals we claim to be striving for. I believe this state of affairs to be largely due to ignorance, attitudes, and institutional constraints, rather than to any inherent virtues of lecturing which I have overlooked, and which everyone else is privy to. I believe both institutions and validating bodies ought to be asking serious questions about courses which appear to be based primarily on lecturing as the dominant teaching method."_

</comment><comment><USER19> A good lecture has elements neither book, nor video, nor homework, nor group discussion will have. It has the element of a knowledgable person disseminating knowledge in a quasi- Q&A format guided by his knowledge and experience.

</comment><comment><USER20> Personally, I think the Khan academy model is the future - watch lecture videos at home, and work through problems in the classroom.

<comment><USER21> As one who has gone through about 100+ Khan videos, I appreciate them for what they are - which is usually helping someone over a conceptual hurdle. I would love it if someone were to take the next step, and create a more sophisticated question bank than Khan has, which stresses your learning experience. The one key issue with Khan is that it typically doesn't stress you, and as such, the knowledge retained is usually fairly shallow.

<comment><USER22> StudyEdge (YC S13) is doing a great job with a similar service. They provide Khan Academy-style videos with a live support system (on the FB app platform). The videos + support system are meant to supplement university courses-- essentially acting as a web tutor. Their own supplementary question banks tend to be deep and well designed.

I used the service to get through Calc 2 as an undergrad. I liked it so much (went from a C+ to A student in math) that I went to work there the next summer!

<comment><USER20> Similar experience - I had a terrible professor for my LInear Algebra course back in college and Gilbert Strand's lecture videos on MIT open courseware were the only reason I passed that course (actually got a better grade than other math courses).

</comment></comment></comment></comment><comment><USER23> I only found lectures especially useless after the shift to PowerPoint slide dumps. I still think back fondly on the days where English/History/Calculus/etc professors would write on the chalkboard while lecturing. Something about the act of writing made each point seem more important and easier to recall

<comment><USER24> My favorites were the fusion between the two, (powerpoints for key formulas, scribbling for explaining) especially with the professors that would mark-up the powerpoint with a stylus and post them online.

</comment></comment><comment><USER25> I disagree. In my experience, the lectures are one of the primary reasons for attending a university. For a lecture to be effective, the students will need to have read the material that the lecture is taking on. Then, during the lecture, they should see why they have read what they have and understand why it is important, what the general implications are and so on.

For me, at least, a good lecture always brings together the assigned reading material in a way that I cannot achieve alone. A good lecture makes things click. Solving a thousand problems may also make concepts click, but a good lecturer will reduce the time needed.

TL;DR: The point of a lecture is not to tell you everything, but to bring together the material that you have already consumed and provide a different perspective than the book you read.

<comment><USER26> Yes, you are very right that it is what's supposed to be. The problem is that most students don't want to read ahead and expect the teacher to provide all material in class (and more recently, I am told, to provide class notes for those unable to pay attention for more than 150 seconds in a row).

Then, teachers will plan to pander to that majority, so any student who does what s?he is actually supposed to do will end up bored to tears with the so called "lecture".

As a single data point, I was well known in undergrad school to sleep through lectures, and be left alone because whenever woke up I ended up disrupting the class plan by asking questions (which I had read about the night before) that other students could hardly understand and care about even less. Then, I suffered a lot through graduate school to get rid of my bad habits once I was expected to attend to _real_ lectures.

</comment></comment><comment><USER27> As someone who learns almost exclusively by reading, I've always been bemused by the concept of lectures. I've never thought that a professor explained the material better than the textbook or other reading materials that prepared us for class.

To the extent that a professor is expounding on the reading materials--which is what you are really paying for in college--by applying them or synthesizing them, I think those lessons are often better taught through interactive dialogues with students. I'm probably a bit biased from my experience in law school, but I think the socratic method is a particularly strong pedagogical technique, and could be effectively implemented in many undergraduate courses.

<comment><USER11> As someone who learns far better by lecture, I've always been bemused by the concept of textbooks. I've never thought that the several hundred dollars I paid for a book got me nearly as far into a subject as listening to the professor.

<comment><USER27> I envy you for being so well-adapted to the traditional style of teaching :) On the whole, most people learn better by listening or interacting or doing. I'm certainly the exception in this respect. My brain processes information much differently. It takes me 3x longer to process a sentence read aloud as it would to just read it. Lectures felt like a huge waste of time.

But do you really think that a lecture can cover material as thoroughly as a textbook? In my experience, lectures were supposed to cover part of the material (perhaps some of the trickier parts), but could never be treated as a substitute for reading.

<comment><USER11> Well, at this point in my career, the lecture covers things not yet written in textbooks ;)

But generally speaking, especially when you account for the probability that "read the textbook" will result in me either grinding to a halt or just having content slide off, I covered more in lecture.

Textbooks were useful for specific needs for depth, used much more like reference works than a way to learn an entire topic.

</comment></comment></comment></comment><comment><USER28> From the original paper: "The effect sizes indicate that on average, student performance on examinations and concept inventories increased by 0.47 SDs under active learning (n = 158 studies), and that the odds ratio for failing was 1.95 under traditional lecturing (n = 67 studies)."

Averages are not a very comprehensive measure for efficacy in a teaching environment. I am glad they included the failure rates too, but people here should not be so quick to jump to changing out the entire methodology based on two numbers. Different students learn differently, and ideally you would look at the distribution in student performance for different balances of teaching methods.

Having said that, they are onto something.

</comment><comment><USER29> I think one important point to make is not only about the amount of knowledge absorbed from lectures, but also the discipline and rigor in education.

A lot of comments seem to hail e-learning, remote videos, recorded lectures, etc etc as the future of education, and it scares me if I have to be honest. There is a very important difference between a self-taught student and one that has undergone through formal education, and that is scientific rigor. Not to say that a self-learned person is less knowledgeable or "worse", it's obviously not true and there are always extremes, however actually attending lectures, going through the daily (and sometimes boring) routine of grinding through contents as explained in a boring way by your lecturer.. it's all part of building your determination and character as a researcher.

More often than not I find self-taught people staying at a very shallow level of knowledge, broad and generic, never digging through the details, going that extra mile to properly master a subject in a structured and well-disciplined matter.

In my opinion, that kind of education can only be achieved in a mentor-student relationship and, especially, through formal lectures. Even by just being around other people and interacting with the academic environment, it helps abstracting to a higher state of reasoning.

PS: I only have experience in the scientific academia, not talking about other branches like arts or philosophy or whatever.

<comment><USER30> I always find it educational to meet someone who lacks all of the characteristics I think are crucial for success, but is still successful.

In that vein.... I probably attended fewer than 15% of all of my lectures, for every class in undergrad (I was a math major; attendance didn't magically pick up in my advanced classes either). I've also finished an MS in stats and a PhD in economics (working on econometric theory, so... basically more stats) and work as an assistant professor.

Now, I'm posting on HN at 1am instead of sleeping or working, so I certainly lack discipline, but I don't think that "attending boring lectures as an undergraduate" is the magic precondition that you seem to. :)

<comment><USER31> I feel like the problem is that educational effectiveness is too much of a personal thing that it is impossible to argue about. everyone learns differently. I think it's important to note that most people are self driven enough to learn on their own. I learn a lot in lectures. other people go to lecture and goof off and then learn the material on their own later. truth is, the smart kids will usually find a way to succeed no matter how they learn. What we are trying to figure out is the best way to teach the masses. I also think it's important to consider the sheer number of people trying to get an education in modern times as opposed to the past where most students were smart, privileged kids whose parents were probably decently successful.

<comment><USER30> >I feel like the problem is that educational effectiveness is too much of a personal thing that it is impossible to argue about.

This may be true, but I definitely like reading the range of opinions on this subject and I think it's helpful as an educator.

>I think it's important to note that most people are self driven enough to learn on their own.

This is sadly not true, but I'm happy that you think it is!

<comment><USER31> sorry I meant not self driven enough. haha.

</comment></comment></comment></comment></comment><comment><USER32> Agree. I didn't go to a single lecture after 2 months at university (electrical engineering). My TA was shit as well - was too tied up in computer vision research and found us inconvenient. However we formed a club (5 of us who actually gave a shit) to work through stuff as students. Rather awesomely our digital electronics lecturer turned up after a couple of weeks and helped us with stuff and had a weekly rant about how useless the other staff were. I think we helped him vent too.

</comment><comment><USER33> Here are some additional stories on the topic that are worth reading:

* Physicists Seek To Lose The Lecture As Teaching Tool [http://www.npr.org/2012/01/01/144550920/physicists-seek-to-l...](http://www.npr.org/2012/01/01/144550920/physicists-seek-to-lose-the-lecture-as-teaching-tool)

* At M.I.T., Large Lectures Are Going the Way of the Blackboard [http://www.nytimes.com/2009/01/13/us/13physics.html?pagewant...](http://www.nytimes.com/2009/01/13/us/13physics.html?pagewanted=all)

* First-year physics course being transformed through experiment [http://web.mit.edu/newsoffice/2001/physics-1219.html](http://web.mit.edu/newsoffice/2001/physics-1219.html)

* The Tomorrow's College Lecture Series - Don't Lecture Me [http://americanradioworks.publicradio.org/features/tomorrows...](http://americanradioworks.publicradio.org/features/tomorrows-college/lectures/)

* Inventing a New Kind of College [http://americanradioworks.publicradio.org/features/tomorrows...](http://americanradioworks.publicradio.org/features/tomorrows-college/lectures/inventing-new-college.html)

</comment><comment><USER34> I can't find the journal article, but I saw an academic machine learning paper that claimed our whole lecture system was inefficient and not optimal. Our lectures are currently based off an old system, before all the technology now. The game changed when we introduced computers/phones/tablets, but our method didn't change.

Students don't have much to rely on to determine how well they're doing in a class. Currently, we rely on practice problems. Often times, this feedback loop isn't closed. If it is, it's possible to learn _where_ you went wrong, but often times the solution manuals say "as an exercise for the reader..." or have similar lines.

This paper was proposing to devise some test to determine how well a student understood the material and suggest strategies to more easily solve the problems (afaik at least).

Something I've noticed: we still rely on someone else relaying the information to us. Who says there's who explains the concept better somewhere else? Can we devise a method to have the student give their full and undivided attention while incorporating the technology?

</comment><comment><USER35> This applies perfectly to every TED talk.

</comment><comment><USER36> I worked at one of the bigger MOOCs for a while and we knew that over 50% of our paying customers never watched any of the video lectures they subscribed to.

That's the huge flaw in MOOCs as they are now. You can put all the content in the world online for free or not and most people won't watch or learn from it. That's the critical flaw in the e-learning investments right now.

<comment><USER37> Is that really a flaw? If I can learn better by reading books and then working through problem sets, why bother with the lectures, especially if I am strapped for time as many MOOC participants probably are. I am a huge fan of MOOC's, I've probably attempted about a dozen and have completed about half. So far the biggest reason for failing to complete a class has been time constraints. If I am already familiar with the material (i.e taking the class as a refresher) or don't find the lectures particularly engaging, I will still 'watch' the lectures, but play them in the background while I work on problem sets or do other stuff. In my experience, most MOOCs have a healthy portion of participants who are very familiar with the material, so it's quite possible a good percentage of them are just using the problem sets as a way to refresh their understanding.

Unless of course, you are insinuating that a majority of these people are cheating (i.e. copying and pasting answers on HW's) I don't really see what the big deal is.

</comment></comment><comment><USER38> Yes! Amen, brother!

Two years ago, Sal Khan and John Hennessy (president of Stanford), went to a conference and talked about the future of education: [http://allthingsd.com/20120531/how-do-credentials-change- as-...](http://allthingsd.com/20120531/how-do-credentials-change-as-education- goes-online-stanford-and-khan-academy-respond-video/)

They both concluded that lectures may not exist in the future!

Sure, there are such things as lectures that have oratorical brilliance, that inspire students about their subject. However, for the most part, lectures are just inefficient ways to get information across. With the Internet, we have methods to get this information asynchronously, without requiring packing everyone into a room.

Rather, the role of the teacher in the future will be supporting students. That's where humans outshine computers - answering questions, tutoring, understanding where students might be confused, etc.

<comment><USER39> "lectures may not exist in the future"

What would I listen to in my car streamed by bluetooth from my phone? Radio? No way.

What might happen is someday, someone is going to record "The Ultimate verbal explanation of a PDA automata" or whatever, and then for the next 500 years that'll be The One that everyone listens to. It hasn't turned out this way in books because of legacy analog media combined with desire of publishers to maximize profits. Imagine if you could just download the Feynman lectures on physics. Aspects are out of date, but still going to be better than the local talent.

<comment><USER40> Imagine!

[http://www.feynmanlectures.caltech.edu/](http://www.feynmanlectures.caltech.edu/)

[http://www.openculture.com/2012/08/the_character_of_physical...](http://www.openculture.com/2012/08/the_character_of_physical_law_richard_feynmans_legendary_lecture_series_at_cornell_1964.html)

OK, so that's not quite everything but it is a pretty good start, and there's lots of other stuff out there on the web.

</comment></comment></comment><comment><USER41> _"Universities were founded in Western Europe in 1050 and lecturing has been the predominant form of teaching ever since,"_

But the way professors are compensated has changed dramatically. In the early times the students payed the professor directly. Per lecture. I.e. those students who chose to attend and apparently got something of value.

</comment><comment><USER42> I can specifically remember dropping a Pysch elective I was required to take simply because the teachers format was horrible.

One midterm one final, lectures everyday taken straight from the powerpoints the publisher provided with the teaching edition, same with the tests. I'm sorry but talking isnt teaching I can read the book word for word at home, explain the concepts do some activities anything please! Most classes I got A's in _and_ learned something had hands on activities in addition to the lecture.

</comment><comment><USER43> Very interesting because, for me personally, the further ahead I've gotten in my career, the more I've realized that I really don't like lectures at all. It's exceptionally rare for me to learn anything or even remember anything from a lecture. Everything I've ever really learned has been from hands-on work, with a book or online reference available. Perhaps some other people learn from lectures, but I don't.

</comment><comment><USER44> Am I missing where they indicate what they mean by "active learning"? All I see are references to clickers and asking individual students questions during a lecture. Sounds like it's actually just a question of dull lecturing vs engaging lecturing to me. Can anyone provide a summary of what "active learning" means in this context?

</comment><comment><USER45> This can't be a surprise to anyone can it?

They can be boring, entertaining, exciting, repetitive, straight-from-the- textbook or enlightening but surely no one thought lectures were primarily educational.

Good lecturers made me want to read the book, study the subject, experiment on my own or do my best on assignments and labs. That's the purpose of the lecture in my opinion.

</comment><comment><USER46> In contrast, the method of pair discussions has been used for a long time in the Islamic Seminars in Najaf and Qom. Which has produced highly effective teachers, each one able to lead a lecture in every subject they take.

Maybe someone can highlight the teaching methods in other parts of the Eastern world?

</comment><comment><USER47> I find it helpful (in a Zen-like way) to remind myself that civilization is a massive patchwork of hacks.

<comment><USER48> The result of thousands of years of meeting the local maxima.</comment></comment>


Susu, or raising your own VC - <AUTHOR> http://en.wikipedia.org/wiki/Susu_(savings)

<comment><AUTHOR> [http://en.wikipedia.org/wiki/Golden_Krust_Caribbean_Bakery_%...](http://en.wikipedia.org/wiki/Golden_Krust_Caribbean_Bakery_%26_Grill#History)

The company was started with friends and relatives contributing $100 a week after they couldn't get a loan from a bank.</comment>


Going gray for smartphone addiction - <AUTHOR> https://gogray.today/app <comment><USER3> I think it is bullshit, because black and white slot machine still is a slot machine.

[1]: [https://www.theverge.com/2015/5/6/8544303/casino-slot- machin...](https://www.theverge.com/2015/5/6/8544303/casino-slot-machine- gambling-addiction-psychology-mobile-games)

[2]: [https://www.1843magazine.com/features/the-scientists-who- mak...](https://www.1843magazine.com/features/the-scientists-who-make-apps- addictive)

[3]: [https://www.theguardian.com/technology/2017/oct/05/smartphon...](https://www.theguardian.com/technology/2017/oct/05/smartphone- addiction-silicon-valley-dystopia)

[4]: [https://venturebeat.com/2016/04/02/app-makers-its-time-to- st...](https://venturebeat.com/2016/04/02/app-makers-its-time-to-stop- exploiting-user-addiction-and-get-ethical/)

[5]: [https://medium.com/@anamitra/dopamine-hits-and-product- desig...](https://medium.com/@anamitra/dopamine-hits-and-product- design-f1376b32eaa1)

Turned on grayscale in macOS(System Prefs - Accessibility - Display) before googling this articles, can confirm that still receiving dopamine hits.

<comment><USER4> Ingrained associations don't die easily. I remember when I first quit facebook. I still had the habit of quickly pressing "F, _enter_ " for months after I quit. After a couple years though, I hardly ever go through that old routine.

Check out Nicky Case's game about neuroplasticity: [http://ncase.me/neurons/](http://ncase.me/neurons/)

Just now I enabled grayscale via the Android developer menu. I noticed an immediate reduction in intensity. It didn't feel like "bullshit" to me! If you want this to help you, you're probably gonna have to give it a little bit more of an open mind. The attitude of "this is bullshit" could very easily sabotage any positive benefits of this exercise. Big things grow from small seeds, but only if you water them, give them light and make sure they don't get crowded out by more aggressive plants.

<comment><USER3> Everyone loves placebo, but after browsing for half hour in grayscale and turning back color there is some kind of wow effect.

<comment><AUTHOR> It's not the full solution but it's definitely part of it. Colour on my phone overwhelms me now (i've been gray since June)

</comment></comment></comment></comment><comment><USER5> Took me a while to get what this app does, maybe it would be a better idea to link to their homepage: [https://gogray.today/](https://gogray.today/)

> _What was bright and shiny was now dull and boring. It 's like turning your > favourite dessert into broccoli._

This fantastic analogy it was sold me on signing up, good copywriting:

<comment><USER6> I understand that the analogy might work for many but I would choose boiled broccoli with olive oil and pepper over any dessert.

<comment><USER7> The form of the analogy is the important point, not the specifics.

"It's like turning <thing you look forward to eating> into <something you're less enthusiastic about>."

<comment><AUTHOR> hahaha thank you for that. I know not everyone hates broccoli as much as me :)

</comment></comment></comment></comment><comment><USER8> I started doing this yesterday. I kind of like it and I think I'm getting distracted less with grayscale. I'll unlock my phone and won't forget why I unlocked.

You don't need an app for android to do this system-wide (tho I could see why whitelisting would be nice). Just go to developer options-> Simulate color space-> Monochromacy

<comment><AUTHOR> yeah! we include the instructions on the website to go gray natively :). The app will have the features listed on the page.

<comment><USER9> For windows users, there's stuff like [http://arcanesanctum.net/negativescreen/](http://arcanesanctum.net/negativescreen/), that might be interesting to investigate and/or integrate into this.

<comment><USER10> I missed the grayscale option at first sight and discarded that solution. Thought it could only invert colors.

To make it clear: NegativeScreen has a grayscale option with default hotkey F11.

</comment></comment></comment></comment><comment><USER11> After reading this article [1], I created a small "disconnect box" that sits by my front door (it's a repurposed iphone box). When I'm home, and especially when the kids are awake, the phone stays in there. I can hear if someone calls, but otherwise notifications are off. Working quite well so far!

[1] [https://www.theglobeandmail.com/technology/your- smartphone-i...](https://www.theglobeandmail.com/technology/your-smartphone- is-making-you-stupid/article37511900/)

</comment><comment><USER12> In (iOS && iPhone<9), you can toggle this filter with the triple click trick. In Settings > General > Accessibility > Accessibility Shortcut, select Color Filters, then triple click the home button.

<comment><USER13> The same can be done on Android (Lollipop and above).

<comment><USER14> How do you do it in Android?

<comment><USER13> Settings > Accessibility > Direct Access > Grayscale (Tested on Lollipop - <USER2> vary on later versions)

</comment></comment></comment></comment><comment><USER15> Curious how they're planning on technically building the "whitelist apps" and "set grayscale times" features.

Are these possible given iOS's sandboxing?

<comment><USER16> No, definitely not. Apple recently restricted apps' usage of URL schemes to check whether other apps are even installed on the phone.

It's possible they could be doing something really esoteric with an enterprise app (doesn't need to go through app review) or an MDM profile (can touch some deeper system stuff sometimes), but given that they're currently in the teaser email capture phase, I doubt this will ever crystallize into a real iOS implementation.

I think they're just trying to get some message out, which is fair enough. FWIW, you can always manually set your iPhone to greyscale in system accessibility settings, which they do point out themselves.

<comment><AUTHOR> The main point of this is definitely to start a "movement"

It's not about me or the app, it's just something that had a profound impact on my life and i'm trying to share that with everyone that might be struggling with this - that's why we include instructions to turn your phone gray natively. The app adds features that have kept some people from going gray even though they really want to (need phone for work and it's too much of a hassle to go menu hopping / navigation apps arent the best in grayscale etc).

</comment></comment></comment><comment><USER17> I did the native version of this after someone mentioned it in one of the general articles on phone addiction that have been making their rounds on HN since the start of the year. So far I don't feel like it has had much of an effect. I've only noticed two direct behavioral changes for me so far:

1) It is forcing me to wait to watch YouTube videos until I get to a computer because I want to see them in color. That seems like it should be a big gain, but I still find myself scrolling through my YouTube recommendations anyway. Habits die hard I guess.

2) It is also delaying my reading of the couple of web comics I follow since, again, I want to see them in full color.

So I guess my phone usage overall has dropped considerably since YouTube takes up most of my time. I'm already off Reddit starting a couple of months ago and I've been off of Facebook (except Messenger) and Twitter for over a year. So maybe I'm not really the target of all of this, but I definitely spend more time than I would like on YouTube.

I also made a change to my settings so that my phone screen no longer wakes up when a notification arrives. So it is less distracting when sitting on a table.

In addition I saw a couple of other pieces of advice on here to curb phone use: One of them mentioned putting only fast utility apps on your home screen and removing notifications that don't come directly from people (basically every notification except for personal e-mail, human texts, and Slack messages I guess?). I haven't tried either of those things yet but I'm definitely considering it. They both require a bit more thought and planning than simple settings changes.

In regards to the site linked, I have only one additional piece of input: Please stop with the scroll jacking. This is a well known web design anti- pattern. I don't understand why this fad has persisted as long as it has. It literally feels like the site is broken when interacting with it using a click wheel.

<comment><AUTHOR> Website creator here, thanks for the comment! I do recognize the hate for scroll jacking, however it was the only way for me to set up the website with that effect, do you know of another way? I'd love to make a change (i'll be honest, i didnt know scrolljacking was something that was so despised)

Looking forward to your comment!

<comment><USER17> Hey thanks for your response!

Please note that this response is only in the context of your home page desktop design on Firefox. I'd need to spend some additional time doing analysis on mobile and other browsers.

In my opinion, the main thing you want to do is not change responses to the user's systems native controls. This is an essential part the principal of least surprise - [https://en.wikipedia.org/wiki/Principle_of_least_astonishmen...](https://en.wikipedia.org/wiki/Principle_of_least_astonishment)

In your case, my main problem with the design is two pieces, my scrollbar is missing until after the slide show and the animated pieces of the slide show don't move using the same "physics" principals as a bare html page in the same browser. The lack of a scroll bar (I have an optional setting on so it is always visible if present) means that I don't expect there to be additional content on the page. Then when I do try scrolling, ot feels like nothing is happening at all and then I hit some invisible threshold and the page scrolls _for_ me. This feels a little bit like lag, which in any other case would mean that my computer is breaking. That's a bad feeling.

In most cases I would suggest a medium scale redesign - save the font choices, the colors, and some of the layouts but go back to the drawing board on the user interactions. However I know that designs like this continue to be popular and so I'm going to have to keep working on them. I've found that there are some decent compromises out there. So here's what I would suggest:

1) For the transition between the final slide (pip 3) and the actual page content drop the fixed animation entirely. That content should simply be at the bottom of the page the entire time.

2) For the transitions between the 3 images of Venice (or wherever?), I think you're going to need to do a bit of playing around. Ideally the largest object on the screen should move in direct relation (and with a 1 to 1 ratio) to the scrollbar without any delay. The absolutist in me wants to say that you should just place the 3 images in a stack and be done with it, but I realize that's not eye catching enough for the audience you're targeting. In your case one option would be to consider the "largest object" to be the horizontal scan line where one image stops and the other image starts. But the problem there is that you're still going to have to do significant scroll jacking to get that transition point to move...

However, I think you can get an effect like this using transparency or opacity settings and some complex positioning. You might need JavaScript for slide transitions after the first, but I would have to actually build the thing to figure it out. I'll think about it overnight and let you know if I come up with anything! (No promises though!)

Another option might be to use background-clip: content-box; for the transitions and then some JS magic in-between slide transitions to change which image is in the foreground and which is in the background.

The text at the bottom would continue to switch in a slide show style I think. You would have to try it and see.

If you want to preserve the delay between slides, you'll need to add a somewhat large visual element to the design that continues to move as the user scrolls even while the image stays in place, but in this case, I'm not sure if that will be necessary.

None of those solutions will completely remove scroll event listeners, but they will bring the experience back significantly toward being in line with normal system interactions.

This feeling of lack of control vs perfect control is something I look for in the video games I play. I've come to believe that it is the single most important part of game design for me. Games like QWOP and Getting Over It play with this idea intentionally, while historical successes like Mario 64 and Soul Calibur have made waves in the gaming world specifically because their controls are so refined and fluid.

Sorry I wrote so much! I appreciate the work you're doing with this site and I wish you much success!

<comment><AUTHOR> Wow thank you so much for the detailed response!

I've taken this comment back to my team and we're discussing our next moves now - I think the easiest and most immediate thing we can do is removing the scroll effect on the third screen to the homepage - hopefully that reduces some frustration for you (and i'm sure many others have felt).

Thank you for the kind words! Definitely trying to make an impact in the space :)

</comment></comment></comment></comment><comment><USER18> I don't quite get why this should work but I'm already enjoying it. Not for addiction, I'm not addicted. But it's calmer. I feel calmer.

<comment><AUTHOR> took the words right from my mouth haha (or should i say a reader) :P [https://blog.gogray.today/content/posts/calm.html](https://blog.gogray.today/content/posts/calm.html)

</comment></comment><comment><USER19> Looks interesting, but it seems to be a landing page to gauge interest with no app available yet.

Edit: To be clear, I set my phone to grayscale a little while ago, so I'm aware that's built in to iOS. I think the additional features that this app idea is proposing on top of that feature are great, but it seems like the app does not yet exist (and perhaps not possible with iOS's limitations).

<comment><USER9> They provide workable instructions for creating this effect on Andriod and iOS, as it doesn't require an app as such.

If an app does come out of this, it'll probably be more about setting greyscale for different other apps.

<comment><AUTHOR> you're right!

i give instructions for going gray on phones on the website, the app we're developing is desgined to make grayscale easier (whitelisting certain apps that is useful in colour, like google maps, etc).

</comment></comment></comment><comment><AUTHOR> thought this was timely to post due to the recent article in NYTimes about going grayscale for phone addiction

[https://www.nytimes.com/2018/01/12/technology/grayscale- phon...](https://www.nytimes.com/2018/01/12/technology/grayscale-phone.html)

<comment><USER20> Thanks for the explanatory article; just reading the linked site left me scratching my head wondering what the heck putting my phone in grayscale mode would have to do with "phone addiction".

I'm still not convinced it makes much sense, but at least it's not _totally_ random....

</comment></comment><comment><USER21> I don't know about the app, but following the instructions on that website I have just set my phone to monochrome mode.

I'm not sure it will assist me to use my phone less, because initially I really like it!

The main use for my phone is to read stuff; news, email and instant messaging. I don't use social networking on my phone (apart from Hacker News if that qualifies). I do use a 2FA app, but colour hardly matters there. I do also take pictures with the phone and perhaps that's the one potential drawback I can think of.

I find the monochrome look easier on the eyes and initially very pleasant to use.

<comment><AUTHOR> the app may work for you still, if you find grayscale is taking away your ability to take the photos you want - the whitelisting feature would turn it off when you're in your camera (without menu hopping)

<comment><USER21> I'd be happy to give the Android app a chance, as long as it's available to install from somewhere other than Google Play Store, which I don't use.

<comment><AUTHOR> i'm sure that can be arranged :)

</comment></comment></comment></comment><comment><USER22> TLDR: gray-scale reduces your phone usage, they're going to make an app for that, but they have instructions for doing it natively as well.

</comment><comment><USER23> Funny that their cure for Instagram addiction is to basically apply an Instagram filter to your whole phone. Where's the Gingham option?

<comment><USER24> Monochrome existed for some time before Instagram.

</comment></comment><comment><USER25> Setting my phone to gray scale didn't "cure" me from my smartphone addiction. But it did help. In particular, games stopped being fun to play.

I just finished up one week of only carrying an LTE Apple Watch as a smartphone replacement and it has been incredibly effective.

<comment><USER7> > In particular, games stopped being fun to play.

I'm on a GameBoy kick recently, so that statement stands out, to me.

<comment><USER25> Ah, fair point. The main difference is that the games I was playing were not explicitly designed for grey scale. If I had been playing on a GameBoy emulator, I wouldn't have even noticed!

</comment></comment></comment><comment><USER26> For Android

Enable Developer Options:

Settings > About Phone > Build Number (Tap 7-8x)

Enable Grayscale:

Developer Options > Simulate Color Space > Monochromacy

</comment><comment><USER10> Hm, what about going gray on desktop? Any solutions for windows?

<comment><USER10> If you have NVidia graphics, open NVidia control panel and set "Digital Vibrance" to 0% from here.

[0] [https://superuser.com/a/480524/125700](https://superuser.com/a/480524/125700)

</comment></comment><comment><USER27> How does one get the app? The whitelist feature would be game-changing.

<comment><AUTHOR> sign up for the beta! it'll be released soon :)

</comment></comment><comment><USER28> because no one ever watched black and white movies or tv shows...

<comment><USER29> Judging how it is impossible to watch a b&w movie with friends today, pretty much. If all my mp3's were shellac records, i would listen less, but value my time listening more.

<comment><AUTHOR> great analogy! It's not about all or nothing but frequency :)

</comment></comment></comment><comment><USER30> I have this thing called self-control and discipline. It doesn't cost anything except respect for one's self. Throwing technology and apps at character flaws isn't a long-term solution for anything and only feeds consumerism and materialism.</comment>


&q=helvetica - <AUTHOR> http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=helvetica

<comment><USER2> Didn't work for me at first, but once I disabled the "+1 button" feature from Experimental Search [1] it worked.

[1] <http://www.google.com/experimental/>

<comment><USER3> Even easier: Just do it in a Chrome incognito window

</comment></comment><comment><AUTHOR> Funny how the best pranks are usually the simplest.

</comment><comment><USER4> This should probably have been the top result:

[http://www.wireandtwine.com/store/products/subtraction- hel.h...](http://www.wireandtwine.com/store/products/subtraction-hel.html)

</comment><comment><USER5> This is hilariously awesome!

</comment><comment><USER6> Can we avoid linking every April Fool's site to HN?

</comment><comment><USER7> So... for those who missed it, what happened?

<comment><USER8> * { font-family: Comic Sans MS !important; }

</comment></comment><comment><USER9> and it works for comic sans!</comment>


Postsingular by Rudy Rucker - Free Sci-Fi Book about Nanobots - <AUTHOR> http://www.rudyrucker.com/postsingular/postsingular.htm

<comment><USER2> If you can find it, 'the hacker and the ants' is also pretty good.</comment>


Ask HN: Tips/Advice for Starting new remote job - <AUTHOR> Inspired by another post.<p>Very interested in understanding best practices for remote onboarding. I've read through things like the gitlab handbook. What have been your positive experiences and exercises for starting a position remotely? What has surprised you as being valuable? do you begin to socially network with employees in a remote environment? <comment><USER2> Thanks for reading the GitLab handbook! We're building out the all-remote sections, including a new section on onboarding within learning & development: [https://about.gitlab.com/company/culture/all- remote/learning...](https://about.gitlab.com/company/culture/all- remote/learning-and-development/)

Regarding social interactions while remote, check out the informal communication page: [https://about.gitlab.com/company/culture/all- remote/informal...](https://about.gitlab.com/company/culture/all- remote/informal-communication/)

I've started to do lightning interviews with GitLab team members to give insights on questions like these. Our first few snapshot interviews are in the remote playlist on the GitLab Unfiltered YouTube channel: [https://www.youtube.com/playlist?list=PL05JrBw4t0Kq7QUX- Ux5f...](https://www.youtube.com/playlist?list=PL05JrBw4t0Kq7QUX- Ux5fOunQotqJbECc)

If you have more questions, check out our Pick Your Brain submission: [https://about.gitlab.com/company/culture/all-remote/pick- you...](https://about.gitlab.com/company/culture/all-remote/pick-your-brain/)</comment>


Designing Distributed Systems: Patterns and Paradigms for Scalable Services - <AUTHOR> https://itbook.store/books/9781491983645 <comment><USER2> This is an advertisement for an O'Reilly book.

Maybe it's a useful and interesting book for this community, but do we really want to see a brief three paragraph advertisement for a book?</comment>


FiftyThree, maker of Paper and Paste iPad apps, acquired by WeTransfer - <AUTHOR> http://tech.eu/brief/dutch-file-sharing-company-wetransfer-acquires-fiftythree-the-maker-of-the-popular-paper-and-paste-applications/ <comment><AUTHOR> FiftyThree's announcement on their blog is here: [https://medium.com/fiftythree-space-to-create/we-are- joining...](https://medium.com/fiftythree-space-to-create/we-are-joining- wetransfer-aa5323f003e6)</comment>