HNHacker News
TopNewBestAskShowJobs

zorga

153 karma · joined November 12, 2018

submissionscomments
zorga··on Complete guide to GDPR compliance
Which is fair; I shouldn't have to ask for consent from the user to have analytics on my site. Having analytics is a necessary part of running a web app successfully.
zorga··on Complete guide to GDPR compliance
Simple, block the EU, problem solved.
zorga··on Mobile customer location data is ending up in the hands of bounty hunters
You're putting the cart before the horse; until you change the government and thus the bail system, we need bondsman. Making bounties illegal won't stop judges from setting bails people can't afford and is thus not a valid solution.
zorga··on Mobile customer location data is ending up in the hands of bounty hunters
No one said anything about the federal government; state governments are just as absurd and just as divided.
zorga··on Mobile customer location data is ending up in the hands of bounty hunters
Most other countries don't have our intractable political system; bondsman solve a problem, they let people get out of jail when the government is being absurd.
zorga··on Mobile customer location data is ending up in the hands of bounty hunters
It's essential in a system where changes to how government operates largely aren't possible due to partisan divides; bondsman are a free market solution to absurd government policies on bail. When you can't fix the government, you go around them.

btw, that wasn't me that down voted you.

zorga··on Mobile customer location data is ending up in the hands of bounty hunters
No we don't, it's a terrible law that unnecessarily burdens business and just makes it even harder to run a business. We don't need any more legal hoops to jump through; it's not the users data, it's our data about the user. The notion that data about you belongs to you is frankly absurd, just because the EU hopped on the crazy train doesn't mean the rest of the planet should follow them.
zorga··on Mobile customer location data is ending up in the hands of bounty hunters
> How about we start with not allowing people to legally kidnap individuals?

Then you'd have to give up being able to afford bail; without bounty hunters, bondsman would have no recourse when you didn't show up to court and thus not much incentive to loan you bail money. You're not being legally kidnapped, you agreed to those terms when you borrowed the bond money for bail.

zorga··on IQ is largely a pseudoscientific swindle
He's correct, Taleb is a crank troll, not an expert in the field, and is talking entirely out of his narcissist asshole. There's no solid argument there at all.
zorga··on IQ is largely a pseudoscientific swindle
Taleb doesn't know what he's talking about, he's not remotely an expert in the field; he's just a crank trader that snatched a bit of fame with his concept of the black swan and he's very bitter he isn't more famous than he is, so he lashes out like the raging narcissist he is and continually pokes his head into fields he knows little about and calls everyone there stupid. Ignore him.
zorga··on IQ is largely a pseudoscientific swindle
> Being “smart” implies there’s a set of “un-smart” kids that don’t have the same fitness or goodness, and since it’s innate, they’ll always be that way in an ungifted underclass.

Which is true. You're against teaching your children the truth?

zorga··on IQ is largely a pseudoscientific swindle
> A brilliant mathematician like Terence Tao may still very well consider themselves a dullard when faced with, say, the musical intuition of a piano virtuoso, or the effortless foresight of a chess grandmaster, or the rapt attention commanded by master storyteller, or the social intelligence of a smooth-talking Jobsian entrepreneur.

I'd bet all of those people would score high in IQ.

> For these kinds of intelligence, the IQ test is ill-suited

That's not what the science tells us.

> which is fine as long as we don't conflate IQ with the be-all end-all of intelligence

There is only one G. There's little to no evidence in support of the theory of multiple intelligence's; it's not really science, IQ is actual science with lots of evidence to support it.

zorga··on Please do not attempt to simplify this code
> do other HNers also feel that a high comment:code ratio probably indicates quality?

Nope, imho code with lots of comments is generally crappy code. It's littered with comments to explain the sloppy code they couldn't make clear because they're bad programmers. Good programmers use few comments, write simple clear code that doesn't require explaining, and leave comments about why something was done rather than simply trying to explain what the code does.

Code never lies, comments often do; don't trust comments that explain the code.

