skysight-inc/HackerNews huggingface dataset:
I found it enlightening to learn about the context in which the GOTO was first "considered harmful" by Dijkstra in 1968[1].

This is a period of time when the concept of higher level languages with specialist if-then, loops and return statements were still relatively new.

Most programmers in the world had cut their teeth on assembly language. In that model the natural way to think of programs is as a sequential series of addresses in memory that contain instructions.

Since all control structures are merely jumps to a new address, so why were all those grumpy ivory tower idiots so keen on abolishing goto?

Probably the biggest blow to the pro-goto camp in those days was the discovery of the "Structured Program Theorem" in 1966. It was proved that any computable algorithm can expressed in any higher level language that has sequencing of instructions, ability to select an execution path and iteration. The ability to jump is not required. For the times it was an critical discovery because it meant higher level language designers could proceed with the confidence that any HLL they designed with those three properties would be usable for any algorithm in theory.

Finally, Dijkstra (and the other European greats like Hoare and Wirth) had in mind a particular vision of what programming ought to be. He didn't see it so much as an engineering activity. He wanted to treat programs as mathematical objects. Controlling the scope of languages can make this more or less tractable. So for example the "one return from a function" rule goes back to this vision, but has since gone on to live a care-free life of its own.

[1] http://www.u.arizona.edu/~rubinson/copyright_violations/Go_T...
No One's Forgotten How To Pinch & Zoom
Vala is modeled after C#, which probably is (empirically) the most popular desktop app development language.

genuinely curious : In general, do we see a lot of desktop app developers coming from the web world on Linux ? I'm pretty sure that is not the case in the Windows world. In fact, more often than not I have seen die hard fanatics ("interpreted languages sucks for desktop apps!!" vs "C++ sucks") on both sides unwilling to cross over.
It would have been the apps that you installed, not the jailbreak itself.
Doing some work in Mono/C# and it rocks. That would make a way better choice than JavaScript.
You are probably not aware of the GObject Introspection mechanism that is available for quite some time now. Any compliant GObject-based library can be used by any language that supports GI through an intermediate representation of the classes, interfaces etc. So, you don't need to write any bindings, neither for Python, JS, Java, Go or whatever.
AWS Reserved Instances vs On-Demand: Breakeven point
The Hague Mobile academy opens. Bridging gap between education and real business
Read me
Hello hackers! So today I can finally say I am okay with python. I started programming about 8 months ago and have self taught php,java,python, CSS,html5, jquery and some Ajax. Besides that I am so happy about my progress that I must share. Lol has anyone felt this way?
Google working on a unified messaging platform?
I was being sarcastic. It's ironic that in this case Obama is doing what we claimed Hussein did in my comment above.
See also; http://www.amazon.com/Foucaults-Pendulum-Umberto-Eco/dp/0156...
Threading for PHP - Share Nothing, Do Everything :) No Fork
Yeah, their video player needs improvement.

For me, the pause doesn't work properly if I pause for any significant time. If I pause the video for a minute, then everything is OK, but if I go to brew tea, then when I come back, the video always freezes after unpausing (well, it shows a couple seconds that were buffered) - probably they have some timeout issue there.
Large parts of GNOME Shell are written in GJS using GIR hooks to LibMutter and Clutter.
I don't feel bad about getting down voted. But one could at least raise a counter point. In all honesty, this syntax is very ugly isn't it?

It reminds me of the JESS rule engine. Same kind of principle.
This is absolutely laughable. If you make an API, you make it language agnostic.

I can understand if they are recommending it, but I'm not sure lowering the barrier to entry so low that you're going to have an absolute tonne of horrendously written, likely insecure apps, is all that good.
Sure, too many people but definitely not everybody, and I just talk for what I see, that is, the population here in Italy that I can monitor directly (however in Italy there is a strong inclination for software piracy).
I wonder what the ball looks like after it has been fired. Flat? Intact? Or completely blown to pieces.
It was the "Don't be Evil" of it's time.
“Nothing comes even remotely close in sound quality.” — Mumble?
What!?!?

