Honey SQL – SQL as Clojure data structures - <AUTHOR> https://github.com/jkk/honeysql <comment><USER5> Curious to hear if anyone uses yesql or similar[1]. I'd _really_ be interested in hearing from someone who has used Honey SQL and yesql and can compare/contrast.

After dealing with ActiveRecord for the past few years, I'm ready to just be able to write plain old SQL again. It seems like yesql is a pretty sweet solution, but I haven't tried it in earnest.

[1] [https://github.com/krisajenkins/yesql](https://github.com/krisajenkins/yesql)

<comment><USER6> I've found templated queries(e.g. yesql) are far preferable for complex selects/joins/subselects and just can't imagine using the data structure dsl for such queries. One huge downside of dsl queries is that they NEVER support the full sql syntax of any database, in my case postgres. The best part is being able to write the query in a sql editor then copy/paste directly, rather than needing to translate into a dsl.

On the other hand if you need dynamic queries, then yes dsl is more suited, as well as for other query types where the dsl can be much better at handling multiple records at once... like say inserting 10 rows at once.

So to sum up:

* complex select queries - templated queries really shine

* simple dynamic queries - templates for simple replacements

* complex dynamic queries - <USER4>

* inserts/updates/deletes - <USER4>

* portable sql - <USER4>

<comment><USER7> > I've found templated queries(e.g. yesql) are far preferable for complex > selects/joins/subselects and just can't imagine using the data structure dsl > for such queries

I work with lots of CTEs, UNIONS, JOINS, and sub-selects and can't imagine not using data structures to validate individual parts of the query as I'm designing it. Particularly given how trivial it is in HoneySQL (anywhere a sub-select is legal you can insert a HoneySQL query map).

Further, I use a lot of the jsonb and postgis features of Postgres and HoneySQL is a champ here. Not everything is supported out of the box[0], but adding any missing clause or operator is just a quick defmethod away. Between HoneySQL and clojure.java.jdbc, working with PostgreSQL's JSON support feels like Mongo with the added abilities of custom types, transactions, and function indexes.

I do have a limit with how far I'll take HoneySQL, but that limit is usually something that belongs in a trigger or a sproc anyway.

[0] honeysql-postgres ([https://github.com/nilenso/honeysql- postgres](https://github.com/nilenso/honeysql-postgres)) helps here by providing some postgres-specific clauses/operators.

</comment></comment></comment><comment><USER8> I'm currently using honeysql in clojure projects at work, it's definitely my favourite option for interfacing with mysql (although would of course rather use datomic, but then what patriotic clojure fan wouldn't?).

In case anyone needs it for mysql, the following adds basic support for "on duplicate key update" clauses:

      (defmethod sql-format/format-clause :upsert [[_ updates] _]
        (let [parts (for [[column value] updates]
                      (str (sql-format/to-sql column) "=" (sql-format/to-sql value)))]
          (str "ON DUPLICATE KEY UPDATE " (string/join "," parts))))

      (sql-helpers/defhelper upsert [m [updates]]
        (assoc m :upsert updates))

</comment><comment><USER9> (Relative) Clojure noob here: what stops someone from developing a similar library to honeysql, but instead of passing in vectors/maps, one created the data structure in a plain quoted form and passed it in?

e.g. the first example in the README could be turned into:

        (def sqlmap
            '(where (= :f.a "baz")
                (from :foo (select [:a :b: :c])))

I understand that hiccup syntax can be awesome, but it seems like Clojure loses a bit of the magic of LISP when everything has to be written in terms of vectors/maps - what's wrong with a plain ol' list?

I imagine I'm probably missing something obvious or important, since I've only dabbled in Clojure (and loved it!)

<comment><USER10> Nested lists are harder to perform lookups on than maps.

If I want to know what the "from" part of the SQL query is, with HoneySQL I can write:

        (:from query)

On the other hand, depending on your s-expression syntax, I'd either have to find the table name positionally, or by walking the tree.

<comment><USER9> That makes sense. Thanks for the reply!

</comment></comment></comment><comment><USER11> see also.

[https://www.hugsql.org/](https://www.hugsql.org/)

binds Clojure functions to SQL

\----

clojars stats:

        GitHublayerware/hugsql
        76,170 Downloads

        GitHubjkk/honeysql
        168,981 Downloads

\----

these two libraries could in principle work together (e.g. using hugsql's `_-dbvec` variants): foundations go in plain sql, more complicated stuffs generated out of Clojure.

for the simple sort of databasing that i've done so far in Clojure, hugsql alone has sufficed: i tried honeysql. it boiled down to wanting to write some plain SQL b/c i found it to be a more unique (good/bad, i dunno) approach than writing SQL-in-language-_.

FOOTNOTE

how to escape the asterisk in the YC formatting language \--__--

</comment><comment><AUTHOR> Honey SQL is a great example for how elegant and powerful data-centric APIs can be.

Also worth looking into are clojure.spec, Datomic, hiccup, rum

<comment><USER12> I'd say Reagent would be a better example of a data-centric API than Rum. Both are great libraries though.

</comment></comment><comment><USER13> I recently started using honeysql and so far it has been great.

There is some learning curve figuring put how things work, but the advantages of having SQL encoded as clojure data are worth it, in my opinion:

\- s-expressions everywhere means that structural editing works

\- allows for easy composing of sql queries - can very easily add custom filters, joins, etc and build up queries dynamically

\- can easily add abstractions, for example something like [https://github.com/metabase/toucan/blob/master/README.md](https://github.com/metabase/toucan/blob/master/README.md)

If you use postgresql, check out: [https://github.com/nilenso/honeysql- postgres/blob/master/REA...](https://github.com/nilenso/honeysql- postgres/blob/master/README.md)

</comment><comment><USER14> There is also Hayt for CQL (cassandra). It's quite mature and used by yapster, featured recently on juxt blog among others.

Queries are plain clj maps and there is also a thin dsl provided.

[https://github.com/mpenet/hayt](https://github.com/mpenet/hayt)

In our case we use it to generate prepared statements but we avoid using this kind of query gen on live/hot paths.

</comment><comment><USER15> I like these Clojure SQL DSLs. I did a reactive Clojurescript DSL a couple of years ago:

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

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

</comment><comment><USER16> Does anything comparable exists for Python?

<comment><USER17> I created this which is in a slightly similar spirit: [https://github.com/cjauvin/little_pger](https://github.com/cjauvin/little_pger)

</comment></comment><comment><USER18> isn't this just korma?

<comment><USER19> I'm using korma for my project and it ends up being a pain. It is the one library I want to get rid of.

The documentation isn't really great, and when falling out of the most vanilla use cases, you need to fire up Google and pray to find posts from someone with a similar problem, or go read the code, which always takes more time. I ended up several times using "raw" and writing big queries in a string, as I desisted to fight against the library. I'm planning on porting everything to either honeysql or yesql whenever I have time.

In my opinion, korma was a good experiment from earlier clojure times, but the approach it takes ends up suboptimal. Honeysql's approach seems more lean and more integrated into the core language, so it is easier to operate (disclaimer: I did not test it yet).

</comment></comment><comment><USER20> I came here looking for comments on the lines of "F# had this before microsoft realized having F#". I came early

<comment><USER21> Do you mean F* and some of the work by Phil Wadler et al eg. [http://homepages.inf.ed.ac.uk/wadler/papers/qdsl/curryon.pdf](http://homepages.inf.ed.ac.uk/wadler/papers/qdsl/curryon.pdf)

</comment></comment><comment><USER22> What the heck? This makes me hate SQL and Clojure....

<comment><USER8> You may find your comment turning less gray if you articulated the issues you see with this lib.

I definitely would be interested, since I am a current user. Its always good to get a differing perspective on your tools.</comment></comment>


How do I get unstuck as a developer - <AUTHOR>

I've been developing for iOS for 2 years now. I have a varied background, and I started late, so I'm an older dev than most. I'm working at awell funded startup, and I work with some really good people. However, it's an API company, and not an iOS company, so there is not a lot of iOS work that pushes my skills. The iOS library is widely distributed and used, and has a lot of legacy requirements. It was written by an offshore firm, and there is a lot of fear about making any changes. We can't make drastic changes, can't take risks, and can't really rapidly develop, which is probably for the best, but it's just boring. But, also very time consuming. I've been trying to drive my skills forward on my own, but all of the work is starting to take a toll on my personal life, (my wife especially). How do you do it, experienced coders of HN? Do I walk away from a decent job at a startup that is pretty much going to go big? Look, I'm not a rockstar developer, some of my ideas are terrible, but not all, and being the newest dev, the most common word I hear is no. But I test, I learn, I iterate, and get code out the door.  How do I move forward? Am I just going through a normal part of my growth as a developer? Are there opportunities that I just don't see because of my inexperience? I apologize for the post being a bit unfocused, but I'm tired. <comment><USER2> If you have meaningful equity and the startup you work for is going to get you FU money(a lot of money), you have to decide: chance of FU money(= happiness) OR chance of being employed by a better place(= happiness). Both are a chance, you might find an even worse place to work... (common)

If you don't have much equity there and can get a salary somehow good in another company/startup, I don't see why you are still working for them.

Also, before you leave, try to negotiate with them to get some equity/more equity. Maybe it will work out better to work with this shitty code for a while and make it big. Be rational and not emotional.

My 2 cents.

<comment><AUTHOR> No FU money for sure, I'm too late for that. I might be able to negotiate for a different postion, or more salary though.

</comment></comment><comment><USER3> Hey, Honestly, if you feel you're not learning and you're not happy where you are, even though it's a great company to be in, I think you should quit. Maybe you have an idea or two that you could work on. Your savings will dictate how quick you need to turn a profit, or ultimately find another job. But seriously, like startup digest puts it "life is too short to work at a boring company". Cheers, and good luck!

</comment><comment><USER4> By drive skills forward on your own, do you mean by working on side projects? If not, you should be looking at innovative ways to use your API through personal projects. Why not create a simple app that uses the API and put it on the app store? Create a mashup with your API and another API. But do something, otherwise you'll have regrets later in life.

<comment><AUTHOR> I've been striking out on my own an implementing the solutions I think will work with our code when I'm on my own, especially if the idea doesn't make it through my boss.</comment></comment>


A belief in meritocracy is not only false: it's morally wrong - <AUTHOR> https://aeon.co/ideas/a-belief-in-meritocracy-is-not-only-false-its-morally-wrong <comment><USER2> There's definitely proof that the world does respect hard work. Consider the fact that Asians, Whites, Hispanics, and Blacks spend time working on homework in that order: [https://www.brookings.edu/blog/brown-center- chalkboard/2017/...](https://www.brookings.edu/blog/brown-center- chalkboard/2017/08/10/analyzing-the-homework-gap-among-high-school-students/)

Asians spend twice as much time on homework as compared to Whites, and about three times as compared to Blacks. Kids of high income families spend more time working on homework than low income kids. So the fact that Asians comprise the student body proportionally larger than Whites, and whites more than Blacks is evidence that hard work pays off.

I think these claims that meritocracy is false lack nuance. It's not that meritocracy isn't fair, it's that a pure meritocracy free of bias is _too_ fair: it doesn't attempt to rectify the fact not everyone starts with the same resources and that certain groups have different attitudes towards thinks like education than others.

Granted many of you are probably thinking that the fact that meritocracy doesn't correct for these things makes it inherently unfair, and many are probably thinking that the notion that our processes to allocate opportunitiea _should_ correct for things like disparate time spent on study is itself an act of unfairness. And there's no one right answer to this. This is a kind of question where there is no answer, but rather society continuously develops and evolves a concensus about the right approach.

<comment><USER3> Two questions arise from this.

First - in your homework paragraph, you're associating hard work with merit. It's very common - X deserves more than Y because X worked harder. Why do we consider work to be a virtue?

And second - even if we have a pure measure of merit we could all agree on, how the fruits of everyone's labours are divided is still debatable. How much should the best/average/worst get compared to each other?

<comment><USER2> Good point, hard work in and of itself does not equate to better results in meritocracy. Meritocracy sorts people based on performance, not hard work. But hard work is generally necessary to improve performance.

* If Alice trains 30 hours a week for a year for a marathon and Candice trains 2 hours a week for a year who do you think has the better chance of winning? Sure, maybe Alice has a disability, or maybe Candice is some running demigod. But if I had to put money on it I'd bet on Alice.

* If half the class studies for 21 hours a week and the other studiss for 7 the which would you bet is going to have the higher class average? I can speak firsthand to the fact that there will still be big variance. Some subjects can't naturally to me, others were like a brick wall. But chances are the students putting in 3x the study will do better.

So pointing out that groups that work harder get ahead is decent evidence that meritocracy does function. Especially when the groups in question are groups like Asians and Jewish people in America that were subject to significant prejudice and discrimination throughout history. Meritocracy _can_ enable groups to overcome prejudice.

Granted there are definitely groups not well served by meritocracy. Groups that don't have as much family support, and don't have a strong cultural emphasis on education (I realize this last point does mirror racial sterotyoes but I did post evidence to show truth behind it) are at a big disadvantage. Any yes, it's probably worth compromising pure meritocracy to even the playing field to a degree.

Distribution of the fruits of labor is a valuable discussion, but it is tangential to the discussion of meritocracy. There will be varing distributions of wealth even if we wholly reject meritocracy.

<comment><USER4> > _If Alice trains 30 hours a week for a year for a marathon and Candice > trains 2 hours a week for a year who do you think has the better chance of > winning?_

If Caleb and Makayla study 30 hours a week for a year for SATs suffering parental apathy, lack of means, working an evening job, a bad school district, and Emma and John study 20 hours a week for a year, being primed from birth for college, with understanding parents, a nice weekly allowance, and a good school district, which would you bet is going to have the higher SAT average?

[https://www.radionz.co.nz/news/the-wireless/373065/the- penci...](https://www.radionz.co.nz/news/the-wireless/373065/the-pencilsword- on-a-plate)

<comment><USER2> I'm not sure how a web comic from New Zealand is supposed to form an effective refutation in response to quantative data on academics in the United States. In case it wasn't clear I'm most talking about America. The posted article opens with statementd from Barack Obama and Trump so I think this narrowed scope is on topic. I don't have much experience or knowledge of other countries meritocratic systems.

Oppressed minorities have gotten themselves out of poverty by emphasizing hard work and education. I've already listed Jewish Americans and Asian Americans. The Irish also underwent a similar process. Back during the 19th and early 20th century Irish were widely discriminated against and many didn't consider them White. Irish community leaders started emphasizing education in the early to mid 20th century. And by 2018 Irish have succeeded to the point that Irish surnames are considered signs of privilege. Cuban American households by now make about $20k more than the average American households [1]. Latin Americans as a whole are following suit.

Minorities have overcome oppression through meritocratic systems. It certainly hasn't worked for _every_ demographic. But I don't think you're giving minorities enough credit in their ability to succeed through their own effort.

1\. [https://en.m.wikipedia.org/wiki/Cuban_Americans](https://en.m.wikipedia.org/wiki/Cuban_Americans)

<comment><USER4> > _I 'm not sure how a web comic from New Zealand is supposed to form an > effective refutation in response to quantative data on academics in the > United States. In case it wasn't clear I'm most talking about America._

Let me clarify this part, then: the post is about nothing particular New Zealandish that's not also the case in the US. It has been reposted and recommended in American media so many times precisely because it is relevant in the US too.

Furthermore, this is more than clear in the comic itself, which is told in a universal manner, and doesn't refer to any particular trait/habit/circumstance/factor of New Zealand life.

If anything, it is more USA than New Zealand (which has much less inequality of the sort the comic criticizes).

> _Oppressed minorities have gotten themselves out of poverty by emphasizing > hard work and education. I 've already listed Jewish Americans and Asian > Americans._

Jewish and Asian Americans didn't have 400 years of being abducted from their countries and working to death as slaves in the USA. After the initial racism against them as newcomers subsided they were quickly tolerated.

Blacks on the other had, had the contempt and the prejudice of their ex-owners and their children and grandchildren. They had started from less than 0, as they had their culture stolen from them in 400 years of slavery (as opposed to newer Jewish and Asian immigrants arriving with their old world cultures -- from "bar mitzvahs" and "delis", to "tiger moms").

Asians and Jews had their persecution up around the 40s or so, but they didn't have segregated schools, hotels, restaurants up to the late 60s. They didn't have to put up with redlining when looking for places to live (up to now). They don't have discrimination against them in white collar jobs still. They're not routinely killed without questions asked by cops in percentages unheard of for any western country police force (even accounting those countries total population, not just the black population).

<comment><USER2> Again, I mentioned that meritocracy hasn't been successful for every single demographic. My whole point is that meritocracy _does_ uplift poor minorities when effort is put in. Don't get me wrong it almost certainly takes more effort for a poor minority to succeed than a rich person - I've been reiterating this since my original comment. But meritocracy does provide a ladder to lift groups out of poverty in a manner that society as a whole seems fair. I think you recognize this when you reference "tiger moms" as part of the reasons why Asians have succeeded.

The fact that it hasn't worked for Blacks in America doesn't alter the fact that is _has_ worked for Irish, Germans, Asians, Jews, and Latinos. One can make a decent claim that more minorities have benefitted from meritocracy than have been left behind.

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> As far as I can tell, that article should properly be titled "A belief that life is a meritocracy is not only false, it's morally wrong".

Most of the author's problems seem to revolve around the fact that real life is not actually a pure meritocracy, not in the idea that meritocracy itself is a bad ideal. Even his examples where people show bias in assessment of others when they believe they are operating in a merit-based system are just examples that the system is not actually merit-based.

What I find disappointing is that the author does not even bother to offer even a hint at an alternative.

<comment><USER6> The argument that it is morally wrong seems to hinge on the argument that meritocracy promotes selfishness. However, I find the examples used to be problematic. It's shown that when people are led to believe that their success in a game is based on their skill, they are less likely to support redistributing the rewards. This is an example of selfishness. However, what about all the other participants in the game? If they believe that they lost because of someone else's skill, are they less likely to expect redistribution of rewards? If this is the case, it could be shown that meritocracy promotes selfishness in the person at the top but selflessness in everyone else, and therefore a net gain in selflessness in society.

As a thought expermiment, what kind of world would most people prefer to live in, one in which success and rewards can be gained by skill and hard work or one in which success is distributed randomly? This article seems to imply that most people prefer the former. If that's true, then meritocracy is an ideal to work toward, no matter how perfectly or imperfectly it exists today.

The other subject discussed is people's perception of effort and skill in success. Most people seem to think that it's an important factor. But isn't this true even if luck and circumstance are large factors as well? It's a well known fact that people who win lotteries often lose their money and end up less happy than they expect. Anyone can be given the world and waste it. It's not wrong to believe that sustained success requires both effort and strong external support.

Therefore, what I learned from this article is that most people want to live in a meritocracy, and I suspect that most people are happier with their lack of success and reward if they believe that their cicrumstances are somewhat under their control and there exists opportunity to better themselves through effort. We should work toward a more meritocratic world so that more people can realize these ambitions.

<comment><USER7> >As a thought expermiment, what kind of world would most people prefer to live in, one in which success and rewards can be gained by skill and hard work or one in which success is distributed randomly? This article seems to imply that most people prefer the former. If that's true, then meritocracy is an ideal to work toward, no matter how perfectly or imperfectly it exists today.

You mean, the better out of those 2 options. There are more than the 2 options you present though, so the fact that it is ideal doesn't follow.

Some people would prefer the option, for example, where rewards aren't random but evenly distributed.

<comment><USER6> I used those two examples because they were the ones presented in the article, luck vs merit. But you're right that there are many more options for distribution. Whether people would prefer opportunities for success with merit without rewards or without certain rewards like financial compensation if they would receive more recognition instead is an interesting line of inquiry. If we can establish that people overall prefer a merit-based rather than a luck- based success system, it opens up opportunities to figure out what kinds of things people value in return for their success.

I wonder if people would even prefer fewer rewards for success if that success could be made more merit-based as a result. Maybe companies should reduce salaries and redirect that money toward more robust systems to recognize skill and merit in employees. It would make an interesting experiment. Would you take, for example, a 10% pay cut if in exchange you and everyone else at your job were given weekly evaluations with opportunities for advancement, with at least one person being given more responsibilities with no pay raise and the bottom earners gaining a raise as a result of increased efficiency and reduced pay for the top earners? That might not sound like a great deal, but maybe it could be crafted in a way to be appealing to people.

</comment></comment></comment></comment><comment><USER8> Belief in meritocracy is yet another version of the just-world fallacy. If you belief in a just world, you need to fight off any counter evidence. This leads automatically to discrimination. Same thing with merits and success. To not acknowledge happenstance and luck is a huge red flag for me.

<comment><USER9> Also, it assumes one right answer. That everything can be converted to a number and combined into a rank-able scale.

There's different perspectives and trade offs.

<comment><USER10> Why does it assume that?

It assumes that when _you_ make up a scale, the people that deserve to be at the top of it tend to be there. There's no reason for it to imply there's one universal scale of good people versus bad people.

For instance, if you want to understand why some people make more money than others (a trait that _is_ well-ordered, and can be put into a list), then somebody who believes in meritocracy would say that the people who make the most money earned it. If you want to understand why different people hold different positions in a company, then the meritocrist would say that between all the people who wanted each position, the person who was best for it tends to be the one that gets it.

Each of those scales may be more or less sympathetic to an explanation by way of meritocracy. But anyone who wants to make that argument doesn't have to construct an a priori global list of goodness for all people to give you an answer.

<comment><USER9> That's the thing nobody deserves anything. How do you prove one scale is better than another? GDP - arbitrary. GINI index - arbitrary. Violent submission? I guess at the end of the day there's your answer.

</comment></comment></comment></comment><comment><USER11> Talk is cheap. Meritocracy is the new bad word for some political segments, but the day you need complex surgery and they bring in the janitor, you grow up real fast.

<comment><USER12> Heavily contrasted things such as a janitor and a surgeon are not what is meant a meritocracy. What is usually meant is within an organization of surgeons ranked based on talent, effort, and achievement. Fact is all of those things are based on politics, perceptions, and in some cases luck -- especially the higher up the hierarchy you go as individuals may get credit for efforts of people below them and all of that is attributed to their efforts.

The most competent surgeon may seem the most competent because she only takes easier cases. A good surgeon might work 36 which might be worse for his patients survival than if he works 12 hour shifts. You might get individual surgeons that are very lucky in terms of their success rate, not for any other reason than survivor bias. You might get a team of surgeons where a leader takes credit but it's the juniors that are actually really good at what they do.

<comment><USER11> > Fact is all of those things are based on politics, perceptions, and in some > cases luck

Says you. Even an average talent can identify an excellent talent. People who stand against meritocracy are the people who have never even reached average talent.

> The most competent surgeon may seem the most competent because she only > takes easier cases.

That is the kind of trick you think works when you are a child, but actually doesn't work among peers.

<comment><USER12> > Says you. Even an average talent can identify an excellent talent. People > who stand against meritocracy are the people who have never even reached > average talent.

[https://cramster- image.s3.amazonaws.com/definitions/DC-2238V...](https://cramster- image.s3.amazonaws.com/definitions/DC-2238V1.png)

Normal curve as in measuring IQ. Most people on it are in the middle. The people on the extremes are exceptional. Plenty of studies show that the correlation between being on the edge on that curve and being extremely successful are tenuous at best, most very successful people have average IQ. How do you explain that if there is a real meritocracy. Shouldn't people who are extremely exceptional in terms of their IQ be extremely successful?

> That is the kind of trick you think works when you are a child, but actually > doesn't work among peers.

It's a common practice in medicine or law... to take on cases that they can actually win. Do you live under a rock?

<comment><USER11> So your point is that reducing humans to a contentious number (IQ) and sorting them thus should immediately translate into their social/financial positions in reality, and if not then it's all politics and isms? That is laughable.

> It's a common practice in medicine or law... to take on cases that they can > actually win. Do you live under a rock?

Of course. Common practice for some. But then the hard cases are still there and someone needs to take them, right? And those who do, gain respect. That's merit.

</comment></comment></comment></comment></comment><comment><USER13> This article (like so many others) inappropriately conflates believing that meritocracy is ideal with believing that meritocracy exists today. Given that, it's hard to interpret its conclusions.

</comment><comment><USER14> "Perhaps more disturbing, simply holding meritocracy as a value seems to promote discriminatory behaviour"

Of course it does, meritocracy is the process of discriminating good candidates from bad candidates.

I'm so fed up with people attaching emotions to the word discrimination. It is not an inherent evil.

"Yet Castilla and Benard found that, ironically, attempts to implement meritocracy leads to just the kinds of inequalities that it aims to eliminate."

Then they haven't implemented meritocracy properly then, have they?

</comment><comment><USER15> I would argue that as a way to describe a selection process, "Meritocracy", warts and all, works great.

By warts, I mean that merit, as shorthand for "assessment of skill, talent, or capability", has other factors mixed in because _flawed people_ decide who gets life's prizes.

The Gates example shows the missing ingredient - not luck, but recognition of luck's role in success, what some might call humility. The article referred to gratitude research, which probably means the same thing.

It's a missing ingredient because it doesn't seem too valuable anymore, especially when compared to other qualities, such as the ability to "talk smack."

And it's associated with sackcloth and ashes, or being a "loser." Moreover, it's often called false.

Coming back to meritocracy, what do we have as alternatives? Random selection? Suppression of individual differences (aka C.S. Lewis' "Parity of Esteem")? I don't know.

Parity of Esteem ref = [http://www.samizdat.qc.ca/arts/lit/Toast_CSL.pdf](http://www.samizdat.qc.ca/arts/lit/Toast_CSL.pdf)

</comment><comment><USER16> I am annoyed by the article's use of Bill Gates to exemplify the "fortuitous circumstances that figure into every success story". Bill Gates and Microsoft is not "every success story". I would be surprised to find even a hardcore believer in an ideologized meritocracy who thought that tail events like Bill Gates and Microsoft didn't have a huge luck component.

Meritocracy-as-strong-just-world-hypothesis is a weak-man argument.

I am a believer in meritocracy. But, I note, I'm not a believer in any ideological big-M Meritocracy. Rather, I think meritocracy is the best practical way we know to organize things. In a liberal society, rather than get everybody to agree on the latent virtues they love the most, I think it makes sense to have demonstrated capability as a common ground evaluation metric. As another poster in the thread suggests, what do you want from your surgeon if not demonstrated capability?

</comment><comment><USER17> It seems most people don't realise that "meritocracy" was coined half a century ago as a sarcastic term for a possible dystopia. One in which many people now find themselves.

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

<comment><USER18> Actual dystopia, surely?

He was referring to major flaws of the two stream, grammar and secondary modern, school system in place in the UK at the time. That it led to "an obsession with quantification, test-scoring, and qualifications". So we still inhabit it.

That two tier education was supposed to be a three stream system including technical schools for engineering and trades, except almost none of those were built. So the UK spent decades wondering aloud why our education couldn't turn out engineers and tradespeople like Germany.

Subsequent UK attempts at school specialisation have been even worse.

</comment></comment><comment><USER19> The article talks about morals, which by themselves are based on values and beliefs, therefore not defensible ethically and logically.

Meritocracy is not ethically defensible under argumentative logic -- Hans Herman Hoppe has provided the framework for that.

<comment><USER20> _Morals_ are not defensible _ethically_? That sounds... really bizarre. Could you explain why you think that is true?

Or, could you explain why you think ethics are _not_ based on values and beliefs?

</comment></comment><comment><USER21> Is luck evenly distributed? If so, then at least on one level of abstraction, is not the world fair? If it is not evenly distributed, then by what mechanism is luck parceled out to individuals?

Bill Gates may be lucky in that he had little choice over the circumstances in which he was born into, but did not his parents make decisions that led to a better outcome? His luck could be said to be the merit of his ancestors.

</comment><comment><USER22> I would point out that the equal opportunity espoused in the quote that start that article is not at all the same thing as meritocracy.

A balanced playing field doesn't mean that luck plays no role. It also doesn't mean that you can't provide a safety net and do some balancing of outcomes. It just means you have eliminated systematic biases.

</comment><comment><USER23> I kind of agree with the article. I think of meritocracy as just another way to promote exploitation of people, hard work, submissive attitudes, acceptance of inequality. Basically every capitalist's dream society.

But it's pretty bizarre that people actually believe that being exploited is just hard work they have to do to get ahead and not being able to meet basic needs to live a normal life is just not working hard enough or not being talented enough to deserve a normal life.

It's morally acceptable to believe in meritocracy only as long as everyone's basic needs are met and they can't be exploited.</comment>


We Are All Bitcoin - <AUTHOR> https://bitcoinfoundation.org/blog/?p=510

<comment><USER2> It turns out Bitcoin was in our hearts all along.

</comment><comment><USER3> I can't speak for anyone else, but I've just checked and I can confirm that I am not Bitcoin.

<comment><USER4> Nor am I, as far as I can tell. But would a bitcoin know that it's a bitcoin? Maybe I am a bitcoin and I just don't know it.

<comment><USER5> [Peter Griffin] "See Meg, these are the questions."

</comment></comment></comment><comment><USER6> Would have been nice if they'd asked the media to leave Mr. Nakamoto alone. Just another opportunity to bag on about how decentralised and wonderful it is and how this changes nothing.

</comment><comment><USER7> I suppose I can use my limbs to buy illegal drugs. If only they were virtual and could be transferred internationally with little or no fees - all done more easily than sending an email.

</comment><comment><USER8> We are bitcoin... We are the tweeters... We are the ones who use the intertubes, so let's start sitting...

</comment><comment><USER9> But some of us are mode Bitcoin than others</comment>


How to ask someone for help via email - <AUTHOR> http://leostartsup.com/2012/01/how-to-ask-someone-for-help-via-email/

<comment><USER2> _> 2-3 sentences of honest appreciation_

Personally I disagree. If I want to help a user, I want to get down the the problem ASAP, not filter through unrelated content. A thankyou and appreciative tone is definitely nice, and I wouldn't give much regard to someone with a rude tone, but I would probably ditch an email that has lines filled with "thankyou thankyou ...". I am actually amazed how affective emoticons can be in this regard.</comment>


Show HN: Slate – Add Google Search and Scholar to Word - <AUTHOR> http://www.slate.ink <comment><AUTHOR> Hi guys. For the past month I have been working on an app because I was tired of using browser extensions + plus some other pane on Word to manage citations.

To solve this, I made something which embeds Google Search and Scholar into Word. When you drag some text and hit search you can search the text for plagiarism, and when you paste any text using the "Cite" button it looks up the sources matching that text and generates the appropriate citation and adds it to the reference list.

If you guys can download or even watch the demo, and give me your feedback I'd appreciate it (negative criticisms welcome)!.</comment>


What is the most unlimited vacation a person has ever taken? - <AUTHOR> https://www.quora.com/What-is-the-most-unlimited-vacation-a-person-has-ever-taken-utilizing-their-unlimited-vacation-policy?share=1 <comment><USER2> Great question, hope more people will throw in some funny stories.

If I ever get interviewed by Netflix, I am gonna ask that one.</comment>


Show HN: Failory – Learn from other entrepreneurs' mistakes - <AUTHOR> http://failory.com/ <comment><USER2> Sockpuppet accounts and bogus upvotes will get your accounts and sites banned here, so please don't do that.

</comment><comment><USER3> Not sure if the personal interview model can be scaled as to include an appealing variety of startups. You may want to take a look at these two sites[0:2] that I think do a pretty good job at aggregating the stories of the startups that did not quiet take off.

[0] Collapsed - [https://collapsed.co/](https://collapsed.co/) [1] Autopsy - [http://autopsy.io/](http://autopsy.io/)

<comment><AUTHOR> Thanks for the resources! I will check them out. Also thanks for your feedback, we will think how to scale Failory to more startups. If you know of any failed startup please share them our contact.

</comment></comment><comment><USER4> Inspired by [https://www.indiehackers.com/businesses](https://www.indiehackers.com/businesses) ?

<comment><AUTHOR> Yes, I love IH!

<comment><USER5> I thought it was from the creator of Indie Hackers! Maybe he was doing something new! But still a good resource.. bookmarked for lessons!

<comment><AUTHOR> Would be awesome to partnership with Courtland!

</comment></comment></comment></comment><comment><USER6> There is also [http://startupgraveyard.io/](http://startupgraveyard.io/)

<comment><AUTHOR> Yes, it was a great source of inspiration!

</comment></comment><comment><USER7> What's with the emojis in questions? Distracting to read.

<comment><AUTHOR> We thought it would make the website a little bit more colorful

<comment><USER8> You should use one emoji per question and use it as a bullet point. Right now, it looks a bit jarring. Your intuition is correct (a bit of color/playfulness doesn't hurt).

<comment> unkown-unknowns When you say as bullet point, do you mean as in before the text? That's not how to use emoji in general. But a single emoji at any place within the text (as opposed to many of them) is a good idea.

<comment><USER8> Yeah I mean as bullet point. For example, see my blog: dvt.name. I use emojis as "bullet points" on an unordered list of blog posts.

I'm not exactly sure what you mean by "how to use emojis in general" \-- emojis are just like any other character used in any way that seems to make sense.

<comment><AUTHOR> Okey, we will take this into account for the following updates. Thanks you!

</comment></comment></comment></comment></comment></comment><comment><USER9> Nice concept, bookmarked. will check regularly.

Perhaps useful to add is some categorisation and taxonomy.

Good luck!

<comment><AUTHOR> Thanks for your feedback! We are working on those functionalities.

</comment></comment><comment><USER10> If this was a podcast I would listen every single week.

<comment><AUTHOR> We are planning to create a podcast! Suscribe to the newsletter to keep updated

</comment></comment><comment><USER11> Is the name a wordplay on Fillory?

<comment><AUTHOR> Haha no, the name of Failory becomes from failure + story. The logo makes reference to a chat + story + colors of failures.

<comment><USER11> Makes perfect sense, although it would still have been a good fit if it actually were a wordplay on Fillory.

<comment><AUTHOR> Its true! :)

</comment></comment></comment></comment><comment><USER12> The plural possessive of entrepreneur is entrepreneurs' (apostrophe after the s).

</comment><comment><USER13> High quality content!

<comment><AUTHOR> Thanks and forget to suscribe to our newsletter!

<comment><USER14> LOL, Why people on HN tend to abuse their power like downvoting unecessarily</comment></comment></comment>


Unlike Android, the iPhone can't scale, says Google - <AUTHOR> http://blogs.ft.com/techblog/2009/07/unlike-android-the-iphone-cant-scale-says-google/ <comment><USER2> Marketers use the word "scale" the way Star Trek writers used the word "phase".

Cue Inigo Montoya: "You keep using that word. I do not think it means what you think it means."

And even if you ignore the poor choice of words and the inane anti-iPhone spin (what, the iPhone OS won't run on products besides iPhones? I'm _typing_ on the iMac that disproves that point!) what I see here is Google trying to put a positive spin on one of their platform's big _problems_ : Android not only _can_ run on a thousand kinds of hardware, but that appears to be the official plan. Some of that hardware will have physical keyboards. Some of it will not. Some of that hardware will have screens the size of a dinner plate. Some will not. The result is a loss of coherency: What kind of hardware is an Android app for? What is Android for?

If you build an Android app, you have to decide if you'll optimize it for a physical keyboard on the long edge, or a physical keyboard on the short edge, or a software keyboard. You'll have to decide how much of the screen you can take up with your control panel. You can't optimize for everything at once.

The likely outcome is that you'll have to support your Android software on a divergent set of hardware, and you'll inevitably disappoint a subset of your customers. If the customer base breaks into thirds and you can only please one-third at a time, you will routinely disappoint _a majority_ of the customer base no matter _what_ you do.

The fact that the iPhone has one consistent hardware platform is a _big advantage_ for Apple. The newest iPhone OS runs great on my two-year-old original-edition iPhone. The phone is getting better by the month: The interface works better, the crashes are fewer. This is presumably because Apple's engineering team can focus on refining the current platform rather than on porting their OS to a dozen different platforms.

<comment><USER3> Actually, the Android SDK makes it supremely easy to build applications that are built specifically for different types of devices with minimal effort. The implemented separation of XML resources, combined with the ability to further refine/subdivide resources based on phone capabilities, without having to write any code to make the choices at runtime, is incredibly useful and powerful.

For a simple example, let's say I want to optimize my application's interface layout for whether the phone is in portrait or landscape mode. I simply make two copies of the layout definition and place them in specially-named resource folders, like such:

        res/
          layout/
            main.xml    # basic layout
          layout-port/
            main.xml    # optimized for portrait mode
          layout-land/
            main.xml    # optimized for landscape mode

Then all my application needs to do to load the layout is:

        setContentView.(R.layout.main);

Android then takes care of loading the appropriate layout element _on the fly_ based on the device's capabilities and state. All I have to do is include optimized versions of the layout for whatever I think in important.

This capability not only covers screen orientation, but screen resolution, screen DPI, touch versus stylus input, hardware or software keyboard, and more [1]. And it all comes basically for "free" because my actual code doesn't have to know about any of it; it just asks for the base resource, and Android does all the selection for me.

So _yes_ , running on lots of devices _is_ part of Android's plan, and they've been working from day 1 to mitigate all of the problems inherent with targeting a divergent platform, and it _works_. So yes, Android _will_ "scale" to any number of devices, and it's trivial for developers to stay on top of everything if they use the SDK the way it was designed.

[1] [http://developer.android.com/guide/topics/resources/resource...](http://developer.android.com/guide/topics/resources/resources-i18n.html#AlternateResources)

<comment><USER2> All of this is great, and very informative, but it will make Mac software developers and critics -- guys like John Gruber -- laugh and laugh.

The problem with this analysis is that it embodies the Java Desktop Fallacy -- the idea that the primary problem with getting your application to work on every hardware platform is getting the code to compile and the libraries to load. Sun once thought like this. They built a cross-platform set of libraries and released them to the world. They were dutifully ported to every hardware platform. They still work. But Java desktop applications sank into the swamp and died, because the average Java application didn't act quite like a Mac app, or quite like a Windows app. It looked and acted like a crappy compromise, built by someone who was jack of all trades and master of none.

The problem with getting your app to work with or without a multitouch screen, or a built-in accelerometer, or a hardware keyboard, is that _an app designed for a multitouch screen is a completely different beast_. Making the iPhone's photo album software work on a device without the iPhone screen would require _a complete redesign of the app_ \-- you don't have pinch-to-expand, you might not have the same smooth scrolling when the user waves their fingers across the screen. But maybe you can mitigate those missing features by designing some shortcuts for the handy hardware keyboard. But -- oops -- some phones don't have that keyboard, so now you need to design one app for multitouch, one app for single-touch but no keyboard, one app for single-touch with a keyboard...

If you have the time and the budget you can just design eight separate apps for eight separate combinations of hardware and sell them all. And if you're lucky, and Android is that good, you might not need eight times as many coders to pull that off. But you might still need 8x the design budget, and/or 8x the QA budget. If you're not careful you'll need 8x the marketing budget. So there's an inevitable pressure to try the typical strategy: design one app, with one name, aimed at the lowest common denominator of hardware. Or design an app that runs great on the hardware used by one-eighth of the market, but looks kind of crappy to the other seven-eighths of the market. And the Windows Mobile folks have seen the result of that approach: At any moment, a team of Apple developers can come along and wipe the floor with your reputation.

<comment><USER3> I understand, and agree with your overall point, and trust me when I say I'm not a Google fanboy or Apple-hater. But I honestly can't imagine any smartphone being released in the future without a proper touchscreen. It's become such an integral part of the smartphone experience, and as you said, completely changes the way a user can interact with a device or an application.

The rest of the divergence in hardware is _not_ a total gamechanger though: the screen resolution/DPI, screen orientation, etc. Those aren't gamechangers like a touchscreen is, and touchscreens are here to stay anyways.

If devices like the G1 and iPhone can sell with a great multitouch screen for $100, then there's no point in selling a smartphone without one, and a consumer would be stupid (IMO) to pay for one without it.

So if we take the touchscreen as a done-deal, then everything else divergent is a non-issue. Android makes it a piece of cake to optimize for them, without having to redesign or rewrite your entire application. And at that point, the variety of hardware is your friend, helping to increase your potential market.

That's all I was trying to get at.

</comment></comment></comment></comment><comment><USER4> It seems to me that Android is really about taking share from Windows Mobile, not the IPhone. Given that, it would make sense to take the multi-platform approach that they have. This article, and the comments within it, seem to simply be "stuff that must be said" given the recent announcement re: Chrome OS.

<comment><USER5> It was never about taking market share from some other mobile OS. Google's main objective here is to put pressure on carriers and handset makers. They need high end phones with good web browsers to become the norm. More people using these phones mean more people using the mobile web (and therefore Google's services).

</comment></comment><comment><USER6> The iPhone _will_ scale just like the iPod scaled. There are a few different models and sizes to fit different peoples needs. The world doesn't need 1000 different phones running Android, and I doubt that's even on Google's agenda. They want Android to be the fabled "operating system for any electric device". Apple hasn't even shown any interest in this business model at all, ever! You could easily flip this article around by saying "Unlike iPhone, Android Runs on Low Quality Products".

</comment><comment><USER7> Clearly misleading. By this definition, Windows "scales" an order of magnitude better than OS X — a statement that, when considered in the classical sense, is, at very least, up for debate.

</comment><comment><USER8> Apple's ad responding to this philosophy:

<http://www.youtube.com/watch?v=fZRcYS88BwQ>

</comment><comment><USER9> Yeah, exactly! Just like a single distribution of Windows can't possibly compete with the thousands of branches of Linux out there.

Oh, wait.

</comment><comment><USER10> And how would one code for all these different versions of Android working on devices with varying capabilities?

<comment><USER3> See my explanation above: <http://news.ycombinator.com/item?id=699223>

</comment></comment><comment><USER11> Personally I would rather have one very well designed phone than a 1000 'cheap plastic' ones.

<comment><USER12> Let a hundred flowers blossom. I'm interested in seeing what devices people come up with, knowing that the OS side of things is a solved problem.

Most of it might be crap, but there are sure to be some wicked ideas.

</comment></comment><comment><USER13> Andy Rubin is the sort of deadwood that will spell Google's doom. What he says is no different from what already had existed on the mobile marketplace for years. It is called Windows Mobile.

</comment><comment><USER14> I see the hype around scaling has now reached so massive heights that even Google is willing to misattribute it to mean things that it doesn't if they think it makes them look good.

That Android over time may get a higher market adaptation has nothing to do with scaling. If I were to take on Google's interpretation here, Symbian would seem to scale better than any other mobile OS, and I'm not even sure what that would mean.</comment>


Mastodon: Add end-to-end encryption API - <AUTHOR> https://github.com/tootsuite/mastodon/pull/13820 <comment><USER2> This work-in-progress feature is meant to replace the current DM system. The Olm library is being used in production by Matrix, although I believe app developers could use the libsignal library in their apps all the same. Please mind that neither Olm nor libsignal are actually included in the PR or used server-side in any way. The API is just key exchange and passing encrypted blobs.

Message franking is a technique used by Facebook in their own E2EE chats that allows them to trust user reports about E2EE messages, otherwise someone could claim they received something abusive and there would be no way to know it's true. Believe it or not, "just block the sender" is not a sufficient solution because while it works for the individual, when a spammer is allowed to run rampant and thousands of users receive spam messages from different spammers regularly it brings the quality of user experience for the whole platform down significantly.

</comment><comment><USER3> From the Mastodon creator:

>For once am not happy about Mastodon being on the HN frontpage. Someone submitted a work-in-progress pull request there. Half the comments are circlejerking about free speech as always, the other half gives opinions without understanding the context of the feature (which is not surprising given that it's a work-in-progress pull request on GitHub and not a goddamn press release).

[https://mastodon.social/@Gargron/104233739773528179](https://mastodon.social/@Gargron/104233739773528179)

<comment><USER4> Funny to see this thread to be complete opposite with a lot of praises, e2e discussions and mastodon onboarding.

I feel that Mr. Gargron has been his own worst enemy at times. Mastodon.social instance is notoriously bad, overmoderated and often down-right abusive. While Mastodon itself in many ways a brilliant project with great dev team and direction it's that just they seem somewhat socially inept/extreme at times.

<comment> S-E-P I agree, Pleroma is better though. Just use that.

Gargron has shown that they do not care much for the community or the greater fediverse at large.

Pleroma also is cleaner code-wise so there's that, more active dev and lightweight relative to mastadon.

not paid by Pleroma btw, i just use it daily and I love it wayyy more then Mastadon

<comment><USER5> Agree entirely, I've managed several Pleroma servers in the past. Incredibly easy to set up and configure.

<comment> S-E-P And you have the guarantee that the dev will actually keep working and refining instead of all the drama mastodon finds themselves in

Pleroma does what Mastodon't

</comment></comment></comment></comment></comment><comment><USER6> What does this E2EE API achieve with something that is public publishing? Is it for private messages? Private reporting to the mods? I saw something in the description about moderation.

Looking at the linked issue, it's for PMs: [https://github.com/tootsuite/mastodon/issues/1093](https://github.com/tootsuite/mastodon/issues/1093)

</comment><comment><USER7> > _specifically the Olm implementation developed by Matrix -- but it should be > roughly the same as libsignal_

I'm all for "many eyes make bugs shallow", but this is somewhat-widely deployed software, and I have approximately 0% confidence (based on my previous experiences with Mastodon releases and code quality) that this will be strong and safe for its first public release. (Happy to be proven wrong, mind you.)

Perhaps this could be done in an official testing fork, and merged back in when actual cryptographers are more confident about it?

The idea of shipping this in the standard Mastodon release cycle is terrifying, and I _really_ hope they don't intend to do that.

Ultimately, from a design perspective, I'd much rather see ActivityPub implementations support good profile deep linking to existing (read: safe) messengers rather than trying to graft e2e onto a federated messaging protocol that happens to support DMs-do one thing and do it well, and all that. (Also: backwards-compatibility downgrade attacks, anyone?) We all know how well previous attempts at e2e encryption of federated protocols went (spoiler: they didn't).

The modern day version of Zawinski's Law of Software Envelopment seems to be that apps will always attempt to expand until they can send and receive DMs. The consequence of this should not be that every app bundles key generation, key encipherment, key backup, secure key distribution, federated key authentication, _and a message cryptosystem_ simply to support e2e DMs. That's (dangerous) madness.

<comment><USER8> At the heart of the issue in the complexity of these protocols is that we want to both broadcast widely and address someone specifically. This is a quandary intrinsic to discussion forums, chat rooms and social media.

And the default is to mash both of them together and make it public. Unsurprisingly, it's a source of toxicity and needs intensive moderation, because a broadcasted address is mostly employed in a narrative sense, with the person at the other end reduced to a character in the story. A timeline creates a space, but in a shared timeline, whether it's a Twitter hashtag or a comments section on a small blog, the space is made by spamming your narrative more often.

With a decentralized, privacy-enabled solution like ActivityPub, there are many tools to reshape the extent of the narrative so that you always own your own space, but the tools themselves are quite complex and pressure our engineering and UX capabilities.

And yet - broadcast by itself is not hard, if done in pull-orientation like RSS. And secure messaging is challenging but mostly solved. I have some unfinished thoughts that perhaps simpler is possible by changing the system's orientation further, because I don't think the current designs are quite it.

<comment><USER9> > A timeline creates a space, but in a shared timeline, whether it's a Twitter > hashtag or a comments section on a small blog, the space is made by spamming > your narrative more often.

Why isn't this solved fairly easily via a digest metaphor? One can imagine many different implementations, but something as simple as "your recent updates appear in a group and that group can't be bumped to the top of people's feeds more than twice a day" already seems better than the barrage of puke hiccups that is Twitter today.

</comment></comment></comment><comment><USER10> Is there a mastodon server that doesn't require email for signup? Throw away providers did not work for me, free email providers require a phone number. It's like signal, the benefits are contrasted against metadata exposure.

<comment><USER2> I'm not aware of one. Unfortunately any server not requiring e-mail confirmation for sign-up would be overrun by spammers (we don't want to add CAPTCHAs because 1) they are unpleasant for real humans and 2) they require loading external resources which is minus points for the user's privacy).

<comment><USER5> You are lying. I have ran many Pleroma servers that do not require email to sign up, and have used Pleroma servers that do not require email to signup. None of them are overran by spammers.

You have forgotten your origins, James, and it bums me out. Email sucks. Requiring email to join a site sucks. Let's cite a popular essay from our old community:

[http://wakaba.c3.cx/shii/](http://wakaba.c3.cx/shii/)

* Registration keeps out good posters. Imagine someone with an involving job related to your forum comes across it. This person is an expert in her field, and therefore would be a great source of knowledge for your forum; but if a registration, complete with e-mail and password, is necessary before posting, she might just give up on posting and do something more important. People with lives will tend to ignore forums with a registration process.

* Registration lets in bad posters. On the other hand, people with no lives will thrive on your forum. Children and Internet addicts tend to have free time to go register an account and check their e-mail for the confirmation message. They will generally make your forum a waste of bandwidth.

* Registration attracts trolls. If someone is interested in destroying a forum, a registration process only adds to the excitement of a challenge. One might argue that a lack of registration will just let "anyone" post, but in reality anyone can post on old-type forum software; registration is merely a useless hassle.

</comment></comment></comment><comment><USER11> Does Mastodon not have a way to search for instances?

<comment><USER12> Most of the ActivityPub-based networks have a "join<service>.org" index of instances --

[https://joinmastodon.org/](https://joinmastodon.org/)

[https://joinpeertube.org/](https://joinpeertube.org/)

Hopefully this is helpful!

</comment></comment><comment><USER13> Look good

</comment><comment><USER14> e2e encryption isn't something you add as an "optional feature", but rather, something that should be in the design from day one, for all communications (mandatory).

<comment><USER15> I feel like this is the goal, but as unfortunate as it is now - that's not the case, and adding E2E encryption of any sort should be celebrated to perpetuate the idea that it's not an option, but a need just like adding authentication isn't an optional feature.

<comment><USER14> >just like adding authentication isn't an optional feature.

As an added note, authentication can be and should, for most cases, be done on a session basis, when establishing the session key (which should also, by the way, be generated with care to provide forward secrecy).

The idea is that if individual messages aren't signed, there's the advantage of plausible deniability to third parties. You know who you're talking to, but you can't take a message go to a third party and claim "hey, this person has said this. See? This message is signed by his key.".

This is the level of privacy generally expected in a conversation conducted within the same room in meatspace, and most people would be uncomfortable with any less than that.

</comment></comment></comment><comment><USER16> Could it be why mstdn.jp is shutting down? Official reason is lack of resource to handle anticipated legal requests but that sounded weird.

<comment><USER17> I was assuming it was due to the sheer volume of loli being posted on that instance. Most instances block / mute it for this reason.

<comment><USER18> The whole blocking situation turns me away from Mastodon. Short of maintaining my own instance, there's no way to be sure I can follow anyone I'd like to, or communicate with them. There's no way to find out from the outside if an instance is defederated.

<comment><USER19> I left Mastodon because the big "traditional"/sanctioned instances started banning other instances they didn't like, specifically Gab (instance full of right-wing people that allows basically anything that isn't illegal).

I had high hopes for Mastodon but whatever, this whole social network thing isn't worth the trouble. Now HN and Youtube are the only websites I visit for entertainment.

<comment><USER20> I had a quick look at mastodon a while ago and saw a few more problems with the model, but I wasn't aware instances could block each other. Maybe some day there will be an even more decentralized alternative (Looking at you, indieweb) where it is up to the user whom they block. I'm also not a huge fan of how mastodon is an implementation, more than a protocol.

<comment> vertex-four I, as a user, am still going to demand that I can join a community where of likeminded people and moderation so I don't have to deal with the overwhelming spam of the internet myself. That's the bit that a number of decentralisation projects don't get - I don't want to have messages by anyone on the whole internet forced into my view (because have you seen how much that sucks?). I want moderation if the day-to-day use of the tool involves coming across a largely random group of people - otherwise it's just a platform for harassment and spamming people with child porn, a la Matrix - and I don't want to perform that moderation 100% by myself.

<comment><USER18> Then what is the point of federation? You just described a centralized forum/microblogging server.

<comment> vertex-four I can pick and choose who my community and moderation team is - that's why I am on the fediverse and not Twitter. I am strongly opposed to having extreme right-wing views (along the lines of "you should be dead for who you are") forced into my conversations? I can pick an instance/moderation team which proactively blocks other instances which refuse to moderate their users according to such basic social norms.

Fact of the matter is that I don't really want to talk to most people on the internet, and I don't want to see what they have to say about me every time I want to see what my friends are up to. I want to talk to my friends, maybe have our wider communities able to chime in, and occasionally discover new people through that. It's not my job to convince random assholes on the internet that I deserve to exist, and it's not useful in any way to see their messages. Blocking extremist free speech instances which promote harassment as a normal part of their operation is... a feature, not a bug.

<comment><USER18> That is a fair point, but what happens when the moderation team deviates from your beliefs? What happens if your instance is declared not-safe? You're effectively exiled from the fediverse, people you follow will never see your toots again.

<comment> vertex-four Then I move instance (probably well before my instance is declared not safe, tbh). It's a feature in Mastodon, assuming my moderation team hasn't decided to disable it - basically, I send a protocol message to my followers saying "I'm over here" and they automatically follow me over there. In a future p2p protocol that's designed by people who actually realise that people exist who don't want everyone on the internet to have a direct line to their inbox (aka none of the current ones), I could simply move moderation team and keep my identity.

It's incredibly unlikely that tomorrow, my instance pushes the needle so far that everyone blocks it immediately. More likely a series of changes in the moderation team gradually pushes things that way and I can change instance before things get bad enough that anyone would block it - and I'd do that because it wouldn't be a community I want to be part of any more, rather than any particular fear about being blocked.

<comment><USER18> I had no idea account migration landed. Your description actually sounds quite reasonable. I guess I was too shocked and burnt by the instance blocking incident. Maybe I should give Mastodon another try.

Just need to find an instance that doesn't block...

<comment> vertex-four Finding an instance that doesn't block other instances, but also actually moderates its users and thus doesn't get blocked, is going to be pretty hard - and also a rather harassment-filled experience unless you fit in with the Gab crowd, I imagine. You could always run your own instance.

Note that the majority of instances that are "blocked" are actually soft- blocked by most instances, meaning you can still talk to people on them if you follow them, you're just not going to find posts from their users otherwise.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER5> Pleroma does what mastodon't

<comment><USER21> Last I checked Pleroma doesn't even have moderation tools, let alone message franking.

<comment><USER22> This is incorrect. AdminFE exist.

</comment></comment></comment><comment><USER23> >An additional layer on top of it is so-called message franking, which allows encrypted messages to be reported to content moderators without compromising keys or message contents ahead of time while also preventing fake reports.

That sounds like the encryption isn't deniable. Personally I would prefer deniable encryption to ability to report wrongthink.

<comment><USER24> What about spam and legitimate abuse? Do you think these things should be allowed to run rampant just because you believe that an admin's decision to not communicate with you is that terrible?

<comment><USER23> > _What about spam and legitimate abuse?_

You can block the spammer yourself. I'm not sure if the feature is about only private communication between two users or in channel, but if it's in channel, there can be bot logging messages. That way the bot's owner still knows who posted what and can ban/moderate as needed.

> _Do you think these things should be allowed to run rampant just because you > believe that an admin 's decision to not communicate with you is that > terrible?_

I have no idea what are you talking about. Are you reacting to what I wrote or to your own projections about my beliefs?

<comment><USER25> If the spammer spams thousands of people, it's a better use of everyone's time if an admin bans it once and for all.

<comment><USER26> There are other solutions to this problem that don't require 3rd party intervention. For example, users could follow each other's block lists.

If Bob spams thousands of accounts he'd quickly get on multiple block lists.

<comment><USER27> Is Bob a verified, known identity, or does he simply create unlimited accounts and continue the spamming or abuse?</comment></comment></comment></comment></comment></comment>


Latest Firefox Rolls Out Enhanced Tracking Protection - <AUTHOR> https://blog.mozilla.org/blog/2018/10/23/latest-firefox-rolls-out-enhanced-tracking-protection/ <comment><AUTHOR> I've installed the latest Firefox and it now blocks by default all the analytics tags I manage (Adobe Analytics, Google Analytics). I understand this can be used by these companies to cross-track users, even though I cannot.

Whilst that's great for the user's privacy, I believe these aggressive practices by Mozilla will only hurt their bottom end. A few sites (Saas) I use already don't perform as well in Firefox as in Chrome and I fear that large companies like Google and Adobe will have now even less incentive in making their platforms compatible with Firefox.</comment>


Ask HN: Name 3 Companies you think will still be around in 500 years? - <AUTHOR> <comment><USER2> Before we answer that, how about naming some companies that existed 500 years ago and are still around today?

<comment><USER3> [https://en.wikipedia.org/wiki/List_of_oldest_companies#1500_...](https://en.wikipedia.org/wiki/List_of_oldest_companies#1500_to_1599)

</comment></comment><comment><USER4> \- Kongo Gumi \- Nishiyama Onsen Keiunkan \- Koman

After all, they've made it this far.

</comment><comment><USER5> SpaceX

</comment><comment><USER6> Fiskars, Nokia, BP

</comment><comment><USER7> small scale biological farmers

</comment><comment><USER8> Roto Rooter</comment>


Lipschitz Continuous ODEs are Pspace Complete - <AUTHOR> http://www.cs.toronto.edu/~kawamura/publ/ode_pspace/ <comment><AUTHOR> I think folks will find this paper and associated slides really interesting because its always fascinating to see to see an interplay between continuous and discrete math</comment>


Ask HN: Help Get Underscore.js Added to Remy Sharp's JSBin - <AUTHOR>

JS Bin[1] is an open source collaborative JavaScript debugging tool built by Remy Sharp.
Underscore.js[2] is a utility-belt library for JavaScript that provides a lot of the functional programming support.
Up vote my github feature request[3] to get two great tastes in one; please and thanks.
-----
[1]: http://jsbin.com/
[2]: http://documentcloud.github.com/underscore/
[3]: http://github.com/remy/jsbin/issues#issue/32 <comment><USER2> This is gonna sound a little snarky, but isn't that the benefit of OS code. You can do add your own features if you really want them.

Edit: Clickification:

<http://documentcloud.github.com/underscore/>

<http://jsbin.com/>

<http://github.com/remy/jsbin/issues#issue/32>

<comment><AUTHOR> not snarky at all. in fact it was what i thought just after hitting submit. but it's php and i was hoping to avoid learning it...

I am in the middle of CoffeeScript, Scheme, AWK, ZSH, and git.</comment></comment>


Ask HN: Feedback for MVP? OneMillionLoops - <AUTHOR>

Hi, we're launching our MVP. Our platform is OneMillionLoops,a crowdsourced platform for loops. You can see a short video explaining our platform at onemillionloops.com<p>Thanks in advance for your feedback! <comment><USER2> Hey, Tom (co-founder) here. Thanks in advance for any feedback you guys can give us! Looking forward to getting some hardcore feedback hahahah :)</comment>


HBOMax pulls Gone with the Wind - <AUTHOR> https://www.wsj.com/articles/hbo-max-pulls-gone-with-the-wind-11591754904 <comment><USER2> While looking up this movie, I just realized that uBlock Origin doesn't block ads on duckduckgo.com: [https://i.imgur.com/mz7wkCh.png](https://i.imgur.com/mz7wkCh.png)

<comment><USER3> Not sure; I don't see any ads, I used the same query as you did. Haven't seen any ads since the time I've been using DDG. Note I have both uBO and uMatrix installed.

</comment></comment><comment><USER4> Companies these days are so scared of the twitter mob. Are they rightly so? As in, does this cancel culture actually hurt sales if you just ignore it? Of course, regardless, it's probably the right thing to do, as there's really no downside to sending a black lives matter email, or getting rid of one movie.

<comment><USER5> Has the Shitter mob ever actually achieved anything when it comes to taking down companies?

There are scummy companies all over the place (telecoms providers, Uber, etc) and despite the _consistent_ bad press and dissatisfaction they're attracting I don't see them suffering much.

<comment><USER6> They haven't taken them down. What they've done is much worse: made them "woke"

</comment></comment></comment><comment><USER7> I'd really like to watch this but couldn't commit to all those hours.

<comment><USER8> It's worth commiting the time to. I think you can objectively view content and enjoy the character depiction of selfish Scarlett without drowning in the pseudo-glorification of plantation life that was rife for the story's timeline.

<comment><USER9> There's a lot more going on that pseudo glorification of slavery and plantation life. It's pushing the mythos of that life, how the black people behaved like children, there were many hollywood movies of the time that perpetuated those stereotypes. The story of the maid and her reactions and behavior, like she wasn't quite an adult or real person.</comment></comment></comment>