Hacker News new | past | comments | ask | show | jobs | submit | _wztl's comments login

https://throttlehq.com provides a service similar to what you're looking for. The free tier forwards daily "digests", but the paid tier will do direct forwarding using your own domain. I definitely think there's an opportunity for a similar open source self-hosted solution.


It seems to me like you and the author agree about what good OOP should be (encapsulated state, message passing), except they argue that "traditional" OOP is not useful, and you see Traditional OOP as Good OOP. In fact, "good" is not used a single time in the article so I don't see how they could be constructing a strawman against it. I'm guessing the author is using "traditional" in the sense of what is traditionally taught, which in my experience was closer to Java beans and FactoryFactory classes. In other words, a terrible misinterpretation of Alan Kay's ideas.

If you actually look at the framework they are presenting, it pushes the developer towards many of the "good OOP" points you made. So I'm not sure exactly what you're arguing here.


>, and you see Traditional OOP as Good OOP.

No, my comments don't agree with that.

In fact, I tried to point out that his "traditional OOP" examples are incorrect OOP and therefore, a straw man to be arguing against.


the swell thing about "OOP" is how ill-defined and vague the notion can be. just like "correct OOP" and "incorrect OOP".

as a consequence, discussions can go back and forth, frequently resulting in little but gymnastic displays of equivocation and red-herrings. when the dust settles, surprisingly little communication has occurred.


"OOP to me means only messaging, local retention and protection and

hiding of state-process, and extreme late-binding of all things. It

can be done in Smalltalk and in LISP. There are possibly other

systems in which this is possible, but I'm not aware of them."

http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht81Ht/doc_kay...


That is not the definition of OOP the author is using. He made it clear what he meant by OOP; a paradigm seen often in production systems. Productive discussions start by accepting given definitions and arguing against the resulting points, not by arguing that the definitions are wrong because they don't match the exact form defined by someone somewhere.


No, the premises always need to be examined, not accepted at face value.

If the author is using a wrong definition as a starting point, the rest of the argument is largely pointless...or must be explicitly marked as a hypothetical/counterfactual.

"I define the earth as being an infinite flat plane, from this it follows [for the real world] that..."

Well, no, the earth is not an infinite plane, even if it kinda looks that way, was long believed to be that (maybe minus the infinite) and apparently there still are people who believe that.


There is a difference between definition and assumption. An assumption says that something about the world is true. A definition just says what meaning you will intend by a word in the current scope.

When you define OOP, you aren't saying anything about the real world, just stuff about the words you will be using within the current context.


> In fact, I tried to point out that his "traditional OOP" examples are incorrect OOP and therefore, a straw man to be arguing against.

You successfully replaced his straw man by your true Scotsman.


>your true Scotsman.

I don't think "OOP" is an unreachable shared understanding such as the "No True Scotsman" applied to debated concepts like "communism".

Despite the different vocabulary and emphasis of Alan Kay (Smalltalk) and Joe Armstrong (Erlang) about OOP, there is still a commonality of understanding there. The OOP concepts expressed in Objective-C, Borland Delphi, and other GUI toolkits share that understanding of encapsulated state with message passing (methods) via a coherent "public interface".

The author was not arguing against that "shared understanding" of correct OOP. Instead, he highlighted bad coding practices (albeit very common ones), then labeled it as "traditional OOP".

Yes, there is a ton of misunderstood and misapplied programming practices that others label as "OOP". That's the fault of the people doing the mislabeling and not the fault of OOP.


>I'm guessing the author is using "traditional" in the sense of what is traditionally taught

This is correct and it's my mistake for not making this more clear.


Seems that OOP is going the same way as Agile, and no one can come up with a consistent definition of what it is these days. Encapsulated state and message passing are not exclusive to the OOP paradigm are they?


tl;dr -- Alan Kay emphasized the message passing nature of method dispatch in Smalltalk.

A traditional OOP approach would have much of the functionality taken out of the player objects, using them simply to hold state.

Sounds like C structures. Back in the day, we were always urging and cajoling programmers to stop thinking this way and think more in terms of Objects that knew how to do things in response to messages.


> Why can't we just be honest about it? "Welp, this is what we've got. We shouldn't be surprised, since this is what happens when we design by committee. Now let's make the best of it."

Lots of people are being honest, this article included. Don't disguise your different opinion as "the truth". Not everything can or should have a consensus.


We've tried node.js as a managed VM a few times before this. One of the biggest pains is logging. Despite documentation implying that JSON logs are supported (can't find this anymore, maybe it was removed), we still haven't been able to get GCP to read JSON logs. You lose out on all of the nice filtering and request grouping provided by the GCP log viewer.

The issue is here[0] and it would seem they still haven't addressed it a year later.

[0] https://code.google.com/p/googleappengine/issues/detail?id=1...


There is a very real problem here, and you don't have to search hard for it. An entire sub-population of this country was disproportionately sentenced to felony convictions. If we don't recognize that for what it was, we are condemning a generation of black people to just "suck it up, because we're thinking about the future now". That is a mistake because these people are part of the future, and they deserve a fair chance in it. Laws preventing felony offenders from finding work in their field only make sense if the felony conviction actually made sense. Preventing non-violent drug offenders from finding work in the burgeoning drug industry is as nonsensical as the offense they were charged with.

You can't just hit a reset button on racism and say all our mistakes our behind us, now we're all on the same level. Especially not when those mistakes were felony charges with lifelong consequences.


Agreed. I don't think we should ignore the problems, I just think we (and especially the heavy-influencing media) should be much more intelligent about crying "racism" when the issue was not a racist one to begin with.

There are far too many publications going out that overreach and point out minor details to make something seem racist or sexist. It's total bullshit and out of context.


If a felony means you can't work in an industry, it's a race issue. Felonies are associated with poverty, and for historic and social reasons poverty is associated with being black. Just because they didn't say "sorry we can't hire you, you're black" doesn't mean it doesn't further the cycle of poverty.

I'm not wagging my finger at the weed places. I get their logic, they're running a business that's already on shaky ground... avoiding any employees who might increase that risk makes sense. I'm wagging my finger at society for providing another example of how we keep perpetuating systemic racism.


I read the entire article. The man was duly convicted of a crime in Oklahoma. He broke the law, regardless of what anyone thinks. Fast forward to when black people owning property in certain places is now legal and this guy wants a piece of the action, but...he cannot legally do so because he fled from his master. Should we undo his conviction? No. He was tried fairly and found guilty based on the laws of the time and place. His fault. His color has nothing to do with it, and quite frankly, I'm sick to death of everything in this country now revolving around the blacks, sodomites, and women.

Laws are made by humans, and there is no guarantee that they are fair or ethical. The man in the article was caught with a couple cigarettes filled with a shredded plant (the illegal one, not that legal yet much more harmful plant). He served a felony for it because we instituted a draconian and racist class war under the guise of "saving the children from reefer madness". This country is finally instituting some sensible drug legislation, but the people that were most disproportionately affected by the War on Drugs are now disproportionately locked out of this new market. That is neither fair nor ethical.


Fair from what perspective? I'm a conservative who hates drugs, homosexuality, feminism, and a whole host of other ills that now plague this once-great nation. We are now awash as a nation in sea of immorality, relativism, and moral corruptness. We have no moral compass. I've said it before and I say it again, America was at her best in the 1950s. Since then, we've lost our conservative moorings to immoral behavior, lifestyles, cheapened sexuality, illicit drugs, what not.

You say "market" like selling dope could be a good thing. If it's a harmless plant, as you say, why have any regulations concerning it. Tea is a "harmless" plant, and as such, I can send my children into Walmart and purchase it without so much as a by-your-leave from the cashier. Harmless plants don't need sensible regulations because harmless things don't need regulating. Morality again, gone astray. I miss my old-school America where Americans were conservatives.


HN isn't the place for strident political rants, so please don't post them here.

Thoughtful conversation is what we're going for. It's possible to have that about inflammatory topics, but it requires a conscious effort at respecting those with opposing views and meeting them where they are. That's not always easy—especially when others appear wrong and disingenuous—but if you can't do it, it's best not to comment until you can.


> If this were true, then taxes would need not be compulsory, as it would be in an individual's best interest to pay them.

In the prisoners dilemma, it is in both prisoners' best interest to defect, but that outcome is undesirable for both of them. In the same vein, it usually isn't in an individual's best interest to invest in their community, because they could gain more individual wealth by not sharing it with the people around them. But that is a great way to create a few very rich people and a lot of very poor communities.

