Humanist Interface: The Entrenchment of Modern Minimalism - <AUTHOR> http://www.elischiff.com/blog/2015/2/18/the-entrenchment-of-modern-minimalism <comment><USER3> _Microsoft's design language, Windows Modern, is eerily similar to the paintings of Mondrian. Its abstract world of flat colored planes and typography has lost all sense of connection to anything meaningful or concrete. These deliberately obscure design choices often leave users without any way to discern the function of interface elements._

That rings of unjustified bias. There's hardly any difference between Windows Phone and iOS 7+ in this respect.

IMHO Windows Phone is somewhat more logical to use and has less ambiguous UI elements for one reason: apps tend to consistently use the bottom bar for actions. The bar always works the same and the buttons always have the same style.

On iOS there's more of a tendency to sprinkle buttons anywhere on the screen, and those buttons can be styled pretty much anything: plain text, plain icon, circle-enclosed icon...

Still, that's a minor gripe in practice.

<comment><USER4> > On iOS there's more of a tendency to sprinkle buttons anywhere on the screen

Has it always been this way? iOS has been around longer than Windows Phone and more people have created apps for it. I believe there is a tendency to "interface drift" where when a new design pattern is introduced many developers will race to imitate it. (Consider how Material Design is popping up everywhere, even in places unrelated to Android.) But at some point an app will break from the norm. Either because the UI doesn't fit what they want, or it's a new idea that's an improvement over the standard, or just for the sake of being different. That opens a floodgate as developers no longer consider the base UI to be a rule and more of a loose suggestion. (i.e. After years of everyone using the 3D controls of Windows 95, WinAmp introduced skinning and after that all apps had to be skinnable.) Eventually users complain about the confusing mess of interfaces, so the OS reigns everyone in by rebuild the system UI with the best of the new ideas since the previous version. Developers applaud the new universal design and flock to emulate it in their apps. Thus the cycle repeats.

So is Windows Phone more uniform in its interface because it's designed to be that way? Or is it just not old enough to have drifted away from the standard UI?

<comment><USER5> Chrome for Android also puts buttons at the top.

I would prefer them to be at the bottom, because I have a large screen for easy reading. Its hard to reach the top buttons.

</comment></comment></comment><comment><USER6> The human capacity to read and decode symbols is only a recent cultural phenomenon within the great span of our anthropological history. Therefore our eyes have been naturally selected over eons to look at objects in the real world a lot longer then they have been selected to decode symbols. As a result, human eyes actually are better equipped to process shading, geometry and the complexity of physical objects better then it can process a symbol.

Flat design is suppose to be more efficient, however based on our evolutionary history, an all out flat design actually increases the effort the brain needs to go through to process symbols. But really, this achieved efficiency doesn't matter as the difference between flat and adding some shading is negligible. What matters is whether or not we perceive the design as attractive, and that is a purely cultural and subjective factor.

Flat design does have efficiency improvements but it's not where you think it is. The efficiency improvement is not on the user side, but for the developer. Anyone with the talent to make a cover photo, draw a flat square and paste some text on it can now call themselves a professional designer.

Zero talent + minimal effort = Clean Minimal Design.

Maybe I'm exaggerating on the amount of effort required but definitely you don't need the ability to paint like leonardo in order to make a minimal layout.

<comment><USER7> A symbol is a symbol. A flat monochrome floppy disk icon represents the concept of saving a file just the same as a lovingly rendered 3D floppy disk or even a photograph would.

Text glyphs are very flat, abstract symbols that represent sounds or ideas (indeed, I'm pretty sure the whole "flat design" trend was inspired by typography in the first place). Sure, we've been hunting beasts for much longer than we've been reading and writing, but written language is still a very old invention in the human timescale. And art predates even that. Humanity has had plenty of experience with symbolic visuals over the ages, I think we're equipped well enough to use basic smartphone apps.

<comment><USER8> Text evolved from shapes chiselled into rock or pressed into wet clay, so the roots of typography are as tactile and 3D as it's possible to be.

Even ink on a scroll has a 3D feel. The 'paper' \- whatever it's made of - <USER2> texture, and the way the ink sinks into it has depth and texture too.

Likewise with traditional printing. The sequence of pages creates a 3D object, and old-fashioned heavy letter press books have texture and depth you won't get on a screen.

Modern minimalism only became fashionable a century or so ago, which was - coincidentally - around the time artists started experimenting with extreme abstraction.

Minimalism has one big problem - it lacks scale-independence. A hand-printed book has visual detail across a range of physical dimensions. You can see the cover across a room, but if you look at the print with a magnifying glass, you'll see detail at that scale too.

Minimalist digital typography has detail at exactly one dimension - the size of the content. Zoom out, and you can't see the content. Zoom in, and you see pixels.

It's a difference of metaphorical and literal depth. Ignoring scale-dependence robs content of weight.

So minimalism is literally shallow. It's aesthetic lossy compression - abstraction into illegibility, for the sake of abstraction.

You can get away with that in art if you have something interesting to say. But it's really not the best of all possible solutions for UI/UX.

<comment><USER7> >Text evolved from shapes chiselled into rock or pressed into wet clay, so the roots of typography are as tactile and 3D as it's possible to be.

>Even ink on a scroll has a 3D feel. The 'paper' \- whatever it's made of - has texture, and the way the ink sinks into it has depth and texture too.

>Likewise with traditional printing. The sequence of pages creates a 3D object, and old-fashioned heavy letter press books have texture and depth you won't get on a screen.

But you don't _see_ the depth of the stroke or the texture of the paper when you're reading. You see abstract lines. You don't _see_ the imperfect squiggles our meat-appendages create unless you really focus; at a glance, your brain autocorrects them into the intended strokes.

>Minimalism has one big problem - it lacks scale-independence. A hand-printed book has visual detail across a range of physical dimensions. You can see the cover across a room, but if you look at the print with a magnifying glass, you'll see detail at that scale too.

>Minimalist digital typography has detail at exactly one dimension - the size of the content. Zoom out, and you can't see the content. Zoom in, and you see pixels.

Uh, no.

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

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

>So minimalism is literally shallow.

"It seems that perfection is attained, not when there is nothing more to add, but when there is nothing more to take away." \- Antoine de Saint Exupéry

</comment></comment></comment></comment><comment><AUTHOR> The second installment of Humanist Interface is out. In this section I discuss the longstanding presence of modern minimalism in the GUI. Flat design is nothing new—it has deep roots.

<comment><USER9> I wonder why we stopped? Art, architecture and interior design have moved beyond modernism toward richer aesthetics. I'm not sure I'd want to use an interface that looks like Szimpla Kert ( [http://bebudapest.hu/wp- content/uploads/2012/07/szimpla41.jp...](http://bebudapest.hu/wp- content/uploads/2012/07/szimpla41.jpg) ) but it would be nice to escape modernism just a little bit.

Uncluttered and ornament-free is functional but it is also a bit boring. Maybe we can make UI feel a little rougher without losing usability.

<comment><USER10> I do hope that we'll never see an interface like that! I think it's very unlikely though, because unlike "static" art, user interfaces have to be interacted with _and_ have to be learnable, comfortable, and useful. Even in the most interfacey example you listed, interior design, interaction can be limited: a lot of the wildly different designs are still more visual art than they are functional pieces.

If I had to hazard a guess I would think that UI will become more kinetic. We already see this with things like the bounce at the end of a scroll on OSX and phones, as well as with window animations, but it can probably be taken further. The interface could become more like a living, breathing thing than just a piece of paper with some rectangles on it.

Think of a cat: they all have the same basic pieces, they have fairly consistent behavior traits, but they all have different fur and eye colors. The computer could become something of a useful pet.

But that's just my pie-in-the-sky vision, predicting the future is a mug's game.

<comment><USER9> I don't want to see one that rough either. But a little rougher visually would be nice. People do play with this space in typeface but rarely computer typeface.

<comment><USER11> Computer-displayed text tends to be a lot smaller in practice (in arc-seconds on the eye.) A flyer's 96pt masthead might have be scanned from arm's length; a 20pt paperback page might be read rested against one's chest. Right now, though, I'm reading this page zoomed out on an iPhone 6, at the same visual distance as I would with a book—the text ending up at most 1/3rd the perceptual size it would on the book. The backlight-powered contrast makes it legible nevertheless, but I can't imagine how the text could be styled such that I'd notice, while retaining its legibility.

</comment></comment></comment></comment></comment><comment><USER12> I doubt all these flat/minimalist designers are doing user or A/B testing. Things feel less usable and more confusing then the previous generation of interfaces. This fashion is not driven by data. Which makes sense since some years ago designers were mocking Google's functional, engineer driven, A/B-tested interfaces. And Google gave in and started hiring the same fashion- following sheep. Now you can't escape it.

<comment><USER13> I have done A/B design testing on ~10 mid-tier "consumer products" eCommerce sites, and giant firetruck-red 3D bevelled "Buy Now" buttons converted insanely better than minimal ones.

Personally, I want clearly-labelled tactile buttons that _make_ me want to push them. Flat UI is more brutalist than humanist.

<comment><AUTHOR> Do you still have access to that data? Is it statistically significant?

</comment></comment></comment><comment><USER14> "Those in positions of leadership in the community are undoubtedly aware of the history and dangers of modern minimalism, and press forward nonetheless. "

Dangers. Like what?

I hate flat design too, but you're making a big deal out of this. Comparing flat design to Picasso is not just a stretch, but does nothing to disparage flat design. (People like Picasso!)

Here's all you need to know: Good interfaces provide discoverability and perceived affordance. Overly minimalist designs neglect these needs. They achieve conceptual purity at the expense of providing familiar reference points that humans understand.

Connecting interfaces to art history is neat, but doesn't teach us anything. Art doesn't have to be functional, but interfaces do.

</comment><comment><USER15> Just in case, the black and white screen shot at the bottom is here in full scale: [http://static1.squarespace.com/static/54bb4cfce4b045585ada36...](http://static1.squarespace.com/static/54bb4cfce4b045585ada36f7/54c85fd6e4b0ea50d5b84d65/54c86452e4b0ae3a19c90123/1422419027572/xerox- star-8010-03VIA+DIGIBARN.jpg)

from:

[https://duckduckgo.com/?q=xerox+star+8010+03VIA+DIGIBARN&t=f...](https://duckduckgo.com/?q=xerox+star+8010+03VIA+DIGIBARN&t=ffsb&iax=1&ia=images)

</comment><comment><USER16> I like the irony of the Paul Miller quote from the first article:

"I like to dink around in Terminal, accomplishing nothing, but at least knowing that I'm engaging the computer on my own terms, with no buffer."

<comment><USER17> Pfft. Real men (and women) use stty -icanon.

</comment></comment><comment><USER18> Let's not forget getting rid of basic text cues, often in the name of internationalizing. An app updates and suddenly basic actions are thrown to random corners of the screen as ambiguous symbols. Google docs is a great example with the big plus inside a circle in the lower right corner as a replacement for the "new" functionality.

</comment><comment><USER19> While I understand the author's case for expressive design, I think it's important to use the correct logic to make an evaluation.

And the base of that logic is in the premise, which in the author's case is that expressive design, using simulacra of real life, somehow gives a user a better understanding of the actual use of the digital object.

I believe that logic to be fundamentally flawed. As someone here already said, humans have been trained to look at symbols far less time than they were trained to look at real objects. As such, there exists a fundamental divide between perception of a symbol and the perception of an object (even if it's a simulacra, not a real one). Marshall McLuhan outlined it best in his Gutenberg Galaxy, by separating letters (cold medium) from drawings (hot medium). As he was saying, perception accuracy varies between this hot and cold mediums, with hot having the highest accuracy, and cold the lowest.

Now, given this perceptual situation, I contend that given the nature of the digital medium, any kind of symbol used within it will be perceived as intrinsically cold by a given generation/cohort of users. I willingly shift my attention from the symbols to the users because I believe that they should be the true focus of the discussion. And the reality is that the very nature of the digital world and the understanding of its functionality and laws is a very high barrier to consumption for a lot of users.

My argument is way longer, but for the sake of simplicity, let me say just this: I believe that design should focus on advancing the understanding of the object that one uses. As such, I do not believe that expressive interface design holds all the necessary keys to that advancement, being that, in its intrinsic nature what it does is to simplify matters by simulating objects that the user is already familiar with. There are only so many ways to use a hammer and the representation of a hammer is contextually limited.

Minimalism is a temporary finish line. As the author noted, painters and sculptors in modern art have trekked across a very large conceptual space before arriving at minimalistic design approaches. Did this temporary finish line stop development? No, it generated a diverse set of reactions, with some painters re-approaching realism from different directions and some others exploring the limits of minimalist symbols.

I believe that "flat" design is just a way-point, and that having reached this way-point, there are myriad avenues now open to explore more in depth the semantic interconnection between symbols and humans.

</comment><comment><USER20> Required Reading. :-)

</comment><comment><USER21> I read many words but I could not understand what they mean.

</comment><comment><USER22> I didn't know about the green bubbles from Android texts.

All I know is last December I had to score an iPhone 6 (or die trying) or my daughter's Christmas morning would be ruined.

Now I guess I'm just the uncool dad who announced he's arrived to pick her up with green text bubbles from my loser Android phone (with it's superior hardware at 1/2 the price).

Oh woe is me, and so forth.</comment>


North Korea just might win a war, if it begins with EMP blasts - <AUTHOR> http://thehill.com/blogs/pundits-blog/defense/346073-north-korea-just-might-be-able-to-win-a-war-if-it-begins-with-an <comment><USER2> I looked at the wiki page for KMS-4 and it seems the only person who is suggesting it might be an EMP weapon is himself. In this article he makes it sound like it's a definitive, known fact. In the wikipedia page it's more like he's warning about the potential for such weapons.

</comment><comment><USER3> "One Second After" is a story of a town struggling after EMP attack on the U.S. [https://www.goodreads.com/book/show/4922079-one-second- after](https://www.goodreads.com/book/show/4922079-one-second-after)

</comment><comment><USER4> The article conveniently ignores that the two Koreas have totally unmatched conventional military power. If war breaks out (and may it never), South Korea can steamroller through entire North Korea all the way up to the Chinese border, without any outside help. (Assuming China does not intervene.) Their powers are so unmatched, one or two nukes thrown into the mix will make little difference. (If anything, it will only make South Korean soldiers cry for vengeance.) North Korea still has tanks and planes built in the age of the Vietnamese War, for Christ's sake.

Any kind of nuclear attack on South Korea, let alone US, is basically assisted suicide for Pyongyang.

<comment><USER5> I agree.

There are some 'suicide (assisted) by cops'. And than there are 'suicide (assisted) by USA'.

I should point out though that Kim of N Korea isn't suicidal. He's not crazy. He's not dumb. He's very rational and clever in his own evil ways.

Kim know only way for him to survive is acting as he is now, threatening and bullying until he gets more aid.

</comment></comment><comment><USER6> Is this satire?

<comment><USER7> No, it's propaganda.

<comment><USER8> I'm not sure it is.

[http://securethegrid.com/2014/04/03/video-65/](http://securethegrid.com/2014/04/03/video-65/)

He's been on this topic for some time. But cynicism is entirely understandable.

[https://www.amazon.com/Dr.-Peter-Vincent- Pry/e/B00IUMVT0A](https://www.amazon.com/Dr.-Peter-Vincent-Pry/e/B00IUMVT0A)

<comment><USER7> I believe it is. Here's the picture he paints:

1\. North Korea attacks other nations

2\. Hero-Entrance 'MURICA

3\. North Korea goes "OMG we didn't think this would happen"

4\. NK falls apart and deploys secret kamikaze-style weapon to cause serious shit in the US

With the final assumption that everybody will be OK with this, and NK emerges as victors.

It just drives the picture that NK would be a serious thread to the US, and attempts to justify destroying other state's property ("shoot down those North Korean satellites") for "defense".

<comment><USER8> You might watch his technical assessment of threats. There was enough there I paused for a few moments, even if he is mostly selling books and trying to keep a commission seat.

I tend to agree there isn't an excuse not to harden some of our infrastructure against this type of attack.

<comment><USER7> I agree that hardening infrastructure against attacks (not just EMPs) is important. But that is only one of two requests made in the article. The other one is about shooting down a satellite owned & operated by another nation, an unprecedented request that - if executed - could be seen as an act of war. (Imagine if NK destroys a US satellite...)

<comment><USER9> Their satellite would be taken out first when any shooting starts. I don't think the Pentagon would wait.

<comment><USER7> Yes, I can see that happening. But the article does not state the precondition of war to shoot down the satellite - it asks to do it now, possibly starting the war.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> Would an emp blast damage solar arrays?

<comment><USER11> It'd at the very least damage the inverters.</comment></comment>


Lambda Calculus Functional Condition – By Sven Sauleau - <AUTHOR> https://www.xtuc.fr/notes/lambda-calculus.html <comment><AUTHOR> Related : [https://www.youtube.com/watch?v=eis11j_iGMs](https://www.youtube.com/watch?v=eis11j_iGMs)</comment>


The IMF Should Take over Libra - <AUTHOR> https://www.project-syndicate.org/commentary/international-monetary-fund-should-take-over-facebook-libra-by-yanis-varoufakis-2019-10 <comment><USER2> IMO, this was a FB created mess and the IMF shouldn't be a part of it</comment>


Is camping good for you? - <AUTHOR> https://travel.hostfully.com/5-reasons-why-camping-is-good-for-you-1bfd002a1fab#.dd7jn3to3 <comment><USER2> Bah and humbug. It reports a study that the The Camping and Caravanning Club commissioned by Liverpool John Moores University, available at [http://www.mountainsafety.org.nz/Files/Research-Real-Rich- Li...](http://www.mountainsafety.org.nz/Files/Research-Real-Rich-List- Paper.pdf) . It is not peer reviewed.

In it, an "online questionnaire was sent to 1,000 adult campers over the age of 18 via The Camping and Caravanning Club's member database and 1,000 adult non-campers over the age of 18."

Thus, it's hard to distinguish between "campers" and "club members." Perhaps it's club membership which drives happiness? Or perhaps it's that happier people are more likely to join a club.

There's no mention of a demographic comparison between the two sample groups. If the club members tend to be richer than the non-club members, then perhaps that's the reason for the difference. Other demographics differ as well. For example, "Holidays under canvas just don't seem to appeal to Brits from ethnic minorities" [https://www.theguardian.com/travel/2010/jul/09/black- people-...](https://www.theguardian.com/travel/2010/jul/09/black-people-camp- holidays) .</comment>


Show HN: Iota – a text editor written in Rust - <AUTHOR> https://github.com/gchp/iota <comment><USER2> Thanks for sharing Greg! I've been waiting for Rust to reach 1.0 so that I can dive-in and work on side projects. Text editors to me (a web programmer) look too intimidating to build from scratch. Can you point to any resources that you used (if any) to understand how text-editors work below-the-hood?

Would totally love to build a side-project like this! Thanks!

<comment><AUTHOR> Thanks for checking it out!

> Text editors to me (a web programmer) look too intimidating to build from > scratch.

Honestly, this was my thinking too before I started working on one! I, like you, work primarily on web applications and I had never really worked on "lower level" projects. I have always wanted to build a text-editor, though I thought it was much too big a task and didn't know where to even start.

Because of my background in web programming, I was most comfortable with Python and JavaScript. There were a couple of popular editors out there built with JS, (mainly brackets [0]) so I decided to try read through their source code. This helped a lot. Reading source code that I understood, or atleast could make a guess at understanding. I did some research into how brackets was built and found this sort-of useful architecture video [1].

Then, I heard about the Go language, and by accident came across a project called Vigo[0] which is a Vi clone written in Go. The codebase was pretty small, and I was able to easily implement a command for the editor and contribute it. From there I just spent as much time as I could in reading source code of different editors, and comparing them to eachother. Asking myself questions like "How does Vim handle buffers compared to Emacs?" \- I have no idea, so I'd go look it up. It could take weeks to get an answer, and sometimes I couldn't figure it out. But I defintely learned _Something_ in doing the research!

I also did some reading from the authors of popular editors like Stallman (Emacs)[3] and Pike (Acme)[4]

When I started building one of my own, I still didn't really (And still dont!) know what I was doing. If you look at the early commits of the project you'll see me totally rewriting pieces over and over until as I figured out better ways of doing it.

I wish I could point you to a single resource that helped me, but it was really a bunch of things that I did over time that helped me. I still don't know much about editors, and I'm sure there's people who can do a much better job than me, but I'm having fun doing it! And I think thats the most important part. Have fun in researching editors (or whatever you decide to build). If you're interested in it, it makes even the most boring and difficult ideas fun to work with. Feel free to reach out to me too if you need help, I'm happy to share what I've learned so far!

sidenote: I didn't know Rust before I started writing Iota, which made things even more interesting ;)

[0]: [https://github.com/adobe/brackets](https://github.com/adobe/brackets) [1]: [https://www.youtube.com/watch?v=xm9kSWZyawg](https://www.youtube.com/watch?v=xm9kSWZyawg) [2]: [https://github.com/kisielk/vigo](https://github.com/kisielk/vigo) [3]: [https://www.gnu.org/software/emacs/emacs- paper.html](https://www.gnu.org/software/emacs/emacs-paper.html) [4]: [http://plan9.bell-labs.com/sys/doc/acme/acme.html](http://plan9.bell- labs.com/sys/doc/acme/acme.html)

<comment><USER3> This is an absolutely awesome answer, and in the best tradition of old school hackers. This is why open source rules.

If you have some time - would you mind writing a high level overview of architecture/design choices that go into writing an editor?

<comment><AUTHOR> Sure, I could give it a go!

I've been thinking about writing a few articles on my experiences so far in writing the editor. Sorta covering what I wrote above. I could definitely work in some stuff on architecture and design choices. When I get around to it, I'll post it on my blog, and most likely submit it here too. Hopefully you'll find something useful in it!

</comment></comment></comment></comment><comment><USER4> This[1] emacs inspired editor, written in Go, also uses termbox (pure go port: [https://github.com/nsf/termbox-go](https://github.com/nsf/termbox-go)) - great little library.

I'm rewriting a python command line utility using it and it makes writing text based interfaces much easier.

[1] [https://github.com/nsf/godit](https://github.com/nsf/godit) (screenshot: [http://nosmileface.ru/images/godit- linux1.png](http://nosmileface.ru/images/godit-linux1.png))

<comment><AUTHOR> I actually contributed quite a bit to a fork of godit called vigo [0]. It gave me lots of insight into how text editors work.

When I went to start writing Iota, I found that there was no termbox-type library in Rust, so I created a wrapper [1]. My goal is to create a pure-Rust version, similar to termbox-go. It's a long way from that, but it will get there!

[0]: [http://github.com/kisielk/vigo](http://github.com/kisielk/vigo) [1]: [http://github.com/gchp/rustbox](http://github.com/gchp/rustbox).

<comment><USER4> Cool! So, you're a perfect position to compare your experiences writing text editors in both languages :)

(Although Go is more mature at this point)

<comment><AUTHOR> I guess you could say that!

I initially found it much harder to work with Rust, as the language is more strict in a number of ways. But once I began to understand how it works, and began to grasp some of its concepts such as ownership and lifetimes I found it much more powerful than Go.

Go has a larger community right now, many more libraries and resources openly available. That's probably one of Rust's downsides right now however its catching up, especially with the launch of crates.io. I don't think it will be long in maturing following the 1.0 release.

Saying that, both are enjoyable to work with. But for me Rust wins out!

</comment></comment></comment></comment><comment><USER5> This is cool & similar to a project I had thought about doing for a while. Have you read The Craft of Text Editing[1]? It's very informative.

[1]: [http://www.finseth.com/craft/](http://www.finseth.com/craft/)

<comment><AUTHOR> I haven't, this is the first time I've heard of it. Will definitely check it out though, thanks!

</comment></comment><comment><USER6> A text editor writing itself makes me think of M.C. Esher's 'Drawing Hands' [http://en.wikipedia.org/wiki/Drawing_Hands](http://en.wikipedia.org/wiki/Drawing_Hands)

</comment><comment><USER7> I'm so excited to see more and more projects in Rust, which will bring more speed and security in our digital lives. Thank you very much, Greg!

<comment><AUTHOR> Thanks for checking it out! Rust is really exciting, I'm looking forward to seeing what the community can do with it.

</comment></comment><comment><USER8> Great work, thank you. I was awaiting for something like this for a while. Thanks for sharing.

As a side note: In the long term what I would really love to see - is Rust GUI for Neovim[1] (embedded library / service). Thus I would be able to both hack around my editor and get VIM's maturity and experience most of the times.

[1]: [http://neovim.org/](http://neovim.org/)

* Update *: spelling and formatting

<comment><USER9> I don't get what a _Rust GUI_ would give you, in this case?

<comment><USER8> Nothing besides convenience. As a rule of thumb I would love to have editor I find suiting my needs and ideally it would be easy to me to contribute/adjust it to my needs.

Regarding [Neo]Vim - I don't think core is something I would touch a lot. Most likely UI/GUI stuff and plugins (vimscripts etc ..). Due to the nature of vimscripts I would prefer to hack around it in something like Python, Lua or Rust.

My personal subjective judgement:

\- Disclaimer: I'm mostly Java, C#, Python developer

\- I find C++ codebase too hard to follow and understand. I like C, but it lacks syntax sugar etc...

\- I find Rust promising (hopefully it's something I will be able to read relatively easy and hopefully it would be easier to reason about,especially in regard to memory management).

</comment></comment></comment><comment><USER10> You say on the readme:

"Iota was born out of my frustrations with existing text editors. Over the years I've tried combinations of simple text editors, IDEs and everything in between. None of them felt right to me, however. Some were too slow & bulky, others were too difficult to customise and still others were platform specific and I couldn't use them on all my machines."

So what is the advantage if Iota over Vim?

</comment><comment><USER11> Great work, Greg! Kudos for using a language that has yet to see it's first stable release.

<comment><AUTHOR> Thank you! In my experience it hasn't been very unstable. Every now and again something will change that will break things, but that's become more and more infrequent. Overall, rust is great!

</comment></comment><comment><USER12> That could be useful when you need an editor in a secure environment. Rustbox, though, still uses C code.

A reasonable goal is to re-implement the utilities in Busybox in Rust. Lots of embedded systems use Busybox, and it has vulnerabilities.

<comment><AUTHOR> Its true that Rustbox uses C code right now. Its just a wrapper around the original termbox library. My goal for rustbox is to be a full Rust port of termbox, removing the reliance on C. Hadn't heard of busybox, will check it out. Thanks!

</comment></comment><comment><USER13> Excellent work, Greg!

<comment><AUTHOR> Thank you!</comment></comment>


Shoplifting Detection Software Helps Spot Criminals Before They Strike - <AUTHOR> https://yellrobot.com/shoplifting-detection-software-vaak/ <comment><USER2> I thought I'd seen this discussed elsewhere, but my search-fu is failing me. All I can find is these discussion-less submissions:

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

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

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

Has it been discussed?

</comment><comment><USER3> Oh boy. This won't end well. There are so many x-factors/nuances in retail loss prevention. There will need to be a human to evaluate all cases before making any kind of contact with a customer.</comment>


Threema Web Is Open Source - <AUTHOR> https://github.com/threema-ch/threema-web/ <comment><USER2> For those not aware threema is an encrypted chat app developed in Switzerland. It's very popular in German speaking countries, dominating the paid app ranks on the iOS App Store in Germany for example.

<comment><USER3> Thanks! _Threema Web establishes a direct connection between Desktop and mobile device using WebRTC._ didn't tell me anything useful

<comment><AUTHOR> That's a good point, thanks. The README file is now updated.

<comment><USER4> I know this sounds lame, but after reading that, I felt that I can magically access my mobile apps via PC :-D

</comment></comment></comment></comment><comment><USER5> Thanks but please Open Source the protocol. Better yet make it a RFC. It's 2017, let's compete on quality of the app and standardize on the protocol.

<comment><AUTHOR> Since Threema Web is pretty new, the data protocol is still in flux and may change often. (You can find the details in the source code though.)

The SaltyRTC signaling protocol on the other hand is fully specified: [https://saltyrtc.org/](https://saltyrtc.org/) and [https://github.com/saltyrtc/saltyrtc- meta/blob/master/Protoc...](https://github.com/saltyrtc/saltyrtc- meta/blob/master/Protocol.md) There are already libraries for Java and JavaScript (TypeScript). It can also be used independently of Threema.

</comment></comment><comment><USER6> Unfortunately it doesn't work for me, it's stuck at 60%.

Edit: I'm stupid, I disabled WebRTC on FF, works fine with Chromium.

</comment><comment><AUTHOR> More technical details on the implementation using WebRTC Data Channels and signaling using SaltyRTC can be found here: [https://threema.ch/en/blog/posts/threema-web- whitepaper](https://threema.ch/en/blog/posts/threema-web-whitepaper)

</comment><comment><USER7> For those of you weirdos like me who are still clutching their BB10 devices until they are ripped from our cold dead hands, the Andorid version of Threema is available on the Amazon App store and runs fairly well on BB10.

<comment><USER8> Not sure if it's BB10 you love or if it's BlackBerry's security model and hardware design, but if it's the latter, I highly recommend the Android models that BB sells. I personally have a Priv and I love it. The DTEK50 and DTEK60 are newer and are supposedly even better according to a few people I know that have the DTEK models.

If it's BB10...can't help you there. But you still might want to consider the Android models anyway since, as I mentioned, you get the BB security model which includes (but it not limited to) hardware keystore, secure boot, customized kernel, and FDE enabled by default. It also supports office365, BES12, as well as all native Android apps (naturally). And it comes with BB's DTEK software to make evaluating your devices security much simpler and makes granular permissions very straightforward and includes logging and notifications for those permissions as well, if desired. The DTEK software also has continuous integrity monitoring for OS files to spot anything that might be compromised.

Battery life is also amazing on the Priv and DTEK models. And BB has been pushing monthly security updates out like clockwork.

</comment></comment><comment><USER9> Nice. If I understand correctly, Threema Web establishes a direct connection between the devices. What about WhatsApp Web? Is the connection relayed through a server?

</comment><comment><USER10> Wickr and Threema finally publishing their code?</comment>


The Internet Is My Religion - <AUTHOR> http://www.kk.org/thetechnium/archives/2011/07/the_internet_is.php?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+thetechnium+%28The+Technium%29 <comment><USER2> The video that the article is written around is very moving and touching. The man presenting is very articulate about his beliefs and does not appear to be preaching.

However the article written around the video isn't nearly as interesting or coherent.

<comment><USER3> I stopped reading at Planetary soul! :)

</comment></comment><comment><USER4> The video's backdrop is a real heartwarming story on how people have and can help people through the internet, and how we can be linked together in a positive way.

But the purpose of the video is something different and I guess it can be summed up with these words from the end of the video: "Each one of us is a creator, but together we are The Creator."

If that is the case, where were we "The Creator", when the earth's foundation was laid? (paraphrasing Job 38:4)

<comment> loup-vaillant (I didn't see the video yet.)

> _"Each one of us is a creator, but together we are The Creator."_

Taken out of contest, it looks like it comes from an atheist. I like the way it recognize the power of our cognition[1]. But now I wonder if Mr Gilliam _really_ [2] believes in something like God. Now I'm curious.

[1]: _<http://lesswrong.com/lw/ve/mundane_magic/> _

[2]: _<http://lesswrong.com/lw/i4/belief_in_belief/> _

<comment> loup-vaillant I have seen the video. He clearly is atheist. His "I believe in God" at the end doesn't really mean anything, since he said that God basically is the united Human specie.

What thrills me most about this video is that he quite eloquently demonstrated that we can relinquish our belief in the supernatural _without losing faith_.

</comment></comment></comment><comment><USER5> Jim Gilliam is jgilliam here on Hacker News

<http://news.ycombinator.com/user?id=jgilliam>

</comment><comment><USER6> Is there any word that has been rendered more useless than the word god? That word belongs to the fundamentalists and the hucksters, and instead of trying to salvage it, it seems like time to let it go. Yes, the internet can be very good and very bad, just like everything else. What's god got to do with it? Couching things in the "language of religion" never clarified anything.</comment>


I am a job creator who creates no jobs - <AUTHOR> http://www.washingtonpost.com/opinions/i-am-a-job-creator-who-creates-no-jobs/2011/09/20/gIQAhpgGjK_story.html

<comment><USER2> From speaking with a few published authors, the creation of a private C-corp is standard practice to spread income from advances and royalties out over a longer period, which provides not only lower taxes, but a steady(-ish) income stream.

<comment><USER3> Assuming I'm understanding the double tax correctly... wouldn't that still be taxed at the corporate tax rate and then taxed again when it's paid to the employee? I can't imagine a situation where that would be less expensive than being taxed one time, even at the highest income bracket.

<comment><USER2> I'm not a tax professional, but corporations are taxed on income, not revenue. Tax preparation fees, travel costs, conference registrations, pension contributions, and other expenses of the "small business" author (computer, internet, mailing manuscripts) all turn in to usable money that isn't taxed. (Via income tax, I mean. In some cases property taxes may apply.) Expense tracking becomes more of a chore than for the average wage earner, but there are trade-offs.

The author's "corporation" can also manage paid salary from year to year to correlate with deductions or navigate tax brackets, further minimizing any double-tax effect.

<comment><USER3> I file as an S corp and deduct all of those expenses, as well. Except the money I pay myself as a salary is not counted as income on my business tax return... my understanding is that for a C corp, it would be.

</comment></comment></comment></comment><comment><USER4> Wrong. Wrong. Wrong. Small businesses do not exist in a vacuum! They have partnerships. They use UPS to send packages. They use Microsoft to run their computer and Dell to build it. They buy supplies at Office Depot or Home Depot. Every dollar they spend on their business gets spent at a larger firm that employs hundreds if not thousands of people! One-man operations DO create jobs. They just don't create them in their own company!

<comment><USER5> The point is still valid. Giving him a tax break does not mean he will start shipping more packages automatically. There has to be a market, first. It's demand-side versus supply-side economics. The only reason he would spend more is because he sees market opportunity, not because he has the money to spend.

<comment><USER4> Market opportunity is infinite and is only limited by your imagination. You make your opportunities, they aren't handed to you gift-wrapped. It also just so happens that the companies that are best at creating market opportunities out of thin air happen to be the small ones!

<comment><USER6> The point is still valid. How is the tax break going to affect his imagination?

<comment><USER4> Wow. OK. I'll spell it out for you gentlemen. I discover $1000.00 in my bank account. Before, I just had $50.00, so this is quite a boost. I wanted to move my business (me, myself, and I) from just regular handiwork to cutting down dead trees. Before, I couldn't afford a chainsaw, a ladder, and safety equipment. Now I can. I can also afford some advertising, business cards, and a decal for my car. Now multiply me by a 1000. You've created jobs in the chainsaw manufacturer, ladder manufacturer, advertising agency, printing company, and the decal making guys. Get it?

Please stop assuming the pie is always fixed. Demand is not always being met. New markets are being created all the time. Oh, and while tax breaks don't affect the function of your imagination, they sure do help with bringing stuff out of your imagination into reality.

<comment><USER5> Okay, you are stating it as if the money ($1000) is 'found'. But what we are describing is tax breaks, not the lottery. Tax breaks just mean less money paid on profits.

In order for you to suddenly have $1000 more, you would already have had to have had the money. In your scenario, where did the $1000 come from? You are talking about a small business loan where you have no revenue and are starting a new business, not tax breaks.

<comment><USER4> Show me where in my post I was talking about a "small business loan", "no revenue", and "starting a new business". I was talking about an existing business branching out into a new market. I am not going to repeat myself again.

<comment><USER7> I believe they are saying that you would have bought the chainsaw, ladder, etc tax-free already, as a business. A tax break would have absolutely no effect on the ability to afford these things in the scenario you described. The "found" money is therefore more analogous to a loan than a tax break.

<comment><USER4> The way a one-man operation works is that you file taxes once a year. For you to be able to pay your income taxes, you need to save up the money you will fork over, otherwise your ass goes straight to jail. There is no withholding or anything like that.

So you set up two bank accounts and deposit say 30% of any money you would use for your non-business expenses. That money is forbidden. You cannot touch it.

> I believe they are saying that you would have bought the chainsaw, ladder, > etc tax-free already, as a business.

Pay attention. With what money? You have no money. ZERO. All your money goes toward your business expenses and the rest goes toward non-business expenses and taxes.

You have no business credit. The only credit you have is personal and that's maxed out.

The overwhelming majority of one-man operations are not drowning in cash.

> A tax break would have absolutely no effect on the ability to afford these > things in the scenario you described.

This makes ZERO sense. With a tax break, I can withdraw some of the money from my tax bank account and use it for whatever I want. It _is_ found money. On top of that, spending that money on my business means I have no tax obligation on those found funds.

<comment><USER7> If your business expenses are higher because you're buying chainsaws, then you're putting less money in your 30% "forbidden" bucket. It's a wash.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> He creates his own job, so he creates one job.

His statement is a fallacy, if you use his little trick(his small business = 0 jobs) and multiply by the number of small business you have a false statement: "small business creates no jobs".

We know by simple statistics that small business in fact create most of the jobs, even if they only employ themselves and their family first.

<comment><USER5> That job has already been created. A tax cut will for him will not magically mean he will decide he has enough extra cash to create a meaningless job.

<comment><USER9> Though it will mean that other people are more likely to start their own one or more man operation.

<comment><USER10> Really? I highly doubt that. Most people don't want their own business, they want a steady income and not think about their jobs after 8 hours. A small decrease in tax won't change that.

<comment><USER9> Most people might want that but this legislation isn't aimed at most people. It's for the segment of society that do want their own business.

<comment><USER6> And those already have their own businesses. And if not, quitting your day job and starting a business... -1 + 1 = 0

<comment><USER9> There are many more people who are employed and thinking about starting their own business than have actually started their own business.

Creating your own business: +1 job. Freeing up a position at your previous employment: +1 job.

1 + 1 = 2 :P

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> I am not a founder, but I have wanted to start my own business for a long time.

I would have serious reservations about hiring somebody though. First you add a recuring monthly expense to your business, which can seriously impeed cashflow especially if the business has big cycles.

Thats not so bad though, the part I am most concerned about is being subject to an entire host of regulations, many of them very subjectively defined. Add to that the cost of reporting, the risk of lawsuits, regulation of working environments (no more working out of a room in your house, now you have to rent an office).

Personally I would be much happier hireing freelancers, since there is little longterm capital risk, they tend to provide their own tools and the risk of lawsuits is much smaller (as long as you pay them).

That said, most big corporations were once small and I see little danger in lowering their taxes even if we end up lowering the taxes for everybody else. It would be a good use of funds.

<comment><USER5> The only reason to hire someone is to ROI on what that person costs. As Paul Graham has written, the most obvious example is hiring a sales person. If you have to pay a sales person $75,000 per year, plus benefits, plus office space and equipment, he/she has to be worth more than that.

If said salesperson can bring in $250,000 in annual revenue, and they cost $125,000 to keep around, well that's a trade any businessperson would love to make.

But what if the market size hypothetically tops out at $250,000? You'd never hire more than one salesperson because by the time you were up to three, you'd be losing money again. So, at that point, the government could give you a ton of tax breaks, but you still wouldn't hire more than one salesperson.

</comment></comment><comment><USER12> To pour on the skepticism, even if a small business does create jobs, one of the time-tested laws of small businesses is that most of them fail, thus destroying the jobs they created. On the whole small businesses are much closer to a wash in terms of job creation than we're likely to admit.

<comment><USER11> I keep hearing that most small business fails. What I don't hear is what constitutes a failure. Plenty of people choose to make a little money on the side but those business tend not to last.

<comment><USER12> The failure I was referring to is essentially having to close doors for financial reasons.

</comment></comment></comment><comment><USER13> I'm in the process of building out my startup - now at 13 employees. Would having 3-5% lower taxes give me an incentive to build out quicker, or change my plan? : NO.

<comment><USER14> Interesting. Can you tell at what % reduction you _would_ start to see an incentive?

<comment><USER13> The main factors are whether each addition will incrementally add to P&L, and fit with the rest of the group.

One key point in my business is that most of our wage costs are variable (we can see the direct P&L impact of every hire : there are no 'hidden' producers), so finding people who can find a niche is the main challenge. The principal benefit of being in the States (compared to Europe) is 'employment at will', so that hiring mistakes can be undone quickly.

As for taxes, paying more is a good problem to have (assuming that all your competitors are on a level playing field).

OTOH, healthcare costs are a huge burden : It would be far better for my business if they were variable (i.e. taxed as a % of wages).

</comment></comment></comment><comment><USER15> Funny article, but isn't creating one job a pretty good thing to do, anyway?

</comment><comment><USER16> Yes. It is a true statement to say that most small businesses only employ the owners.

But if everybody created only one job -- their own -- isn't that enough? If I were getting started, I would love to be around a bunch of guys making 200-400K per year. I'd detail their cars, take care of their lawns, help them with taxes -- all those people not creating jobs? There are a lot of jobs they are creating while they are not creating jobs.

I think a much more interesting question would be: why? Instead of the lecture about evil Republicans, how about addressing the reason so many businesses don't want to employ anyone? Is it something we could fix?

I've ran a corp for about 20 years now. To me, you'd be an idiot to employ people in the regulatory and tax nightmare the United States is in right now. Much better to have a "lifestyle" business and stay under the radar. I'm probably an outlier -- I guess. I'm sure others have their own reasons. Getting at those reasons seems like a much more productive use of energy than grandstanding.

<comment><USER17> > _"you'd be an idiot to employ people in the regulatory and tax nightmare the > United States is in right now.... I'm probably an outlier"_

A couple weeks back, CNN Money asked a bunch of small business owners what they'd ask Obama to do to make it easier to hire [0].

Several of those interviewed said cumbersome regulations and ever-changing rules were the main impediments to hiring. There were specific complaints about corporate tax rates and unaffordable health care. Both the 7th and 8th slides amount to "stop doing stuff! Stop rocking the boat!"

I'd say you're not an outlier.

[0] [http://money.cnn.com/galleries/2011/smallbusiness/1109/galle...](http://money.cnn.com/galleries/2011/smallbusiness/1109/gallery.Obama_small_business/?iid=EL)</comment></comment>


Peter Thiel on the future of Libertarianism, politics, and technology - <AUTHOR> http://www.cato-unbound.org/2009/04/13/peter-thiel/the-education-of-a-libertarian/# <comment><USER2> I'm sorry, but this paragraph:

"Indeed, even more pessimistically, the trend has been going the wrong way for a long time. To return to finance, the last economic depression in the United States that did not result in massive government intervention was the collapse of 1920–21. It was sharp but short, and entailed the sort of Schumpeterian "creative destruction" that could lead to a real boom. The decade that followed — the roaring 1920s — was so strong that historians have forgotten the depression that started it. The 1920s were the last decade in American history during which one could be genuinely optimistic about politics. Since 1920, the vast increase in welfare beneficiaries and the extension of the franchise to women — two constituencies that are notoriously tough for libertarians — have rendered the notion of "capitalist democracy" into an oxymoron."

is just terrible. "[T]he extension of the franchise to women ... [has] rendered the notion of "capitalist democracy" into an oxymoron."

Even the most generous interpretation of that sentence is very illiberal. Well, if they don't agree with us and we're right, maybe they just shouldn't be allowed vote. They obviously don't know what's best for themselves, those women and welfare beneficiaries. Really?

And also is the 1920s really the decade we want to hold up as the last great decade in America?

The whole article swings violently between utopianism and nihilism. I find it very depressing.

<comment><USER3> Women's suffrage is generally acknowledged to have resulted in the passage of Prohibition, and Prohibition is generally acknowledged to be a mistake. Why couldn't other mistakes have their roots in suffrage?

That doesn't mean that suffrage was itself a mistake or should be repealed, just that there could be bad effects as well as good. I'm generally libertarian, and regard the extension of the welfare state as bad, but I'd regard the political inequality of half the populace as far worse.

<comment><USER2> The contrapositive of his statement is: IF you believe in capitalist democracy THEN you cannot have universal suffrage.

Since he believes in capitalist democracy, presumably he also believes you cannot have universal suffrage.

Actually, he's more explicit than that. He doesn't believe you can have democracy at all if you're a capitalist: "I no longer believe that freedom [read: capitalism] and democracy are compatible."

So, sounds like that's exactly what he's saying.

</comment></comment></comment><comment><USER4> A sad yet realistic summary of _representative_ democracy.

Also his cyberspace and seasteading ideas are far too optimistic. High tax governments are currently going after tax heavens, even as old and diplomatic strong ones as Switzerland. What changes does your sea outpost have against the world?

But he's missed out on two important things. First democracies tend to follow a long term cycle of government boom and bust. See Sweden and Great Britain. The general patter is the government grows until it's too big to be effective and then it collapses.

The other example is _direct_ democracy like Switzerland, that's also worth examining.

<comment><USER5> The direct democracy is something I've toying around with. The Republic arose because it was not feasible to have thousands of people vote on every decision a government needed to make, obviously. However as technology advances there is a very real possibility that we'll see more direct democracies arise as technology simplifies those voting procedures (assuming we ever reach a satisfactory security level on digital voting.)

<comment><USER6> I don't see what's so beneficial about direct democracy. Sure, it whets our 21st century egalitarian appetite. However, while populist sentiment is sometimes correct and sometimes disastrous, it is never created by any sort of rational decision-making process.

I have a hard time thinking of reasons why direct democracy is an optimal government structure.

<comment><USER4> I have an easy time thinking of examples of why direct democracy is an optimal government structure. Switzerland. It has a long history of direct democracy, compare how it has been governed with how the other democracies have been governed.

There's no need to get all abstract when there are real world examples.

<comment><USER6> It's also a federalist system with unique geography and a smaller population than New York City. Their example might not be portable.

It's worth thinking of different alternatives, rather than generalizing from a sample size of one.

Hong Kong and Singapore are also good examples of well-run states that are completely different. Hong Kong has the same population as Switzerland.

<comment><USER4> That's a good point, all of those places are tiny places. Still, I'd like to think that Switzerland can be scaled up. As well functioning as Singapore is, I don't want to see that scaled up.

</comment></comment></comment></comment></comment></comment><comment><USER7> I agree with a lot of what he says, but not with his extremely pessimistic conclusion. It's not time to just give up on all existing countries!

Separate issue: Karl Popper (a friend of freedom) argued that democracy is good because it allows for non-violent changes in Government. I think Thiel should be careful in attacking democracy itself: what non-violent alternatives are there? Suppose we form a libertarian sea steading or outer space colony. What system of Government does Thiel imagine libertarians would use if not democracy?

<comment><USER8> They could use overlapping corporate jurisdictions. If you don't like how things are being run, you pay someone else to enforce your contracts. You might have different service providers for, say, IP versus personal safety versus family law. And since they'd compete, it would allow people to coexist with wildly different legal regimes. You could have a drug-prohibiting regime (or even one that fines you for alcohol consumption) -- but your neighbors might not.

<comment><USER9> Walk me through the mechanics of a hypothetical market for IP law service providers.

Who sells what to whom?

<comment><USER10> The imaginary property industry would look pretty much like it does now, but the content cartels would be hiring goons with bats instead of goons with law degrees.

</comment></comment></comment></comment><comment><USER11> H.L. Mencken: Democracy is the theory that the common people know what they want and deserve to get it good and hard.

</comment><comment> daniel-cussen What about Chile? We have a real democracy, when we bailed out the banks in 1982 the bank boards got thrown out on the street and the taxpayers got all the shares and made a profit, and there is still rule of law. Entrepreneurs effectively pay no taxes. We have a democracy and have our shit together.

<comment><USER2> He's not arguing for "real democracy" -- he's arguing against democracy altogether. He believes that capitalism and democracy are mutually incompatible.

Maybe Chile is a counterexample, I don't know, but I don't think he's looking to salvage democracy. He's looking to jettison it.

</comment></comment><comment><USER12> A must-read for would-be seasteaders:

<http://www.inthesetimes.com/article/3328/floating_utopias/>

 _"Big capital will support tax-lowering measures, of course, but it does not need to piss and moan about taxes with the tedious relentlessness of the libertarian. Big capital, with its ranks of accountant-Houdinis, just gets on with not paying it."_

</comment><comment><USER13> See: [http://delong.typepad.com/sdj/2009/05/cato-institute- crashed...](http://delong.typepad.com/sdj/2009/05/cato-institute-crashed- burned-and-smoking-watch.html)</comment>


The Skip - <AUTHOR> http://musicmachinery.com/2014/05/02/the-skip/ <comment><USER2> For those who don't know, Paul Lamere, the author, is a really cool guy that works over at The Echo Nest (recently acquired by Spotify). I had the pleasure of meeting him and chatting with him a few times last summer while I was interning there and he's basically a music+tech genius. Lots of the echo nests coolest api demos are all his doing. I'd link to stuff but I'm on my phone, but definitely browse through his blog. If this is your area of interest, Paul is the guy to read.

edit: on my comp now, so I can add this link to some cool EN API demos, many of which are Paul's if I recall correctly: [http://static.echonest.com/labs/demo.html](http://static.echonest.com/labs/demo.html)

</comment><comment><USER3> I wonder how this affects the writing of songs.

"It's not enough to have one hook anymore," Jay Brown, the president of Roc Nation, and Dean's manager, told me recently. "You've got to have a hook in the intro, a hook in the pre-chorus, a hook in the chorus, and a hook in the bridge." The reason, he explained, is that "people on average give a song seven seconds on the radio before they change the channel, and you got to hook them."

[http://www.newyorker.com/reporting/2012/03/26/120326fa_fact_...](http://www.newyorker.com/reporting/2012/03/26/120326fa_fact_seabrook)

<comment> k-mcgrady >> "I wonder how this affects the writing of songs."

It depends on why you're writing the song I guess. If you're writing a pop song you want to get to the top of the charts following that formula is probably essentially (although it obviously doesn't guarantee success). Just listen to some of the top pop songs - they clearly have a formula. The problem is that when everything follows the formula you can't listen to much of it because it gets boring.

I'd say if you're writing a song you want to last, something that will potentially go down as a classic, forget about formulas a write what you think sounds good.

<comment><USER4> "The problem is that when everything follows the formula you can't listen to much of it because it gets boring."

This is why I can't stand pop music, and can't understand why it's so .... popular. I've already heard the C-major scale in 4/4 time, layered with false emotion by a 20 year old who's seen it all.

<comment><USER5> That's the exact reason that most pop music is marketed at teenagers. For them, it's the first time they've heard it (relatively speaking). As you get older, you've heard all the 4/4 C-major stuff you can stand. Even if you're not particularly musical, you will still subconciously recognise that pop songs are repetitive and fairly unoriginal after a while. But it's an easy sale for the record labels, so that why they do it.

That doesn't mean that there doesn't occasionally come along a good song or two. It's still perfectly possible to write a 4/4 song in C and have it be interesting/fun/good to listen to. Unfortunately you'll have to wade through a whole load of crap in the pop charts before you find it ;)

<comment><USER6> This is the deeper insight behind the saying, "There's a sucker born every minute."

</comment></comment></comment></comment></comment><comment><USER7> Another analysis I'd like to see is how many songs people skip in a row. When I skip a song I end up skipping a bunch of songs until I find just the right one that I want to listen to at that moment, and I speculate that most of the quick skips come in these sorts of runs. If that's true, then it'd be interesting to try and figure out what properties the songs users end up on have as compared to the ones that they skip over.

<comment><USER8> At first I was surprised skip rate was so high, because I couldn't imagine somebody using a service where they skip every other song, but your observation explains this nicely. Even for my carefully selected music library, I sometimes burst-skip a bunch of songs, which would undoubtedly taint my skip statistics.

</comment></comment><comment><USER9> Very tangential but I used to skip songs a lot and make a lot of custom playlists but have moved towards listening to albums front-to-back and not skipping songs. I still have a couple small playlists that are a sort of "greatest hits" of my collection that I shuffle every once in a while.

It has greatly improved my listening experiences in general, and has made me discover songs I forgot I had/ I didn't listen to much before.

</comment><comment><USER10> > _Skipping has become an important part of how we listen to music._

Is this a polite manner of saying that most modern popular music sucks?

<comment><USER11> I skip based on the mood of a song. You can quite easily cull songs you don't like from your playlists.

One of my friends jokes all his albums are now 3 songs long.

</comment></comment><comment><USER12> Interestingly, Last.fm introducing a skip limit of 6, with no way to remove the limit even for paying subscribers was what finally pushed me away from Last.fm and on to Spotify.

</comment><comment><USER13> I'm surprised there's no increase in skipping toward the end of the song. I usually skip in the outro when there's 10-20 seconds left.

<comment> k-mcgrady Especially with electronic music becoming so popular. The last 30 seconds of most EDM tracks is just a repeating beat to enable a DJ to mix it into the next track easier.

</comment></comment><comment><USER14> I think the constant non-zero skip rate throughout the entire song length is explained by people who would have skipped the song at the beginning but who weren't present when the song started (e.g. they went to the kitchen to get a drink). These people would skip the song as soon as they get back, which could be at any point within the song.

</comment><comment><USER15> I may have missed this in the article, but is this dataset publicly available? I would love to have access if it is.

</comment><comment><USER16> I had no idea spotify made this kind of data available. Has anyone seen anyone else analyzing it?

<comment><USER17> I believe it's available here [0], with an approved account. No idea how to get access though. My "account does not have access to Spotify Analytics".

[0] [https://analytics.spotify.com/login](https://analytics.spotify.com/login)

</comment></comment><comment><USER18> I'd be interested in how often skipping is used on new songs vs ones we've heard many times before. Is it possible that a song can only become popular if it hooks the listener in the 1st 10-20 seconds? Important for songwriters to know.

Skipping is not a new 'iPhone' phenomenon. CD player in your car has a next- track button. Even the car radio - changing the channel was common. So no, music today isn't getting some sort of 'raw deal', or at least no more than ever.

<comment><USER19> > "get out of your chair, walk over to the turntable, carefully pick up the > tone arm and advance the needle to the next track. That was a lot of work "

mfw "lot of work."

</comment></comment><comment><USER20> One possible explanation for why user's skip behavior varies by time of day/week is that they're more likely to be playing songs around friends. A lot of times you'll want to show just one part of a song to someone, or you want to manage several requests for songs when you're out.

</comment><comment><USER3> Going a bit further... I wonder if anybody has thought of using the skip rate as a way of A/B testing pop songs, for instance similar arrangements of the same song.</comment>


Running your business as if it were an Open Source Project (2009) - <AUTHOR> http://e-texteditor.com/blog/2009/opencompany

<comment><AUTHOR> Looking around their site I don't see much further on this, but they did have a release this February. Does anyone know if this actually worked, or of other attempts that worked / didn't work?</comment>


What it's like to work at Target delivery gig company Shipt - <AUTHOR> https://www.theverge.com/2020/2/14/21138321/motherboard-report-target-delivery-company-shipt-gig-economy <comment><AUTHOR> It's important to consider the big picture of whether a business model improves efficiencies by treating workers fairly (livable wages) or not.

Interestingly, DoorDash is on the hook for $9-11 million or so for binding arbitration fees that they made their "independent contractors" agree to but didn't want to pay. Judge Alsop wrote a scathing decision underscoring this. It's also somewhat shady that DoorDash was taking portions of driver's tips depending on the tip amount and their "base rate." _Lawful Masses with Leonard French_ went over the decision.</comment>


Tosheets, utility to send stdin to Google sheets - <AUTHOR> https://github.com/kren1/tosheets <comment><USER2> This is pretty great. It looks like it automatically writes to the next logical empty cell.

      curl https://www.bitstamp.net/api/v2/ticker/btcusd \
      | grep 'last": *"\d*\.\d*' -o | grep '\d*\.\d*' -o \
      | tosheets -c A1 --spreadsheet=foo

^ That will append the last BTC price to column A of sheet 'foo'

<comment><USER3> Can I nerd out over how unreasonably effective regexps are?

That's basically a mini JSON parser in 48 characters.

<comment><USER4> With a domain-specific tool, it's even easier though.

        curl ... | jq -r .last

<comment><USER3> Sure. But you can't use jq to scrape arbitrary websites, for example. :)

<comment><USER5> Jeff Atwood has an entertaining post about parsing HTML with regular expressions:

[https://blog.codinghorror.com/parsing-html-the-cthulhu- way/](https://blog.codinghorror.com/parsing-html-the-cthulhu-way/)

""" That's right, if you attempt to parse HTML with regular expressions, you're succumbing to the temptations of the dark god Cthulhu's … er … code. """

<comment><USER6> Let's not forget about this masterpiece: [https://stackoverflow.com/a/1732454/864310](https://stackoverflow.com/a/1732454/864310)

<comment><USER5> Indeed, its quality cannot be ignored and must be shared; it's referenced in the Atwood post.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> I wrote something similar that will send stdin to Google Stackdriver Logging.

[https://github.com/thesandlord/logpipe](https://github.com/thesandlord/logpipe)

<comment><USER8> In the same vein, pipe anything to `logger` to send it to the local syslogd (and if configured, to remote destinations).

For example, this uses datamash ([https://www.gnu.org/software/datamash/](https://www.gnu.org/software/datamash/)) to sum column 2 of a CSV ("-t,"), then log the output:

        datamash -t, sum 2 < stuff.csv | logger

<comment><USER7> Yeah logger or fluentd are definitely better long term solutions. I wanted something that was no frills and minimal config for ad-hoc situations. Other's on my team found it useful so I open sourced it.

Bonus: In depth code review for this package: [https://youtu.be/c5ufcpTGIJM](https://youtu.be/c5ufcpTGIJM)

</comment></comment></comment><comment><USER9> Amazing.

We need more utilities like this that help integrate apps and web services between themselves and the Unix environment.

"Pipes to the web" should be like this. Not bloted a UI with forms that perform premade actions with your web apps data.

</comment><comment><USER10> They mean stdout, right?

<comment><USER11> Depends on from where you look :)

It is stdout for the previous process in the pipeline and stdin for the tosheets itself.

EDIT: Tosheets -> tosheets

<comment><USER12> tosheets just reads stuff from stdin. It doesn't care if it's attached to a pipe or not. It might be that there's no "previous process" at all.

</comment></comment></comment><comment><USER13> very cool

</comment><comment><USER14> Interestingly Nice

Your project ruins my English

</comment><comment><USER15> Nope, it sends _stdout_ to sheets. Getting input from sheets would be cool, too.

<comment><USER16> It looks to me like you're being downvoted, but what you're saying looks correct to me. $PROGRAM sends to stdout what google sheets reads from "stdin"

<comment><USER17> When you run this utility, it forwards stdin to Google Sheets.

Should you pipeline stdout from somewhere else to this utility, the contents of that stdout will be forwarded to Google Sheets.

It is correct to say either that you are forwarding stdin or that you are forwarding stdout. It is therefore _not_ correct to say that it does _not_ forward stdin, because the source code explicitly refers to stdin. That's likely the reason for the [Fight Club]s the GP is receiving.</comment></comment></comment>


Using git to manage a website - <AUTHOR> http://toroid.org/ams/git-website-howto

<comment><USER2> Is it bad, that I simply SSH into the server and do a "git pull"?

<comment><USER3> To elaborate on dolinsky and the article, if your web server is doing a "git pull", it means it has ssh access into your workstation. If someone breaks into your web server, this means that they have ssh access into your workstation as well by simply using the keys on your web server. This is bad, very bad.

If you push to your web server, only your public key is exposed if your web server is compromised.

<comment><USER4> Not necessarily. If you run an ssh-agent locally and configure ForwardAgent to 'yes' for connections to your web server you can ssh to your server and use ssh from it without actually putting your private key on it.

I'd still recommend pushing to a server though.

<comment><USER5> An excellent discussion about this exact topic came through HN yesterday. See <http://news.ycombinator.com/item?id=2183415>, and in particular the comments.

<comment><USER6> Thanks for pointing this out.

</comment></comment></comment></comment></comment><comment><USER7> I use Fabric with mercurial to achieve a similar effect typing "fab prod deploy" - see Steve Losh's blog posts or bitbucket.org/kevinburke/goodmorningcmc

<comment><USER8> You can do the same with Capistrano. However for a very basic static site it does sound simpler to just use a post-receive hook rather than having a script ssh in and do a pull.

</comment></comment><comment><USER9> It's probably worth checking out NestaCSM (<http://effectif.com/nesta>) if you're interested in doing this.

Sinatra in front, but all your posts are managed by Git and can be Markdown/Textile/HAML (or anything supported by Tilt iirc). Push it to Heroku if you want easy/free hosting.

Takes care of publishing an RSS feed, tags/categorisation, and a bunch of other nifty things beyond just generating a static site.

Example: <http://blog.peepcode.com/>

(disclaimer: I used to work with Graham who created it, but I genuinely think it's awesome and use it for almost every site I build now)

</comment><comment><USER10> I've been using Joe Maller's write-up[1] as a guide for a while.

I see this strategy removes the need for a second repo on the server. Other than removing a layer which would save space and lower the likelihood of errors in general are their significant pros/cons to either method.

[1] <http://joemaller.com/990/a-web-focused-git-workflow/>

</comment><comment><USER11> Can I use git to manage a Drupal-managed website?

<comment><USER12> that's what we do in conjunction with <http://drupal.org/project/features>, bugs aside it works well

but what you want in code and what you want in the DB will vary from page to page and feature to feature so often just manually redo stuff (in dev env and then again in production) because deploying changes by code is more effort then its worth.

<comment><USER11> Managing the codebase is straightforward -- that's what git's designed for. My question was more about the actual site contents, which will reside in the database. Can you use git for tracking changes to the contents?

<comment><USER13> Probably not. You're better off logging your MySQL queries and filtering out the UPDATE, INSERT, and DELETE queries for the tables you're interested in.

<comment><USER14> I would advise against that. There are too many places in he mess of tables of data configuration that might refer to specific auto-increment id columns were things will get out of sync. Basically you are trying to do MySQL replication on specific tables only, but there are too many relationships among all the tables.

If it is a small amount of content, such as a handful of pages for a brochure site, putting them in a feature might be best.

If it is a site where customers or visitors generate content on the site, then periodically re-initialize your dev and staging environments with copies of the live DB, running it through a script to anonymize all the user info and change passwords and etc.

If you want to create content on your dev and move it live, then doing a full database copy and moving it live, with settings that are particular to live overridden in settings.php, is probably the best way. I advise against this, basically you are re-launching the site for every change.

If you are truely desiring to be able to create content in multiple different places and move it to live, then probably the best thing to do explicitly program and configure for that, by specifying feeds of the content and setting up the different sites to ingest each other's feeds.

<comment><USER11> FWIW, I found two takes on database versioning: [http://www.gsdesign.ro/blog/mysql-database-versioning- strate...](http://www.gsdesign.ro/blog/mysql-database-versioning-strategy/) <https://launchpad.net/dbvcs>

</comment></comment></comment></comment></comment></comment><comment><USER15> That's similar to my private website (soultcer.com). I use git to create and store the content, and a wiki as content management system. It's nice to work on your website, and all you need is a git push for deploy. If I make a mistake or someone vandalizes the wiki, reverting is easy.

clickable: <http://www.soultcer.com/>

Edit: In case you are interested, the wiki software was written by a friend and is open source: <https://github.com/patrikf/ewiki>

</comment><comment><USER16> The general approach of putting together your website on one machine, the coding machine, and publishing it to your server is one I use, although I prefer a complex build on my design machine and then rsync it with the server.

Checkout Chronicle (<http://www.steve.org.uk/Software/chronicle/>). I've put up a HN thread (<http://news.ycombinator.com/item?id=2186798>).

</comment><comment><USER17> This is basically how I run my publishing engine (you can read more about it at the "Colophon" part of this article: <http://nearthespeedoflight.com/article/about_the_redesign> ).

I wanted to teach myself Ruby and I figured this was a great way to maintain a site, as I'm terrible with both SQL and security. Git solves security and DataMapper solves the SQL, and my Ruby lubricates the rest.

<comment><USER15> You could use git directly for metadata instead of relying on some JSON file. Git will tell you when an article was created and by whom. It will also tell you when and by whom each edit was made.

<comment><USER17> True. But my metadata needs exceed simply who wrote the article, I also have things like tags, pubdate, update, etc.

My system actually allows for the metadata to be embedded in the main article file, but it ended up being simpler for me to split the files most of the time (the editing app I wrote does this for me, so I mostly forget about it now).

</comment></comment></comment><comment><USER18> I've played with this - in the end I ended up using custom scripts and/or Capistrano scripts (along with git of course) to handle actual deployments. It provided more control and more features, while still letting me leverage git.

<comment><USER19> Yeah, sounds familiar. I've been cooking up a way to manage a locally mastered static html website hosted in Amazon CloudFront. I may well use it as an opportunity to learn git (over SNV)...

</comment></comment><comment><USER20> Have a question. This is nice for simple HTML. How about deploying site were you have to migrate the database etc. This approach wouldn't work. I use fabric with git right now, works well.

<comment><USER21> One solution that occurred to me, was to setup a(assuming MySQL)mirrored database. Another idea is to setup a MySQL dump script or something similar.

Just a couple of ideas :)

<comment><USER20> I think it is good idea for static sites, for everything else you would be rediscovering fabric and similar tools.

</comment></comment></comment><comment><USER22> What about using git to backup an entire hard drive? Maybe using bitbucket (or github if you don't mind sharing your data with the world).

Living on the cloud has never been so easy :-D

<comment><USER23> Performance would be nightmarish. Git is super elegant and great, but not very performant. Imagine having to deltify a terabyte of data? Good luck with that!

<comment><USER24> wasn't it because he needed better performance one of the reasons Torvalds created git? <http://en.wikipedia.org/wiki/Git_(software)>

<comment><USER25> Although git usually has faster performance than most other VCS, that doesn't mean it can easily handle terabyte disk image files. :P

</comment></comment></comment></comment><comment><USER26> I do something similar, but I keep the "central" repository in another location on the server and pull from that.

<comment><USER27> That's what I do, except I use svn rather than git.

<comment><USER26> Nice to hear I am not alone on this. The advantage I find is that it makes my deployments more explicit, and my pushes too and from the repository are as often as I feel.

With GIT thats a moot point in the linked article so long as you are using branches for everything and remembering to push them as well, but sometimes I just want to fix something quickly and do so without a branch. I dont care what people say when you start storing a lot of stuff in GIT a branch can take some time to process.

<comment><USER28> You're not forced to use branches with git. They're just so easy that there's no reason not to.

</comment></comment></comment></comment><comment><USER29> So in other words Heroku minus all that pesky code?</comment>


Why race science is on the rise again - <AUTHOR> https://www.theguardian.com/books/2019/may/18/race-science-on-the-rise-angela-saini <comment><USER2> Seems like this is posted every day

Feels like someone has an agenda</comment>


Imaginary Color - <AUTHOR> http://en.wikipedia.org/wiki/Imaginary_color To determine whether Sharp's new four-primary-color HDTVs would matter, I spent the evening researching light perception and color theory.  If you haven't seen the commercials, they're adding a yellow element to each pixel in order to better-reproduce yellows and golds.
Anyway, I stumbled across this article on imaginary color.  Check out this gem:
At Walt Disney World, Kodak engineered Epcot's pavement to be a certain hue of pink so that the grass would look greener through the reverse of this effect. <comment><AUTHOR> To determine whether Sharp's new four-primary-color HDTVs would matter, I spent the evening researching light perception and color theory. If you haven't seen the commercials, they're adding a yellow element to each pixel in order to better-reproduce yellows and golds.

Anyway, I stumbled across this article on imaginary color. Check out this gem:

At Walt Disney World, Kodak engineered Epcot's pavement to be a certain hue of pink so that the grass would look greener through the reverse of this effect.

</comment><comment><USER2> I wonder if somehow we could hook up wires to our brains so that we could experience these colors.</comment>