jkeisling/hacker-news-corpus-2007-2022 huggingface dataset:
> The alias is just adding confusion. If I see such an alias in code, I would wonder where else that function is used in the function, and be confused that it isn't

You'd be confused once or twice, then you'd learn the technique and you'd stop being confused. Every code pattern was unfamiliar to you at first. And confusing, until you internalized it. It's unrealistic to assume that you can ever stop learning new patterns - try switching to another language and you immediately have dozens of unfamiliar, confusing patterns to learn. (it gets better after a certain amount of languages known (like https://klibert.pl/articles/programming_langs.html) because you start noticing meta-patterns)

My C is rather rusty nowadays and using function pointer here may not be the best option, but as someone else said, there are other language tools for doing this kind of aliasing, like #define. I'd go for function pointer probably, because it reveals not only a name, but also a type of function and it's guaranteed not to escape the current scope (unless explicitly returned) while #define has no knowledge of scopes at all. In languages which support real macros, and preferably lexically scoped macros (like Racket) I'd use those. In languages with closures and first-class functions I'd probably do it in yet another way. But in general, if I find myself working with a name so long that it makes it hard to spot other names on the same line I will alias it locally.

Have you read http://shop.oreilly.com/product/9780596802301.do ? It's a good, short book on the topic and it discusses exactly this issue at length in one of the chapters.
Respectfully (very respectfully, because your book still haunts my shelf like a specter of how little I understood what was happening to my brain when I took Quantum Computation...) I disagree. At least in part.

The ideas you point out are not at all easy to have in the first place, they also, I think, required proper execution to bring them to fruition.

Now, Adams is speaking much more to, I think, artistic creativity than mathematical creativity, but that first blush of an idea which starts with "What if I..." is the same and requires a carefully executed (but wildly different) follow through.

Imagine the scenario where some guy, say Joe, said to Turing, "What if a machine did it?" to which Alan goes through the effort of building the formalization of the machine. But Joe comes back to say "Well, that was my idea."

To come back to my partial agreement. In retrospect, people looking back and may tend to think "well I could have thought of that." And yet the necessary background to effectively wade through the ideas that rage through ones head as he thinks about a problem is non-trivial.

Perhaps that's true of either process. When a writer takes what appears to be a really lame idea and says "I can make that work" he or she has probably already, automatically, in the back of his or her head taken a few steps imagining how it would execute.
People will die. Just like when more people died when cars didn't have safety belts and windshield wipers. Things will go wrong. We will fix them (eventually).

When people list problems, I see temporary obstacles. Even mountains can be overcome: http://www.odditycentral.com/news/dashrath-manjhi-the-man-wh...
Nope. That's correct as well. Recursion is a much more elegant way of doing it. :-/
I think you are conflating "low food security" and "very low food security" (the article probably should have been more clear on this point).

http://www.ers.usda.gov/Briefing/FoodSecurity/labels.htm

As for "meeting your daily calorie requirements", we are discussing people who are already exceeding them. Such people can either a) consume less and save money or b) consume the same dollar quantity of food, but substitute low calorie items for high calorie items. I.e., a person getting 2500 cals/day who needs 2000 can either go from 5 to 4 big macs + more money, or go from 5 big macs to 4 big macs + 1 salad.
Implying that domain squatters are scumbags was this much of an assault on your ego?

If you reserve lots of domains and wait for someone to want one of them so bad that he's willing to pay hundreds or thousands of dollars, that makes you a scumbag.

It's that simple, and it doesn't matter if this specifically falls under whatever definition of "cybersquatting" you want to use.

> As far as doing nothing, they 'do' something. Most have nameservers and resolve to something.

You can't be talking about "parked" domains that resolve to a page full of shit, right? Please tell me that wasn't what you meant.

> As far as demanding payments. That's funny, you want something but don't feel obligated to pay.

Seriously? We do want to pay. We just want to pay the normal price for a domain, and not whatever outrageous amount you feel like demanding for it. Feel entitled?! What the.. Yes, most of us feel "entitled" to being able to buy a domain at market value.

