skysight-inc/HackerNews huggingface dataset:
This intermediate level doesn't exist. Once you understand the basics, look to see what else is possible and then read up individually until you get a more thorough understanding. For example with git:

1) Google 'git commands' and you might find something like this: http://searchco.de/lists/list-of-git-commands

2) Reading through this page, git blame might catch your eye but you can't make it from

"git blame [-c] [-b] [-l] [--root] [-t] [-f] [-n] [-s] [-p] [-w] [--incremental] [-L n,m] [-S <revs-file>] [-M] [-C] [-C] [-C] [--since=<date>] [<rev> | --contents <file> | --reverse <rev>] [--] <file>"

to a functioning command on your codebase.

3) Google 'git blame tutorial' and find something like http://alblue.bandlem.com/2011/07/git-tip-of-week-assigning-...

4) A quick read through this tutorial results in non-beginner knowledge gained.

This applies to everything technical including all aspects of design and programming.
At first one should expect it to be at most as fast as cpython. If you don't do type inference and a bunch of other advanced functional language friendly optimizations you will get quite poor performance compared to JVM. Even haskell which does a lot of those isn't overperforming JVM yet. (Memory usage is much better though.)

http://shootout.alioth.debian.org/u64/benchmark.php?test=all...
Bing Fund, an Angel Incubator [..] looking for a visionary designer
Using Jenkins For Continuous Deployment
Part 1: http://gkz.github.com/LiveScript/blog/functional-programming...

Part 1 discussion on HN: http://news.ycombinator.com/item?id=4135616
Medicare is not bad, but that only counts for people who are retired. In this specific case the OP might be wrong about the dangers to their dad, but for most people this is a huge scare.
edited bc mahmud said it better, but

Also, Clojure supports (optional) dynamically scoped variables.
For some reason, whenever I've used mozilla's site, it has a horrible response time. Whether this is due to extreme load or just a crappy server, half the time I quit after waiting 20 seconds for a page to load (my normal wait time is less than 5 seconds).

W3Schools is still an OK reference site. I haven't really looked at their tutorials.
I think what drupeek says applies to this as well. You can be working on something and not really know what it is. I wrote this app a quite ago, only took me about 5 days to write it because it was quite simple, but it’s been years since I finally understood what it was for.

In designing another system recently, I wrote down my entire thought process as it developed in the form of questions and answers to myself. When I read it back now I can see how I had this mixed up set of ideas and was actually quite confused. Then, as you read down, things start to become clearer and ideas become more developed. I guess it still has quite a long way to go as well because things certainly aren’t as clear as I would like them to be.

So the point I’m making is that definition and clarity can take as long, and sometimes--although I think this is infrequent--longer, than the software development.

As for the question of whether you should blog about it. I think it’s a difficult call. In a way you could say this story has wasted everyone’s time because I still have no idea what the app drupeek’s developing is about. But on the other hand we wouldn’t be having this conversation now were it not for it.
> I'm not familiar with SQLAlchemy, so I find your example equally hard to read, compounded by there being much more code to spelunk through to understand.

If you remove few column definition and setup code, it actually boils down to just:

class Article(ArticleColumns):
@property
def users(self)
return self.collaborations.join("user").with_entities(User)

class User(UserColumns):
pass

class Collaboration(CollaborationColumns):
user = relationship("User", backref="collaborations")
article = relationship("Article", backref=backref("collaborations", lazy="dynamic"))

@hybrid_property
def editorial(self):
return self.role == 'editor'

In which you can now do

some_article.users.filter(Collaboration.editorial)

which generates similar SQL query as #merge.
I'm not going to pepper my advice with caveats, but note that none of the below applies 100% of the time.

> making sure your day-to-day responsibilities don't take up much time

What do you do when you've finished a reasonable amount of work for the day? The average person will ask for more work or do more grunt work. Instead, don't. You'll get much further in your career if you have an amazing side project and produce 20% less other work, than if you produce more day-to-day work but don't have any highly visible projects.

> refusing to work on projects that will pull your career in the wrong direction

You can't really outright refuse if your boss asks you to do something-but projects are frequently assigned on a semi-volunteer basis.

> On top of that, there's the even harder question of how to know that the direction a project will pull a person's career in the first place. It's rarely obvious.

I agree, it's not obvious. As a general rule, try to work on projects that give you the opportunity to be in contact with a greater number of people, especially people in senior positions.

> How are they really formed? There are a lot of pet theories on this one, but it's not clear which of them (if any) is right.

This is difficult, but the good news is that you don't have to be perfect-even a little effort here yields significant returns. The average programmer could benefit massively from an hour a week of studying psychology or practicing meeting people.

