skysight-inc/HackerNews huggingface dataset:
> But if I up vote, that doesn't let the person know I up voted it. Aren't we supposed to let people know that I care?

I can appreciate where you're coming from, but it's a tad egocentric: 99% of the time, knowing the username of someone who upvoted you just won't matter that much, and would just be a distraction. Suppose a comment with 60 upvotes also got 60 replies saying nothing but "I like" or some variation. That page is now flooded with what is effectively spam, making it harder for people who are trying to contribute to and/or read the discussion.

If you want to stand out, just telling someone that you liked what they wrote isn't going to do that. You've got to write something worthy of notice.
Perhaps in 20 years the US will be that country.
I've debated this topic with many people, and while I think/wish it was true that developers were special people among the professional class; it isn't.

The things that make a good software developer are the things that make any professional good: learning = good, creativity (hard to measure stuff) = good, no consensus/uniqueness thinking = standard human problem, requirements are always hard and always suck.

Software development isn't different. It is just more loudly voiced on the internet because programmers have the most voice on the internet (by virtue of building the damn thing).
Needed - User Experience Designer / Developer
I believe increased Internet use

Will create jobs
Will decrease crude oil consumption
This is bad advice. 401k matching is the easiest way to double your money, and tax deferral means ~30% more working for you now (when it matters, for compound growth). When you're young, the market being down just means you're getting more shares for your contribution.

You're right that 401k funds tend to suck, but most funds everywhere tend to suck (compared to market). The ones that don't, you probably don't have access to.

So just avoid the managed funds. Buy index, outperform most, and save the fees.
You've obviously thought very hard about all this. But you do know that blacks commit a lot more crime (~ 10x) everywhere, not just America? The answer has everything to do with race. Most people on HN belong to another ~ 10x crime group. We're males. I personally don't mind my tendencies that much. But to say they're cultural? Stop pretending it's the sixties. The blank slate is dead. Science killed it.

There are still things to be done about crime. Concentrating poverty (the projects) turns out to have been one of those really stupid progressive ideas. Crime rates for blacks in the south tend to be lower than in the north (I'll pass on that one). The post-1950s destruction of the black family (eclipsing slavery's destruction of it) seems to have been a bad thing. There are things you can fix. Just don't expect the effect to be huge.
Sadly I am not aware of any specific resources on iOS performance tricks or optimizations. You might find something of use in Aaron Hillegass' beginner's book on iPhone development (on http://www.bignerdranch.com/) - his previous book on Cocoa has gotten a lot of praise, and there's a good chance that his iPhone dev book holds the same quality.

The things I commented about in the code examples were mainly general cases of bad programming; f.e., one of the applications did a frame rendering pass via a loop that ran 100k times per frame, and as the first thing in each run of the loop (instead of just once at the start of the application) it initialized a few variables that end up having the same value through the entire run of the application, resulting in the unnecessary addition of 200k function calls with consequential variable declarations per frame, totalling 6 or 12 million extra function calls PER SECOND, depending on if the application rendered in 30 fps or 60 fps. While it might not look like a big mistake, things like these are easily picked up by people who might consider it sane, healthy and clean programming from an "engineering" perspective, but even the smallest mistakes can be the best recipees for killing handheld battery life and producing lousy software.
In case you are wondering what this does, Park Place replicates a lot of the functionality of Amazon S3.

Edit: link with more explanation (http://web.archive.org/web/20070114030611/code.whytheluckyst...)
I've seen thai school teachers spend $10s of dollars on facebook games. In thai school teacher wages, that is something like like 3% to 10% of their monthly wage, which is significant. Don't underestimate a market like china. Protection from psychological traps like bad spending and keeping up with the jonses tend to be less there too unfortunately/fortunately.

It's somewhat like ignoring the teenager market.
That's bad advice. You CANNOT work unpaid. If you don't have a work permit you can't do any type of activity that might be considered _work_ by the DHS, even if you are not compensated. Work is defined as an activity that usually carries compensation.
Thanks, good stuff.

I am going to give the HN once a day a real go for a few weeks, see how it goes..
I think globalization and internet will saturate http://en.wikipedia.org/wiki/American_dream
The Enigma of Amigara Fault
I suppose you're right. It was the rich man's bias, thinking that you don't need money to be happy. (That word again). Also, I didn't realize that you were speaking more generally.

Of course the lack of internet access is also related to other things (e.g. food shortage) that I didn't refer to.
WISE Discovers 95 New Near-Earth Asteroids
I get where the first point is coming from in that the best developer can be many times more productive than an average one but that doesn't mean the average one can't make a contribution. Many great programs have come from people that have admitted that they don't find themselves to be the best programmers but picked a goal and worked hard towards it.
Well, I think the internet will be around in 20-40 years, and if you're not constantly learning new skills then you're dead in the water anyways. I just don't see retirement as the goal.
I didn't suggest it was cultural. I don't think it is cultural. I can't imagine how you inferred that from my post. I didn't even use the word "culture" in it.
Which in the longer term will drive up the cost of living in Costa Rica.
If your currently in an apoplectic fit as to why people don't love C++, const correctness, boost, and the standard library, then read no further.

For those with a slightly broader perspective and an inquisitive mind, perhaps you should take a look at at the Reason C++ framwork, specially if you have never seen C++ in its most pure uncomplicated OO form.

http://reasoning.info

Reason is a C++ framework that ive been writing for about 8 years, which aleviates many of the sources of pain highlighted in this discussion. Writing code with Reason is much more like using a dynamic language, with a full library like Java or .Net.

It supports raii, but doesnt use exception handling and doesnt bother with const nonsense or over the top inheritance restrictions. In fact pretty much everything in Reason is public and designed to be derived, modified or enhanced.

It has generic programming features, but doesnt force you to write everything as templates (a classic mistake that the standard library makes). For example, you can have an iterator of int's without caring what the underlying container type is, so your code and algorithms can actually be generic, not just infectious templates.

Unlike a lot of C++ frameworks and libraries, its not specifically focused on networking, or a few esoteric template classes or collection libraries.

Reason is a fully featured systems programming framework with a complete interface to all the usual posix api's and everything else you would expect from a modern language. It has strings, regexes, streams, parsers, sockets, threads, filesystem, encryption, encoding, xml, xpath, collections, time and date, sql (mysql, postgress, sqlite), http (client/server), smart pointers, formatting, logging, and much more.

But the features are perhaps not as important as how it is written. It is simple, and very object oriented, everything is designed to work togeather cleanly and obey the principle of least surprise. Just like Python and Ruby, Reason allows you to do a lot in a very small amount of code.

So if your wondering how you can have the simplicity of C, with just the good parts of C++, heres your answer.

http://reasoning.info
If it was able to penetrate a car body, it'd be a great asset for checkpoints and roadblocks — surely better than live-round warning shots. Do they have those anymore? It'll help in riots and other such things, I'm sure.

It sure is a nice, big target for insurgent RPGs though! I wonder in what ways it'll be protected — even mounted on a heavily armoured vehicle, the dish would be vulnerable to damage, right?
1) Yes, of course.
2) No, but my guess is that if you have a good product, the immigration status is less important.
3) Yes.
4) I will probably go back to my home country and continue working there.
Another excellent game soundtrack is the Machinarium OST

