skysight-inc/HackerNews huggingface dataset:
I haven't participated in any Github projects yet, so forgive me if I'm missing something, but isn't what you're describing a part of DVCS (Distributed Version Control Systems) in general, and not Git per se? (and, least of all, GitHub?)

Couldn't one do what you're describing with a Google Code project that uses Mercurial? Or at bitbucket.org using Mercurial? Or at launchpad.net using Bazaar?

I don't think StrawberryFrog's question has been adequately answered: "what's with the assumption that github is the one true way?..."
This article was impossible to read on 1024x768 screen because the wrapping DIV was set to a width of 1000px.

Particularly irritating because it's a really interesting post.
Terrastore - Scalable, elastic, consistent document store
If you can pass the exam without understanding the subject, the exam is badly designed.
You are splitting hairs. We don't need to stick to the precise dictionary meaning of various terms. Sometimes you gain more insight when you don't do that.

It's a pity you're getting down voted, because I believe your concern is genuine and confusion valid. But precise language is very important here, epistemologically speaking - just because we sometime make decisions based on heuristics doesn't mean those heuristics are good models of reality. The distinction between making arguments to collectively determine "what model is representative of reality" and using heuristics to decide what is a convenient way to spend one's time are very different things.
All my methods take just a few argument, I learned to design carefully the state of my programs and manage adequatly how function access that state. Imperative programming works for me (and many others). You say I am doing it wrong and want me to do it your way. Proselytism ?
The site already does have ads. They appear as stories with stuff like (YC W08) in the title.
If you need 100% guarantees, then yes, do things in a purely functional way. However, I think the point is that in any sane program you can easily and safely make the assumption that + does not depend on pi in this situation.

Yes, anything _can_ depend on any and all globals, but with proper practices, documentation, code reviews and what have you, one can make simplifying assumptions on what _will_ happen.
IT degree – holders in high demand, make over $100k
IT careers will remain one of the fastest growing careers on the planet. Luckily, you can start a career in IT after only a few years of school.
Considering the downvote patrol knocked 10% off of my karma just yesterday when I posted essentially that "people abuse downvoting, it has consequences and I don't like it". I am absolutely afraid to post what I think.

When I did get a response as to why, the self-justifications were fairly alarming.

Of course, if you notice it doesn't stop me, but that's because I'm a stubborn stick in the mud. I suspect that loads of people who are not as thick skinned as I am are afraid.
I'm looking forward to seeing how this experiment works.

I find the whole funding conundrum so sad as to be funny -- one of those things you just have to laugh about to keep from crying.

So let's see, 9 out of 10 ventures fold. The cost for entry keeps going down. Lots of tire-kickers will submit a business plan no matter how unworkable the business or how ill-matched the VC.

The response? Better web sites! And secretly even more of a reliance on networks and following the herd. Better still, up the amount of money they want to invest keeps going in the opposite direction of the amount that startups need.

But damn, those websites are looking awesome.
Working with Python and RabbitMQ
That's true, but it puts teachers at a post-primary-school level in a real bind. It's hard or impossible to take a subject like physics or calculus (or even algebra, or English literature) and teach it from first principles in a semester or two, especially when most of the students are not very self-motivated or interested a priori in the work.

So what do you do when you have a class full of students who have already been basically failed by the system and who understand none of the foundations of your subject? If you fail them all, you're the one that is likely to get the ax, even if it's true that none of them understand your material. Most teachers resign themselves to doing their best and administering fairly traditional tests and classwork, so that hard-working students can pass even with no understanding.
Even if we dismiss the jargon, it still demonstrates some really bad grammar.
I feel like I'm missing the punchline here somewhere. Functional programming "doesn't work" at 98% but if you turn some imaginary slider to 85% then everything is awesome? I honestly don't get this.