For a 20-something the goal is to get powerful, successful, competent people interested in your career. This is hard and there's no silver bullet. A major part of that is to give off the impression that you'll be successful no matter what, while at the same time benefiting from their advice and replicating their ideas. There's also a massive element of luck at play. I've spent a lot of time working on this, and I still wouldn't be able to come up with any sort of consistent method-just things that increase your chances, bit by bit.

Finally, I'd like to note that despite my claims of how difficult some of the above goals are, making good strategic decisions saves you huge amounts of time. Allocating your time in a job wisely will quickly mark you as someone "up-and-coming", and help you rise to interesting work quickly. 100 hours invested in networking will save you years over your lifetime, in terms of advancing your career. A great mentor can keep you from accidentally committing career suicide. And so on.
I´d love to hear from PG whether what the OP thinks that is better, is really better.
"The nexus 7 will be sabotaged by google's crappy customer service."

Dream on. This is just how the Nexus 7 is being sold right now. Best Buy, Future Shop, and Amazon are already putting in their orders and will sell the vast majority of these devices. Google will be a bit player in the Nexus 7 market and their customer service for better or worse will be a non-issue as far as how well overall sales go.
I don't know that I buy into the "tell a story" trope, I think that's not really an accurate description of what needs to be done. Could just be my personal connotations for what a story is, though.

But I do have to say the best part of this whole blog post is the part when he talks about the problem he imagines YC to have. He paints a compelling picture of the pain point.

I still have no clue how he plans to solve it, but at least that paragraph told me what he envisions as the problem he's after.
> Yes. Java is getting closer and closer to native code performance. In some rare cases it can even beat C. But this is after billions of dollars have been thrown at trying to make Java fast.

Why is it a bad thing that someone was willing to pay money to make Java fast. Do you want to say that there haven't been billions of dollars in both money and man-hours thrown at trying to make C/C++ fast? There's no free performance.
So do I hear a +1 for good social security? Looks like a very clear line from having social security and a safety net to leading in science, tech and inventions/ start-ups, which is growth, i.e. the lifeblood of any economy.
This concept reminds me of "Technical Debt" in that its a way of expressing what the software development world has found to be best practice in terms that an outsider/business-person would understand.
Cash Prizes to Reward Young Raspberry Pi Programmers
A couple of friends of mine were planning on going to Bloc on the Saturday night. They didn't even get near the venue, and I was online immediately trying to piece together the story of what happened. Some reactions from people on Facebook: http://twitpic.com/a4pei0/full

Another nail in the coffin for British festivals. Sad.
Just out of curiosity what change to what open source software were you looking for?
"we noticed that the www.kogan.com website stopped appearing in organic search results on Microsoft backed search engines"

They don't say explicitly, let alone prove, that the result ever appeared on Bing, while "stopped" would imply that.

If the comments about the wrong robots.txt got it right, it is well possible that the website was never indexed by Bing, and they just noticed it (or decided to talk about it) now.
2. The language is in UTF-8 so you can have snowman variable names but weirdly what gets exported from a struct or package and what doesn't is decided by uppercase/lowercase (respectively).

I knew that Go was both case-significant and Unicode-aware, but I had assumed (perhaps incorrectly) that they'd have some mechanism to export identifiers written in scripts that don't have a case distinction. Can anyone verify this? Or do they really expect e.g. Japanese programmers to write identifiers like `A緑` instead of `緑`?
I would say Firebug or Inspector is a better tool for poking around in CSS than trying to look at a raw stylesheet. There are hidden settings that you'll never see otherwise (that don't get used much, admittedly) and it gives you the ability to make a change and see how it affects the current page.

The CSS you see in those tools is real decompressed CSS (organized a bit better than most stylesheets) and is pretty much exactly what you'd put in a stylesheet.
No problem. Just gives the non-biased people a chance to counter the FUD off the top so a real discussion can take place below.
Chances of generating two random 32-byte strings that collide are so tiny that you can as well say that they are unique.
Is the Web Driving Us Mad?
I don't mean to say that email as it is will get us to a very elegant solution for something like group project management. What I'd like to see is that if email + some addons/enhancement can get us to solving 80% of the project management problem.
@dworrad, I'll admit I suffer from the same illness as you. It's good that you wrote it all down, because I couldn't believe how closely our lives match and that tells me something. If you are able to write some that hits close enough to my home, then that must mean it is going to hit home for a great many other people as well.

Nobody ever said entrepreneurship is easy. The $1B buyouts that you hear about on HN are exceptional, win-the-lottery type of occurrences, whereas the greater number of people simply win small amounts or nothing at all. But as long as you feel like you've grown as a person and, more importantly, pass that knowledge down to your kids, maybe it won't be so bad.