> I think first-come, first-serve is the least worst option and also is in line with the spirit the internet was created. Allowing anyone to compete at minimal cost.

By "compete", do you mean allowing anyone to compete in an auction for a domain you have, and others want?

> If you really cannot come up with a name or put up some money and buy a decent name perhaps you need to rethink what you're doing.

As I said, it's really freaking difficult. An ideal domain name is a .com that's somehow related to your product/service and consists of one or two words in English, maybe with a clever twist. These are the ones that have practically all been taken by scumbags like you.
Wow... you got... erm. something very different than I did.

function mapTree(tree, fun) {
// apply function to tree.value, then recurse (needs javascript.map)
if (typeof tree == 'undefined') {
return null;
}
return {
value: fun(tree.value),
children: tree.children.map(
function(tree) {
return mapTree(tree, fun);
})
};
}

//////////////////
var numTree={value: 42,
children: [
{value: 43, children: []},
{value: 44,
children: [{value: 95, children: []},
{value: 1, children: []}]}
]
};
var count=0;

mapTree(numTree, function(c) {
count+=c;
});

alert(count); // => 225
omg fun!
I strongly disagree. For many backends/purposes, SQL is really the thing doing all the real work and the backend's just some fancy authentication and validation layer.

Stick close to the technology doing the heavy lifting.

If people abstract away SQL too much they just start reimplementing things in buggy underperforming code, using 1000 lines of Go or Java or whatever what should be done in 20 lines of SQL.

Also, don't get med started on people thinking they can abstract away tye database for testing. The automated test suite should always include the real database you are working against and all queries executed. I will never write a backend again without testing against the real database (whether sql or nosql).

Some people justify abstracting away the database saying "one needs to be able to switch to an arbitrary storage engine". Well..storing things is probably the main purpose of your backend. I sometimes turn that around and say, "I want to write things in SQL so that I can easily change what language the backend is written it".
futures have a lot of gottyas that make them hard to replace. for example, where and how you initialize them matters
> While your friend, who did nothing for 5 years, maintains the same standard of living that you do.

Honestly, is this such a bad thing? Why do we incentivize innovation by promising people a basic standard of living? We reward people who take risks with something better than that anyways, so I see no problem with giving people not willing to take those risks something lesser than that “for free”.
There will come a time when we can only view the most interesting wildlife that was common a hundred years ago only in pictures and movies. Super sad. As a kid I had an encyclopedia of all the animals, not a kids book but a pretty serious book with a page per species. I wonder how many of those that were still around back then (1975) are gone today. Probably not a happy answer to that question.

Koala's still stand a chance of survival if humanity wishes it to be so.
> we keep wanting poster boy animals rather than just general, sanitory debate around nature conservation.

Same here, but I also can't disagree because if we don't get the population a little enraged and hyped up about it then there will be no pressure on the politicians. At least this is the case in the US where oil/gas/mining lobbyists continue to have protected lands changed to unprotected so they can rape and desecrate it for profits.
Drop-in? Is there a compatibility layer for the totally different templating systems?
It's not very good, very basic and naive (but works!)

https://gist.github.com/peterc/b325cdea7561528c506f073f47741...

The actual turning the JSON into HTML takes place on Netlify. If you wish to render the JSON for your own benefit, the current version is always at http://s3.amazonaws.com/jeanfromeastenders/current.json
I have - or rather had - a cousin who got a bullet in the back of his head courtesy of his best friend for less than $100K. So my base rate may be a bit higher than average but it definitely isn't zero and we're talking very large amounts of money here.

Let's turn that around: how many hard core criminals do you know that end up living to a ripe old age? Even Bulger didn't make it and he tried real hard.

