Flatpak 1.0 Released, Ready for Prime Time - <AUTHOR> https://flatpak.org/press/2018-08-20-flatpak-1.0/ <comment><USER2> Flatpak and Snaps are a great step forward for Linux packaging and usability.

I think there's a vocal segment of the Linux community that doesn't understand what a major roadblock it is for the general user having different distributions having completely different ways of packaging, distributing, and updating applications. Don't worry, no one's taking away your apt-get, pacman, rpm, eopkg, makefiles, etc.

<comment><USER3> I installed Ubuntu 18.04 the other day and was prompted to install some common software such as Slack, Discord and Spotify . I installed all of them, and it mostly worked (navigating to another page in the software centre cancels an ongoing install with no warning).

When I ran mount, I noticed that every package I'd installed had it's own entry in the mount list. After I rebooted the machine, these mounts were no longer listed and the software I'd "installed" was no longer available through the gnome menu.

I'm not against finding new and better ways to package software but this experience left me with the expression that the technology is not quite ready to be rolled out and adopted en masse.

<comment><USER4> I've noticed after updates I believe, the calculator app just won't open. It will sit there with the spinning wheel thing. After a reboot it will be fine. I noticed that the calc app is installed as a snap, never noticed this behavior before.

<comment><USER5> Wait, why is the calculator app installed as a snap? As a technology preview or proof of concept it's not very impressive—especially if it doesn't work!

</comment></comment></comment></comment><comment><USER6> Ready to ruin the security of Linux, you mean. The split between package vendor and package maintainer has classically been the primary reason for malware being rare on Linux. Getting maintainers out of the loop for auditing packages, ensuring security updates go out, etc - is an _awful_ idea. Sandboxing applications is great, but it can be done without subverting the package manager.

<comment><USER7> > The split between package vendor and package maintainer has classically been > the primary reason for malware being rare on Linux.

It's also one of the reasons users and proprietary software have been rare on Linux.

<comment><USER8> _> The split between package vendor and package maintainer has classically been the primary reason for malware being rare on Linux.

It's also one of the reasons users and proprietary software have been rare on Linux._

It may be why proprietary software is lagging, but I think most users prefer an OS level package manager. They just didn't know about them until the Appstore.

<comment><USER7> Which is why everyone loves the Windows Appstore and uses it exclusively.

The Appstore works on phones and tablets because they are primarily consumption-only devices, and because users are not given any other choice (also, the installer/uninstaller model has a lot of its own suck). I don't know about you, but that's not what I want out of personal computing.

<comment><USER9> Most complaints about the appstore revolve around things like it being slow, clunky, failing to work, being designed around DRM, forbidding win32 early on, etc.

Nobody is complaining that applications are in a central location.

</comment></comment></comment></comment></comment><comment><USER10> The tone of the comments on news like this never fails to disappoint me. Sigh.

The Snap store so vastly improves my user experience of using common apps I switched from Arch Linux (where 50% of the programs I had installed came from the AUR) to Ubuntu, where everything I needed was just _there_. No longer do I need to run weird scripts from the internet to get simple stuff to run on my non-standard distro (which could be Arch, Fedora, or whatever I am running at the time).

You can hold the position that these things are a big security risk. Distributing monolithic packages with likely old/vulnerable dependencies is not a great idea. But on the other hand, it prevents asking the user to run random scripts (which in many cases are _not_ vendor provided) as root to get their software, and it gives the user integrated automatic updates and other software center integration (as opposed to downloading random stuff from the internet). In terms of increased security through sheer usability and requiring less manual maintenance, the advantages of Snaps and Flatpak add up, I think. Many things in security are a tradeoff, and I feel that _getting the user to do the right thing_ is often extremely undervalued. I think it is also undervalued in these comments.

Flatpak and Snaps still have a lot of problems. Why do we have two competing standards? Why can't I properly get all Snaps running on Fedora or other platforms that use SELinux [rhetorical question - I know the technical reasons]? Why do so many apps not use their sandboxing effectively? Why is it so hard for these things to respect my computer's theme? The list goes on.

The list of problems is long and valid. But I think it's worthy of some celebration that advancements are being made in making desktop Linux usable for users and popular for developers. And I don't think it's clear at all that this is a regression in terms of security.

<comment><USER11> We also have the not-so-dead autopackage (listaller)

<comment><USER10> Yeah, but it's not just about solving the problem "how do I install package X on a random Linux distribution". I agree there have been solutions for that for a long time. In fact, Snap at least does not _even_ fully solve this problem because its sandboxing depends on AppArmor, which clashes with SELinux on distros that use this - (e.g. anything from Red Hat).

The real key to Flatpak and Snap is the entire app "experience" \- integration in the software center as a trusted source, automatic updates, clean installs and removals without messing up other parts of the system. Before Flatpak and Snap, this did not exist on Linux, especially not in something that was compatible with all distros.

</comment></comment></comment><comment><USER12> I like to run a pretty lean system, and flatpak gives me the ability to install some of the bloatier packages without the deep system dependencies they bring with them in a package manager.

Installing a PDF reader should not forcibly install Udisks2 and upower.

A lot of commenters are upset that maintainers are being removed from the equation. Can't each distro just set up their own maintained repository? If I understand correctly, there's nothing about flatpak that actually prevents traditional maintaining. The only thing distros have to do is integrate flatpak, set up their own repository as default, and note that user should use other repositories at their own risk. Which is basically how things already work.

Is there a valid reason to hate flatpak itself, or are you all just too caught up in hating change to actually evaluate it?

<comment><USER9> > Can't each distro just set up their own maintained repository?

Yes Fedora is working on doing so.

</comment></comment><comment><USER13> I've been using the Slack, GIMP, and Darktable flatpaks on Fedora Workstation (which is GNOME based), available on flathub.org, for quite a while, maybe a year - without problems. I also sometimes use Okular which is a KDE app, and by installing it, the necessary kde.Platform runtime libraries were also installed and kept up to date by flatpak - works flawlessly. There's also a LibreOffice flatpak I have installed, and it seems like the flatpak update "deltas" are smaller than RPM updates, by quite a bit.

I haven't used the feature yet, but supposedly there's a means of easily rolling back to a previous version in case an update has a bug the user can't work around. Rolling back RPM's can be non-trivial when there are many dependencies - it's way easier for me to do rollbacks of an RPM only based system by Btrfs snapshots which of course not everyone can depend on just for undoing an application update.

So I'd say this is definitely an improvement from a user perspective; and it seems no more painful and perhaps a little less painful for packagers.

</comment><comment><USER14> I dont know but if i just compare [https://snapcraft.io/store](https://snapcraft.io/store) and [https://flathub.org](https://flathub.org) ... I see that snap packages have a lot more adoption by big name vendors.

<comment><USER9> Canonical has a marketing team and outreach. Flatpak doesn't.

Also the Snap store allows a larger range of software (WINE repackages, server apps, duplicates, etc) that Flathub does not. Flathub is also hand reviewed so it takes a bit longer for new apps to get in.

<comment><USER14> im not talking about niche ones - im talking about REALLY big names.

firefox, vscode, etc. there is also this - [https://www.docker.com/docker- news-and-press/docker-and-cano...](https://www.docker.com/docker-news-and- press/docker-and-canonical-partner-cs-docker-engine-millions-ubuntu-users)

<comment><USER15> vscode at least is there on Flathub: [https://flathub.org/apps/details/com.visualstudio.code](https://flathub.org/apps/details/com.visualstudio.code)

<comment><USER16> I found the flatpak version too sandboxed to be useful: [https://github.com/flathub/com.visualstudio.code/issues/25](https://github.com/flathub/com.visualstudio.code/issues/25)

Snap "solves" this issue by not sandboxing some apps. I'm not sure if there is a good solution to sandboxing developer tools.

<comment><USER9> The solution is developer tools to conceptually split the target environment and their running environment. GNOME-Builder is an example of this.

<comment><USER16> I was wondering how Builder handles this when I wrote my reply, but I assumed it'd do the same thing. Thanks, I'll take a look.

</comment></comment></comment></comment></comment></comment></comment><comment><USER17> My first impressions of Flatpak have been positive, with a few caveats.

As an end-user, I want my apps to be getting regular, automatic updates, which means it's vital to get them from some kind of official repo. I sympathize with the one-man developer who just wrote some cool little Electron app that he designed to be cross-platform and promptly gets bombarded by requests from his 10% Linux userbase that wants the app to be packaged for Debian/Ubuntu/Fedora/SuSE/Arch repos. I get it, I've _been_ that annoying guy[0].

So to that end, packaging once as a Flatpak and working everywhere has been great. A handful of those pesky apps I used to have to regularly check for new RPM releases are now on flathub and I can update them automatically.

With that said, flatpak support is still spotty. DNF doesn't support flatpak yet, so I had to install GNOME Software on my Cinnamon DE just to be able to easily support and update them. There's also the issue of the greatly inflated installation sizes. I'm hopeful that support will get better soon now that it's finally at 1.0.

[0][https://github.com/MarshallOfSound/Google-Play-Music- Desktop...](https://github.com/MarshallOfSound/Google-Play-Music-Desktop- Player-UNOFFICIAL-/issues/2567)

<comment><USER18> > With that said, flatpak support is still spotty. DNF doesn't support flatpak > yet, so I had to install GNOME Software on my Cinnamon DE just to be able to > easily support and update them. There's also the issue of the greatly > inflated installation sizes. I'm hopeful that support will get better soon > now that it's finally at 1.0.

Could you not just use the cli?

(Not trying to start a holy war, just a question)

<comment><USER17> The CLI wasn't terribly intuitive for app discovery, and to be honest until I googled around I couldn't even find the flatpak command to update already- installed apps.

<comment><USER19> update installed apps: "flatpak update"

list whatever is available in repository: "flatpak remote-ls repo-name", i.e. "flatpak remote-ls flathub".

list installed packages: "flatpak list"

<comment><USER9> Searching is easy too: `flatpak search $foo`.

</comment></comment></comment></comment></comment><comment><USER20> Flatpak works much better for me on Ubuntu 18.04 with vanilla Gnome on Wayland: the Snap packages don't appear in the Gnome menu (until you launch an X session) and some Snap packages don't work at all on Wayland. Also, Spotify is updated much more often on Flatpak hub than on Snap.

</comment><comment><USER21> I dont understand the point of this - why is this any better than apt? Based off the top comment here this is meant to be much more user-friendly, but already installing on Ubuntu didnt work properly despite following Flatpak's own guide. And the install process for apps is then basically the same as apt. I dont get it

<comment><USER22> User friendliness is a smokescreen, it is about being upstream friendly. This in that now you get the kitchen sink of dependencies on each install rather than them actually having to care about API stability (not that they did much in the past).

This because they do not want to admit that distros being slow with rolling out new releases of their software, is because of the dependency tangles that they have created for distro maintainers.

</comment></comment><comment><USER23> They might want to take a look at snaps - it does something similar and has a good software mix.

<comment><USER7> Snaps are Canonical's NIH take on Flatpak (previously known as xdg-app). Fragmentation for fragmentations sake.

<comment><USER24> Sure it's Canonical's NIH and not Red Hat NIH, since both got released in December 2014?

<comment><USER25> Yes, because Snap doesn't support different repositories easily and everything atm is based on Ubuntu base-images. Also the license is GPL+CLA allowing Canonical to relicense it under a proprietary license. Furthermore they require AppArmore for some features which some distros can't use (it isn't part of the mainline kernel AFAIK).

<comment><USER25> Okay I was wrong: AppArmor is part of the mainline Linux kernel. I think it were some Ubuntu-specific patches then which were required for some of the sandbox features. I will try to find where I read it again.

</comment></comment></comment></comment></comment><comment><USER26> I would be curious to know what the differences between snap and flatpak are? Is this just a "flatpak is for RHEL, snap is for debian" situation, or is there something more to it? Just curious.

<comment><USER27> You can use them side by side. They are just different options :). If its not on snap, it could be on flathub or the other way around.

</comment></comment><comment><USER18> Packaging was a solved issue in Linux, congrats on the 3 steps back.

The rush towards containers because they're "easy" strikes yet again.

My fear is that the handful of companies that build packages for their desktop apps with abandon them and move to Flatpak/Snap. From the Flatpak docs it looks like anyone and everyone can just get access, even if you don't own the thing you're packaging. So if you pack $newpopularsoftware first you can now install malware on everyone's computers with a single push.

It's like they looked at everything bad about Chocolatey/NPM/pip/AUR and just ran with it.

<comment><USER28> > _Packaging was a solved issue in Linux, congrats on the 3 steps back._

Dude, seriously. Flatpak has issues, but saying "Packaging was a solved issue" when every distro rolls out its own packaging system is the reason we can't have nice things.

Ignoring the problems won't make them go away.

<comment><USER8> _Dude, seriously. Flatpak has issues, but saying "Packaging was a solved issue" when every distro rolls out its own packaging system is the reason we can't have nice things._

If every distribution was using the same packaging system, would they still be separate distributions?

EDIT: By packaging _system_ I assumed we meant the same repositories, and packages. Since that is how Flatpak seems to work.

<comment><USER29> > If every distribution was using the same packaging system, would they still > be separate distributions?

Do we even need that many distributions? What's the value proposition for all those hundreds of Linux distros?

My impression is that for many of them its:

A. we want to make my own distro, to learn, get visibility or maybe even make money

B. we want to make our own distro because of an already existing user base from point A.

C. we want to make our own distro because we can't get along with distro X makers

I wish that the barrier to entry to making a Linux distro was higher. People would have to put more thought and effort into it and the overall quality would be higher.

<comment><USER8> _Do we even need that many distributions? What 's the value proposition for all those hundreds of Linux distros?_

That is a valid point, and why I usually tell people to just use Ubuntu if they're not sure. The value proposition is that different people are doing different things, and even people doing the same thing sometimes like to do it different ways.

 _I wish that the barrier to entry to making a Linux distro was higher. People would have to put more thought and effort into it and the overall quality would be higher._

I believe that less competition equals lower quality.

<comment><USER29> > I believe that less competition equals lower quality.

While I generally believe in competition leading to better results for users/customers, the real life experience of Linux distros vs Windows or Mac OS doesn't seem to bode well for the free market :p (i.e. Linux distros should be the pinnacle of software quality and they aren't).

</comment></comment></comment></comment></comment></comment><comment><USER30> I know snap makes it hard if I want to modify something inside the package even as root (so it's close to the UWP nightmare). Is flatpack any different?

</comment><comment><USER31> Interestingly flatpak doesn't really support drag-and-drop.

<comment><AUTHOR> It should support it as well as deb or rpm does. I.e. it is completely uninvolved in drag-and-drop.

<comment><AUTHOR> Well, if you drag-and-drop a _file_ things might be somewhat problematic due to the sandboxing. An app with no access to the file can't read the dropped filename.

<comment><USER15> From a technical perspective, I understand what you mean. But from a user perspective, 'except for files' is a pretty big caveat. Files are the main thing I drag and drop!

</comment></comment></comment></comment><comment><USER32> What is the position of Linus and Linux Kernel Development crew regarding this?

<comment><USER7> Linus himself distributes Subsurface using AppImage.

<comment><USER33> Also available in flathub.org

</comment></comment></comment><comment><USER34> In Linux, you need to download, compile, and install viruses and trojans by yourself. With Flatpack, trojans can be installed in one click.

<comment><USER34> OMG. I got 2 downvotes before my page with response loaded after submitting. Never saw that. :-[ ] Instant karma.

<comment><USER35> Jokes on HN always run a risk of downvoting, even if really funny.

<comment><USER36> People seem particularly downvote happy this morning, or this story. Is this project close to YC?

<comment><USER37> Anything related to RedHead developers doing anything that is 'disrupting' or 'different' can unleash a shitstrom and lots of trolling.</comment></comment></comment></comment></comment>


A Web Service Written in Pure Bash - <AUTHOR> https://medium.com/@hhsnopek/a-web-service-written-in-pure-bash-2af847902df1 <comment><AUTHOR> Author here - Let me know if you have any questions!</comment>


Ask HN: Would you like to receive job openings to your inbox? - <AUTHOR>

I have been getting requests to run a newsletter with a strict focus on hacking job postings (world wide openings). I'm gathering interest here. If there are more than 100 subscribers (already have about 25) I will ship it out in a weekly (or bi-weekly) manner.
The newsletter will feature various security methods to reduce the amount of recruiter spam.
This would be a free service to the community. You will NOT receive SPAM of any kind. All will be securely handled by Mail Chimp. You can always unsubscribe.
If you are interested, subscribe here:
http://eepurl.com/uOdzP
If you have a job posting you want to publish, send it to:
firstname.lastname@example.com
PS. This is free. Give it a try.
Send me feedback to my email (on profile). <comment><USER2> I want this, but I want job postings relative to me. What I mean by that is my preference for location, salary/rate, my skills, telecommute.

Now I know you are doing this manually initially, but will you be organizing the jobs, can you do something to give us that info up front?

</comment><comment><USER3> Clickable link:

<http://eepurl.com/uOdzP>

<comment><AUTHOR> Thank you.</comment></comment>


Etsy CEO Chad Dickerson is out–along with 8% of its workforce - <AUTHOR> https://news.fastcompany.com/etsy-ceo-chad-dickerson-is-out-along-with-8-of-its-workforce-4036454 <comment><USER2> > "We are fully prepared to take any actions we believe are necessary to > protect the best interests of all Etsy shareholders."

What exactly are they insinuating?</comment>


Arkade: A Kubernetes app installer - <AUTHOR> https://blog.heyal.co.uk/introducing-arkade/ <comment><USER2> I can appreciate the effort that went into this, but I don't really understand its appeal, or even the appeal of Helm, when installing anything on Kubernetes is as simple as running `kubectl apply -f <manifest.yml>`.

For my personal cluster, I have a private Git repository filled with various singleton manifests that help me bootstrap various different things. Most "standard" installs (nginx-ingress, cert-manager, istio, etc) provide their own single manifests as well.

I feel that introducing layers of abstraction on top of that is generally unnecessary, but particularly because it doesn't really help you understand how K8s works.

<comment><USER3> It's just a templating solution. There can be many places you'd need to make edits in a collection of manifests that make up a particular app deployment. I've avoided it for this and security concerns but Helm 3 has resolved my issues with security.

Expect I'll be creating a chart for our fairly complex application stack very soon.

<comment><USER4> IMO kustomize handles that case far better than helm does and comes built into kubectl.

</comment></comment></comment><comment><USER5> So... Those are useful, but really the ugly side of installing things on Kubernetes is helm, which in theory you should be able to replace with something like this. Any plans to expand the list of stuff you can install with it to make it a defacto replacement for helm?

<comment><USER6> This is downloading the helm chart and installing with that.

<comment><USER7> Can you explain the advantage of this tool vs. helm?

</comment></comment></comment><comment><USER8> I'm new to k8s, isn't there already a plethora of apps to install k8s?

<comment><USER9> It's to install apps on a k8s cluster, not to install k8s.</comment></comment>


Ask HN: How long can you actually work standing up? - <AUTHOR>

Here's a question for people who are working at a standing-level desk - how long can you actually type while standing? Do your knees and feet get tired? I'm intrigued, but... I have to type a lot if I want to get paid. <comment><USER2> Last year a hurt my lower back and was forced to stand up as much as possible to help the healing process for 6 months (sitting down puts 6x more pressure on your lower back than standing according to my chiropractor).

I created a workstation that allowed my screen to be at eye height and keyboard/mouse to be at the right height for my elbows to be at right-angles. That was by far the most comfortable position to stand and type/mouse from. Later on I found having the mouse higher actually helped too with arm ache.

As for how long I could stand for, the first week was not a problem. I was doing 8am-1pm followed by 30 minutes sitting down, and then 1:30pm-6pm without a break other than a walk to the toilet occasionally.

From week two my legs really started to ache from the kneee down, I found myself leaning on the desk to take away the pressure. Investigating why this was happening I found it is to do with keeping your legs stationary as the muscles can cramp or just go stiff. The solution is to keep moving so a cheap manual treadmill should do the trick. The alternative of taking frequent breaks doesn't work as it breaks concentration.

If you have to do this for a couple of weeks then you should be able to cope, if you want to make a "change for life" then come up with some way to keep moving while working.

For those who do sit down all day and don't have back problems a word of caution. Sitting all day makes your lower back very stiff, but you won't notice this until you try to do something and hurt yourself. It may be a lifting task that an unstiff back could cope with. Taking time to exercise and stretch can save you such a disaster, I am healing well now, but still get twinges and have to be carefull.

<comment><USER3> "For those who do sit down all day and don't have back problems a word of caution. Sitting all day makes your lower back very stiff, but you won't notice this until you try to do something and hurt yourself. It may be a lifting task that an unstiff back could cope with. Taking time to exercise and stretch can save you such a disaster, I am healing well now, but still get twinges and have to be carefull."

That is the right caution, but the wrong reason. A stiff lower back (lumbar) is desirable. You want to be mobile at your hips, and upper back (thoracic) and have the ability to keep the lumbar stable. When you lift something your lumbar spine should be immobile.

You are correct that there are problems with sitting but it is that typically your lumbar is rounded so that you are weakening and stretching it all day long making it difficult to maintain proper posture when you lift something from the ground.

A quick rule of thumb for mobility: Ankles (mobile), Knees (immobile), Hips (mobile), Lumbar (immobile) and Thoracic (mobile). Stuart McGill is a great resource for learning about proper back mechanics.

Oh, BTW, I use a stand up desk and love it.

</comment></comment><comment><USER4> I recently (a week ago) converted my desk at my day job to a standing desk. It's easily the most ergonomic position I've ever worked in. I have noticed that just to keep my legs from getting stiff and my feet from getting sore I move a lot more throughout the day. At first this was slowing down my typing a bit, but I'm almost back up to speed. I also brought in a bar stool to lean on (not sit on) when my legs get a bit tired. I'd say I'm standing now for about 80-85% of the work day. I have noticed a bit of residual pain in my heels, but I just got a fatigue mat, and hopefully that will help. By and far the hardest thing to get used to had been minor lower back pain - which, from my research, is due to some core muscle weakness from - you guessed it - sitting too much.

One of the best things I've found about standing is that it keeps me more alert and awake throughout the day. This is by far the most immediate plus, for me.

The important thing to remember is to keep moving - change your position often. I have considered the manual treadmill route, but I'm a little concerned my co-workers wouldn't appreciate the noise. Walking in place seems to work just fine - but does earn me some odd looks.

</comment><comment><USER5> 8 - 10 hr days are no problem. I built up to that over a few weeks.

Other possibly relevant factors: Switched to dvorak about 10 years ago. I'm in athletic shape and maintain a healthfull diet.

I usually have a dead tree format book going, and take occasional breaks during the day to read, cook, exercise, take a walk, etc.

Footwear makes a big difference. Minimal slippers were best. Anything with arch support makes my feet hurt after a few hours.

</comment><comment><USER6> I split my work about 40/60 between:

1) sitting down at my home office (nice wood furniture and decor the whole works)

2) standing at my work office (ugly but very functional perma-temporary standing desk)

... and don't have any problems at all. I type as long as needed, etc. However, I never stand still for more than a few seconds. (This seems to be a built-in feature of me, rather than anything I do intentionally.)

</comment><comment><USER7> I recently did a week long stint on a temporary standing desk before ordering new longer legs for my current desk.

For the first few days my feet hurt after standing for an hour or so, however I did find that I felt more energetic throughout the day. I did have an odd feeling of being unsettled the first day, but after that I found it easier to focus, especially with the extra energy.

By the fifth day the pain in my feet was significantly reduced. This week I've returned to my (fairly) ergonomic sitting desk setup and I've noticed posture issues and some discomfort in my lower back.

My experience was that alternating short periods on a tall stool with standing provided the most comfort. The paper, "The benefits of sitting and standing to work" ([http://www.ergomotion.com.au/images/PDF/HFESA%20paper%202008...](http://www.ergomotion.com.au/images/PDF/HFESA%20paper%202008%20%20illustrated.pdf)), references a study in which 30 full-time bank tellers came to the same conclusion. Using a chef's mat can also provide some comfort for your feet.

</comment><comment><USER8> I have a motorized sit/stand desk, as is the norm here in Denmark (and Scandinavia in general probably). I have used these for five-six years.

I tend to stand around half the time at work, which comes to something like three-four hours on the average day. If I have just done a long run or bike ride I might sit for the entire day as my legs and back will already be fatigued.

The thing that makes me sit is aching feet. I suppose standing for a long time makes bodily fluids assemble in the lower legs, so after a while the feet start to feel a bit swollen and the heels get sore from having all the weight on them. This is alleviated by switching around from one leg to the other, but after a couple of hours I need to sit for a while (this is the reason a desk must be stand OR sit and not fixed to standing-only - you need the ability to adjust according to the situation.)

<comment><USER9> The norm? Really? Motorized desks are pretty rare here in the US.

</comment></comment><comment><USER10> I set up a temporary standing desk at home for my work at night and on the weekends. I didn't really have a problem typing for five hours at a time or more. However, after about three weeks, I was getting aches in my ankles and calves. I took down the standing desk soon after that. I felt like it was sucking up my energy. I think standing about 20% of the time would be ideal.

</comment><comment><USER11> I am now using an exercise ball <http://www.freestylemind.com/exercise-ball- office-chair> . I don't have a standing-level desk but the ball reminds me to stand up every once in a while. It's not exactly what you're looking for but it could be a cheaper alternative

<comment><USER12> I just started using one of these. Today is day 4. (The weekend was in the way, so it's consecutive day 2) So far the only real change is my back is hurting in a different place than with the cheap chair I had. (upper back instead of lower) I'm giving it till Friday because I've heard that back pain is normal at first mostly due to muscles being used that you weren't using before.

<comment><USER11> I also recommend doing some back exercises if you can.</comment></comment></comment>


A prototype of a decentralized political party - <AUTHOR> https://hack.ether.camp/idea/a-prototype-of-a-decentralized-political-party <comment><USER2> Trying to end corruption in the US, I'm starting to think, is what has brought American politics to its current low state. I think the worst political decision of the past few decades was the move to ban earmarks. Whatever negative things you can say about them, earmarks gave congresspeople a way to please their constituency without reference to some particular ideological test. They could always say: "Well sure, I didn't vote to ban abortion, but we did get a new agricultural research center." Without the ability to drive federal dollars to their districts in return for 'selling out' their parties ideology, a lot of congressmen have lost the ability to vote for anything at all. It's wrecked the committee systems, the budget process, everything.

Same deal with banning unlimited donations to candidates while allowing it to superpacs that technically aren't allowed to coordinate with the candidates. You haven't made candidates less beholden to big donors, you've just put the big donors totally in charge of the campaign, because their spending dwarfs the spending of the candidates themselves.

<comment><USER3> Just going to have to disagree... I think earmarks are exactly the thing that caused congresspeople to lose all of their power.

> you've just put the big donors totally in charge of the campaign, because > their spending dwarfs the spending of the candidates themselves.

When the donors are the corporations, and earmarks result in higher profits for the corporations, a dangerous positive feedback loop occurs where you basically end up with corporations controlling the government instead of the elected politicians.

As far as the worst political decision of the past few decades, watch this video if you have an hour to spare. It lays out the case where _adding_ transparency in congressional voting is really the root cause of Congress being so screwed up. It might change your mind... [https://youtu.be/1gEz__sMVaY](https://youtu.be/1gEz__sMVaY)

</comment></comment><comment><USER4> This techno-utopianism "solution" fails to understand that the basic goal of a political party is to get people elected into office, full stop. Even if your radical decentralised crowdfunded party makes you feel good, if you're not getting people into legislative and executive positions, you are doing it wrong.

Further, all of these theoretical goals break down when the theories collide with reality. All systems can be gamed, and the way to reduce the effects of it is not to embark on quixotic quest to create a completely transparent party where everybody has perfect information of all things at all time. Rather, focus on incentivising whistleblowers and removing corruption when it meets the light of day.

<comment><USER5> > the basic goal of a political party is to get people elected into office, > full stop

You'd be surprised how many people think that parties exist to promote a certain ideology and bring it into power -- not necessarily by getting elected.

</comment></comment><comment><USER6> Voluntary voting effectively gives people with a single-issue obsession more power than everyone else, because they show up to vote. In compulsory voting systems, the outliers are moderated by the median, whose concerns are typically less emotional (abortion, guns) and more economic (price of milk, mortgage rates).

Political parties are a concentrated form of voluntary voting. One of the reasons the USA's primaries system is such a caricature factory is because it's a concentrated form of a concentrated form of voluntary voting.

There are many people who propose models like these and don't think through the end game. The end game is that any party where elected representatives have their votes directly controlled by party members is a party that will be instantly stacked by well-organised single-issue whackjobs.

You like crypto? Too bad, the terrorists use it, vote it down. You're OK with gay marriage? Too bad, Jesus is agin it, vote it down.

Techno-utopianism doesn't solve for the fundamental constraint, which is that people will _always_ disagree. No system can create smooth consensus. What is left is to design a safe, functioning system. Direct democracy's historical performance in this respect is _abysmal_ , which is why we have representative democracy instead.

<comment><USER7> > Direct democracy's historical performance in this respect is abysmal

Is that true? It certainly has its critics, but in classical Greece it more than held its own in a highly competitive ecosystem for ~180 years. I'm sure at least that we need more experiments with different institutions.

<comment><USER8> 180 years is not much, other kind of republics fared better (the roman republic lasted 500 years, and the venetian republic more than 1000).

Also, the direct democracy in, e.g. Athens actually encompassed a very limited number of people (adult males owners of land) so it's not 100% comparable with a modern version.

I do agree we should try more things though.

<comment><USER7> Owning land was not required. In Pericles's time they did add a requirement that both parents be Athenians, not just the father. I agree that the details and context matter, and there are a lot of details beyond "all the citizens can vote". (Here are some that HN readers ought to find cool: [http://www.alamut.com/subj/artiface/deadMedia/agoraMuseum.ht...](http://www.alamut.com/subj/artiface/deadMedia/agoraMuseum.html))

</comment></comment></comment></comment><comment><USER9> This is an interesting thought but it does not get into the motivations for why a real political party might make the choice to operate this way -- there likely needs to be some perceived comparative advantage to the potential users of such a model for them to use it, or else why take the risk and venture into the unknown?

I think it's possible that a DAO could be part of a system that does provide such an advantage -- it may even be the case that it alone confers one! But I don't know what it is and want to see one articulated.

This topic is of current interest to me, as I've been reading summaries of the history of political and philosophical trends lately[1]. The interplay of different power groups with economic, technological, and other factors to form novel systems for controlling their environment is very complex, and fun to speculate about, especially the internet's role in possibly allowing new power structures to exist that may lead to new systems.

1\. In particular, Bertrand Russell's History of Western Philosophy, which has been a surprising lot of fun.

<comment><USER10> I'm not convinced this particular model would help, but in principle, I think a party could gain advantage by a system that gave it better collective intelligence...choosing better candidates, deploying better strategies, organizing volunteers more effectively, etc.

</comment></comment><comment><USER11> _Got your idea? Great, now you need write it up and tell everyone about it so you can find your teammates and supporters_

Reads to me as: got an idea? Form a political party.

I predict internal politics will destroy this idea _because_ any group that believes it is immune to politics is already infected but in denial.

We _can 't_ escape politics. It's what we do. It's the fundamental fractured structure of the human experience.

We need politics because it's the best and least harmless place to put those criminals we call politicians.

Also, amusing the domain is .camp. The word camp shares the same origins as the German word kamf which means _to struggle_. Yep, politics sure is a struggle.

</comment><comment><USER12> Will have a feature to create a subparty and transfer all of parent party power into it?

<comment><USER13> I am out of the loop but since the DAO hack does anyone really trust ethereum anymore?

<comment><USER14> Yeah you're sort of out of the loop. The majority of the community believes that "a manual override is necessary every now and then on the path to building autonomous robots"

It's a platform in development, and it's made huge strides in security and governance since the hack.

</comment></comment></comment><comment><USER15> M5S is trying to do that in Italy.[1] Though they don't use any crypto technologies.

[https://en.wikipedia.org/wiki/Five_Star_Movement#Ideology](https://en.wikipedia.org/wiki/Five_Star_Movement#Ideology)

<comment><USER16> Italian citizen here. The experiment was interesting, but it's implementation is quite sub-optimal: when you have to govern, you recognize that matters are quite more complicated and you need to compromise. This is not necessarily wrong, if you have the intellectual honesty to admit that the utopian purity that you assumed as the main differentiator between you and the "old, dirty politics" is, well, an utopic oversimplification.

</comment></comment><comment><USER17> I think sharing control of funds is a weakness. Not just when it comes to smart contracts that will inevitably have bugs, but for organizations in general. Instead, we can create organizations without boundaries and govern them the same way we govern genres of art—if you do something that aligns with the brand, your action is part of the organization.

That's why I built Benefactory, a platform for decentralized nonprofits. We can weave individual efforts into an organization with a strong brand so it's easier to attract recognition and further contributions.

Here's an organization dedicated to making Ethereum easier to use and build on top of: [https://media.consensys.net/2016/09/07/introducing-the- commo...](https://media.consensys.net/2016/09/07/introducing-the-commonwealth- of-ethereum/)

Join our Slack and help us build a commonwealth for every genre of public benefit. [http://slack.benefactory.cc/](http://slack.benefactory.cc/)

</comment><comment><USER18> This is simply "Tyranny of the Masses" 2.0.

The next revolutionary system will be adaptive algorithms, created for fairness, implemented by system engineers, with strong feedback mechanisms for improvements.

</comment><comment><USER19> What a marvelously ignorant idea. Why is it so hard to understand that there will be no magic machine that will allow you to live happily ever after without need to think.

<comment><USER20> Why is it so hard to understand that there will be no magic machine that will fly into space and put satellites that will relay our messages to one another...oh wait...

<comment><USER19> ouch, dat STRETCH ;)</comment></comment></comment>


I built a dating app with over 60% female users. How to reach more males? - <AUTHOR> Hi all,
I made a dating app for remote workers. Didn't spend any money on ads. We have 60% female users. Biggest segment is 25-29 year olds.
Stats: https://cl.ly/6d13336870a4
Any idea how to get more guys? I need to balance our ratio.
Thank you, <comment><USER2> Looking at your stats, I would suggest that you are looking at this in the wrong way. You need more users in general. Having more women during growth is a positive. The population will naturally reflect the remote worker with time as you become more popular.

That said, I wouldn't be surprised if there were a sizable difference in the genders of remote workers.

</comment><comment><USER3> I agree with other comments that this looks like growth hacking, not a sincere request for help.

Many dating apps charge only men because it's so much harder to get female users. The same is true of clubs and some bars during "ladies nights".

</comment><comment><USER4> When I was in the 18-29 year old age range, like more than half your users, I definitely wasn't thinking of ways I could date a girl in another city or country. That would be incredibly frustrating in a way that I don't need to explain further. (I had a relationship that had a long-distance stint in my 30's and it was still maddening. I gained 25 pounds from depression.)

It seems to me that the guys would have some type of non-typical motivation to do this when they could otherwise just get out of the house or use an app to meet local girls. Remote worker and rural? Personality type? Older man, younger woman? Expat not wanting to date locals?

Can you survey some of your users, male and female, to determine their motivations?

</comment><comment><USER5> Just publicize it: the substantial majority of dating apps have more males than females so your results are strange.

<comment><USER6> It's strange because this is an ad :)

<comment><USER5> The URL goes to statistics on usage--not a dating site.

<comment><USER7> I would never click on a shrouded/shortened URL.

</comment></comment></comment></comment><comment><USER8> This is most likely spam

<comment><AUTHOR> it's a question on how to balance a marketplace.

</comment></comment><comment><USER9> Are you sure they are real? It looks like bot accounts created by scammers or something similar.

<comment><AUTHOR> yes, we check every account. we only have 2k users. this is not an issue.</comment></comment>


VeriFone launches iPhone card acceptance hardware - <AUTHOR> http://www.paywaremobile.com/

<comment><USER2> Apple is already using something similar (if not this device) in their stores. I noticed last week in the 5th Ave. Apple Store in NY that the guy had an iPod Touch with a card reader/barcode scasnner as opposed to the windows mobile devices they traditionally used for iPhone activation, etc.

He remarked it's apple's goal to move completely to these, as the WinCE devices suck. Pretty cool, although you've also just introduced a fantastic portable card skimmer :)

<comment><USER3> It doesn't look like Apple stores are using this one. As you mentioned it has a barcode scanner too. The sales drone didn't know details about it though.

+1 for VeriFone building this.

<comment><USER4> [http://www.appleinsider.com/articles/09/11/03/exclusive_look...](http://www.appleinsider.com/articles/09/11/03/exclusive_look_at_apples_new_ipod_touch_based_easypay_checkout.html) is what Apple's using.

A bit clunky due to small manufacturing runs (no ability to super-shrink and amortize expensive R&D over millions of copies).

</comment></comment></comment><comment><AUTHOR> This is what Square should have designed....

<comment><USER5> Why?

By designing their reader the way Square has, it drastically minimizes cost and opens the design so it works with most smartphones and even many laptops.

I hope that screenshot isn't representative of their software, either... it looks _horrendous_.

<comment><AUTHOR> You think a card reader in a headphone jack is going to last long in a retail environment?

<comment><USER5> I leave my iPhone in my pocket with a headphone jack for hours at a time while walking/running/etc., and am ridiculously clumsy - I get the cable caught on doorknobs, go to sleep with earbuds on and have the headphone cable tugged out at odd angles, etc, without any apparent damage to the headphones or the iPhone. I've done this with every iPhone I've had since the first one, also, and the worst that's happened is an Apple Store Genius had to pull a bit of fuzz out of the bottom.

I admit this is purely anecdotal evidence, but as long as the reader itself is built well I see no reason why Square's reader wouldn't hold up in a retail environment.

If it really becomes a problem, there's no reason Square couldn't provide a reader similar to Verifone's. But with Square's method they get a ridiculously fast time to market across a wide variety of devices with far easier to manufacture devices and no lengthy Made for iPod approval times or worrying about supplies of iPod authentication chips from Apple.</comment></comment></comment></comment>


Valve Makes More Money Per Employee Than Google Or Apple - <AUTHOR> http://www.crunchgear.com/2011/02/15/valve-makes-more-money-per-employee-than-google-or-apple/ <comment><USER2> longer thread on this here: <http://news.ycombinator.com/item?id=2221846>

</comment><comment><USER3> This is insane. Why aren't they hiring more employees?!?

<comment><USER4> Also insane: <https://skitch.com/dasil003/rq6tf/hacker-news></comment></comment>


A command-line weather app built using Elixir - <AUTHOR> https://github.com/tacticiankerala/elixir-weather <comment><USER2>
      function weather(){curl -s "http://api.openweathermap.org/data/2.5/weather?q=$1&units=metric" | jq .main.temp | figlet -kcf big}

      $ weather london
                                __  _  _     ___   _____
                               /_ || || |   |__ \ | ____|
                                | || || |_     ) || |__
                                | ||__   _|   / / |___ \
                                | |   | | _  / /_  ___) |
                                |_|   |_|(_)|____||____/

<comment><USER3> Perhaps I'm a bash noob, but when I try to paste that in my shell, it complains about a syntax error near `{curl`. Am I doing something wrong?

<comment><USER4> There are spacing issues for me. Try

        function weather() { curl -s "http://api.openweathermap.org/data/2.5/weather?q=$1&units=metric" | jq .main.temp | figlet -kcf big ;}

</comment></comment></comment><comment><USER5> Another ASCII art weather (forecast) utility, but in Go: [https://github.com/schachmat/wego](https://github.com/schachmat/wego)

<comment><USER6> Can anyone explain why a dependency of this app is a "working Go environment"? I thought one of golang's selling points was the fact that it created a simple binary.

As far as I can tell, the Go environment is simply being used as a cheap installer, is that correct?

<comment><USER7> Because he's sharing the source code rather than a compiled binary. It's no different to having make + gcc listed as a dependency for C++ code.

<comment><USER8> Strictly there is a little hindrance for the non-gopher user because this won't work until they set up a Go workspace, i.e. decided where they want GOPATH to be, set that, and added $GOPATH/bin to PATH to have the executable be runnable.

        $ env -i $(which go) get github.com/schachmat/wego
        package github.com/schachmat/wego: cannot download, $GOPATH not set. For more details see: go help gopath

<comment><USER3> Absolutely. I'm happy to `apt-get install` something, but the conceptual overhead of "let me configure a $language development environment" is high enough that I'm not going to bother just to install this awesome looking tool.

I'd love it if this had been packaged in a way similar to Python or Node tools, where installation is as simple as 'install Python and pip; pip install my-program', and more-experienced users (or those who want source) can clone the git repo.

<comment><USER7> So request a binary then. You're basically moaning that an open source project is shipping source code.

And FYI, Go is in quite a few distro repos so you might be able to just:

      apt-get install go-lang
      mkdir -p ~/go/src ~go/bin
      export GOPATH=~/go
      go get github.com/schachmat/wego
      go install github.com/schachmat/wego

However considering this is an open source CLI tool, I don't think it's at all unreasonable to expect he user to do a bit more manual work to compile and run this tool from the command line.

In fact, quite frankly, I find it rather disgusting that someone should share their work and source code like this and have others moan simply because they're too bloody lazy to compile it themselves. I mean seriously guys, this is Hacker News, not PC World Magazine.

</comment></comment></comment></comment></comment></comment><comment><USER9> It's nice, but it's not beautiful. Let's stop calling everything beautiful.

<comment><USER10> ...and "awesome".

</comment></comment><comment><USER11> Should be called "temperature" rather than "weather". 21 degrees and...raining? sunny? any cloud?

Wouldn't call it beautiful - the ascii art is really distracting.

</comment><comment><USER12> Temperature accurate to three decimals? That's kinda silly. It would be more useful to display the "felt temperature".

<comment><USER13> As well as, you know, the weather? Like temperature is an important part of weather, but it's often not even the most important one.

</comment></comment><comment><USER14> If you like the ascii characters like that, you might also enjoy figlet: [http://www.figlet.org/](http://www.figlet.org/)

<comment><USER15> You beat me to it, so I'll just add that figlet in combination with the inestimable cowsay ([http://en.wikipedia.org/wiki/Cowsay](http://en.wikipedia.org/wiki/Cowsay)) produces excellent results.

</comment></comment><comment><USER16> I'm excited about this not because I want to use it, but because it is a great example of an Elixir app. I'm in the process of learning Elixir, and it was cool to see someone else's code and be able to make sense of most of it. Thanks for posting this!

<comment><USER17> I don't know Elixir, but it does some questionable things. For instance, it appears to read and process the entire ascii_chars.txt file for each character in the output. It's not a big file, but it wouldn't be difficult to read it once.

<comment><AUTHOR> I thought of that but for a starter I didn't want to optimise too much. But still it's a good suggestion and I will apply "boy scout rule" for sure!

</comment></comment></comment><comment><USER18> That's not the weather, that's the temperature. But I like the effort put into making interesting little tools!

<comment><AUTHOR> yeah.. that's true, it's just shows temperature.

Btw, Thanks for your kind words!

</comment></comment><comment><USER19> curl '[http://api.openweathermap.org/data/2.5/weather?q=london&mode...](http://api.openweathermap.org/data/2.5/weather?q=london&mode=json&units=metric') &>/dev/null | jgrep -s main.temp | figlet

Put this in a function. Done.

Gist here since copying and pasting above didn't work. [https://gist.github.com/zaargy/384889cb44960e8559d5](https://gist.github.com/zaargy/384889cb44960e8559d5)

<comment><USER20> My first thought was "pipe into figlet, done."

</comment></comment><comment><USER21> Interesting describing ASCII art as 'beautiful'. You can tell this isn't Designer News :P

<comment><USER22> I son't know but I love ncurses software and find the actual UI "beautiful since it gets me the information quickly and quickly lets me get things done.

I find my wee-chat with 256 color urxvt with Source Code Pro font in Light Solarized to be the best looking IRC client ever :)

<comment><USER20> this isn't even ncurses, it's just stdout

</comment></comment></comment><comment><USER23> Does not work (osx):

      ~/tmp/elixir-weather $ ./weather  Amsterdam

      =INFO REPORT==== 7-May-2015::16:37:56 ===
          application: elixir
          exited: {bad_return,
                      {{elixir,start,[normal,[]]},
                       {'EXIT',
                           {{badmatch,{error,enotsup}},
                            [{elixir,start,2,[{file,"src/elixir.erl"},{line,34}]},
                             {application_master,start_it_old,4,
                                 [{file,"application_master.erl"},{line,272}]}]}}}}
          type: temporary
      Failed to start Elixir.
      error: {error,
                 {elixir,
                     {bad_return,
                         {{elixir,start,[normal,[]]},
                          {'EXIT',
                              {{badmatch,{error,enotsup}},
                               [{elixir,start,2,[{file,"src/elixir.erl"},{line,34}]},
                                {application_master,start_it_old,4,
                                    [{file,"application_master.erl"},
                                     {line,272}]}]}}}}}}

<comment><AUTHOR> I will look into this issue. Thanks for reporting :)

</comment></comment><comment><USER24> Ya know, I was just thinking about doing something like this just a couple of days ago, but instead I wrote a python script to get the weather from forecast.io api, then brought that into my tmux status bar.

<comment><AUTHOR> That's great! would be nice if yo could share the source as well.

<comment><USER24> Ask and you shall receive! I'm very much a beginner developer so any feedback would be appreciated.

[https://gist.github.com/jhwhite/2df093eff1f9bab74144](https://gist.github.com/jhwhite/2df093eff1f9bab74144)

</comment></comment></comment><comment><USER25> I'm sorry if this comes across as negative, but this is an example of using the wrong tool for the job, IMO.

I love Erlang and Elixir because BEAM gives me easy concurrency, metaprogramming and best of all, fault tolerance via supervisors. For a service that I need to stay alive, this is great. For a simple command line utility, I'd lean more toward a compiled language like Go, Haskell, Common Lisp, etc.

<comment><AUTHOR> I completely understand your point. This is a project I created while learning Elixir.

</comment></comment><comment><USER26> I'm going to be honest... This is an ugly looking pig of a command line tool. The giant ascii art looks bad and does nothing for its usefulness or usability.

<comment><AUTHOR> I am sorry for that. It was a hobby project of mine when learning Elixir and I got excited about it.

<comment><USER27> I've got nothing against it. it's a fun little hobby app, but yeah, I've got to agree with the commenter above this is FAR from any standard definition of a "beautiful" app.

<comment><AUTHOR> I admit that :)

</comment></comment></comment></comment><comment><USER22> I have used weather an old command line utility for years.

[http://fungi.yuggoth.org/weather/](http://fungi.yuggoth.org/weather/)

Pretty cool to track the temperature with your own home temperature.

</comment><comment><USER28> [http://weather.com/](http://weather.com/)</comment>


Text Messaging to Groups is Simple & Free w/ SendHub - <AUTHOR> http://www.7x7.com/tech-gadgets/text-messaging-groups-simple-sendhub

<comment><USER2> How is this service different from GroupMe?

<comment><AUTHOR> Groupme is like instant messaging for a group. SendHub is much more like email.</comment></comment>