skysight-inc/HackerNews huggingface dataset:
I would strongly disagree that atom commands are not "composable" (though it depends on your workflow/mental model). To take the select/delete example: atom can select to the end of the line, and it supports the delete key.
How is select-than-delete not composition?
A satirical video about this topic from 2009 when the BKA wanted to do the same thing: https://www.youtube.com/watch?v=pdIA0jeW-24
Brings to mind the point that "the minimum wage is always zero".
You can get some of the benefits of static typing using specs and Dialyzer.
(thanks for the upvote, it worked!)

>There's probably an app in here somewhere to help people budget. You work out when their money comes in. Yu get them to photograph all their receipts and bills, and ask them to document all their outgoings, and give them advice about where to save.

This seems to play off a misconception about the poor and household finances: that the poor have trouble putting aside money for saving, or are incapable of proper budgeting.

In my experience, the problem is not expenditures, it's income. Even working 2-3 jobs, poor people don't have enough money to pay for the barest of necessities -- things like rent, food, medicine, clothes[1]. So they have to make a choice between necessities. Payday lending companies make things even worse by charging extravagant interest rates that far exceed what is required to cover the risk of default.

>Other ways payday lending can be improved is to have an association that has some rules.

I don't quite understand this one. Can you describe what you mean by an "association"? You mean like a union?

In any case, I'd hesitate to add any more rules to a sector already greatly harmed by too many of them.

RESPONSE TO danbc: oh, ok. I thought you were talking about an association for the loan recipients, and couldn't quite understand. But yes, I think an industry association with teeth would be a great thing. But right now, there's little incentive among the current scummy incumbents to create an effective self-regulating association (there is one already in the US, but it's basically name only with no teeth, and primarily exists to lobby and do PR for its members).

1.The highly-publicized incidents of teenagers wearing $150 shoes are mostly the result of side income that the teenager is bringing in, which is typically hotly contested by the child's parent(s) (but they're not the ones who get the check).
Of course it can be unplugged. You can also unplug the whole thing from the wall outlet. That's not the point. The point is it works even when you are not playing games.
What I really want is an editor with both a jump list and a yank ring.
This is very cool! The amount of functionality in modern application frameworks like Cocoa is really amazing, and it is a shame that it tends to be ignored/inaccessible for scripting tasks.

Here is an implementation in Objective-Smalltalk (http://objective.st):

#!/usr/bin/env stsh
#-<void>processIconForApp:appId
framework:AppKit load.
framework:EGOS_Cocoa load.

nonChars := NSCharacterSet letterCharacterSet invertedSet.
str := '_'.
[ :self |
((self componentsSeparatedByCharactersInSet:nonChars) componentsJoinedByString:str) lowercaseStri
] installInClass: NSString withMethodHeaderString:'slugString'.

mask := http://raw.githubusercontent.com/manbolo/appicon/master/maskInverted.png.
appInfo := ref:http://itunes.apple.com/us/lookup getWithArgs id: appId

iconURL := var:appInfo/results/0/artworkUrl512.
name := var:appInfo/results/0/trackCensoredName.
icon := context evaluateScriptString: iconURL.

#(1024 512 120 114 60 57 ) do:[ :width |
c := MPWCGBitmapContext rgbBitmapContext: width @ width.
c scale: width / icon pixelsWide.
c maskedBy:mask draw:[ :aContext | aContext drawImage:icon. ].
scaled := c image.
outname := name slugString ,'_', width stringValue, '_', width stringValue , '_.png'.
file:{outname} := scaled representationUsingType:4 properties:nil.
].

