Ask HN: Would you pay for beautifully designed Linux software? - <AUTHOR> Have we gotten so used to free (as in price) software to the point that it's become inconceivable for us to buy native linux applications ?<p>Do you think this prevents developers from building good looking, easy to use applications on the platform ? I'm curious to know your thoughts <comment><USER8> I've paid for IntelliJ, GoLand, and KSP, and I know many others that have, too. I don't use Linux because I'm just too cheap to pay for an OS, I use it because I tried paying for Windows and thought it sucked. I'll pay for good stuff, unless it's doing obvious things to lock me in, if there's high risk because of DRM features, etc.

<comment><USER9> +1 for IntelliJ here! I switched to Linux exclusively and I used Atom for a little while. It didn't take too long before I ponied up my own money for IntelliJ products though. I care mostly about the features and reliability of the programs (no random crashing) but I also appreciate that they look and feel newer than the mid 2000's.

</comment></comment><comment><USER10> If you're talking about superficial visual stuff then no, absolutely not. I would actually prefer it if people spent less time talking about the latest Ubuntu desktop wallpaper or whatever.

However I do really appreciate the amount of effort that's gone into improving the usability of Blender and Gimp in recent years, and have given both projects money. I hope they use my money to focus on functionality, reliability, usability etc - I don't care what they look like.

</comment><comment><USER11> Maybe I haven't been following Linux closely enough?

I'd happily pay for a Linux-based laptop that's on par with a Mac. If it had an app store, I'd _consider_ buying some applications.

The thing is, on a day-to-day basis, almost all desktop software that I use is either free, or has a good enough community version. I very rarely come across something that's useful enough that I pay for it.

FYI: What do I pay for? MakeMKV, TurboTax, VMware Fusion, and a disk recovery application.

Here's the challenge: When I think of Linux, I just assume that everything is 100% open-source (and thus free beer) because I assume that every Linux user is a GNU fanboy and wants to compile their own software by rubbing two sticks together. Maybe my biases are outdated or wrong?

Anyway, when your users plan to compile their own software from source, half of the value of paid software is gone! (Commercial software is more than the source code, BTW)

Again, I'd happily pay for a Linux-based laptop on par with Mac.

<comment><USER12> Yes, I think you haven't been following Linux closely enough. Ubuntu, at least, has been very aware of this problem for years now. Their "software center"/package management is probably close to as seamless and mature as the Mac "App Store". The caveat remains that many common paid apps (e.g. video games, Microsoft Office) are not compatible with Linux, but that doesn't seem to affect you.

<comment><USER11> I use LibreOffice on my personal computer. (Office at work.)

It's "good enough" for me, but if I was a very heavy user I'd consider paying for MS Office.

</comment></comment></comment><comment><USER13> I would pay for its development but the end result must be free software. If we don't then I think we're being disrespectful to the developers who's work we're building upon but I might be alone in that opinion. I hold that opinion for Linux but not the web. It feels somewhat hypocritical though.

<comment><USER14> You are not alone with this opinion. It has to be free software (free speech, not free beer).

<comment><USER15> I'm in this boat too, having bought lots of software but been burned by products disappearing/being neglected.

In buying sftware, in my experience, the real cost is in my time learing/mastering it. The ultimate example here is a text editor. If sublime was free as in speech I would still be paying to use it. As it is, I lost confidence that team could maintain it long term and have switched to Atom.

What good models are there for free speech consumer/individual developer software to actually make money?

<comment><USER16> In my experience of the last few years working as a senior software engineer in both public and private research institutions, one way to do free software development professionally is this: Find a niche in a research field and try to work in either research labs, scientific computing departments or get a maintenance grant from a foundation (e.g. CZI). Maybe I am lucky, but it seems that FLOSS is generally welcomed and the trend goes to more support. It also provides you ways to communicate on conferences, etc talking directly to many users (researchers).

</comment></comment></comment></comment><comment><USER17> As someone who has bought applications for Mac and iOS, and also donates to FOSS projects, I would certainly buy software applications on Linux if they looked better and had a good user experience. I really don't want to deal with hand editing config files and running shell commands to get things to work, because while I can do those, I cannot have a sustainable system I can pass on to others who're just non-technical common users of software.

I think Linux itself, and many applications on it, don't look great because the developers behind those are highly technical and ideological people who can, and do, cater to other technical and ideological people. They seem to think of UI and UX as wasteful things over mere, and many a times complex, functionality (they probably also believe they're good designers who don't need help from UI/UX experts). Even larger projects don't spend enough time or money to use better fonts, design better layouts, use nicer color schemes, design better user experiences, etc. (one glaring example of this is LibreOffice).

Stepping outside Linux while remaining on free software, Matrix is spending time and money on improving UX because the people behind it realize the importance of it. Within the Linux world, the attitude seems to be more of users being expected to qualify to use the system - "the users are capable and will figure it out" seems to be the background thinking.

Distributions like ElementaryOS have tried to charge (or accept, depending on how you see the website) money for more beautifully designed systems than you could get out of the box elsewhere. If larger companies take such an approach or even adopt some of the niceties from such distributions, the Linux world would be much better off.

<comment><USER18> I agree with your point for software in general. The right fonts and spacing could pimp up a lot of software if developers put effort in it. But...

> one glaring example of this is LibreOffice

Compared to MS Office? Excel yes, maybe PowerPoint. All other programs are inferior by now.

5 years ago I would have agreed MS Office to be far ahead in functionality and design. I use the 365 version and it is just terrible all around. And users fail even harder to create structured documents than 10 years ago. And helping them is far more difficult now because you just don't have the patience for ridiculous UI quirks of word processors anymore.

Google Docs is better than Word and it is extremely simple, but uses classical design philosophies. It still uses a sensible color palette and a good font. Not that I want to advocate Google too much right now...

<comment><USER17> I primarily use Calc from LibreOffice for all my personal stuff. And I find the fonts and layout to be unsatisfactory. Having nicer displays with higher resolutions makes it look even worse (this is on the Windows version; the Mac version seems to look better).

</comment></comment></comment><comment> grumpy-cowboy It depends who is your target audience. For me, TUI interfaces (Text UI like Weechat, Neomutt, Cmus, ...) are beautiful and easy to use. They are straight to the point, keyboard based, extremely fast, low on resource usage, ... I'm so much more productive on this kind of interface than GUI/mouse based ones.

GUI tends to be slow, buggy, unresponsive, less configurable, heavy on resources, ... So much code required to manage GUI interface compared to code doing real business stuff. So much wasted clock cycles.

I have a laptop with 64GB of RAM but I don't want to waste this RAM to display "beautiful" GUI apps. I need it for things more useful like VMs, processing big files, ...

I want to be productive. Not wasting my time with the latest UX "experts" enlightenment on what a "modern/futuristic" interface should look like.

BTW, Get off my lawn :P

EDIT: For your question... Would I pay for a more beautiful app? No. Would I pay for a software that have features I need that are not already available in software I use? Yes (don't care about how beautiful it is).

<comment><USER19> I generally agree with your sentiment, but I'm curious... have you noticed buggy/noticeably slow behavior on "beautiful" GUI apps with 64GB RAM?

</comment></comment><comment><USER20> I feel like I've been burned by too much for-pay software on linux being super fragile, hard to get running outside of a very specific system configuration, incompatible with the rest of the ecosystem, impossible to integrate into normal workflows, etc. Speaking extra cynically, on linux, "good looking" seems inversely correlated with "actually works", too.

I suspect the incentives in software sales just don't support what makes linux environments actually worthwhile to use.

I'm also cheap as hell, ymmv.

</comment><comment><USER21> I'll pay for software that solves a problem I have, and that's functional. Ideally it uses the platform GUI toolkit (GTK/Qt), isn't a webapp, and isn't a subscription.

</comment><comment><USER22> "beautifully designed", "good looking", and "easy to use" are three very different things.

"Beautifully designed" is not important to most users unless they get the source code and need to make changes or enhancements.

"Good looking" is nice, but hard to define depending on what kind of application it is, especially on Linux. What does it mean for a server daemon to be "good looking"? What does it mean for a command line tool to be "good looking"?

"Easy to use" is very important to most users, but is also rather subjective depending on individual user preferences and experience level. For example, I think vim and emacs are both "easy to use" because I have years of experience using both for various tasks. YMMV.

Most users value utility, "easy to use", and "good price" when it comes to paid software:

1) Utility is essential because if the sofware is not useful then what is it good for?

2) "Easy to use" is important, but subjective. Know your intended audience and design to meet their needs. Seek user feedback early and often to tailor your design to match the user's expected ideas of "easy to use".

3) "Good price" varies based on the user expectation and the value proposition that you offer. If the software is extremely useful (high utility) and easy enough to use, users will pay for it.

Ask yourself "What does my software offer that is worth paying for?"

</comment><comment><USER23> I haven't thought about this before, so it might be my thoughts would evolve further if I thought about it more. But after I considered it for a moment, I would pay for it if I got the source with it, and a license to publish that source under a BSD-Like License if support for it was going to end.

As others have mentioned, the idea of it getting dumped when it turns out it isn't worth the effort, would put me off.

If the price was low enough, and the software simple enough, I might be willing to relax some of those conditions. For example, I have payed a couple of bucks for a simple pixel graphics editor, for which I was ok with the prospect that this is a toy I play with a little and then would likely drop.

</comment><comment><USER24> Where does this misconception come from where people think Linux users don't pay for things? If you provide a decent tool that kills pain and doesn't cost an arm an a leg, we will pay the money. Especially if there's no good alternative out there. I've yet to come across a good mail/calendar/combo that works well. Gnome calendar/contacts/Geary is getting there but it's still far off. Same with office suite. If Microsoft released Office for Linux without charging me over a million pound per second of usage, I'll gladly shell out the extra money to have decent office suite.

