Hacker News new | past | comments | ask | show | jobs | submit login
Modern Web 101: From Free Software Fetishism to Free Web (nexedi.com)
86 points by cnnx on Oct 19, 2016 | hide | past | favorite | 66 comments



- I like my files stored where I have access to them and no one else does (local filesystem storage)

- I like being able to share files with other people, when I choose to (Dropbox, GDrive, et al, possibly in an encrypted compression format)

- I like instant installation. I dislike software changing under me without my control, being forced to trial-and-error my way through browser choice, not knowing which build of the software I'm running, not knowing how my experience may differ from someone else's (AB testing), and not having my data stored primarily on my local device. (websites)

- I consider remote storage useful, but not 100% reliable, so I won't use it for something that must work (cloud storage)

- I consider remote data processing harmful, more often than not. Not only is it doing things to my data that I have no control over, but they aren't even visible to me, even in the sense of "well, technically you could disassemble the binary and reverse engineer the algorithm..."

- My use of a platform shouldn't depend on one vendor. NaCl depends solely on Google. Apparently, NaCl and Pepper are "destaffed"[1], and I think there was a story the other day about things on the Chrome web store moving away from being available outside of ChromeOS. It's not a platform that I'd care to really invest in, right now.

The less important a particular task is to me, the less I care about the points above. For example: most of my modern games are perma-rented from Steam, auto updates are on, and my saves are stored "in the cloud".

[1] https://bugs.chromium.org/p/chromium/issues/detail?id=239656...


If I understand the article correctly, it's saying that Free Software developers would better be advancing free software ideals by developing applications for the Google Chromebook platform. I say Google chromebook, not "The Web", since all the author's examples are NaCl or apps from the Chrome web store.

I don't think this is really any different than Free Software developers writing programs for other closed platforms like Android, iOS, macOS, Windows, etc.

Sure, it's probably better for the users to have a free software alternative they can use, but in the end writing free software for these platforms just ends up adding more value to the platform, and reducing the incentive for the user to switch to a more free software platform like GNU/Linux.

The other message I'm picking up from the author is that free software developers are not as interested in web technologies as they should be. I'm not sure that this is true. There are a large number of javascript projects on Github, for example. Also there's quite a large amount of free software projects covering the backend of web development as well. Really the problem is hosting the service, when there's no money involved. For this, I think some kind of distributed effort is key, each user "pays" for the service by helping to serve it to other users.

Maybe the author is speaking about just user-facing applications, not frameworks, and infrastructure projects? This is also a problem with free software desktop applications, not just the web.

I guess I would be considered a "free software fetishist" by the author. I like C, I like vi, I like Linux, I like POSIX, I like CLI, and I don't really like the web that much, especially for applications. And I don't really see anything wrong with that. Let the people who are interested in the web work on it, and I'll work on what I'm interested in.


I'm pretty sure it's satire with an interesting intro to chromebooks world.


Or some one hasn't been taking their meds


My personal reasons for "fetishism":

- Control: I can see the source of all these old tools, and copy/modify them if I wish. I don't have to rely on my "tools" being hosted on a black box in the ether.

- Privacy: Why would I want to use the internet to host all my files, to edit all my files, or to search through my files? Just, why?

- Speed: I am much, much more productive with emacs/vi and the command-line versus anything else I have ever tried. The only exception might be a desktop (or web!) app tailored perfectly to a specific custom purpose. But if want to talk about apps in "general"? Maintaining umpteen tabs in a browser all the time? Needing to USE a browser?

It reads like you're asking developers to turn away from some of the most lauded and evolved systems and tools, so the reason needs to be incredibly compelling. Why?

Now for the (largely) emotional aspect:

- We love the command line and our extremely powerful text editors. We believe the "future" should be built on those concepts, or at least built in a way harmonious with their continued use and evolution.

- I don't like browsers. But many do, so we can ignore this point really.

I really, really, REALLY hate the direction of companies like Microsoft. I ditched Windows for Linux a couple of years ago after Office 360 made plain exactly the direction they intend to push us: all our files will be hosted somewhere outside of our full control, and ultimately our APPLICATIONS themselves will be hosted in a similar way.

Some people are strongly opposed to a future of "dumb terminals" and/or "appliances" and are instead strongly in favor of general-purpose computing as the future. See: http://boingboing.net/2012/08/23/civilwar.html