Oreo spent $xM on a superbowl commercial which everybody saw and promptly forgot when the blond / old people / puppy came on next.

That dumb small tweet was a historical event. I kid you not, it will be studied by pros for the next decade. It just defined a whole new market.
Evaluating KnockoutJS and AngularJS
I think this demonstrates how Clojure lends itself to situations which are all about side-effects. And in particular demonstrates highly interactive REPL-based development.
Web guys are web guys for one reason: They sincerely believe web is the future and better than native desktop software.

Maybe; how does that fit in with PhoneGap?
The Monthly Fonts Roundup, January 2013
Today, we’re quickly rounding up the most notable fonts that were released last month: 16 paid fonts, and as many free ones as we could find.
> This "dirty checking" can quickly lead to pathological performance issues.

I would say that "dirty checking" is a better approach. The code is cleaner and with Object.observe() there are no performance issues even in _edge cases_ with thousands of monitored objects.
I agree. NameCheap is a good option though. They have been leveraging GoDaddy's fuckups to gain new customers. Their social media antics have got them a lot of socially savvy customers. So they know that, if they stray, they will be flayed publicly, and all the goodwill will vanish quickly.

Another registrar I will recommend is Dynadot, simply because I have used them for several years without any hassle, and they have a live support that's actually helpful.
I do not want to hijack the thread, but was so excited when I found this with my first Android phone (a Vision G2) almost three years ago. The website has changed and looks super polished, but all mention of WhisperCore (the disk encryption solution) disappeared. I know, I know, LUKS encryption on modern Android OS branch (2.3 and 4.x, IIRC), but you said you were working on it and it then seemed to disappear. What happened?
Nice analysis. According to twitter, there's something more to it, though, there still seems to be some sort of kernel memory corruption exploit:

https://twitter.com/kernelpool/status/298714209187921921
Amsterdam using Airbnb listing service to identify illegal rentals
I'm pretty sure advertisers feel the same way (but opposite) about writing code for a living...
Sure unix has grown more complex over time, but what's the alternative? Start from scratch with simple commands? By the time you approach a system of equal power you'll have hundreds of thousands of commands instead of just thousands. For all its warts, it's hard to build a better shell than what's available in unix.
Agreed with that, although i tried getting into fixing a bug in Geary (a Vala written mail client) and documentation was so scarce, i gave up on it early on, before wasting hours of trying to figure out Vala.
It seems to have gotten better, and they added lots of stuff on https://live.gnome.org/Vala/Documentation BUT for example, i'd like to open and write a sqlite database. There even is a vala binding: http://valadoc.org/#!api=sqlite3/Sqlite

It's much harder to figure those out than the usual bindings let's say http://docs.python.org/2/library/sqlite3.html . There is some Database class. But apart from function names no documentation is given at all.

With the python version (and most likely ruby, perl, C, etc.) i can start immediatly, there are examples and everything.

No, why should this be different with the gnome javascript bindings? What happens if there is no binding? You can find lots and lots of bindings for the major script languages and it is easy enough to create one yourself thanks to boost and SWIG and ctypes in python.
They're really a closer cousin to the RAII pattern common in C++ than exceptions. Exceptions usually imply action across functions, but here they're just trying to enforce end-of-scope invariants. So if you're writing C++ code with "exception handling compiled out" (such as with Embedded C++, if anyone still uses that) you can still leverage RAII to do a lot of that type of cleanup.

That said, "goto" gets a bad rap in my opinion. Anyone can parrot Dijkstra's "considered harmful" line, but few know the context that it came from. If you've seen large FORTRAN programs from that era, where "GO TO" was the main control flow choice and labels had to be integers you know how even simple algorithms could be made unreadable. Effectively Dijkstra was extolling ALGOL programers not to code as if they were writing FORTRTAN -- in a structured language "goto" is the control structure you need to use least.

Still, there are places where "goto" is the cleanest way to accomplish what you want to do, and you shouldn't fear using it. (Please pick a good name for the label though!) I've seen programmers write crazy twisty code with all sorts of strange temporary variables simply to avoid the use of the forbidden "goto" keyword. Clarity should be your aim, not religious purity.

