skysight-inc/HackerNews huggingface dataset:
I’m just as productive on Linux as I was on OS X

I think Linux is far better for developers. GTK, QT, wxWindows and all the python/ruby/you-name-it you want. Lots of open source software doesn't even work on osx. Keyboard shortcuts are everywhere. Best window management (i just love alt-right click). I wish they 'd stop it with the unity/kde plasma eyesore madness, and focused on basic things that ruin my experience such as printer support, multiple monitors / docking station, sleep and hibernate, not breaking my setup every time it updates etc; i 'm content with xfce.
Baseball Coaching Videos
Coachtube delivers the best and unique of coaching vdeos, so be a master in any sports .
> you're both new here

My account was created 1458 days ago. Just how long does someone have to be here before you no longer consider them "new"?
Not a great comfort, but companies like DNA 2.0, Invitrogen, etc. have pretty intensive safety checking of what they're synthesizing. No sending off for smallpox.
I can relate to them. Good hackers tend to gravitate towards Unix based OS'es for some reason. So out of personal experience and anecdotal evidence, I would say that the conditional probability of a voluntary Windows user being a great coder is less than, say, a Linux user.

Many Windows users are also at a disadvantage because many of them have only/mostly used Windows. Pretty much any Linux or Mac user has probably had to (voluntarily or not) use Windows at some point. Also, I have yet to meet the Windows user who can rationally reason about their choice of using it and not another OS.

If you've only used one operating system in your life, you are at a disadvantage compared to people who are proficient with two or more OS'es.

edit: I know this is controversial. There might also be a regional bias, since I'm located in Helsinki, the hometown of Linux :)
Unfortunately it matters if you do mobile development, iOS being one of the two must have platforms and requiring a Mac. I do use and like Ubuntu though, and could see myself switching over with minimal hassle.
Thanks for writing this up, it'll be quite useful to me.

I found your last line quite amusing: "I want to learn how to push the boundaries of knowledge, not just apply what I learned in these books."

When I quit my PhD to do a startup, my thinking was the exact opposite: "I want to apply what I know to solve real problems out there, not just keep learning and write more books which no one will read."!
In order to be deformable and retain its function, you have to build the program in ways that allow it to deform. You have to decouple the various functions. That's why I love Plone so much. Sure, it's alien technology for most, but it's so great I can't stand most CMSs I see being used and marketed as "professional tools".
I find the name of the hospital highly ironic. After all, didn't the good Samaritan pay for the treatment and "hospitalization" of the victim?

One would expect a stay at the Good Samaritan Hospital to be free.
You can make your address sound more business like. i.e. if you live at

35 Southwark Street

London

E14 9PX

Change it to.

MyCompany.com

Unit 35 Southwark Street

London