He is not advocating Google Chromebooks as an alternative, he is trying to get you to understand the value and experience you and not tech-savvy users can get out of it. After you experience it for 3-6 months, create your own FOSS equivalent of the experience Google and Chromebook have to offer. Now combine this with open hardware (we have software freedom but we aren't truly free until we have open hardware) such as the RISC-V ISA. Traditional desktop software doesn't appeal to the not tech-savvy, but the web will.

Take a look at Synology's software (although closed source), its a great UX over a Linux environment, all done via web. https://www.synology.com/en-us/dsm/6.0


The content about the Free Web was interesting. I wasn't aware of all the things that Chrome was capable of, especially with NaCl, something I've only briefly heard about. The Free Web movement seems like it will become more and more important as people and software migrate to the browser.

Yet instead of focusing on education, the primary purpose of the article seemed to be attacking me. Somehow being a user of vim and git on a POSIX platform makes me a Free Software Fetishist. Somehow not using open source in every part of my development stack makes me an enemy of free software. This article calls me a fetishist and tells me to open my mind to new ideas, then tells me that there is One True Path. The Free Web coming into being does not devalue the software that came before it.

An important part of free software is community. The author would do better with a helping hand rather than a fist to the face.


>Yet instead of focusing on education, the primary purpose of the article seemed to be attacking me.

Now you know how most developers of proprietary software feel about open source evangelism.


What he's trying to say is: Look at all the people who are almost exclusively on the web? All the people who will grow up going to the web first. A web built by those who like free software.

They will want web solutions, but they won't become free software contributors if they don't have the chance. If we don't build the projects/solutions. So he's asking you to experience how they view the web so you can develop the solutions to pain points you only understand by experiencing the web like that.


If they don't care about who controls their data then getting them to care about who controls their software is a lost cause.


Just look at our selves. How did we learn to care? Mostly for me it was cause they explained the problem and had an alternative. Most of the times it wasn't as good, but at least now it was a choice. That choice maybe doesn't always exist for a web only world.


Not sure if this is satire? Am I understanding correctly that he's advocating moving everything to 'web applications' because somehow it'll be more 'free'?


The majority of users use web applications. The majority of web applications are not free software. You can conclude from this that the majority of users don't use free software.

The point of the article is to think more like the average user. They will trade off convenience at the cost of privacy and control if that is what it takes. However if you offer them convenience, privacy and control without a tradeoff by creating more free software for the web they are more likely to use free software.


What's the point of blabbering about vi and emacs then? Those are fundamentally local tools, why would one ever want to move those into a 'web application', whatever that means in the context of a text editor?


Yeah I'm not he ever said why adopting web technologies would be better, except by saying that using cli tools is fetishism. (But web technologies aren't I guess?)


sometimes the CLI is the correct tool for the job and its interesting that Microsoft is going down the cli route with powershell


The author has a decent opening point about how we Free Software Enthusiasts need to be aware of the world in which regular people are computing, otherwise we'll never be able to reach them.

If my understanding of history is correct, the GNU utilities were better than the proprietary UNIX ones: they had sensible defaults, or better features, or DWIMmmy behaviour (`find` instead of `find .`, anyone?). GNU basically pulled an embrace, extend, extinguish on proprietary UNIX tools.

If Free Software "fights for the users", then it needs to go to where the users are, and that's the web. It needs to be better in a tangible way, and show how the freedoms it provides can help the users. Avoiding DRM and other user-hostile behaviour is a start, but beyond that I don't know what it should look like with today's web stacks, but I do believe that's the sort of thing we have to deliver.


>If Free Software "fights for the users", then it needs to go to where the users are, and that's the web.

To what extent?

Just because a mass of users are somewhere, doesn't make that environment the right place for free software. But I'm not saying it's a wrong place. But it's not the only possible place. A popular environment might be by its nature unsuitable for free software, and free software developers would be mistaken to compromise their development by wholeheartedly embedding themselves on that platform.

What concerns me about the web:

- the trend has been a move toward centralisation, content silos

- DRM in the spec now (EME)

- bloated by necessity (as browsers need backward-compatibility)

- it's hacky, as a document-retrieval system retrofitted into an application platform

- people think it's beyond criticism, probably because of the notion that it's The One Open alternative to iOS/Android ...

(cf. https://www.christianheilmann.com/2016/10/05/can-we-stop-bad...)

Despite all that, I still like the Web and want it to continue existing. And if I want a better system, I need to put my money where my mouth is and work on helping something else become a real practical alternative...


Nothing you said is wrong, and I don't really like what the modern web has become. But I can't see how you'd build a better platform, then build something that drives adoption of that platform while there's so much dev attention on the web. Maybe it's possible, and maybe I just lack vision.


Consider that, to do a new thing, we don't need a cohesive platform that replaces the whole of the web. We can leverage the web, e.g. use it to distribute native applications, or scripts that run on some new interpreter.

I like the look of the Red language. The goal there is to make a more modern, open source version of Rebol, which has aspects that tried to directly compete with the web some years ago.

I suspect the successful modern version of a Red-based open, distributed app network and hypertext document system will have more of a symbiotic relationship with the existing web.


Actually it was all about the money.

As long as developer tools were available for free (as beer) on UNIX, no one cared about GNU.

GCC was largely ignored until the day SUN decided to split Solaris developer tools into a commercial SDK, and other UNIX vendors followed along.


The author never defined "Free Software Ideals." Maybe I've gone off the deep end, but as somebody who's tried very hard to exclusively use free software since I was about 10, I don't think (s)he's coming anywhere close to promoting them with this article. Have I gone crazy?

Edit: OK, so I read further. Their end goal appears legit, but damn, that introduction has the opposite effect as it should. Or, perhaps, their target audience is closed-source users who like to make fun of those of us who have already escaped?


I think the crux of the matter is that the general population don't really need much computation. They just care about meaningful data, especially their own data.

As a programmer and a technophile, computing is the first tool I use for anything. New pin? Just `tr -cd '[:digit:]' < /dev/urandom | head -c 4` and write it down. It would be more difficult for me to find a website that generates pin numbers (and it would be less secure).

I personally value the ability to freely compute. That's why I love my CLI and my text editor.

You can't easily compute on the web because the web was designed for documents (data), not computation. Maybe that's the real problem here.


I don't get it. Either it's some weird satire or most ridiculous article I've seen in a while.


Why Chromebooks? I'd rather use Linux straight on a normal computer (whether desktop or laptop). ChromeOS doesn't sound at all like a better way FOSS wise than let's say KDE Plasma.

And I strongly disagree that privacy should be traded for doing things "the Google way", even if for a time.


This article seems terrible and confused and thinks it makes a point about terms by clearly not understanding the point of any of them. I'm pretty sure the author has never read a word Richard Stallman wrote.


I posted the article for a good debate, which I seem to succeed. Though I'm not the author and we don't share positions, I've never read an article by RMS either, only about him, and attended a lecture by him. So please, recommend a good article by Richard, which relates to this article!



Seems weird, maybe I'm missing something, but it's wanting you to free yourself from Macs / Windows... embrace free.... then immediately tie yourself to google?


It's a training phase to experience what the modern web can do.


You don't need a Chromebook and Google to do that. You can run all that junk in a web browser too, and still have a decent machine to use for serious work.


I don't get it... Let Google completely absorb my personal data for 6 months and seriously hinder my workflow - Because?


Kernel of a decent point here buried by pure weirdness of what he advocates as an alternative.


Foreword : For someone whom I have met much more time lobbying/selling the virtue of Free Software to the administration to have his private owned companies make benefits from the public money, it is the kind of shaming on Free Software devs I take a moral stance in NOT accepting. I might have heard him on the phone asking our company to rig a market by agreeing on price while on an open invitation to tender. So, I have a strong beef against patronizers that are worth being patronized.

I still am not convinced by modern web development, not as a free software devs, but as a user.

I hate above all ... the design and UX.

I cannot convince myself after years of experiencing CLI as a very convenient way to read infos and automate my task that web is better.

web is about making wrapper around scripts. It is like an animal who has 10 kg of skin for 1kg of muscle. It is RIGID as a dogma. You cannot pipe web applications, unify them, have a consistent information. It is pre-historic IT. I even find curses more interesting.

OS have authentication built-in often done right, but each an every websites recreate their own poorly. Isn't it a waste of effort and duplication?

What is more troubling is the horrible lack of consistency in the presentation and method for getting information. The strength of terminal is : consistency, readable fonts, consistent layout/navigation and fast access to information. Scrolling the web for information pisses me off. I love man, perldoc, pydoc. The web is as if you had one kind of man per application, one new ncurses, keyboard shortcut, files per apps. Web is inconsistent and would deserved to be questioned as a lingua franca of information technologies.

There is no added value in disrupting a user each an every time he/she does the classical task of ITs: reading/writing.

There is no consistent handling of most keys like copy/paste/tabs.

There is no «typography» of the web. Information deserves consistency.

We are in 2016 the web is resulting in multiplying the manual copy and degradation of sensitive information.

I belong to a country where accents in surname are part of our identity. Most of the web sites still handle this poorly.

And to someone telling me how to exercise my own freedom, I would answer to the author of the article the worlds of another free software actor in France (the authors are french btw) I do What The Fuck I want, don't come patronizing me about how I do exercise my own freedom, especially my freedom of thinking.


What do you use in order to read infos via CLI ?


wonder of CLI you can call firefox, but from firefox, you can't have a shell, lol.


OK, so all this confused discourse is to sell their stuff.

And this:

> We normally hire through traineeships lasting six to twelve months.

This sounds illegal. Possibly for 2 reasons.


What makes it sound illegal? Genuinely curious.


Here were I live You it's always max 3 months


Paid or unpaid?

I don't think unpaid internships or traineeships are legal here. But a paid traineeship is essentially a job contract for a limited duration project -- to wit, "the malineen project".


There is a paradox about free software users:

Free software users are often talented at making privacy-limiting closed source /(web)?/ applications, thus limiting the freedom of the other users. Example: Zuckerberg & facebook.

This makes me wonder: How to lead a successful programming career without limiting other users' freedom?


> This makes me wonder: How to lead a successful programming career without limiting other users' freedom?

Work for a free software company. SUSE and RedHat are the classic examples, though many others exist. [ Full Disclosure: I work as a free software developer at SUSE.]


I don't understand why people buy chromebooks to then enable the developer mode which can wipe your data if you are careless and then install a different operating system or crouton instead of just getting a equivalent laptop with windows and then do the same.


I thought Chromebooks were like the MacBook Air -- very thin/lightweight.


My first experience with "the cloud" was around year 2000 when saving a rather large school project, and after the semester when the next patch of students was gonna continue the project, the hosting company was gone ... We did however manage to find the project on the HDD of the computer that had been used.

When going through the apps recommended by this article, several of them are abandoned, and some of the reviews says "I lost all my work".


This seems like seriously flawed logic, we give up our tools (which are used to build Linux and ChromeOS) so we can build a more "free web", using essentially proprietary / centralized systems in some convoluted way?

I think we're better off putting our faith and efforts into technology like IPFS if we want to build a more "free web". This seems like the wrong direction to in.

It seems Google is turning into a privacy disaster, I want less of it in my life, not more.


This could lead somewhere, but I think he's shooting himself in the foot by dissing vi and emacs. That's like telling a developer his girlfriend is ugly and then trying to sell him something.


Not all developers are found of vi and emacs.


Indeed, I prefer vim over vi.


I'm tempted to say you have the wrong idea about developers' relations to their editors, but then, you probably have the wrong idea about girlfriends. I mean, you are objectifying girlfriends. Anyway cli programs could just as well run in the browser, etc.


If we were talking about anything other than vim or emacs, then yeah you'd probably be right.


The only way Chromebooks are even slightly usable for Real Work is over SSH and Mosh. I speak as a chromebook user (my school provides them): they're awful for developers. Almost useless.


How many layers of irony are in the article?


As opposed to any aspect of web development, UNIX has the nice feature of being somewhat well-designed. If we're going to try to make a universal content platform, we should at least wait until someone does a good job of it. Javascript and HTML are really poor choices for the majority of tasks.


> UNIX has the nice feature of being somewhat well-designed.

Some people would disagree.

http://www.vbcf.ac.at/fileadmin/user_upload/BioComp/training...


Worse than the modern web, though? Unix is at least designed for what it's used for (mostly), and while X is an absolute mess, it was also designed to do what it does.


The sad thing about UNIX fetishism is buying computers able to be 3D graphics workstations, use them as twm was the latest revolution in window managers and work as if one just had multiple PDP-11 instances running simultaneously.

In any case POSIX doesn't allow for much more anyway.

As for the modern web, it should just fade back to being the old web with HTML/CSS and leave interactivity to native applications.


I agree completely on the modern web.

>use them as twm was the latest revolution in window managers and work as if one just had multiple PDP-11 instances running simultaneously.

I'm not entirely sure what you mean: please work on your grammar.

You seem to be saying that we buy hefty workstations, and then run TWM on unix, and use them as a bunch of PDP-11s, and that this is bad. I'm not sure I agree on any of those points.

First off, a lot of us like lightweight WMs: You don't need the glitz, so why spend the cycles and processing power on it, when you could spend it on, say, your actual 3d graphics applications? And for many of us, they're just pleasant to work on.

Secondly, the terminal is an acceptable, and even good, UI for many purposes.

Finally, most unixes support OpenGL, so when you want to do that heavy graphics work, you can.


It is bad because the UNIX culture just froze in time.

Computers with the hardware computing power capable of making Xerox PARC researchers dream of new worlds, are bought and used exactly the same way as if they were a Sun-3 workstation.

Then Bret Victor does a presentation and everyone is amazed what proper desktop programming environment should be capable of.

No wonder, that the majority of the developers, which actually cares about the overall desktop experience has moved into macOS or back to Windows. Which are also the biggest communities producing applications for mobile devices.

As Rob Pike, a person that might know one or two things about UNIX, puts it

"We really are using a 1970s era operating system well past its sell-by date. We get a lot done, and we have fun, but let's face it, the fundamental design of Unix is older than many of the readers of Slashdot, while lots of different, great ideas about computing and networks have been developed in the last 30 years. Using Unix is the computing equivalent of listening only to music by David Cassidy."

-- https://interviews.slashdot.org/story/04/10/18/1153211/rob-p...


In some ways. I'm willing to accept that there may be better paradigms out there. However...

>Using Unix is the computing equivalent of listening only to music by David Cassidy.

Unix can be used as a base for many things. I've written code in a Smalltalk environment written by Alan Kay, Hacked on Scheme and Lisp code inside of Emacs (not ideal, but lightyears ahead of the standard write-compile-test cycle that plagues the industry), written code in an entirely visual programming language, and many other things, all inside of Unix. It may not be the best system for supporting such things, but it works, and that counts for a lot.

I may listen to David Cassidy, but that doesn't mean I can't put on some Daft Punk every once in a while.

The other matter is, of course, that you and Rob Pike wouldn't agree on what is a better OS: Pike's vision likely hews closer to Plan 9, a system that you would likely find too close to Unix.

At the end of the day, Unix can kind of suck. I mean, I like it, I'm by no means a Unix Hater, but it has issues, it's not perfect, and we should look at alternative systems in the future. But it works, and it makes most of the people happy most of the time. That's something its competitors still can't really say. And while Unix has (to some degree) learned from what those competitors do well, something that many of its competitors didn't really do (save Windows (Mac is actually part of the Unix family): While I don't really like PowerShell, I can't deny it's an interesting idea, and potentially a good one).