Also remember that "break;" (except at the end of a switch case) "continue;" and even early "return;" are morally equivalent to the dreaded "goto;" when you think about it. They don't get the same bad press for some reason.
Sole?

> "We will continue to write documentation for other languages"

I think you mean 'primary'. Everyone who loves C or Python or whatever will continue to be able to use C or Python or whatever.
Question is if there is a GObject based library for everything a developer likes to do?
Lua 5.2 introduced goto, which was interesting, see http://www.inf.puc-rio.br/~roberto/talks/novelties-5.2.pdf for some explanations as to why.
This is ready more or less built in to sublime 3. I saw the video on this and thought "oh neat, I've been doing that for a few days now in sublime text 3"
Best approach would be to use the 'ui-if' directive from angular-ui

<ul>
<li ng-repeat="name in names">{{name}}</li>
<li ui-if="!names.length">There are no names in the list</li>
</ul>

: http://angular-ui.github.com/#directives-if
Pay As You Read Books: TotalBoox
I've been running FirewallIP on iOS 6 for a few months now, it works great.
Cloud Music Player: AudioBox now Available on iPhone
I think Hoare said it in a talk I once heard, that control structures essentially give a higher-level meaning to the ordinary GOTO. In that sense I always understood the “considered harmful” paper as advice to replace GOTO by appropriate control structures where applicable.
That's what they want you to say! See?
Evolution of a Founder: Lessons I have learned
With Skype I can play games with a group and put the mic in always on mode. No feedback, no audio from speakers, and no keyboard clicks. It's pretty damned amazing to be honest.

Ventrilo and Mumble do have far superior support for massive number of people in a chat room. If you're participating in large MMO raids or Eve Online type festivities the Skype doesn't have the necessary features. For my ~5 player parties Skype blows everything else out of the water and isn't even close.
Nothing, if you're prepared to say you can pop something onto a stack and push it off.
GoDaddy? You were warned. No sympathy.
I have many bad things to say about many antidepressant. E.g., they all have very annoying side effects, at least for me, and some of the side-effects (e.g., vivid dreams) require benzos to counter. And then benzo addiction is really no fun at all.

Other side effects I experienced were clearly under-reported by the pharmaceutical companies. E.g., negative sexual side effects for Prozac that my doctor wouldn't even believe were real and not psychosomatic, until it later turned out that 25%-50% of all patients suffered these side effects, and the pharmaceutical company had neglected to inform anyone.

On other other hand, Remeron surely saved my life. I have no doubt about this. I had been in the most miserable state you could ever possibly imagine and then some, and had been this way for months, and then within a day or two of starting Remeron, I was utterly fine. (Though ironically, it may have been another antidepressant that put me in this terrible state to begin with, as I had to go off it cold turkey due to it causing a different dangerous side effect.)

As for diagnosing depression, it may certainly be the case that many cases are difficult to diagnose correctly. And there may be cases where there is no fact of the matter as to whether the particular symptoms count as depression. On the other hand, there are certainly cases where there is no question at all as to whether it's depression. I have been there quite a few times, and it's been as cut and dried as anything can be in this world.
The first technique won't work if the sales are rounded off to the nearest pixel, which is pretty much almost always the case.

The second method won't work if the sales do not follow a Poisson distribution, for instance a product will have better sales at launch and during advertising campaigns. The sales figures don't always float around a constant average.

Also, I hadn't checked the math on the second method but the units don't add up.

On the LHS, you have [sales / pixel]x[pixels] = [sales]

On the RHS, you have ([sales / pixel]x[pixels])² = [sales]²

IIRC, the left hand side should be squared.
Slight off-topic, Matt, is there any possibility you would make your class notes for "Programming language analysis"[1] available? Currently it is behind the authentication wall.