<comment><USER25> cheapest office is like 5€ per month for whole office package? How can that be too expensive?

<comment><USER24> > per month

I want software that I know, not that I lease. €5 per month means if I stop paying for reason x/y or z, I cannot use Office any more.

</comment></comment></comment><comment><USER26> While I'm sure there are exceptions, I think it's accurate to say that Linux users would prefer function over form. I'm not sure you can make a generalization about what Linux users will buy: some use Linux because they cannot afford anything else; some use it because they believe that non-free software is immoral. On the whole I would say that the macOS and iPhone users place a premium on the aesthetics of an application more than Windows, Linux, and the dozen or so FreeBSD users combined.

<comment><USER27> Right, that's what struck me about this question too. It is not about "beautiful design" when it comes to linux software, it is about being functional and that includes being on top of all of the fragmentation when it comes to linux desktops, window managers, distributions, and libraries.

It is hard to justify paying for something when you have to spend an appreciable amount of time getting it to work in your set up. Working well out of the box and consistently with updates is the first step.

</comment></comment><comment><USER28> Define "beautifully designed". I pay for software that is useful. It doesn't have to be beautiful. I'm not worried who might be looking over my shoulder.

Let's take an example. Calibre is considered by most who use it a _very_ handy tool. It is also considered by most who use it to be ... not very good to look at. I donate to Calibre because it is useful. Would I donate (or pay) for an app that wasn't quite as useful but was better to look at? Nope.

</comment><comment><USER29> I would definitely pay. I paid for sublime and intellij. I mostly use Linux, and wish they had some of the beautiful apps that the Mac did. To me beauty is worth paying for.

</comment><comment><USER30> The people who use Linux are the ones for whom Linux does what they need. So would current Linux users be willing to pay? Probably not. But...if there was a Linux ecosystem with nice paid apps, Linux users would be the ones using nice paid apps. There's an assumption behind your question that we're assigned randomly to the OS.

In case you're wondering whether that would really happen, Android is evidence that it works. The underlying OS is irrelevant.

</comment><comment><USER31> No but that's not how I use my computers. I use Vim and Firefox. There are two graphical applications I use that aren't web based. One I use a lot (a music app) and the other I use infrequently (gimp). I pay for a couple web based applications. I can't imagine anything that someone could sell me that I would need to actually run from my computer.

ps- I make a small monthly donation to Slackware because that's where this all started for me.

</comment><comment><USER32> Yes I would purchase something that solves an issue I am facing.

I think the lack of a standard way of doing things hurt for-profit development rather than the resistance to pay. For example, it is hard enough to make an application work well with one DE and in Linux there is plenty.

That is why I believe web apps such as VSCode, Discord etc are the saviour for linux desktop. With that, creating a cross platform environment is rather easy.

</comment><comment><USER33> I would not.

I would worry that the pool of other people paying for it would be so small that unless the application also worked on Windows or OSX, the development team would not be able to sustain itself. Thus, I wouldn't be willing to pay the more substantial cost: spending my time learning to use it and integrate it into my workflows.

(This is a big part of the reason I moved to OSX when I left uni.)

</comment><comment><USER34> I'd prefer a well-designed (not necessarily pretty) cross-platform application. Not so much because I think the Linux version would be unsustainable, but because I'm an OS polyglot. The Jetbrains editors are a good example of this.

Cross-platform electron apps would also apply, but generally I'd prefer more native applications, just for performance reasons.

</comment><comment><USER35> I would pay, but I have a hard time figuring an application that I am currently missing.

It is also not completely clear to me what you mean by "beautifully designed". For instance, I run Ubuntu wih Gnome 3, and most (all?) of my applications are based on GTK+3. If you were to make an application that is very beautiful in itself, but is not written in GTK, it will stick out. This is going to make the application - in context - uglier than if it was GTK based. Now, if you use GTK, I think the application is going to look like all other GTK application, which nowadays is pretty nice.

In short the answer is: yes, I would pay for an application that solves me a problem, but I may consider not buying it if it is made with a custom toolkit instead of GTK.

EDIT: also, it has to be a one off payment, not recurrent, and I expect it to integrate with the OS (for instance, update by providing a PPA instead of running a custom updater)

</comment><comment><USER36> Yes. Most people won't buy linux software. This is why saas has become so popular with companies.

</comment><comment><USER37> HN is quite possibly the worst crowd to ask this. Most here don't care much about design.

<comment><USER38> I would challenge your thoughts on "design" here. Most here don't care for the trendiest skeuomorphism-laden react-native wiz-bang feature set, but care very much for well-presented and clear ideas. This is classic design.

Think of the complexities of designing an annual report. This is bread-and- butter for lots of design firms and plenty of web designers would do well to explore the work involved in clearly communicating the most important figures, while not mucking it all up.

</comment></comment><comment><USER39> Definitely. I already pay for a few. Some JetBrains products and Insync. I've purchased Insync multiple times for different accounts. Would definitely pay if the products solve a real problem. I'd actually love to have an amazing native email client and calendar app. I don't really care for a native app but so far every electron app I've tried has been a massive resource hog which is very undesirable especially for apps that keep running all the time in the background. If someone could make electron work, I'd have no problem paying for it. Also, it being open-source would definitely increase my chances of funding or paying for the project.

</comment><comment><USER40> I'll pay if I find that the software provides sufficient advantages over other freely-available options. I've paid for SublimeText in the past. I've paid for a handful of other proprietary Windows applications (Tag2Rename comes to mind) because the FOSS equivalents simply couldn't cut it for me.

So yeah, I don't think it's a problem. Admittedly I guess the bar may be a little higher than it would be on Windows, since the expectation is that a FOSS solution _exists_ on Linux, whereas Windows/Mac users may have been conditioned to expect that good software must necessarily cost money. But if it's worth it, I'll pay.

</comment><comment><USER41> I'd happily pay for well designed (ie. ergonomic, usable, intuitive, consistent) software on Linux, but: \- it has to be free (as in freedom); \- if it's pretty, good, but I'd never pay for something pretty at the cost of anything else.

Actually, I already donate to some applications I either use or think benefit to the whole free software ecosystem (eg. Krita, which is an awesome project, even though I'm more of a Gimp user myself).

Edit: I have to admit I've already spent money on non-FOSS videogames that run well on Linux. I'm not happy, but I don't regret it either.

</comment><comment><USER42> I hope beautifully designed refers to the function...

As it stands, Ubuntu is a pretty desktop. Gnome software looks good and covers most of the basic things you need to do with an OS. I spend most of my time in Chrome, Atom and Steam, all work well.

There's functional software for most tasks and it would be a fairly big undertaking to replace it, so I'm curious what you'd actually be building. If it's just MacOS skinned equivalents to the Gnome/KDE apps then I'd say no, I'm not paying for it. If you create something truly useful then yes, I would.

</comment><comment><USER43> Definitely, I have done so. It all depends on price vs value for me. I sometimes also donate to great software I use or pages.

The beautiful adjective bothers me though.

UX is tricky since it needs a benevolent dictator guiding the aesthetics of the whole system, not just the app.

I don't want it to be just pretty, it needs to be thoroughly thought out, function before looks always. It must play nice with the conventions of the environment it's running in. Avoid unnecessary impositions (stealing focus, modal dialogs, forcing use of a mouse, etc.)

</comment><comment><USER44> Yes. Buy, not subscribe.

<comment><USER45> Would you expect free upgrades as new OS versions are released? What about ongoing access to support?

<comment><USER46> Hypothetically, When you buy an iPhone, do you expect to also get the latest model when it is released?

That being said, Apple also releases iOS updates to previous phones, even after they've been paid for.

If this doesn't seem strange to you, then perhaps the same thought process of buying a specific version of software with the expectation that it will work for several years is not unreasonable.

I see no need for a subscription model on every type of software. I pay you once, you ensure that it's written in a way that will continue to work for years to come. End of transaction, as far as I'm concerned.

</comment></comment></comment><comment><USER47> For most apps the looks don't really matter to me, so I wouldn't pay just for that. I would only pay for an app if it:

\- does the job

\- has no free equivalent that works

\- saves me _a lot_ more time/money than the cost of the product, or doesn't cost over 20€ (this is my personal threshold, for personal work. I would be fine paying more for something that I would use in professionnal work)

\- has useful and innovating features (especially if something that has already been made hundreds of times like a music player)

\- has a good UX

\- has good documentation/support

\- has a trial version

</comment><comment><USER48> Linux software I'm currently paying for:

        - <USER2>
        - <USER3>
        - <USER4>
        - <USER5>
        - <USER6>
        - <USER7>

</comment><comment><USER49> I pay for quality software, not visual appearance.

Consistent UI yes, eyecandy no.

Slapping on a theme instead of using the native GTK/KDE theme the user has configured? -1!

Have a well designed UX, make frequent workflows easy to access, but don't hinder the user from customizing certain aspects. Oh and don't crash on me all the time.

</comment><comment><USER50> yes. We already pay for jetbrains.

People would pay a lot for: 1\. SQL ide 2\. audio authoring 3\. Sketch 4\. Photoshop

Be warned though that the trend is for this kind of stuff to move to the web. Figma is a great example. Instead of trying to create a desktop client for Linux, they did some real complex stuff on WebAssembly and built a spectacular web client - [https://www.figma.com/blog/webassembly-cut-figmas-load- time-...](https://www.figma.com/blog/webassembly-cut-figmas-load-time-by-3x/) and [https://www.figma.com/blog/how-we-built-the-figma-plugin- sys...](https://www.figma.com/blog/how-we-built-the-figma-plugin-system/)

Figma is paid (and makes a lot of money)

<comment><USER51> By SQL IDE, do you mean for developers or for data analytics?

</comment></comment><comment><USER52> I've bought some specialised software to run on Linux; Reaper by Cockos, for example. I also write native Linux apps and utilities (with GUIs) to speed up common complex development tasks. Because development time isn't free these are effecctively "bought" too.

</comment><comment><USER53> If it works well and kills my pain, I would do it.

It does not have to be good looking.

Just have to be a sane UX so that I can get it done.

</comment><comment><USER14> Depends on the application, but I can imagine paying for some GUI heavy applications (e.g. audio/video editing). It would have to be open source though. Otherwise definitely no deal.

</comment><comment><USER54> Yes, I would pay (and have done so in the past). Much as I'm willing to pay for good apps on my phone, even though there are plenty of free alternatives.

</comment><comment><USER55> Worth paying if the software respects users (FOSS goes without saying) and accepts suggestions. Most paying applications choose to be proprietary, though.

</comment><comment><USER56> I would say no.

But in reality I already paid for JetBrains while I would never have expected to, so why not?

The only other software I have bought for Linux are games I think

</comment><comment><USER57> The web has killed desktop apps. I use linux, but I don't buy software on any platform besides games.

I think it makes sense for professional productivity apps, like CAD stuff.

I don't think basic desktop apps are worth a fee, since no one will buy them with all the free alternatives, but maybe a case can be made with something that ties into managed cloud compute services (like superhuman's use of AI).

</comment><comment><USER58> Yes, though I don't know of anything that I really need.

I already paid for a Codeweavers Crossover lifetime license.

</comment><comment><USER59> I would at three conditions 1) it's not too pricy (≈20€) 2) There is a trial (either limites features or trial) 3) No drm or not invasive ones at least

