skysight-inc/HackerNews huggingface dataset:
>You don't need to reason about multiple instruction pointers or mutexes or re-entrant, interruptible execution because all the javascript you write just lives in a single thread.

I see....on the other hand, when I write request-handling code using (any web framework ever on any platform), you're suggesting that we do worry about mutexes and reentrance (not to mention, handling a single request uses multiple threads?) and that these details aren't already handled by (any web framework ever) ?

Interesting.
Can't help but upvote half the replies in this thread. Sometimes I forget how many ridiculously smart people hang out around here. Happy to be amongst you all, even as a generally passive participant.
Thanks for the advice

I have found the routing in MVC and their returns types (JSON etc) working really well to be honest, I will take a look at that

Thanks
OT -> ‘Off Topic'
I was thinking more like farewell to Java
"So from what I gather, John is upset because the 'researcher' doesn't show specific network information, only that CIQ is capturing and logging information about EVERYTHING on the phone? The most striking is it is breaking even the HTTPS handshake and that doesn't bother him?"

Well, the problem with that statement is that your examples are factually incorrect.

1. "only that CIQ is capturing and logging information about EVERYTHING on the phone?"

He doesn't show that they are logging the information, he shows that APIs are getting called containing that information. He didn't bother to stick a debugger on it and trace the code to find out.

2. "The most striking is it is breaking even the HTTPS handshake and that doesn't bother him?"

Utter hyperbole. It isn't 'breaking the HTTPS handshake', it's a piece of software that sees what URL is being requested just as you might if you were a Firefox extension on a Browser Helper Object or any other number of technologies.

And lastly, without doing a network analysis or debugging the app. you have no idea what it's doing with the information.
Canker Sores In Your Mouth - Toothpaste Without Lauryl Sulfate
I'm not sure you should put "write good code using PHP" in the same paragraph with "some of the largest site in the world". Because they're the exact opposite.

Facebook, Wikipedia, Wordpress, all of them don't have a good PHP codebase. In fact, people despise them.

PS: for the downvoters, why the hate? it's the fact though. I'm not saying you cannot write good code in PHP. What I'm trying to say is that "big sites out there" are not a good example of "writing good PHP code".
Startups: Get big or get bought
That's not true. It does affect the probability of the other child being a boy just like being born on Tuesday does.
As somebody who works as an expert (I hate that word by the way, so I apologize) in the legal field, I can say this sentiment is pretty accurate. People think the that evil cabal of lawyers et al conspire against the little man to crush, oppress, and otherwise harm them through litigious means.

This is not the case per se.

There are lawyers filled with the utmost dickery, but that is not all of them. The fact of the matter is aformentioned dickerous individuals can take advantage of a system largely ill equipped to handle technology cases. Whether it be a jury that barely knows the difference between a hard drive to a floppy drive or a doddering, self-indulgent, and masturbatory judge--it's over their heads.

I do my "due diligence" to not contort facts and try to explain things as best as I can. But, despite my best efforts I always know that there will be some basic technical misunderstandings in the judges' opinion/ruling.

People keep trying to shoe-horn computer concepts into ancient, arcane notions they have about law and life in general. When nobody in the court room except the experts know what is going on technically--and admittedly are influenced by those that hire them (despite professional conduct), this essentially means whoever has the best narrative wins. Though, that fact might not be exclusive to computer-based cases.

People expect magic. Either you're talking them down about how these artifacts of X could mean Y but just because Z file i sin /home/bob doesn't necessarily mean it was Bob sitting at the terminal. Or, you get the other extreme, where you're defending yourself from an ignorant, nearly exceptional cavalcade of "How you can really know for sure?" type questions. And, of course, any expert if hired to do so can easily be that dick-for-hire.

I've had cases where I suspected the judge prolonged the costly trial simply to indulgent their whimsy. Oh, how fancy! You can pull up their deleted files and internet records? ENTERTAIN ME MORE!
Go – Faster code for people who write scripts
Kidnapping for ransom is rare in the United States. It's not good risk/reward. The family of the kid enrolled at Le Rosey is probably living beyond its means, and lacks sufficient credit to pay enough ransom to cover the costs of a kidnapping operation.

The only significant kidnapping in the US is drug-related (in Phoenix) or husbands kidnapping their own children from estranged wives: http://www.latimes.com/news/nationworld/world/latinamerica/l...
Don’t Buy Nokia N9 Until You Read the Review
And rightfully so. He's a huge Sarah Palin fan. What a wimp. Angela Lansbury could kick his ass.
Top 5 Creative Websites to Use for Inspiration in Guest Posts
The normal, regular post about this very thing will come around tomorrow, the first of the month.
>Why wouldn't government simply ban the whole thing?

If they ban it but it lets people do something they want to do and can't otherwise as conveniently then they will ignore the ban.

>but most people won't go near it if it is illegal.

Really? I think the media industry would beg to differ. Normal, everyday people have stolen more songs than they have time left in their lives to listen to.

You're taking an obscure example that many people don't even know about, much less want to do and using that to say people won't touch it if it's illegal while missing media piracy; something most people do want and most have had no issue just taking it, laws or no laws.
Here's one to add to the list:

Don't submit any sort of tethering app. Chances are it will be approved and removed within a couple of hours. Apple is 2 for 2 so far: Netshare and iTether.
Probably not.

One way to look at it is like this: Previously, to increase performance of a production Java app you would pay the best Java developer you could find a lot of money to make it run fast.

Now, you might still do that, but first you will pay Oracle some licence fee so you can use their commercial JVM options (and good Java developers are likely to insist on using those feature because generally JVM tuning options work very well). That take money out of the budget for Java talent.
I think this is true but in my experience, they are what most people call "Application Developers".

Linus is still writing code in C even for a simple GUI app that wxPython can do for him quickly.

Josh Bloch is still writing code in Java since 97/98?.

Crockford/Resig will probably never write software in a language other than JavaScript.

Your Application Developer will quickly move to the latest trend spreading HackerNews.

So if you want to be famous writing frameworks or tools, make sure you hit frontpage of HN.
Even MVC is a little heavy and you don't get a lot of things for free with it. Compare it to some of the Java OSS projects like Enunciate and it still requires a lot of extra work.

On the .NET side, I would suggest looking at Demis Ballot's excellent Service Stack library.
http://www.servicestack.net/
Brightcove launches cloud-based mobile app platform - try it free
To be fair, there is no evidence that CIQ is "breaking the HTTPS handshake". The article I read implied that the software had access to keystrokes, which could be used to infer data that would be encrypted on the wire, not that it was breaking HTTPS.

It's possible that CIQ is getting keystroke information, but only storing metadata (character counts, number of corrections, etc). But, without more evidence, it's best to be wary. I think John raises a valid point; crack open a debugger, disassemble the .dex, start a network sniffer. Find out what is happening, don't just assume.

Edit: fixed minor typo.
to add: if map is used, do not cover or obscure the Google logo
I'll disagree with you as well.

Just because it's a C API doesn't mean it isn't used in other languages or has to be used in C. C can be unforgiving on the novice, so battling C while trying to learn OpenGL concepts can quickly become a losing battle. Portability is at the cost of complexity, setting up a C/C++ OpenGL cross platform build environment is not a piece of cake, especially on Windows.

C does allow low level access to memory, while this is powerful it also adds complexity. Things like loading a text file or image file aren't straightforward. Many libraries are in various states of disrepair. Getting a crash course in static vs dynamic libraries, linker settings, dependency/DLL hell detracts greatly from the learning experience.

Suggesting that allowing the programmer to use a buffer object or array in a call to GLBufferData would be somehow more complicated than wrangling with pointers & memory allocation is something I'll have to firmly disagree on.