http://machinarium.net/blog/2009/09/29/machinarium-soundtrac...
I prefer music that you can "catch a ride on" because they have a lot of forward harmonic motion: Bach, Mozart, Haydn, and Beethoven come to mind. For Bach go no further than Glenn Gould's performances.

Other than that it's occasionally nice to put on some 60's and 70's rock, the grungy kind of stuff (from Pink Floyd to Led Zeppelin to Metallica) that the forefathers of programming languages and personal computing listened to while they worked. There's got to be a relationship (either aesthetically or culturally) between the workflow that they created for us and the music they used to keep them going.
The Kingdom in the Closet
As a lifelong ADHD child, I do agree. Take a pill, write a report for 8 hours. But attempt a poem, a piece of story, and nothing happens. Attempt a daydream...nothing. You're very focused, and that means you struggle to talk to anyone...because they're not into your topic. Focus makes you boring.
Gene Weingarten - Gene Weingarten column mentions Lady Gaga.
Also, look at how subtle the code needs to be to handle failures with h_errno --- you have to call gethostbyname, check h_errno regardless of what it returns, and then read the hostent; and, unlike certificate checks, this has to happen in every single place you ever use a domain name.

Also, what do you do when h_errno says something is tainted? First, you need to distinguish between transient and permanent failures. Now you need UI for both. Which means you've added another state machine hop in your program in every place you look up names (note that most network programs, even when they're async, don't bother to design host lookup asynchronously) --- what was one function call is now three functions, everywhere you look up names.

Anyone who uses curl to do stuff on the web probably knows the flag to turn cert checking off. Curl and wget are somewhat unique in needing to care about validation. Observe that now every single program that does anything with the network, from "ping" through "ftp", now needs a flag and a sensible default for how to handle broken names.

Yeah, this just isn't going to work.
I've found tools such as Google Alerts, Social Mention, and Social Blaze (and LeadNuke since I created it) to be indespinsable for generating lists of potential customers. I think the most difficult part is getting inside your potential customers' heads to figure out what they would be saying if they needed your product/service.

For instance, for RateMyStudentRental, my target customer (i.e. school) will be having problems with their off-campus student housing. So, if they're having problems, I will hear about it one of 3 ways:

--1. a school administrator will write about it usually on some forum or housing community online.