https://www.bbc.com/news/world-us-canada-46036058
I'm very happy with Netlify for numerous things. In this case, Netlify is just running a build script that converts the JSON I create at http://s3.amazonaws.com/jeanfromeastenders/current.json into the final HTML page.
What if its a recurring pattern?
+1 for swing, much more about the fun of the dancing, less serious about getting the technique exactly right, and you fit it to all kinds of music.
The source article seems to have disappeared from the original link. Does anyone have a copy of it?
Haha, I actually thought about that - I'll send the company an invoice for my recruitment fee as a headhunter. Hell, if I'm going to be finding people jobs, may as well take a cut right :D
He could make more launching lawsuits about his ideas
I could manipulate physical nature if I only learn mathematical notation, but at what cost?

Here's the thing: I like Perl 6 because of the abstractions it gives me. In fact, I like learning new programming languages because of what I learn about ways of slicing the solution space. It's like learning new spoken languages, only easier. I spend the time I could spend complaining about some unknown language's syntax learning that language, trying to enrich my repertoire as a programmer.
Indeed. It's one thing to have a mobile phone with a tiny screen but with high pixel density. The iPhone 4 doesn't even have XGA resolution. It's another thing to have a large screen with high pixel density, you end up with a crap-ton more pixels. Which is a lot more expensive. 2038x1536 is considered extremely high resolution today, and generally only attainable if you have a giant 27" or 30" monitor hooked up with dual-link DVI.

In total we're talking about 5 iPhone 4 displays tiled, which gives you some idea of the potential cost.

It'd be awesome if Apple was able to do this, but it seems quite unlikely. It's far more likely that the iPad will see an incremental bump in resolution.
You didn't mention the biggest benefit of server-side javascript -- you get Javascript on client, server, and database. You can pass JSON objects from client to server using Socket.IO and then just save them in MongoDB with ease. You can reuse code between client and server. It's simply fantastic.
If everyone was already thinking it, what makes you think they want to see it in the comments?
>Biological organisms are machines.

No. They're not.

First rule of dumb people not understanding evolution:

You can be lucky, you can be crappy, you can have some terrible design flaws (hello mammal eyes), but it's enough as long as you survive. Also, evolution works over POPULATIONS, which means that if 10% are ninjas, and 60% are the bog standard model and 30% are the crappy models - if your environment is 'fitted', YOU ALL SURVIVE.

Yep, even the 30% crappy ones!

Hands up who doesn't understand the difference between ADaption and ABaption!

Selection only occurs on a massive time-line or when environmental changes occur or there's a predator/prey war going on. And even then, the crappy crappy 10% can get lucky and still breed. That's why ecology / evolution is fitted over POPULATIONS, not individuals.

AI doesn't work like that, at all (once you get into the real stuff). All AI works on limited models (at the moment).

>Hint: this guy is a muppet, as shown by his attempts to "downvote" counter-arguments.

HN: land of the muppets.

>>On a more serious note, anyone actually working in the field of AI development knows this already. HN proving that... it doesn't. #Dragonswhoarenotdragons
It's a client that explicitly about security and openness, so a lot of things are going to be "self-evidently" supported. The objective is to make a good client

The objective of clients like LINE and WhatsApp are to make good chat for the masses. This can come at various technical costs, because that's not their objective, whereas Telegram is , at its core, about technology.
she was involved in commutative algebra. she had a nice little section in my undergrad abstract algebra book. i'm not saying anything negative about her, just that if you are going to list the most brilliant/productive scientists of all time then shes not going to be on the list. she was brilliant of course.
Noise is just wasted energy that could be doing useful work unless, of course, you actually want the noise (like in a musical instrument). This is a really weird trend.
I'm wondering if you're aware that WhatsApp's data store is on the phone, not on their servers. If so, how would you do away with the requirement that the phone stay online while using the web client?
I stand corrected, IndexedDB would likely be a far better solution than LocalFileSystem.
> for various reasons