[1] http://matt.might.net/teaching/spring-2009-programming-langu...
PhoneGap is about marketing, not about software. For customers it's difficult to find a specific website, but it's easier to find an app in the app store. The devs are still web guys, but thought they will sell more if it looks like a "real app".
The page linked has a good rule of thumb for the gotos: don't use backward ones. All the "escape" uses of goto - breaking out of loops, jumping to the appropriate part of the cleanup code, emulating exceptions behavior are forward jumps.

Back in the day hand coded assembly had jumps into the middle of functions' bodies which was a space-saving idiom for things like default initialization - the beginning of the function had some initialization code but you could jump into the function body (and skip this initialization block), provided that you did your own init and set the proper registers yourself.
The Netherlands provide 7 of the top 100 universities from a population of only 5% of that of the US. Not only that, but the universities themselves are usually a lot smaller, so they would naturally produce less papers. Your argument seems faulty.
A New Editor for OpenStreetMap: iD
Funded by a grant from the Knight Foundation, today they are announcing the launch of ideditor.com, home of the web-based OpenStreetMap editor iD currently in Alpha phase. This launch marks a stepped up involvement in the development of this editor. iD is designed to help create an even better, more current OpenStreetMap by lowering the threshold of entry to mapping with a straightforward, in-browser editing experience.
To quote the phonegap devs:

http://phonegap.com/2012/05/09/phonegap-beliefs-goals-and-ph...

> The ultimate purpose of PhoneGap is to cease to exist.
SPMF Therapy for Arthirits
One of the projects I dream about doing is to use github/google/... code as a corpus to feed into a deep neural network, which could then perhaps do what you are talking about. However, more work needs to be done on how to represent the code and train the models.

There has been lots of work on intelligent code completion in the SE community. It doesn't seem to be very effective yet, however.
TeX is more or less one big pascal function with lots of gotos. While this makes it very hard to port to a more modular (and non-pascal) system, the source code (in typeset format: http://abel.math.umu.se/~lars/misc/tex.pdf) is very readable.
Yoda to get his own solo Star Wars movie
What is the protocol being used for mesh routing? Has this been built on top of B.A.T.M.A.N?
This is one of the reasons why you never perform any actions which change something over GET. The main reason is so your site doesn't get deleted when the Googlebot visits. (Or more generally, so that web crawlers and other robots don't accidentally mutate the site.)

Using POST is not sufficient; you also need to include an XSRF token that only the requesting page knows. It's very possible to send a POST to a third-party site with about one line of Javascript. (In the relatively early days of Reddit, I wrote a page that upvoted itself by having a JS handler in an invisible iframe resubmit the same link over again, using the visitor's login credentials. At the time, submitting the same link twice on Reddit counted as an upvote, and so merely visiting the page would upvote the link.)
for the time being, yes.
While both the above words are known to me, I do like that when reading a book in Kindle on my iPad, I can tap a word, and have its definition show.
Security and good software engineering principles are perhaps not the first focus in the Ruby community, and that is a shame.
Yes it is nice to have cool frameworks with lots of magic, and we can create a blog in one command. But none of that matters when you end up in infinite patch cycle. Remember poor design choices mean technical debt for a long time.
People who label them as "conspiracy nutters" more likely to be conformist and closed minded. They will be more like to believe "the big lie", because everybody else believes the big lie, so you become crazy if you don't also believe the big lie.

The collective mind of society doesn't always get it right. Being "Cassandra" would be a miserable existence.

Intelligence and rational thought are orthogonal. I would say that cats are generally more rational than most humans I have met.

Intelligence is not a prerequisite for having a decent career or not being a social outcast. Society prefers people with high IQ's, as opposed to true geniuses, who are more likely to struggle to fit into society.

Being crazy means that you are completely different from the rest of society. It doesn't mean that you are wrong.

All of recorded history is pretty much a "conspiracy theory". Who really knows if it is true or not?
But the majority of society simply accept it as fact, so it's no longer a conspiracy theory as defined by society.
Agreed, the design isn't copied at all imho, parallax and these sort of websites have been around for a 2+ years now.
Difference Between Brute Force & Strategic Growth
Thanks. I'll have to check this iframe thing though the z-index should take care I guess.
Yes, that solves that. But you should use CSRF. Otherwise someone could have a <form method=POST action="http://mysite.example.com/delete>…</form>; on their site and a javascript that will submit the form upon page load.
I moved all my domains to namecheap for a similar reason.
No, you prefix.
Could we be constructive and maybe name some GOOD domain registrars - so that if people read this and are on GoDaddy they could move?