I wasn't raised with an entrepreneur mindset. My father worked salary all his life, so while that paid off for him, the same didn't/doesn't work for me. I have to be the trailblazer in my family and learn all this from scratch. My hope is that I can blaze that trail well enough so that my children have an easier time. If that's the case, then maybe they will be $1B successful or, at the very least, not have to toil away 8 hours a day in exchange for money.
Opening with "Rocketr is a bottom-up approach to knowledge management" - this is an entirely useless fluff sentence, tells nobody anything, doesn't provide a useful frame of reference for what's coming next... I feel like the story here is that Mr. Peek needed a harsher critic when he was practicing. It's surprising how rarely we encounter good critics in our lives, everybody is focused on supporting and validating and has little practice at really challenging, reviewing, evaluating.

I don't really see a problem with PG driving, I see a problem with not being ready to clearly and concisely differentiate. How is it different from Evernote and how is it different from Wikipedia should be completely anticipated ready-to-handle followups with great one-sentence answers that focus on the customers.

I really don't like the alternate suggested approach because I'm not willing to grant the premise. Does work get done using team based tools? Work gets done to a shocking degree with email, excel, individual text editors, powerpoint... none of which are really 'team based'. My first thought is to go with something like "We help individuals collaborate by [whatever it is this thing does]" simply because that gets me a frame of reference faster and gets to talking about the interesting part sooner. But I'm still not sure what the interesting part is... so far this sounds more like Google Wave than anything else, and that alone might be enough to pass on backing the idea, under the "will fail because it's too hard to convince people they need this" category.
This could be useful: https://launchpad.net/~texlive-backports/+archive/ppa/

TeXLive 2012 in Ubuntu 12.04. I just found it so I haven't tried it yet.
Less-Confident People Are More Successful
I like these guys, particularly for the 'Website glitch', I can't imagine many retailers would take a similar stance.

Seems to me that these guys are great marketers.
I have stopped asking "how are you", I've started saying, "I hope you are well"... because I do hope you are well. Though you aren't, I don't care to hear about it.
That's not "expensive hand holding", it's just basic customer service

They said that it would start shipping in two to three weeks. It has been 11 days since the earliest possible orders and already the whining has begun by impatient, the customer-is-always-righteous-in-complaints sorts. Yes, customer service workers answering lines to tell you what you already know are expensive. Why should I bear that cost?

The other complaint is about a billing change -- Google made it very clear on the original order if anything changes to simply cancel the order. Impatient customer doesn't want that, though. They want someone to hold their hand and change details for them so that they don't lose their position in line that they demand a date on even though they know it isn't yet.
This isn't really a new idea.

For anyone interested in 'systems thinking' and associated optimisations, check out the 'Implementing Lean' book:

http://www.amazon.co.uk/Implementing-Lean-Software-Developme...

Or The Goal for something slightly different:

http://www.amazon.co.uk/The-Goal-Process-Ongoing-Improvement...

I have to say, there's way more wisdom in the more mature 'lean' world than there is in the trendier 'agile'.
User is not in the sudoers file. This incident will be reported.
It's very vanilla. Nothing stands out to me as something you wouldn't see in a Craigslist ad. I don't know if that's a good or bad thing, though.
Beyond Firefug and Inspector, there are also CSS prettifier tools out there like the excellent http://procssor.com/process. That's about the best you can hope to do, unless you are expecting developers to put extra educational content in their maxified CSS files. Which ain't gonna happen!
Microsoft Windows 8 USB stick
You are not getting enough sleep.

Without enough sleep you won't be able to stay healthy, much less change the lives of _others_ for the better.

Health first. Everything else second. It's an inescapable prerequisite for being effective at _anything_.
Yes, pedagogically you can just use infinitesmals after an appropriate hand wave. Most students will ignore the complicated details and just absorb the infinitesmal picture. If you take the attitude that students just need to learn the formulas, then it doesn't matter what approach you take.

However you've created difficulties for the day that they dive back in and try to really learn the subject. Because as they go to learn what a real number really is, and what its properties are, and about pathological functions, they also have to learn about the hyper-reals and a complex model-theory construction that (in both variations that I am aware of) requires choice.

There are a variety of other pedagogical choices that do not present such barriers to comprehension. (Note, by no means am I a fan of the limit approach. I know full well that it goes over the heads of the students, and I see no point in having the person at the front blather on about stuff that the class is not able to expected to understand.)

In any case my biggest complaint about how Calculus is taught is this. I think people come out of a first Calculus course without understanding the tangent line properly. If you don't understand the tangent line, Calculus is a mass of formulas. Despite how easy it is symbolically to jump directly from the tangent line to the derivative, I think that a solid week should be spent on the tangent line (calculating it for more complicated functions, finding applications, etc) until it is every student understands it well enough that they are ready to take the leap of looking at the slope and building a function out of it.
Ask HN: Is there any site to find open source projects needing developers?
Is there any website that connects open source projects with developers - a place where open source projects can post jobs(task)they need to get done and interested programmers can search and browse it?
Having worked on a few startups now, I can assure you hard work != the key to success in startups.

