skysight-inc/HackerNews huggingface dataset:
Haskell doesn't prevent side effects. Otherwise, you wouldn't be able to do I/O. Instead, Haskell requires you to be explicit about side effects through Monads.

I think about it this way: imperative languages allow side effects by default, but allow you to write side-effect free code. Purely functional languages don't use side-effects by default, but allow you to write code with side-effects.
How is it that the analogy of a stool--which generally needs three legs, minimum--is interpreted as a programmer's egotistical viewpoint?
Didn't work for me with Dropbox. Saved something to my Dropbox, but the file it saves wouldn't open properly.
The interesting thing about steel is that the tiny grains that make it up are immensely strong, far stronger than any other material we have.

But we have no known method of making steel out of just those grains, it's always mixed with other weaker parts.

That's why spider silk is so incredibly strong - it's manufactured (essentially) one atom at a time.

If we could manufacture steel in the same way it would be far stronger than spider silk.

Here's a list of some of the various grains in steel:

Pearlite, Cementite, Bainite, Austenite (there are many more).

The steel making process is all about encouraging a specific type (and especially, mixture) of these grains to form. But we can do so only at low efficiency and in a random fashion.
The Psychology Behind Lean Startups
When I saw the diagram showing the way Joanna partitions her computing on her blog in March, I thought I was looking at something a schizophrenic would have drawn.

I think this line of research is interesting though, even if I don't foresee ever using it.
All these Brilliant People at Facebook Make Me Sad
Downmodders are really out of control here lately. Obviously I'm not saying that nobody cares about x86 anymore. It just very quickly went from the years of being only game in town to a sideshow for me when I started doing mobile.

What server software I do write is in very HLL like Ruby but I actually find myself looking at ARM disassembly sometimes now for apps.
From the abstracts and conclusions, I'll summarize a few main points that I got from this:

1. The functional CPU is implemented in an FPGA (a type of programmable chip) at 96Mhz

2. It performed about 25% as fast as a Core 2 Duo clocked at 3Ghz, which, while slow, is an order of magnitude better than procedural implementations on FPGAs

3. It took advantage of significant parallelism on the circuit level which is not available to modern processors

It seems that if some effort went into perfecting these chips as we do with procedural chips, we could see vast performance increases. Maybe they could be implemented as an additional unit on the computer to take advantage of functional programs.
The real problem with Linux is that it is torn between two ideologies. One says that Linux is a Developers OS while other says that it needs to reach the mainstream market and compete with Windows.

Linux can be seen as being a developers OS and if you are serious about development, the first thing you do is move to Linux. The amount of diagnosis and control it offers on the network and the OS through simple commands and DIY scripts is just unmatched. Though, the number of people involved in development is extremely small as compared to the number of regular home PC users.

The second kind, are the people who want to use Linux for web surfing, watching videos, playing some songs and do some office stuff. Here is the problem. Linux just does not fit this user portfolio. At least, it does not fit this as good as Windows does. OpenOffice.org and LibreOffice are light years behind MS Office. VLC is the only video player that brings some decency into video playback, and people are torn between music players.

Why did Ubuntu Linux and Linux Mint take off so well? In a world ruled by Windows, Linux has to understand its users and their Windows world view.

Wayland can be the savior for Linux and Unity is already turning some heads.
Design is important, but don't get ahead of yourself.

What stage are you really at right now? Is it just an idea? Have you got people using it, testing it?

You might say 'of course not, I can't build it', but you can usually do some sort of test market with friends without getting too deep into technology.

Build a 'low-res' product to test with. You're in university, so maybe you can get some help from somebody in the CS department. But really, if you can do it on paper or with static HTML, that can help you refine your idea in the early stages.

But as wrrice says. You can learn to build the whole thing yourself, and even if you have no desire to be a developer in the long-term, understanding the ins and outs of development will be valuable to you in the long-term (this project or others).
My take would be, if you do go to work for a big company, work for a big company that is in the business of making software. As an implementor you probably give a shit about process, but no company that isn't in the business of making software is going to be run by such people. At best, it will be run by people who pay lip service to process to shut you up, while disguising long-disproved methodology with catchy buzzwords and other bullshit.

Somewhere above you in the chain of command you need to have someone with the desire and ability to Do Things The Right Way and the political capital within the organization to make sure it happens. Otherwise you're at the mercy of people who don't give a shit about software development (why should they?). As a software developer, that's not a position you ever want to be in.

