skysight-inc/HackerNews huggingface dataset:
Sorry if my comments were confusing. I intended no sarcasm nor arrogance.

I started off in VBA hacking recorded macros. I would then write hundreds of lines of code into a single function (usually named "DoSomething" or something equally vague) and then I would live and die by the VBA debugger, tweaking the function when it broke. Over time, I learned the value of encapsulation and how much easier it was to debug my code if used smaller, well-named, functions.

When I started a different job and ended up doing a lot of VB6 programming, I ended up reading a lot of others' code. I would stare at functions that were literally 1000+ lines of code an painfully difficult to debug. The purpose of the VB6 code was to print barcoded shipping labels in a specified format, but the ZPL print instructions were heavily mixed with business logic. It was a nasty mess. The single greatest thing that would have helped me would have been encapsulation. Even if the developer hadn't separated the business logic from the ZPL code (which would have been very nice), small, well-named functions would have made the program so much easier to follow.

The reason I mention encapsulation specifically is because of how much you gain as a developer. If you learn nothing more than basic encapsulation as a VBA/VB6 developer, you'll do wonders for the readability and maintainability of your code.
Egor Homakov: Slides "Rails & Security" from Devconf, Moscow
What Peter Thiel can't teach me
Microsoft also pays more than this. So does any number of the larger tech companies.
The article doesn't mention the corporate housing options they offer, or the relocation reimbursement, or the various other perks that (pretty dependably) come with any offer from a large tech company in the U.S.
I really like this idea. I will be keeping it in mind over the next few weeks. Please add more information (what languages? what size problem? what price?)
That makes sense if it's just you, but you must be losing a lot of potential contributors by not being on Github, let alone not using any version control.

Are you just not that interested in contributions from the public? If so, I think it's possible you're greatly underestimating community interest in the project.
Why is it that in every thread discussing Apple's potential misbehavior, people bring up their extreme profitability as if that were somehow relevant to the question of right and wrong? Drives me nuts.
It's a neat little device. I bought mine probably a year or so ago and it's sat largely un-used. I think they were fairly new when I got mine, so these issues might have been fixed, but...

1) small size (think mine's 7 inches or so?)
2) difficult/impossible to write small enough to fit a good amount
3) no way to save pages (in any way). I tried to hack my way around this by snapping pictures of full pages, but it just became too much of a hassle.
Ask HN: Best practices for creating API
I am trying to build API's for a website . I would like to be referred to documentation which would help me use best practices for creating my API.
Good question. TubeDrop (for now) only returns search results that support at least 720p. That means all search results are videos whose audio is encoded in at least 152 kb bitrate with 2 channels at sampling rate of 44100. Some videos that are encoded in WebM have a bitrate of 192 kb. TubeDrop automatically defaults to 192 kb bitrate with 2 channels at 44100. That is essentially the highest quality you can get from YouTube, so why bother customizing it?
My biggest concern with this article is that it's simply a number of glassdoor numbers collated into a list.
or the idea that I'm somehow an advocate for single sex education

Hmm, that was the message I read. From the conclusions section, "Lessons Learned: I’d never really believed in single sex education... but my experience last weekend changed my view."

Perhaps it isn't clear which of your views have changed, if different people are associating that last part of the quote with different parts of the article.
Interesting angle, as I'm probably the opposite on the 'done' aspect for client work. I mean, at some point, I stop, but usually want to keep iterating on things for the client when they simply don't want to. They don't have the bandwidth for continual iteration - they need something that works for needs X, Y and Z. Once it meets those needs, they're 'done' (and usually 'done' with me too). I struggle to not keep working on something, iterating, etc beyond what the initial specs were.

I'm working with a couple clients where it's an interesting mix - we're iterating the product to meet evolving needs, and discovering some of those needs as we go along, but many projects aren't like that.
It's not salty enough for my taste. What you've done is no different than:

H(H(Password) + Salt)

If I steal your db and have another db that contains your user's unsalted password hashed with the same hash function, I can easily test if the same password is used in both places, simply by replacing H(Password) with the other hash. This leaks information and provides incentive to continue trying to crack the easiest target, if I really want what you have.

A simple change makes this comparison impossible:

salty = H(H(Password + Salt)

Now there's no place to plug in the other hash, so I can't tell if the accounts share passwords until I successfully crack one and try it on the other. I might not bother and focus on lower hanging fruit.

Always assume your salting method is public, even if you make attempts to keep it secret. And remember that your site isn't in isolation; your user and every site they interact with are also potentially weak links in the chain.

Note that the examples above are oversimplified. You should look to a better authority on how to properly store passwords. In a future leak, we'll be surprised that the sites involved only salted their passwords.
I am inferring based on past experiences. I don't know for sure what happened, I freely admit that.
I haven't seen many cross-platform issues with FORTRAN. (If you redefine 4 on any platform, it will be bad.) IMO, C is much more time consuming to port to a different platform due to system headers and inevitably different system APIs. POSIX helps, but certain parts of the system aren't covered by POSIX and so you wind up with #ifdef platform support where new support needs to be added.
I'm wondering if Dave was actually guilty of what he's been accused of, or if his behavior was misinterpreted.

In college and grad school I was usually the guy asking advanced questions, not because I was trying to show off or be a jerk, but because I was trying to gain a particular level of mastery of the material, and the way I gain that mastery is to ask questions during the process of absorbing the material. I gain understanding of, say, a particular algorithm by asking if a particular extension of that algorithm is appropriate.

This makes me wonder if others mistakenly viewed me as a troll, or felt like I was dragging the classroom down, due to my learning style being something of an outlier. (Being on the autism spectrum, if anyone tried to signal me about this without being explicit, I would have missed it.)
The thing is encrypted! It says it all: don't mess with me! Sure they are wrong here! This "reverse engineering is not crime" is BS.
I hate you! More seriously git is super easy to begin to use, and even more so for small projects and / or projects with a small number of contributors.

Setup? git init; git add . (if no unwanted binary in the tree)
Something interesting has been done? git commit -am "rock more"
New source file? git add file; git commit -m "new foobar module"

What value does it bring? Great revert capability, bisecting bugs, and so over. I agree most of the time I don't need it, but well, when I do it is handy. It is like being insured.
> Painting men as super villains in some grand 'Dan Brown'ian plot of conspiracy against women will NOT work.

Nobody believes this! There's no conspiracy at work. But there is is a long history of gender-based discrimination, and cultural practices that still reinforce suffocating gender roles today.

The ideas you complain about - "men are expected to be taking care of women, women should be trading up etc." - are part of that.
Software patents: Broken system or needed for innovation?
There is a pretty good case to be made that taxing capital gains[1] is not in the long term best interest of the economy. The theory being you want to encourage more investment. The saving to the government by removing its own funding and making it very attractive to invest for private individuals & companies works out better in the long run. The bonus is that keeping politics out of the mix makes for better decision making.

Could a person invest in multiple ventures, reap the rewards, and not pay taxes on a large amount of income. Yes, and it does seem unfair, but people are being employed; businesses are being built; and that money is being spent. We need to think about the overall goals of the system as opposed to "fairness" at each point.

[1] there are many articles - for a math heavy one: http://www.mpls.frb.org/research/qr/qr2331.pdf
That is such a good idea! I really hope that catches on.
Ha! Well played, Christina. Well played.
Sigma.js - Web network visualization made easy.
I do have netflix, but have to say I don't miss the regular TV.
Without the villain the fragile egos here at HN might have actually read & responded to the post, instead of using it as another opportunity to argue about gender politics.
I ran cygwin and mingw on win32 for nearly a decade. Switched to Ubuntu earlier this year, never looked back. I write 100% portable code for work; write on Unix, deploy on everything. Even our accountant's Excel macros work for me in LibreOffice. Absolutely do not miss Microsoft Windows, good riddance.
Has this place become like zdnet or something like that?
I agree; why is gender even relevant to this?

The author volunteers for female-only class (which he makes sure to highlight), and thus assumes his whole experience is down to the fact the class is all female.

Remove all references to gender and there is no significant change to the story. I think that reveals the complete irrelevance of gender.

My original point, which I guess wasn't worded very well, was that we're told about one experience in one classroom, and that has been blown up to account for the entirety of female-kind.
Consulting is a job. You have one or a couple clients, and you only have to satisfy them to get paid. You can work during the day, relax at night, take vacations, and generally let work come to you, since there is massive demand beyond supply for your services.

A startup is your whole life. Your job isn't just to satisfy a couple focused business people, but generally thousands or millions of fickle consumers. There is a high probability you won't ever be paid for your work, and if you are paid, it is often way more than you actually need.
If the headline meant app compability, it would probably have been written like: "It is fully app compatible with iPhone OS 5.0"
I think we also need to be willing to set people straight without ascribing bad motivations to them.

Maybe Dave isn't a jerk or a showoff. Maybe he is like me. I learn by asking questions during the learning process. I feel like I'm not really learning very well unless I can say "does this material imply this other conclusion?" or "if we extended this to more dimensions, would we just have to change these things, or am I missing something?" I learn by stretching the edges of what I think I'm learning.

I'm also on the autism spectrum, which means I'm unlikely to pick up on whatever social signals the rest of the class might be sending. I've tried to learn those things, but they're still pretty opaque to me.

So I would appreciate, if I'm in a circumstance where my question-asking is causing problems, if someone would pull me aside and say "can you save your questions for later? They're a bit distracting for the rest of us." I'm not doing it either to be a jerk or to show off, so I'll gladly stop if the problem is clearly communicated to me.
I'm pushing 40, but I started wearing jorts. Just in case.
Dear HNers,

Gender bias is a touchy subject in these tech blogs and the responses to this (yet another) article are, predictably, dismissive. It was one person's fault, there's no widespread gender bias, the instructor should have things differently, someone has seen women be jerks too, etc.

So while there really does seem to be a measurable, observable difference in gender involvement in computing (e.g. in CS enrollments, in working in the industry, etc), these anecdotes always get tossed as not significant.

So what I'm wondering, and this is an open question to everyone here: would anything convince you, personally, that gender bias is real, or has a significant measurable effect, or is a problem? Would it take a certain kind of experiment? Some kind of data or analysis? (Or is the answer, "it's not a problem"?) Like, what sorts of articles would people _not_ jump on the bandwagon to tear to shreds?

best,
That's a general problem in Europe. Software engineering professionals are paid a fraction of what their colleagues earn in the US, especially in Silicon Valley. I think the cause is simply that European companies haven't worked out how to create comparable value as SV from software engineering, so of course they can't afford to pay the engineers as well. And then they complain of the brain drain towards the US.
For what it's worth, that's approximately half of what some interns make at Apple.

My understanding is that one receives 1.5 times their typical salary after eight hours and twice their typical pay after 12 hours. Some students are willing to put in the occasional 100 hour week when internships only last four months. Considering the base salary Apple offers is already relatively substantial (speaking as a student, at least) that can be quite a lot of money.
Working on unimportant things often leads to overlooked things, and that's gold. "the future" is more or less defined by its disagreements with the past about what is and is not important.
The App of Invulnerability
I'm sorry, but I really find this detail particularly intriguing: "extending human life-time". Indeed. But what for, exactly?

I can't help but look at elder people and think it's a disservice to wire them to those machines, fix their hearts with what I'd call batteries and generally go to any extent as long as it "extends" life at any cost.

Perhaps it's simply related to the way I lead my life and the choices I make but I'd rather live 50 freaking years than a freaking 100.
The Daguerreotype and the Beginnings of Photography
> But for the judiciary, many of the liberties we take for granted wouldn't exist.

True. Then again, a lot of evil has been done by the judiciary. Particularly with the supreme court, you have a small number of unelected decision makers who wield an enormous amount of power.

> It's easy to sneer at "activist judges" when you don't like how the rule,

Let's not throw out the baby with the bathwater, though. "activist judges" is a loaded pejorative, but in the right context it labels a real corruption of our system that we should be wary of.

A true "activist judge" is one who gives the government new powers not explicitly granted by the US Constitution -- whether by allowing a new law to stand that doesn't pass Constitutional muster, or by creating new concepts out of thin air.

The Legislative body is where we want our laws to be constructed, since those guys are the easiest to control through democracy. We don't want that law making function to leak all over the system like into the judiciary and the bureaucracy of the executive branch where we don't have good mechanisms to track and control.
Right. They should be separate but equal.
Right now it isn't very scalable, you're right. However, given this positive feedback we are having, we will really consider taking people in to take care of this load.
The author wonders what important came out of, say, Farmville, and I think the answer is something along the lines of the importance of business intelligence - the attention paid to user telemetry, A/B testing, and product iteration has grown based on this has grown by an order of magnitude since Zynga started bragging that they could determine the ideal size of e.g. a call-to-action button.

This makes it obvious there's an unstated assumption at work here, though, i.e. that the unimportant work plays a significant part in developing this technology. I don't think this is necessarily true: the opposite premise, that "it's GPUs time when it's GPUs time", seems equally plausible.
Yeah definitely -- I guess what I meant was that there's now an interface to manipulate code, without having to touch code, and then it automatically goes through the process you mentioned
I'm curious about these numbers. Do Facebook interns receive insurance? Do they get any other benefits, like stock or bonuses? Undergraduates have echoed numbers like this to me, which is great, but we should be careful to compare internships with other internships, not against full-time employees. They don't seem to be apples to apples comparisons.
Derivative work that uses the engine must be GPL'd too. That is bad for commercial products that intend to be closed source; I guess those are the commercial products that buy the engine.
The good thing about Apex is people can provision their own workspaces whwnever they want, but still get the central IT support for backups etc.
your country has over your internet?
If you're doing any real work in a console on Windows then you're in a world of hurt. The console itself is just awful compared to what you have available on a real, POSIX-compatible OS (Linux, OSX, etc).

This extends to SSH apps, too. Putty? Seriously? And implementations of tabbed and paned shells (the few you can choose from on Windows) are terribly ugly and clunky.

Windows 7 (and presumably 8) is a fine OS. I really had no beef with it. But as an engineer I spend far too much time at a command prompt to ever consider going back.

Also -- you don't boot your VM every time you want to use it. You keep it running in the background. Allocate 256MB of memory to it and forget it until you need to use a real shell.
I've found the video RESTful API Design by Apigee to be very practical and interesting to watch [1]

http://www.youtube.com/watch?v=QpAhXa12xvU
And if I recall, Feynman at this point was burnt out on the important problems. Thinking about unimportant problems, where he was essentially playing, is what finally led to the breakthrough. It's like me going for a walk to clear my head, except with him it's complex motion equations.
Adobe ColdFusion 10, Dinamics Webs HTML5
Similarly, there is nothing to prevent a 'female Dave' from joining the next single-sex educational group.

This is not to imply that there aren't good reasons for women-only education, but this isn't one of them.
I'm surprised that people are confused. Is there a regional difference in the way this would be phrased? In my (US) experience, "engaged with" unambiguously means working together, while "engaged to" unambiguously means getting married.
C'est la vie

I'd actually call the Minitel terminals a success from the description in the article. A technology that lasted 30 years is pretty rare in the computing world and if you think about it, they outlasted some pretty amazing companies.
The astronaut who took these pictures, Don Pettit, is also an accomplished hardware hacker. He built his own barn door tracker[1] from spare parts at the station. A barn door tracker is basically a device that allows you to make long exposure pictures and by slowly moving the camera, keeps stars as points of light instead of trails (the opposite of these pictures).

[1] http://en.wikipedia.org/wiki/Barn_door_tracker
I'm starting to suspect that the "sorry" in the title is not really sincere...

Also interesting that the title was originally "Sorry white guy...", as evidenced by the permalink.
Me. I started working for myself in 2000. Certainly I've had ideas for a product, and a few that I've prototyped, but nothing more than you might expect from someone trying out a few things at home, away from their actual job.

(Strictly speaking that's not quite correct. I have released a few open source "products", but I charge no money for them. My revenue for the last 12 years is from consulting and training.)
This is great. I love reading stuff like this to gain other's insight, and just to give me incentive to look at cool open source code.

Does anybody have additional recommendation of similar reviews of interesting open source code?
Surely here the issue is not "importance" but "interesting"?
No, it's not irrelevant. If you're trying to figure out what gets passed up the call stack, you need to trace it through. Being able to plug in your own values into a single method call via the REPL isn't helpful if you're trying to analyze what really happens when it runs. Either you need to run it under a debugger, or manually trace it through. In a static language you just have to read the type signatures.
To hit the employee until he signs?
I have a deadly and incurable medical condition. A big part of getting myself well involved eating at restaurants and tipping the wait staff well in preference to spending time in doctor's offices. People react to the "news" that I got well with either treating me like some hugely inspiring figure or calling me a liar and charlatan to my face. It is very clear to me I know something of value to the world and have made a real difference in the lives of some people. Yet I cannot figure out how to monetize it and I have spent some years trying to figure out how to just talk about it without flame wars breaking out.

In my experience, the big problems need "small" solutions. I got well by gradually walking away from the hard hitting drugs whose overwhelming strength hit my body just as hard as it hit my medical problems. The pursuit of the hard hitting solutions strikes me as rooted in fear and reflective of inelegant mental models.

"I love Lucy" was the "Star Wars" of its day in terms of revolutionizing an industry. I suspect it also helped combat racism in this country. Lucille Ball was originally told they would not cast her Cuban husband in the role, that no one would believe that. I think they took the show on the road to build their case that audiences would accept it and she did eventually get her way.

Did she set out to change an industry or combat racism? No. She wanted her husband on the show to try to save her marriage and finally have kids. This industry changing TV show was a lifestyle business. They did finally have kids but ultimately divorced.

Having "cured CF" (so to speak) and mostly gotten spat on by the world for trying to share such info, my hope is that I can eventually do a web comic. I think humor is a far more palatable means to share wisdom than trying to "help" people. Solving serious problems that run deep tends to be too threatening to people. Entertaining them, making them laugh and incidentally causing them to think seems to be a more powerful and effective means to really change minds.

I continue to wrestle with such questions. But I think the most elegant solutions make light of problems. I only hope I can resolve my problems well enough so I only need worry about "unimportant" problems. That would be a truly amazing accomplishment given my history (and genetic disorder).
In my experience, communication is the lion's share of the work in a programming project. Unless the task is super self contained, I can't see this being useful. I suppose I could say, "I need a jquery plugin to do this" or I need a thingy to read this obscure file format and turn it into x y or z. But aside from examples like that, I think this might not meet the cost/benefit requirements of most potential customers. That said, I already can think of a self contained task I want to ask you guys about.