Can anyone shed some light on the WTF-ness of this article? (Other than the author disliking purely functional development and "98% functional" development, whatever that means).
Indeed. The only thing this does is fill a VCs sheet up with folks who are living in the right spot and good at networking.

These guys are getting what they deserve: shiny teams full of great networkers who make them feel warm and fuzzy. It has as much to do with viability and profitability as my pet rock does. I imagine the end to many of these investment adventures is something like Joe and Bill sure stank at building that business, but what a great bunch of guys! Good thing we got in on that opportunity even though it didn't work out. They're going to do something big one day.
The common case should be simple. How often do I want to italicize part of a word? That's what should require escaping.
Twilio Raises $3.7 Million For Powerful Telephony API
I simply cannot _recall_ anything unless I understand it at least superficially

Me too. That's why the wheels came off my math skills when I got to differential equations. Everything up to that point I'd been able to form a picture of in my head. For example, calculus is just Newtonian mechanics, so that's got a clear analog in the real world.

But Diff EQ was just too abstract. I was eventually able to pass it with the help of a couple friends pumping me full of formulas and procedures, but I never really understood, and so I never could really apply it on my own.
Why Most Web Frameworks Suck
try http://lab.arc90.com/experiments/readability/
Keep this Readability bookmarklet on your browser toolbar.

http://lab.arc90.com/experiments/readability/
What's so hard to understand? I think he means that if you try to use functional programming as a religion and try to shoehorn everything into the functional paradigm (I hate that word) that you are making life hard on yourself.

But by using the right mix of functional and imperative you get the best of both worlds.

I don't necessarily agree with that but I have no problem understanding it.

The more I learn about 'functional' programming the more I'm beginning to see that it is not so much a simple technique as it is a wholly different approach to solving the problems, which often leads to tremendous insights that in turn lead to huge optimization possibilities.

Witness the 'hashlife' link that I posted last week, I never even thought such an optimization was even possible.
Full backup of your data and files (e.g. photos, music, videos).

Easy access to your Google Docs. I believe there are apps on the market that does this but Google might integrate in the core of Android.

Native Google Task App.
We'll connect offline about when I have some free cycles to get that on my radar.
Ada Programming
As this thread and numerous others are demonstrating, there is a group of people that lurk and troll through the consequence-free mechanism of the downvote. I don't really care who the top downvoters are (though the metrics would be interesting, I'd like to see different mixes and matches of the various statistics that HN could generate, upvoters, downvoters, karma, number of posts, average comment scores etc), but I think there should be some limit per unit time they can downvote. Like say 5/every 30 days or some such. Given how many perfectly reasonable comments in this topic have been downvoted, I would suspect it's the same lurker-trolls every time, they would have just blown their quota for the month under this kind of system.

And if you notice, it's like pulling teeth from an angry lion to even get any of these guys to bother posting a reason. The answers so far seem to amount to either

1) My time is too important, I'm too important.

2) The downvote is enough reason, it should be obvious to the recipient that they weren't contributing anything.

I'm sorry, but I don't find either of those reasons even remotely satisfying.
I really don't get it, what does this guy mean by 100% pure functional programming?

Because we all know already that a program needs to print values or "do" something to be useful, so in that way no program is ever 100% pure - is that what he's talking about?

Or is he talking about 100% pure functional languages which allow functional ways of writing IO code, like Haskell?

In Haskell can't you still program nearly 100% imperatively, just by wrapping stuff in the IO mondad?

mysquare x = x * x
mysquarer x = do
putStrLn "Hey look, it squared"
return (mysquare x)

