skysight-inc/HackerNews huggingface dataset:
This is a bad idea. Even if we accept that no individual can reasonably spend more than $200 million non-charitably (which is false), super-rich people tend to care deeply about money for its own sake -- I say this from limited but real personal experience -- and the accumulation of money tends to be a major factor in their motivation to continue to produce and to invest. If you impose a $200 million wealth cap, you are going to substantially reduce the wealth production of some of the most productive members of society and dramatically curb certain kinds of investment.

What do you get in return? Essentially the government receives a bunch of claim checks for wealth (remember that "money" itself has almost no intrinsic value; what we're after, from a macroeconomic viewpoint, is a maximal sustainable production of wealth). Your proposal amounts to reducing overall wealth production in exchange for increasing the government's buying power by a comparatively small amount. Forget ethical arguments against it; except in very extreme economic circumstances, it's absurd from a practical standpoint.
Ask HN: How to know how good at coding you are?
I'm a student in college, and I use to think that I was fairly good at coding. But lately, I'm not sure.

I was wondering if there are particularly principles of a good coder or some kind of pattern. I find myself coding well and quick when I'm interested and motivated, but other times I'm slow and just procrastinating.
This will totally help fight enemies in the 4th generation warfare. When the cost of these drones fall and can be equipped with infrared cameras we can keep eyes on the battle field constantly.

We can see enemies moving and hiding in the battlefield, gain intelligence and take them out.

This can lower american casualties.
I honestly wouldn't know about the majority of these issues (and, secretly, I suspect most universities don't either).

Aside from legal issues, it seems to me the business proposition is the same as the open-source business proposition: you know the most about the system you've created, so you're in the best position to consult on it. If you want a startup, I think guys like Cloudera show that even if you give away what was traditionally thought of as the family jewels, you can still very effectively monetize. That's what the university should leverage.

Anyway, for most projects, you've already given the game away in the paper (or at least, should have done): the expensive thing was the idea. Reimplementation is cheap.
* My parents would often speak to me in Korean. My (english speaking) friends would sometimes ask me "what did she say?" Strangely, though I understood clearly in my mind what my mother said, I could not translate what she said into English.*

I'm English-Spanish bilingual and I have the same problem. I can chat along in Spanish and then try to translate what was said into English but it doesn't work. I have to rethink it and say it all over again in English.

Spanish and English are a lot closer than English and Korean. Since it happens in both pairs, it's probably a universal problem. Translating is a different skill from bilingualism.
Not necessarily. Yes, if you're fortunate enough to have something like Trac that can easily link between a line of code and a ticket number, then bug reports can handle everything. But otherwise, how would you describe it? Sometimes a problem only "makes sense" if you're looking directly at the affected line of code, and the comment is right there. If you leave a 'grep'-able thing like "FIXME" in your comment, you won't really lose it.
Duh. Thanks :)
This article has its fair dose of FUD, as NYTimes pertaining to tech usually are. The title sets the tone, and quoting Jalopnik as if they are credible journalism raises some serious eyebrows.

You can typically read the bias in these articles by simply looking at the spin of the first sentence of each paragraph, because it's the pauses between the paragraphs that set the poise and direction of the monologue.
I'm doing sometimes 1, but rarely - for example I've found my nickname about 5 times in a huge codebase. It's easier to search for it, and gives me back clues - memos - that are even easier to see from P4,svn,git etc. log/changelist. And sometimes that depot is not present, especially if you cooperate with different studio and there is no way to exchange depots (they might even use something else).

So sometimes that's okay.

Number 2 is also sometimes needed. But instead of commenting it like C++, we #ifdef it 0. It's probably wrong, but if you are working in "foreign waters" and you are not sure, old code like this might give some clues (this is assuming the code base is not really that good, and not much documentation either).

3 is awfull, but acceptable for standard libraries, or code that is really trying to be specific about something.

4 is also okay, but not like this - it could be: "// TODO: Jimmie's bsp file (quake bsp) wasn't working due to some new lumps introduced. Temporarily fixed, needs proper one.
Also a coder introduced a TODO macro, that in Visual Studio actually prints out TODO when it's building the app.

Seen 5, and it's reasonable - for example: "Due to short deadline, blah blah blah". Again if possible add the TODO macro, so it's fixed later.

For game development for example - It's almost always more important to ship on time, rather than to have some well commented code. I wish that was the case, but I haven't found a studio where this is really done - maybe engine, sdk, framework, library developers do that.
Er, Clojure has CL style macros so you can easily get to this level of brevity if that is desired.
In that particular example the English word "computer" simply adds a suffix to the already-in-native-use Latin verb "to compute" which is a standard English way of converting to a noun meaning "a thing that computes".