zorga··on Do I Offend?
I didn't attack anyone, what a preposterous accusation. I was perfectly civil, you're wrong dang.
zorga··on Do I Offend?
> I've witnessed it repeatedly, and I have never seen it succeed in convincing those witnessing it to adopt the view of the person doing the mocking. Nor has it succeeded in leaving a positive impression on me when I have witnessed it.

You are in a bubble of like minded people, your anecdotal experience does not apply to all people.

> The only kinds of people that react positively to witnessing mockery are the types of people that political movements would do their best to avoid: people that take pleasure in witnessing the denigration of others.

That's well near half or so of the voting base; try and step outside your own limited experience, everyone isn't you. Trump supporters for example very much respond to mockery, they liked that Trump mocked the other republican candidates in the primary and were swayed to vote for him based on what appeared in their eyes to be a strong performance in the debates with his peers.

Frankly, you're giving people too much credit and failing to recognize that much of the population isn't very mature. Of course it's childish, that doesn't mean it doesn't work. You don't live in a country full of mature adults.

zorga··on Do I Offend?
Mockery is otherwise known as peer pressure, and it's quite effective to make an argument clear to those on the fence who don't feel strongly either way, particularly when many are mocking. To say mockery is not effective is to claim that peer pressure doesn't work, and I'd assert that's just wrong.

Humans are social animals, they don't like being mocked, and when enough people make fun of a particular position, people will avoid taking that position.

zorga··on Third-wave antiracism makes sense, but it's a dead end
> when a white person starts arguing about IQ scores, which is an explicitly white supremacist argument

No it isn't. IQ scores are a perfectly legitimate thing to debate, and whites don't top that scale, Jews do, followed by Asians. Calling this a white supremacist argument is itself racist. And no it is not uncontroversially accepted; that you think it is shows you're in an ideological bubble and have closed your mind to the fact that other intelligent people disagree with you and it's not because they're uninformed. In fact IQ tests still stand as the single strongest predictor in all of psychology, it is the gold standard of indicators. It is those who doubt IQ who are in the minority and who are apparently uninformed.

> The author complains heavily about how "SJWs" call people White Supremacist too often

They do, as you've just proven, the term is thrown around constantly for completely invalid reasons exactly as you have just done. You've just proven the authors point.

zorga··on Do I Offend?
> What does it achieve to try to offend?

Mockery is quite useful to onlookers.

zorga··on Do I Offend?
In a free society, it's always OK to offend; offense is not given, it's taken. The offended person chooses to be offended, they are responsible for their own emotions.

> By that logic plenty of people are justified in offending gays, transgender, immigrants, etc.

Being offensive doesn't require justification, it's always OK; that's what free speech means. If you are not free to offend, you quite simply are not free. Gays, transgenders, and immigrants, and all other people might need to remind themselves the simple things children learn, words are not violence and can simply be ignored. If you're not mature enough to ignore a loudmouth trying to offend you, you are the one with the problem; you are not mature. As they say, prepare the child for the road, not the road for the child.

zorga··on My Stepdad's Huge Dataset
> Yes, but if that calculus were true, tube sites (which display viewing figures) would be dominated by amateur content and they're not.

That's not a logical conclusion, so no. The market demonstrates a clear preferences for free content, that's what tube sites show; that professional content is popular when free does not demonstrate that professional content matters more than free content. That professional are having such a hard time making money in fact demonstrates the opposite, the market cares more about free than about quality. As long as people are willing to make free porn, which they are, professionals will always struggle to make money. The same is true of much art, music is another example of exactly this phenomenon.

zorga··on Bye Bye Mongo, Hello Postgres
> Any language with named tuples has a type system that is sufficiently expressive to handle joins without any sort of impedance mismatch

Incorrect. Named tuples will give you nothing back but a result set; the impedance mismatch refers to the mismatch between result sets and a domain model; getting tuples back doesn't remotely address this problem. I'd suggest you don't understand what the objection relational impedance mismatch problem actually is.

It's not a type system problem, it's fundamental mismatch between the relational paradigm and the object oriented paradigm. If a domain model has customers and addresses, and you do a relational query that joins the customer table and address table to return only the customer name and address city, the resulting set (name, city) doesn't map to the domain objects and isn't enough data for the domain model to load either of those objects which may contain various business rules. This is what the impedance mismatch refers to, relational projections of new result sets simply do not map to the OO way of doing things. Joins that create new projections are a relational concept that have no place in the object oriented world view: objects don't do joins, and object queries don't return differently shaped objects.

