skysight-inc/HackerNews huggingface dataset:
The differences within groups far outweigh the differences between them.

I'm a 30yo self-taught programmer. I've worked with many CS grads over the years.

There are pretty big gaps in my knowledge of what would be considered fundamentals, some of which are more important than others. I think the type of software you write largely determines how important these gaps are, and that being aware of the gaps in my knowledge has been more important than actually having the knowledge itself. If I need to implement something that requires some knowledge I haven't yet picked up, I learn what I need to know as I need it. Sorting algorithms are an example of something that any CS grad would know way more than me about because the need to understand all the alternative ways of sorting is not something that I've needed to know.

An important distinction is the difference between knowing something and knowing the language to describe that thing. I understand the time complexity of algorithms, but I didn't learn Big O notation until recently.

I don't know if this observation is true in general, or more common for the CS programs where I live, but I've noticed that CS students and recent grads are terrible programmers. That is, their ability to produce well-written, maintainable code is horrible. This can probably be said of all new programmers, even if they are self-taught, but I think the difference is that many of the CS students I've worked with have the illusion that their CS knowledge is what is most important when they write software, so they are more ignorant of their ignorance.

Learning all the fundamentals of CS in the classroom is no doubt a huge benefit, but many of the other things that make a good programmer come down to experience in a lot of cases, and the classroom is not going to be a substitute.
In my experience, self taught engineers are typically better with frameworks and more productive - but less detail oriented and have less grasp of theory.

CS schools naturally teach you to be slow paced, detail oriented and methodical, and it is sometimes good and sometimes bad.
Being able to answer those questions represent 1-2 freshman/sophomore level courses. Being able to answer these questions represents signaling more so than answers that are intrinsically representative of skill.
I don't claim to be an expert, but I know that name calling will not get me an inch closer to understanding the situation.
I'm referring to unique_ptr, introduced in C++11.

http://www.stroustrup.com/C++11FAQ.html#std-unique_ptr
i don't mean it so literally, it is a misfortune of how these words are commonly used to describe character traits that have nothing to do with gender. its nothing about masculinity, or machismo...

this concept of 'being a man about it' i think most people understand if you say it that way, which is why i use those words.

its a shame that it is such a gender specific term because 'manning up' and 'not being such a girl' are things that i believe women should equally be encouraged to do as men. the fact that the terminology is classically steeped in sexism really sucks because it quite literally turns 'being a man' into a compliment and 'being a girl' into an insult...

all people should be encouraged to be strong and self-reliant.
>In 2002 Daniel Holz and John Wheeler investigated this idea and ran all the calculations in their paper Retro-MACHOs: Pi in the Sky?

That's one of the best paper names I've come across.

From the introduction:

>The bending power of a black hole is not limited,
however, to small angles but reaches π and odd multiples
of π. Illuminated by a powerful point source of light,
the black hole will therefore shine back with a series of concentric rings (we call this retrolensing).

Does anyone know if this sort of research is on the agenda for the James Webb Space Telescope? Our space imaging has progressed dramatically in the last couple of decades, so it wouldn't surprise me to see many more MACHOs (maybe even Retro-MACHOs!) being discovered, in the same way our understanding of the vast number of galaxies in the universe was increased by the Hubble Space Telescope.
I think that's mainly a consequence of the work climate in the US. Unfortunately people have to act as if they were asexual. Or, at least pretend they completely uninterested in sex. It's a shame to think that one of the greatest preoccupations in people's minds has to be subjugated and buried. I think that's a bit unhealthy for society.

Don't read that as saying harassment is okay. Harassment is not okay. However, talking about sexual topics bringing them up, etc., is not sexual harassment, prima facie. But this is where we are, unlike Europe. I dare say in Europe there is less sexual harassment in the workplace, but simultaneously there is more open talk about sex at the workplace; people don't have a puritanical knee-jerk reaction to sex. Talking about sex and complimenting people in the workplace is not some weird taboo. They understand people are sexual creatures and don't try to pretend they are not.

Again, it's reprehensible and bad to sexually harass people. I think any normal person would agree --but I would have to disagree with saying that to combat sexual harassment it's necessary to extirpate sex from people's conversations at work. It's unnatural. What's next, sing a contract explicitly allowing consensual sexual talk at work to ensure correctness?

To put this another way, women also like to talk about sex in the workplace. What they don't like is talking about sex turning into an invitation to sex. It's not. Sometimes people just want to talk. And it's not as if women are sexless beings without impulse. As men, women too have sexual thoughts about people at work but they don't typically act on them in a repulsive way, where as men don't control their impulses as well (plus tend to have the power imbalance in their favor).
>What?? Not really. Keurig machines refuse to use anything other than a Keurig-brand K-Cup.

That's not true.. there are several no Keurig-brand K-cups that are compatible with Keurig machines.
(I'm new to HN so not sure how to edit)
Thanks for some excellent answers.

So as to keep the discussion to the question's point for posterity, I think I wasn't very clear. As some people have poined out- I'm not looking for graphic design patterns, or design from the user experience perspective.
I'm looking for how to design my components. and what should classify as a component, or what should be an individual template. What should go as a parent and as a child in the component. Thanks again!
I cannot believe these are the actual people responsible for Debian. Is this unprofessional attitude common in the Debian community?
warehousing/delivery is done by amazon. Only the transactions are done on alibaba (Tmall) platform
It's that "Glitch Grrrlz" icon.
If thought about properly, it doesn't.

If you pull in a dependency on Xlib because you wanted a matrix math function from a graphics library, then it does.

If you're building on a platform that emphasizes many small libraries, and you pull in a few well-reputed ones, only to find that your dependency graph now includes 15 small buggy libraries hosted on github and abandoned by their developers, then it does.

If you introduce a dependency on a Windows-only library in your game's physics engine, and then want to port the game to Linux, then it does.

It's possible to be sloppy with using libraries, but I don't think academically-grounded programmers are any prone to being sloppy.
Basic Docker Container Linking with Node, Redis and RethinkDB
These are good tips, thanks!
I agree with your second point and disagree with your first one. I don't see how either is a rebuttal to what I wrote, though.
Been a while since GR, but I'm pretty sure some of those indices are supposed to be on top. A_{ij} = B_i^k * C_{jk} possibly, but don't quote me on that.
Ok so basically, being irresponsible about which libraries you depend on. Got it, thanks!
Thank you. I read them and they are exactly what I'm looking for. May I ask how you learnt this so that I can too?
If you go into catexplorer, click on "P()rn". Quite a list of unfortunately URLs!
Bitcoin makes the technical process easier but doesn't help with the hard problem (as you said): finding a third party with domain expertise, whom they both trust, who is willing to adjudicate at very low cost.

It sounds like your startup is trying to solve that and create a "Trust Marketplace". Godspeed. Establishing trust between strangers is a very hard problem.

And while you may find a way to innovate around existing laws, new laws will be written.
While not exactly what I was looking for, this is very useful, thanks!
Poorly written article. How do the economics work? Who pays to install the farms? What do you subscribe to? What are you agreeing to for 25 years?
I was self taught then did a CS degree, so have a foot in both camps. Some of the things I learnt in the degree which I never would have learnt by myself were (and others have mentioned some of these) - algorithms, relational theory, O-notation, symbolic logic, stats, CSP. Then there were things I learnt myself that I never learnt at uni because I wanted to - assembler, 2d/3d graphics, c++. Then there are things I've taught myself since uni - compiler theory, database optimisation, functional programming (actually did this at Uni but couldn't see the point then - hardware was rubbish then though), web stuff.

So difference would be in broad for my case - uni gives you the theoretical foundations that you probably wouldn't learn yourself, teaching yourself programming gives you the hands on stuff you'd never learn in depth at a uni. Two sides of the same coin I suppose, it would be rare to have a self taught person learn the theory that you'd learn at uni, and I don't think you'd ever get that depth without some uni training imho.

The other thing that comes to mind is if you're smart and self taught - why wouldn't you do a degree? The only good answer I can think of is that you're so friggin awesome you're churning out code that everyone says is awesome and google or apple has hired you already, there are perhaps 10 people in the world like this - everyone else do your degree :-)
Thank you. While not exactly what I was asking for, this is great to know.
If an interviewer forced me to install skype so that I could just proceed with the interview I would know that I did not want to work for that company.
Just plate it with pure gold.
You're right :-)
Ah missed that. Yeah then it may be good enough randomness.
"If it's gonna be a amateur night, I want a hundred thousand dollars. I want it upfront. I want it in a bank account. I want another $100,000 when you get the case."
The "custom algorithm" thing is a red herring. You'll need to use some method to come up with your custom algorithm, once you see the input file, and whatever method you choose is itself a compression procedure, targeted at a fixed decoder which is essentially a Bash shell with a C compiler (* ). If you intend to treat different inputs differently (e.g., "if it contains the string "AB", I'll use this algorithm, if it has more zeros than ones, I'll use this other one, etc"), this just means that your compression procedure contains some 'if' statements. The laws of information theory don't care whether your compression procedure is actually a computer program or just implicitly encoded into human actions; it's still impossible to reliably represent random data with fewer than the usual number of bits.