That's just a consumer saying, not a dev one

</comment><comment><USER60> Absolutely. Sublime Text is one.

</comment><comment><USER61> I would pay to use Emacs.

</comment><comment><USER62> ofcourse! it also has to be functional :)</comment>


Why I Left Finance - <AUTHOR> https://medium.com/unforgettable-moments/d7e3ce948e55

<comment><USER2> I for one think that for each company that is fined for illegal market fixing activities, at least one person should be prosecuted and sent to jail and even more people should be banned from working in the industry. There isn't any deterrent to breaking the law for the purpose of profit.</comment>


Why Andreessen Horowitz Just Raised $650,000,000 - <AUTHOR> http://bhorowitz.com/2010/11/03/why-andreessen-horowitz-just-raised-650000000/ <comment><USER2> I am not sure how they are going to manage the large delta between deal sizes. If they are going to make more Skype style $50MM deals then the smaller deals are just not going to 'move the needle'. In that a spectacular return on a $50k (which he cites) or even $500k deal is not going to make significant absolute returns.

That said - it's good to see they have been successful with their new fund, as the more 'right kinda VCs' in the world the better.

<comment><USER3> Getting in at the early stages is a great way to ensure you have the ability (actually, the right) to invest at later stages. You can basically chalk up any losses in the seed stage as the price you pay for better deal flow, or maybe as money spent building goodwill among entrepreneurs.

</comment></comment><comment><USER4> They had me at "As a matter of core philosophy, we invest in companies not stages. We want to be in business with the best entrepreneurs going after the biggest markets and we do not care whether they need seed money, venture money or growth money."

</comment><comment><USER5> I think the rap quotes are the best part of Ben's posts.</comment>


Building a Cross-Browser, Cross-Platform, Real-Time Game Streaming Protocol - <AUTHOR> https://blog.rainway.io/building-a-cross-browser-cross-platform-real-time-game-streaming-protocol-b00d000fe788 <comment><USER2> What do they mean with WebSockets hole punch on port 443 and Let's Encrypt? The first thing that comes to mind is running a TLS web/WS server on the endpoints, but I didn't think you can do TCP+TLS servers with WebRTC. Or can you?

A new open source server side WebRTC implementation would be very welcome, though this does seem to use some of the old C++ libraries too. I wonder how much exposure of C++ to hostile bits they managed to reduce?

<comment><USER3> That entire section reads like nonsense to me (and I understand NAT hole punching), seems like some kind of confusion. Why do you need special TLS certs for WebSockets, but not WebRTC? WebRTC is end-to-end encrypted like TLS, using a Diffie-Hellman exchange so that the signaling server doesn't see private keys.

<comment><AUTHOR> We cover this issue in a separate blog here [https://blog.rainway.io/encryption-for- all-3383217e4194](https://blog.rainway.io/encryption-for-all-3383217e4194)

To summarize, you are correct WebRTC is end-to-end encrypted via DTLS and WebRTC handles setting all of this up. WebSockets, however, are not encrypted by default, and when attempting to connect to a WebSocket server from a secure origin, a valid TLS certificate is required. Because each user has their WebSocket server running from their Rainway instance, we need to create unique and valid certificates for each user to avoid having a shared private key. This is how we avoid needing a TURN server and maintain low latency.

I apologize that it wasn't clear in the blog I was describing how we handle WebRTC failing.

<comment><USER4> So the TLS certificate for websocket users are stored in the server? And its generated by letsencrypt?

</comment></comment></comment></comment><comment><USER5> Why is game streaming suddenly becoming popular? I remember being blown away by onlive back in 2011: [https://en.wikipedia.org/wiki/OnLive](https://en.wikipedia.org/wiki/OnLive) [https://www.youtube.com/watch?v=jG6Ahg_d_BU](https://www.youtube.com/watch?v=jG6Ahg_d_BU)

but they couldn't make it work commercially and shut down in 2015.

Bandwidth hasn't really gone up, so what will be different this time round?

Edit: they actually laid off all employees in 2012, then relaunched and still failed in 2015

<comment><USER6> My first guess is 2012 lacked easily accessible hardware accelerated h.264 encoding on the host and the cheaper clients lacked easily accessible hardware accelerated h.264 decoding. Now you can find hardware accelerated decode in your $20 IoT device.

Also I don't think your statement that bandwidth hasn't really gone up is true. [https://www.statista.com/statistics/616210/average- internet-...](https://www.statista.com/statistics/616210/average-internet- connection-speed-in-the-us/)

<comment><USER7> Piggybacking off that, OnLive never seemed to know if they were a hardware company, a software company, or a cloud company, and depending on which exec was talking and the day of the week seemed to have a different focus each press release.

Today you have major players that already cover all three bases (Microsoft and Sony) interested and playing in the space. You also have more opportunity to see minor players enter the space with less of need to be hardware companies (because more users already have capable hardware devices), or cloud companies (because more commodity streaming cloud options are available than ever before on AWS/Azure/etc), or even software companies as more platforms including the web platform have increasingly more high level APIs for a lot of the building blocks of game streaming.

</comment></comment></comment><comment><USER8> To anybody who's interested in these blog posts, I highly recommend checking out the Rainway Github: [https://github.com/RainwayApp](https://github.com/RainwayApp)

</comment><comment><USER9> Thanks for making these posts, open sourcing spitfire, and supporting multiple browsers.

This is really interesting. I am very eager for browsers to improve their real-time audio/video potential.

</comment><comment><USER10> Ah darn, on first glance, it looks like the server is Windows-only.

<comment><USER11> Makes sense seeing as Windows is the primary PC gaming platform

<comment><USER12> Even for servers? I would've guessed most game servers ran on Linux. Seems like the licensing costs for windows servers would be fairly restrictive for that.

<comment><USER13> A "server" in this particular case is a machine capable of running most video games (and Steam, GOG, any other game client), ergo a Windows machine.

</comment></comment></comment></comment><comment><USER14> I don't understand why they don't use WebRTC clients on the server too.

Wouldn't this get rid of the NAT problem all together?

I even read that people had scaling problems with P2P WebRTC.

(I know that WebRTC is intended to be used as P2P technology, but noone stops you from treating the server as a client)

<comment><AUTHOR> The author here, I apologize for any confusion from my writing. We do use WebRTC in a server-like fashion. The browser attempts to establish a P2P connection with the host computer, and the peer negotiation is similar to if you wanted Chrome to talk to Firefox for a video call. The network of either end could both cause connectivity to fail which is when we fall back to direct WebSockets rather than a costly TURN server.

<comment><USER14> Do you have any numbers on how much % of the users would need TURN?

<comment><USER3> I believe Google has previously published numbers (from Hangouts data) of around 10% worldwide.

</comment></comment></comment></comment><comment><USER15> How does this service compare to parsec[0]? It looks good but parsec just came out with in browser streaming for its services and runs on top of aws.

[0]:parsecgaming.com

<comment><AUTHOR> I will avoid getting into how our streaming performs vs. theirs because we have a lot of resources on why our tech is so fast[0]

That being said, as far as I know, Parsec's new browser-based client suffers from all the issues I mentioned in this blog and at the end of the day, our user experiences are completely different. Rainway being self-hostable you can put it on everything from Azure[1] to your home computer. We have a very unique "Games First"[3] approach and view ourselves more as a gaming service than a piece of game streaming software. As we continue to fledge out our voice, I think you'll be pleased with the results.

[0]:[https://blog.rainway.io/here-whats-new-in- rainway-0-5-0-3a66...](https://blog.rainway.io/here-whats-new-in- rainway-0-5-0-3a66714a8b46) [1]:[https://www.youtube.com/watch?v=OlMq-3hmm5Y&list=PLaVZpLEYEQ...](https://www.youtube.com/watch?v=OlMq-3hmm5Y&list=PLaVZpLEYEQNz34jHAiPcHTZ8ANr7Vkn3T) [2]:[https://blog.rainway.io/our-core-mission-games- first-78671e4...](https://blog.rainway.io/our-core-mission-games- first-78671e496201)

</comment></comment><comment><USER16> so awesome</comment>


Running Node.js on the JVM - <AUTHOR> http://eclipsesource.com/blogs/2016/07/20/running-node-js-on-the-jvm/ <comment><USER2> Sure, this sounds pretty clever, but...

What's the use case here? Maybe you have some legacy java business library but also need to do something with node? Wouldn't it be smoother / simpler / easier to use services for this? I'd waaay rather have java do its thing and node do its thing in different processes or containers, and have some api layer between them.

Having node running in JNI in the _same process_ as the JVM just sounds like a recipe for double the buffer overflow attack surface, for example.

On the other hand, maybe I'm just missing something critical. Can anyone point out a system where this would be useful?

<comment><AUTHOR> You're right, you could separate them into two containers and build a networked API between them, and in many cases that may be the right approach. But I wouldn't completely throw this solution away yet (I'm the author of this solution, so I guess I'm biased).

For example, if you want to call an NPM module (say Grunt) from and Java / Maven build, it may be easier to bundle this in the same process rather than trying to provision node in the middle of the task. Also, if you have existing Java libraries and want to make use of them as you migrate to Node, it might be easier with the shared memory approach (through ByteBuffers and TypedArrays) that J2V8 offers, than to try and pass the Data between services.

This isn't meant to replace services, it's just another technology choice on the spectrum.

And finally, I thought the problem of integrating Node and Java sounded challenging and cool, and I enjoy challenging problems :).

<comment><USER2> True enough - something like "because it's there" is certainly a pretty good reason to climb a (metaphorical) mountain.

<comment><AUTHOR> Also (for a bit more history), I had already implemented the V8 / Java integration. I did this because we needed a performant JavaScript engine on Android, and Rhino just didn't cut it. Adding the Node integration was (theoretically) pretty easy, although because of how Node.js is linked on Windows, it gave me some headaches.

Part of why I did the Node / Java integration was to see if there are any use cases. We'll see, I hope someone finds it useful, and if not, I learned a tone.

</comment></comment></comment></comment><comment><USER3> I built an asset compiler [http://jooby.org/doc/assets](http://jooby.org/doc/assets) on top of j2v8. It runs jshint/ugligy/babel... without installing node.

The asset compiler has a maven plugin, so from Java developer perspective is very very useful.

Now with node.js on the JVM will play and see if my asset compiler to use grunt now.

Thanks Ian!

<comment><AUTHOR> Thanks for letting me know what you are doing with J2V8. I can add jooby as a link on the main J2V8 GitHub (under the Who is using J2V8) if you'd like.

Regarding Grunt / J2V8, I got this working. However, I had to play with my working directory so Grunt could find it's dependencies. I will blog about this.</comment></comment>


Ask HN: Do companies have better code than the open source community? - <AUTHOR>

Looking at github lately, I'm struck by how much decent code is made by individuals. I've taken it on faith that they know what they are doing, and have created libraries that are close to some nebulous notion of purity or elegance. Generally the code does something in a straightforward manner, like I could extrapolate where the unfinished parts are going (an indicator that it's close to optimum).
Contrast that with corporate code, where it seems more rigorous, more institutional. It's often entrenched in company culture and whatever process the higher ups have deemed important. I've written much of it off as overhyped, over-trusted and over-utilized. Some things work remarkably well for containing the chaos of an ever-changing market and workforce. But others seem archaic and I can't believe that companies depend on the logic equivalents of toaster ovens (that unwieldiness must be a warning sign).
Could my intuition be wrong? Imagine an idea you have, and that instead of having to write every line, you can outsource it. And that process is hierarchical, so you can reach as high as you want to. What kind of power would that give you? What could you learn that would be out of reach to those with fewer resources? If one person can write good code, what happens when hundreds or thousands of people work for years with million-dollar budgets? Could Google or Amazon have code that runs circles around ours, like if map reduce is the low-lying fruit of the big data world, not even worth protecting? Are we locked outside the pearly gates, dealing with tools that can never give us the leverage that companies enjoy? Is an MIT or GPL license a sign that code wasn't good enough to make the cut?
Or maybe the darwinian evolution of the open source world runs circles around the intelligent design of corporate think tanks. Is there any evidence one way or the other? <comment><USER2> In general, no. Corporate code "in the wild" is typically a pile of shit. I've worked at several companies and between mismanaged projects, team conflicts, time/requirements constraints stuff just gets messy, hacked and crazy really fast.

Open source projects, particularly smaller 1-3 person projects on github typically have more consensus, dedication, vision, etc and come out better. I think there's a lot to learn from that process and how business code could be managed better. I'll save that for my book.

The general shittiness of code makes me wonder at times about stuff around me. Stuff like the machines in a hospital keeping people alive, traffic lights, etc. It's kind of scary when you see examples of how badly some people think through problems.

</comment><comment><USER3> I don't know about code "quality", which is a rather nebulous notion that no one seems able to accurately define, but in terms of functionality there may be a tendency to underestimate what well-financed teams in industry can accomplish.

Consider 4 examples.

1) The first is the only one of which I have personal knowledge. I used to work for a large corporation which developed address reading software for the US Postal Service. The project had generated about $1B for the company at the time I was there and comparable costs savings for the customer. I don't believe OCR software that is widely commercially available approaches the performance of that system.

2) IBM Watson. Here we have an example of a well educated, well financed corporate team producing a software system capable of beating the best human players at Jeopardy. I think prior to this demonstration few would have believed such a thing possible.

3) Google Self Driving Car. Again look at how much progress on an extremely difficult problem has been made by a company team in a short amount of time.

4) Recent NSA revelations: The technical capabilities revealed by Edward Snowden exceed even the somewhat mythical beliefs about the NSA's capabilities that were prevalent in the tech community prior to these revelations.

<comment><USER4> While these are examples of great software in terms of functionality, they don't necessarily contain 'good code'.

I suspect that the quality of the product is strongly related to the quality of the code underlying it, but then it could be argued that Windows is a good product, and yet I've read several stories about the code not being particularly good quality in many areas. Conversely, much open source software I've seen has wonderful code, but the products of that are horrible.

</comment></comment><comment><USER5> MapR is the best example I know of where a closed-source solution is beating open-source.

For example, MapR's Hadoop distribution outperforms its open-source counterparts:

* MapR breaks the Hadoop TeraSort world record using Google Compute Engine ([https://plus.google.com/+GoogleDevelopers/posts/NURRXZ985XV](https://plus.google.com/+GoogleDevelopers/posts/NURRXZ985XV))

* Video: [https://www.youtube.com/watch?v=9iQzMoy41_k](https://www.youtube.com/watch?v=9iQzMoy41_k)

Also MapR-FS and its new M7 Tables are HDFS and HBase rewrites that remove the complexity of running HBase while improving performance:

* M7 Overview: [http://www.mapr.com/products/mapr-editions/m7-edition](http://www.mapr.com/products/mapr-editions/m7-edition)

* Datasheet: [http://www.mapr.com/Download-document/21-MapR-M7-Datasheet](http://www.mapr.com/Download-document/21-MapR-M7-Datasheet)

* Benchmark: [http://www.mapr.com/Download-document/52-MapR-M7-Performance...](http://www.mapr.com/Download-document/52-MapR-M7-Performance..).

* Docs: [http://doc.mapr.com/display/MapR/M7+-+Native+Storage+for+Map...](http://doc.mapr.com/display/MapR/M7+-+Native+Storage+for+Map..).

* AWS Service: [http://aws.amazon.com/elasticmapreduce/mapr/](http://aws.amazon.com/elasticmapreduce/mapr/)

One reason behind MapR's competitive advantage is because it was co-founded by M.C. Srivas from the Google search team ([http://www.wired.com/wiredenterprise/2011/12/ex-google- man/](http://www.wired.com/wiredenterprise/2011/12/ex-google-man/)) so they have special knowledge on how the real GFS/MapReduce/BigTable stack is designed.

</comment><comment><USER6> For a proper analysis you would need to compare a large distributed subset of proprietary, closed source code to an equal amount of distributed open source code. Which for many reasons (hint: proprietary) cannot be done. So no, there is no evidence other than biased people who worked at company x or y with good/bad in-house code.

<comment><AUTHOR> I think you are right, and that was the same uncomfortable conclusion I came to. Maybe the gist of the question is whether developing software privately is better than developing it publicly. It seems that the amount of money earned is proportional to secrecy.

However, I've rarely shared code in my life and live month to month, so it's not a hard and fast rule. I guess my deepest hope is that someday the entirety of open source software and technology will provide such a large benefit that it can work like income at a personal level. The intangible benefits of participating in open source don't help much against the tangible expenses in one's life!

</comment></comment><comment><USER7> No.</comment>


Show HN: StoryLane Feature: SendHub CEO Garrett Johnson - <AUTHOR> http://www.storylane.com/garrettjohnson At Storylane, we're making a platform for people to share their life stories. Everyone has experiences that give them a unique perspective on this world and we want to enable a community of asking and sharing these stories. We would love feedback from the HN community! <comment><USER2> You really need some sort of privacy policy (or at least some way to contact you) if you are really want people to get personal on your site.

If you're interested I've written some basics on creating a policy on my blog here: [http://jnorthrop.me/2012/04/3/getting-your-privacy-policy- gr...](http://jnorthrop.me/2012/04/3/getting-your-privacy-policy-ground/).

I hope the link helps, and feel free to ask any questions (my email is in my profile).</comment>


Computer science and the financial crisis - <AUTHOR> http://www.simondobson.org/2010/04/computer-science-financial-crisis/ <comment><USER2> Great article</comment>


Bernard D'Espagnat, 93, Physicist, Dies; Sought Implications of Quantum Theory - <AUTHOR> http://www.nytimes.com/2015/08/16/science/bernard-despagnat-french-physicist-dies-at-93.html

<comment><USER2> I remember reading a book (an introduction to QM) by him when I was young, too bad I didn't know enough at the time to understand that this was a true waste of time, more philosophy mumbo-jumbo than a physic book.</comment>


Pirates Crack Microsoft's UWP Protection - <AUTHOR> https://torrentfreak.com/pirates-crack-microsofts-uwp-protection-five-layers-of-drm-defeated-180215/ <comment><USER2> > Last evening it became clear that the UWP system, previously believed to be > uncrackable

Who believed this? No DRM is perfect and all DRM can be cracked.</comment>


Nuance's Nina Brings Siri-Like Voice Recognition Features To Mobile Apps - <AUTHOR> http://techcrunch.com/2012/08/06/nuance-nina/

<comment><USER2> Niance's Nina is only available to large enterprise organizations, not general consumer apps, per their sales rep.

For the mobile app SDK, go to NDEV Mobile:

[http://dragonmobile.nuancemobiledeveloper.com/public/index.p...](http://dragonmobile.nuancemobiledeveloper.com/public/index.php?task=home)</comment>


Self-Hosted Homelab Website - <AUTHOR> https://hydn.dev/homelab/ <comment><USER2> I was impressed by the performance, especially with ExpressJS, and started digging deeper until I noticed "cf-cache-status: HIT".

What I'm seeing is not really a "self-hosted website", but a Cloudflare-hosted cache of a self-hosted website.

 _Edit_ : I wanted to get an idea of the "real" performance, so I went to a non-existent page so the cache would miss. I waited 930ms for a 301, then another 590ms for the 404 page.

<comment><AUTHOR> Of course it's using cdn/Cloudflare. I live in the Caribbean. Good thing it was! A topic such as Home Lab will see traffic from all over globally. No cdn would be terrible idea.

Not sure of you are located but Pingdom test for 404 does not match your claim: [https://tools.pingdom.com/#5ca8d73c1e400000](https://tools.pingdom.com/#5ca8d73c1e400000)

And of course 404 pages will be slower. Because Cloudflare still has to receive the request first, then check origin server roundtrip before responding.

The site is just a hobby page and the only thing public facing that I self hosted. Even my main blog which is hosted in North America uses full-page- cache CDN courtesy Bunnycdn.

<comment><USER2> I understand the need for Cloudflare in this case, I just didn't realize it was being used at first and got rather excited about the prospects of self- hosting. I don't mean to insult, I just got a false impression and wanted to make sure people here knew that the resources aren't really being served by your server, at least in most cases.

I just ran that Pingdom test again, 938ms for the 301 and 3861ms on the 404 on a missed cache. Now that it's in the cache, _everything_ loads in less than 247ms.

<comment><AUTHOR> No worries. I understand what you mean. I have not seen high response times (3 secs u report on first request) for 404s yet via Pingdom but then again the site has only 3 or 4 pages so not worried about 404 performance.

Thanks!

</comment></comment></comment></comment><comment><USER3> Sweet! Here's my homelab - [https://i.imgur.com/QS0o4ni.jpg](https://i.imgur.com/QS0o4ni.jpg) \- I should self host an about page, too.

\- Netgear Cable modem

\- Edgerouter ER4

\- 8-port POE Edgeswitch, powers the nanoHD AP in my hallway and acts as the backbone of the network.

\- Raspberry Pi 3 as a dedicated pihole DNS server

\- TPLink 16 port switch serves all the 'lab' gear.

\- 2x R720's. One is off, the other is a VMWare ESXi host.

\- ESXi is pretty light at the moment - running Unifi controller and a dedicated VM that just runs Elasticsearch for a side project. For a while I was heavily using it to simulate an AD deployment for a small business.

\- Synology DS918 is a network drive and network time machine backup destination. It backs itself up to Backblaze nightly.

\- Everything is on a simple Cyberpower 1500VA UPS. I can run everything for about 80 minutes without power, but if I shut down the R720 the runway gets much longer.

I got my start in about 2003-2004 by trying to run my own mini ISP out of my home during High School. I was doing everything over a residential DSL connection that only got 1.5mbit down and a fraction of that for upload.

I still remember asking my bud to help me 'test my mail server' which was a Qmail installation via the Qmail rocks guide. The machine was a Pentium 3 with 128mb of RAM. My bud Anand (Founder of Gyrosco.pe) sent a handful of test emails to it and brought it to its knees! Absolutely hilarious incident at the time.

I wish that I had more photos of that time in my life.

<comment><USER4> Can someone ELI5 why PiHole is preferable to an in-browser blocker like AdBlock Plus?

<comment><USER5> Some not very technical reasons:

1) Run once, use everywhere. (Including devices without a browser, like an Android/Apple/'smart' TV.)

2) iPhones.

3) Configure alongside rest of networking, not clicking buttons to manually sync within browsers of the same type.

<comment><USER6> iPhones can run DNS blockers locally[1], and Apple has a good API for privacy- preserving content blocking[2].

[1] [https://apps.apple.com/ca/app/dnscloak-secure-dns- client/id1...](https://apps.apple.com/ca/app/dnscloak-secure-dns- client/id1452162351)

[2] [https://developer.apple.com/documentation/safariservices/cre...](https://developer.apple.com/documentation/safariservices/creating_a_content_blocker)

<comment><USER5> Sure, but that's not (or equivalent to) AdBlock Plus, which is what I was replying to.

Specifically, iPhones cannot do in-browser content or domain blocking if the browser is not Safari.

<comment><USER6> [https://developer.apple.com/videos/play/wwdc2017/220/](https://developer.apple.com/videos/play/wwdc2017/220/)

[https://github.com/ShingoFukuyama/AdsBlock_WKWebView_for_iOS...](https://github.com/ShingoFukuyama/AdsBlock_WKWebView_for_iOS11/blob/master/README.md)

</comment></comment></comment></comment></comment></comment><comment><USER7> If people are showing off a lab. My lab always sparks a conversation. I wanted to prove I could beat twilio's texting rates. [https://i.imgur.com/gKknrJn.jpg](https://i.imgur.com/gKknrJn.jpg)

<comment><USER8> I worked in telco in Indonesia where this type of thing is taken to the next level.

Back in the day you would walk into a rooms filled with racks full of phones for SMS / Airtime sales "optimisation".

I tried to google some pictures now but it turns out Im behind the times. They've gotten rid of the phone part completely! [0]

Now you just buy the sim cards and let modems do the rest..

[0] [http://modempool.net/wp-content/uploads/2016/05/2-jual- alat-...](http://modempool.net/wp-content/uploads/2016/05/2-jual-alat-server- pulsa-jual-modem-wavecom-jual-modempool-modem-pool-8port-8-port-16-port- usb.png)

<comment><USER9> things like [0] are really commonly used for grey market voip in all developing nations... There's devices which are specifically a GSM-based 2G voice interface on one side, with a SIM card, and a SIP phone you can register to asterisk on the other side. With 8 or 16 devices integrated into one enclosure.

</comment></comment></comment><comment><USER10> A photo followed by a dozen Amazon referral links kind of rubs me the wrong way, even if I appreciate a nicely put-together setup like that.

<comment><USER11> Not sure if I agree. It doesn't cost you any extra to use those links when you're shopping for gear (last I checked), it's a creative and unusual setup to see in someone's house these days, the photo delivers a good amount of impression, and the resulting website is just nice to look at. On top of that, he did go to the trouble to list all of the gear, which there's a good chance won't even be remotely paid for by the affiliation.

Yeah, the more I think about this, to me I think this counts as supporting the community.

</comment></comment><comment><USER12> Looks awesome! I went down the homelab-ish rabbit hole recently myself and it was probably the most fun I've had in a long time on a project. My goals were more about hosting a bunch of IoT stuff internally (sensors, cameras, etc), but I wrote up a bit about at least the rack/equipment here: [http://cra.mr/my-journey-into-home-automation/](http://cra.mr/my-journey- into-home-automation/)

At some point, I'm hoping to dive a bit deeper on the software side, which was also super fun.

<comment> Constant-fly34 Awesome! Love it.

</comment></comment><comment><USER13> Nice!

I have a raspberry 2b+ with several services: ldap, syncthing, gitea, cups server, minidlna, torrent server, NFS, nginx for PHP stuff like phpldapadmin, phpmyadmin, nextcloud, etc.

I realized that I don't need a public IP. I set up zerotier on all my machines and pointed a subdomain that I own to that IP. OK, other people can't visit it, but I rarely need them to.

It's perfect, but nextcloud is slow :( Maybe an upgrade to rpi 4 will help it be faster.

<comment><USER14> If you wanted it to be publicly accessible in the future, I think you can rent a cheap VPS (DO Droplet) and set up a VPN, and then connect to that VPN on your Pi. Then you can have Nginx on the VPS and reverse proxy to any services you'd like.

<comment><USER13> I've been monitoring what VPSs are an option. I'd like to have something faster, because it'll be cost-effective, but I don't want another headache.

</comment></comment></comment><comment><USER15> I haven't self-hosted a website in a long time. Do you still need a static IP in order to do so, or do you have some kind of service that updates the IP? How does it interact with DNS?

<comment><USER16> There are "Dynamic DNS" services with a small daemon you install on your server that continuously update the DNS address so it remains online even if your ISP changes your IP on you.

[https://account.dyn.com/](https://account.dyn.com/)

[https://www.noip.com/remote-access](https://www.noip.com/remote-access)

<comment><USER17> btw this can be done with a 'proper' domain name too (e.g. at namecheap)

<comment><USER18> yep, I've done this before with a handy tool called ddclient, although there are other tools out there.

</comment></comment></comment></comment><comment><USER19> I feel like I've missed a meme. What exactly is a homelab?

<comment><USER20> Assuming you're not trolling, here's a decent intro: [https://www.reddit.com/r/homelab/wiki/introduction](https://www.reddit.com/r/homelab/wiki/introduction)

<comment><USER19> Not trolling, I had no idea. Obviously I got it was basically a home server setup but I couldn't see where the term came from.

<comment><USER5> I don't know where it comes from, but the distinction's basically 'when a home server becomes home servers', or at least becomes a hobby, as opposed to just setting up and forgetting a Pi-hole once or something.

<comment><USER21> Originally, a "home lab" is specifically for learning and testing, primarily for professional reasons: i.e. someone going for a Cisco networking certification might get a stack of old Cisco routers and build test environments with them, someone learning windows networks might setup a windows domain on multiple PCs, ...

It's kind of morphed and people fold their home "production" environments into the term too.

<comment><USER5> Well, sure, but IME 'production' at home is essentially the same as lab tinkering. How many home labbers have even one home environment besides 'production'?

<comment><USER21> I meant "production" in the sense of "things you run to use, not just to learn". I.e. on /r/homelab you get many people with "I have a bunch of Ubiquiti gear, a NAS and a server running Plex", which isn't that "experimental", even if they did learn something while setting it up. Whereas the mentioned pile of Cisco routers might never see traffic that's not part of testing something. And of course the two can mix.

</comment></comment></comment></comment></comment></comment></comment><comment><USER22> Well, I have a small living room server/home lab as well, but it's a 12 years old MacBook pro running Debian. I love the idea of having my own server where to run small personal projects, have some daemons running in the background and use it as a NAS, but I cannot justify any investment for it. Scrape parts or nothing.

<comment><USER23> I run everything on an old Dell desktop with a i7-2600 CPU and 8GB of RAM. I just run OpenSUSE and use it as a NAS(samba), remote desktop (x2go), pihole server, torrent host, etc..

</comment></comment><comment><USER24> I went down the edgerouter path (edgerouter x sfp) and have regrets, in case others get ideas (or if someone has fixes, I'm all ears). Don't get me wrong, the device works great, I was entertained by it running vyatta which I had experience with at the time, and I just got [https://github.com/nextdns/nextdns](https://github.com/nextdns/nextdns) running on it which is super awesome. But I have a bunch of devices connecting to wifi, which seems to work waaay better integrated with the unifi line of products. I'm probably going to swap it out one of these days, and I can make due with running the controller on a 24/7 box to smooth it out a bit, but I'd totally go unifi down the line if I had to do over.

<comment><USER25> I tried to start with an edgerouter and a Unifi AP and quickly switched to an all-Unifi setup. I recently switched from a cloud key to running the controller on a $5/mo Digitalocean VM when the UCK died for whatever reason. I'm not sure about how ultimately reliable it'll be but I like it fine. The remote adopt function in the iOS app is extremely slick.

</comment></comment><comment><USER26> I have simple note server[1] running on raspberry pi. I want it to be accessible from Internet but my ISP uses double NAT and theirs no other way around it. :/

[1] : [https://github.com/quaintdev/pinotes](https://github.com/quaintdev/pinotes)

<comment><USER27> Tailscale or Zerotier are good ways around that.

Or setting up a really cheap server (e.g. I like RamNode) as a central VPN point.

</comment></comment><comment><USER28> I didn't see your storage solution. Do you just backup everything on S3? or do you have a SAN, not listed here?

</comment><comment><USER29> I have my own (not nearly as sophisticated) home lab, with an old self-built desktop acting as a kvm host.

while it's not as pretty, the biggest win for me was to move all of the vm disks onto a Synology that I'm mounting via iscsi. it tends to work really well.

</comment><comment><USER30> Is your server that is running the website, running in a segmented network? Meaning, it's not on the same network as your other internal devices.

</comment><comment><USER31> I have that for a long time :) mine: [http://184.108.40.206/](http://126.96.36.199/)

<comment><USER11> Right on. :) I like your use of video at [https://cyfrowynomada.eu/](https://cyfrowynomada.eu/)

<comment><USER31> Thanks!

I found this trick to make vimeo videos "seamless" just as gifs back in the days. It's surprisingly not distracting yet super vivid :)

</comment></comment></comment><comment><USER32> Damn that's clean. I think you've inspired me to clean up my home lab rat's nest.

<comment><USER33> The sub [https://www.reddit.com/r/homelab/](https://www.reddit.com/r/homelab/) is worth a look for inspiration. It has some great posts and threads.

</comment></comment><comment><USER34> How do you deal with the noise?

</comment><comment><USER35> No mention of electricity costs and/or usage.

<comment><USER36> $10k in hardware + $150/month electric + a noisy/hot room :)

<comment><USER37> na dont think its that expensive at all, and most of those items are pretty silent/cool hes not running big dell r713s

</comment></comment></comment><comment><USER38> Are the 1 unit blanks for cooling reasons?

</comment><comment><USER39> The cables are very well organized.</comment>


DHH vs Eric Ries at leanca.mp in London  - <AUTHOR> http://vimeo.com/11652479 David Heinemeier Hansson (in London) takes on Eric Ries (via Skype from California) in their first public appearance together, at Leancamp London (http://leanca.mp) on 10 May 2010. They entertainingly disagree on approaches to venture-funded startups, revenue generation and more... (and of course they agree on a lot too!) <comment><USER2> I'd like this discussion a lot more if it weren't framed as a clash of two sides. In a debate you're trying to win, but we're looking for the truth. Like Eric says in the video, there's a lot that they agree on. Sure, conflict is superficially interesting, but I think DHH plays it up too much and tried to put on a show. I wish he would have been a little less hostile, it was distracting.

To me, the most interesting part was at the end, when they started talking about whether finding a business model is simple or complicated. For some it is, for some it isn't. The discussion they have is enlightening.

<comment><USER2> The one argument that swayed me towards Eric Ries: "great and crap are subjective terms"

</comment></comment><comment><USER3> Great video. My summary, <http://wp.me/priSp-2o> .</comment>


Ideal lighting for development teams? - <AUTHOR> I work in an office where its mostly developers and they keep the lights off because its better on their eyes since they're heads down staring at monitors all day.  However given we've passed the longest day of the year, hours of daylight are going down and given we usually have pretty dark fall and winter in Boston, I'd like to see if it makes sense to invest in some good lighting for the upcoming seasons.  Let me know if others have found good non-natural lighting for dev teams. <comment><USER2> Desk lamp on each desk that each person can turn on and off at will.

If nobody ever turns on their desk lamps, add a very low level of ambient light with widely spaced ceiling lamps or torchieres using bulbs that mimic 40-watt incandescents in both brightness and spectrum. You want just enough light that people aren't tripping over every backpack or dropped pen on the floor.

Avoid fluorescents like the plague. The spectrum and frequency (fluorescents actually flicker at a frequency high enough that our brains smooth it out before interpreting the signal - but doing so is taxing on the brain) both contribute to headaches and fatigue.

Anyone who wants more light than the ambient can and should use their personal desk lamps.

Meanwhile, leave your windows unshaded so employees can take advantage of as much natural light as the season allows - it's important for mental health and circadian rhythms.

</comment><comment><USER3> I haven't set up an entire office.

Fluorescent are right out. LEDs are great if you like the color temps they come in, but it's generally believed the blues can disrupt the body clock.

I personally favor area lighting that can be turned off and/or filtered along with a fairly low-wattage incandescent at each desk (some people prefer two, like me) and leave it at that.

<comment><USER4> You can have CLF's, just don't turn them on. Natural light is quite nice this time of year. Working with glowing rectangles has it's perks.</comment></comment>


Paul Graham inspired the creation of Redis - <AUTHOR> https://twitter.com/antirez/status/1110468354542919681 <comment><USER2> I want to clarify a couple of things. I'm not saying that Paul Graham invented this pattern. Actually after he mentioned it, I remembered a friend of my father to implement exactly that in QUICKBASIC in the late 80s :-) The point is that maybe the Redis design was already inside me, but I needed a trigger: I often think of good things after being triggered. And smart people are more likely to tell about good ideas, old and new. That was the point. Similarly I believe there are a lot of simple fundamental ideas that can be re-applied to today's technology, as the landscape changes many things become relevant again.

<comment><USER3> I'll just take the opportunity to say how grateful I am that the idea of inventing Redis struck you -– regardless of how it originated. I use it all the time, both professionally and in my free time. Awesome piece of software. An idea is worthless by itself, execution is everything.

<comment><USER4> Very much this. Redis is pretty much the swiss army knife of persistence around our shop.

<comment><USER5> I've been meaning to learn redis for quite some time. Do you have favorite resources for this? Thank you.

<comment><USER4> Just the documentation to be honest. The basic functions of redis are quite simple to learn and use either using the redis-cli client or a language binding. Basically you PUT keyname value, and GET keyname to retrieve value. There's a ton of additional features and types of structures but the basic use of it is as a key/value store.

</comment></comment></comment></comment></comment><comment><USER6> Man, some of the comments on here are really disheartening. What's the deal with trying to humble people with long-winded, tangential counterpoints, gotchas, and condescending questions? Constantly proving one's intellect seems to be a prevailing theme on HN and I'm not seeing how it adds to the quality of the content. I'm sure someone will unearth the irony in this and let me know soon enough.

<comment><USER7> Best not to read the comments. There's literally nothing you can do about the phenomenon you're describing.

</comment></comment><comment><USER8> That's exactly how HyperCard works, and we all know what inspired HyperCard!

[https://www.mondo2000.com/2018/06/18/the-inspiration-for- hyp...](https://www.mondo2000.com/2018/06/18/the-inspiration-for-hypercard/)

[https://twit.tv/shows/triangulation/episodes/247?autostart=f...](https://twit.tv/shows/triangulation/episodes/247?autostart=false)

</comment><comment><USER3> Hmm, I thought this pattern was really common? That is, appending everything to a file and reading back from the file when there's a reboot. I constantly use it when a database (or redis for that matter) is simply overkill for my use case.

Here's a 34 line implementation I use on a node production system. It writes struct-like JavaScript objects that represents events to disk. When reading it back I do a fold (or .reduce) to build the state.

And yes –– it could be way smarter (writing to memory _and_ disk), but YAGNI has been working out pretty well so far.

      class EventStore {
        constructor(file) {
          this.file = file;
          this.cache = null;
        }

        async appendEvent(event) {
          // Purge the cache for entries since we mutated the store.
          this.cache = null;
          return new Promise((resolve, reject) => {
            createWriteStream(this.file, { flags: 'a' })
              .on('error', reject)
              .on('close', resolve)
              .end(`${JSON.stringify(event)}\n`);
          });
        }

        async readEvents() {
          if (this.cache !== null) {
            return this.cache;
          }

          try {
            const data = await readFile(this.file, 'utf-8');
            const lines = data.split('\n').filter(line => line);
            const events = lines.map(line => JSON.parse(line));
            this.cache = events;
            return events;
          } catch (error) {
            return [];
          }
        }
      }

<comment><USER9> It's pretty common. All the wonderful proprietary file formats from the 90s (and probably before, and probably after) basically boil down to writing raw C structs to disk.

You can try it yourself... mmap a file, memcpy some structs there, do the reverse ... and enjoy!

(Obviously depending on the memory layout of one C compiler on one architecture does not make for portable files. But that was never a design goal of this system.)

<comment><USER10> I spent part of the mid-1990s hacking a proprietary data streaming protocol written in lexx and yacc. It was what we had back then.

</comment></comment></comment><comment><USER11> To offer a slightly alternative perpective on this, I actually think this type of "article"/("listicle"/"tweetacle"?) can have negative effects. In my mind, it lends credence to the very toxic notion of "value of ideas" over "value of execution".

The former is something that has all sorts of knock-on effects: backward IP laws "protecting" ideas, perverse incentives within large corporations with outspoken "idea men" being promoted ahead of doers, non-technical founders with "high-potential ideas" sucking up investment and expecting to execute with technical hires on untested theories.

I'm not saying any of the above applies in this case of course, but the fact is that it is you who built Redis, not pg, nor many others who've had similar ideas, and I think writing the above tweet thread lends undue weight to many of above negative trends in our industry (and also in general in recorded history of IP/invention-credit battles).

<comment><USER12> > In my mind, it lends credence to the very toxic notion of "value of ideas" > over "value of execution".

Ideas are required for execution; they don't have independent value (idea without execution delivers nothing), but neither does execution (you have tohave something to execute.)

<comment><USER11> Of course. I didn't say otherwise: what I'm talking about is value. Ideas are often (usually?) assigned greater value than execution itself, which is absurd.

In actual fact, even beyond "inception", most execution requires ongoing iteration and innovation. No final product is solely the result of its inspiration.

<comment><USER13> We might have biased opinion on the subject at least those of us heavily involved on execution side. Execution is much more subject to available resources.

</comment></comment></comment></comment><comment><USER14> The comment should probably be still around right? Does anyone have the link?

<comment><USER15> Maybe [https://news.ycombinator.com/item?id=14605](https://news.ycombinator.com/item?id=14605) ?

<comment><USER16> Here's the one, I believe. Linked to parent for context:

[https://news.ycombinator.com/item?id=14754](https://news.ycombinator.com/item?id=14754)

PS: They're basically the same, really, just adding another candidate to yours.

<comment><USER15> Wonder if HN still has all 20 million comments in a hash table?

</comment></comment></comment></comment><comment><USER17> "System prevalence[1] is a simple software architectural pattern that combines system images (snapshots) and transaction journaling to provide speed, performance scalability, transparent persistence and transparent live mirroring of computer system state." — [https://en.m.wikipedia.org/wiki/System_prevalence](https://en.m.wikipedia.org/wiki/System_prevalence)

</comment><comment><USER18> PG was also involved in the inception of Reddit: It was PG who gave Alexis and Steve the idea to make something like reddit, and also gave them the tagline "the front page of the internet".[0] PG had vetoed their initial idea to create a food-delivery app and then called them back and asked them to come up with something new. [0]: [https://www.youtube.com/watch?v=5rZ8f3Bx6Po](https://www.youtube.com/watch?v=5rZ8f3Bx6Po)

</comment><comment><USER19> Actually, I wonder why we dont have yet a programming language and runtime which, after a shutdown, reload exactly like it was.

<comment><USER20> If I recall correctly, Emacs currently does this. During the build it (slowly) loads all of the elisp into memory and then dumps out the memory image of it after it's all been compiled.

I'm a bit hazy on the details, but I think it involves calling unexec(). [https://lwn.net/Articles/673724/](https://lwn.net/Articles/673724/)

Edit: just noticed a sibling comment mentioned this too...

<comment><USER21> Only for built-in elisp, as part of the build process. User configuration (including packages) is reloaded from scratch on each start.

</comment></comment></comment><comment><USER22> Paul Graham inspired many people. His Hackers & Painters is something I enjoy going through now and then.

<comment><USER23> Counterpoint:

[https://idlewords.com/2005/04/dabblers_and_blowhards.htm](https://idlewords.com/2005/04/dabblers_and_blowhards.htm)

<comment><USER24> Those footnotes are pretty funny.

</comment></comment></comment><comment><USER25> Doesn't AWS's Aurora database sort of work that way too?

<comment><USER26> The pattern in general is used by more or less every database in the form of write-ahead logging.

[https://en.wikipedia.org/wiki/Write- ahead_logging](https://en.wikipedia.org/wiki/Write-ahead_logging)

</comment></comment><comment><USER27> I'd be keen to see a simple example of this pattern in Lisp (or another language). Does anybody have a good link?

<comment><USER28> I use it by default for new Node.js projects (most of which are experiments but some end up in production, and have been running without problems for years).

It's a simple pattern to implement. To make it a bit easier to use repeatedly, I've got a small helper class called JournaledCollection. You pass it serialize+deserialize callbacks for your item type, and it takes care of persistence in event logs.

For a while I was thinking about releasing my helpers as a project called LAUF, short for "Lame-Ass Un-Framework". Then one could say: "Most of my projects are LAUFable, I don't need anything more serious." (Awful dad jokes are a solid reason to publish open source, right?)

Never got around to it though, but if you're interested, I could put together an example.

<comment><USER29> I like the name -- and it sounds worth sharing!

</comment></comment></comment><comment><USER30> Redis is a great example for unbundling a pattern to a lib/service/business.

</comment><comment><USER31> Probably the next logical idea would be to apply to YC with Redis?

</comment><comment><USER32> PG inspires as usual!

</comment><comment><USER33> _When the application would be restarted, reading back the log would recreate the in memory data structures. I thought that it was cool, and that databases themselves could be that way instead of using the programming language data structures without a networked API._

That is literally how databases work. In Memory + WAL + Data Files on disk. You could, in theory, live without the Data Files and just a big WAL.

<comment><USER34> Except that most databases don't store their data in anything resembling "programming language data structures". You get tables, rows, and columns (or maybe a bit of JSON if you're lucky) instead of native integers, strings, lists, sets, and dictionaries.

<comment><USER35> Object and document databases have been around for decades.

Likewise ORMs which allow for higher order types etc. have been around since WebObjects i.e. also decades.

<comment><USER34> The primary purpose of an ORM is to overcome the "impedance mismatch" between relational databases and programming language data structures. There's no need for an ORM if you can store your data structures directly in the database.

<comment><USER36> That is an angle.

Other way to say it is that ORM is a workaround to the fact most languages are VERY poor at manipulate data.

Exist 2 main reasons for the "impedance mismatch":

\- Paradigms. 2 different paradigms will be at odds. Example: Functional and OO. This is ok.

\- Limitations: The relational model is _absolutely_ superior and more expressive at manipulate data than OO/Functional. You need A LOT of machinery to recover that power.

This is not ok.

However, this not change the fact that OO is ok.Similar how a KV store is fine, but certainly, a RDBMS store is much more capable.

<comment><USER37> How is relational more powerful than OO/Functional if you can't define an infinite dataset with it?

<comment><USER36> You can't?

Most people only see the relational model as is inside a RDBMS. That is how judge the OO for what you can do on Mongo.

RDBMS have some weird and well considered restrictions for their case.

But read a little about the relational model, and none of it depend on SQL or say anything about how is the storage.

P.D: Is important to note for where is MORE powerful. Remember that the creator of Pascal say:

[https://en.wikipedia.org/wiki/Algorithms_%2B_Data_Structures...](https://en.wikipedia.org/wiki/Algorithms_%2B_Data_Structures_%3D_Programs) Algorithms + Data Structures = Programs

You can say OO/Functional lean more to the "Algorithms" side but RM to the "Data Structures". OO/Functional not say much how operate on data, most is a exercise for the reader.

Instead, RM give a clear answer and defined operations for that.

You need to "spice up" things to make the one be more useful to the other part of the equation. RM, too pure, certainly is incredible limited, not even can print "hello world!", but that is just too give a solution about how transform data...

</comment></comment></comment></comment></comment></comment></comment><comment><USER35> Strange title.

Does merely recalling a language pattern really count as inspiring ?

<comment><USER38> In the tweet, the author of Redis says "[Paul Graham] ... inspired the creation of Redis". So it probably counts!

<comment><USER39> Ok, we put that in the title above for disambiguity.

</comment></comment></comment><comment><USER40> Of course Erlang has had ETS (and of course you can use gen_servers of various kinds for this) built in forever. Redis is fantastic but I think there have been many examples of prior art before this tweet!

<comment><USER41> Lots of prior art but the tweet didn't say PG inspired the paradigm; rather just Redis specifically.

Anecdotally, I've used plenty of in memory DBs (and written some too) but Redis has been by far my personal favourite.

</comment></comment><comment><USER42> Is this really a brilliant idea though?

Everybody knows RAM became cheaper cheaper, while mechanical disk can't be made faster, and SSD have reliability limits.

It seems entirely logical to expect databases to work on RAM first and then commit on disk for a large performance improvement.

<comment><USER2> When I started Redis people were like FTW data in memory?!

<comment><USER42> I was talking to a database teacher, and I tried arguing about ACID on an in memory database, arguing that there was a minimal window for database corruption in a transaction system, since the worst case scenario would seem to be a loss of very few transaction.

He was not really listening to what I was saying or my arguments, because a system like redis seems like a more than acceptable compromise.

It still seems a few people are reluctant to an in-memory database.

<comment><USER43> VoltDB is a probably a better example of an in-memory database with ACID semantics. Redis usually won't be deployed in a way where it fsyncs after each write operation because it runs too slow. You need to do some tricks like batching fsyncs to get decent performance and I don't think Redis has support for this. However, SSD fsync performance seems very high. I remember benchmarking an EC2 i3 instance that was giving 20000 fsync/s but if redis is giving you like 80k writes/s then even fsync this fast is going to be a bottleneck. [[https://redis.io/topics/benchmarks](https://redis.io/topics/benchmarks)]

I think people who are deploying redis are willing to tolerate lower durability guarantees for the extra performance. A lot of the time redis is some kind of cache and there is a way of reconstructing the real data from more durable storage in the case of failure. Or people are willing to lose a second of data or whatever fsync interval people are using.</comment></comment></comment></comment>


Will the real Banksy please stand up - <AUTHOR> https://creativefolk.co.uk/will-the-real-banksy-please-stand-up/ <comment><USER2> We all know it's been Goldie all along ;)

<comment><USER3> Well, I know it's Robert.

But this new art doesn't really look like a Banksy</comment></comment>


We surveyed 331 remote workers and here's what they say - <AUTHOR> https://twitter.com/RemoteTools/status/1218167761525829634 <comment><USER2> I just left a remote-only job for an onsite-only (or onsite four days a week, depending) job.

I loved the flexibility of being remote, but I was dying from the lack of social interaction. A third of my waking hours are spent working, and most of my friendships/relationships came from the office.

I've been remote for about two years, and I would go days at a time without talking to anyone besides my wife. We aren't meant to live that way.

<comment><USER3> I've been remote for 3.5 years now, and that's the first thing I tell new team members:

You currently have a community at your office that you don't realize. You will need to be intentional about building that community in other ways now.

I get lunch with friends more. Visit my Grandma out of state. Played a ton of Magic the Gathering.

It waxes and wanes, but it's my job to build and not just accept the "corp culture" as community.

<comment><USER4> I'm curious how remote work correlates to playing MtG?

<comment><USER3> My favorite joke about MtG:

"The magic is the gathering"

a draft is such a good env to just hang out, and we'd usually end up with a ringer or two, so it was a good way to socialize.

I've waned a bit because I didn't like the state of the meta, but have been itching to get back in for the social aspects alone.

Traded MtG for CS:GO mostly these days, but wanting to get more face to face time, even though I've been surprised about how much a consistent CS:GO group has felt like community.

</comment></comment></comment></comment><comment><USER5> I just quit my last remote job of 6 years.

The benefits:

1\. Live anywhere as long as the timezones are reasonable.

2\. No commute.

3\. Optional meetings actually stay optional.

4\. If you are in a later timezone, you can work late relative to the home office hours; making you pretty valuable to clients for adhoc issues at the end of the day while your team is busy commuting home.

The negatives:

1\. Very lonely, I ended up spending a lot of money going to cafes to fill a social need.

2\. Office meetings suck. If you are the only person dialing in to a meeting and the rest of the team is local there are tons of issues. Noise, missing out on sidebar conversations, etc.

3\. You are obligated to overcommunicate to your coworkers or managers to compensate for your lack of presence, but often they leave you in the dark.

4\. If your technology breaks down, you are your own support.

5\. If skype is signed out without you realizing it, management gets paranoid.

6\. You have to work very hard to keep from getting distracted. This gets harder if you aren't interested in your workload.

7\. Lack of visibility means lack of opportunities at work.

8\. Its very easy to get in a rut where the "remote guy" only works on certain specific things and can't grow their career.

If I can help it, I will be 100% local from now on. In my mind, there are too many opportunities missed by not interacting with the rest of the office.

I imagine this list would be different if the team was 100% remote.

<comment><USER6> > If you are the only person dialing in to a meeting

Every job I've had for the past 20 years (always 100% on-site) has been geo- distributed, so I've had to dial into nearly every meeting, often being the only person dialed in.

<comment><USER7> Same. One of my first jobs out of college in the 90s had me dialing into meetings with a geo-distributed team. The only thing that really changed for me as I transitioned fully remote was I didn't _have_ to drive somewhere every day.

I have had jobs later that were fully onsite, and I always end up hating the drive, the strict hours (perceived or otherwise), and the simple lack of freedom. I will do way more work if I can some basic say over my schedule.

</comment></comment></comment><comment><USER8> Perhaps I just don't grok Twitter, but this seems like an awful way to convey information. When you click the link, you're shown a whole bunch of garbage coercing you to sign up for the platform. It's only in a small postage stamp GIF that you're supposed to read an article that someone captured on they're on screen (scrolling and all). If you miss a section or want to scroll back up, you have to wait until the GIF loops.

Is it really too much to post a link (or archive) of the actual article?

<comment><USER9> You can get the actual article here [https://remotework2020.remote.tools/2-state-of-remote- work.h...](https://remotework2020.remote.tools/2-state-of-remote- work.html#companies-are-slowly-recognising-that-having-a-100-remote-company- is-better-than-partially-remote-teams) in a more readable form and without the silly smileys, but with added popups.

</comment></comment><comment><USER10> A few downsides I've struggled with that aren't mentioned (remote last 5 years of a 12 year career):

\- Changing jobs is very difficult, and I haven't quite cracked it yet. IME, every company that advertises remote hiring comes with caveats: way below market salary/down-leveling or _perfect_ candidate. I've been rejected by several companies after multi-round interviews with seemingly great skills match. I don't have an A-list pedigree, but maybe top 10% or so. If you're top school/FANG/excellent interview skills, you might have better results.

\- Anyone you haven't worked with directly will doubt your value, or at worst assume you're a complete bozo (doubly so if you live trad life in flyover country). This makes it difficult to build strong relationships up and across the org.

\- Remote leadership is considered an oxymoron. If you're several years into your career, you will likely be stuck in a relatively low impact "senior" position. This isn't a terrible place to be in the short term, but I worry about future prospects.

\- You will miss out on the Bay Area gold rush. Not the end of the world, but it's frustrating to see people getting rich and retiring early from doing the same work as you.

For me the takeaway is remote is great in the short term but possibly dangerous in the long term.

</comment><comment><USER11> Thanks for including GitLab in the report, Hrishikesh!

For those looking to learn more on remote, or leaders/founders considering it, here are a few resources that were used in this survey.

GitLab's Guide to All-Remote: [https://about.gitlab.com/company/culture/all- remote/guide/](https://about.gitlab.com/company/culture/all-remote/guide/)

Informal Communication: [https://about.gitlab.com/company/culture/all- remote/informal...](https://about.gitlab.com/company/culture/all- remote/informal-communication/)

People: adopting a remote lifestyle: [https://about.gitlab.com/company/culture/all- remote/people/](https://about.gitlab.com/company/culture/all-remote/people/)

Guide for starting a remote job: [https://about.gitlab.com/company/culture/all- remote/getting-...](https://about.gitlab.com/company/culture/all- remote/getting-started/)

</comment><comment><USER12> We build products for remote workers at my company[0], and we talk to a lot of remote workers to get their feedback. It's true that loneliness is a big problem that is mentioned by almost everyone we talk to.

We wanted to find a way to solve this so we started hosting "Work Clubs" which are essentially small meetup groups at coffee shops during the workday. We gather 3-4 people at the same table and work for 3-4 hours. It's a great way to get out of the house, meet other people and chat for a bit, but also get your work done during the day. We're seeing a lot of repeat users coming back and it's growing into a nice community of remote workers. Friendships and professional connections are made every week.

Right now we're hosting work clubs in the SF Bay Area, Portland, and San Diego. We're adding new work clubs daily or you can even host your own Work Club if you'd like. We'll be expanding to other cities soon so if you're a remote worker I'd encourage you to check it out and come work with us!

[0] [https://outofoffice.app/](https://outofoffice.app/)

</comment><comment><USER13> So basically remote is better then on-site for majority of people, if applicable. We kinda knew this for at least 10 years, no?

</comment><comment><USER14> working full-time is retarded. its just way too much. working full-time remotely is beyond retarded. i cannot comprehend anybody that does that. i do work remotely but no way in hell i would take a full-time 8-hour-day job. no amount of money would make me do that.

<comment><USER15> Reconsider your use of the word "retarded," friend.

</comment></comment><comment><USER16> An atheist, a vegan, a crossfitter, and a remote worker all walk into a bar...

I only know because they told everyone within two minutes.

<comment><USER17> To be fair, everybody always asks "So, what do you do?". The remote worker is being prompted to tell...

<comment><USER18> That question asks what they do, not where they do it.

<comment><USER17> … and then "Where is that? I'm not familiar with that company" or "How is your commute?"</comment></comment></comment></comment>