main = do
putStrLn "Starting program..."
x' <- mysquarer 9
putStrLn (show x')

Can't he just write his program like that?

Or is he just arguing that we should write programs in functional languages but just with an imperative style (no points-free and simple use of IO)?
The main problem I have is that pure is a binary condition. Functions are pure or are not. There's no '85% pure.'

But that's really a wording issue, and not one with his argument. He's just saying that being purely functional is not worthwhile, 'just functional' is good enough.
"Give passengers a way to quickly and discreetly report suspicious activity to officials, both before boarding and during the flight. A button that simply reports suspicious activity within a 3 passenger radius may be all that’s needed."

Yeah, then every time anyone with a thick beard boards a 747 they'll get 200 reports. That will solve the problem.

Also passengers who don't speak English is not cause for suspicion on a flight from Nigeria.
I upvoted this because I think this is reasonable. The purpose of HN is to be a discussion forum, not a karma generating tool. Requiring comments for votes (particularly downvotes) fits the theme.
I found this really handy (from PLT scheme)

http://github.com/toyvo/libpandoc

"a build configuration for Pandoc that produces a standalone C-callable system library"
No offense, but for someone writing about rules for writing, this is very poorly written -- almost to the point of incomprehensibility.

(Maybe I was just turned off by the shirtless bleeding guy. You know, it's possible to tell a story without screenshots from movies...)
http://hillspost.yubin-nenga.jp/ Did you want to wait approximately 15 seconds for a splashy animation to load, so you can eventually see the home page? We hope so, because you will!

http://www.ishiyamasenko.co.jp/ I've put fine white text over a collection of photos. In some cases, those photos offer virtually no contrast at all. Good luck using it when the the nav is white on cream or white on white! And since it's flash, you can't even highlight it to get some contrast.

http://www.swfc-shanghai.com/ Loading... you clicked on something? Loading.... In fact our site is so slow that we've added a popup that asks you if you want a simpler version (for people who are in a hurry). unfortunately, the simpler version uses a really tiny, light font that's incredibly hard to read. Wondering why it can take (literally) 46.02 seconds to render the media center page? it's because we download 14 zip files full of graphics before we show you the content. (seriously. they do.)

http://moonlinx.jp/special_issue/003/ Loading... no, you can't do anything until it's done loading... Also, once in an article, we use a self-hiding nav-bar, that defies standard conventions.

http://go-jimbou.info/ 3.9 megabytes, and about 2 seconds of delay until you get to the actual front page. But at least once it loads, it's a clearly organized site that doesn't require thought to navigate.

----

I'll stop there, but much of this web design is antithetical to the businesses at hand, or just poorly designed when looked at as anything other than 'art', and realistically speaking, they're supposed to be functional pieces.

Signed, an unappreciative american heathen.
An upvote is semantically different than a downvote. A downvote is like saying "I am providing negative feedback", while a downvote-downvote is like saying "You have no reason to provide negative feedback".

An upvote on the otherhand is "I'm providing positive feedback".
I just changed the CSS with firebug, but thanks for the link
Monads don't mean "impure," by the way.

What he means is that purity is more of a curse than a blessing. That the pure approach is not a good way to think about the problem. That you should use purity as a tool, but not dogma.
A function can be 100% pure but it doesn't have to live in a 100% functional program.
What an entitled attitude.
I think it was more a response to this: http://www.codinghorror.com/blog/archives/001317.html
What I'm arguing is that you can still think and write with an imperative style using the IO monad if you want, so I'm not sure what the issue is.

Edit:
As an aside, I already know that "Monad" doesn't mean impure (having implemented an IO monad in my spare time to find out) and that was implied when I said "100% pure functional [...] like Haskell".

They are implemented purely, nonetheless they do allow side-effect (impure) programming.
For anyone who this video resonates with, I suggest watching the highly entertaining Bollywood hit 3 Idiots, about three mechanical engineering students a a prestigious indian engineering college, struggling against their autocratic principal :-)
The author explained that purely functional development is hard to do in his first posting. I don't understand the point of his follow-up; all he says is there's some magical barrier in which functional programming is suddenly okay, and that magical barrier is somewhere between 98% and 85% on the mystical "functional programming is hard, let's go shopping" scale.
Are You Going To Buy the Nexus One ?
It's true. But he's talking about the structure of programming languages, not functions. Like I said, it's a small wording issue, not a problem with his argument.
it's called sarcasm folks
Maybe put another way: Some algorithms are more simply represented using an imperative aproche than a functional, and sometimes the benefits of easily understandible code outway the benefits of having no side effects.
I know you're joking, but this meme of "disproving" statistical statements with individual counterexamples really steams my clams.
IPhone Analytics Recommendation.
I want to put analytics code into my iPhone app, and would like to get recommendations for analytic services others on HN have used. Thanks.
The DNS library I'm using supports doing recursive queries - that'll likely be the next feature I'll add to dig.jsondns.
You say Solution as if there's really a problem? What's the statistic, one incident for every 16m miles? The real problem is the culture of fear these kinds of ideas perpetuate, ie letting the "terrorists" win in their main goal, which is to increase fear.
Sometimes it works the other way round. One professor solved an equation in a class by integrating with respect to pi. The students could not believe their eyes: "You can't do that!", they said; "pi is a constant!". The professor explained that once you have expressed your problem in a formal system like mathematics, you can do anything that is allowed in the rules of that system, even if the intermediate stages make no sense with respect to the original problem, and still obtain a correct answer.

[This story is from E T Jaynes 'Probability theory, the logic of science'. But I don't have it to hand, so I may have the details wrong (and I can't remember who the prof was - it wasn't Jaynes).]
If I remember correctly, SQLite parses the DDL for tables and indexes each time the database file is opened. I always thought this was kind of weird, and felt a binary representation would be more appropriate, but when you consider that DDL exists to describe the schema, it makes perfect sense. There's no need for another representation, and parsing the DDL is more future-proof as features are added.
I've never had any success with that approach, unfortunately. :(
I like to complete one small task to break the ice and remind myself there is a little intellectual reward waiting at the end of every completed task. If you string together a few small successes you can build some momentum. It's important to be realistic about how much time you spend working in a day to avoid burn out. Personally I think 10-12 hours is probably a natural limitation most people face. You can't neglect other parts of your life and stay productive. Gotta find the right balance or you'll burn out.

If I really have trouble getting motivated about a project I will try to find a better or easier solution. I can't really grind away at something I'm not interested in. I need to figure out a way to get into the project. One of the things that helps me is making diagrams. I will spend a lot of time making sure all the fonts are right, good colors, good spacing, etc. It's silly but, in the end, I have this really nice diagram and I'm somehow more motivated to make it a reality. The other trick is to find people who are interested in what you're doing. Their excitement and interest can be infectious. It really helps to feel like what you're working on isn't a waste of time.
I am so confused. Where in that article does he call very religious people --- no, wait, anyone --- a "liar"? Did you read it? Read it again. It's good.
Sadly true. Being funny and nice will make her smile, but without confidence and social status that just gets you in the friend zone.
Microsoft is certainly not the only guilty party in this respect. Overuse of jargon and, more egregiously, failure to appropriately define all but the most universally well-known abbreviations at the point where the abbreviated form is first used in the text is a pervasive problem in the field. For example, the first few responses to this article use a total of four domain-specific abbreviations (IP, MSFT, VBA, and DSL), none of which were defined by the authors. Worse, within the field, the meaning of one of the abbreviations (DSL) is context-sensitive and the author's intended meaning is the lesser known one. The appropriate convention, used in virtually every other technical domain, is to explicitly state what the abbreviation or acronym stands for when it is first used in the text and then use it as much as you like in the rest of the text. Only a very small subset of abbreviations that are certain to be recognized by everyone in the field, regardless of their subspecialty, may be used without defining the term.
Check out the "pomodoro technique"- I've used it when I feel like I need to build up work momentum and after a while it gets me back in the groove... http://www.pomodorotechnique.com/
Immersion is the best way to learn, and, in the US, you pay a very high premium for immersion classes. For example, Spanish immersion (20 hrs/wk) through Berlitz is over $4K/month and in Guatemala, around $800.
It's absolutely a game.

I spent most of my college years doinking around with hacker wargames and trying to hack kernel code, albeit not well. I didn't get graded on that but rather on how well I could put together a resume or whatever.

I realized at that time that my "grades" would suffer if I didn't "work" harder at it but I made a conscience decision to hack more. I did as much as was required to graduate and did what I wanted the rest of the time.
Never mind that the passenger in question attended University College London: He speaks English.

And if acting nervous on a plane is reason enough to move a person to the back of the plane to conduct a full-body search... well, let's just say the airlines had better have a significant rubber-glove budget.
Xbox gaming platform may soon span Web, console, mobile
What Is The Definition of An Angel Investor?
The implication of this seems to be that while we, the traveling public, are required to abide by a long list of rules, we are prohibited from knowing exactly what those rules are.
Congrats to Twilio! (Disclaimer: I invested in them also. I obviously think they are neat.)
Functions should only have side effects if and only if that's what the function is designed to do: e.g. perform IO, write to disk, et cetera. Then, "side effect" is a misnomer, because the alteration to state is intended.

The hatred for "side effects" comes largely from a prehistoric tendency of programmers to write highly optimized in-place operations that destroyed the original data. An example would be a matrix multiplication that destroys one of the original matrices, or Common Lisp's NCONC (a faster APPEND that destroys some of the lists passed as arguments).

The general guiding principle of good code is that visible state changes occur only when requested. (For optimization, private state changes can be used, such as caching/memoization, but these are behind a layer of abstraction and don't violate the referential transparency of the API.)
Well, even though it was intended as a joke I can only agree.
My learning style is exactly the same way, I can barely memorize four-character strings unless I can find some sort of mnemonic pattern, but abstract concepts are quick and easy. In a surprise twist of fate, that's why engineering was utterly impenetrable to me in school, while mathematics (my major) was a breeze. I think it has to do with the method of teaching. My required intro engineering courses were rather practical, so I couldn't find enough theory to wrap my head around.

There's evidence that you're right about the correlation with upbringing. Someone did a study on elementary school children, teaching them basic one-digit multiplication, and the concepts of place value, and then had them invent their own algorithms for long multiplication rather than rote-memorize the standard one. The methods they invented were invariably less compact and required more work than the standard method, but the students also performed well above average on standardized tests for multiplication.

I suspect that the high-performing individuals in the "softer" disciplines like literary analysis also function in the same way, just on fluffier concepts and less rigorous abstractions.
His issue is precisely with things like the IO monad. At least that's how I parse this sentence:

"what's often a tremendous puzzle in Erlang (or Haskell) turns into straightforward code in Python or Perl or even C." (http://prog21.dadgum.com/54.html)

In my limited experience, the type-checking constraints in haskell make programs using monads unnecessarily hard to change. I just assumed I didn't know what I was doing; it's interesting that James Hague is agreeing with a lot more knowledge and experience.
This triggers it for me easily, I go a few dozen lines above and read through. I find it helps snap me back into the 'work' mode, which allows me to continue on. On some projects this has got to the point that it becomes like how putting on sweat pants makes you behave differently than wearing a suit.
Yawn

Another ineffectual "solution" to a problem that cannot be solved. The idea of some nosy, self-important passenger on a flight deciding who is and is not a terrorist is ludicrous.
Please correct me if I'm wrong, but my understanding is that most Haskell code doesn't generate values, but "thunks" that evaluate to values if needed.

When you write

x = 4 + 5

you aren't setting x to 9, but creating a thunk that evaluates 4 + 5 at runtime. An Integer is a thunk that returns an integer and has no other effects. An IO Integer is one that does some I/O before returning that integer.

As I understand it, the only function that has the power to "do" anything (computation or IO) undernormal circumstances is main, which always has type IO ().