At the end of the day, all systems suck. Unix sucks more than many, but perhaps less than most.

If that was contradictory and incoherent, well than so are my opinions on Unix, and OSes in general. Also, most of what I write is pretty nonsensical anyways, so I'm not sure how different this is anyways.


> The other matter is, of course, that you and Rob Pike wouldn't agree on what is a better OS: Pike's vision likely hews closer to Plan 9, a system that you would likely find too close to Unix.

Actually we are quite in sync there, as the latest version of Plan 9 was actually Inferno with Limbo as the main programming language for the user space layer.

And Plan 9, specially ACME, has quite a few Oberon influences as well.

Right now, the only thing I mostly disagree with him are some of the design decisions regarding Go.


Really? I'm quite shocked... Oh. Wait, it's because I keep confusing you with lispm. He would find plan9 lacking, you wouldn't. This makes sense.

bangs head on wall

ACME was cool. It's not quite enough to make me switch from emacs, especially stripped from the plan 9 environment, but it's enough to make me drool with envy, especially over the structured regexes and powerful piping tools.

Well, I know what my summer Elisp project is.

>only thing I mostly disagree with him are some of the design decisions regarding Go.

Frankly, I'm not shocked. Nobody I know that has similar opinions to you likes Go, and I can understand why.

As a Schemer, I can respect minimalism in design: The question is whether Go chose the right ideas to implement/not implement. The jury is still out, but it seems to be leaning toward no.


>If we're going to try to make a universal content platform, we should at least wait until someone does a good job of it.

I don't think that will happen in my lifetime. We have to live with what already have. Yes they are bad choices but everyone pretends it's the best we have because it's crossplatform and you can just type a link into your address bar without installing anything. These two things are great for both the developers and the users.


Does the author mean "Free Software" as in Freedom (free software movement)? Doesn't seem so.


We have laptops to overcome the fact we don't have electricity all the time. How web-only people will overcome the unreliable network?


TL;DR: socially fun "one click" JavaScript free software development




Consider applying for YC's W25 batch! Applications are open till Nov 12.

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

Search: