skysight-inc/HackerNews huggingface dataset:
There's so much wrong with this article I don't even know where to begin. I guess I'll start with:

"In most implementations, the data sent to actors must be immutable."

This is true of Erlang. It's not true of many other actor systems, including Akka, which merely suggests arguments be treated as immutable.

Perhaps the most interesting system that doesn't depend on immutability is Kilim. Kilim allows ownership transfer of objects between actors, causing exceptions to be raised if you attempt to access objects which have been sent to other actors. No copying required!

After dismissing actors, the article goes on to talk about all the pitfalls of concurrency which have been areas of intense research for at least the past 40 years, and concludes it's all a big mystery and we don't know how it's all going to work out yet. WAT?

Perhaps even more WAT was this letter at the end:

"All the applications use I/O completion ports for task queuing. The general flow is that a task arrives in the I/O completion port queue and is picked up by the next available thread, based on information contained in the Completion Key and Overlapped data structure, and is routed to the appropriate task handler."

I/O completion ports? Really? I'm not a Windows guy, but last I checked that required a system call.

How about using lock-free ring buffers to dispatch tasks to cores instead?

http://code.google.com/p/disruptor/
http://www.infoq.com/presentations/LMAX

--

All that said, what will the concurrent alternative to objects be? How about concurrent objects:

http://celluloid.io
It sounds like their software is incompetently designed. It should perform at least some basic validation at data entry time, like not letting you enter "pregnancy" for a man or asking "are you sure" when you enter "heart bypass surgery" for a ten-year-old.
Right now it's a toy, but there's a whole new group of programmers who have never touched any kind of low level programming before. People are taking new world ideas, and applying them to what one might call old world problems. Look at this: http://dwilliamson.github.com/ its a real time asm editor... there's going to be a lot of really cool toys that come out of this, and potentially those toys might inspire someone to make something that's more than a toy.
I agree of course, but I think the current situation is worse. Applications can allocate more than the amount of physical memory, at which point the system can become unusable. If on the other hand an allocation would have been refused at an earlier stage, there would have been no critical data to drop.

I guess I want to argue that with the currently typical amounts of RAM, all critical data should fit in RAM and stay there. The idea of virtual memory was to abstract over the difference between RAM and disk, but perhaps this has become a harmful abstraction now that RAM is big enough while the disadvantage of slow disks remains. RAM and disks are fundamentally different parts of the memory hierarchy, and should be treated completely differently by applications.
Swapping made sense when we had computers with limited resources running multi-user workloads. Neither is now true. These servers are special purposed so they don't need the overhead of a general OS at all. But aren't there two issues here? Swap and node allocation? Even without swapping wouldn't you have NUMA node allocation issues?
When I had to optimise some Python code, the logging module was the first module that got replaced. I have no idea what it was doing, but it was causing a 10x or so hit to performance. Writing my own logging.py (with the same API so I didn't have to change any other code) gave me a massive improvement.
Yep same here, if you are slinging code all day in emacs, it's nice to be able to bring up your agenda in another buffer when you need it so that you aren't switching too much out of context.

I use remember to add tasks as they come up so that I can quickly get back in to what I was working on. For me it all has to do with dealing with the little interruptions from people throughout the day.

Ideally this wouldn't happen at all, and I could focus 100% on what I'm supposed to be doing. But in the real world, people people interact, a phone call/email etc.... When I'm coding and someone arrives at my desk and says something like "Sorry to bother you this will only take a minute...", it triggers my fingers (C-R n) and once the conversation has ended I hopefully have notes of action items I need to address maybe even with a due date if i'm lucky.(C-c C-c) Or if it was pointless/not actionable (C-c C-k) and my cursor is right back where I was before being interrupted.

http://sachachua.com/blog/2008/01/capturing-notes-with-remember/
http://members.optusnet.com.au/~charles57/GTD/remember.html

I also track time with org-mode. (C-c a n) to bring up the agenda view, cursor to task i'm going to work on (C-c C-x i) to clock in. When I mark the task complete it clocks me out. Over the week of doing this, you will see your tasks on the timeline in your agenda view which gives you an awesome sense of accomplishment.

If you stick with it you'll have enough data to generate some really nerdy reports on what you do all day, or if you are freelancing, a format that goes a long way towards a proper invoice. I've never had a client ask for more information about what I was doing by applying this technique.

Like with everything emacs, I've barely scratched the surface on what is possible.

emacs + org-mode + remember = a process that can scale from macro to micro and is very adaptable to your needs.
Diff works best when things are single idea per line, and when control structures don't get in the way.

One example - the use of the trinary (?:) operator as a replacement for if/else assignment statement can quick and easy when programming. The problem is that diffs with it can look like a total mess because a whole lot of things are happening in that one line.

Similarly, certain languages where program flow or control structures make it so that people are inclined to make many things happen in one line (inline regex, lisp or scheme syntax lanagues) can diff in a confusing manner.

Diff is great when everyone is using a coding/whitespace standard, and things tend to atomically happen on one line.

I'd encourage that when refactoring code that's not to the standard, you do two passes - one to clean up the code to the standard, then another to make the actual changes.
What the seven wonders of programming?
like pyramids and the Great Wall of china what do you think are the wonders of coding?
This sounds like what I'm doing, without the text dump. But I like that, I like that a lot. I'm not a dev, any chance I could get the script from you? ;)
The article keeps saying "copy and paste this code".

If a tutorial needs to say this, then there is something wrong.
Where I set up my git & hg aliases like a boss
I don't want to be negative but that was, in my opinion, a very poorly conducted interview. I wish the interviewer wouldn't stick to the script so much and that he would have followed up to some of the interesting comments Robert made. I wish the questions weren't so jumpy and that he had a theme or a linear form. And I wish he would stop looking at the paper and the camera so much and looked at the person he is supposed to be interested in.

One radical change to overcome some of the big deficiencies the interviewer has is to move behind the camera, clip the interview into a series a Q&As and completely avoid the "conversation type" interviews.
The price elasticity of labor-saving devices
It's just a bunch of photos with captions. Why are those patterns picked for camp? Does anyone know how this camouflage works?
As IPO looms, Facebook also wants to be a mobile leader
Letter of support for CISPA from Facebook [pdf]
So a 1-2 hour drive for anyone living in Bev Hills, Hollywood, Brentwood, Santa Monica, etc... Not that Union Station is much more central. LA is just too damn big (geographically) to make that viable.
I think you meant to go to slashdot instead of news.yc
I really like the motivating idea behind this post, and read all the way through for that reason. It has some good points (the 30/60/90 PIP example), but it's hard to remember the key points.

As a fan of the idea, I hope you can spend a little more time to tighten it up and add some more concrete examples (some of the points seemed a little hard for me to picture concretely).
Not true. Baghdad had very heavy air defenses. Dangerous enough that the U.S. lost 2 F-16s and decided to only use F-117 stealth aircraft afterwards.
See:
[1] http://en.wikipedia.org/wiki/Package_Q_Strike
[2] http://www.patricksaviation.com/videos/LucasStL/1180/
I have a micro running with < 2gig traffic a month and this would cover about 2.5 months.
It says that but when it hit our account it listed all those other services beside the credit...
And if you'd like to use the same API in a non-browser environment, Underscore.Deferred is a complete port of jQuery.Deferred and jQuery.when that has no jQuery dependencies: https://github.com/wookiehangover/underscore.Deferred
I think it's more than the lack of a summary. The whole essay could really benefit from a lot more editing and tightening up.
web.go is still not compliant with the recently released Go1. I'd recommend anyone interested in Go but not in a hurry to wait a month or two until the Go1 dust settles.
You totally missed his point. He's not saying the experience should present to the user as anything but what it does now - but behind the scenes there isn't any reason for the universal binary to exist. The phone or tablet should just download the binary it needs.
IPhone users think having Instagram available for Android is gross
Exploit Linux Machines Through Fun Challenges
Did everybody see what just happened?  The pendulum has swung.
Mac anti virus provider website hacker www.intego.com
Yes, NUMA effects will really kill you, though how much depends on the particular quad-proc topology. I have some measurments for the interested in a small workshop paper I put together (I gathered the numbers in the context of tuning our garbage collector anyway):

http://dl.dropbox.com/u/1620890/website/writings/mspc12-stre...
Driving slowly can lead to accidents just the same as speeding.

Amen. The first thing I thought of when the article mentioned driving slower was that in my experience the most common hairy situation I see on the freeway is the chaos and disruption that results from someone driving significantly slower than the general speed of traffic. Or merging onto a busy 65mph highway at 50, or similar.
I agree. I'm outraged and disgusted by things I've seen over the past 12 months-- some have happened to me, most to other people-- and it's really affecting the quality of my writing.
Single bed in a lively hacker house
Looking for rooms in SF and came across this awesomeness.
I guess the key point is: a lot of people are using "fail fast" as an excuse for behaviors that previous generations would consider frankly irresponsible, if not unethical, and I think the general element of scumbaggery that we've seen in technology of late is a result of this absurd ideology.
OP here. Just to clarify - the contest is ran by the Microsoft student division. Yes, I am aware that it is Facebook only and there is no webpage. I have no control over that, so again - cannot do anything about it. The PDF rules are linked from the same Facebook promotion page, by the way, so if there is any suspicion about that - feel free to read them from the FB page instead of the post.
I think the folks that would benefit most from an improvement in ethics are likely to read this without taking away anything more constructive than new ways to 'position' themselves to folks who aren't sociopaths.

still worth talking about tho. ( and yeah, a bit long for a blog post, but only minutes to read.. some things take more than 140 characters )
Kaspersky Virus Removal Tool Version 11 (11.0.0.1245) on Downloads App
For the reasons described in this post I tend to separate in different commits those changes that alter functionality from those that are refactorings.

Sometimes I refactor before making my changes, and sometimes I do it afterwards. In any case I try not to mix a change in the functionality and some refactoring in the same commit. That way, in retrospect, it's easier to me to understand each commit: the ones related to changes in functionality have simple, easy to understand diffs, and the ones related to refactorings have messy diffs but at least I know that they don't change any functionality.
"Link or it didn't happen" is a perfectly valid response to empty complaints that provide no evidence. As a moderator I'm in a position to actually do something about real problems. If you just whine and complain without giving me a link I can't do anything about it.

No, I wasn't taking a tone. If I was I wouldn't say that I wasn't. If you perceived a tone, it's on your end. I'd thank you to not call me a liar.
Great slide which covers majority of the features in HTML5. One thing to note is that notifications feature doesn't work on Safari but works fine on Google Chrome.
This is what I suspect, but in practice it seems not a good idea to just turn off swap:

> DO NOT TURN OFF SWAP to prevent this. Your box will crawl, kswapd will chew up a lot of the processor, Linux needs swap enabled, lets just hope its not used.

(from one of the blogs linked in the article).

However, I can't find a clear explanation of why this is so.
If you strip out some personal bitterness and spent some serious time with a scorched earth editor, this could be a very effective treatise on the state of ethics and corporate responsibility in the technology industry. You touch on some interesting concepts that deserve thought...

Alas, phrases like "snot-nosed kids", "Google's douche-tsunami" and "little sociopath" betray both personal bias and anger. Phrases like these make it too easy to dismiss this article as little more than a rant.

I believe that if you're going to call out an industry on ethics, you have to pursue the article as a journalist would. Keep your personal feelings under wraps, tell the whole story and leave the conclusions to your readers. When it comes to proving a point and convincing people to change, passionate journalism always trumps passion on its own.
Looks a lot like razzle-dazzle, circa 1914.

http://en.wikipedia.org/wiki/Dazzle_camouflage
April 2012 Quicklisp dist update
Came across this awesomeness when searching for rooms in SF.
There have been a thousand graduate school and commercial project to try to develop program representations and languages that were superior to the flat text file. Obviously, none of them have received wide usage.

What has succeeded for many is scriptable text editors, cscope-like tools, autocomplete-like features, and refactoring support in editors. But as you point out, these are better tools to work with program text.

I think text is safe for the forseeable future. Partly because we have thousands of years experience with it and partly because it's a winning combination of a extremely powerful representation format and a KISS solution.
I'm not writing this for the unethical people. I'm writing it for the marginally good people who are lazing about while the world burns.

I'm a believer in a 10/89/1 model of human morality. (These numbers are approximate.) The Good are 10%. The Bad are 1%. The Weak are 89%. The Good outnumber the Bad and one might expect them to win, but the Bad just as often win because they are willing to go further in their manipulation of the Weak.
Steve Jobs attacks Android just for show?
Just compile with the gcc go compiler and you are set. Running 32 bit on servers is just like running IE6 on desktops. It's time to upgrade. Also every language that uses a conservative GC behaves this way, it's not just a GO issue.
If you've ever used a textarea/contenteditable, read this.
Ask yourself: Would Steve Jobs work on this?
Pinterest’s Unlikely Journey To Top Of The Startup Mountain
yes, Ghostery (firefox plugin) might stop it also.
Kaspersky confirmed the number. https://www.securelist.com/en/blog/208193441/Flashfake_Mac_O...
The underside of the cockpit is probably the best area to get shot at in an A-10. It's heavily armored, so the pilot is safe, and there are fewer important parts to break there as compared to being shot farther back.
When I'm ready to commit, I usually have solved the problem in code. In order to create five separate patches that illustrate the line of thinking, wouldn't I have to go back in time and re-create the intermediary steps?

I suppose I could create patches as I am actively solving the problem, but at that point my code may very well be a mess that I'd have to clean up each time.

Of course all of that is moot if your problem naturally segments into several patches, if nothing else than simply by the virtue of being larger than a 30-line patch or involving several mostly independent components.
"Hot market" seems like an understatement.

I'm still waiting for salaries to catch up tho.
"What I didn’t realize is that the real choice is this:

what’s behind the door you originally picked
what’s behind BOTH of the other doors, minus the goat"

Mind blown. I've been trying for a long time to understand this intuitively, thank you!
I think if you care about the GTD stuff itself too much, you are no getting things done at all.

Maybe you just doing fake work, getting some fake motivation from a list of GTD advice which you will lose while you continue reading HN, twitter, etc.

In my opinion, getting things done is just 3 simple step.

get thing!

do it!

done!
You'd take the Richard Gabriel approach, in which you do all kinds of tricks by playing around with macros and types.

Of course you'd probably run it in X86 and let that compile to a binary you propagate through your supercomputer.
What the article hints at, but doesn't really follow through on, is that you could use this to fire off multiple AJAX calls in parallel and the do something only when all of them have completed.
Grammatically, the first two paragraphs should be combined into one.
IOS Automated Tests with UIAutomation
I haven't looked at the source details, but few months ago there was a promotion for the whole year worth of free EC2 (Windows, Linux).
'Apple to become world's first $1 trillion company'
Yeah...I see what just happened...we are back in 1999. Enjoy it while it lasts.
I think I'm going to tighten it up later today.

As for phrases like "little sociopath", I want to call people to action on this sort of thing. I want people I've never met to call out and halt their own little sociopaths.

I call out Google because it was once a great company, and billions of dollars of value within in it has been destroyed by careerist middle managers who had no right to do so. I feel like Google is symbolic, because it was such a great company for so long. How on earth did a company go from being a cultural leader (in workplace progressivism) to using Jack Welch-style rank-and-yank in a couple of years?

Journalistic neutrality, on this sort of issue, either veers toward meaningless abstraction ("one model is...") or conservative fact-based concretion. I want to present the facts, but I also want to present, accurately, the more intangible (but no less real) ether of injustice between them.
I wonder if there's a sort of perverse incentive happening where devs try to avoid checkins that are "too simple" or "not meaty enough". It seems like a similar phenomenon to avoidance of using the extract method refactoring even down to the limit of one line methods.
This would definitely require more work on the developer's part!

Right now the situation is: toss whatever you want into the bundle and it's there everywhere. For what you're proposing to have any benefit it would have to be: add files, annotating them with whether they are needed for iphone/ipad, keeping those annotations updated as you work.
Increasingly, pre-clinical studies to identify potential drug targets are conducted in academic settings.
Every commit has both an author/author-date and a committer/committer-date. The former are retained during a rebase, the latter are reset. However, you can use --ignore-date to reset the author-date, or --committer-date-is-author-date to retain the original committer-date.

In any case, when using git log, you can override its default of listing commits in reverse chronological order with --topo-order or --date-order.
Screenshot of 1st FTP transfer from Amundsen-Scott research base south pole
At runtime init, Go programs attempt to reserve 512mb of RAM. If they can’t do this, they crash. Go needs the space because it is garbage collected - presumably, all GC languages, or any program that takes a similar approach to memory management, will be susceptible to the same problem.

While it is true that most garbage collected environments will reserve some memory at startup, a hard minimum of 512 MB is not the norm. Do note that embedded Java has run on cell phones with minimal amounts of RAM for many years.
I just called AT&T and they gave me a rundown. The phone must:

1. Have been purchased through AT&T
2. Not be stolen
3. Have its 2 year contract fulfilled
4. BE ACTIVE ON YOUR ACCOUNT

The last one is the kicker and something NO news service has reported on up until now. It has to have its own line on your current bill and 'be active'. I asked 3 times what 'be active' meant, and the best they could explain was that it must have service and 'have been used' (i.e. phone calls made/accepted on it).

I asked if I could add it as a line, and she said yes: $36 activation fee, plus $9.99 per month, and then you have to use it. Then they can unlock it. There's no contract minimum time limit that you have to fulfill to do this (I was told...I was transferred to their activation department which was closed today, so I don't have more details), so as best as I can assume - set it up, use it for a couple of days, make sure your bill is paid, then ask for an unlock, and cancel the line.

There's definitely more than AT&T has told all the news outlets, and you have to call to get the details. Surprise, surprise - AT&T not totally forthcoming? Who knew...