Of course, even in big software companies this often happens. But at least you'll have a chance.
What are the most interesting HTML/JS/DOM/CSS hacks? [Quora]
What is CNN's motive for not talking about this, as implied by the 'what you won't see' language? I haven't seen the documentary so I don't know what stance they take, but the article linked to didn't sound like it was trying to attack Wikileaks such that it would withhold that kind of information.
Five important lessons from Mark Zuckerberg
I like orthogonal, compose-able features. I like self-documenting configuration. I like grep. I like multiple desktops. I like managing my configuration using revision control (though the move towards using databases is making this a bit more difficult). I like the thorough and reliable documentation in man pages. I like transparency and the ability to read the source of most any aspect of the system. I like my distribution's massive package repository and the ability to provision entire systems with a few simple commands. I like not having to maintain a repository of license keys and original media to reinstall software in case my system ever crashes, or worry about some sort of online authentication.
It doesn't need to be "friendly," but if it's not going to be such, pushing it on normal people who don't know any better is probably a bad idea.

That said, friendliness is not incompatible with "hacker-friendly."
Inflamatory linkbait.
Game online
A lot of online games like RAN online, Point Blank, Final Fantasy, World of Worcraft, and many more that are served by google for an online game like this. game online game that now again the trends of Point Blank and more that presents online computer games.
I've avoided dealing with hardware issues by buying hardware from [Los Alamos Computers][1], and avoided most sysadmin issues by using Ubuntu (an LTS release).

[1]: http://laclinux.com/gnu/Start

As for desktop environments (Gnome, KDE), I wish they'd progress towards simplicity, speed, and smaller size, rather than becoming larger, more complex, and monolithic. They both should come to their senses and stop trying to copy the most recent OS X and Windows desktops.
I saw a similar one once. http://www.nij.gov/journals/253/tracking.html It was extreme. It analyses voice, facial gestures, fingerprints and a variety of biometrics.

IMHO, using only voice signatures to identify stress levels can be a bit trivial. The causes for stress may vary and this system should be clubbed with facial gesture recognition for accuracy.
Three Arrested over Sony Hack
There is nothing wrong with a Linux distributions being focused on fulfilling server or development roles. That is not the role a Linux distribution like Ubuntu Desktop is attempting to fulfill however. Critiquing Gentoo or Arch or what not against the traditional desktop incumbents is unfair, Ubuntu Desktop, not so much.
Angry Birds Rio Carnival available on Amazon Appstore
As expected, Rovio has released the new episode "Carnival" - contains 15 new levels - Angry Birds of Rio Android game exclusively on the Amazon store.
Linux will win the desktop when everything moves to the browser. Programmers want only a good terminal and a good browser. Non-programmers want only a good browser. Linux has a best kernel and will win on that fact alone in the next ~20 years.

Though likely, when Linux wins the desktop, no one will notice the difference.
How about a CNC mill, laser cutter or reprap? :-)
From my experience (as a programmer) I have seen what I would consider both mediocre and talented developers who fit your description of frothing to themselves thinking they could do better on their own. Neither performed up to their abilities mainly because of the distraction that the frothing caused.

I the case of one talented developer, I was tempted to ask them the following question but held back: What makes you think you could do this kind of work at a high level as an entrepreneur when you are struggling doing it for someone else?
I had three types of music rooms in mind: location-based, genre-based, and friend/follower-based.

with respect to playing tracks by the most popular users, i think you've brought about an interesting point.
I am currently working on a model where, at the end of every music "round", the most popular user is decided based on upvotes scheme and he/she gets to pick an additional song for the next round.. also allowing him to unlock badges and gain more credits! So far in my user interviews, people have liked this scheme and one of the user's mentioned that a sense of "competition" enhance the playlist and the listening experience.

The third point you made is particularly intriguing and something I hadn't thought about until now..But I am sure users would want to join the room just as listeners. In that case, either the control would automatically move to the next person in queue or it would switch to a computer generated playlist based on the previously played songs.
I agree on both counts. I find Ubuntu to be a good mix of hacker-friendliness and user-friendliness.

What I'm getting at is that everyone seems to think Linux has to succeed on the desktop. Perhaps that was a good goal in the Windows XP days, but it's not as big a deal now.

I don't see why Linux needs to be a mainstream OS.
Dieter Rams , the German industrial designer who inspired Apple
I'm working on making my ideal tool: http://www.reverberate.org/gazelle/

It's been a long time coming, but I believe very strongly in it.

"pain in the ass to integrate" -- I can sympathize. I'm working tirelessly to make this as easy to integrate as regexes are in Perl, Python, Ruby, etc.
Online and local purchasing do compete on the same ground. A local store uses CT state services and pays taxes to support them. An online store does not use CT state services and does not pay taxes to support them.

Similarly, many companies use Microsoft software and pay license fees. My company does not.

Would it be "more capitalist" if we were forced to pay a Microsoft tax, to eliminate the "market distortion" of using lower cost software?
You'd be very hard-pressed to find a profession-specific forum of any kind that's not full of participants who think their profession is more important than others in their organization.