Hacks like partial loading of domain objects are attempts to mitigate the impedance mistmatch, but they do not solve it; they cannot solve what is a fundamental difference between two different ways of seeing data. Data is primary in the relational model and its shape can change on a per query basis, this is incompatible with the object oriented view of the world in which whole objects are primary and data is encapsulated and thus hidden.

The object relational impedance mismatch does not refer to a language problem, it refers to a difference in paradigm between OO and relational. It exists in all language regardless of the languages abilities and it's not a problem that can be solved, only mitigated, if you want to use both paradigms. You can solve the problem by avoiding using two paradigms, by either bringing the relational model into the application and not using OO or by using an object database.

zorga··on My Stepdad's Huge Dataset
> Performers like getting paid because they like to eat and not be homeless, and suggesting that most of them don't want to be paid is simply not true.

He suggested no such thing, you should try reading more carefully.

> Amateur porn is absolutely not the default, as even a cursory glance at porn sites reveals.

He also never claimed that.

What he did say was that there's enough amateur exhibitionists who would do it for free and don't care about getting paid to more than satisfy the demand for porn and that's why professionals are going to continue having a hard time being paid.

zorga··on Bye Bye Mongo, Hello Postgres
> Have you ever implemented an ORM? I did.

Several actually, which is why I know what I'm talking about; I've explored this area extensively. When Fowler first released PEAA I dug and went nuts and spent years coding up and exploring all the possible approaches and figuring out which ones I liked and why and which ones I didn't and why.

> Same thing with high-level database abstractions - they're all either leaky in subtle ways, or they constrain you to extremely basic operations that can be automatically implemented efficiently on everything (but e.g. forget joins).

If you're doing joins in your ORM, frankly, you're doing it wrong. Most ORM's do it wrong, they try and replace what a db does best; the right way to do it is to keep joins in the db. The role of an ORM when used properly is to map tables and views into objects and allow querying over those tables and views with an abstract query syntax. Joins belong in a view, not in code. It's called the object relational impedance mismatch for a reason, you have to draw a line in a reasonable place to get anything reasonable to work well and putting joins into the ORM is crossing that line and is why most ORM's utterly suck. Joins aren't queries, they're projections; put the queries in the code and the projections into the database, this works perfectly and lets each side do what it does best. Queries are easily abstracted, projections are not, projections don't belong in the ORM.

zorga··on Bye Bye Mongo, Hello Postgres
> In practice, the way you write the query matters quite a bit.

Which is hidden in the query interpreter for said db implementation. Each implementation can break down that abstract query into whatever implementation specific query works best in that database.

There's always some abstract way to represent it that doesn't require vendor specific knowledge nor does it remove the ability to apply vendor specific abilities.

Look, I just don't agree with you, I agree with OP. Db specific stuff should be hidden from the domain layer by an abstract query representation and an abstract transaction representation to be plugged in at a later time.

zorga··on Great Pacific garbage patch cleanup fails to collect plastic
> So do you object to mandated nutritional labels and ingredient lists?

Absolutely. Do I like them, sure, and I'd happily avoid any product that didn't provide them willingly.

> To say if you want to enter food and food stuffs into the stream of commerce you need to include nutritional information and ingredients, is that really authoritarian?

Yes, it is, by definition. Forcing a vendor to do anything is authoritarian; the question is is it justified. Forcing someone not to lie, yea that's justified because lying is fraud. Forcing them to add something to a label, that's just authoritarian. Let the market kill them for being stupid. If the market wants nutrition labels they'll do it voluntarily or their competition will.

> I personally like consumer rights and don’t pretend there is a level playing field between consumers and corporations. I think it’s a common sense approach to the reality companies put nasty shit in food from preservatives to various types of sugars that consumers base buying decisions on and it’s not authoritarian to require those disclosures...at least you know where we have a quasi democratic process in the form of a constitutional republic.