This processes a single icon per call. The only dependency apart from AppKit (and obviously Objective-Smalltalk) is MPWDrawingContext, which I load via EGOS_Cocoa.
I disagree. I think that the idea of "making money off the poor" by offering high interest short term loans is something people recoil from. That drives out people who care about what they're thought of and the people who don't fill the vacuum. Make it illegal and we can go even further down that path to legbreakers.
I always found that kind of surprising. I found it easier to learn new concepts/ways of programming with new syntax. When the syntax feels familiar to a language I already know, I find I either am slipping into habits from the language I know, which may or may not be idiomatic, and which may or may not even do what I think it does, or I just don't bother learn them in the first place, assuming they behave the way they do in the other language.

The sort of extreme example of this is this particular bit of Erlang that seems familiar from a C background

myFunc(Val) ->
if Val -> io:format("Val was true", []) end,
io:format("the end", []).

myFunc(false).

When executed you'd expected it to print just "the end". It doesn't; the if statement throws an exception. It looks similar, but behaves differently, and that makes it harder to learn than the constructs that are completely unfamiliar.
Sandbox web application for learning about security
On a stats blog I just saw that article cited as a classic example of mean vs median propaganda.

The average is ridiculously high because a very small percentage of people get most of the income in our society, and all of them do higher ed and send their kids to higher ed. So all the Doctors, lawyers, MBA exec types, pro (post college) athletes, engineers...

WRT the median, its a lottery ticket purchase. It turns out that the lifetime financial value of a PHD Divinity degree is negative in the pool of potential seminary students, and its not a terribly high number for most students in general. If you (or your parents) win the lottery ticket of life, you probably went to university, but the vast majority of people not only aren't going to win, but are going to take on enormous debt. This is probably not a wise long term societal policy.

The point is there exists a pro football player who earned $100M thus the average "value of a degree" for him and 99 philosophy grads is $1M on average, but that doesn't mean a philosophy degree is automatically a ticket to unlock uncountable piles of gold coins. It merely means rich people (and this is almost certainly not going to be you) did get a degree.

Necessary but not sufficient.
Ways To Motivate Yourself And Move Forward
If you want to proffer advice to someone withdrawing large amounts of cash, that's fine. The incidents I've heard about, however, involved the banks outright denying access to funds that the person was legally entitled to demand, even after the bank's "suggestions" were explicitly rejected. That's not acceptable, no matter the purpose, and no sane person would proceed to blame the banks for any unfortunate results.
I don't think that's necessarily the definition of "NoSQL database".

Databases that predate Codd's work, or long-established ones like dbm and BDB, may appear similar to modern-day NoSQL databases in how they operate, but they surely aren't the same.

Those systems couldn't use relational theory or SQL because they didn't exist yet, or at least didn't reject them outright as one of their main goals.

NoSQL databases, on the other hand, are completely about rejecting relational theory and rejecting SQL. That's at the very core of their philosophy.

True NoSQL databases have been developed as a reaction to several things:

1. A very, very, very small number of situations where relational DB systems cannot easily scale.

2. The far more widespread ignorance of the basics of relational theory, and a lack of willingness to learn about it.

3. The far more widespread ignorance of SQL, and a lack of willingness to learn about it.

4. An urge to be "different" solely for the sake of being different, even if it brings no technological benefit.

5. Unmitigated hype surrounding the term "NoSQL".

Of those, 1) is perhaps the only legitimate reason for using a NoSQL approach today. The number of times this sort of a situation actually arises is remarkably small.

The other four are why those databases have become more widely used, especially within the web development community. As anyone who has dealt with such systems knows, they're rarely about safely and reliably storing and managing data, and they're rarely about doing this efficiently. They're merely a shortcut that some developers use to avoid learning how to use a RDMS.
Okay, so how does the "free market" address a growing underclass that can't afford to live outside poverty? How does the "free market" address social issues caused as a result of this poverty? Inconveniently, for the "free market", these people will not go quietly, and when things get really bad, violence will become an issue. So the "free market" incarcerates them, hoping they don't reproduce, unless they accept their slavery. Then afterwards, everyone is happy, living in paradise.
Don't forget to donate:

https://archive.org/donate/
>Make it illegal and we can go even further down that path to legbreakers.

Bingo!

But I'd argue that there are people who would like to enter this sector, despite its poor reputation, because we'd like to actually serve our clientele while making a reasonable profit in a highly transparent manner.
Smile: Your selfie is a mugshot for the NSA
I see no reason to reproduce Wikipedia's laundry list:

http://en.wikipedia.org/wiki/SQL#Criticism
These docs are from 2011, the acquisition of PittPatt happened in July 2011: http://techcrunch.com/2011/07/22/google-acquires-facial-reco...

Any "commercially available facial recognition technology" was a pre-Google thing, PittPatt is no more.
About the "association" - I mean this to be like a teDe body that has a badge and rules for membership. This is informal voluntary regulation to avoid government implementing legal regulation.

Something similar to plumbers or gas fitters?

About budgeting: I tend to agree tha. People are not wasteful or extravegant. The UK is thinking about changing benefit payments from fortnightly to monthly. In the trial areas many people are having problems with debt. And once poor people get into debt it's hard for them to escape. So budgeting isn't meant to suggest that they are wasteful, just not used to budgeting "money in a bank" rather than actual cash. Older budgeting methods - envelopes on a shelf labled for all the bills - don't work when the cash to fill those envelopes is in a bank.

I think the concept of "nudge" comes in here. It sounds easy to say "just take the cash out of the bank and fill the envelopes" but people don't and so understanding why people struggle to budget and helping them do better is I think useful.
Keep going. Seriously, even folks that are 'successful' by any measure have probably been through multiple failures. That's life, and you deal with it by continuing to try.
The only thing I find to be strange: why there isn't a small metal plate with this written on it, just to make sure people won't panic when this happens?

edit: something like this "The top layer of glass is used to protect the rest from scratches and wear of use. The covering glass is designed to crack at it's end-of-life, but this will not effect the integrity of the structure."
You can't get to every single piece of functionality, but there's this -- https://archive.org/help/json.php -- and this -- https://archive.org/advancedsearch.php, which you can output as JSON/JSONP.

For instance, this broken piece of shit was my attempt to do something about the LMA interface -- http://www.archive-ui.org/#/. (select a show, reload the page, then it'll work. got busy and lost interest).

The interface is as bad as you say, but at least they give us the ability to do something about it ourselves.
[On good engineers]

> Taking on the role of a manager means giving up time doing what they love — solving challenging technical problems — in exchange for what they see as taking out the trash every night.

I can't help but feel that there is more than just a kernel of truth in this otherwise cynical statement. I feel that I fall at least in part to this group - while I try to manage engineers, I constantly have this nagging feeling that I am not doing enough. After all, there are things to be done in the code world that require attention and nobody has the bandwidth.

It's a terrible feeling.
NameTerrific shutting down for new customers, selling its software
I'm thinking that it won't be necessary to split out all plugins into separate processes. One could just as well use one host per scripting language and combine all plugins that use the same scripting language.
> There might as well be no concept of "words" or "lines" in a seasoned lisp programmer's mind, there's only sexps and forms

Forgive me for plugging my own project, but vim-sexp¹ provides exactly this abstraction as Vim text-objects, which in turn may be composed with _any_ of the operations in Vim.

S-expressions as text-objects is an amazing marriage of ideas. For example, the sexp text object can be used equally as an argument to eval, yank, delete, change, select, move, and every other operator, builtin or user-defined, each optionally accepting a count. After that, the whole operation can be repeated on a new S-expression with a simple tap of the repeat command. Because Lisp forms are so regular, these actions are precise and highly reliable.

¹ http://github.com/guns/vim-sexp
"most natural high carb foods ... have a low calorie density"

Need to combine with the equally true observation of most modern processed high carb foods have a ridiculously high calorie density.

Apples are only in season some of the year, so when you can get them, pig out, of course it takes a lot of work to find and harvest apples and the natural supply is fairly limited in quantity and your stomach can only physically hold so many apples ... and millennia later the same taste receptor and insulin feedback loops results in some dude drinking an entire 2 liter of corn syrup soda while sitting on the couch watching a movie.
I've been running into many designers who focus more on looking cool rather than information being used appropriately.

Meeker did a good job of cramming tons of info and data into a concise presentation. It's probably the most data dense presentation I've seen in a long time.

This seems like a case where De Cubber was just trying to change the presentation, rather than improve it. For example:
"Finally, he got rid of an unnecessary color block at the top and the firm’s logo at the bottom to eliminate clutter and create some breathing space."

Removing the firm logo from an analysis presentation is surreally stupid as the analysis is meant to create prestige for the firm.
Exactly. You have to figure out how long that gravy train needs to last in order to reach financial independence.
Wasn't this posted a couple months ago?
The most common reason around here are parents who don't want their kids religious beliefs distorted by the general public and secular school system. There are religious specific schools but they tend to be expensive and far apart. It is easier to just pull your kids from school and have a parent teach them, supplemented with clubs and special activities.

Another reason is parents might not want their kids to have to cope with the social pressures of the school resulting from both income disparity and bullying.

Some kids just don't do well in large group activities with generic and/or dumbed down lessons. 1:1 teaching and custom tailored educational experiences can really help some kids excel. When the household has enough money and a well enough educated parent, to support a parent staying home doing full time teaching, these kids get educational opportunities they wouldn't get in a large public school system.

Similarly, for whatever reason sometimes the family lives in a school district with either terrible schools or schools with such a cultural mis-match that it doesn't make sense to even bother sending your kids there.

Schools in the US are not all equal. Even a few miles apart, schools can be VERY different. And kids are all different too. We have the opportunity to be flexible about educating our children, which I think works out for the best for the majority of such special cases in the long run.

I have seen home schooled kids who have serious issues with:
1) Deadlines
2) Structured Schedules (like showing up for work on time).
3) Coping with social situations that are outside their comfort zone.
4) Separating from their parents.
5) Recognizing that not everyone learns the same way or at the same speed or is as smart as they are.

Sometimes they end up in trouble and unable to be self-sufficient in our society. Sometimes they find a niche that works for them and are very happy. Sometimes they have none of these issues and you'd never know they were home schooled.
For me, the 'hassle' of moving between normal and edit mode in vi is far better than having to use a modifier key for every single command.
To be honest I don't have the slightest idea about how vi does it, but it feels like the design is operations taking 'move' entity as argument.

I glanced a bit at the actual elisp, it's not trivial dispatch, it's multiline intertwined bits of logic.

And even then, to the user it doesn't matter, the composability is hidden from him, making learning longer and failing to expose a very valuable concept entirely.

Some very interesting software pushed the idea of composability to visual tools even, look at Luxology Modo, where you can merge small widgets/tools into the one you need. Very neat.
WTF is a User Experience Expert anyway?
Beware the expert types...
Who are you? The spanish inquisition?

The article claimed: 'Emacs and Atom don’t have commands for deleting to the end of a file or a paragraph — even when they have commands to move to those places. But in Vim, if you can move to a location, you can delete to that location.'

I delete to the end of the file all the time in GNU Emacs. mark, move, delete. It's just a different model.

> Your argument does not defeat the argument about the lack of proper command-and-movement composition.

It's not a 'lack'. Like an airplane does not lack a proper steering wheel.

> This neither diminishes nor augments the value of your favourite editor, so no need for religiousness here.

GNU Emacs is not my favorite editor.
It's sad that Acme hasn't been mentioned at all. While its mouse-oriented nature is a little strange coming from Vim, there are some very awesome ideas in it. For one: It lets you write plugins in anything you like. This is because all aspects of the editor are exposed as a filesystem a la /proc. Need to create a new window with some custom contents? Create a new file. Other awesome ideas: The text in that custom window can be actions because any text can invoke commands by using another mouse button.

Russ Cox has a great video tour of Acme's features here: http://www.youtube.com/watch?v=dP1xVpMPn8M
Can you run us by a typical day of food? I'm not discrediting you, but from experience, what for you is overeating, for others is considered undereating.
I don't know. I find the originals easier to read. I don't think the new design understands the information and its meaning.

Take slide 15 for example, changing a histogram into a bubble chart. Aesthetically it looks nicer, but when you try to comprehend the data it's more difficult. For example, easily comparing side by side bars is easier than trying to determine the difference in bubble sizes. One of the main points of Meeker's slide is that there is $30B in opportunity in the difference between Internet and Mobile time spent vs. ad spend. This is completely gone visually in the redesign and now adds a sentence to describe in text "Underspending on Internet and Mobile"
They're paid for from the fact that the amount of service that needs to be provided is small, and that in aggregate it could be a decent amount of change that the bank can choose to invest in low risk sectors, or can turn around to offer it as a loan with interest.

In general there is money to be made amidst the fluctuations of deposits and withdrawals, so long as you have additional capital to cover it in case too many withdrawals happen at once.
Probably the best citation is a remarkable, rigorous paper by Chetty et al (2014) that uses individual IRS returns [1].

To quote those authors: “We find that children entering the labor market today have the same chances of moving up in the income distribution (relative to their parents) as children born in the 1970s. However, because inequality has risen, the consequences of the ‘birth lottery’ – the parents to whom a child is born – are larger today than in the past.”

[1] http://obs.rc.fas.harvard.edu/chetty/mobility_trends.pdf
Well, I like SQL, but let me play devil's advocate and guess at some of the ways people may consider it "bad":

- SQL queries flatten structured and hierarchical relationships into unstructured rows, often requiring very creative join operations to get at the exact set of data you want, after which you then have to convert everything back to the structured data you wanted in the first place. ORM's are a leaky abstraction on top of that, which means that when you use them you end up dealing with two problems instead of one.

- SQL is superficially simple, but at scale the simplicity is a lie. Thhe performance trade-offs you make require you to understand the internals of the database you're running on and how it interprets the query, and often you feel like you're dealing with a too high level API. Often you're resigned to "tricks" to force the engine to do the right thing, like optimizer hints, special index types or denormalized data.

- SQL has no ability to express relexation of the ACID principles. If you're streaming weather data into a SQL database, it could be ok to drop inserts here and there to gain throughput for the data analysis operations. SQL has no abilities to express such a thing (except in db-specific hacks).
the thing I miss the most in vim compared to other editors is a faster search in project feature. I guess most "modern" editors preload the whole directory in the background something that might not be feasible with vim today. hope to see an improvement with neovim in a near future
"Bookshops are closing down like nobody’s business"

Except that they aren't.

http://www.startribune.com/entertainment/books/260752911.htm...
You are falling into the punishment trap. From the point of view of recovery of the individual, there is no such notion as 25x worse.
Why, the free market already addresses these issues: commercial prison services, commercial security forces - mostly used outside of the country of origin, for now - and bail bond companies and and and... a whole industry is based around services tailored to the growing underclass.
It's interesting how superficial some of the presentation designers can get. You don't need beauty to present data clearly and make it actionable.

I'd be interested in seeing some cost/benefit analysis on spending money on improving these kinds of presentation. Do you actually get a return from beautification projects like this.

Of course, there is a difference between bad presentation and competent. But I don't think Meeker's presentation is bad. Businessweek is just trying to attract controversy by throwing out "a crime against good design."

I work in a scientific field and we frequently get pitches by design firms trying to win work by spending money rebuilding paper presentations, etc. I think there is room to fix broken presentations. But there is diminishing returns from trying to improve a perfectly competent presentation.
"or wait another year"

Why? This quoted line above specifically.