--2. a student will say (on twitter, facebook, etc) how much their housing or landlord sucks.

--3. a landlord or local housing association will decide they need to do something about it and create a local workshop or call a meeting for the townsfolk.

--4. the media will call it out by publishing an article about the state of the campus housing in the area.

--5. some combination of the above.

So the trick is knowing what sort of language to look for online. For each case above, I would look for phrases like this, respectively:

--1. "what should we do" + "campus housing"

--2. "housing sucks", "landlord sucks"

--3. "meeting" + "campus|student housing", "state of off-campus housing", etc.

--4. city|county name + "student|campus|university housing"

--5. general terms like "student housing", "campus housing", "student rental", etc.

This advice I think applies to all industries, not just student rental housing of course. For instance, if you're web development consulting company, you're probably looking for phrases like "needs web application", "needs web development", "looking for software", etc.

I think a rookie mistake that people (e.g. web development companies) make is paying attention to phrases like "rails development."

The problem is, if you're a web development consultancy, your target market doesn't know or care what Rails is or how you build the damn thing, they just know they need something on the computer that does what they need it to. So, if you just look for "rails development" keywords online, you're just going to get a bunch of funded startups and the like who just want to hire another programmer for their team, and it's a waste of your time (and theirs if you respond).
What a Programmer Sees When He Watches Inception
Second that. I especially liked the last chapter where the author discusses some implementation techniques to get you going.

Amazon link: http://www.amazon.com/Introduction-Genetic-Algorithms-Comple...
Adobe's Digital Editions (http://www.adobe.com/products/digitaleditions/) would be my starting point. Of course, the decision ultimately relies on how many you're going to sell ( <500 a month you can manually do these and save coin, more than that you'd want 100% automated and take the hit because you're dealing in bulk).

