Make. It. Simple. Linux Desktop Usability - <AUTHOR> https://medium.com/@probonopd/make-it-simple-linux-desktop-usability-part-1-5fa0fb369b42 <comment><USER2> Global menus only make sense in an environment where only one application is on screen at once. This is especially true when you throw in "focus follows mouse"and you have to cross another application on the way to the global menu.

What I really hate lately is the iconification of menus, be it ribbon or that firefox abomination. Having to learn a different set of hieroglyphs for each application is a terrible UX. This is taking the form over function approach that has long plagued media players (still does with spotify and netflix) and bringing it to all applications.

Humans are much better at scanning through justified lists of text, this was our fast lookup method long before computers existed.

<comment><USER3> Global menus assume a single monitor setup. And as such are unsuitable.

<comment><USER4> This is not necessarily the case;

The Mac OS X desktop metaphor does attempt to solve this somewhat, the last application in focus on a particular monitor, is presented within the menubar on that monitor - regardless of whether or not the program is currently been interacted with.

For example: currently I have 4 displays with a program full screen in each, each Menu Bar has the menu options for each program.

All inactive programs present in the menu bars on the other monitors are greyed out - the effect of this can be seen in the linked image (I have minimised the other windows because work business) - [https://imgur.com/MM8sQdt](https://imgur.com/MM8sQdt)

I have Safari Tech Preview [the currently active window], Outlook, iTerm and Firefox (the display for which isn't included in the screenshot because it it's a vertical panel with odd dimensions), open on a monitor a piece.

</comment></comment></comment><comment><USER5> > I'd like to see the Linux desktop improve. And I think a wakeup call is > needed

This. Absolutely this. Please don't take his post as a personal attack, and consider the possibility that Linux is not as usable as it should be.

<comment><AUTHOR> It is unsurprising that this falls on deaf ears. The author is the creator of AppImage, the only remotely sane application distribution mechanism in the Linux Desktop world, and it is used by basically nobody. I've come to the conclusion, over time, that the Linux Desktop community just prefers that everything sucks. Maybe it makes them feel more 1337, maybe they just really really like terminals, I don't know.

<comment><USER6> To be fair, terminals are really nice.

<comment><AUTHOR> They can be. I have a lot of fond memories of TUIs from the DOS era. I'd probably have a lot more respect for the Linux Desktop if they'd not even bothered with trying to be a GUI Desktop OS and just stuck with TUIs.

</comment></comment></comment></comment><comment><USER7> I'd like to add to that list, the GNOME Header Bars (the merging of title bar/menu bar/tool bar) into what ends up being a hodge-podge of button and menus which is so radically different between applications I never know where to click.

Bonus points to Nautilus, which somehow manages to have 2 buttons side-by-side that look like hamburger menus, the actual hamburger menu and view as list.

I really dislike everything looking and acting different, it's like having to learn a new language just to talk with a new application.

</comment><comment><USER8> From the second part:

[https://cdn-images-1.medium.com/max/1600/1*EXYbO_qnV2m8fv4mB...](https://cdn- images-1.medium.com/max/1600/1*EXYbO_qnV2m8fv4mBuBH-g.png)

> Adjusting the volume in KDE Plasma — why is there more than one slider for > playback? Hardly intuitive

Because there are multiple outputs and you can assign a source to whichever outputs you want. Why shouldn't the controls reflect the actual capabilities of the device?

The next step is saying that the device is too capable and needs capabilities removed to make it easier to understand. No thank you.

<comment><USER2> You're a technical user, the blogger was speaking of non-technical users who's mental map of the machine don't accommodate multiple volumes. They also have no idea what "audio adapted analogue stereo" or "HDMI / display port" means.

Even as a technical user the amount of volume controls can get quite ridiculous. There is the device volume, the app volume (games, media players), the context volume (typically on phones), a volume control on the output device (speakers or display), volume controls on the output devices of output devices (TV -> stereo setup), volume controls on the input devices (Bluetooth, keyboard controls). It really is amazing that we have so many places to control such a seemingly simple so I can't really blame non-technical people for getting confused.

I'd love to have just one analogue knob on my keyboard to control everything and never think about volume again.

<comment><USER9> Non-technical users, who don't know what HDMI and headphones are, probably have no computer at all, not to mention a specific linux distribution. And all these attempts to make an OS for an average complete idiot (that nowhere exists) just make things worse every year. Thank god few sanity bastions like xfce are still alive.

Btw, iphones have context-dependent volume control, probably because combining ring and music volume is impractical. The same for speaker vs headphones. But now I never know if I turned volume down for "volume", "headphones", "ring" or whatever it shows on that vague screen. This is a complex issue, and when you hide it behind too clever logic it can get even worse than explaining.

Btw2, in my childhood we had no computers or experience, but no one failed to manage volumes on chained-together audio systems. A good subject to think of.

<comment><USER2> > And all these attempts to make an OS for an average complete idiot (that > nowhere exists) just make things worse every year. Thank god few sanity > bastions like xfce are still alive.

I agree, but to many try to ride that middle ground, KDE is probably the best example. It aims to be simple but so much is configurable via hidden context menus and drag and drop controls that users can completely rearrange their desktop accidentally, even when it's locked. I don't know how but they do. If they'd just hide everything in text config files it would be better for both groups.

> Btw2, in my childhood we had no computers or experience, but no one failed > to manage volumes on chained-together audio systems. A good subject to think > of.

My family were constantly getting confused by things like the volume button on the VCR remote and the surround sound home theatre craze was a nightmare (and notice how so few people bother with this complication any more?). Other things like only changing the channel on the TV while recording something on the VCR and why the have to press AV2 when they used to just put it on channel 5 needed constant reminders. Their way of looking at the world just never understood input/output pipelines, at best they had to learn what to do by rote.

> Non-technical users, who don't know what HDMI and headphones are, probably > have no computer at all

I think you're hugely underestimating the people that still need them for work and creative tasks that tablets/phones will always suck at. They still act as the universal hub for all devices so people can do things like print documents or upload pictures from their digital camera to facebook. Not to mention the better ergonomics of something like a screen you can tilt but don't have to hold constantly.

</comment></comment></comment></comment><comment><USER10> >Now, with a menu bar you could reach the "About" dialog box with one single click, and dragging the mouse around. With this thing, you need at least three clicks, and you need to know where you have to click. A giant step backward with no apparent advantages.

This guy talks about some menu options like everyone accesses them 10 times a day. Who cares if 'About' is tucked away somewhere. Has anyone ever used the 'About' button in a browser? What for?

I much rather have a clean screen with fewer buttons than the 'About' button sitting there, never being used.

edit: read the other parts as well now and while some of it is nit-picky I recommend the series to all! worth a read.

<comment><USER11> It's not just about "About". I often want to revisit a web page and the same logic applies there. In Safari, the "History" menu is always right at the top of the screen. With a single click, I can look at recent pages, and hover over previous days.

In Firefox on Linux, I needed to learn to click on the bookshelf icon (?!) in the menu bar, then History. Then the menu acts like a wannabe iOS app and slides the history into the menu with an animation. It feels a lot more cumbersome for no good reason at all.

Both app and web designers have quickly understood that mystery meat navigation is a dead-end[1] now matter how clean it looks. I don't understand why the GNOME and elementary teams keep doubling down on it.

[1] [https://thenextweb.com/dd/2014/04/08/ux-designers-side- drawe...](https://thenextweb.com/dd/2014/04/08/ux-designers-side-drawer- navigation-costing-half-user-engagement/)

<comment><USER12> From that article:

'My take-away from all of this is that if most of the user experience takes place in a single view, and it's only things like user settings and options that need to be accessed in separate screens, then keeping the main UI nice and clean by burying those in a side menu is the way to go.'

That article is saying that A/B testing shows that if you have different content views etc then you should have visible navigation, if it's options then sure, tuck it away in a side menu. I don't think the History menu is a 'view' per se...

</comment></comment></comment><comment><USER13> Anybody else starting to _hate_ GNOME? I mean, I use it, but I feel like I use it despite a lot of things that they've actively done to make my life harder. This article distils some of their finer work.

From way up here in orbit, it seems the problem is leadership, in that it's way _too_ open. Somebody can suggest a shitty idea, discuss half of the issues it and then four months later —without quorum— drop a patch to implement the whole thing. That gets accepted and before you know it you can't launch executables from Nautilus. See: [https://gitlab.gnome.org/GNOME/nautilus/issues/184](https://gitlab.gnome.org/GNOME/nautilus/issues/184)

I'm not saying Carlos shouldn't have some autonomy here. He's been running Nautilus for a few years now... But is it acceptable that just one person steers the most fundamental component of a desktop used by so many downstreams? I wonder how many of the other GNOME culls ([https://askubuntu.com/a/286438/449](https://askubuntu.com/a/286438/449)) can be attributed to a couple of people with so little discussion.

I do abhor design by committee and trying to keep too many stakeholders happy can really lead to a product becoming flabby and inefficient, but interface decisions within GNOME seem to happen too often without any scientific rationale, let alone a consideration of how it might affect users.

Also slightly pissed that the major commercial desktop players (Canonical, SUSE, Red Hat, etc) aren't pushing back. They'd seemingly rather write their own stuff than feed into the running of the project. NIH.

<comment><USER14> Not GNOME, but the implications for GTK and a whole load of libraries that are being worked on to support these changes. Like especially GTK is just not a stable target. I used GTK 1 and 2, and especially the incompatible changes in 3 and removal of features are just super annoying (many examples, we already had the introduction of header bars etc., there was always a little triangle in the status bar that was just cut, lots of deprecated widgets, ...). And if you look at the plans for 4(!) there's more fundamental changes coming.

And personally I still don't want to touch Qt, but it might just come to that. I don't think I'm up for yet another rewrite with a toolkit that can't be stable for ten years. That might sound grumpy, but also consider GIMP is still working on the port to GTK 3 ...

</comment></comment><comment><USER15> If more people read this and comment (one way or another), we might get a more usable desktop on Linux.

I'm going back to Linux after years on the Mac and windows, and it's killing me. Finding anything is a pain in the butt, hence me posting this.

<comment><USER16> Same situation - forced to used Linux again at the moment and having a hard time using Ubuntu 18.04 and hence Gnome. Shockingly bad UX, I find myself googling things like "what's the Firefox shortcut key for X" all the time.

I decided to stick with it for a few weeks, now considering leaving Gnome and even buying a Mac for the job.

</comment></comment><comment><USER17> There is a big recent trend for inventing new UI/UX solutions for things that aren't broken until they are. I'm really looking forward to see this problem to be addressed in the near future.

That hamburger menu button in Chrome kept me from adopting the browser until I gave up only about a year ago.

There are so many projects born and die each day, it's a mystery to me why nobody have solved the famous Linux Desktop UI problem so far (Mac OS did though). The 'about' item often is the first thing I'm looking for when I see a new app. And if I can't find it within a minute, it gives me a instant idea that working with it will be no walk in a park.

<comment><USER16> I think the reason UI/UX is not solved on Linux is that designers do not readily work for free. And there are often very good reasons they don't. The only solution I see is for someone to pay large amounts for great designers.

</comment></comment><comment><USER18> I feel like the author needs to explain why the menu-based user interface is better. That's taken for granted, but is it actually true?

And consider that the response to that is likely to be different for people who learned computing on environments like Windows (where global menu bars would be really weird), Mac OS (where they're normal) or various earlier UNIX GUIs (where who knows, anything goes and each application probably does it differently anyway), or on smartphones or tablets, which is where a lot of younger people are getting their first experiences of computers.

<comment><USER11> > Windows (where global menu bars would be really weird)

Would they really be weirder than hamburger menus?

Also, GNOME 3 _has_ a global application menu in the top-left corner, but it only contains around 5 entries on average and is largely ignored. It's the worst of all worlds.

Ubuntu's Unity had the right idea when they let users choose whether to display menus at the top, or inside each window. The implementation was terrible, but I wish the concept would have caught on as some kind of XDG standard.

</comment></comment><comment><USER19> Despite a few quibbles (especially re: the prominence of browser settings menus), following these recommendations would be a great help. The clock bar at the top of the screen in GNOME 3 is a weird half measure, and its uselessness drives inconsistency in app UI since every app has to implement its own menu.

I would gladly hitch my wagon to the author's star if they wanted to organize a project to implement these improvements. Does anyone with more Linux development experience know where such a project would start? Is it already in progress somewhere?

</comment><comment><AUTHOR> Part 6 entry mysteriously left out of the index:

[https://medium.com/@probonopd/make-it-simple-linux- desktop-u...](https://medium.com/@probonopd/make-it-simple-linux-desktop- usability-part-6-1c03de7c00a9)

</comment><comment><USER20> I don't understand a lot of the criticisms at modern ui/ux patterns in this post. Ex: complaining about the hidden settings menu in chrome. Most people just want their applications to work and have the most common functions easily accessible. I am sure most users of chrome don't ever need to delve into settings and are happy with the minimal set of options presented to them and that user testing backs this decision.

<comment><USER21> I don't think I understand the author's critique of the Chrome/Firefox menu button either other than the weird choice of iconography. I'm curious as to what he would propose as a solution to the problem.

I do agree with the author on his sentiment on the lack of discoverability with applications nowadays. It might've been better to showcase the `chrome://settings` interface since it's a prime example of less suitable mobile design bleeding into the desktop UX. Funny, I just noticed that they actually use a proper hamburger icon for toggling the hidden settings menu, not the triple dots.

<comment><USER22> > other than the weird choice of iconography

I think that by now, we're well on our way of educating people on the meaning of the hamburger icon...

</comment></comment></comment><comment><USER23> The problem with global menu bars is that you can have multiple windows on the screen, and the menu in this other place, totally separate from the windows (the top of the screen) depends on which window is focused. That is weird.

I'm sure everyone that has used OSX has at some point wondered when they couldn't find a menu they were looking for only to realise some window on a different screen was focused.

</comment><comment><USER24> I implore everyone to read the rest of the series.

</comment><comment><USER25> I totally agree that menu bars and shortcut hints in menus are important ui features. But I draw the line at global menu bars.

If I've got an app in a small window in the lower corner of my screen (which in fact I do at this moment), I want the menus for it right there, not all the way in the far corner of the screen.

Plus, global menus are terrible with focus-follows-mouse, which for me is such an important feature that I've even set up my work Windows laptop to have that behavior.

</comment><comment><USER26> A lot of this seems to have been written by a mac fanboy.

As for the discussion of ridding cut/copy/paste in menus: who doesn't know the shortcuts for those?

<comment><USER25> New users.

</comment></comment><comment><USER27> I disagree that presenting users with a slew of menus that they most likely won't be using (I'm talking browsers here) qualifies as "simple". "Consistent" maybe, but not "simple".

</comment><comment><USER28> It's like these people haven't heard about Cinnamon.

<comment> amiga-workbench Reverting back to Gnome 2 makes me want to tear my eyeballs out. The inconsistent icon scaling, lack of padding and non-existence of decent vertical alignment within panels makes it very difficult to design a tasteful desktop.

<comment><USER29> Desktop is not a picture to look at, it's first and foremost UX.

<comment> amiga-workbench Can we not have both? Decent UX without all the very easily avoidable and sloppy design mistakes?

</comment></comment></comment></comment><comment><USER30> XFCE4 is all you need

</comment><comment><USER31> To be fair to firefox, this has changed recently.

<comment><USER32> What has changed?

\- Hamburger menu is still there.

\- Sidebar-everything is still there.

<comment><USER33> The menu button has been there for a few years (I refuse to use the abomination of a name that it's acquired). However, it's layout has become more sane recently. It used to be a bunch of tiles. Now it looks more like a classic file menu but with weird, mobile-esque, sliding menus.

</comment></comment></comment><comment><USER34> The gnome screenshots look really bad, I agree completely.

Funny sidenote: I have to shamefully admit that I never used a Macbook until a few weeks ago, when I wanted to watch Netflix on my girlfriends mac. I was pleasantly surprised that she uses it almost exactly like I use my Linux: never close windows, just swipe from workspace to workspace, and a nice launcher bar at the bottom. The only thing I don't like is the screen-width bar at the top which provides controls for the current application.</comment>


D'Oh My Zsh – How I unexpectedly built a monster of an open source project - <AUTHOR> https://medium.com/@robbyrussell/d-oh-my-zsh-af99ca54212c#.ovixesd5v <comment><USER2> A personal pet peeve is when people refer to _having lots of features_ as "bloat." It's generally very nice to have lots of features all in one place without having to do things manually, or find somebody's potentially-sketchy plugin/app.

My test for "bloat" –

1\. Has the project grown so large that it's starting to run into real-world performance issues? (I can't imagine this could be the case with even the largest of shell configurations except on very low-end embedded devices).

2\. Has the project grown so large that bugs are popping up faster than the developers can do maintenance? Is there no or only one person who can read and understand the entire codebase? (AFAIK, no and no).

3\. Are there many undocumented/poorly-documented features? Are there features that are both undocumented/poorly-documented and dangerous? Are there many deprecated or outdated features that have yet to be removed? (AFAIK, no, no, no).

4\. Are there many features that both duplicate and do not improve on functionality found elsewhere? (Debatable and mostly subjective).

<comment><USER3> > Has the project grown so large that it's starting to run into real-world > performance issues?

oh-my-zsh is noticeably slower than prezto on multiple 'high end' machines I have with the same 'capabilities', i.e. plugins that provide the same feature set on both.

<comment><USER2> Noticeably slower at doing what? I haven't noticed any issue, but I'm maybe a bit naive; I rarely use the shell for anything that isn't near-instantaneous and isn't just waiting for some other process to complete (e.g. curl, compilers). For more complicated stuff I usually write something in a scripting language.

<comment><USER3> Opening a new shell can take ~5s with oh-my-zsh, it's <1s with prezto. Tab completion is also noticeably slower with oh-my-zsh.

<comment><USER4> > Opening a new shell can take ~5s with oh-my-zsh

Heh. I remember when zsh first got its fancy completion system, compinit would add so long to zsh startup on the dinky little machines of the day that people literally started adding progress bars and the like to their zshrc.

I stuck with the old-style completion for a long time.

<comment><USER5> Have you cleared out your ~/.zsh_history recently? I periodically need to reset mine to increase init time.

<comment><USER4> Nope. I increased the limit from 5000 to 10000 a while back and not seen any noticeable difference in performance.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> Could someone please explain to me the attraction in using Oh My Zsh (and similar)? It seems strange to me to use others' configs.

Over time I've customized my bash config and have all the information I want in my prompt. If I ever switched to zsh I'd just learn how to translate what I have in bash. Why would I want to start with someone's big framework for configuration?

<comment><USER7> You answered your own question when you said "over time I've customized". The appeal of oh-my-zsh and others is that it removes the "over time" part of the equation.

It's meant to give you a lot of sensible (think like vim-sensible) defaults as well as the settings that make it feel more like bash yet show the awesome features of zsh.

A lot of people don't like to configure shells. omz gives them a head start and a source of inspiration into features they might not know.

<comment><USER8> To piggy-back onto this:

I've never been much of a tools guy. I generally use what the default configuration is for whatever tool I use. It's just never been particularly important to me (and I don't feel like it's made even a small difference in my productivity as a programmer).

Projects like oh-my-zsh are nice because they provide a much richer default that lazy folks like me can use without ever having to know or care about how to actually configure a shell because the alternative is that I just won't do it. I'm not going to take the time to learn about the universe of configuration options. When I'm exposed to a feature it has to be __really __useful before I 'm going to bother to learn about how to configure it. So plugins and the like are huge, they allow me to tailor my environment to the actual work I do with rich functionality that I otherwise wouldn't have.

So for me projects like this are awesome.

<comment><USER9> I'm with you. I use the default shell (bash for linux) and don't change it much. I might tweak the prompt a little and add a few aliases and environment variables but that's about the limit of it.

The main reason is that I tend to work on a lot of servers, and sticking with default settings gives me a consistent unsurprising environment on all of them.

<comment><USER10> It is possible to adapt fairly easily between different setups. I've got a fairly advanced zsh setup but do a lot of admin on a mix of Linux, Solaris and BSD where I have to put up with whatever the defaults are. I resisted vim for a long time for similar reasons: when doing admin, I often only had vi. When I finally took the plunge and learnt how to make effective use of vim-specific features I regretted not having done it long before. And I can still manage fine on a bare install of Solaris with vi.

</comment></comment></comment></comment></comment><comment><USER11> If you like oh-my-zsh you'll love [https://fishshell.com/](https://fishshell.com/). The main difference I use is better command completion as you're typing, and you can complete by word with alt-f. And ruby like syntax.

for example (| is the cursor and everything after it is grey text)

>echo hello world

hello world

>echo |hello world # alt-f

>echo hello| world

Fish and oh-my-zsh both take about 5 seconds to init though. If you don't like that you should be using prezto (which is the fork he mentions in the article)

<comment><USER12> > Fish and oh-my-zsh both take about 5 seconds to init though. If you don't > like that you should be using prezto (which is the fork he mentions in the > article)

You must have a lot of expensive stuff crammed into your config.fish file, for me fish takes < 1 second to init.

<comment><USER11> A config.fish consisting of the line 'alias a=echo' repeated 200 times takes 3 seconds to start. No config file starts out in 50 ms. So my 200 aliases seem to be the culprit here. And to be fair my init time is actually a bit over 2 seconds.

<comment><USER13> Can you remember 200 aliases?

</comment></comment></comment></comment><comment><USER14> "I like Prezto[1] nowadays" \-- an `Oh my zsh` refugee

1: [https://github.com/sorin-ionescu/prezto](https://github.com/sorin- ionescu/prezto)

<comment><USER15> There's also bash-it, for those who want a similar framework but don't want to move away from bash for whatever reason/s:

[https://github.com/Bash-it/bash-it](https://github.com/Bash-it/bash-it)

<comment><USER16> I used bash-it for a long time early on. I was intimidated by switching to the unfamiliar territory of zsh, but it's a no-brainer now and I'd struggle to live without its features that I have since taken for granted.

</comment></comment></comment><comment><USER17> I heard of zsh back around 2012, lots of colleagues who I respected very highly were using it. But I just never could get behind the idea of using someone else's defaults. Even when I switched to Emacs, I hand-picked every line in my configs from looking at a bunch of people's configs and with a lot of random googling to solve things. Even though it took like 2 weeks of constant tweaking to get just right, I haven't touched it much in like the past 3 years or so, and I've been super productive ever since. So meh, seems to have worked out for me. But YMMV. Also, I use eshell (with some tweaks) almost exclusively now, as opposed to a "real" terminal with bash or fish or zsh (etc.)

<comment><USER18> I've tried it a few times given it weeks or month long trials, and never really found a strong enough benefit over bash, especially when I'm always going to find bash on servers I deal with.

I actually find it valuable to nuke my bashrc customisations every few years and reevaluate. Assumptions and practices entrenched in those customisations can be anti-patterns or counterproductive.

<comment><USER19> There's a lot of shortcomings in bash. I wrote my zshrc by hand, and I didn't like the fact that most people use oh-my-zsh. For me, writing my own zshrc from scratch taught me the differences between bash and zsh (I ended up writing my own .git and .hg parsers because running the commands is too slow).

</comment></comment></comment><comment><USER20> "I'd become dependent on these shortcuts."

The intro to this article is as much a caution of becoming dependant on non- standard tools, as it is a pitch for omzsh. If you can't sit down at a normal bash window and get shit done, your shortcuts are hurting you.

<comment><USER21> > becoming dependant on non-standard tools

There's no shame in customizing shortcuts. Isn't that the entire point of emacs?

<comment><USER20> The problem is if you can't work without them. Not every terminal you sit down at or connect to will have them.

Customize all you want, but don't become dependant on your customizations.

</comment></comment></comment><comment><USER22> I like learning from other people sharing their config files, but my attitude towards oh-my-zsh is similar to that of the author's co-workers in that I don't want to install a bunch of customizations that I don't understand. I couldn't find a summary of what all oh-my-zsh is supposed to do and the source has grown too large for me to read it quickly. I guess I trust code I haven't read most the time I am using a computer but it feels wrong to me to allow my shell to auto-update customizations that I don't understand.

</comment><comment><USER23> Reminds me of Nathan Marz's great piece about lessons learnt from creating, and maintaining Storm as OSS: [http://nathanmarz.com/blog/history-of-apache- storm-and-lesso...](http://nathanmarz.com/blog/history-of-apache-storm-and- lessons-learned.html)

</comment><comment><USER24> 910 contributors, 191 issues, 516 pull requests, and his response is that "reviewing and approving pull requests is a nice-to-happen versus a need-to- happen." While I'm glad I am not in the position of maintaining that (or anything else important), that doesn't really speak well to the long-term prospects for the project. Clearly this is something that I and many others find very useful; It would be a shame to let it stagnate. The glib part of me would suggest either 'stepping up, or stepping down', but I can't really credibly offer solutions, I just am trying to point out a problem.

<comment><USER25> So you criticize the maintainer for their large pile of (unpaid) work in the queue, but aren't willing to help out?

If you're worried about the project stagnating, why don't you offer to donate some cash? Why not offer to help in whatever way you can, even if it's just triaging tickets?

<comment><USER24> Firstly, this isn't about me. I'm not the one who started this project, I don't have any stake in maintaining it, and I'm definitely not the only one to notice that the tickets are piling up. Frankly I thought it was widely known.[0][1]

As it happens, I am probably in the running for worst/poorest developer on HN, and that's using the term "developer" broadly. To the degree that I have any resources that aren't being put towards subsistence, I'm not sure I could help anyone with anything. It doesn't feel particularly good to have to explain that, especially since everyone on here seems to be in a vastly different social situation, but either way, I'd appreciate fewer personal reflections.

[0][http://joshldavis.com/2014/07/26/oh-my-zsh-is-a-disease- anti...](http://joshldavis.com/2014/07/26/oh-my-zsh-is-a-disease-antigen-is- the-vaccine/) [1][https://www.bountysource.com/issues/102375-move-plugins- to-s...](https://www.bountysource.com/issues/102375-move-plugins-to-separate- repositories-and-use-antigen-package-manager)

</comment></comment></comment><comment><USER26> Humm ... I looked for the fun if no one spotted in any comment that there was a creepy feature the author likes.

Periodic automated arbitrary code execution from a remote source.

Here is a list of the stupid ideas that old coders warned from

       - abritrary remote code execution [X]   this, curl|bash
       - too much dependencies           [X]   npm
       - lack of specifications, staging [X]   Agile
       - non deterministic HW            [X]   Intel
       - non deterministic software      [X]   llvm/gcc/AI
       - Single point of failure         [X]   github/CA
       - attack by majority on P2P       [X]   blockchain, bitcoin
       - bigger sloc is more bugs        [X]   heavy frameworks
       - using immature technologies     [X]   haskell
       - bloatwares                      [X]   angular
       - private corp standardizing      [X]   QUIC & al, browser wars
       - beware of information entropy   [X]   big data
       - moving parts                    [X]   the Cloud
       - higher surface of vulnerability [X]   IoT
       - monopolies                      [X]   google
       - using private cie for infra     [X]   github is the new sourceforge
       - putting half backed std in prod [X]   IPv6
       - lack of consistency             [X]   most nosql tech
       - legal risk due to IP law        [X]   coding by copy/pasting

If I was an old coder still coding I would say we are very close to a singularity : the total lack of trust that could result in all this is simply customers reverting to fax, teletypes, snail mail... or going to court to ask for financial compensations.

If you need an expert to help you on this, I can help.

</comment><comment><USER27> I've tried a number of times to switch to zsh, ostensibly for oh-my-zsh. My main issue is that bash is the default almost everywhere so it's more work to change it than it is to just be "happy enough" with Bash.

I used to work on a fairly underpowered ARM5 and I could feel the impact of most prompt customisations on the speed of the system, especially on initial login. That feeling is still there - mainly because I haven't found the right SD card for my Raspberry Pi.

To avoid this becoming a complete ramble - are there any advantages to switching to zsh as someone who's reasonably comfortable with bash? Hell, even OS X switched (and boy, t/csh was a shock when using FreeBSD).

<comment><USER28> This is a difficult question to answer. I switched a long time ago, when bash did not provide the kind of completions that zsh does. Nowadays bash is catching up.

Try these things in bash (with completions installed):

1\. cd to a git repository and type "git [TAB]". Do you see a list of git- specific completions?

2\. cd to a directory that has a makefile and type "make [TAB]" do you see a bunch of make targets?

3\. cd to a directory that has some PDF files and some other files. Type "okular [TAB]" (or whatever you use to view PDF's. Do you see just the PDF files as completions?

4\. Same as 3, but try other programs like python, perl, etc. How well do bash completions keep up with zsh completions?

I'd be very surprised if bash supports completions for programs that zsh has missed.

In general, switching from bash is very easy. Your muscle-memory from bash transfers very well to zsh. You may want to change the prompt to look similar to your bash prompt, so you'll feel at home. Translating my bashrc and bashprofile took just a few minutes.

I tried oh-my-zsh and it did not feel right for me. If this is the reason you're switching, all I can say is that zsh offers benefits even without it.

</comment></comment><comment><USER29> A light but featureful alternative to omz is also the grml zsh configuration [0]. I've been using it since 2011 or so and I've probably touched my .zshrc once or twice. If you fancy some colors you can also add some syntax highlighting [1]. Or just use fish which is great for interactive use!

[0]: [https://github.com/grml/grml-etc- core/tree/master/etc/zsh](https://github.com/grml/grml-etc- core/tree/master/etc/zsh)

[1]: [https://github.com/zsh-users/zsh-syntax- highlighting](https://github.com/zsh-users/zsh-syntax-highlighting)

</comment><comment><USER30> Reminds me how lame those geek t-shirts are, and how vulgar it is to put stickers on laptops!

</comment><comment><USER31> I understand the author's viewpoint but I would probably get rid of it the first time it asked to auto update.

Customization is nice but I guess I mostly prefer to spend as little time thinking about shells as possible.

</comment><comment><USER32> I absolutely love bash + powerline. You might know powerline if you're a Vim user.

[http://i.imgur.com/3FKaEIy.png](http://i.imgur.com/3FKaEIy.png)

It's incredibly easy to set up, I have a script to do it[1] but doing it by hand is trivial.

[1]: [https://github.com/beefsack/bash-powerline- installer/blob/ma...](https://github.com/beefsack/bash-powerline- installer/blob/master/install.sh)

</comment><comment><USER33> The irony is that after all those years, we still dont find a optimal way to find out - when it is a good time to annoy a user about update decisions. Do it during the system start up phase? Do it before they go into a break? Do it upon return to the system, when work was already interrupted? Do it shortly before shutdown?

No, annoyia be praised. It must be when the user has focused for longer then 5 Mins on something.

<comment><USER34> My answer would be more like "fucking never, my god!" I thought this was one of the reasons to use free software: none of this paternalistic phone-home bullshit.

</comment></comment><comment><USER35> "oh my zsh" is too slow to be life-enhancing

<comment><USER36> It did teach me how to understand a terminal / prompt. A few bits of information here and there and you suddenly feel happier because that part of the system also work for you.

</comment></comment><comment><USER37> > _It's March 22, 2016 and the top trending repository on Github is ?_

Not oh-my-zsh. It was top trending for the Shell category, not for all of GitHub.

</comment><comment><USER38> I adore Oh My Zsh, way better than bash and the completion plugins are extremely helpful!

</comment><comment><USER39>
        > This wouldn't my first foray into open source software;
        > nor my last.

I know that I'm annoyed perhaps too easily by poor grammar - but the _opening sentence_ , really?!

<comment><USER40> sounds more like a typo

<comment><USER39> I'm sure it is. (That doesn't make it not a grammatical error.)

It just seems like every time I follow a link to Medium, the article's littered with them; surely even the most cursory of proof-reads catches an issue with the opening sentence.</comment></comment></comment>


Sierra On-line founder Ken Williams on Adventure gaming in the 80s - <AUTHOR> http://guysfromandromeda.com/ken-williams-joins-chris-pope-live-interview-6812/

<comment><USER2> Sierra ushered in an era of Adventure games, but it took the upstart company games company LucasArts to perfect the formula and eliminate the tedium of being stuck in the latter parts of the game, having failed to pick up the right item or trigger the right sequence, way back in the beginning. Not to mention the frustration many a gamer felt when the protagonist got killed off for seemingly stupid reasons.

<comment><USER3> Funny as it sounds my least favourite experience in gaming was playing the original police quest on my uncles IBM PC(think it was like the model 2 maybe? Circa mid-late 80s) and having the driving portions be impossible due to the car racing around and not having any diagonal steering(20+ turns to get into a parking spot!). It wasn't until many years later when I purchased a rerelease that I was able to fully enjoy the depth of those early games.

<comment><USER2> I remember that. You had to set the game speed to a crawl; good luck going up the on-ramps for the motorway as well.

Oh, and if you did not "walk around" the car and thus 'inspect it', your game would end as your car "would break down." Yikes. I also remember that you had to stop a drunk driver and if you didn't write -- and I remember this even to this day -- "issue field sobriety test", exactly, you could never continue with the game.

</comment></comment></comment><comment><AUTHOR> What I think is so great about the way Ken ran the company was that he was genuinely committed to giving game designers a great deal of creative freedom, and was willing to take risks on new ideas - something you don't see a lot of in today's large game companies.

Within the realm of adventure games, Sierra came out with an incredibly wide range of material. Their games were a big part of what got me into computers in the first place.

<comment><USER4> Their games also got me into computers. But they also encouraged me as a 10 year old to learn and understand English. I remember playing with 2 different dictionaries, looking up every word I didn't understand. Thanks Ken & Roberta!

</comment></comment><comment><USER5> Its so freaking awesome for Ken and Roberta Williams to take such a personal interest in the Two Guys Kickstarter. It makes me wish SIERRA didn't get destroyed and sold off for spare parts.

Still, as long as we get the Two Guys back I'M SOLD!

</comment><comment><USER6> Ken, Roberta and Sierra are one of the biggest reasons I'm a programmer today. Played their games as a kid, some of my own first programming was making games, and I dreamed of running my own computer game company as an adult. The Sierra story as told in Levy's Hackers, in particular was a big inspiration to me as well.

</comment><comment><USER7> He is one of the Hackers in Steven Levy's Book pubished in 1984:

[http://en.wikipedia.org/wiki/Hackers:_Heroes_of_the_Computer...](http://en.wikipedia.org/wiki/Hackers:_Heroes_of_the_Computer_Revolution)

</comment><comment><USER8> So damn cool! Just take my money already - back www.tgakick.com</comment>


Amazon profit slumps 77 percent as costs surge, shares fall - <AUTHOR> http://www.reuters.com/article/us-amazon-com-results-idUSKBN1AC339 <comment><USER2> Is Bezos biting off more than he can chew? Until a few years ago Amazon wasn't profitable but it was living within its means, and just re-investing whatever profit it made. Has Bezos stopped using that strategy in favor of a much more aggressive "going big or going home" investing strategy?

</comment><comment><USER3> I was speculating about cost cutting earlier last week when we received a shipment of vitamins in a glass bottle that didn't survive shipment. The box was unusual in its length, and the cardboard was thinner than normal, both outliers from the happy Prime boxes that previously dominated shipments.

</comment><comment><USER4> I wonder how much this comes down to Alexa and all the advertising/promotions that surrounded their AI?

I don t think we will see this often repeated so I would not stress over this one report.

</comment><comment><USER5> I am too lazy to check the details, but this info goes directly opposite to Bezos overtaking Gates as the richest dude on the world.</comment>


The lockdown is expensive and may well not work. Here's why we should try anyway - <AUTHOR> https://medium.com/@robertwiblin/the-lockdown-is-expensive-and-might-well-not-work-heres-why-we-should-try-it-anyway-dcd924e945e6 <comment><USER2> This completely misses the point of the lockdown - the goal is _solely_ to show the rate of infection.

Once the rate of infection is slower there is the _possibility_ a vaccine will be developed fast enough to make a difference in the current pandemic, but that's unlikely.

What is likely is that peak concurrent hospitalizations is lowered - once the hospitals are saturated you get an increase in fatalities for _everything_. Survival rates for many diseases are strongly tied to availability of treatment - even in the cases of diseases like Ebola.

It also provides time for improved treatment modes, reducing the amount of time in hospitals and the fatality rates for those there.

The core thing that people need to internalize is that these lockdowns are not designed to reduce the total number of cases.

They are there purely to try and reduce the total death toll.

<comment><USER3> Good explanation. (The article is moronic because it missed both the main reason about ventilators, and central banks are not going to help small business survive.)

I'm glad you mentioned Ebola.

The West's poorly-managed response to corona virus gives us some insight into the African experience of being overwhelmed by Ebola.</comment></comment>


Ask HN: What do you use for company-wide documentation - <AUTHOR> I've tried using Github Wikis, which is fine for developers, but not ideal as I have to grant everyone access in the company access to GH. I have hosted API documentation, but that's not suitable for everyone in the company.
I'd like to host documentation on everything from how are products work, how our internal systems work, what certain procedures are &c. somewhere that everyone in the company (and only in the company) can access them.
I considered Google Sites (as I assume I can use our Google Apps logins for authentication) but was wondering if anyone here had done this before, and what they would suggest.
Something like a Wiki would be great as it should be updatable by everyone on the team, but I've always found MediaWiki a bit of a mess. <comment><USER2> GitHub repos full of markdown. A Jenkins job rebuilds using a static site generator (mostly Jekyll, a couple use Pelican). Each team has a subdomain on our internal network, so like accounting.company.internal type thing. Most have a TOC type landing page with popular links. Commit markdown -> site rebuilds itself.

GitHub desktop is easy to use and we're generally staffing under 35's, who are pretty computer savvy. They may not get the in's and out's of Git, but Customer Service people are rebasing (their internal knowledge base is built the same way).

Upsides for users: Using whatever editor you favor. Anyone can help support your teams efforts (copywriters are committing tweaks all the time to every teams repo, use dem writing skills). We avoid fragmenting and putting multiple UX's in people's faces.

Design folks even made some CSS that's easily injected to match company branding. Optional to use of course.

This is for the things teams can/want to share. HR obviously doesn't people's salary info in there.

We needed GitHub anyway. So we found a way to avoid spinning up some kludgy wiki framework with a shitty WYSIWYG editor no one wants to maintain or paying money for some janky thing like Jive or Yammer.

<comment><USER3> Quick question: static site generated is launched into some server accessible via a private network? or exposed publicly (S3/Github pages)?

<comment><AUTHOR> I was also wondering how you were handling authentication.

</comment></comment></comment><comment><USER4> Confluence

<comment><USER5> My company uses Confluence as well. It's been really useful - we use the Q&A and also document features a LOT. It makes sense since we are mostly on the Atlassian stack (JIRA, & Confluence)

Previously we used Google Docs. However, in every company I've worked at I've seen this tool fail. People start of using it but after a while people forget. The main issue I think is that docs lacks key capabilities in discoverability, search, and engagement; essentially confluence does a way better job of pulling our team back in so we "remember" to use it again. We have a senior manager who is addicted to the Q&A feature and looks at it daily to help answer questions from our team.

The main tools I've seen consistently fail in large orgs for documentation has been Google Docs, Google Sites, and Wikis. All of these fail in the "living" component of "living documentation". They tend to be places where you write and things die / don't get updated / are never seen.

<comment><AUTHOR> Why do you think Google Sites or Wikis fail where Confluence succeeds? I've never used Confluence (and don't really like Atlassian products in general), but am willing to try it.

Have been playing with Google Sites and the main thing I'm worried about is portability if I should choose to go with something else. It seems hard to export.

<comment><USER6> Comparing Confluence to MediaWiki...

Confluence lacks categories. You are stuck with hierarchy. It's more like filesystem directory structure than tags. This gets awful once you have a lot of stuff.

Confluence does not provide direct wikitext access. You might not think you need direct access, but then one day you want to turn a bunch of data into a big table.

Confluence, obviously, doesn't scale as well as MediaWiki. Nothing does. You'd hate to find yourself needing to migrate from Confluence's closed ecosystem over to MediaWiki once you hit the limits.

Confluence lacks the familiarity of MediaWiki. Pretty much everybody has seen MediaWiki in action on Wikipedia. This is comforting. People know what to expect from MediaWiki.

<comment><AUTHOR> I assume you would say the same with Google Sites then? I've always found MediaWiki a bit of a pain to work with, but would definitely prefer more of an open ecosystem to a closed one.

Is there good hosted MediaWiki? I have too much other infrastructure to run and would rather not have to run more myself.

</comment></comment></comment></comment></comment><comment><USER7> Some legacy projects are using Microsoft Word (never use it for documentation!) hosted on a Sharepoint server and XWiki ([http://www.xwiki.org](http://www.xwiki.org)).

For new projects we use markdown hosted on our Gitlab or use MkDocs ([http://www.mkdocs.org/](http://www.mkdocs.org/)).

I recommend you to have a consistent documentation support to avoid having documentation in multiple places.

</comment><comment><USER8> Another vote for Confluence.

</comment><comment><USER9> Google Docs (for collaboration), [http://phabricator.org/](http://phabricator.org/) (wiki), Looking into a new product called Notion.

<comment><USER10> I have tried Notion and it has a lot of features and stuff. But I prefer plain markdown that I can edit from my editor and push to the server.

</comment></comment><comment><USER11> SharePoint, It's awful.

At previous places we used various wikis which were much better. Confluence is the easiest for non-technical people.

</comment><comment><USER12> My last company used a self-hosted [http://twiki.org/](http://twiki.org/) as intranet.

</comment><comment><USER13> readme.io - works well for non-api documentation too

</comment><comment><USER14> Self-documenting code... really

<comment><AUTHOR> Clearly you didn't read the original question:

> I'd like to host documentation on everything from how our products work, how > our internal systems work, what certain procedures are &c.</comment></comment>


Connect's Julian Gough: We're Being Algorithmically Sorted and Controlled - <AUTHOR> http://www.unboundworlds.com/2018/08/connects-julian-gough-algorithmically-sorted-controlled/?ref=PRH96C06AE639&aid=randohouseinc26226-20&linkid=PRH96C06AE639 <comment><USER2> "Kids will use CRISPR, and the even better tools coming through now, to fuck shit up, because that's what kids do...My guess is, a lot of kids and terrorists are going to accidentally injure or kill themselves with their home-made superbug, long before they get a chance to spread it." No expert but this sounds like pure fantasy.

<comment><USER3> I used to work at the JGI[1]. As we were technically part of the DOE, we were occasionally accused of being a "bioweapon lab" and other evidence-free conspiracy theories. We were a high-throughput sequencing lab; experimental research and development of _anything_ was well outside our capabilities. (almost all of or lab space was related to keeping our (Sanger) sequencers running nonstop) Most of the staff thought idea that we were making bioweapons was hilariously misinformed.

Well, some of us stopped laughing when we _accidentally_ created a "superbug". We used a _lot_ of agar plates to clone DNA plasmids with _E. coli_. The plates were filled by hand at an agar dispenser, which resulted in a very small amount of splashing of agar onto the counter next to the dispenser. This was carefully cleaned every day, but.... nobody remember to clean _underneath_ the dispenser* where an imperceptibly small amount of indirectly splashed agar started to accumulate. This agar had ampicillin in it to stop other bacteria from growing.

Eventually, this repeated depositing of bacterial growth medium and an antibiotic created a particularly nasty resistant strain of _Staphylococcus aureus_. The person that eventually discovered the problem and cleaned up the agar underneath the dispenser ended up hospitalized on an IV of one of the "antibiotics of last resort".

Are kids or terrorists going to use CRISPR or other genetic engineering tools to _intentionally_ create their own weaponized superbug? That seems unlikely in the foreseeable future. Are they going to _accidentally_ create a superbug that was just as damaging? Yes, they absolutely will, because I've already seen it happen with people that _did_ have the necessary training sand expertise[2].

[1] [https://jgi.doe.gov/](https://jgi.doe.gov/)

[2] No offense intended to the good people at the JGI! This was a very human mistake that the lab learned from; changes were implemented immediately to prevent this type of problem from ever happening again.

[*] Speaking of problems at that lab, we were fined (correctly) by OSHA for storing the H2O2 alphabetically,,, next to hydrazine.

<comment><USER4> Thank you for the story, I find this fascinating! I'm really surprised how easy it was to accidentally grow this. Is this a 1/(very high number) chance occurrence or is it a somewhat normal happening if proper steps aren't taken to clean?

<comment><USER3> Growing a resistant strain was more or less guaranteed, because we were effectively creating the ideal evolutionary pressure: an ideal growing medium that strongly favors any additional resistance to ampicillin. It's the same as why doctors remind you to _finish_ any prescription of antibiotics even if you feel better early. It's basic survival of the fittest, where we're strongly defining what "fittest" means.

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

</comment></comment></comment></comment><comment><AUTHOR> He wrote the poem you get when you beat the ender dragon in Minecraft.

He's talking about his new book, which seems interesting.

</comment><comment><USER5> >> _...and smart critics like Cherian George get pushed out, which is terrible, because he's exactly the kind of guy Singapore needs — someone born in Singapore, who is aware of the system's virtues, but who can gently point out the flaws. (Read his The Air-Conditioned Nation, and Singapore, Incomplete for the best overview of the country.)_

[https://www.cheriangeorge.net/](https://www.cheriangeorge.net/)</comment>


Announcing Oracle Cloud Free Tier - <AUTHOR> https://blogs.oracle.com/oracle-database/freedom-to-build-announcing-oracle-cloud-free-tier-with-new-always-free-services-and-always-free-oracle-autonomous-database <comment><USER2> Remember kids: Oracle doesn't have customers, only hostages!</comment>


Permissionless Innovation and Patents - <AUTHOR> http://www.avc.com/a_vc/2010/02/permissionless-innovation-and-patents.html

<comment><USER2> couldn't agree more with the views expressed in both articles.</comment>


Microsoft movie about patching Azure to mitigate Spectre and Meltdown bugs - <AUTHOR> https://twitter.com/h0x0d/status/1190448255479336960 <comment><AUTHOR> Video from Microsoft's Ignite Event about patching Azure to mitigate Spectre and Meltdown bugs

[https://techcommunity.microsoft.com/t5/Microsoft-Ignite- Cont...](https://techcommunity.microsoft.com/t5/Microsoft-Ignite- Content-2019/Spectre-Meltdown-An-Azure-retrospective/m-p/946375)</comment>


Medium 1.0  - <AUTHOR> https://medium.com/beautiful-stories/8d615d86ac04

<comment><USER2> Page down, space, down arrow: nothing can move the screen! Took me a good 15 seconds...

<comment><USER3> Jesus, even the up and down arrow buttons don't work, that's awful.

<comment><USER4> But - but it's so pretty!

</comment></comment></comment><comment><USER5> I don't get the "Beautiful Stories" section. All of the articles look pretty much the same. Same full-width image peekaboo parallax banner thingy at the top, same font, same look.

This article ([https://medium.com/beautiful- stories/66e87553d22c](https://medium.com/beautiful-stories/66e87553d22c)) is a hodge-podge of design decisions. The way images are displayed is a mess: some images float next to text, some float next to text with a caption next to them, some images are centered, some images have quotations in them. To divide sections of text, sometimes there are hr's, sometimes there's a single line with a little loopy thing, sometimes there are parallaxy headers.

Medium may be easy to use but if people think they can click a few buttons and pop out a "beautiful story" they are mistaken.

Call me an old-timer but I would rather just read text without a bunch of stuff in my way.

<comment><USER6> If you're looking for something more photo-driven, I'm working on a thing called Exposure: [https://exposure.so/invite/hn](https://exposure.so/invite/hn) (opening this week but we'll invite folks from that link ASAP)

<comment><USER7> Looks awesome. Already signed up. Can I link to pictures hosted somewhere else or everything is hosted on your platform?

<comment><USER6> sweet - for an account or invite? if the latter, email me (address above in this thread)

right now photos are hosted by us. haven't considered linking to photos elsewhere yet, mainly since we need to run them thru a few processing steps.

</comment></comment></comment></comment><comment><USER8> Is it just me or is this worse than before? Slower, much less responsive, and harder to read.

Heck, one of their own graphics shows the issue with the responsive cover images. The "Imagining the Post-Antibiotics Future" article's cover image almost completely crops out the woman on the left when viewed on an iPad or iPhone, which is to my eyes the most poignant part of the image.

I absolutely adored the old Medium design. I applaud them for continuing to innovate, but this one is going to have to grow on me.

</comment><comment><USER9> They've now joined Blogspot[1] for the title of "Javascript all the things, and break default behavior"

[1] Example [http://www.stoyanr.com/2012/12/evictor-java-concurrent- map-w...](http://www.stoyanr.com/2012/12/evictor-java-concurrent-map-with- timed.html)

</comment><comment><USER10> what browsers are people who can't navigate the page with page up/down / arrow keys / space? I'm running firefox and can do so without issue.

<comment><USER11> We have a fix for Chrome coming soon, something we overlooked in a last minute change.

<comment><USER11> The fix was deployed. Happy keyboard scrolling.

</comment></comment></comment><comment><USER12> Ev provided edits to my article O_o

I published an article to Medium earlier today, which I submitted to the 'on startups' collection curated by Ev. I'm not sure if it was actually Ev or another Medium employee, but I'm impressed at minimum to the level of commitment these guys are providing to the Collections element.

<comment><USER13> afaik Ev is the only person who accesses his account, so it was almost certainly him.

</comment></comment><comment><USER14> Interesting that the JS is concatenated and mangled but not minified (and the source maps are basically self-referential).

<comment><USER11> Minified, but pretty printed for easier debugging without source maps. The whitespace gzips pretty well.

</comment></comment><comment><USER15> What I don't like about medium is the constantly changing URLs. A story gets popular and is re-posted on another collection. BAM, the url just changed. You add your post to a collection, URL changed. You remove it, it does that again.

Cool urls don't change.

</comment><comment><USER16> I can't read anything on medium on my Nexus 5 with the latest version of Chrome. When I stop scrolling the page, it hiccups and jumps 2-3 lines so I lose my place.

Looks like I'll have to wait for 2.0 to see if I am interested in the content.

<comment><USER11> We're looking into this. Trying to find our android test device :-/

<comment><USER16> Wow thanks for the reply. I noticed it mainly (possibly exclusively) occurs when the navbar comes into view, or goes out of view (so scroll up, release,then scroll down). It gets annoying because the nav bar reappears if you switch tabs, or leave chrome and come back later.

<comment><USER11> We're actually having a hard time reproducing (though we've received some interesting screen shots). Our nexus 4 and Nexus 7 look ok. Rest assured we'll be acquiring more devices and will try and fix.

<comment><USER11> Should be fixed on monday. Was a super weird rendering bug.

</comment></comment></comment></comment></comment><comment><USER17> Does anyone, or can anyone fill in some information on mediums stack? How they've managed to scale so well, etc?

They've done an amazing, and I'd love to pattern after them.

<comment><USER9> scale so well? What makes you believe they have scale? I mean this in a non- snarky way, I'd love to know how "well" they are doing.

<comment><USER17> Given their popularity and traffic for a small company, I have never seen a performance hiccup. In my mind, that's scaling well.

</comment></comment></comment><comment><USER18> I see that they still haven't solved the lag issue where it takes content some time to actually load. Silly bug considering how basic and small the content is.

<comment><USER11> This is likely related to typekit loading. Do you block referrers?

<comment><USER19> I'm seeing the same thing and do block referrers

<comment><USER11> Typekit understandably wants to make sure that no one else uses the font bundles, so they check the referrer. If you strip referrers it'll block the response and eventually it'll timeout, and show using the default system font.

The choice is a delay for the few people who block referrers or a flash of unstyled content for everyone else.

<comment><USER19> Ah, I see. Quite silly in my opinion but thanks for the answer. I'm fine with how it is -- there isn't a reason to protect the minority in this case: bigger fish to fry. :)

</comment></comment></comment></comment></comment><comment><USER20> Completely broken on Opera Mini.

It's a shame, I loved the old design but I guess someone thought, that the size of the images was not big enough...

</comment><comment><USER21> kudos to ev & medium — a word-class UX and product.

<comment><USER22> no it's not. it just sits there while you press space bar, page down, etc etc. this is not world class ux.

<comment><USER11> This was a mistake introduced by a last minute change. We'll have a fix deployed soon.

</comment></comment></comment><comment><USER23> Snowfallization!</comment>


Show HN: Automated blind control via an Amazon Echo Dot and Raspberry Pi - <AUTHOR> https://jwahawis.github.io/automated-blinds <comment><USER2> I love seeing stuff like this but I have to wonder - why aren't esp8266/Arduino/etc considered more often for these applications? I understand the Raspberry Pi seems obvious (and often is) but these kinds of solutions seem much less awesome when you realize the latest OpenSSL (or whatever) update applies to the full blown Linux installation controlling your blinds. Sure Arduino and others almost certainly have plenty of issues with their software stack but the attack surface is substantially smaller and lower cost and reduced power usage are benefits as well.

<comment><USER3> The biggest thing with Arduinos specifically is that the cheap ones don't really have the capacity to negotiate proper web services. They can't handle HTTPS, you are not going to be deserializing JSON in RAM, etc. By the time you pay for something like a Yun, you've spent more than a Pi. Also (prior to esp* WiFi breakouts) WiFi integration used up most of your I/O and cost 30+ dollars.

I've been playing around with a couple of CHIPs[0] that are cheaper than most Arduinos and come with Bluetooth, WiFi and USB built in, a bunch of memory, and run ARM Debian. They use NAND for storage so you don't need a SD card for the OS, and the forums are pretty active for a pretty recent hardware platform.

Other than still trying to get some SPI stuff integrated I've had no problem doing stuff I wouldn't want to use a Pi on and could not really use an Arduino on. I believe they're of better specs than anything but the latest Pi, maybe that as well.

For $9, I've been very happy with it, but I can't compare it to the ESP as I have a few laying around and haven't used them yet.

[0] [https://getchip.com](https://getchip.com)

<comment><USER4> The ESP, especially the esp32, can easily do HTTPS, WiFi, Bluetooth, JSON deserialization, and more with room to spare. All for less than $10 (less than $3 if you use an esp8266)

</comment></comment></comment><comment><USER5> How might someone with only software experience know what motor, encoder, power supply, etc. to buy? Would this be an easy enough project to step into, or should one start with something more basic for a first project?

Btw, awesome work OP!

<comment><AUTHOR> Thanks!

You can follow Adafruit's guide[1] to get started. I think on this project the software requires more experience to get setup, especially if you are working with a headless Raspberry Pi.

[1] [https://learn.adafruit.com/adafruit-dc-and-stepper-motor- hat...](https://learn.adafruit.com/adafruit-dc-and-stepper-motor-hat-for- raspberry-pi)

</comment></comment><comment><USER6> I've wanted to do this too, since there's a lot of light pollution in my neighborhood but I also want to be woken up by the sun. Also FYI you should probably make those embedded youtube videos

<comment><USER7> Thanks for _not_ making them embedded Youtube videos. Here in China, that would require a VPN just to see the unplayed still image, and lengthy buffering to see the video.

</comment></comment><comment><USER8> It's great to see a solution that works using some basic hardware and existing blinds. Not only does that make it incredibly cheap compared to commercial alternatives, but it also doesn't require implementation at time of construction (or a major renovation).

I recently have been working on the technical aspects of building a new house for my aging parents. We went with Lutron's Serena shades, because we also used Lutron's light controls and they feature both Nest and Alexa integration. Construction hasn't been completed yet, so I can't fully report on the final result. But, my initial tests have gone well and setup was simple. For reference, the per-shade cost is around $600 installed. Basic shades of similar quality would likely be $150-200 each, so it's a fair bit more but not outrageous.

I considered a DIY approach, but then thought about the primary users and realized an off-the-shelf solution would be best. Even in your own home, it's hard to overstate the importance of reliability and ease of use for your spouse, kids, guests, etc.

</comment><comment><USER9> Thanks for posting thing. I've been thinking about how to go about doing this but didn't really know where to start with finding an appropriate motor and controller.

Will come back to this as a winter project, busy building a coffee trailer this summer [https://goo.gl/photos/9rrRAZy7xSprWVnA6](https://goo.gl/photos/9rrRAZy7xSprWVnA6)

<comment><AUTHOR> No problem! The NEMA 17 form factor is quite ubiquitous so it's easy to find cheap hardware and compatible drivers. Be mindful that the same form factor has different windings and therefore different stall currents.

</comment></comment><comment><USER10> Totally love the cardboard "case" held together with some rubber bands. LOL, this is real hacking. I spent a bit of time learning 3D printing and printed a few cool looking raspberry pi cases but always looking out for cool case ideas.

</comment><comment><USER11> Is there an App Store yet for either Alexa or Google Home?

I just got a google home and I want to program/add apps(games) or actions(movie times, order a pizza, call x friend on skype, call 911, record & playback my sleep talking recordings and many other ideas thought of).

I can't see why such an App Store isn't available yet for programmers and either Google or Amazon to profit from!!! One that is run like Apple's App Store where things are reviewed and approved, as for me I think these AI speakers are the next big thing like the iPhone.

<comment><USER12> There is: [https://developer.amazon.com/alexa](https://developer.amazon.com/alexa)

<comment><USER11> So you can charge a buck for each download?

Also, I'm sorta partially to Google Home as I think it's AI is superior... though i could be mistaken.

</comment></comment></comment><comment><USER13> I often wonder is it worth the _extra_ electrical energy spent on Alexa/Raspi/voice recognition automations. I am not a technophobe but if everyone moves to magic mirror, voice recognition everywhere what would the power needed to drive all these (comparing to your arm)!

</comment><comment><USER14> I wonder if people are working with Alexa to automate houses for people with disabilities.

<comment><USER15> The article had the word "blind" and I thought OP meant home automation for the vision-impaired.

Combine Alexa and the tech for the Amazon supermarket that tracks shoppers and they could have a talking, listening assistant that can be your pair of eyes at home.

</comment></comment><comment><USER16> I've been looking into something similar. Are you not reading the state of the blinds in anyway? For example, in the case of a power failure or reset.

It looks like your code just has a default.

<comment><AUTHOR> I could write the last state to a file, but long term I plan on adding an encoder to the output shaft. The motors are intentionally not locked to limit power draw and allow manual adjustment.</comment></comment>


LeCun vs. Rahimi: Has Machine Learning Become Alchemy? - <AUTHOR> https://syncedreview.com/2017/12/12/lecun-vs-rahimi-has-machine-learning-become-alchemy/ <comment><USER2> >"We are building systems that govern healthcare and mediate our civic dialogue. We would influence elections. I would like to live in a society whose systems are built on top of verifiable, rigorous, thorough knowledge, and not on alchemy," said Rahimi.

I like this guy</comment>