Which is exactly the problem. We shouldn't be using Latin roots to derive English words - we should use native vocabulary, because then we don't end up with commonly used words based on obscure roots that are rarely used.

When you're not having to master things like tone usage, communication on a basic level (surely all that can be expected of most US high-school students) is a lot easier to master.

If you think that the Chinese aren't tolerant of accents, you are sorely mistaken. In fact, a large portion of Chinese TV contains subtitles because of the various accents from different parts of China that can make it difficult for them to understand each other.

Also, do you think that English doesn't convey meaning by tone? One English sentence can have several different meanings based on things such as tone and stress, and is one of the most difficult aspects of English for ESL speakers to master.

And in all honesty, the tones aren't that difficult to master. If you take a Chinese class, you'll spend at least the first month working on them, and once you've got them down, that's that.
It always get cited as "only one way to do it", but the actual motto is "there should be one obvious way to do it". It's very different.
SourceFiles.org - Use the Source, Luke
Ask HN: Please critique my landing page
Ah, but popularity has everything to do with measuring value.

As an analogy, gold would be a worthless piece of metal, if it wasn't for its popularity. Worth is an illusory, human-defined concept and just like anything "the worthiness of something" is ecided by majority. Perhaps because those who don't subscribe to majority's value system are weeded out in the process of evolution, unless their value system offers some incredible evolutionary advantage. And by incredible I mean "everyone is dead and unable to reproduce except for those who think that karma points are bullshit".

In reality, reality is merely a construct of our minds, and all value systems are created by consensus on which hallucinations are advantageous and which are disadvantageous. Thus, if we decide by unspoken consensus that karma points are worthy of construction of smart comments then karma points are valuable.
Background story: http://news.ycombinator.com/item?id=1538987
This sounds like a good deal to me. I'm working on a product to facilitate weight loss competitions. If you can help out, email me: tommy@pinchyfingers.com. Thanks for the offer.
What kind of code / environment do you mean? Are you writing to a spec, or design from scratch? To be honest, I've never seen anyone working this way, meaning - I've never seen anyone able to design something away from keyboard that doesn't change significantly once it's written (unless they have a strict interface to fill, or something similar).

Also, do you actually write out pseudo code on paper (regarding "reviewing code", "Refactoring code")?
Well, you could give it to me, and I promise I will speak highly of you for doing so! :D

However, I don't think that would help you much in actually marketing your product successfully. I think first you should figure out who you're selling to.
This is assuming that the "super-rich people [who] tend to care deeply about money for its own sake" are actually "productive members of society" engaged in "wealth production", as opposed to merely being very good at rent-seeking (which gets easier as you get larger amounts of capital).
Work-and-Play vs. Workplay: The choice is yours
I'm taking a break from writing an iPhone app right now. I was on track to bang out this app in 2-3 days. It's a client for the API stack from one of my favorite web services. Things were going great until I hit a serious snag with some poorly documented API calls. Oops.

I guess the answer is 'it depends.' It depends on whether you're doing anything 'new' or if everything that is comprised by the code you're writing is well-known to you.

If I had an occasion to build a client for this web service before, I probably wouldn't be having this problem (not least because I'd have working code sitting somewhere on my hard drive).

I build iPhone and Rails apps for a living. If someone asked me to whip up a simple blog platform in Rails for them (along the lines of the 15 minute blog screencast), it would probably take me 15 or 20 minutes to write it.

In contrast, if someone asked me to whip up a Django app that does the same thing, it would probably take me a day to install Django, figure out how everything works, write a really terrible version, throw it away and then write a more-tolerable version.
Acne and Menstrual Cycle &ndash; the relation between menstrual cycle and acne
The one custom macro I wrote is already in there. The rest is just the web server and cl-who.

I have been screaming for ages telling Clojurists to rip CL APIs and implement them in clojure. They're more tasteful and cultured than that entrerprisey crap that java is smearing all over this nice Lisp dialect.

The majority of open source clojure code that I have seen looks like Java FFI stubs; you need to tuck those loose ends in and tidy them up with macros. But this probably wont happen until Clojure is ported to another runtime/platform; portability is a surefire way to distill the essence of a language from its implementation detail.
Well, Spanish marks subjects of verbs with inflection and requires detailed accounting of objects with pronouns and clitics. In return Spanish gets the opportunity to build a subtle set of emphasis points in sentences.

The final position in a Spanish sentence may belong to the subject, an object of any kind, the verb, or a subordinate clause equally easily. Which thing gets that honored position becomes the topic of emphasis for the sentence. Then whichever one comes first (also flexible) gets the second strongest mark. Things that come along in the middle can get much smaller emphasis depending on order. Adjectives and relative pronoun phrases can change emphasis based on order, too.