I've heard good things about "namecheap."
> Also remember that "break;" (except at the end of a switch case) "continue;" and even early "return;" are morally equivalent to the dreaded "goto;" when you think about it.

To a degree - they can't go backwards and what's more important they can't jump into the middle of other control structures. The second case was what's really made it hard to reason about code with gotos.
HP/Microsoft's study didn't include migration to a newer version of Windows. Considering Microsoft will stop supporting Windows XP as early as next year, not including the upgrade cost for a Windows migration makes no sense, unless they were deliberately trying to be misleading.
Tips voor originele valentijns cadeaus - Plazilla.com
It's been a long time since I looked into GNOME dev but that was the main choice for the last 10 years or so, wasn't it?
Open Data Startups are still Normal Businesses
> On the other hand, there are certainly cases where there is no question at all as to whether it's depression.

Yes, absolutely, but saying "it was depression" is not the same as saying "depression is a disease with a proximate cause that can be identified, diagnosed and treated."

The present debate surrounding depression is global in scope. No one knows whether depression is a disease in the way that a cold is a disease, or is an extreme case of normal emotion, not amenable to any kind of diagnosis or treatment.

None of this is meant to argue that depression isn't a disease in the way that a cold is a disease -- only to say there's no reliable science behind the claims.

But we do know this -- in controlled scientific studies, antidepression drugs don't actually work for the majority of patients:

Link: http://www.plosmedicine.org/article/info%3Adoi%2F10.1371%2Fj...

Title: "Initial Severity and Antidepressant Benefits: A Meta-Analysis of Data Submitted to the Food and Drug Administration"

Quote: "Meta-analyses of antidepressant medications have reported only modest benefits over placebo treatment, and when unpublished trial data are included, the benefit falls below accepted criteria for clinical significance." [Emphasis added]

Comment: Drug companies have been only publishing studies that supported their drugs, and discarding those that didn't. This study compares the outcomes for all the studies, published and unpublished, and the result is that antidepression drugs do not work for the majority of patients.
SexyMandarin.com fuses soft porn with Chinese language classes
Thanks, I was wondering what where the plugins for emacs for autocomplete. How does HippieExpand compare to autocomplete.el? I'll try to test HippieExpand today!
Five cryptic error messages in Java
An alias will only work with things that are using your shell with your configuration sourced. Things that merely use your PATH won't pick that up.
Thx, I'll try that.
Surprised no one on HN calculated this already.

S = P / Var(P)

Numbers of pixels: 13,6,16,29,6,16,13,6,19,13,19,9,26; followed by the large one.
Mean ~ 14.692;
Using Sample Variance ~ 53.397;
Using Population Variance ~ 49.289;

SalesPerPixel(Sample) ~ .275

This doesn't seem right, where does the math screw up?

That said, this isn't very useful. The only time someone will show sales graphs is for special events... aka when it DOESN'T follow a possion distribution.
erm... right... but the EU doesn't collect taxes from all of that... they are individual countries.
Mozilla is also quite present in chrome://credits
> Twitter really added to a lengthy real-time event

But a sporting event shouldn't feel like a lengthy real-time event imho. When I'm watching a good boxing match looking at anything but the screen is the last thing on my mind.

Now american football on the other hand ... 4 hours for 11 minutes of gameplay. I just don't get it.
Google Translate does not always recognize languages
Windows Phone 8 for Africa
Making $30,000 a month on Windows 8 apps
Ask HN: How to become enterprise level PHP developer
I know there is very smart people, can you give me any tips?
I think a lot of companies can do some cool stuff with this
But, just like you did, the special event can be excluded from the poisson calculation. Then you know the scale and can figure out the values for the special event.