It's a process of experimentation, constant observation, accumulating knowledge and forging ahead on your own with very little external encouragement.

If you told me IIT kids spent countless hours experimenting and tinkering with their own projects, then it'd be a different story.

But the test prep process for IIT JEE/AIEEE is a very pre-defined route, that EVERYONE is doing, with lots of encouragement from parents and a soul-killing process of cramming - for the singular goal of passing tests set up by a very bureaucratic establishment.

It sounds like the opposite of the preparation needed for risk aversion and creative endeavors.
If there is another speech generator with permissive licensing we can compile that one too.
This is valuable enough to justify writing the tests, isn't it?
In Treatment for Leukemia, Glimpses of the Future
Works on Firefox 16 on Ubuntu.

Do you get an error in the web console (control-shift-k)?
This is true. I think most of the RT stuff i.e. GSM/3G stuff is offloaded onto dedicated devices.
I don't disagree with that, but it's still irrelevant in the context of this particular attack, because there's no main-in-the-middle component required. Yes, you must secure the transport, and the same applies for even basic serial communications, but that's not what's happening here at all. This is an exploit of the implementation constraints at a legislate level.

Engineers look at this problem and see the engineering problem, but it's cynical (albeit warranted) to believe that the engineers at BMW didn't see the same problems. I bet they are well aware of this vulnerability, but they're unable to do anything about it.

There's a valuable lesson to be learned. It ties in to the old adage: be careful what you wish for, you might just get it. There's a lot of rumbling about new privacy legislation in the US, but the entire concept makes me really nervous. What are the chances that legislators understand the internet well enough to craft effective legislation? Not good, I'm afraid.
Interesting... how did you write an app without knowing what it is for? It seems very backwards to write an app (or create anything, really) and then later figure out what to use it for.
Twitter follows Facebook down the walled garden path
A barcode is just encoding a number. Creating a barcode is obviously easy, finding a valid number is supposed to be the hard part.
Can someone say "liability issues"?
I'm not talking about the BBC specifically all - the specific system is irrelevant - and so I'm not "mixing" anything. Many 6502 based systems did have assembler editors; many more had "monitors" that would assemble line by line on the fly - if not built in then as common extensions.

(in fact I did most of my M6502 assembly programming in a monitor, with a notepad to keep track of where various functions started; it was first a couple of years after a I started doing assembly that I got a proper macro assembler for my C64, and even then exactly because "every byte mattered" it was not at all uncommon to still stick to a monitor on a cartridge rather than have a macro assembler "waste" precious memory for the assembler and source text)

What I'm talking about is the general idea that longer keywords somehow would prevent an assembler from using fixed length records to represent lines, though reading it in context of what you wrote above I see your reference to fixed length records referred to the table used for assembling, not to the source lines in which case it makes slightly more sense to me.

Though not fully, as it'd be both faster and take less code to use custom search code to match the input against the available opcodes than to insist on a fixed length record - did a quick check and it should be doable to save at least a dozen or two bytes and reduce the average search time significantly by range checking and using lookup table for the first character. It might've been convenient to write the code with fixed records, but it's far from optimal in terms of either performance or code size, so it doesn't seem like code size bothered them that much in this case.

The "every byte mattered" applies to source too on these systems, and I actually find it really curious that they went to the step of supporting inline assembly but then didn't apply that optimization to the source given the limited memory and performance of these systems. Especially since the opcode itself makes a very obvious token candidate, potentially leaving the "assembly" step itself reduced to mostly copying data and applying address fixups.
France sells bonds at negative interest rate
I'm sort of sorry to turn this around on you, because it's generally poor form, but given the contents of the linked article which describes Datomic exclusively in the form of timestamped triples, can you explain how it's not a triple store?

If it's because you store objects as many triples with the same subject and different adjectives... err, well, yes, that's how you store objects in a triple store. Not remotely new, and still subject to my initial question.
"It's surprising how rarely we encounter good critics in our lives, everybody is focused on supporting and validating and has little practice at really challenging, reviewing, evaluating."

This is a bit off-topic but I was reading some time ago about Dan/Dani Bunten (of MULE fame, among other things), who had gender reassignment surgery. More info here: http://ai.eecs.umich.edu/people/conway/TS/Warning.html#Dani but this is what I was reminded of:

"Despite following the rules and being as honest as I could with the medical folks at each stage, nobody stopped me and said "Are you honest to God absolutely sure this is the ONLY path for you?!" To the contrary, the voices were all cheerfully supportive of my decision."

No one really challenged Dan at the time - possibly for fear of being labelled as a bigot or hater or whatever - and Dani later regretted the decision.

Again, somewhat off-topic, but finding people to really challenge you (in a supporting way) is hard to do.