In Latin, there is almost no natural order needed. Nouns specify their function in the sentence with declension and verbs attach to subjects with their conjugations. Latin poetry can hold a soup of words in almost any order.

In English and Mandarin order matters. But there is little chance to mark the function of words morphologically. Instead the words stay the same and you rearrange them. That means you can't reorder sentences like you could in Spanish or Latin.
I find articles filled with contrived examples of what not to do not particularly helpful. In my experience, very, very few people write comments that dense (or at least I have been blessed not to work with them). However, plenty of people write comments nearly as dense, but not quite. Showing those people this article won't change their behavior. They'll rightly think, 'well, my comments aren't that worthless'. Real world examples would do a much better job of showing people what they should really avoid, and might even spark some interesting discussion over the grey areas.
Incidentally, that website has an exceptionally good layout, in my opinion.
Depends on what you do... I'm not strictly a programmer, but I have days when I write a thousand lines of code over 3h, then I have a day when I fix two lines in a big project over 2 days and consider it a good result (since it took 1.9 days to find the correct lines and prove it will work).

Then again it depends on whether you're told "make X work", or "here's a complete spec including all needed diagrams, schemas, descriptions of data flow, etc. - implement it precisely". The former takes much much more time - you do your own research and experimentation. The latter is like playing with mad libs - you don't even have to stop to think.

In my opinion, it's depends a lot on the task you face to answer this question. You can create a hundred of trivial things a day, or solve one complicated issue. Try comparing with people around you doing similar work. Random person on the internet doing something "in one evening" is not someone you should be comparing to - s/he might've used a very similar app s/he made years ago as a template and only changed some texts, or s/he might've spent weeks on the idea and... lied.
List of Profitable Online Niches to Consider for your Startup
apparently even someone saying they watched porn is offensive. I guess that's true if you think all children should be sheltered from all knowledge of anything they're not allowed to do until they reach the magical age when they are then allowed to know and do all.

Of course, that doesn't prevent them from watching sitcom reruns where sexual activity is constantly alluded to. At least here they must stay up til 6:30 pm to be exposed to it.
A few weeks ago I was perusing a code base that I had never seen before, consisting of some 100 subprojects, mostly written about a decade ago.

The code was mostly entirely uncommented. In a few files, it was heavily commented, but often strangely... such as allegorical comments relating the code to a magic act ("and now we shall make the volunteer vanish into thin air!"), or quotes from movies that loosely described the code.
If you want to see what Spring MVC brings to the table, checkout the following showcase:

http://blog.springsource.com/2010/07/22/spring-mvc-3-showcas...
Even more...

http://news.ycombinator.com/item?id=993398
Quick summary:

We're all taught that receiving $1 tomorrow is better than receiving $1 a year from tomorrow. Even if you can't use the $1 tomorrow, someone else likely can, and capital markets make it easy to get your money to them. That's why the interest rate yield curve is normally upward sloping, and the discount factor curve is almost always monotonic.

http://www.cmegroup.com/trading/interest-rates/us-treasury/2...
(for the purists, I know there is a lot else going on in the treasury bond future curve, but it's hard to find a good DF curve)

In commodities, however, receiving a barrel of crude oil tomorrow is not necessarily more valuable than receiving a barrel a few months from now. If there is more oil available than people who can readily use it, then receiving crude oil tomorrow means storing it and potentially transporting it in the future. It's quite common for oil to be delivered next month to be cheaper than oil to be delivered the following month, and so on.

http://www.cmegroup.com/trading/energy/crude-oil/light-sweet...

Commodity ETFs at first attempted to buy a stake in the underlying commodity. It worked for easy to store items like gold or cash-equivalents. When they tried to do the same for oil or natural gas, it was too costly or too big a headache.

The work-around was to trade futures contracts for each of the commodities, and avoid ever taking physical delivery of millions of barrels of oil by selling contracts shortly before their delivery date and buying new contracts with further away delivery dates.

Unfortunately, the futures contracts already implicitly include the cost of storage and the investor aversion to taking physical delivery, making the ETF manager pay a cost every time they move from almost-expiring contracts to longer-dated contracts.

The rest of the article explains anecdotes about how a few large players take advantage of the situation. Some people can predict when large ETFs need to roll their contracts and profit by front-running. Others invest in efficient storage and transporting frameworks in order to take physical delivery and sell at a profit in the future.

My questions:

Why not minimize the front-running problem by making the dates you roll harder to predict? Instead of rolling the front month every month, why not include some basket of CL1 thru CL12 and find opportune times to roll? Once these ETFs got popular, why not invest in some of the storage infrastructure and charge a slightly higher fee but give much better tracking to investors?
This article is by Don Norman, who also wrote the book you're recommending. Perhaps you didn't read the article closely enough?
"I have been screaming for ages telling Clojurists to rip CL APIs and implement them in clojure."

Care to help? If you feel this strongly about it, surely you can contribute to the community.
>This isn't unfair - it just means that some people are unproductive.

Sure, but in another 50 years many of their children will have just as much land through none of their own doing. If others could have used the land better, I'd say there's a good deal of unfairness there. It's possible life could have been better for everyone if not for inheritance.

>Blasting music is a different story - you are effecting your neighbour's quality of life (and destroying his property value).

Eh? That's the sort of thing I was talking about. You have the right to do what you want, within reason. But that said, you can't for example use residential land for a commercial enterprise beyond a certain point, and there are good reasons for these sorts of zoning laws.

On your last point, the state is the proxy by which we as a group determine how to divvy up that wealth that cannot be directly attributable to any one group. Again it is imperfect, but it's better than letting those who own the land have the entire say, because they are not necessarily responsible for the value in that land.
I use #1 and #5 comments all the time. #1 has nothing to do with being a "proud programmer". It has to do with being able to easily undo changes in a granular fashion. I don't want to have to do a check-in to the version control system every five minutes. I want to do check-ins when I'm at a point where the code is KNOWN to be mostly working, or at the very least it compiles without error. #1 comments, provided they have a little more description than just name and date, make it easier to completely replace the boneheaded hack I put in there when I have an epiphany three hours later about how I really should have done it.

#5 comments are very useful when writing code because they allow you to remain focused on the particular functionality that you are trying to implement while ensuring that you don't ignore things that are important in the grand scheme of things but are not particularly important to do at this moment (and certainly not important enough to be permitted to distract you from focusing on what you are accomplishing right now). TODO comments let you write the skeleton of your code and mark the places where you know you need to come back later to do more mundane tasks like carefully considering what kinds of errors may occur and what sort of exceptions should be thrown or caught or thinking about whether or not something should be written to a log. TODO comments are the bedrock of getting things done while still managing to not forget about details.

However, I agree that #1 and #5 comments should not persist in production code. They are little "under construction" signs that should be removed when the code is solid.
- AdBrite.com is excellent. Put your budget to just $5 a day or so and do text links across there network and you get super cheap clicks and they are pretty good clicks.

- Revieme.com is good. You can create a "campaign" and then pick a key phrase like "applicant tracking tool" for $10 each blog they write about it. Works really good.

- text-link-ads.com is worth spending several hundred dollars a month on. The static links do seo wonders, I have moved up from the 3rd page to the first page doing this and for a client I am spending over a thousand dollars a month with this service on different keywords and it is doing really well.

- Google adwords is important and managing your budget is very important when using adwords.
Search Engine Optimisation Versus (PPC) Pay Per Click
You read these reports because these are unusual results, and people consider them achievements to be mentioned. If it were normal for competent developers to crank out completed projects in an evening or during lunch, you wouldn't see the fact mentioned in their blog posts.

I think the speed of coding is basically a mystery which no one understands, once you look at a high enough level (above incompetents who don't really know what they're doing). Some people are much faster than others, but in rare bursts, and end up being less productive. Some people are much faster than others all the time, and nobody really knows why, including themselves. They probably feel they have a "system", but it's difficult to decide whether or not it's justification after the fact. Others might try to use the same system and fail; the productive coder might well be just as productive if they tried a different "system".

Individually, everybody ends up with a hunch of what works for them; probably more often than not the hunch is right, but it's also a good idea to try other ways of organizing your work and see if they stick. Collectively, we just don't know.
You're clearly a subjectivist, a philosophical position which I as a pragmatist find useless.

I would love to sit here and debate this with you, but I have a Saturday lunch meeting in a few minutes with my old high school's football captain and prom queen. I hear that they've accomplished some amazingly valuable things. We're probably going to eat at McDonald's. We will probably spend some time discussing the latest Dean Koontz or Danielle Steele novels. After that, I will come home and watch Fox News for a few hours, followed by some sitcoms.

Gosh, it's a good thing all these are so popular! Otherwise, I would have no idea what was valuable and what wasn't.

Oh, and by the way: gold would not be worthless. It has certain intrinsic properties -- like its resistance to corrosion, its malleability, its conductivity, and its low melting point -- which have made it valuable for many uses.
/* good stuff. my crime is putting my pseudo code in comments and then forgetting to cleanup */
If you finished the first sentence after the bullets:

>Yes, there were other languages with some of these characteristics before Perl. But Perl had all of them...