I'd honestly suggest someone starting out with OpenGL to try out WebGL. Loading shaders & textures is a snap(comparatively) & your build environment is your web browser & with that you get instant feedback. Javascript debuggers have also come a long way. Then later you can transfer your knowledge to other more performance oriented languages, if you need that.
> It's almost funny, until you read his seven tenets of computing and find that any program which encounters any error should enter a debugger, so you can fix it and carry on. I think that would drive anyone insane.

You prefer inexplicable crashes? Now these are enough to drive someone mad.

And if you do prefer them, wire your debugger to a Blue Screen of Death emulation.
Preventing Broken Windows
Great to hear that your company is forward thinking and willing to make the considerable investment to get off the MS Stack.

You might have more luck finding some Oracle DBAs and training them up on PostGres. There's a lot of similarities between the two, and PG/SQL is also very similar to PL/SQL.
Paul Allen: Why We Chose 'Open Science'
The Dependence of Forex on Financial and Sociopolitical Factors
Is this some kind of cat&mouse game from within Apple? Whoever is approving these apps must know what is going to happen. While it must be stressful for the app owner, as a spectator it's amusing (and granted, it's an issue I'm not affected by).
And my reward for making a valid point is to be downvoted and have my submission flagged. It is really tiresome that people on Hacker News would rather continue in a circle jerk fashion with a narrative that excites them rather than using their heads to examine what's really happening.

And if it does turn out that my keystrokes are being sent to some third-party company in the US then I'll be the first to sign up for the class action lawsuit.
StatHat - track statistics and events in your code
It's about time to keep up with Zed Shaw tradition: the prediction that Alpha nerds will leave what was hot a few years ago with a lot of crappy code for the next generation.

Here's a prediction: 6 years from now, there will be more crappy heavy JavaScript based web-application out there and the biggest money making is to maintain and fix these apps.
...indentured servants (H1B visa holders is the politically correct term)...modern day slave trade...

You are deliberately and dishonestly misusing these terms.

Slavery is a real problem in the world today. H1B visa holders are not slaves. They are free to quit and work elsewhere whenever they like. Slaves are not.

http://en.wikipedia.org/wiki/Modern_day_slavery

http://www.nytimes.com/2011/11/17/opinion/kristof-the-face-o...

http://www.nytimes.com/2011/11/13/opinion/sunday/kristof-fig...
How Golf can be a Part of your Backyard
Rather than looking for good ideas, look for problems that need to be solved, or market opportunities. Find out what is selling like crazy, and see if there's a subniche you can fill in that market. Read around in forums and see what people are complaining about. Talk to them and delve into their problems. Start with niches you're interested in.
> I was only mocking the author for wanting both ubiquitous debugging as a top-7 must have conputing feature, while at the same time decrying complexity and pining for a simple system.

There is no contradiction between the two:

http://en.wikipedia.org/wiki/Elektronika_BK
I got started at 15 working with teams to make CS hacks harder to detect. I now work in netsec doing packet analysis to identify new malware via network signatures. It's funny how script kiddies, given proper motivation, can grow into professionals doing real work. How many thousands (millions?) of our fellow IT workers can trace the direct roots of their profession to video games they played as kids?
Yes, no kidding. Gruber is a polarizing figure on HN (largely because he is an unabashed hyper-cheerleader for Apple the corporation -- seriously, his infatuation with AAPL profit levels, margins, and P/E ratios is hilarious), and you just had to drag him into a conversation having nothing whatsoever to do with him. If the populace of HN didn't recognize your name as a guy who lives on HN, you would be living in negative double digit land.
1. "Since term limits seem to be a sticking point (how can you get someone to vote for firing themselves?) ..."

Indeed.

2. "... I think that we should have a mandatory retirement age, 65, just like the rest of working class america."

Who's going to be doing all that mandating? As far as I know the only body that could do that is Congress; see your point 1.