If I may also suggest an unconventional distribution tactic, you can go the Paulo Coelho route (http://torrentfreak.com/alchemist-author-pirates-own-books-0...) and release the PDF on the torrent sites to build awareness, since that's one of the biggest challenges.
I do know what it's like.

I became a lot less harsh in my attitude towards companies I deal with after I started working on a software dev. team.

However, I'm still seething with hatred for management. Maybe if I'm an exec someday, I'll learn to empathize.
I find a lot of small bugs are indicative of poor analysis and/or execution. I know to look out for the whoppers due to similar reasons.

The better developers and projects demonstrate a uniformity of quality. (A project can hose over a good developer when it wrests control from them and/or hides needed information from them.) There are less small scale bugs because there's been due time for consideration and a concern for getting things right. Often, there has been a deliberate reduction in features -- the developers have learned what truly matters and -- given outright or de facto the ability to do so -- have stripped away the rest. They may leave the design open enough to add things in the future as need is demonstrated. But they don't fuck around with them now.

There may still be some whoppers -- I've found some under such circumstances. But they are less likely. And when there are, hidden as they may initially be, they stand out more upon identification. And fixing them, for all of their deeper implications, still tends to be easier. It's a lot easier to concentrate and do deep work, when you're not busing swatting a thousand mosquitoes.

Applying quality more strongly and uniformly at the front end pays off in this manner. The work goes deeper and solves more fundamentally and insightfully the problem that's really at hand. And when it needs to pivot -- I guess that's the current buzz word -- it's not held down by a thousand tiny tendrils, each on it's own insignificant, but accumulating with the tenacity of Velcro.
Cambodia's largest export is rice. The country is bisected by the mighty Mekong river and the Tonle Sap is the largest lake in Asia. The whole country is lush; when it rains, the drops hurt your skin. Weeks of non-stop thunder and the soil doesn't seem to down a sip of it.

If you believed in a fertility god, you would renounce your faith in it within sight of Cambodia, for the cruel abundance it has inflicted upon that land.
Tips to Write A Level Paper
High school students must get best grades because selection to a good university depends on A- level results and the grade points. Students must show their reasoning and writing skills in their A-Level papers. Read how to write good A-Level papers and get high grades.
Maybe someone needs to start paying those under-40 workers what they're worth. Perhaps salary increases should be considered annually in context of ACTUAL cost of living increases, not fairy tale inflation figures? Well, executives are having no problem hanging onto their savings. Actually, oh - they're hanging on to our savings. Maybe it will start trickling down soon!
Nigerians are not the primary consumers of their own oil. No oil producing nation is.
I'm told that's why you have to balance it out with weed.
Not without dramatic social upheaval. Imagine going through a deflationary period where it makes economic sense to walk away from every single mortgage in the US? I don't think I'll be interested in living here right then.
Hrm... I'm not sure I understand. Are you saying there is a correlation for being touchy-feely with backstabbing? I thought you meant touchy-feely as a definition for "a woman's touch" so to speak. In other words, being more sensitive. For example, my mom is quite compassionate and empathetic, so she would be more "touchy-feely" about some topics than I might be, but she is the last person that would ever intentionally be a backstabber. I'm not sure if this makes sense, and we may still have some miscommunication. I'm just trying to get more insight into the female perspective, but I think you are saying that often times females may be quicker to be deceitful when talking with one another, whereas males will be blunt and upfront, even if it means offending someone. Perhaps you are intending "touchy-feely" to mean non-genuine? That may be our miscommunication.
Generational GC's are what almost every high-performance VM uses and this approach is well-tested in many practical systems. Almost all aplications tend to allocate large amounts of temporary objects, while having large amounts of memory consumed by long-living objects (I would assume that at least one half of used memory in this case are long-living objects). Also, because generational GC is almost invariably copying GC (it is possible to make non-moving generational GC, but that is more of academic interest) it tends to improve caching behavior, which is even more important with each new generation of CPUs.

Main reason why copying and generational GCs are not used everywhere is that they tend to generally complicate matters when you want to seamlessly interface with C code (non-managed code in .NET terms), because objects then tend to be moved around by GC, which has to see and be able to update every reference to it's heap.

In most applications and runtimes, there are a lot more behind the stages objects allocated by VM and or library routines than objects that you allocate directly in your code.

Edit: and I think that Sun's JVM uses generational GC at least since 1.3, if not 1.2.
why are so many benchmarks done so badly statistically?

the benchmark was run once: we have no idea if this was a fluke or not. hopefully the author didn't repeat and pick the best.

at best the numbers reported can be considered some mean. the mean is not a robust estimator:
http://en.wikipedia.org/wiki/Robust_statistics#Examples_of_r...

one sample is enough to distort the mean. furthmore we've no idea how typical this run was: there should be some measure of spread.
Other than linking to culture and cognition...

Maybe I am still misreading, what did you mean by "The answer to that one is pretty straightforward, well known, and easy to understand. And it has little to nothing to do with race. America is simply not an egalitarian society."

To me that looks like you're blaming the crime rate on our non-egalitarian social structure. Is that separate from culture in your book?
So, maybe she should be working!
I wasn't attempting to insinuate that all iPhone 4G's are easy to trigger this in, but I wanted to defend Blackberry from the unfair attack by Apple. I have had a few Blackberries and none have ever had any noticeable hand position related signal loss across a variety of signal strength and location environments.
I just put a similar response in another post, but its just as appropriate here...

If you want to know how C++ can be better, you should take a look at at the Reason C++ framwork, especially if you have never seen C++ in its most pure uncomplicated OO form.

http://reasoning.info

Reason is a C++ framework that ive been writing for about 8 years, which aleviates many of the sources of pain highlighted in this discussion. Writing code with Reason is much more like using a dynamic language, with a full library like Java or .Net.

It supports raii, but doesnt use exception handling and doesnt bother with const nonsense or over the top inheritance restrictions. In fact pretty much everything in Reason is public and designed to be derived, modified or enhanced.

It has generic programming features, but doesnt force you to write everything as templates (a classic mistake that the standard library makes). For example, you can have an iterator of int's without caring what the underlying container type is, so your code and algorithms can actually be generic, not just infectious templates.

Unlike a lot of C++ frameworks and libraries, its not specifically focused on networking, or a few esoteric template classes or collection libraries.

Reason is a fully featured systems programming framework with a complete interface to all the usual posix api's and everything else you would expect from a modern language. It has strings, regexes, streams, parsers, sockets, threads, filesystem, encryption, encoding, xml, xpath, collections, time and date, sql (mysql, postgress, sqlite), http (client/server), smart pointers, formatting, logging, and much more.

But the features are perhaps not as important as how it is written. It is simple, and very object oriented, everything is designed to work togeather cleanly and obey the principle of least surprise. Just like Python and Ruby, Reason allows you to do a lot in a very small amount of code.

So if your wondering how you can have the simplicity of C, with just the good parts of C++, heres your answer.

http://reasoning.info
The Life of a Freelance Dancer
$1.5M is a ridiculously high target. If you retire at age 60, you have a 20 year life expectancy (males) and 24 years for females. With $1.5M you can spend $50k a year for thirty years without even factoring in continued earnings on that money or $20k/year in social security payments. Once you do factor those in, you'll die with more than the $1.5M you started with in retirement funds.
So this is cool, looks like a great app. Will it be as a service only, or will you offer customers the chance to buy the software and run it on their own hardware? I for one am leery of giving out all of my financial data.
Who Really Won in Goldman Sachs' Settlement with the SEC?
Learn Spanish and move to South America.
Right, and you'd have to save over three thousand dollars, every single month, for forty years, to reach that goal.
How hot do contact lenses need to be to melt? I would hope that by the time your contacts could absorb enough energy to melt, you would already be in enough pain to force your eyes shut.