[Citation needed]
Curious, how does it do that? Are the messages stored on a server? Just delivered to all devices? Delivered to one then dispersed from there?
Good business communication is something you only learn by /doing/ it. Expecting a course to facilitate that is flawed. I'd be all for increasing the roles of internships in CS education in order to accomplish that -- and I have noticed that's begun to happen as well. CS majors these days have internships lined for summer and winter if not more (especially due to COVID). I am sure they'll learn a lot more than I did during that era of my life just by sheer osmosis.
Although I use WhatsApp as my main messaging app, as it is the common practice in my country, I always thought Telegram was way better - it was honestly always 20 steps ahead of WhatsApp in regard to features, and it still is.
I hope everyone will switch to it, although unfortunately I believe people will just stay with WhatsApp...
Were the BLM protests trying to violently overturn the election and install their preferred candidate?

There can be no equivocation between a protest sparked by continued police brutality against citizens; and a protest sparked by massive lies from a leader with fascistic tendencies trying to overturn his democratic loss.

One is a net social good, even if it had deplorable bouts of violence; the other is strictly a social evil.
And in a way it was true; it did aid in destroying the world as it was known. But we inhabit the world that emerged from those struggles, so the victors write the history (and print it). If a new political regime were to arise from or through, say, twitter and overthrow all prior established regimes, the rectitude of that technology would be just as reaffirmed through equivalent hagiography.
I am honestly not trying to argue whether one specific myth is true or not. You are missing my point.

There are many myths from many cultures that seek describe where we came from or how we ought to live. For example, nearly every culture has some story about the creation of man/the earth. They all cannot possibly be true. I'm sure we can agree that man/the earth wasn't created as many times as there are stories about it.

So you are making claims about truth! How can you square the above with your belief in your own religion using the thought paradigm you outlined above? By claiming that your creation story is true (or as you may put it, "not proven false") you are also making a claim that all others are not true. A claim you have just argued cannot be made... It's all a fallacy.

The most interesting question worth answering is: Why do you believe the myths that you do?

Statistically speaking, the answer is because it is the one your parents believed. It's hard to explain away the eerie correlation between a person's religion and where they were born. Why is it that a child born in the Middle-East is so likely to follow Islam, a child in the West Christianity, in India Hindu, etc. etc.? It's almost as if these religions are a product of the people, not some greater truth.

And for what it's worth, I see no meaningful difference between something that is false and something that cannot be proven to be true:

"There are 2,145,124,152 birds in flight above the earth right now." - do you believe me?

"Jesus Christ just came down and told me personally that Hindu is the one true religion" - do you believe me?

"I just saw a red 2018 Toyota 4Runner drive past my house" - do you believe me?

"One of the above claims it true" - do you believe me?

What role does "faith" play when appraising the above questions? Are you applying "faith" in the same way to the above as you do to your religion? Probably not.
https://thehill.com/homenews/house/482569-senate-gop-blocks-...

https://www.govtrack.us/congress/bills/116/hr2722
Some context for those who are unaware: fetchmail was written by the same person (Eric S Raymond/ESR) as the "Cathedral and the Bazaar" essay.
insurrection : an act or instance of revolting against civil authority or an established government

From Merriam-Webster

Armed protestors invaded the Capitol intent on disrupting the government from certifying an election. This was quite literally an insurrection.
The Japanese Imperial Navy had a submarine aircraft carrier in the 20th century. It could carry three aircraft at a time:

https://en.m.wikipedia.org/wiki/I-400-class_submarine
The most useful thing we can do as web developers:

- support very long passwords, so that users can use pass-phrases if they like.

- use bcrypt or the like for storage

- do not create easily cracked side channels, like a fixed set of "security questions" for forgotten passwords
At first I didn't use facebook because it had a smug sense of superiority ("You're not at Harvard or Stanford? Piss off!").

Then I didn't use facebook because it was the myspace lifeboat. Who wants to be a part of that?

Then the games appeared. People actively, yet still idly, tripping on dopamine for hours a day. Who wants to be a part of that?