It is authoritarian by definition; though it may be justified authoritarianism in response to bad actors in the market. Not all authoritarianism is unjustified, markets do fail. However, nutrition information being forced on all isn't remotely the same as forcing only some to label something GMO as if that status has any scientific validity whatsoever. The non-GMO movement is superstition and ignorance, not science. Superstition should not be forced onto vendors.

> It’s like saying it’s authoritarian to require doctors to inform patients about their options.

It is. You seem to not know what that word means. If the government makes you do something, it is by definition authoritarian.

> How dare these authoritarians dictate how doctors practice medicine.

Yes actually, you should be very concerned when government decides it knows better than doctors about how to treat patients. But you'll note the legal requirement on this actually refers back to the doctors norms, they're only required to inform patients of things that a reasonable doctor would inform them of.

> Did I say I was good and anyone else was bad.

I didn't say you said it; I said watching you pretend to be, that means that's how your coming off to me. That's my opinion of your behavior.

zorga··on Facts about smell (2014)
If you have to even ask, throw it out.
zorga··on Great Pacific garbage patch cleanup fails to collect plastic
And they're correct to object, the notion that we need apply authoritarian control over labels is absurd and wrong. You don't need to force GMO products to be labelled when non-GMO products are perfectly free to advertise that on their label.

It's one thing to say you can't lie on a label, that's fraud, but it's wrong to mandate what should be on a label and what words they must use. The GMO moniker is a smear intended to take advantage of consumer ignorance to scare them away from perfectly good food. There's no real evidence against GMO, it's just fear mongering. Most of our food is not natural and hasn't been for a very very long time.

> if consumers would want to know so they could avoid a product, as admitted by the lobbiest, shouldn’t be entitled to know?

They can already know now, by looking for companies voluntarily labeling their products non-GMO. There's more than one way to reach that goal, one requires forced compliance and the other allows freedom; the freedom approach is better. Forcing your competitors to label their products as GMO to take advantage of the irrational fear and superstition of the public is just plain evil.

It's funny watching people like you pretend you're being the good guy when you're really the bad guy trying to make everyone else behave the way you want them to rather than simply choosing to do business with the people who are the way you want them to be.

Here's an idea for you and everyone who thinks like you; worry about your own behavior and stop trying to tell everyone else how they should behave. You're not forced to buy their products, if you don't like their labels, take your business elsewhere. That's how things work in a free country.

zorga··on Bye Bye Mongo, Hello Postgres
That objection doesn't make sense. Queries are nothing more than a tree of predicates, how the backend end uses those predicates is not relevant to the API of specifying the predicates. Things like indexes whether in Mongo or in SQL are implementation details that can easily be hidden and not infect the API. You can interpret the tree of predicates into a SQL where clause or into a Mongo index search.

The OP is correct, your app can speak to an internal API without the underlying database infecting your domain code. That in no way implies you can't take advantage of the best of each database.

zorga··on Bye Bye Mongo, Hello Postgres
Why? Seriously, JSON is lame, it's an idiotic trend, a fashion from the UI that's infected the back end for no gain whatsoever for anyone not using JavaScript. XML is better and we've just watch JSON slowly reinvent everything XML already had.
zorga··on Refactoring Large Functions
Function abstraction is not only about reuse, it's about separating the high level details from the low level details. Separating the flow of logic, from the details of each step, is always valuable and should be done right from the start; replacing an inline implementation with a function name with args is abstraction even when it's not ever reused and it greatly improves the code.

Big methods that do many things inline with commented sections explaining what the section does, is bad programming. It allows variable reuse and hidden weird dependencies between what should be independent chunks of code in independent functions. It also forces the programmer reading it to always work at the lowest level of implementation rather than a higher level of abstraction where he can see the flow without needing to see all the details of each step. If you can point to a section of code, and put a comment on it saying it does X, then it belongs in a function named X and the comment needs deleted. Comments that explain what code does are a code smell. Comments are for explaining why, not what.

There shouldn't be any big functions to begin with except in a few rare cases like switching on a character or something.

← PreviousPage 3 of 5Next →