E14 9PX
who do you use?
Google Revamps Search Results To Feature Personal and Social Content
I love my GUI-ish setup of TextMate and CornerStone/Tower; I can only do iOS work because I have a Mac; I will buy a dedicated Windows box when I want to dabble with Windows Phone; I don't know what I'd do with my iPhone on Linux; I like Xcode4 a lot more than MSVC, in any case they are as different as day and night; mice and keyboards are similar, but can you say that about trackpads already? (Honest question - I don't know)

There are a lot of differences between the major platforms. The article is true when all the moons align: You only do web (or Eclipse) work, your phone and all its apps are platform agnostic (OmniFocus locks me in), you have no games, you have no paid GUI apps, you don't care about iTunes ...

I have a whole family of real, existing humans that I'd love to free from their virus-ridden Windows machines. It just isn't possible for what they do.

Not sure what to take from this article. It sounds like indirect boasting about not being locked into anything. It would be more interesting to discuss if that is important.
Wordpress is still great for small businesses. The problems he was listing off tend to be issues for large organizations.
The logistics of the update are being discussed in https://groups.google.com/forum/#!topic/mozilla.dev.planning..., with the current proposal available at https://wiki.mozilla.org/MPL_Upgrade.

One idea is to update the codebase at the beginning of the cycle that will end up being released as Firefox 13.
Call Granny - Helping Guys With Their Laundry Since 10 Minutes Ago.
How is copying in the windows terminal hard? Highlight and press enter.
I strongly considered stopping reading at "Uranium is the heaviest element on earth"

Do you prefer "uranium is almost twice as dense as lead" as I do, for that sentence? That transitions well enough to the idea next mentioned by the author, that a small volume of uranium can nonetheless explode with the force of tons of TNT (which would be much bulkier, besides much heavier, to carry to the target). Yes, it also bothers me when writers don't use the word "dense" when the physical concept of density is what they are writing about.

Of course, I had to look up a specific gravity table to check my recollection of the specific gravity of uranium, something I don't experience every day.

http://www.infoplease.com/ipa/A0001826.html
How are they supposed to know that a particular developer is exceptional otherwise? Even if they have a github or similar account for a potential employer to peruse, that ultimately only shows the end result of their thought process. It doesn't necessarily show that they were able to arrive at their conclusion/solution efficiently. How would you then account for that?
Considering how much was already known about the working conditions as well as suicides at Foxconn, it hasn't slowed down sales. I'm sure a mass suicide would get more media attention, but who knows how it would actually affect their bottom line.
AHMED CLINIC
Huge implications in many directions...but somewhat moot (value wise) until they get past their early adopter stage. For almost everyone their real social graph is not defined well enough by Google for this to be extremely useful.
I agree with you. I won't call it fear, it's more of anxiety. Whenever I think of learning, I get overwhelmed. It's like learning what? I end up spending precious time being anxious and watching a movie....Sad but true.
For a full-time developer, I agree with the OP insofar as Linux and Mac are largely interchangeable. I develop on Linux and love it.

The biggest exception is for anyone involved in graphics, front-end development, or often works with graphic designers. The lack of native installation of Photoshop and Illustrator wrecks it.

That's what largely spurred my decision to buy a Mac. There's only one OS that currently offers a Unix CLI with native Adobe Creative Suite installation. If Adobe ever offers native CS on Linux, I'll be Linux for life.
The market opportunity with pay-TV companies for Ubuntu TV looks potentially very attractive to me:

* For pay-TV companies like Comcast and DirectTV, Ubuntu TV is the only next-generation set-top-box solution that is truly neutral from a competitive standpoint (it's not controlled by the likes of Google, Apple, Amazon, etc., and it's easily white-labeled and put completely under the control of the pay-TV company) -- and it's inexpensive and available today.

* Ubuntu TV is a vast improvement over existing pay-TV set-top-box software in use. Compare Ubuntu TV's UI at http://www.ubuntu.com/tv with, say, the UI currently offered by Comcast, the US's largest pay-TV company, at http://por-chr.cimcontent.net/ui/images/landing/tours/meetyo... . (Speaking from experience as a Comcast subscriber, the screenshots understate how much worse Comcast's existing software is -- it's awfully slow and often unresponsive.)

* Set-top-box manufacturers have no choice but to do whatever pay-TV companies want, because pay-TV companies control the last-mile connection to consumers. If a pay-TV company like Comcast wants wants Ubuntu TV with XFinity logos and blue colors, that's what the set-top-box manufacturers will install on Comcast boxes.

* Ubuntu TV is compatible with a wide range of commodity hardware, including many legacy set-top boxes.
in a commercial you need to say "screen images simulated" to cover your legal ass.
I suggest Drupal for huge projects but in many case Drupal is so advanced for creating a medium-sized project. For the beginning it may be hard but when you created your CMS or a CMS framework (I would prefer calling CMS framework for such a system), you will found it's incredibly flexible and easy (in many cases) to setup a new project as Drupal or any other CMS.
I'd like to respond to some things a number of people have commented on HN here...

1) Wordpress might seem like just a blogging engine, but this is not how the WP developers see it -- on the Wordpress .org About page, it's described as "[Wordpress] has evolved to be used as full content management system" (sic). So they expect people to use it as a CMS.
2) Plone, unless you have a lot of technical chops, is a nightmare to use and maintain. My SO had one set up for her non-profit less than a year ago and they've had so many problems with memory, weird WYSIWIG bugs/behavior (stripping all sorts of tags, including nobr, for one), confusing configuration, costly and/or poor quality plugins, frequent need to modify source, etc that they're looking to move off it ASAP. So I wouldn't recommend it if you're setting up an instance for non-technical folk.
why have a tester work on a beta version? It's free software labelled Beta , it doesn't load on IE x , this happens. If it was released as stable, then there's a reason. You wouldn't be deploying the beta version to your clients anyway. But here is the point. You are running a for profit business, use a tool that fits the needs of your clients and the skill set of your staff. Have it built. WordPress doesn't have the features you need, things you want are not on the roadmap, and it's buggy. Why didn't you switch away earlier ?
I guess it depends on what you do and how you do it. Some business dependent software do not exist across platform.