Now it just terrifies me.
As I wrote in another comment, I wrote the essay because the idea had been bouncing in my mind for some time and I needed to get it down. The disconnect between Lisp's power and its lack of mind share is downright odd given what it can do and how influential it has been.

I wouldn't be surprised if some old-timer on comp.lang.lisp were to relate a heart-rending tale of an inner-city high-school dropout thalidomide baby who was a pity hire at LMI in 1987 and blah blah s-expression this and blah blah Lisp macros that and blah blah his flippers could barely reach the Hyper key and blah blah he did things you people wouldn't believe but blah blah Worse is Better so blah blah... Okay, okay; I believe you.

Then I would read Lisp sites that were still debunking old myths like "Lisp is an interpreted language and its only data structure is lists and it caused the AI Winter."

After a while, people are going to wonder about the disconnect. There's a line in Tim Wilson's song "100 Things Every Man Needs to Know"

"You been married nine time? Hell, maybe it's you."
I wondered what might be the reason for that. This makes LOADS of sense. Hi-light new users in threads and your eye is drawn to them. This enables experienced users to easily give constructive criticism, knowing that a poor comment was left by a new user who might not otherwise know the community's mores.
hmm, perhaps I'm missing something, but shouldn't systems just not allow you to attempt to login so much and so frequently?

I guess these systems do get hammered by so many improper attempts and you'd risk blocking the actual account owner. But if a billion attempts are made from the same ip in an hour, shouldn't that be considered suspicious?

Personally, I like what Google's doing with the two-step verification. That's probably where security should be going.
"While Seedcamp takes more equity in its startups than YC does, it also pays them more (YC firms with two founders get just $17,000), and its scope of applicants is far more international."

Dear author,
I think if you look a little bit lower in your own article, you will see how you mention Yuri Milner. FYI, Milner invested $150K in almost all Y-comb companies.

Now, go back to your statement above and realize that $72K is lower than Milner's $150K offer. Please do not say that Seedcamp offers more money, it doesn't.

Thank you dear forbes journalist.

Smirnoff
>passw0rd may be in the dictionary, but is p4ssword, or pa$$word?

I'm guessing yes. If I were building a dictionary, I would add every password that's been dumped from sites like Gawker, etc. With hundreds of thousands of passwords floating around in the ether, you can quite quickly cover common leetifications. Also, it's trivially easy to leetify algorithmically, so padding a dictionary wouldn't be difficult. You'll run into space issues eventually, but you can easily split the dictionary over several machines.

The best solution for the user is to pick a fairly complex, long, and unique password. Server-side, assume your database will be compromised use something like bcrypt to make cracking it computationally expensive.
This is especially true when it comes to small contracts (below $25K)... in many cases, the overhead of those situations makes actually going to court onerous, even if you win. You want to either get paid up front, or ramp up your relationship with someone to minimize the risk if they decide to just not pay you.
ub.com and pokerstars.com both resolve to their original servers (77.87.179.116 & 66.212.231.205) using either Google's DNS servers (8.8.8.8) or Level3's (4.2.2.1, 4.2.2.2)
I find good commit messages (and if you're using something like github, good pull request summaries) really helpful here for reminding me of the context around why I wrote the code.
Their site seems to be down, here's a Google cache link: http://webcache.googleusercontent.com/search?q=cache:2VSoNL8...
This arguably could be reduced to:

Are they using the product?

>> Success. <<
I'm curious what the community thinks about this especially as entrepreneurs and developers/designers.

I spend a huge portion of my time learning new languages, tools and technologies that fitting in fiction/non-fiction books that do not directly relate to building a business or learning a new technology is extremely difficult. (e.g. I've been reading a US history book for a couple of months now)

I'm sure people on HN have interests in a large variety of topics, what do you do to cover all of those topics? Or __do__ you cover all of those interests at all?

Do you just pick a couple of interests and stick to them or do you dabble in many different ones and only dive in deeper if you get "bitten"?
I started an interesting thread awhile back about this very topic:

http://news.ycombinator.com/item?id=2202187

Had some interesting comments...