I switched to software development in my 30s, after a career in PR and marketing. Talented software developers ARE some of the most impressive professionals I've ever met. And frankly, many many many marketeer and PR people deserve the ridicule. Heck, maybe even 95% :)
It's worthwhile to point out that he's producing this steel through his own venture where the process "is run at his proprietary lab setup at SFP Works, LLC., in Detroit."

Perhaps you and he share the same view of the value of patent protection. Certainly, I'd be concerned about the appropriation of this technology by foreign countries with less respect for US intellectual property protections.

(http://www.gizmag.com/stronger-steel-in-a-flash/18882/)
The problem that I continue to see is, people have this image of Linux and the "Linux Desktop". That image, that tons of "hacker" types that love OS X seem to have, hasn't changed in years and is extremely out of date.

I hear people talk about problems or applications that haven't been standard linux fair for years now, but they haven't tried it and by-golly they're unbelievably attached to those memories they have of how hard it is to use.

Aw, already with no explanation? That's fine. Let's play a game. Let's count the number of posts that make it seem completely obvious that Linux is "so wildly unusable". Then let's count the number of posts that actually describe any task that is vastly different or categorically harder to do in Linux. Let's see which count is greater.

My phone works as a modem out of the box in Ubuntu. I can do internet connection sharing to my Xbox in less than 5 clicks (it required registry editing and manual editting of UNIX files in use in OS X), and I've yet to get my phone working as a modem in OS X, period.
Ok, I should have renamed it from the original title given by the author to "Excellent List of Distributed Systems and Relevant CS Courses With Good Lecture Notes, Assembled by a University of Cambridge PhD in Mobile Distributed Systems, Zookeeper Committer and a Glorious Systems Engineer Who Lives and Breathes Distributed Systems at Cloudera" to get less upvotes.

Just read the rest of his blog. This is not a trivial list of references that you can compile by googling without thorough understanding of the subject matter, trust me, I've been digging this field for too long [1]

Alternatively you can ask hundreds of people who re-tweeted this link[2], bookmarked it on their Delicious [3], or those who study it now, why did they think it was good. Look at their profiles, what percentage of them are dumb link-followers?

Or simply try to compile and post a list of courses with the same title and see how many upvotes/retweets/bookmarks it gets and how quickly it disappears from the front page if it gets there in the first place. HN users are largely linkbait-averse, that's what I like about this community.

[1] http://www.quora.com/What-are-some-good-resources-for-learni...

[2] http://twitter.com/#!/search/realtime/%22advanced%20computer...

[3] http://www.delicious.com/url/6c0121386126295cd80dc3da665267b...
Learn what you need to get stuff done. Depending on what you are planning to develop and how you wish to approach it is how you choose the language(s).
Thanks guys, I think I will learn to put something together myself because I do think it's very important to be able to get my hands dirty in any situation. Any suggestion for languages.
Which Workfit do you have?
Well, it totally depends on what you want to achieve from learning any programming language.

IMHO, these are the ones you should know and they cover most of the scenario.

1. A desktop programming language, compiled and robust like C.
2. A regex wizard like Perl.
3. A strong web based scripting language like Javascript.
4. An interpreted and readable language like Python.

If you like to fire up your own codes from time to time, these are the ones you should know. Though, if you are into specific development fields, this list does not matter. You have to learn something specific in that case.
Ask HN: Working at a Startup vs. Large Companies
I'm a CS student right now and I'll be applying for internships later this year. This will be my first internship and I'm wondering whether I should focus on startups or large companies?

I can see advantages for each: I think I would like that environment better at a startup. From what I hear you generally get a lot more freedom. You hack on cool projects that you are passionate about, but you work hard, which I don't mind. On the other hand, I think that working at a larger company would help me learn more. There would be more senior developers that can provide insight whereas in a startup there would only be a couple other developers, depending on how far along the company is.

What I'm looking for is some insight. What have you learned from your experience? What are the pros and cons of working at a startup versus a large company? What do you recommend for someone looking for their first internship?
You sure do know alot of this guys (www.lowendbox.com) affairs.. for NOT being a confederate.. or are you?
aren't the specs a little too much for an os focusing on security?

Minimum:

4GB of RAM

64-bit Intel or AMD processor (x86_64 aka x64 aka AMD64)
Intel GPU strongly preferred (if you have Nvidia GPU, prepare for some troubleshooting; we haven't tested ATI hardware)

10GB of disk (Note that it is possible to install Qubes on an external USB disk, so that you can try it without sacrificing your current system. Mind, however, that USB disks are usually SLOW!)
http://drupal.org/project/sharepoint
Balenciaga Resort 2012
I just sort of end up learning stuff without actually making a deliberate effort to do so. Sometimes I learn because it interests me, sometimes because I need to, but mostly because I find it interesting.

I guess I don't really set out to learn, I just sort of gather experience

Edit: What I'm trying to say is that I don't see much value in planning out what you're going to learn as those sort of plans almost never work out. Instead, just try stuff and see what you like; what you have an affinity for. As you gain experience in one area you'll find yourself branching out naturally. Let your curiosity and enjoyment guide you. The languages you derive the most joy from are those where you'll be most productive
Assuming that "working at startup" means working for a startup (ie not being a founder), check out

http://news.ycombinator.com/item?id=2612416

and

http://news.ycombinator.com/item?id=2623797

for contrasting opinions and discussions
"You can then write a transforming program that converts C into MCL. Then you will compile your new compiler code with the compromised compiler. This will give you MCL compiler. It will still contain the backdoor logic. However, that logic will be deemed irrelevant."

If your transformations preserved behavior wouldn't the backdoor still be there?

What does it matter which language the compiler compiles its code in to as long as the behavior remains the same?
you should read this: http://college2startup.tumblr.com/post/6420242367/why-you-sh...
R.E.S.P.E.C.T - A Shout Out to Xobni for Respecting My Screen Space
Skunkworks, underground, and off-the-radar initiatives are a lot more common in large technology organizations than people might imagine. While you may have "Product Action Committee's" and "Executive Commits" and "Roadmaps" that theoretically set the mandate/budget and resourcing for the company, many of the best projects occur because a few (sometimes only one) smart engineer or manager gets it in their mind to do their own thing.

I will admit, it takes a little gall to hide an entire T&E budget to Japan on a skunkworks project though. Great Story.
Angry Ip Scanner(Port Scanner)
What percentage of users have silverlight installed?
If it makes you feel any better, any truly brilliant people working at facebook will probably make enough money in the IPO to be able to retire and work on whatever brilliant stuff they might feel like. At least for a while.
Yes, I meant working for a startup. Sorry, it's late. :)
Whenever there's a mention of someone of Thompson's caliber working for Google I'm reminded of what Jeff Hammerbacher said:

The best minds of my generation are thinking about
how to make people click ads. That sucks.
I wonder if the popularity of orange and blue is related to the orange/blue colour fringing of most sub-pixel text-rendering algorithms.
Ask HN: I created this Navigation software for the desktop. What do I do next?
I created this as my university project. It is a real time navigation software and the navigation is powered by an Android phone.

What can I do with it next?
There's a reason for this. Amazon started before the widespread availability of free email services and it was quite common for a family to share a single email address from their ISP. They built this feature in to allow for this case.

I knew an engineer who interned at Amazon who's responsibility was to maintain this legacy system as there were still quite a number of active accounts that shared the same email address.
Strangely, my grandmother isn't terribly concerned by these issues.

Why are you listing open sourceness and man pages as a reason that Joe Average User should use Linux? Perhaps you need to reacquaint yourself with Joe.
Is it any worse than the reams of medical researchers working on giving old affluent men hard-ons and their hair back?

I doubt it...
Uhhhh. I'd look at turntable.fm and see their "version" of what you're talking about. Their "rooms" are effectively channels, and they have heavy integration with music collections (and I think they'll make uploaded music available to a more general library soon).

I think your idea is a good one, though and I get it.
I think this is more a case of journalists sensationalizing a relatively dull case. Think of .net developers as slightly miffed and apprehensive rather than infuriated, and this becomes a more reasonable story.

That said, I think there's reason to be apprehensive. I mean, .net is a Microsoft product. It's never a good sign when you have to press a product's maker for information about how great said product is and how central it is to what they're doing. I'm not saying .net is going to disappear in Windows 8, but it certainly sounds like Microsoft is trying to de-emphasize it at this point.
I noticed that too and was heavily discouraged from reading any further . .
That, and it got tiring to explain to customers to "press Command+C to copy" only to hear back "Command? Oh, the Apple key?"
That's a limitation of hadoop, though, not the MR idea by itself.
Everything is moving to the browser but the browser now requires a lot of capabilities from the hardware and drivers: 3D acceleration, sound, printing, power management, etc. Effectively all the problem areas for Linux outside of custom hardware (like phones).
The hammock idea would be great, up until the rain started.
Knowing only one scripting and one compiled language is a joke. To be successful you need to be able to pickup new languages quickly, like in a week. Sure, after a week you're not and expert in any language, or maybe even good at it, but you should be able to read and write it.

If you're just starting off, C (or something equivalent to C like Pascal) is the way to go. If you can understand pointers and memory management then you're better then many so-called programmers.

After C, you should then learn an objected-oriented language (Java's a good choice, but you could try C++ if you're insane) and a functional language like Scheme or Clojure. A logical language like Prolog may also come in handy.

Once you have C, Java, Scheme and Prolog, you're pretty close to unstoppable and picking up anything new is just a matter of learning some syntax, libraries and a few gotchas for each language.