Vim anti-patterns - <AUTHOR> http://blog.sanctum.geek.nz/vim-anti-patterns/ <comment><USER2> Of all the "Vim tricks" article I came across, this one is my favorite so far.

I have been a vim power user for a little over 2 years now. I never bothered installing plugins and spent all my time instead learning ... the exact same commands described in the article. Now I type fast, I mean real fast.

A couple more tips I find useful:

\- 'gg' and 'G' in command mode will send you to the beginning and the ending of the file.

\- 'Ctrl-N' and 'Ctrl-P' in insert mode will auto-complete (suggestions only come from existing words in opened buffers, for more you'd probably need plugins).

All the other tips are _spot on_! I especially like the first one about moving vertically one line at a time. It takes some time getting used to, but the fact that you can repeat the 'jump' or jump back to your previous position. Believe me, you'll fly :)

My new set of advice for blazing fast typing:

1\. Learn to touch type. The rest is meaningless without this.

2\. Repeat 'vimtutor' religiously for 10-15 days.

3\. Read this post and apply every tip until it's hard-written in your fingers' muscle memory.

4\. ... voila!

<comment><USER3> _'gg' and 'G' in command mode will send you to the beginning and the ending of the file._

I've always used ':1' for the beginning and ':$' for the end. To me, the benefit of this is that I always use the same mechanism to go to a particular line of a file. (I often do, say, ':45' if an error is reported at line 45.)

For moving up and down large distances, I also prefer ctrl+u for up and ctrl+d for down. There is a minor difference: ctrl+f will put the last line at the _top_ of the screen, filling the rest with the tilde-abyss. That always bothers me.

<comment><USER4> _45G_ does the same thing as _:45_ , so the people using _gg_ and _G_ can also remain consistent with their muscle memory.

<comment><USER5> The beautiful thing about muscle memory is you can have two similar concepts map to completely different keys and your muscles will handle it just fine. I happily use gg/G/:# without mental overhead.

</comment></comment></comment></comment><comment><USER6> Ok, I'm going to get a little blasphemous here, but I retain functionality of the arrow keys because they allow me to move the cursor while in INSERT mode. I find that ESC + [hjkl] + I to be slower than just using the arrow keys since the distance to escape vs arrows keys is about the same for the respective fingers (minus the cost of exiting and re-entering INSERT mode). I am sometimes told I should remap ESC to facilitate the use of hjkl, but the benefits seem dubious since I rarely have a need to move one or two spaces/lines outside of INSERT mode (instead, opting to traverse my code via line number, [], g/G, w/b, A/I, or marks).

tl;dr - arrow keys vs hjkl makes little productivity difference to an experienced vim user (unless of course, you've baked hjkl into your workflow, but remember that the reverse is true as well)

edit: I also find it productive to have one mental model for cursor movement as well as selecting splits or tmux panes.

<comment><USER7> You really shouldn't be moving in insert mode. The only thing you should be doing in insert mode is typing new text (or erasing a few characters immediately before the cursor that you mistyped while still in insert mode).

Once you're outside of insert mode, you have a ton of options for moving around very quickly and efficiently. You are crippling yourself by using the arrow keys to move character by character or line by line instead of going out of insert mode, not to mention the time you waste moving your entire hand to the arrow keys and back.

That said, if you really feel you absolutely must move in insert mode, may I suggest mapping:

      control-h
      control-j
      control-k
      control-l

to move while in insert mode, instead of using the arrow keys. That way your hands can remain on the home row, and you'll continue to use the familiar keys to move around. (As for hitting the control key itself, I like to do that with the part of my palm that's right below my little finger, so I don't have to move my fingers from the home row -- it also makes for virtually no finger strain, compared to using your fingers to hit it).

But you should really try to wean yourself off the bad habit of moving in insert mode.

<comment><USER8> "But you should really try to wean yourself off the bad habit of moving in insert mode."

That's just dogmatism for the sake of it. There are certainly cases where it takes less finger movement to use arrow key movement (either by character or by word) in insert mode than it would take with switching to normal mode and doing hjkl movement.

<comment><USER9> I have seven years of professional avg personal daily use of vim and never bothered to leave the arrows. I don't move so often in insert mode, I just prefer my hands the be far from each other. Ijkl maniacs should stop repeating the same refrain over and over...

My favorite tricks: o in select mode, ctrl-y in insert mode.

Still looking for a good commenter for python (NERD commenter don't work for me)

<comment><USER7> _"I have seven years of professional avg personal daily use of vim and never bothered to leave the arrows."_

There are also two-finger, hunt-and-peck typists who've been typing for 30 years.

Just because you've been doing something one way for a long time doesn't mean it's a good idea.

</comment></comment></comment></comment></comment><comment><USER10> I just started learning vim. It would be great if someone made a game for learning that taught some simple commands—something along the lines of, "Perform the needed operation(s) in the fewest number of keystrokes possible." For instance, add an attribute to an html tag with your cursor at a certain starting point on the line. Then have a leaderboard of the shortest key-combos used, with comments.

I'll bet more experienced vimers could learn something from this, too.

<comment><USER11> It's called VIM Golf. <http://www.vimgolf.com>

You might also be interested in [http://stackoverflow.com/questions/2588481/are-there-any- kat...](http://stackoverflow.com/questions/2588481/are-there-any-kata-for- practice-vim)

<comment><USER10> Thanks! That's definitely getting there. It would be even better if I could do it in the browser, with simpler challenges to start out. Maybe a few intro tutorials or the like.

</comment></comment></comment><comment><USER12> One other major feature I would mention: text-objects

text-objects are basically things Vim knows about that you can operate on with the "verbs" of vim (d/c/y etc). So, for example, if you're inside quotes, you can yank everything inside the quotes with yi" (to include the quotes, you use ya"), regardless of where the cursor is inside the quotes.

For more information see :h text-objects

<comment><USER13> And to complement them, the surround.vim plugin: <http://www.vim.org/scripts/script.php?script_id=1697>

</comment></comment><comment><USER14> L, M, and H are also very useful for vertical movement. My general procedure for navigating (when I don't have anything particular to find), from general to specific, is: Ctrl-f/Ctrl-b, L/M/H, j/k).

<comment><USER15> I like CTRL-U/CTRL-D for scroll up/down by half a screen, as opposed to a full screen.

<comment><USER16> Thanks, I always get frustrated doing full screen hops.

</comment></comment></comment><comment><USER17> _The Escape key on modern keyboards is a lot further from home row than it was on Bill Joy's keyboard back when he designed vi. Hitting Escape is usually unnecessary; Ctrl+[ is a lot closer, and more comfortable._

That's not an "anti-pattern," that's an opinion. I think C-[ is uncomfortable as hell.

<comment><USER18> I have jj mapped to Esc in insert mode. If you type it quickly, the two j characters vanish and you escape out of insert mode. If you type them slowly you get two j characters in your text. I rarely need two j's in my text, of course, so it's a good escape key sequence, but pick whatever you want. I chose jj because it keeps me on home row.

<comment><USER19> Sometimes my muscle memory winds up telling me it needs. That's how I wound up mapping both jj and ;l to Esc. The first gets used when I've finished an insertion and am about to pause to think (it feels more emphatic) while the second gets used when I'm in flow and know exactly what I'm going to do next.

I once read a thread discussing the topic of Esc replacements and was astounded to learn that some people had reinvented chording: they mapped all the permutations of h,j, and k into Esc replacements and then simply banged all three at the same time to exit!

<comment><USER7> Speaking of chording, there's a pretty cool vim plugin called "arpeggio", that will allow you to map chords:

<http://www.vim.org/scripts/script.php?script_id=2425>

</comment></comment></comment></comment><comment><USER20> I've thought for a while that Vim could analyze how a user edits and spot repeated use of inefficienct techniques like these -- and then suggest the more efficient alternatives to the user. Implementing this could make a nice project.

</comment><comment><USER21> These kind of articles always have a few new things in them, even of most of it is familiar -- I guess everyone just has a slightly slightly different set of indispensable tricks.

The most most useful Vim trick I've seen recently is "set relativenumber". This makes Vim show line numbers relative to the current line. This is awesome, because it lets you easily jump to any line you can see. eg. you can get to a line marked "9" above the cursor by pressing "9k".

It can be slightly tricky to get used to if you're used to absolute numbers (have to use gg more), but for me it's worth it.

<comment><USER22> If you train yourself, you can get good at guessing the line numbers, plus is makes you feel godly when you correctly dd the 17 lines you want.

<comment><USER21> That, or subtracting ;)

I swear the entire UI of Vim is made to make the user feel like a ninja.

<comment><USER23> I'm fairly sure the GP meant "dd", not "add".

<comment><USER21> Ah, I meant subtracting the current line number from the target line number to get the number of lines to jump, instead of just guessing.

<comment><USER23> Got it. I think we ironically tend to underestimate our ability to estimate. I normally :set nonumber, and like secoif, I've impressed myself on numerous occasions with how well I'm able to estimate line counts and character counts. Give it a try -- you're likely to impress yourself too.

</comment></comment></comment></comment></comment></comment><comment><USER24> After around 5 years of using vim, I'm at the point now where everything in this article and comment thread is already in muscle memory. My only advice would be similar to whats in other comments:

* Learn to touch-type

* Learn new features slowly, giving each of them time to find their place in your workflow.

My questions for other vim power users:

* What _epic_ custom mappings do you have? Steve Losh's <Leader>ev for editing .vimrc and <Leader>sv for sourcing completely changed how I use and customize vim... are the any others with that level of impact?

* How have you mapped control of buffers/windows/tabs? Command-T buffer mode takes care of open buffers, and the default window/tab control mappings seem good enough for me, but I'm wondering if there's a nicer way for this interaction to work. Currently I've got arrow keys mapped to moving tab focus, but it feels like their might be a better way here.

* Are there any fun and creative ways you've integrated with the shell/plugins? Here are some examples I've got:

<Leader>r :!rake

<Leader>rs :!rake spec

<Leader>rl :!rake spec (test near this line)

<Leader>gs :GStatus (fugitives 'git status')

<Leader>gb :GBlame (fugutives 'git blame')

* What's a nice way to do find in project? Both vimgrep and :Ggrep are OK, but I find it weird that I'm taken out of the editor for both of those... Ideally I'd like the results to open up in a buffer which I can then browse through in some nice way.

<comment><USER5> I've only been using vim full-time for a year and a half, but I'm slowly ramping up on things like window and buffer management. Probably my favorite life-changing trick is the quick macro:

nnoremap <Space> @q

It dramatically lowers the mental barrier to macro use (at least when you're starting out with macros). Where I use to use ragex search and replace I now instinctively go for macros, and I'm getting good at choosing the most robust commands for the situation. The pattern of qq => /foo => cwbar => Esc => Space-Space-Space is incredible. It's so infinitely superior to regex search and replace, and the fact that you can paste the macro and modify it as text is the cherry on top.

<comment><USER24> Nice! I think I might add that to my .vimrc. The only thing I'd add about macros is that I generally use them for multi-line transformations (i.e. they usually end with `j`). This means you can record your macro and the run `n@q` where n=the number of lines you want to run it for and q=the register where your macro lives. This is useful for annoying, repetitive syntax transformation tasks.

<comment><USER5> Ah, I never have done a count on a macro before, but I do much the same thing with the @q bind. I have my key repeat rate set to maximum, so I can just hold down space and it flies down the lines.

</comment></comment></comment></comment><comment><USER25> Here's a good tip I picked up recently when working with numbers:

Increment a number on or after the cursor with Ctrl-A and decrement with Ctrl-X in normal mode. Saves a few keystrokes over having to replace or enter insert mode.

<comment><USER15> I've been using those more and more recently and have noticed a couple interesting things to be aware of. First, Vim interprets a dash character immediately preceding the number as a negative sign. (In playing around a bit I suspect this behavior is slightly influenced by the syntax rules for the particular filetype you're working with.) The effect of this is to flip the behavior of CTRL-A and CTRL-X. Secondly, if the first digit of the number is '0', Vim will behave as if the number is octal, so incrementing "07" once will result in "010". Similarly, a prefix of "0x" or "0X" will cause a number to be treated as hex.

<comment><USER26> To avoid the "07" -> "010" problem you can add

        set nrformats-=octal

to your .vimrc.

</comment></comment></comment><comment><USER27> Okay, here's one that I've been stuck with. What does Ctrl-Z do in vim, and how do I "undo" it? I always have to kill -9 the vim process, and it sucks cleaning up where I was.

<comment><USER28> tl;dr: type `fg`.

One nice thing about this setup is you can "stack" processes in the shell.

Say you're working on file_x, but file_x depends on header_file_y and file_z. file_x makes sense on its own, so you don't want to split a new pane; you just want to leave your workspace as it is and come back to it later.

Hit ctrl-z, and fire up vim with the new stuff you want. When you're done, quit the current vim session and come back to your old context with `fg`.

The key observation is this stacks inductively, so you cant tumble down the dependency rabbit hole and always come back to the context you were at originally. This feature alone has made it impossible to ever leave console vi.

It really came in handy in my Operating Systems class where I could fly around the codebase an order or magnitude faster than everyone else.

If you really need to go back to a particular context %[num] lets you go back to the nth suspended process, but this will corrupt your stack of processes, so `fg` won't be in a clean order.

<comment><USER29> That's an anti-pattern too. You should use one of the many ways of loading up multiple files in one vim session. I don't know what the best is, because I'm an emacs user, but I know there are many options.

Losing access all your editing state when you move to a new file is silly, regardless of editor.

<comment><USER30> It goes beyond just editing multiple files. I'm a huge fan of tabs in vim so I do a lot of :tabnew filename (which has autocompletion by the way) and mapped \tp and \tn to :tabprevious and:tabnext. I sometimes just open in a new file buffer like emacs does, no tabs and no window splits but when I'm done with the file I go back to the other one.

But I also use ctrl+z frequently, even more when I'm editing over ssh. Usually because I want to do something outside of the editor window not directly related to editing. Or it might be related to editing, it depends, I just want a shell. I may even have forgotten which file contains what I want to edit, so I might back out to a shell and use a find|xargs grep or ack command. Basically any time gedit users open the terminal for something in the middle of editing, I just ctrl+z (or open a new shell tab, but as mentioned ctrl+z is joy on ssh where a new tab means a new connection).

So I use ctrl+z. Also :!bash is stupid, but :r!cmd should be on the page. (It pastes the output of cmd into the file.)

<comment><USER26> Why not gt and gT? All the commiting/greping/chmoding/building stuff can be done from within Vim. You don't really need to get out of it unless you want to launch a curses program or an interactive SSH session. Eck, even in such cases I think it's way better to have multiple terminal windows or panes.

<comment><USER30> It's mostly habit for me not using gt and gT. I only learned :tabnext and :tabprev when I learned of tabs at some point, and the mappings followed shortly after. I have a lot of other \whatever bindings too. (Such as \gt that's mapped to :tab split<CR>:exec("tag ".expand("<cword>"))<CR>)

And yeah, you can do every shell action in vim with things like :make and so on and :! when a nice wrapper isn't pre-made, but at that point it starts to feels a little too emacs-y for me in a lot of places and again, frequently I ctrl+z for things orthogonal to what I was working on. Sometimes I do use those wrappers, of course, but it's unnatural in many cases and I think it's of questionable utility compared to mastering the command line normally or compared to other vim features. Linux is my IDE, vim is my editor. I like to have them work together instead of one dominating the other.

</comment></comment></comment></comment></comment></comment><comment><USER31> It's amazing how many articles like this there are, and how I always seem to learn something new.

</comment><comment><USER32> Mm... Agree with those.

I use vim a lot and I'd add these as things in vim I found to be major productivity sinks too:

\- using tabs

Simply too finiky. Create windows using :split and :vsplit. Swap between them using control-W h/j/k/l or :winc h/j/k/l Also:

CTRL-W =, CTRL-W N-, CTRL-W N+, CTRL-W N<, CTRL-W N>

Especially useful on large visual terminals where you can have multiple files open all at once and swap between them without touching the mouse.

\- cwBLAH . . . . .

agh. Use :%s/blah/BLAH/g

:)

</comment><comment><USER33> zt, zz and zb are great too. They redraw the screen so that the line the cursor is currently on becomes the top, middle, or bottom line of the window.

<comment><USER30> Other "z" commands (these are the ones I always get mixed up):

        :setlocal spell spelllang=en_us - turn on spell check
        z= - bring up list of suggestions
        zg - add word to dict
        zug - undo add to word
        zw - mark as wrong
        zuw - undo wrong
        :help fold
        zf<motion> - create fold (common motions '%', 'a{', 'a(' )
        zo - open fold
        zA - open folds recursively
        zc - close fold
        zd - forget fold
        zj - move to next fold
        zk - move to prev fold (up)

<comment><USER34> Some simple mnemonics might help you out.

      zg   g = Good word, add to personal dict
      zug  Undo Good word.
      zw   obviously, Wrong word.
      ...
      zo   Open
      zA   open All
      zc   Close
      zj   uses the same movement as the j key
      zk   ditto

Once you have the mnemonics sorted, sometimes you find you can remember the others because they are the ones "left out" of those with mnemonics, like zd doesn't have a mnemonic, so the command left over is "forget fold", so zd is that one. After a while, muscle memory takes over.

</comment></comment></comment><comment><USER34> Re using the Caps key mapped to Esc. Many people are commenting they never use the Caps Lock key. I'm puzzled since I use it all the time. Do you not capitalise your constants or globals? Or maybe you don't write much C or C++; I'm not sure what the standards are for ruby etc.

Autocomplete helps, but life without a CapsLock would be awkward for me.

<comment><USER35> I also find it strange that so few people use caps lock, but among all my programmer associates, I am the only one that does. That said, I hit Esc way more often than Caps Lock, so I've swapped those two keys.

</comment></comment><comment><USER36> This article only touches on the "c" noun. There are quite a few handy things which you can do with it, such as delete all the text between quotes and put you insert mode (ci").

I recommend that anyone who doesn't use this give it a try, as it saves a few keystrokes.

PS. I guess the "i" subject is useful too for operating "inside" specific characters.

</comment><comment><USER37> I'm guilty of some of these anti-patterns (like for example the arrow keys) but honestly I feel incredibly fast and productive when using ViM. I'm afraid to drastically tweak my workflow at this point because I don't think the optimization will be worth it.

Overall it feels like good advice but it's just not my cup of tea.

<comment><USER22> Cars? I'd have to learn to drive? What's wrong with my horse I already know how to ride?

<comment><USER37> haha, I see what you mean and it does sound like I have a bad attitude. But I feel like the overall gain I'd get from this isn't worth the time I'll spend retraining my muscle memory.

Or in other terms, I don't think I'm going from horse to car.

Perhaps I should experiment for a month and see if it does actually make a difference.

</comment></comment></comment><comment><USER38> Wow, it's almost like you studied a video of me coding to write that post.

Thanks. This will improve my vim-fu tremendously.

</comment><comment><USER39> Question for wiser vim users than myself: If I delete (say, a line comment) with `D`, how do I paste it as a line of its own without macro trickery involving `o<esc>p`? Is that possible?

<comment><USER4> You mean that you deleted it with _dd_? Can you show a before and after of what you're trying to accomplish, because it's very likely possible. I'm just not sure what you're trying to do.

<comment><USER39> say I have a line here ( | being my cursor)

        callFunction(); |// HEY THIS IS A REALLY LONG COMMENT

From there, I hit D, which is the same as d$. I want to then paste it so I have something like

        // HEY THIS IS A REALLY LONG COMMENT
        callFunction();

But I want to do that without entering insert mode.

<comment><USER40> To break a single line into two lines on a whitespace boundary, one pattern I find myself using often is moving the cursor to the whitespace and hitting 'r<return>'.

(The 'r' command replaces the character under the cursor with the next key typed, without going into insert mode.)

<comment><USER5> Oh that's a nice trick, I'll remember that one. As an avid user of J I've been wanting its inverse.

<comment><USER41> Isn't J the inverse?

</comment></comment></comment></comment></comment></comment><comment><USER42> I like :sh and ctrl-d to bounce back and forth...

<comment><USER23> Why not ^Z and ^D?

I just recently learned to use ^D to exit a shell. It's amazing how many times in my life I've typed out exit^M -- or worse, exot^H^Hit^M -- when all I needed was ^D.

Edit: I now realize that you can't pair ^Z and ^D. It's either ^Z and fg, or :sh and ^D.

</comment></comment><comment><USER43> > The benefits of getting to grips with Vim are immense ...

This may be true, but IMHO it can't compare to dumping Vim and choosing an editor that more efficiently exploits modern computers and their interfaces.

Many people don't realize this, but Vim arose from vi, which in turn arose from "ed". This family of editors contains a command infrastructure meant to avoid the waste of paper on a teletype terminal (ed's original display device).

And how do I know this? I used ed, and an early version of vi, years ago during my NASA engineering days in the 1970s, while designing part of the Space Shuttle. All those separate vi modes -- insert, delete, move the cursor, and others -- originated in ed, at a time when it was a priority to assist the operator while typing blind, before wasting another 11 inches of paper just to see how it all turned out. The first version of vi was screen oriented, but it carried over the original separate modes, and kept them separate.

When I wrote the first version of Apple Writer (<http://en.wikipedia.org/wiki/Apple_Writer>) in 1979, people had a hard time adjusting to an editor that allowed you to insert, delete and move the cursor without changing modes. It seemed a rather simple idea to me, but at the time, among vi users, it was met with shock and disbelief.

And here we are, over 30 years later, and people are still learning vi/Vim, as though it represents cutting edge technology.

I think we should hold a wake for vi/Vim, and maybe we should invite Fortran to the party.

<comment><USER44> I've never understood this obsession with editing efficiency among programmers. When coding I spend about 90% of my time thinking about what to type. A good IDE that really understands the _structure_ of my code without twenty flaky plugins is worth much more to me than saving some keystrokes.

<comment><USER29> Typing efficiency I'm "meh" on; don't get in my way, but I'm not too worried about it. I've tried tons of autocomplete of every kind and tend to just turn it all off. Navigational efficiency is very important, though. If I want to look at a bit of code, fractions of a second count if I'm going to stay in flow.

This is very much personal opinion, but what I found with autocomplete is the time I'm typing the code I'm also using to think about it. Even on those surprisingly rare occasions where I manage to set up autocomplete that is both fast and accurate, it still didn't speed me up much. If I'm thinking so far ahead of my typing that I'm actually frustrated about the typing, that is typically an absolutely enormous code smell that something is very wrong, and I need to address the redundancy immediately.

<comment><USER44> I think it depends somewhat on the language. For Ruby I prefer Emacs and don't see much benefit in autocomplete. But for Objective-C & Cocoa, which is admittedly a somewhat extreme case, autocompletion is a godsend.

But autocomplete is only one feature among many I appreciate in a good IDE. I'd also hate to give up a good visual debugger with integrated breakpoints, direct links from compile errors, etc. I know you can hack a lot of this together in Vim or Emacs but after 15 years of doing just that I don't miss it when I'm using IntelliJ or XCode.</comment></comment></comment></comment>


I co-founded Vine. Here's my advice for TikTok on how to stay on top - <AUTHOR> https://www.cnn.com/2020/08/28/perspectives/vine-tiktok-microsoft-innovation/index.html <comment><USER2> You could try the snapfeel web app.</comment>


LG opens sources webOS to foster startup ecosystem in South Korea - <AUTHOR> http://webosose.org/ <comment><AUTHOR> Press release talking about the reasoning behind open sourcing it at: [http://www.lgnewsroom.com/2018/03/webos-enters-next-phase- as...](http://www.lgnewsroom.com/2018/03/webos-enters-next-phase-as-global- platform-under-lgs-stewardship/)</comment>


A new dimension for genome studies - <AUTHOR> http://web.mit.edu/newsoffice/2009/3d-genome.html <comment><USER2> Pretty wild discovery. I'm surprised it has taken this long to really dig into the finer structure of DNA. I suppose proteins coded by dna are much larger and easier to freeze/image etc.</comment>


Ask HN: Is Ruby/RoR more religion than engineering? - <AUTHOR>

<comment><USER2> Ruby is an amazingly powerful language that many, many people use every day with very little drama. To me, it seems to only be the "english" online RoR community that has issues.

Unfortunately, as a Ruby _language_ user, I don't know why the problems exist or what would fix them. :(

</comment><comment><USER3> In my experience, many programmers trained in a specific lanaguge or framework, tend to become attached to it over time to the point of becoming zealous about its benefits. If you define religion as being overzealous, then it not just Ruby/ROR, but C++, .Net, PHP, Perl and most other languages. Most find it difficult to be agnostic about their choice of the language/framework they select and use regularly. Just my 2 cents :)

</comment><comment><USER4> Ask any Rubyist why they love the language, and they'll most likely tell you it's because it allows them to turn their ideas into reality very quickly.

That can be a very valuable advantage. If you're exploring languages to base your startup on, and you ignore Ruby solely because it's not engineer-y enough for you, I don't rate your chances of success very highly.

</comment><comment><USER5> 2006 called, it wants it's flame war back.

</comment><comment><USER6> no?

</comment><comment><USER7> If you are conflating Ruby with Rails then you are not familiar enough with either to be asking such a question.

Also, who gives a shit?</comment>


Peapod Comes Live Today. - <AUTHOR> http://www.peapodmobility.com/ <comment><USER2> 30 mile range on an 8 hour charge, 25mph max, no roads posted above 35mph. What a fracking waste of money.

Sorry, but I just cannot see this being useful. It will work for a small number of people, no doubt, but not enough to make this a viable product.

Honestly, how far can you go when you have to avoid all roads posted above 35mph?

<comment><USER3> Um, around town? I don't know if this would cope with the hills of San Francisco, but the reason I don't own a car is that I rarely go past the city limit. Of course this is useless if you live in the country or some sleeper town where you face a long commute to work. Fine, it's not aimed at those markets, any more than city dwellers are the prime market for full-size pickup trucks. Sheesh - they even call it a ' _neighborhood_ electric vehicle'.

I do think the graphic design of the thing is sheer genius. If the price is right and things are sufficiently maneuverable, then great. Not so smart, however, was choosing the same name as a poorly-perceived grocery delivery service: <http://www.peapod.com/>

<comment><USER2> Granted. Yet not once has the concept of "neighborhood vehicles" succeeded. This has been tried before.

Working against them is the perception that a car is supposed to be driven on roads, any roads. Now they are trying to sell you a car that can only be driven on some roads. Part of the appeal of high economy vehicles, even those that one would traditionally consider "local" vehicles, is that they could be used for longer distance travel when necessary. Example: The Vespa-style scooters. Take away even the possibility of using this vehicle to travel, say, to the town down the road, or even the other side of the metro area, and it becomes much less appealing. It's a lot of money to spend on a vehicle that is hard-limited (legally speaking) to local travel.

I could see in certain densely populated areas, this could become more useful. My judgment may be totally flawed. Yet if I had to put money on it, I'd say this thing is going to flop.

<comment><USER3> Agreed, a lot depends on the price. However, you can't take a 50cc scooter on the freeway. If the price/TCO is right, I could see these selling as fleet vehicles for, say, mail delivery. Those little 'smart cars' from Mercedes and others seem to be doing OK.

I don't own a car, so to me a car fit for a road trip and a little runaround- town vehicle are two completely different products. I'd rather own the latter and rent the former once or twice a year.

edit: the proposed $20k isn't a winner, though. I think this kind of vehicle needs to be shooting for $5-7,500.</comment></comment></comment></comment>


Ask HN: How do you share releases and Product roadmaps with Customers? - <AUTHOR> I haven't found a good way to keep customers in the loop with new features and drive engagement.
Currently and in the past I've done:
-Reach out to key customers directly (effective but hard to scale)
-Email blast (low conversion)
-In-app notifications (Like Taco in Trello. Seems like it would be good but hard to integrate and make the case that it trumps other product work)
Are there better solutions for sharing the product's timeline and what's coming next (or just shipped)?
I'm looking for both process and tooling that help solve away this general problem
THANKS! <comment><USER2> What type of product are you working on? If it is a consumer app, then it is probably not a good idea to share things that are planned, because it is the nature of the business that plans change. You might not be able to avoid this with a B2B company - in that case I've seen a more personal touch (personal email / phone call) work well.

</comment><comment> mani-smhack I think [https://www.uservoice.com/](https://www.uservoice.com/) can help in this case .

People can ask for feature request and others can upvote so that you can keep track of the feature that is asked by more number of people .

</comment><comment><USER3> Try headwayapp.co for the in-app notifications.</comment>


Ask HN: How do you organize your CCS? - <AUTHOR>

What has been your winning strategy? <comment><USER2> Want replies? Ask about CSS, not CCS.

> What has been your winning strategy?

I personally try to use the right acronym.</comment>


Shift: A Zero FLOP, Zero Parameter Alternative to Spatial Convolutions [pdf] - <AUTHOR> https://arxiv.org/abs/1711.08141 <comment><USER2> Been doing this for a while. Full convulation is only cool because real neurons do this. Shifting makes more sense</comment>


OSv: open source operating system designed for the cloud - <AUTHOR> http://osv.io/ <comment><USER2> Where's the ARM64 port going? I see that it's been stalled for a few years.</comment>


The Copyright Monopoly Stands In Direct Opposition To Property Rights - <AUTHOR> http://falkvinge.net/2012/12/22/the-copyright-monopoly-stands-in-direct-opposition-to-property-rights

<comment><USER2> This article is completely wrong. I have read a few articles (I think there was one on TorrentFreak) on this point in the last few days that seem to completely misunderstand what property is and how intellectual and real property rights are related.

Firstly, 'property' is not a clearly defined concept. It has a series of features, which may not be present in all types of property. For instance, I might own real property which my local authorities put conditions on, forbidding me from building anything above three stories, or requiring a building permit before commencing works. Nobody would suggest that this is not my property though.

So what is property? Property at its core involves society granting one or more 'property rights' in respect of an object. Those property rights are all monopolies over certain things, such as a monopoly over possession, a monopoly over any profits etc etc. Each one of these rights can be individually cut off and assigned to a third party, or temporarily licensed to someone.

Which brings us to intellectual property, or more specifically in this instance, copyright. Copyright too is a grant of a series of monopolies rather than a single monopoly. The right to reproduce, the right to create derivative works etc are what is termed 'the exclusive rights' of copyright owners. What this article is describing is the exercise of those rights. Yes, when you purchase a DVD, you are not purchasing the underlying property. If you were, then you would be getting the film company's rights (which they may have spent hundreds of millions of dollars creating) for the very low price of $19.99 (or whatever you happened to pay for the DVD). Because they are granting you a licence, you get a limited licence for a fee.

If you don't like it, contact them directly and arrange terms of a different licence for a different fee. They have the power to do this because they own the property, not you. You might think you own the property but if you think harder about it, you own the physical DVD with its copy of the film, not the right to make unlimited copies of the film itself (which would amount to you owning the film, which is ridiculous).

The problem with Hollywood has nothing to do with some sort of fundamental flaw in the nature of copyright itself that we have failed to spot - it has to do with the failings of Hollywood to build a distribution model for the digital age that uses an online intermediary as a means of protecting property rights rather than suing individuals in a bid to make an example of people. It has to do with the fact that as Larry Lessig said, in the modern era, code is law - the software we create to protect things is more important than the laws we use to do so. The fact that it took so long for Netflix and Spotify to build businesses is proof of the fact that the code here hasn't kept pace with the law - if it had, we wouldn't have this problem. If the RIAA spent half their lobbying budget funding innovative new startups, they would have saved themselves a ton of money and we wouldn't be having this discussion.

<comment><USER3> I find your definition of property lacking. I find it lacking because it implies that there's some series of ones and zeros that I cannot inscribe onto my plastic disc.

Emphasis on the word my.

If I own something, then I have the right to alter it as I please, so long as doing so does not damage the property of another. Your definition of property does not let me do this, and so conflicts with property rights in general. I am forced to reject it.

Your reliance on society (by which you seem to mean government) to define property rights defies reason. Can society declare that my person belongs to someone else? I reject such notions.

<comment><USER4> So would you reject private parties agreeing to selling you an item with restrictions? For example, if I make a painting, and only agree to sell it to you if you agree not to do anything to it, how would you handle this? Would you say it is illegal for me to add such a restriction? Would you say any such clauses would be rejected (even if we both had agreed to them)? Any such restrictions would reduce property rights, it seems, because I am no longer allowed to privately agree to terms with other parties regarding the exchange of my property.

I am not a fan of copyright law as it stands by any means, but this article (and comment) seem to go to far.

<comment><USER5> The notion of "selling with restrictions" is a contradiction in terms. If the property is transferred to a new owner, then there can neither legally nor morally be any restrictions placed by the previous owner on how the new owner may use the property.

There are ways to shift custody of objects that would honor such restrictions that you speak of - but they are not a sale, nor are they exchange of property.

Cheers, Rick

</comment></comment></comment></comment><comment><USER6> There are various problems with the article, but the most glaring is the implicit assumption that copyright rights are somehow less fundamental than other kinds of property rights. They are not. Both exist because of the law, and neither exist without the law.

<comment><USER3> > Both exist because of the law, and neither exist without the law.

I could not disagree more. Rights exist even in the absence of respect for them. I affirm my right to life, and I would do so even if every person in the world wanted to kill me.

Rights are inalienable.

<comment><USER6> Leaving aside religion, rights exist only because society recognizes them and is willing to use its collective force to enforce them. In the absence of society, humans have no more of a "right to life" or a "right to property" than the chicken that ended up on my plate for dinner has these things.

<comment><USER7> We would all act to defend ourselves physically; we would not all act to "defend" copyright. People infringe copyright all the time, and others simply reject what they cannot copy easily.

There was enough disagreement to dislodge the right to own people from the right to own property. Is there enough agreement to keep copyright?

</comment></comment></comment></comment><comment><USER8> I stand in direct opposition to alarmist article titles.

</comment><comment><USER9> What about privacy rights?

</comment><comment><USER10> Not the strongest argument but I'm sympathetic to the direction here.

I think the line of argument would clearer if writer were to argue that rights to physical property have evolved out of traditional practices in English Common Law while right to intellectual property are the result of distinct "monopoly grants" that have happened at one time or another - and that specifically "intellectual property" would better be referred to as "intellectual monopoly" to indicate this distinction.

Another useful argument is that physical objects generally have the _inherent_ property that only a certain number of people can enjoy them - at least at one time. The "objects" of "intellectual property" don't have that quality and the owner and the state together instead must act to artificially impose that property on the "objects".</comment>


A History of the World in 100 Seconds - <AUTHOR> http://vimeo.com/19088241 <comment><USER2> Mind..blown.

We are about to experience a boom in global events.</comment>


Dear web developers: set the font color, too - <AUTHOR> https://www.luu.io/posts/web-devs-font-color <comment><USER3> This is the browser's fault for violating the HTML spec. As per the specification, the default font color is complete black and the default background color is complete white. To my knowledge the only browser that does not honor this is Firefox[1], and it is an eighteen year old bug which they refuse to fix.

[1] [https://bugzilla.mozilla.org/show_bug.cgi?id=70315](https://bugzilla.mozilla.org/show_bug.cgi?id=70315)

<comment><USER4> > This is the browser's fault for violating the HTML spec. As per the > specification, the default font color is complete black and the default > background color is complete white.

Your claim surprised me so much I went and re-read the latest HTML spec ( [https://www.w3.org/TR/html52/rendering.html#rendering](https://www.w3.org/TR/html52/rendering.html#rendering) ) and it does indeed say:

> The initial value for the color property is expected to be black. The > initial value for the background-color property is expected to be > transparent. The canvas' background is expected to be white.

The CSS specs ( [https://www.w3.org/TR/2018/REC-css- color-3-20180619/](https://www.w3.org/TR/2018/REC-css-color-3-20180619/) and [https://www.w3.org/TR/2011/REC- CSS2-20110607/colors.html#q14...](https://www.w3.org/TR/2011/REC- CSS2-20110607/colors.html#q14.0) ) say that the initial values depend on the user agent (hence deferring to the above quote):

> Name: color

> Initial: depends on user agent

> 'background-color'

> Initial: transparent

However, is this also the case for form fields? Scanning through the various CSS specs I can't find any mention of form fields (e.g. buttons, text inputs, etc.). The HTML specs don't seem to specify anything w.r.t. styling form fields either.

<comment><USER5> Huh, kids today with their modern web standards with their sensible, well specified defaults.

In my day, the default background color was #C0C0C0, as is laid down in the Book of Mozilla.

</comment></comment></comment><comment><USER6> Due to how widespread assumptions about "system" form field colors are throught the web, the proper thing for browsers to do is probably to _not_ apply a dark theme to form fields, at least by default. Maybe instead allow a CSS opt-in to support dark themes.

This seems to be what Apple is doing with Safari, and I feel like it's what provides the best user experience out of the box. (Even for pages that don't make this styling mistake, a single dark input field on a full light page is not a satisfactory dark mode experience)

<comment><USER7> I agree that that is the simplest solution, and I've even configured Firefox as such[1], but I kind of wish I could have ONE place to control styling of _everything_.

That is, I kind of wish web developers couldn't control colors and such, so people could have consistent styling in their whole system.

That's a pipe dream though. Websites tend to be hosted by people that want a brand to protect, and as adoption of computers increase people on average don't want to invest time in learning how to use and configure their systems.

Maybe I should consider seriously switching to elinks or w3m for my style- consistent browsing.

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

</comment></comment><comment><USER8> Sure it's not an issue with whatever is doing that (hacky) dark mode CSS? Looking at the google example, they are setting the font color. It just doesn't look good when dark-mode CSS doesn't take the existing colors into account.

<comment><AUTHOR> The dark mode is actually coming from the GNOME system colors, not browser plugin.

From inspecting the CSS in the developer console, the cases in the screenshot either set the background color without setting the text color, or vice versa.

<comment><USER9> I have a dark theme enabled on xfce, and this is not a problem for me in chromium. The inputs in native apps are dark, but they are the default light color in web pages on chromium.

<comment><USER10> Really? I might have to switch then.. I use Firefox and GNOME, and enabling one of the dark themes causes most forms on the web to become unusable because of this very issue.

<comment><USER9> I just tested Firefox on xfce and it shows the problem. Safari, Firefox, and Chrome on MacOS in dark mode do not have this problem. This appears to just be a Firefox on linux issue.

<comment><USER11> Firefox is doing what is technically the correct thing in using system colors text color and background when not specified.

Web developers are just not terribly competent. It should be obvious that setting text color but not text background is erroneous. Since expecting basic competence from web developers seems to be a losing battle several things suggest themselves.

\- provide a gui option to select the theme/style to use for firefox separate from the gui. This is already possible at the command line.

\- Explicitly check for text that is to close to the background wherein only one attribute is set and adjust the smartest solution

\- Just ignore the users colors like chrome does.

Personally I have a dark gtk theme but run firefox with a light one because otherwise the web is unusable.

<comment><USER12> I don't think you necessarily even have to check for colour similarity - <USER2> agree that setting only one attribute is broken, so just detect when only one attribute is set and either ignore it, or (if you feel like being clever) set the other attribute to be its complementary colour.

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> What has happened to the concept of "User Defined CSS"? Is it totally gone? Did Chrome kill it?

Browsers should be making this a prominent and first-class feature.

Users should be able to quickly and easily set their default styles for various elements and choose at what precedence level they apply.

<comment><USER14> Browsers have supported user defined CSS defaults since forever, and plugins like Stylish have been around for a while.

The practice of users customizing their CSS isn't prevalent because modern sites are incredibly complex and the average user doesn't want (or know how) to spend the time necessary to reverse engineer a site's layout and rewrite its CSS - there is no "quick and easy" way to do that for any but the simplest sites. Just consider how often professional developers complain about CSS, and they get _paid_ to put up with it.

<comment><USER13> > Browsers have supported user defined CSS defaults since forever, and plugins > like Stylish have been around for a while.

It looks like Chrome removed these several years ago:

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

Plugins are a thing but why should you need a plugin for something that is a core part of the CSS specification?

[https://www.w3.org/TR/CSS2/cascade.html#cascade](https://www.w3.org/TR/CSS2/cascade.html#cascade)

> the average user

This is (mostly) about accessibility. Even if the average user does not need it, some do. And those that do would be quite glad to have it easily.

> there is no "quick and easy" way to do that for any but the simplest sites

Just because user stylesheets have been ignored for many years doesn't mean they shouldn't be acknowledged. Design your site with them in mind.

</comment></comment></comment><comment><USER15> I hit this same same issue too. I tried to eliminate white backgrounds, because I find it tiring on my eyes and a bit painful. These sites made it too annoying to change the defaults, so I ended up giving up (and just always having my screen brightness near minimum).

But before I gave up I started collecting sites that either set background- color and not font color, or set color but not background-color: [https://gist.github.com/mrspeaker/1846b6b0e12c76f7eeb2](https://gist.github.com/mrspeaker/1846b6b0e12c76f7eeb2). There's a useless list for you!

<comment><USER16> there's a contrast/brightness button on most hardware, why have low contrast websites by design? just tune your monitor! it will then work for websites, games and everything else.

it will also allow you to handle contrast reducing it at night and tuning up when the monitor is struck with some glare, without having to change the css! imagine the convenience!

software developer: using hammers for everything since 1842

<comment><USER15> I don't want low contrast, I just wanted to swap my browser default foreground/background colors (low brightness is just my hacky workaround).

The "bug" on these sites is that if devs set a default background-color they should also set a default font color: either set neither properties, or set both.

Setting one means the default of the browser will be used. Most of the time it's background=white, foreground=black, so no one notices, but it means the option is gone for people who do want to modify them.

<comment><USER16> > I don't want low contrast

> I tried to eliminate white backgrounds, because I find it tiring on my eyes > and a bit painful.

yes, yes that's exactly what you want. besides you can tune both gamma and tone both in software and hardware on most platforms; this isn't rocket science people had the ability to tune the monitors to their liking since television had colors

<comment><USER17> No, they want[0] _white_ text on a _black_ background. That's not low contrast, that's high contast, unless you're suggesting a 'contrast' of -1.00, which is not what most people think of as "low contrast".

0: IIUC

</comment></comment></comment></comment></comment><comment><USER18> As a lazy web developer (it's not my main job) I just hope there are tools who mark those in a checklist. E.g. Google Lighthouse Accessibility Audit. [https://developers.google.com/web/tools/chrome- devtools/acce...](https://developers.google.com/web/tools/chrome- devtools/accessibility/reference)

</comment><comment><USER19> This is a real issue for me at times. I have a dark theme set in Gnome, because I want dark system windows, but lots of sites don't bother setting their colours properly, so if I open the Web UI for my Ubiquiti Router, or one of my switches, and try to select a drop-down, the background of it is dark, like my system theme, and the text is dark, so I can't see what I'm choosing.

Other times, like if I'm entering text into the Name field for ports on my switch (Ubiquiti) the background is white, the text is white and so I can't see what I've entered until I select all.

These aren't such a big issue so much as an irritation, but, lets same I'm trying to login to something, at times I can't see the username/email I've entered until I highlight, not such an issue for passwords because we do this blindly anyway most of the time.

I'd prefer if Firefox wasn't using my system UI elements at all, but even toggling the hidden config doesn't seem to make any difference there.

<comment><USER20> Would be cool, if websites would ask, if you like bright or dark website.

<comment><USER11> Do you want a pop up every time you browse a page?

<comment><USER21> They can throw it in the popup that tells me about cookies.

<comment><USER11> How about a global setting that the user can set once which is what we have now.

</comment></comment></comment></comment></comment><comment><USER22> Pretty tangential, but with AMOLED screens, I really hope society starts embracing a dark-mode default for interfaces. There is no reason to use light- mode with modern screens. It's taxing on the eyes, probably not good for kids and teens who are using screens 4 hours a day and it doesn't seem to offer benefits over dark-mode in terms of accessibility.

It's nice to see more and more websites and operating systems providing dark theme toggles, but I hope one day that light-mode becomes a thing of the past.

<comment><USER23> I prefer day-mode when in bright light. Otherwise the black background ends up reflecting the bright light. I often prefer night-mode when it is not bright out, and at nighttime.

<comment><USER24> I think the problem is that many of the "dark themes" have grayish fonts that give low contrast. If the font were pure white, the resulting contrast is much more usable in bright light

I achieve this by setting my display to higher contrast to blow out the grays, in bright light.

<comment><USER23> I'm not actually using night themes, but rather OS-level inversion. It might be that it's the same effect because the text is actually dark grey, which ends up being inverted to light grey.

I actually think it's more likely that many sites use very lightweight fonts, which means that in night mode there's a lot of dark pixels showing.

</comment></comment></comment></comment><comment><USER25> I don't understand this article. The author is using something that manipulates the style of inputs to make them dark with light fonts... but only if the input isn't explicitly styled with either _background-color_ or _color_.

If they're going to be doing such hackery, just style both at the same time. Use JavaScript or something to ensure both are styled. This really isn't the developer's concern.

<comment><USER11> The hackery is literally opening the users control center and clicking the icon for desktop theme and clicking on a different theme and clicking apply.

This sets the users desktop colors. Firefox will pick this up and use these colors for elements on the page unless these elements are explicitly styled by the developer.

So say the users theme specifies a grey or black background and white text. The developer wants a slightly different grey on the text but is ok with the default light background that developer assumes will show up.

Since the user specified a default color for the background and the developer did not we get a grey background. Since the developer selected a text color that takes precedence over the users selected color so we get grey text.

End result grey text on the grey background. There is no hackery. The user can't just style both because by design the developers choices are supposed to override defaults.

The user didn't do anything wrong. It is 100% the developers fault for explicitly specifying the color of the text and assuming (making an ass out of you and me) that the background would be a certain color because it is on their install of chrome. This is no different than assuming the users screen is a certain size. If you set the color of text just go ahead and actually specify the background color as well.

<comment><USER25> The developer was doing you a favor, by not overriding all your styles, preventing you from potentially downloading a bunch of unnecessary bytes, slowing down your browser with potentially unnecessary CSS rules and leaving it up to you to use your best judgement not to fubar the site. Like I've mentioned elsewhere, this is the old reset css debate.

It's a calculated risk to address 99% of users who don't have their browser change their default agent styles. Everyone else is assumed to know what they're doing.

<comment><USER11> There is no way for users to fix that you the dev decided to override one value and not the other other than not using dark themes.

Overriding one value and not the other isn't doing the user a favor it predictably results in broken behavior that you could 100% avoid by designing your page competently. The 2 colors are implicitly related and need to be chosen together to result in a readable result.

The fact that it works okay on most systems does not indicate that your work is correct.

100% broken code per standards that happened to work under internet explorer 6 wasn't correct under the principle that people could just use ie.

This is only different in that this debate is more nonsensical because the correct behavior is so easy to achieve.

The default background being light isn't an actual default and if you depend on it then it is no different than depending on the user speaking English having 3 names text being ltr.

Its calculated nothing because setting the background color increases how predictable your look and feel is. There are zero downsides to doing so.

</comment></comment></comment></comment><comment><USER26> I am not sure if web developers are to blame here. It would probably be way more consistent to define default colors based on a standard instead of some local settings. However, if you change the colors you should make sure to do so for all related ones to avoid this.

For Linux you can setup Firefox to use a different theme for content widgets which can fix assumptions developers have about the default colors.

I've configured it in the about:config page like this:

widget.content.gtk-theme-override;Adwaita:light

</comment><comment><USER27> For as long as I can recall, the CSS linting tools I have used always warn when defining one and not the other, so it just became a habit for me.

</comment><comment><USER28> I really don't get why front end devs/UI people are so crazy about fonts. It doesn't add to the experience.

Personally I set up an override in my browser. it's a mono, a sans and a serif, sizes 8-14 or so. All black.

The internet is readable again.

</comment><comment><USER29> Definitely agree accessibility is important going into 2019. Different users are going to be viewing a site with more screen readers, dark theme, and other alternative viewing options, very much like we saw with mobilegeddon and the advent of responsive design. I've seen the argument that this hurts the "intended web experience", but this can be solved by keeping up with modern CSS practices and crafting the experience with screen readers in mind.

Good stuff, thank you for sharing.

<comment><USER25> I agree we need to give accessibility more priority and we likely will once the discrimination lawsuits start rolling in. But this isn't an accessibility issue. Nowhere in WCAG 2 will you find anything that explicitly outlines both color and background color need to defined in stylesheets.

This is for users who prefer dark themes who are overriding styles of websites incorrectly. It is a failing of the user's browser/OS for not explicitly overriding both background and color at the same time or neither. If every developer had to add in a color for the edge case that someone is overriding styles globally, then we'd be bloating stylesheets with extra unnecessary bytes.

<comment><AUTHOR> You got it backward. The custom CSS of the website is overriding the system styles in this case. Let's take font-family for example. Just because you're setting the font for your input[text] tags doesn't mean the browser will also automatically set the font for other elements to match the style. If you want the website to have uniform look, then you'll need to set the font-family for other elements, too.

<comment><USER25> This is really just the old debate of whether to use a reset css in disguise. It has nothing to do with accessibility.

</comment></comment></comment></comment><comment><USER30> Tangentially related question: is it up to the developer to make forms do stuff like use the number pad on a phone instead of the QWERTY keyboard when the user is asked for a zip code or telephone number? Is this not something that is just auto-baked in to modern web dev frameworks?

</comment><comment><USER31> Browsers on macOS appear to be smart enough to not pass through the system dark theme to web content. I'm seeing white forms in Safari and Firefox (Chrome doesn't seem to support dark theming at all).

As much as I'm a proponent of OS-native UX, CSS styling of form controls on the web has been a crapfest ever since IE(?) introduced it way back when. Whenever CSS touches a web form control it should just go completely custom- rendered. If you want to impose a dark theme on web content, you should use an intelligent browser extension that does things like verify text contrast.

<comment><USER32> > Browsers on macOS appear to be smart enough to not pass through the system > dark theme to web content.

There two main reasons here:

* Browsers don't support dark themes themselves.

* Browsers don't support @media(prefers-color-scheme).

<comment><USER31> Both Safari and Firefox support the macOS Mojave dark theme

</comment></comment></comment><comment><USER33> I didn't think about this in that case. Thanks for the article. I especially like using this color in my forms: [https://hexcol.com/color/f9f9f9](https://hexcol.com/color/f9f9f9) and i'm doing this really often. To be honest, I think those system architects should take care of this bug more than web developers, but it's just one more line in code for us, so it's worth to think about.

</comment><comment><USER34> Never though about this before, but, dark themes have only recently become widespread, so I'm not necessarily faulting web devs on this.

<comment><USER35> It's not about dark themes - I don't think it was ever right to set one colour without the other as I don't believe (may be wrong) that the CSS or HTML standard ever said anything about default colours?

</comment></comment><comment><USER36> I'm curious: what is environment for these tests?

I want to reproduce to understand what's going on better.

(For what it's worth, in 10 sec of testing Safari and Chrome on MacOS dark mode don't seem to have this issue... the font and background colors seem to still default to dark on white.)

<comment><USER7> It happens to me on Linux. I have GTK and QT configured with dark themes. To overcome this, I have to configure Firefox with a default styling in ~/.mozilla/firefox/*/chrome/userContent.css:

        input, button {
            -moz-appearance: none !important;
            background-color: white;
            color: black;
        }

        textarea {
            -moz-appearance: none !important;
            background-color: white;
            color: black;
        }

        select {
            -moz-appearance: none !important;
            background-color: white;
            color: black;
        }

Now that I look at it, I wonder why I didn't join all 3. Whatever.

<comment><USER37> Thanks for this! I've been dealing with this issue for a while now and somehow didn't think to use CSS to fix it (despite having a number of custom stylesheets for various sites).

<comment><USER7> I think it still needs some work. A couple of months ago I opened a webpage with documentation. It had a table of contents in the sidebar, and it was invisible. White on white. It was because these were simply links, and not input field elements. Perhaps the solution is as simple as assigning these rules to html or body instead of these elements, and letting it cascade. There might also be stylesheets online meant to normalize styling across web browsers that one could use.

<comment><USER37> Yeah, I'm definitely in the process of tweaking it; I'd rather still have the inputs be dark with white text, but messing with things like buttons can make some sites have some glaring differences. I think the main insight I got from this is that I can at least use CSS to tweak this sort of thing; beforehand, I was just opening up Gnome Tweak Tool and changing the theme whenever I needed to do something like comments on a Google doc, and this is a much better solution.

Thanks again!

</comment></comment></comment></comment></comment><comment><USER38> Another one of those "dear web developer" blogs... I think it would make more sense to direct your condescendence to the people who actually define the products and those that decide on the priorities.

</comment><comment><USER39> > Add yet another /* TODO */ in your codebase and call it a day. JK :-).

Then you could track it with [http://srcoftruth.com/](http://srcoftruth.com/)

</comment><comment><USER40> Of You want to mix system colors with your own you can calc the contrast too! (How i leave as an exercise for the reader)

</comment><comment> aug-riedinger How such uninteresting article can make it to the newsletter?

</comment><comment><USER41> Or you could entirely avoid this issue by using multi-font themes with different weights, decorations, and ligatures.

<comment><USER42> What does that have to do with color and backgroundColor?

<comment><USER41> How does it not?

The article even states: "Don't set the colors at all, let the browser use the system default color".

If a developer wants to express some intent maybe utilizing something else other than color would resolve some of these issues. If I can develop without color a user can read without color [https://github.com/maio/eink- emacs](https://github.com/maio/eink-emacs)

<comment><USER42> _The article even states: "Don't set the colors at all, let the browser use the system default color"._

That's just one of three options. Setting "both the background color AND font color" is another.

Also, the third option might give you a hint that the author's tongue is in their cheek.

</comment></comment></comment></comment><comment><USER43> Apple introduced Dark Mode expecting all major websites to maintain some CSS just for a small percentage of macOS users. I don't think it's going to happen (and it's not happening)

<comment><USER44> This comment intrigued me, so I did some digging. Looks like "prefers-color- scheme" is currently being considered by both Chrome[1] and Firefox[2]. A can- I-use page was just created for it[3].

I'm excited by this one! Think I'll add dark mode support to my simple blog right now.

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

[2] [https://bugzilla.mozilla.org/show_bug.cgi?id=1494034](https://bugzilla.mozilla.org/show_bug.cgi?id=1494034)

[3] [https://caniuse.com/#feat=prefers-color- scheme](https://caniuse.com/#feat=prefers-color-scheme)

<comment><USER4> Wow, what an awful thing to standardise! Are there equivalents for high/low- contrast? Red themes, blue themes, multicolour themes, etc.?

Why layer something like this _on top_ of an override system, when devs can choose to just _not override_ those things?

As an example, the only CSS colours I use on chriswarbo.net are either semi- transparent, or mid-grey (which work on light and dark themes, although I might revisit that since it would presumably not work on default-grey systems like AmigaOS).

<comment><USER45> How else should a site query for the user preference? Everyone is operating in the blind right now.

<comment><USER4> Sites are _already_ styled according to the user's preference, by default. If you want to respect the user's preference, stop overriding things with CSS.

<comment><USER44> Sites are styled by default browser stylings. When font changes are inherited from user's settings however, it basically just breaks everything.

For accessibility reasons, using the zoom feature is much more stable than increasing the default font size.

<comment><USER4> > Sites are styled by default browser stylings

Which users choose according to their preferences (e.g. Firefox offers a preferences dialogue for this, and a bunch of about:config options). Whilst most users leave these as the OS/browser vendor's defaults, (in the words of Rush) "if you choose not to decide, you still have made a choice".

> When font changes are inherited from user's settings however, it basically > just breaks everything.

> For accessibility reasons, using the zoom feature is much more stable than > increasing the default font size.

So you're agreeing that all these sites are broken?

<comment><USER44> No, it's just a lost cause. I've had people complain that their website looks crazy on one specific PC, and after tons of debugging found it's because somebody set their default font size to 200px.

Of course, the majority of websites apply their own font styling so this doesn't often come up anymore. But those settings are just death traps at this point. Ineffective in 90% of cases, and hazardous in the 10% where they do work.</comment></comment></comment></comment></comment></comment></comment></comment>


Add Your Apartment To My Site - <AUTHOR> http://apartmenttraqr.com

<comment><AUTHOR> I'm starting up a business in apartment problem tracking, and some related things. Help me out by adding your apartment to the site, if you live in one.</comment>


Show HN: PLEENQ – Give context to images (using Reddit as an example) - <AUTHOR> https://www.youtube.com/watch?v=MhpB6QDOxCI&feature=youtu.be

<comment><AUTHOR> Hi HN,

Founder of PLEENQ here. I didn't want to complicate the video, but the quick explanation is this:

1\. A user links an item in an image to what it is. That could be an IMDB page, a Wikipedia page, or where to buy the item.

2\. Other users click through the link, and if a product, are linked directly to where to purchase the item.

3\. If a user purchases the item, the person who created the link gets paid a percentage of the total price of the item (the affiliate commission).

We're currently in public beta, so feel free to download it and try it out. It's a chrome extension right now, but we will expand it to firefox and safari in the future.

Another note: you can inject PLEENQ directly into your web page to give the functionality to the users of your site. We're onboarding over 30 blogs this month that are including this functionality into their site and help their site monetize. Feel free to contact me at firstname.lastname@example.com if you're interested in that.</comment>


Events that sparked WWI - <AUTHOR> http://winkdom.com/a/12L

<comment><USER2> I've started listening to the WWI episodes of Dan Carlin's podcast "Hardcore History." He does a good job of intensely conveying the mindset that got the European powers into that war.

Part 1: [http://www.dancarlin.com//disp.php/hharchive/Show-50--- Bluep...](http://www.dancarlin.com//disp.php/hharchive/Show-50---Blueprint- for-Armageddon-I/First%20World%20War-World%20War%20One-Great%20War)

Part 2: [http://www.dancarlin.com//disp.php/hharchive/Show-51--- Bluep...](http://www.dancarlin.com//disp.php/hharchive/Show-51---Blueprint- for-Armageddon-II/First%20World%20War-World%20War%20One-Great%20War)

Part 3: [http://www.dancarlin.com//disp.php/hharchive/Show-52--- Bluep...](http://www.dancarlin.com//disp.php/hharchive/Show-52---Blueprint- for-Armageddon-III/World%20War%20One-Great%20War-history)

<comment><USER3> Was just about to comment the same. Dan Carlins podcasts are great. Starting at Archduke Ferdinand oversimplifies

</comment></comment><comment><USER4> _Private Baldrick: No, the thing is: The way I see it, these days there 's a war on, right? and, ages ago, there wasn't a war on, right? So, there must have been a moment when there not being a war on went away, right? and there being a war on came along. So, what I want to know is: How did we get from the one case of affairs to the other case of affairs?

Captain Blackadder: Do you mean "How did the war start?"

Lieutenant George: The war started because of the vile Hun and his villainous empire- building.

Captain Blackadder: George, the British Empire at present covers a quarter of the globe, while the German Empire consists of a small sausage factory in Tanganiki. I hardly think that we can be entirely absolved of blame on the imperialistic front.

Lieutenant George: Oh, no, sir, absolutely not.

Private Baldrick: I heard that it started when a bloke called Archie Duke shot an ostrich 'cause he was hungry.

Captain Blackadder: I think you mean it started when the Archduke of Austro- Hungary got shot._

[http://www.liveleak.com/view?i=641_1285524199](http://www.liveleak.com/view?i=641_1285524199)

</comment><comment><USER5> For a highly provacative and informative lesser-known history of WWI, see Robert Newman's History of Oil.

[http://fixyt.com/watch?v=GIpm_8v80hw](http://fixyt.com/watch?v=GIpm_8v80hw)

The book (and PBS/BBC series) _The Prize_ also includes some highly interesting aspects on both WWI and WWII and the role of oil in combat. Though the concerns over the Berlin-Baghdad Railroad Newman highlights aren't discussed.

[http://fixyt.com/watch?v=ioazMpe1SHE](http://fixyt.com/watch?v=ioazMpe1SHE) (around 41m46s)

</comment><comment> chestnut-tree The BBC is broadcasting and publishing tons of stuff about WWI. Perhaps too much to be honest. However, for those who are interested in the history, they have some informative guides.

Today (June 28) is the day that Archduke Franz Ferdinand was assasinated in 1914:

 _37 Days: Countdown to World War One_ [http://www.bbc.co.uk/timelines/zgy334j](http://www.bbc.co.uk/timelines/zgy334j)

</comment><comment><USER6> As a Serbian, I see a lot of rewriting history in recent years where Germans want to shift responsibility for horrible acts of savagery to others, especially as EU does carry some of the nazi ideals.

On the other hand, having more balanced approach to events is certainly welcome. Britain for example is not completely innocent at all and prevailing sentiment was always to blame Germans for everything.

</comment><comment><USER7> [https://twitter.com/prchovanec/status/482813849876594689/pho...](https://twitter.com/prchovanec/status/482813849876594689/photo/1)

I was expecting a more antique gun.

<comment><USER5> "Modernism" is much older than you'd think.

Look up Biedermeier school sometime:

[http://en.wikipedia.org/wiki/Biedermeier](http://en.wikipedia.org/wiki/Biedermeier)

</comment></comment><comment><USER8> That is the tedious history nonsense we tell children. This is HN, we have better discussions, for example:

[http://en.wikipedia.org/wiki/Baghdad_Railway#Role_in_origins...](http://en.wikipedia.org/wiki/Baghdad_Railway#Role_in_origins_of_World_War_I)</comment>


Python2.5 is faster than python3 - <AUTHOR> https://docs.python.org/3.0/whatsnew/3.0.html#performance <comment><USER2> The title should be "python 3.0", not "python3". This links to the 'What's New in Python 3.0', dated February 14, 2009.

The relevant line is:

"The net result of the 3.0 generalizations is that Python 3.0 runs the pystone benchmark around 10% slower than Python 2.5. Most likely the biggest cause is the removal of special-casing for small integers. There's room for improvement, but it will happen after 3.0 is released!"

Python 3 continues to be faster. [https://speed.python.org/comparison/?exe=12%2BL%2Bmaster%2C1...](https://speed.python.org/comparison/?exe=12%2BL%2Bmaster%2C12%2BL%2B2.7&ben=616%2C617%2C618%2C619%2C620%2C621%2C622%2C623%2C624%2C625%2C626%2C627%2C628%2C629%2C630%2C631%2C632%2C680%2C633%2C634%2C635%2C636%2C637%2C638%2C639%2C640%2C641%2C642%2C643%2C644%2C645%2C646%2C647%2C648%2C681%2C649%2C650%2C651%2C652%2C653%2C654%2C655%2C656%2C657%2C658%2C659%2C660%2C661%2C682%2C662%2C663%2C664%2C665%2C666%2C667%2C669%2C668%2C670%2C671%2C672%2C673%2C674%2C675%2C678%2C677%2C676%2C679&env=1&hor=true&bas=12%2BL%2B2.7&chart=normal+bars) shows (if I interpret it correctly) that the most recent Python is nearly always faster then 2.7.</comment>


The Semantic Web and the Knowledge Graph - <AUTHOR> http://votable.tumblr.com/

<comment><USER2> so this is kind of like facebooks graph?</comment>


Join the ##solofounders channel on freenode - <AUTHOR>

I just created the ##solofounders channel on freenode.  As the channel name suggests it's for startups or ongoing businesses created by a single founder.  Stop by if you are interested. <comment><USER2> Why would you go there instead of #startups? Are solo startups so different that they cannot benefit from the advice of non-solo startuppers?

<comment><USER3> When you're a solo founder, the weighting of the same issues would appear to be significantly different -- or, at least that's my impression when talking to partnered founders.

There's also the sometimes-existential question of being solo, which, yes, brings a whole new set of issues to the table around working habits, motivation, funding, etc.

<comment><USER2> Come to #startups, we've got plenty of solo founders too :-)

</comment></comment></comment><comment><USER4> The differences are smaller than the common elements, and besides that, any chatroom that you try to set up around a subset of a slightly larger one will always suffer from the empty room effect.

It takes a significant number of people to kickstart a new community and even though I'm right in the middle of the target audience I'll stick to #start-ups simply because you can only monitor so many inputs.

The same happens to sites that try to run alternatives to HN for some subset of the information (or even for a different kind of information), they invariably have a huge peak on day one and then they die within a few days, months at best.

The one exception eventually died because the owner didn't put in the effort to keep it going.

Starting a new community is not as easy as announcing one.

<comment><AUTHOR> It probably will peak and then level off, but hopefully it will allow folks to make some connections and when it does level off the s/n ratio will be higher than a crowded channel. Right now there are 25 folks in the room and the conversation is already pretty interesting.

<comment><USER4> Tell me in three weeks!

</comment></comment></comment><comment><USER5> Link to solofounders:[http://webchat.freenode.net?channels=%23%23solofounders&...](http://webchat.freenode.net?channels=%23%23solofounders&uio=d4)

Link to startups: [http://webchat.freenode.net?channels=%23startups&uio=d4](http://webchat.freenode.net?channels=%23startups&uio=d4)

(For those who've never used IRC)

</comment><comment><USER6> I'm there... doesn't seem the creator is actually there. Hrm!

<comment><AUTHOR> Make sure you use double hashes - ##solofounders

I wanted to stay within the freenode etiquette so I used ##solofounders since its not really a project.

<comment><USER7> The alternative is to go on a different IRC network more friendly and less rules based...

Freenode ironically isn't very free.

</comment></comment></comment><comment><USER8> Any ##solofounders or #startups meetups in NYC or WNY areas?</comment>


Fedora 16 review - <AUTHOR> http://www.pixelbeat.org/docs/f16.html

<comment><USER2> Not the greatest of reviews. If you take out the gnome3 complaints (gnome3 is awful, we know) there is not a lot to the review.</comment>


Out-Of-Box Exploitation: A Security Analysis of OEM Updaters - <AUTHOR> https://duo.com/blog/out-of-box-exploitation-a-security-analysis-of-oem-updaters <comment> slipstream- I've found enough issues in OEM-preinstalled/OEM-provided stuff that this isn't a surprise at all. (most have been fixed by now, at least. Not sure about the Asus one, as that got reported by someone else over a year prior to my full disclosure.)

[http://lizardhq.org/2015/11/25/dell-foundation- services.html](http://lizardhq.org/2015/11/25/dell-foundation-services.html)

[http://lizardhq.org/2015/12/01/dell-foundation- services.2.ht...](http://lizardhq.org/2015/12/01/dell-foundation- services.2.html)

[http://lizardhq.org/2015/12/05/dell-system- detect.html](http://lizardhq.org/2015/12/05/dell-system-detect.html)

[http://lizardhq.org/2015/12/05/lenovo.html](http://lizardhq.org/2015/12/05/lenovo.html)

[http://lizardhq.org/2015/12/05/toshiba-service- station.html](http://lizardhq.org/2015/12/05/toshiba-service-station.html)

[https://rol.im/asux/](https://rol.im/asux/)

</comment><comment><USER2> Really, this shouldn't come as a surprise. At this point, pre-loaded systems just aren't worth trusting. Better to remove them entirely and start from square one. It's a pain, but until consumers put more pressure on manufacturers, it'll continue being an issue. I'd honestly like to see MS force clean installs, limited only to driver's as an option, as this bloatware is just a huge security flaw, and something that lessens the machine.

<comment><USER3> It's pretty amazing that Microsoft lets the OEMs tarnish the Windows brand with this shady business.

<comment><USER4> Well with Windows 8 and now 10, MS is tarnishing their brand, albeit it in different ways. The uncertainty over what MS does and inability to shut it off (apparently updates undo settings?) is why I still don't use W10. :\

<comment><USER5> I'm in the same boat, and just want to add that they encourage that feeling to stay away in me by doing the same in my win 8.1 install. I have to 'ignore this update' for the windows 10 update (kb 3035583 I think) every single time I 'check for updates'. Seriously?

</comment></comment></comment></comment><comment><USER6> Maybe I'm just slow, but their chart seems perfectly ambiguous to me. I can't figure out whether "red X" means "it's bad", or "green check" means "we successfully hacked it".

<comment> slipstream- The former; red X means it's bad.

</comment></comment><comment><USER7> Quite expected. I'd like to see them review uLoad and stuff like it, though. Show us if they're really any better.

[http://cypherbridge.com/ProductsServices.html](http://cypherbridge.com/ProductsServices.html)

</comment><comment><USER8> The Notary framework from Docker allows to securely distribute binary content. That would benefit many services...

[https://github.com/docker/notary](https://github.com/docker/notary)

</comment><comment><USER9> It's incredible that (some?) Microsoft Signature Edition builds also are vulnerable. Isn't being "clean" the entire purpose of this edition?

<comment> slipstream- Being "clean" doesn't help when OEM drivers have security issues too (example: [https://rol.im/asux/](https://rol.im/asux/) )

<comment><USER4> I'm more upset that drivers can download full programs. I plugged in a mouse, Windows did its thing, then I was greeted with a big "leet graphics" registration window.

</comment></comment></comment><comment><USER10> Someone should take a look at the update services for Microsoft Office for Mac which still does chunks over HTTP as well...

</comment><comment><USER11> How about Ubuntu's updater? Any problems there?

<comment><USER12> On Linux systems you'll see a mix of apt-get (debs), yum/zipper (rpm systems), emerge (gentoo/funtoo based systems), etc.

All of the ones I've mentioned have certificate based checking for the repository lists. They're verified when they sync. If you want to add a new repository, you typically have to import their key (don't think this is the case with Gentoo overlays in layman, but I'm not sure).

Most systems used signed packages too, or at a minimum they verify the SHA sums.

There have been exploits found and you can search through the bug trackers for each distribution to find them. If you find any new ones, most distros have bug bounty programs too.

There are probably some other exploits out there, but in general Linux package managers are pretty good about verifying package manifests and packages before installing them.

</comment></comment><comment><USER13> Well since every day is a slow news day, and this is great headline-grabbing and panic inducing information, we need to get this on network news.</comment>


I know how to code, I can code in anything - <AUTHOR> https://www.schneems.com/2017/10/17/i-know-how-to-code-i-can-code-in-anything/ <comment><USER2> I program in google anymore. which usually translates into stackoverflow.</comment>


Don the Talking Dog - <AUTHOR> https://www.smithsonianmag.com/history/when-don-talking-dog-took-nation-storm-180968867/?no-ist <comment><USER2> Dogs understand spoken words. A few dogs figure out they can speak, too.

I grew up with a Cocker Spaniel who both recognized and used "Mom". (She recognized other words, too.)</comment>


When Daydreaming Replaces Real Life - <AUTHOR> http://www.theatlantic.com/health/archive/2015/04/when-daydreaming-replaces-real-life/391319/?single_page=true <comment><USER2> I'm not a hypochondriac, I swear, but this really hits home. I have medically diagnosed ADHD; seemingly contrary to the disorder, I often find myself getting stuck daydreaming for hours. I honestly _enjoy_ it, and as a consequence of my incredibly realistic daydreams I never get bored. Seriously --I never get bored. It's like a dopamine rush I can turn on whenever I want. My stories are better than any movie because I'm actually _in_ them.

The walking in circles bit is just uncanny. My most creative thinking (or most vivid daydreams) happen when I'm doing exactly that. It's really weird (and I'm acutely conscious of how it must look), so I never let people catch me doing it. Something about walking in circles turns up the realism an order of magnitude.

I think this is highly related to my ADHD, and now I want to tell my doctor about it. I don't want to rid myself of this, but I do want to control it better.

<comment><USER3> Walking in circles when using the telephone is really common. I wonder whether it is related?

<comment><USER4> The Navajo word for "cellphone" translates to "the thing you spin around with".

I think motor activity helps us pump thoughts through our brain.

<comment><USER5> I was skeptical about the Navajo claim, but you're totally right. "Bił Nijoobałí" [https://www.youtube.com/watch?v=PzwupgNm0GI](https://www.youtube.com/watch?v=PzwupgNm0GI)

</comment></comment></comment></comment><comment><USER6> Meh', I channel Terence McKenna and Alan Watts on this matter.

[https://www.youtube.com/watch?v=emHAoQGoQic](https://www.youtube.com/watch?v=emHAoQGoQic)

[https://www.youtube.com/watch?v=YMDu3JdQ8Ow](https://www.youtube.com/watch?v=YMDu3JdQ8Ow)

[https://www.youtube.com/watch?v=8rGwASGXj8w](https://www.youtube.com/watch?v=8rGwASGXj8w)

[https://www.youtube.com/watch?v=RC7aud4b3dQ](https://www.youtube.com/watch?v=RC7aud4b3dQ)

"Real" life .... An Interesting concept.

</comment><comment><USER7> There is a story, "The Secret Life of Walter Mitty" (1939) [1] that was made into motion pictures in 1947 and 2013 depicting a man who has elaborate, heroic, daydreams. The 2013 film [2], directed by Ben Stiller (who also played Walter Mitty) was an interesting mix of comedy and reality that leaves you contemplating at the end of the movie.

[1] [http://en.wikipedia.org/wiki/The_Secret_Life_of_Walter_Mitty](http://en.wikipedia.org/wiki/The_Secret_Life_of_Walter_Mitty) [2] [http://en.wikipedia.org/wiki/The_Secret_Life_of_Walter_Mitty...](http://en.wikipedia.org/wiki/The_Secret_Life_of_Walter_Mitty_\(2013_film\))

</comment><comment><USER8> Why not write down the characters and their lives and may be turn that into fiction? Especially if they are so interesting. Then this obsessive day- dreaming becomes an asset rather than a liability?

<comment><USER9> Don't a lot of fantasy prone people already do that? It would explain a lot of fan-fiction and con-worlds.

That said, most daydreams have an element of wish fulfillment in them, which wouldn't make for good fiction.

<comment><USER10> I have problems with daydreaming similar to what the article describes (it makes it incredibly difficult for me to work from home [with music the main trigger], though I am getting much better at controlling it), and yeah, most of it is wish fulfilment. Also fan fiction is basically wish fulfilment as well IMO, so that fits as well. (somewhat ironically, the effort to turn that into good fiction would probably fall prey to the same daydreaming problems)

</comment></comment></comment><comment><USER11> The reason why the author has a hard time finding a specific diagnosis is because her "maladaptive daydreams" are a symptom, not a disease. Her real problem is an inability or unwillingness to engage with reality, which is a component of any number of personality disorders.

Really, this inclusion of ridiculously overspecified symptoms and diseases-du- jour in the DSM has got to stop. It makes a mockery of what little credibility psychology has left.

</comment><comment><USER12> I don't know if it's only a French thing, but the problem is not unknown as the author seems to think : this is called "bovarysme" [http://en.wikipedia.org/wiki/Bovarysme](http://en.wikipedia.org/wiki/Bovarysme)

</comment><comment><USER13> The level of persistence and continuity in the imaginary worlds that some of these people have constructed is striking.

I wonder if this is simply due to the extreme volume of daydreaming, or if it's a characteristic unique to the disorder itself.

<comment><USER14> I wonder if they remember all the details or if they are able to recreate them to a very similar degree of detail with good accuracy without needing to actually remember them because they also created the original information.

</comment></comment><comment><USER15> FTA: "Will maladaptive daydreaming ever end up in the DSM? In the most recent version, hoarding and skin picking made an appearance for the first time, as a part of obsessive-compulsive disorder. For people who suffer from these conditions, this means they can now receive treatment and insurance reimbursement for behaviors that were previously considered odd but not pathological."

Am I the only one who worries about everything and anything ending up in the DSM, to then be controlled by medication? Unless what's going in your head actively interferes with your day-to-day existence, why does it matter what you do?

<comment><USER16> "Interfering with your day to day life" is one of the things used to decide if you want or need treatment. There are limited situations when treatment is forced upon you and hoarding or skin picking probably aren't them.

Don't forget that something with a common English word as a name ("hair plucking") is not as simple as "occasionally plucks some hair", but "compulsively plucks hair, to the point of semi baldness, with distress as a result".

<comment><USER17> With a sufficiently large vocabulary, it is easy to distinguish between cosmetic depilation and trichotillomania. While drugs and therapies are prescribed to people suffering from the latter (clomipramine, acetylcysteine), they are also available over the counter for the former (thioglycolate).

One could also make the argument that perhaps it is real life that is interfering with the daydreams, rather than the other way around. If that's the case, we also have drugs to treat that (alcohol, psilocybin, heroin, marijuana, nicotine, LSD-25, cocaine, MDMA, etc.).

Keeping it out of the DSM won't stop anyone from inventing treatment options.

</comment></comment></comment><comment><USER18> I'm not surprised that a drug used to treat OCD helped her, because this really sounds like a variant form of OCD. The difference is that she was obsessing about the virtual world she had created inside her own head instead of something out in the physical world.

It seems to be a human failing to sometimes trap ourselves in self-sustaining loops of thought that we find very hard to break.

</comment><comment><USER19> I am reminded of ELO's Eldorado, which itself follows the style of the original Walter Mitty story. [https://en.wikipedia.org/wiki/Eldorado_(Electric_Light_Orche...](https://en.wikipedia.org/wiki/Eldorado_\(Electric_Light_Orchestra_album\))

</comment><comment><USER20> I definitely met all of these symptoms as a kid, down to the hours of elaborate stories and the repetitive motions. I've since outgrown it, I got too busy to return to my fantasy chracters. But I'll always miss them a bit.

</comment><comment><USER21> What's it like to daydream? I don't think I've ever done it. Until a few years ago I didn't realize it was actually a thing, I just thought the word meant "not paying attention" or something like that.

<comment><USER11> What is it that's holding your attention when you're "not paying attention"?

</comment></comment><comment><USER22> Could someone who becomes "addicted" to an MMORPG be a variety of that? (Because it requires suspension of disbelief, which is a form of imagination, I feel)</comment>


Europe is no longer an innovation leader. - <AUTHOR> https://www.weforum.org/agenda/2019/03/europe-is-no-longer-an-innovation-leader-heres-how-it-can-get-ahead/ <comment><USER2> Today's innovation leader is that dragon who started his life as a copycat. People used to make fun of "Made in China" once and today, they produce most innovative mobile devices that people use.</comment>


Group Normalization - <AUTHOR> https://arxiv.org/abs/1803.08494 <comment><USER2> No relation of subgroup normalisation, just a bad name.

</comment><comment><USER3> Mostly only relevant for convnets it seems

<comment><USER4> "only"

</comment></comment><comment><USER5> Has anyone made or found an implementation yet?

<comment><USER6> When it comes to using super new research models or methods in deep learning, implementing it yourself instead of looking for other implementations is almost a requirement. In my experience the majority of online "implementations" of research deep learning models or methods have subtle bugs, flaws, or outright implemented something different than the paper they reference. This isn't limited to random github code: for example, I wouldn't trust anything in tensorflow.contrib unless I read the source.

<comment><USER7> Having implemented algorithms from research papers I came to the conclusion that the same is true about the papers. It's unbelievable how bad the quality of the description of algorithms often is.

</comment></comment></comment><comment><USER8> Nothing to do with database normalization or reconciliation</comment>


Film About Why Aaron Swartz Matters More Than Ever - <AUTHOR> http://techcrunch.com/2014/06/27/watch-this-film-about-why-aaron-swartz-matters-more-than-ever/

<comment><USER2>
        Who the hell is Aaron Swartz? and Why you should care (techcrunch.com)
        3 points by downstream1960 1 hour ago | flag | cached | share | discuss

Where the fuck did this title come from? The TechCrunch title is "Watch This Film About Why Aaron Swartz Matters More Than Ever" and the film is called "The Internet's Own Boy".

Did someone think that HN collectively doesn't know who Aaron Swartz was?

<comment><USER3> Really annoying title, as I think most of the tech community still remembers Aaron Swartz quite well. This little piece of drivel doesn't offer any opinions, and it certainly doesn't go out on a limb. Worse yet, that dramatic title about Aaron "mattering more than ever" is followed by an article that completely fails to talk about how important he was. He fought SOPA in a way that few people could. This article is a disgrace, and makes me have serious doubts about the movie. Wondering if anyone has written better articles about the movie that are brave enough to paint Aaron as a hero?</comment></comment>


Show HN: An isomorphic deal-aggregator built with Node and React - <AUTHOR> http://dealbait.me

<comment><USER2> I liked the effect of the cards popping up when clicked. But wasn't sure how to close it, I thought I could click off of it to close it but you have to click on the title.

</comment><comment><AUTHOR> This is the first iteration, looking to just get UX feedback and initial impressions.</comment>


Half of millennials and 75% of Gen Z have left jobs for mental health reasons - <AUTHOR> https://www.cnbc.com/2019/10/11/mental-health-issues-cause-record-numbers-of-gen-x-z-to-leave-jobs.html <comment><USER2> Yeah, it's not downward social mobility, crippling education and medical debt, 20 years of pointless war, militarized police and active school shooter drills, impending climate crises we're politically powerless to act on, ongoing erosion of workers rights, no expectation of ever owning a home or retiring, or any other number of uniquely grim realities these generations are burdened with - naw it's smartphones, instagram, and 'not learning to take control of your own life'... and your employer's HR department is here to help.

All social media did was make people realize they're not the only one.

<comment><USER3> I couldn't agree more. To add: at a few (crappy) jobs in the past, we were notified about an EAP (Employee Assistance Program), which seemed to amount to a phone number you could call for a few 30-minute conversations with someone about mental health issues, drug use, interpersonal issues at work, etc. Some of the phone numbers for the EAP were on little paper pull-offs near the punch-in clock. I don't think anyone used this system. I think it's pretty obvious why.

</comment></comment><comment><USER4> How was this data collected?

</comment><comment><USER5> Are we counting boomers, too? If not, why not?

<comment><USER6> Because they are approaching retirement fast

<comment><USER7> Also would love to understand what they consider a "mental health reason." I think we used to call that "it's just too stressful."

<comment><USER3> Probably crisis-level symptoms of clinical depression, anxiety, panic disorder, unresolved trauma/PTSD, perhaps interpersonal issues (aka "I really don't want to go in today and see that person who makes those comments"), those sorts of things. You _could_ write it off as "it's just too stressful", but it wouldn't be entirely accurate IMHO.

<comment><USER7> Why do you think millenials and Gen Z have high levels of crisis-level symptoms compared to boomers, etc.?</comment></comment></comment></comment></comment>