And, mandatory retirement "just like the rest of working class America?" Except for regulated safety environments like airline pilot, I'm not aware of any mandate to retire at 65.
Cingleton 2011 recordings, must see for Mac/iOS devs.
IMHO, the Linux programming environment is a mess precisely because not everything is a file handler - not even sockets, as even though sockets can behave like files, there are differences. Plan9 was supposed to be the reinvention of Unix and a lot of useful stuff was ported from Plan9 to modern-day Linux, including the /proc filesystem which is really, really useful.

Unfortunately the UNIX philosophy is so powerful that you don't understand it until you live and breathe UNIX. And it also doesn't scale for some use-cases, but this philosophy is the reason why UNIX is not only alive, but the dominant platform.

Also, HyperCard is NOT a "small set of interoperable tools". And neither is Excel.
This is really nice, thank you. Just curious though, any reason why you don't make a full featured github repo for it so people could follow updates in future, suggest changes etc?
> So if its mission-critical, expect to take support in-house or pay for it

Pretty much true of any software, proprietary or not; only a blind optimist or someone with deep pockets will use a mission-critical piece of software without developing in-house expertise. Also, free online resources are available for both. We use a mix of proprietary and OSS products here and we've found that paid support is somewhat better for proprietary (easier to get, though quality varies extensively), but free support is typically better for OSS products.

Still, the main benefits of OSS have little to do with free support, though it is a nice bonus. I've thanked many developers for their time spent not only creating a program/system I use, but also for supporting it. Especially for small projects, sending a few good words and a few bucks (when you can afford to) shows the devs their efforts are appreciated.
How to get a perfect oral care?
You are correct. I was forgetting the distinction between GPL3 and AGPL3.
It took long enough just to get them to adopt [].
1) Because no amount of information will ever be complete, and in any event there's no way to analyze that information efficiently. If you had the recorded phone calls of every customer you deal with, would that solve fraud? Of course not, because they'd have to mention the intent to defraud, and you'd have t listen to the conversation.

2) I find it strange that you believe that you actually have a choice at all. So far no one has come to my house to ask what freedoms I prefer, nor have they asked me whether I'm okay with giving up more freedom in general. And I still don't understand why you think these freedoms are somehow exchangeable, as if the government will be content to give back freedom to assemble if they can just take away enough privacy.
It would, because they wouldn't just be able to passively log in, they would have to enter the password, reroute the sms (so that I didn't see it) and then log in to the email system (which is recorded on "this account was last accessed at").
Secret app on millions of phones logs key taps
von Ahn gave a talk at Carnegie Mellon last spring on Duolingo as well: http://www.youtube.com/watch?v=cQl6jUjFjp4
I'd consider that Scala is pretty much on the “good taste” side.

The features are very orthogonal and thought-out and much of the old legacy cruft is removed.
Microsoft's Windows Tablets Of Next Year...Or Never
Bargaining with your Right Brain
Well, it was linked to from the article. Here's the specific url: http://www.informationisbeautiful.net/2010/how-much-do-music...

How a retail CD works out for the artist actually varies pretty widely, according to that chart. An album sold on CDBaby will net the artist a bit over 7.5x as much as an iTunes album download. A more traditionally-distributed CD nets anywhere between a few cents more on the high end to under a third as much on the low end.
The cloud is real, but IT executives are still hesitating
Good suggestions for any career, not just design. Even the first suggestion, "Learn your graphic design theory and history," when translated to your specialty is valuable. There are a lot of giants' shoulders to stand on, and all you have to do is see them and step up.
People are really strange when it comes to free stuff.

A friend of mine decided one day to buy a bunch of donuts and hand them out to some folks waiting in a long line out in the cold.

Most people were very thankful or even surprised that someone would do such a thing. A small subset of people complained that he only bought one kind of donut, or complained that he didn't also purchase coffee for them.
Paranormal TV
Well, that's what I like the most with core modules: they don't change overnight, and, while some of them like urllib(2) may be replaced by some because they have a better competitor, most of them are just good old friends, like scipy, that don't need to be put upside down every month because someone found a slightly more elegant way to call two of it's functions.

And that's how you wind up using twenty-year-old code.

Not that there's something wrong with that, if it works-- but what if there were a better way?
A redable version: http://www.readability.com/articles/9lzok3re
Imagine the U.S. government taking google.com from the DNS list and making it a felony to link to not only the domain but the IP addresses that belong to Google as well.
And it still chooses the dumbest things as my defaults. Youtube? I've never, ever clicked on Youtube from there. Ever.

But I bet most people who visit do exactly that.

A long time ago Google was all about people like us, but this has not been true for a while.
We can all think of companies that have gotten $50M in funding and have little to show for it... Or which have something that you'd think could be so much better if you could spend that much on it.

"Lean startups" with less money are more focused, but they are less likely to be doing something really interesting with technology that involves a sustained development effort. Instead, they pick up some existing technology and quickly apply it to a market segment. As a byproduct, lean startups look pretty boring to some people.
I've always had a hard time with this argument that STM is problematic because logging rollbacks for every variable in a transaction is time consuming and profiling is hard because you don't know which variable is causing conflicts.

The reason I don't understand this argument is that I was always under the impression that you shouldn't normally DO very much at all in a transaction. As in, most transactions should basically just consist of a single pointer-swap.

What are typical operations during transactions that are more complex than this? I suppose if several variables are modified in sequence there could be problems---is this typical when STM is used in object-oriented languages?

If so, that basically demonstrates the value of using immutable data structures, generally considered beneficial for any form of concurrency. And so it's no wonder that STM is more popular in functional languages.

But when I've used locks in the past in C++ or Java, I've always avoided problems by reducing my synchronization periods to pointer swaps, either for updating a state vector or for passing ownership of an object; so the same lesson, I believe, is applicable to locks. Which leads me to believe that STM simply enforces practices that are good when using locks anyways, and additionally simplifies their implementation.
Here's a question that will probably get me downvoted: what exactly is it that costs so much money in startups?

Is it servers?

Is it paying awesome brogrammers the exorbitant wages that they oh so deserve?

Is it paying for marketing?

Or something else?

I kind of need to know which one it typically is, since I am planning to start a startup. If it's wages, then, well, I am going to do real great since me and my partners are used to working for scraps in Sweden anyway. But if it's something else then we might be hosed unless we get outside funding.
I did a single-page app before with GWT. I guess the GWT crowds beat y'all by miles since 2007.

The problem with this kind of web-app is that it's so much harder, so much more difficult, so much effort is required. And you need to be very very discipline and build automation testing from ground up (and I know many developers are just lazy to write automation testing, don't give me the start-up/iterate faster excuse, lazy is lazy).

At least with GWT, there are patterns and good practices to support unit-testing and modularizing your app properly.

In JavaScript? the fight just goes uphill straight away. In 2011, we still don't have automation test framework that is headless (console based) without requiring investment to infrastructure. And this is largely because the mentality of JS developers is to test in real-browser. Which is fine. Except the extra effort required to setup automation-test will cause a lot of people to find more excuse not to write automation test.

I get that developers are optimist people. But time through time, developers get burned so bad. Most people don't even know how to write JavaScript code properly but they're so ambitious. These people bite more than what they can chew.

So... good luck doing that while some of us will stick with Rails/Django/PHP/JEE6. Get ready, you're in for a lot of pain.
One advantage of a walled garden is less diffusion of responsibility.
Www.NextDoor.Com – Private Social Network Site For Neighbors
Nextdoor.com is a cool website that allows neighbors in the same community to share and communicate online in their own private social network. Anyone can literally see how useful this website can be to a small community or suburb area. This allows neighbors to share with one another about everything that is happening within their vicinity.
Google's Internet Identity Research
This was sufficient for my use. I just wrote it couple of days back. I can't think of any more features (except restricting bandwidth for upload also). So having a repo didn't even cross my mind