For example, we deploy to Linux servers so we want our dev environments to closely match that, kinda hard to do with Windows. We use Adobe products to visualize our applications, kinda hard to do on Linux. We need to test in IE, need virtualization software if we're running OS X.

All OSes are not equal. Browsers may be, but I don't develop in a browser.
constantly using "their" when reading anything that remotely resembles a story gets old pretty fast.
"Someday we'll have xmonad as a Firefox extension."

(bursts into tears, runs out of room)
Who is the distributor? Is it Google? Is it HTC/Samsung/Motorola? The FSF has had issues with defining this before, like with the iOS VLC application, where some of the developers felt that having a link to the source in the app as well as on the website was enough, but other devs and the FSF initially felt that the Apple app store had to distribute the source, since they were the "distributor". They dropped this later on and went after Apple's terms.

So absent a clear definition, why is this Google's fault more than the manufacturers? More importantly, why isn't the FSF or GNU going after all the manufacturers for GPL violations? These are pretty cut and dry license violations, so why isn't anyone actually doing anything about it?
I agree with the article, and would back up the commenter suggesting OP look at cdist (http://www.nico.schottelius.org/software/cdist/). The simplicity looks promising.

There is one thing that will completely fix configuration management in Linux, and that is: all software projects should bundle pre-cooked CM recipes. The problem of course is which CM tool should they support?

Until one tool ends up winning over all (and it does look like Puppet is in the lead) we should probably just start a wiki with "community approved" examples for all popular server software in each CM tool's config language. With some prodding the 3rd party vendors might just pick them up and package them, making it a de-facto standard that ships with the distro. Well, one can dream anyway.
Don't be too hard on TYPO3, it has its virtues. For instance, it has the most elegant handling of multilingual content I've ever found in fifteen years of working with CMSes. But for a small single-language site (i.e. 99% of the sites people develop) it's definitely overkill.
But what goes on really? [memory management and dangling pointers]
US Citizens Should Try The Copyright Monopoly As Unconstitutional
> Also, I have yet to meet the Windows user who can rationally reason about their choice of using it and not another OS.

Really?

I can tab between games and my editor.
This is a message that more of us could stand to hear.
مباراة الاهلى والانتاج الحربى اليوم 11/1/2012
That's different from opting out, which would mean not paying for the NHS at all. This is buying additional coverage.

You can't opt out of the NHS in the UK, except by not paying taxes, which usually results in a spell in prison.
I would simply state "That is considered confidential information at my current employer. I would consider an offer in the ballpark of /x/."

2 Things - It shows that you take confidentiality seriously even when looking at leaving your current company (and its likely the policy there anyway). Secondly, it is truthful.
Foxconn builds a lot more than iPhones. Take a look at all their customers: http://en.wikipedia.org/wiki/Foxconn#Major_customers If you own computer equipment or a smart phone, there's a pretty good chance that something that you own was made at Foxconn.

And that's partly why it wouldn't matter. People generally connect Foxconn with Apple stuff, and will then boycott by buying other computing products that are also manufactured by Foxconn.
The comments about the difficulty of sharing modules rings true. I think the puppet developers made a mistake by not having a way to separate data from the "code" as a core, recommended feature early on. Full-heartedly embracing extlookup a couple years ago might have helped, but that didn't happen either (see http://groups.google.com/group/puppet-users/browse_thread/th... for their reasoning).
For some reason none of that sounds particularly unreasonable to me - once you decide to opt out of the NHS then you have to accept that you are paying for all of the costs. Note that this view might be because I'm in the UK and have private health insurance - although everything major (accidents, childbirth) I've relied on the NHS.

While mixing and matching might seem sensible I suspect that the resulting administrative complexities might introduce the same kind of inefficiencies that the US system appears to suffer from.
They have been saying this for months, at least as far back as last summer.
That is a bit misleading. Not every recursive function is tail-recursive, and making it tail-recursive will often throw away the benefits of recursion. Take, for example, a simple factorial implementation in OCaml (ignore for the sake of this example that int will overflow for reasonably large values of x, I don't want to complicate the example by using big_int):

let rec fact x =
if x <= 1 then 1
else x * fact (x-1);;

This implementation is not tail-recursive, so tail-call optimization will not help. Now, you can make the function tail-recursive by rewriting it to use a helper function with an accumulator:

let fact x =
let rec f x a =
if x <= 1 then a
else f (x-1) * (x-a)
in
f x 1;;

This implementation is tail-recursive; however, this happens at the loss of readability. Furthermore, any such accumulator-based implementation can trivially be converted into a (non-recursive) loop, which is in fact exactly what the compiler will do.

Now, if you look at the Hamster library code that inspired the post, you will see the following in hamster/list.rb:

def map(&block)
return self unless block_given?
Stream.new do
next self if empty?
Sequence.new(yield(head), tail.map(&block))
end
end

That's not tail-recursive, either, and the author would experience the self-same problems if ruby actually optimized tail calls. He'd have to rewrite his implementation for that.

(If you look at OCaml's List.map, you will notice that it is not tail-recursive, either, and you will have to chain List.rev_map and List.rev to get a tail-recursive map.)

In short: tail-call optimization is no silver bullet that protects against stack overflow. It's not uncommon for programmers to assume that code is tail-recursive when it, in fact, isn't (which is one reason why Scala, for example, has the @tailrec annotation to let the programmer verify that a function is actually tail-recursive).

That does not mean that tail-call optimization is useless even in a procedural or object-oriented language. For example, if you have a language with formal function/procedure/method arguments that cannot be assigned to (that includes not only functional languages, but also Eiffel or Scala, and affects also the implicit self/this argument in any object-oriented language), then the only way to let the garbage collector free objects referenced by these arguments is to drop references to them via a tail call.
While I disagree with the author, he acknowledges that WP is good for blogging. He's arguing that it's not suitable as a general purpose CMS (for his clients).
I agree that it doesn't make things easier but makes it easier to remember.

One thing that the callback style enables is that you can have more than just success and failure and/or you can provide more information about why it failed.

I don't particularly like this callback style though. I do like the multi return value style in languages like Go* where, by convention, an error is returned as the last parameter. You still have to check whether the error itself was nil, but at least you get a reason why; It is also part of the method signature, meaning you can ignore it, but you have to explicitly ignore it.

While that doesn't make it referentially transparent, it does force the programmer to acknowledge the possibility of error, even if they don't deal with it. It also keeps the flow more sequential and often times easier to read than the callback style.

*C#, Ruby and others also have some form of multiple-return values, but it's rare to see them used in this way.
I hope they realize the irony of this, although going by how completely ignorant they've been about anything that doesn't promote their own agenda, they probably don't.
>and the use of even a single fission device could pose an existential threat to the West.

Hardly. There was some "let's drop a bomb and see what the effect roughly is" emulator online that I used about a year ago -- and I was shocked how tiny the effect of neuclear weapons was. A Chinese 15 Kiloton weapon dropped in the middle of the city I was in wouldn't even result in elevated
radiation were I lived unless the wind was in the wrong direction.

The tiny suitcase bombs they are shitting themselves that the terroists might get their hands on?

Yeah, those do so little damage that you would be better of with a large van conventional explosives.
Debugging the JVM
> Modern development approaches, in many cases, significantly reduce the cost and risk of software development.

I'm sure some do. For others, a lot of people claim they do, but there is precious little empirical evidence to support the claim. Many practices associated with Agile are poster children for that second group, including TDD.
WordPress wasn't ever in the building. Or at least it wasn't in the building the author wanted it to be.

Lots of folks have tried to force Wordpress to be more than a blog platform. I've always seen these efforts in the same light as when guys dumps tons of money and time squeezing horsepower of a Honda Civic: end of the day, it's still a Civic that get its lunch eaten by a stock 'Vette.

Look, you just don't get power and flexibility in the same package as intuitive and simple. The best you can do is cut one to boost another. Take iOS. Intuitive as hell. Flexible as a piece of rebar.

Drupal's been mentioned in other comments. It's crazy powerful and very flexible... it's the Corvette to the hopped up Civic that is Wordpress. It's also hard to learn, the interface can be...challenging and the plumbing is complex.

Edit: Downvote me if you must but at least communicate why...did you build a 11 second Civic or something? ;)
I have used Cygwin for quite some time. Not great, but not bad either.
> whether you want to stick with FOSS type licenses

You (and Ubuntu) are conflating software licensing with patent licensing; they are very different things. Patent licensing is only an issue in certain countries with insane laws; software licensing is a problem regardless of jurisdiction.
Your point is valid, of course - developing specialized software requires a specialized platform. But what I wanted to say is that even developing a web app (and that's what I do these days) I sometimes need to use Wireshark.

Sure, there was that guy that used an iPad, a wireless keyboard and a Linode as his PC so it's viable. But I think that's an exceptional case and it's more common to need quite a lot of supporting tools to develop things.

And of course, you know, our designer can work with just a notebook (as in: a paper notebook) :)
I no longer accept and build projects using WordPress. These days, I stick with FuelPHP. Good authentication and blog package to start with.
It's not that it's terribly hard, it's that it's annoyingly different from most other places in the system. Just one more thing to remember.

Oh and it's a bit error prone too - I can't remember whether this is different on newer versions, but it at least used to be too easy to accidentally close your window if you misclicked while doing a copy or paste. On a laggy remote connection this can be particularly annoying.
Hustler with founder ambitions? Join us! [updated]
Our sales team is a boot camp for founding a startup. We take hustlers and teach them everything they need to be dangerous. You will have the best tools, team, and training at your disposal to grow your sales skills and learn everything short of coding in how to make a startup successful.

We are building a massive sales army up, and doubling in size every month.

Stop looking for a technical co-founder, or some lame "Account Executive" position, and join our team of hustlers.

We are funded, growing, and dangerous.

Send an email to startuphustlers@gmail.com and tell us why you are a hustler.

EDIT: email address fixed. Sorry about that!
I disagree. If people are using unhelpful metaphors it's worth pulling them up on. As I say, it's not specifically you (and I perpetuated the metaphor too so am similarly guilty).

In terms of obscuring your point, what I'm saying is that I don't understand your point precisely because you've compared prison to two things neither of which, to me at least, are remotely like prison.

I do agree with you that I don't think the way in which he describes certain models of carrier as like prison is accurate, but I don't understand how it really applies to the iPhone. Apple places a small number of restrictions on one very specific element of your life (your smart phone). Prison is a very poor metaphor for that unless there's something I'm missing.

Personally I've been an iPhone user for three years now and I've never felt remotely "imprisoned" (and in the pro-Google camp I've been a G-mail user for 10 years and have never felt like a "product" and believe that metaphor to be equally faulty).

We could go looking for better metaphors obviously or we could frame the debate in terms of straight forward facts that smart, technically aware people can understand and avoid either the lack of clarity or the incendiary comments.