So do Scandinavians pay high taxes for selfish reasons? Obviously they don't think that paying higher taxes for universal health care will make them richer than their neighbor. Say you vote to lower the tax rate and dismantle universal healthcare. Suddenly you have a few extra thousand to invest in the market each year. That move was certainly in your best interest. And then your house is foreclosed because a purely random onset of cancer cost you two hundred thousand dollars in medical bills. The definition of "best interest" has changed quite a bit.

People are really bad at making long term decisions, about themselves[0] and their community[1]. Compulsory, high, and progressive taxes certainly sound like "we know what to do with your money better than you do" and that is hard to swallow. But when you consider them in the context of game theory, it's more like "we can achieve more together than alone".

That being said, it will always depend on the trustworthiness and efficiency of the government, and that is a very difficult thing to achieve. Fortunately for the Scandinavian countries, they seem to have it pretty well figured out.

[0] http://www.forbes.com/sites/maggiemcgrath/2016/01/06/63-of-a...

[1] https://en.wikipedia.org/wiki/Flint_water_crisis


How is that outcome undesirable for both of them? On the contrary, the option of collusion in the prisoner's dilemma is desirable for neither of them.

The prisoner's dilemma only serves as an example to prove that there exists a situation in which collusion can yield an optimal result for a given metric (i.e. aggregate jail time). Nobody denies this. You have yet to make the case for how this applies towards any of the topics discussed. Are you saying that aggregate utility/welfare/health is optimized by having universal health care? If so, what specific metrics are optimized and by how much? What about the costs associated with doing this? Are the benefits greater than the costs? If so, how is this determined? If you want to make these claims, the burden of proof is on you.

As for your hypothetical, I am not advocating that Scandinavian countries suddenly abandon universal health care. I am simply refuting the points made in this article. If you want to have a discussion about the how the less fortunate would have health care in a free market, I am happy to oblige.


The double defection outcome is undesirable because they each serve 2 years. The double collusion outcome is desirable because they each serve 1 year. The other two options are more desirable for each prisoner, but would never happen. Either they can't trust each other and both defect, or they can trust each other and both collude.

Likewise, taxes paid for selfish reasons cannot necessarily be optional, as you suggested. If the tax is optional, you cannot trust your fellow citizens to pay it, and therefore you won't pay it. But a compulsory tax removes that distrust.

My point is mainly that you can be selfishly motivated but still require consensus. The author supports Scandinavian policies not (entirely) because it helps everyone else, but because it helps themselves. Yet they still recognize that everyone must participate for it to help anyone at all.

I'm not trying to make any claims about how efficient a socialist system is. Simply arguing against the point you made about paying optional taxes.


I think you misread the parent. They were saying that specifically family care is foisted on women (more often). In just the previous sentence they assert that men face an equal but opposite pressure.


You seem to be out of date. npm 3 uses a flat directory structure, only nesting dependencies when there are two different versions.

That misinformation aside, all package managers are agnostic about how large your dependency tree is; the large trees are purely a consequence (or choice, depending on your outlook) of the community. Could you imagine a package manager telling you you're using too many or too few dependencies? If you want fewer dependencies, use fewer dependencies. npm won't get in your way.

Speaking of the community, it is primarily what people like about node and npm. Sure, there are lots of bad packages. That's a side effect of javascript being the lingua franca of the web. Everyone and their grandmother is writing npm packages, so of course there are going to be a lot of bad ones. _But there are also a lot of good ones._ npm has driven web development forward at such a fast pace, I wonder how anyone can't appreciate what it's done.

Finally, some stats: ~230,000 packages, ~3,300,000,000 package downloads last month. That is a lot of users for something fundamentally broken. I can only wish to work on such "broken" software.


I agree npm criticisms are more about the way packages are bundled than the manager itself.

To your last point, the javascript ecosystem can have a lot of users and be "broken" at the same time. I think that is a large reason why people hop around to new libraries so much.

"Well what I have now sucks, maybe this new thing will work better. (2 days pass) Nope! What else do you have for me this week?"


Argument ad populum.


I've loved using 1Password for Mac, and the Android app is pretty nice too. Unfortunately, 1Password for Windows has always lagged way behind. I wish it got some more attention, because the experience and feature set is so inconsistent between platforms that it really makes me scratch my head sometimes.

Really happy to see that this is a free upgrade, however. I've got plenty of loyalty for them.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: