skysight-inc/HackerNews huggingface dataset:
"When the job requires very high technical skills its a dead end."

That's a very highly 'mixed' situation: I hold a Ph.D. from a top research university in some very technical material, with a lot of connection with computing, and have published peer reviewed original research in some topics where, thus, I am a 'world-class' expert in those topics, and I can absolutely, positively guarantee you that (1) in a 'job interview' in such a topic I will totally blow away the interview questions and (2) really know so much that the interviewer will feel 'rejected'. So, I won't get hired.

Uh, we're still back 100 years ago where the person hiring insists on knowing more and won't hire anyone who doesn't know less. In particular, the person hiring wants the new person to look just like the person hiring wants, including what the hiring person does NOT know.

This situation is very general: For a person with "very high technical skills", there is essentially no way to get interviewed or hired. There is no way for that person to expect someone else to understand those skills or have a job for them. The academic solution is for such a person to publish papers and, then, have others just count the papers, prizes, grants, whatever -- never try to read the papers. In business there is really just one solution: Have the person with such skills start their own business.

So, there really are people with "very high technical skills", but they essentially can't be hired, that is, they are unemployable.

For a hiring manager to insist that their particular list of skills, some good, some actually 'bad', are just the 'right stuff' is a mistake of the hiring manager.
You fail sir, you cannot disparage their work for being old and say it is being 'eschewed by newer techniques' without providing some examples.
While I think this is a neat use of dynamic, I think I'm still going to stick with my strongly typed models.

More specifically, I really like the 'ViewModel' technique. I won't give up my Intellisense and Compile Time validation anytime soon.
I perceive NetFlix's DVD-by-mail strategy as an ingenious hack to get market penetration into a market which required eventual movement by large entities -- (1) the telcoms to provide sufficient bandwidth to consumers and (2) the studios to allow their content to be streamed. It was obvious that #1 and #2 would have to happen eventually, but only a fool would have built a business whose success was contingent on the timing of these changes. Brilliant.
I agree, I also prefer the slightly longer version. OK, enough small talk ... :-)
A big part of the problem is startups that want world-class talent but are only willing to pay 50k. The economics simply don't work.
Counter-anecdote: I just got rejected from a startup because I was too inexperienced, despite having 4+ years of professional experience under my belt. They said there's no reason why I wouldn't be awesome, but I've just done too little for them to know for sure.
Ask HN: Microsoft Bundled Operating System Refund?
People have told me that it's possible to get a refund from Microsoft for a bundled operating system you didn't want.

How exactly do I go about doing that?

For the first time in a while, instead of building a desktop machine from components, I want to buy a compact desktop (the Asus Eee Box, to be exact), but it includes Microsoft XP, which I don't want.

Neither Asus nor the retailer will sell it to me without XP.

So if I do buy it, I'd want to ask Microsoft for a refund for XP.

IIRC, people who've done it said don't even turn on the computer before applying for the refund, and keep all the OS media sealed, so that it can be returned intact.

Does anyone here have experience with this, and is there anything else I'd need to do?
Manifesto For Success
If you're young and sharp, programming looks like paradise. It's more or less a meritocracy, there's a ton of personal freedom, and you get to spend your days doing creative, challenging work and getting paid fairly well. You may not have even had to slog through 4-5 years of college.

You'll start to see the downsides as you approach 40 though. Many programmers can't play the social games that management requires, there's a limited number of "architecture" slots, and you're suddenly competing neck & neck with people twenty years younger willing to work 60+ hours a week for half your salary. It's brutal but you've just got to knuckle down and do your best to keep up. Leverage your experience to learn new tech faster and constantly work on moving yourself upmarket technically. You've been in a footrace all this time but you may not have noticed it until now.
I thought that this was one of the better articles published via Tech Crunch lately. I would be interested in reading more articles from Vivek Wadhwa and highly encourage guest writers on Tech Crunch.
I suppose programming as a particular profession may have this dark secret; I'm not a straight-up developer (meaning I'm an IT generalist who does develop but usually has some sort of hybrid job including mgmt).

However: I know lots of 50-something developers who have no problem maintaining employment and contracts. They are top-notch; their skills are current and their proven track record and accomplishments are what get them gigs. Companies want them because they're less of a risk -- instead of guessing whether the young guy will develop the right skills, they can take much less of a risk and get someone who's already proven himself.
A better site to get answers for salaries is glassdoor.com - you can see what web developers at actual different companies make. And you can see it by city, by years of experience, etc...
I was talking about the highest-rated comments in that thread
So, how long until BestBuy goes down in a similar way? Unlike clothing, few of their products require a consumer's hands-on examination before purchase. Why would someone bother walking into one of their stores when Amazon has the item for mess? There's considerable evidence that BestBuy understands this and is hedging with a services model (GeekSquad and some acquisition I can't recall). But, a services model doesn't require their current realestate portfolio.
Absolutely true, execution is what matters. You can make a good business from a pretty standard idea. And the history is littered with examples of great technology that never succeeded, or only saw limited success.

On the other hand, you can have brilliant business operations and virtually no innovation for decades, until a better technology comes along and tanks your business. Although investing in technology is risky, failing to invest in new technology can be far riskier.

I'm pretty sure Nokia has great business operations, but considering how they're scrambling to release a new (wait, two new) mobile operating systems in response to the iPhone, they apparently failed to invest (or invest in the right) technology.
It's really more about how long it's been since you learned new stuff. Lots of programmers in their 40s learned most of their skills writing Windows apps and, at least the ones I know, are very resistant to change. If you just looked at older programmers who are open-minded and still learning then the numbers might be different.
To the extent that this reflects material reality, it suggests that there is an arbitrage opportunity for anyone who can get a babyfaced twenty-something to front for a team of 30+ year veterans with deep domain expertise and 10x productivity. All you have to do is have the consultant bios note their WoW habits and 7 weeks of professional experience with Merb and Cucumber testing.
Even I didn't get a free ticket, I still appreciate what you did. I'm sure those guys are really happy now. Thanks !
A source code viewing app for iPhone, server code under BSD
Um, yeah. This has been happening since approximately 1980, when word processors became available. And it's also the reason why those were a lot more important in Japan than in the West: mechanical typewriters that would have allowed the use of 3000+ Kanji were simply impossible to construct, so digital word processors were a huge revolution.
Why don't you do it then, if it's such a great deal?
I agree with everyone else: go for it. As long as our econoomy doesn't completely implode, you'll get another job. You will have a great reason for having "not worked" (so to speak) for 6+ months -- you were working on personal goals directly related to your profession.

Me? I lost my mom in my late 20s and couldn't work for about two years due to emotional overload. When I was ready, I worried about whether I could get another job. Turned out to be no problem; people readily understood personal tragedy, and were much more interested in what I was bringing to the table than whether I'd had time off.

As Towle_ said, if you have no dependents and won't be forced onto the street due to lack of money: go for it.
Right. I think that's why good toolkits have good default behaviors that you can also easily overwrite through well documented APIs. I think a good abstraction should let you also access the underlying layer for special cases.
The flip side of this is just as interesting and not as often discussed: as a project maintainer, what can I do to make sure people like the submitter feel comfortable and welcome contributing to my project?

Here are a few things I've done with Leiningen, my Clojure build tool:

* Start "low-hanging fruit" threads after every release explaining simple ways people can contribute.

* Create a HACKING guide describing the overall architecture and flow of the project. Include style guidelines and instructions for submitting patches.

* Give people commit rights as soon as possible. I've adopted the "one accepted patch, and you're good" policy from the Rubinius project. Yes, this means unqualified people will have the power to make ill-informed commits directly. But in practice people tend to behave when you give them responsibility. Evan, the Rubinius lead, has had to perform less than ten reverts in the three years he's used the policy.
Sounds like simple economics: if you can't afford to pay people in cash and your start-up doesn't look attractive enough that options look attractive then you won't be able to attract the talent.
*"Their" - ungh.
Amazing Augmented Driving App on iPhone
Maybe you want something like this: http://code.google.com/p/nhaml/
People that hold on to the GPL as their saviour believe that if one can take code, change it, and NOT have to give your changes back to the community it has made the code LESS free.

They don't look at the freedoms each license gives but just their own selfishness of wanting everything shared for the supposed greater good, when those of us in the BSD community really don't worry too much since most companies put back BSD licensed source code anyway since it is in their own best interest. Giving the companies a choice is something they can't fathom.
He'll tell you he can't do that in only under 140 characters!
Colonel kicked out of war for hating PowerPoint
This is key. There may be some professions in which you can kick back and slack off after 40 but programming is very much not one of them.
agreed but imho programming is not only art , it is also science.

It would be like to say to be good at programming you need to be good at art and math, which are both considered "hard to master", which make programming even harder.

And then you can add the 3rd element: time (or experience), or the classic "to be good at something you need to practice it for at least 10 years", which make the whole thing even harder.

I don't know any tools that can make those 3 things easier.

I must say that the article have one flaw, it presents programming as an activity you can or can not do, eg. "I'm not able to do something because of something else", me I would say that to be able to do programming you have to be good at it, and I'm not just talking about understanding the tools, the languages, the API, etc.

Really, it is all about being good at using a language to solve one or more problems.

My guess is when people says "programming is hard", is that they assume it is easy to solve problem if you know programming, and fail to see that it's not programming that is not easy but solving problems that is not easy.
The fact that redbox was not a blockbuster development is final proof of why blockbuster should die.
We all compete with people who will work 60 hours a week for half our salary. Words cannot express how much I disagree that "knuckling down and doing your best" is a sustainable competitive position. Do it better than they do. Do it measurably better than they do. Do it ridiculously better than they do. Widen the scope of "it" to include a skill not on the menu at RentAResource.com, then do it. Market your doing of it better than they do. And, finally and most effectively, own the effing company.
Last year MS applied the Community Promise to both of those standards. See:

http://port25.technet.com/archive/2009/07/06/the-ecma-c-and-...

And let me quote directly from the FAQ:

"Q: Is this Community Promise legally binding on Microsoft and will it be available in the future to me and to others?

A: Yes, the CP is legally binding upon Microsoft. The CP is a unilateral promise from Microsoft and in these circumstances unilateral promises may be enforced against the party making such a promise. Because the CP states that the promise is irrevocable, it may not be withdrawn by Microsoft. The CP is, and will be, available to everyone now and in the future for the specifications to which it applies. As stated in the CP, the only time Microsoft can withdraw its promise against a specific person or company for a specific Covered Specification is if that person or company brings (or voluntarily participates in) a patent infringement lawsuit against Microsoft regarding Microsoft’s implementation of the same Covered Specification. This type of _suspension_ clause is common industry practice. "

I think Google would have been safe had they used this, rather than Java.
> ompeting neck & neck with people twenty years younger willing to work 60+ hours a week for half your salary

My probably naive question is, how come you earn twice as much in the first place? Shouldn't salaries reflect the value you provide to your employer, so that either 1) you don't earn as much because you're actually worth less than the 60+ hours working kid, or 2) you earn twice as much because the hours you do put in are worth more than the kid's hours?

I would hate to be out of a job at fifty because by some arbitrary convention I'm supposed to either earn twice what the kid earns, or alternatively be jobless. If I can't provide more value than the kid, then pay me as much as you'd pay him.
That's assuming you're doing the same thing you used to do 20 years ago.

I mean even with new technologies, if you end up building sophisticated CRUD interfaces with language FooBar 20 years from now, you can't really complain about it.

People who managed to differentiate themselves in CS over the years moved to stuff like computer vision, natural language processing, designing programming languages, optimizing virtual machines, designing protocols or mixing their knowledge of CS with another field.

Very advanced stuff which takes years (if not decades) to master and to write/build properly.

So, I would only worry if 20 years from now, you're still solving the same problems but with a cuter UI and a faster machine.

PS: Should have used "one" instead of "you". I don't mean "you" ;-)
I agree. The game industry is not a great example. Largely because people are a lot more likley to simply by major party games. Mathematica or Matlab are probably better real world examples, although certainly not an app that Joe Plumber would use.
Best Buy caters to getting people in the store to touch products, once people are the staff tries to encourage "getting it now." Sure, they could wait a week and get that digital camera for $100 less, but most people want to touch the thing they are buying and get it instantly (in America, at least).
It's not only Wave!
Hey guy, it was racism that screwed up our city of Detroit, not highways. Get it straight. Geesh.
Not really much different from what has happened in the west, my handwriting (which was never easy to read) as flown of a cliff since I left grade school.

Which is mostly not a problem, except that I makes it more difficult to write on whiteboards.
IE9 is a lot friendlier to a system admin trying to install on hundreds of computers. The default Chrome download doesn't even install system wide. It would help if Google has a simple MSI package that did a systemwide install and allowed for updates from a local server, not calling Google all the time.
This vastly undervalues knowledge and experience. Maybe a graduate can compete in the day to day work of programming but over the long term of projects that extra knowledge and experience is going to help, assuming the senior programmer is constantly learning. It would be true to say programming in general isn't one of those professions where you can learn your craft and then spend a career applying it.
Your not the mid-30s programmer, your the mid-20s programmer. The drop off happen after your mid-40s.
In that case, they are suffering from the same internal-politics fratricide that Microsoft has been long suffering from. I'm wondering if Google is at the peak of their innovation curve?
So, we should be taking care of our own career growth? Shocker.

Yes, there will be a point where your salary will not grow. But that salary is usually higher than most other skilled professions. (Note: this is an assumption; if I'm wrong, that would be interesting.)

My experience has seen very little "mastery" in programming; after about 5 years, most engineers hit about the same level of ability. (Note, I'm not saying you can't hit mastery of a particular thing, but that most don't do it.) Thus, there are only two kinds of programmers, skilled, and learning. If you don't gain differentiating skills after those extra years, why should you be paid for it?

Maybe this is the real "dark secret": most programmers don't know how to gain mastery of something useful to a business. Maybe this is what "we" should be worrying about, rather than hiring practices?
The problem is that what you describe is not the alternative I've heard before. It's not that you'd remove things to nothing, but rather that you don't add something that is necessary or beneficial, because there's this belief that adding things is bad. I hear this from a lot of college grads, who apparently read a blog that talks about this, or maybe read this quote.

My point is you don't add stupid stuff, but you don't blindly say not to add something, and simply look for things to remove.
Intel had a geographic cost of living salary adjustment when I worked there.
Of course, I'm also interested in hearing from would-be contributors: anything else that could smooth along the process?
Ideally, things should work that way.

But in reality, salary worth is determine by your negotiation skill within that limited time window before you accept the new job. And that's another industry's dirty little secret.
Do it ridiculously better than they do.

That sounds nice on paper, but there are a lot of extremely talented and productive young programmers on the market now. The kind of education you can provide yourself if you really dive into the open-source world and things like github simply wasn't available even ten years ago. So yeah, do your best, in the old fashioned sense of the word before people became so enchanted with non-sequiturs like 110% performance.
>Should we really just be saving "no" and keeping silent on good ideas even though we are developing them?

I think a good way of combating that is to get a page up for feedback submission. Anytime you have users like that, ready to make a decision based on your answer or lack of one, you direct them to that page and gently ask them to leave their suggestions for the team.

At the end of the day you need to be honest with your users, but do so without revealign what you'll be doing. Instead say that feedback and feature suggestion is crucial, but we can only support the most popular ideas for now. Which is the truth. If adding a feature is requested by 60% of your base, you know you're going create value by giving it to them.

Goodluck
What Andrew is doing is priceless. If his interviews don't motivate you enough to go and grab what you want, chances are nothing will.
> Apache Harmony isn't spec-compliant only because it hasn't been blessed by the TCK, and the only reason it hasn't been blessed by the TCK is because Apache disagrees with the licensing terms of the TCK on principle

The Sun patent license grant is completely incompatible with the Apache License. As is it is impossible to combine the two. Apache isn't just grandstanding -- the conditions made it impossible for the patent grant to apply.

There is no FUD about Harmony. Harmony has zero patent protection. Any other cleanroom implementation has zero protection, exactly as I said, until you essentially bow to Sun cum Oracle. My original statement is factually correct.
I don't get why someone who is older should get/expect a higher salary, all things considered. To me, it seems like this should be a free market thing. And by free market I mean on a global basis. On the other hand, I am in my late 50s, and I don't think that I have ever suffered from age discrimination (but who knows).

Experience over the last 14 years as a consultant, working with a few very skilled people in Russia, Brazil, India, Vietnam, etc. has convinced me that salary or consulting fees should be based on value provided, not location, age, etc. I offer a 60% discount when I work remotely because frankly remote workers are not as effective as having everyone in one location and I see little difference between myself telecommuting in the USA or someone equally talented half way around the world, assuming that people are willing to time shift their work schedule as needed. Age does not have too much to do with it either, except that I find myself unwilling to work long-term more than a certain number of hours per week - and this is probably common with older workers.
How I learned to be wary of lawsuits
That was fixed some time ago. It is very marginally slower to use Symbol#to_proc now (a constant time difference to actually create the Proc), but not enough to warrant a change in practical use.
You're picking good range pricing, I'd add to that in our experience odd numbered pricing - eg 79, 95, & 99 - outperform even numbers.

This seems to fit accross the board - meaning if you selected a price group to test of $10 / $20 / $50 as your first test, run a secondary test with your winner and even derivatives.

EG if you sell the most @ $20, try $19.95 / 19.97 / etc - you can squeeze suprisingly large gains out from that fine tooth testing.

We covered some of this a while back in our blog post on price elasticity testing w/some of our results too -

http://conversionvoodoo.com/blog/2010/06/one-simple-secret-f...
I agree. Salaries should correlate more directly with performance but in a lot of companies you steadily collect your yearly raises and after a while they add up. This can be very dangerous for people in tech though. In fact I just left a job after ten years of steady raises because I felt I was stagnating. I'll probably take a considerable pay cut in my next job but I think staying put would have been a lot riskier in the long run.

At least I'm not chained to an S.F. mortgage that means I can't live on < $90k/year.
He should have sued Oracle too.
You may be right about the Community Promise. There are dissenting views, though (http://www.fsf.org/news/2009-07-mscp-mono)

I'm sure Google's lawyers considered the Java choice safe too. If the Oracle lawsuit is resolved in Google's favor they may yet turn out to have been correct.
I would expect it to have plenty of algorithms to implement mutexes with, as well as parallel sort algorithms.

There are also going to be a lot of pointer based tricks that you don't get unless you really understand pointers.