(* ) There's a little bit of leeway here because the challenge as stated isn't actually precise about the execution environment. You could probably sneak in a small number of illicit bits by negotiating out-of-band whether the decompressor is to be a C program, ELF binary, Perl script, etc. It's not obvious how to make this useful though.
Building skyscrapers on Chicago's swampy soil
What KORG's got there is a lot more like a traditional vacuum tube than what's being described in the 2012 article. It's primarily intended for audio equipment that'd traditionally have used a tube anyway.
If you are writing a enterprise crud or workflow app that likely wont ever be looked at again till a systems upgrade comes in 3 years, having a sprawl of abandoned or semi-abandoned libraries can be a nightmare to update.

Enterprise it management includes trying to coalesce around a well known corporate standards for that reason. It's much easier to maintain upgrade a portfolio of projects if they are all using the same libraries than if each project is using a different 3rd party library. Sometimes these standards mean sucking it up and using core language feature or existing library features to bridge the gap to where you want to be.
Given enough time as a programmer, we're all self-taught depending on what you mean by that. My degrees are in mathematics. However, I mostly learn now by asking about what type of api, constaints, types, and conventions will give me the desired result. I'll hack at it and use StackOverflow or watch video when I need some insight or syntax/implementation examples.
That was what a degree was for in the old days - it was to teach you how to learn. There are other paths nowadays I suppose, but a degree is a tick from an institution (who are experts in learning) that you can learn something and presumably if you've done this you can learn other stuff.
Your analogy doesn't include contacting the drunk driver's former employer and asking them to ask him to change his apology.

She can feel whatever she wants to about whether it was in good faith. But it feels a little underhanded to allegedly try to secretly get him to modify specific statements she doesn't like (possibly with intentional extra leverage by including the former employer.)

I say secretly, because another option would be including the request to modify his comment in her own comment[0], and removing it from her own if he did. Yes, that would look silly and be easily discovered, which is probably why she allegedly tried to do it non-publicly. (To her credit, contacting the employer may have been just because it was the only means she had to privately contact him.)

I wonder if she immediately saw the tidal wave coming for her when he posted he'd lost his job. If so, it's hard to blame her for trying almost anything to avoid it. Still, it fits into the original comment above, that this was a person deliberately trying to control a narrative to suit her agenda, that being transparent was less important.

[0] https://news.ycombinator.com/item?id=5391667
“Overly sexy” doesn't tell us anything more than it's beyond what he can handle. You'll get very different answers for that question depending on who you ask, so it's really premature to say “somewhat modestly” when you have no idea what that means or automatically assign blame to the woman.
> When you commit to a 10-year support cycle, you'd better be prepared to backport quite a few things.

OTOH, when you make a break-the-world release every six weeks, you can expect lots of breakage when dealing with the rest of the world. From what I can tell, Google pushed a feature they wanted into Linux, then didn't bother to think about backward compatibility. This would be fine if Chrome weren't force-updating software -- people on older kernels could just wait and update when they updated their kernels -- but alas that is not the case.
What if it's necessary drugs, like anti-psychotics? What if they have a physical dependency? What if it's life critical, like a benzodiazepine addiction?
Here's my generalization ... CS students aspire to be good architects, self-taught aspire to be good programmers. The caveat - experience and aptitude combine to blur the groups.
Using the GP's figure of 65 years ago, you could check out Elron's claims. Scientology was founded in 1952. Dianetics was going crazy for a few years before that.

Other than that we need to find some MACHOs between ~700 and ~1800 lightyears away in order to check the claims of the more popular religions.

But, considering the data would be coming from the scientific (and in particular the atrophysics) community, it would be ignored by those who found it inconvenient.

Religion and Astronomy have a very checkered past.
Hi! Author here.

The blog post and source code refer to an older algorithm than the one in the demo. Currently it is using a convolutional network for prediction not dissimilar to [1] or [2]. I'm writing a paper about it, if there is interest I'll put it online :) .

Thank you for the feedback on incorrectly identified characters! The algorithm is not quite perfect - 70% accuracy on a randomly chosen test set.

[1]: http://arxiv.org/abs/1409.4842
[2]: http://arxiv.org/abs/1409.1556
Show HN: Giving Away Education for Free
Chrome isn't your average application, though - it pioneered the modern use of tight process sandboxes in general (in client-side applications, anyway), and in particular was the biggest motivating client for (and Kees Cook on Chrome OS Security wrote some of the code for) seccomp-bpf, the ~3-year-old sandboxing mechanism that allows precise control of permitted syscalls and syscall arguments. The incompatibility here is related to a new seccomp feature. I don't know whether it's reasonable to drop support for older kernels, but it's no surprise that Chrome is using the latest and greatest in kernel sandboxing support.
Hermit crabs are great scavengers and mostly peaceful, but they hardly wait for a shell to be vacant before moving in. They will definitely kill a live snail to take their shell if they need a bigger home. Or another crab.
RHEL/CentOS 6 has been unsupported for quite a while by chrome before this had happened.

I assume they'll either drop support altogether or will support RHEL 7 until RHEL 8 is shipped like they did with RHEL 6.

They don't care that most people don't jump ship and upgrade RHEL as soon as a new release exists.
Funny that I just mentioned the CA that issued the cert for this site in https://twitter.com/yuhong2/status/574416966460403712

FYI, the Mozilla inclusion request is in https://bugzilla.mozilla.org/show_bug.cgi?id=557167
What do you think about this startup?
Chances of getting a collision is higher than getting a good solution, but having multiple hashes does help in increasing the chance at a good solution. With a hash 1 bit less than the length of the file, we put two pigeons inside one hole, and have a 50% chance at picking the right pigeon. The fewer/smaller hashes, the more we get "sorry, but no".
Here's a more risky solution. Chose an arbitrary large file size. Have the decompressor search the local file system for a file of that specific size and make a copy of it as output. This presumes he's going to have the uncompressed file on the system to verify the output of the decompressor. That may turn out to be a false assumption, but what if...
HN is getting less and less tolerant of anything that isn't boiler plate valley tripe.
Make sure you scroll down to view the ASCII and hex streams too. Hopefully someone will be encoding something there.

28kB around 9:30PM MT.
Maybe a stupid question... But if each hermit crab grows their first shell and the sheds it for something larger. Where do the larger shells come from? also why can't they grow subsequent shells after shedding?
I'm confused about the challenge. Why wouldn't simply using gzip work? I must be missing something obvious.
It sounds the school club needs to recruit your services ^^. You put more effort into curating information than they did.
I don't think the Chrome dev team would want to drop earlier kernels that easily, but this option must help development a lot. From looking, it seems to be something regarding synchronising SECCOMP filters between different threads (SECCOMP is a security sandbox). I imagine this removes quite a bit of code, or fixes some serious corner cases.
Crab's have resolved homelessness , but were still screwing are species over with sub-prime loans.
You either decide not to use it, using another component with a different license or writing it yourself, or you release you code under the GPL.

That's not so hard, is it?

It's just like the question you get when using proprietary software. If you don't want to pay the license fee or abide by its terms and conditions, you find an alternative or write an alternative yourself.

The obligation to release your code is just the license fee for the GPL. If that's too steep for you, look somewhere else.
Nope, perfectly acceptable for Goldman to keep the $100.
Craig tried to play a game of semantics, and lost because semantics let Goldman weasel out by pointing to O/S meta data.

The challenge clearly, repeatedly, stated that Goldman would give $5000 to anyone who could compress a datafile such that the combined size of file and decompressor was smaller than the original datafile.

Craig did not compress the data stored. He split the file up into multiple smaller files and using "5" as the boundary. However, by creating 218 files, he increased the amount of space required to store this data. Ergo, the combined size of the "compressed" files and the decompressor exceeded the size of the original file. It is only by excluding the space taken up by the meta data that the "compressed" files are smaller. Furtheremore, elsewhere it was noted that: "The FAQ clearly outlines that filesystem exploits are not true compression."
How Startup Acquisition Can Be a Bad Thing
Google Cloud Platform free for 60 days
The biggest difference is that self-teaching implies more variability in skill outcomes. Lower lows, higher highs.

Look for people who can learn the structure of a problem when there's no guidebook (or textbook) available. If they can do this, then they will likely succeed in tackling the unknown.

This 'autodidactic tenacity' can be learned inside or outside of school.

Knowing how to independently learn means you will invest in yourself for the rest of your life. Attending classes and doing homework do not, themselves, teach you how to do that.