skysight-inc/HackerNews huggingface dataset:
So much this

100 lines of python can be turned into a hundred men-hours / 6-digit budget project in Java
Not true. For example, a compiler can be a pure function. It accepts input that is the source code, and outputs the machine code. There's no side effect there. I admit it needs minor scaffolding to always read all of stdin first, and write all to stdout at the end, but the programme, as written by the programmer, is a pure function.

This is one of several ways that Haskell worked before there was an IO monad [1], all allowing pure functional useful programmes.

[1] S. Peyton Jones. Tackling the awkward squad: monadic input/output, concurrency, exceptions, and foreign-language calls in haskell. Technical report, Microsoft Research, Cambridge, 2010.
But I'd bet those blue-collar folks would not mind being written about like "startups" get written about. A little hype could do them a lot of good.

What makes a company "newsworthy" is a good PR firm!
It's a wild guess but I am pretty sure that this "trend" always makes a come-back at the end of holidays or vacations.
That is about the craziest idea for handling mail I've heard in a while. I'm not sure if I like it or hate it -- it certainly is a bit sad that (presumably) handling of mail is so slow you need to give the client 2 minutes to sort things out.

What happens if you're writing a reply at 16:32? Do you start over the next day?
I love the juxtaposition of this post with the one that currently follows it on the front page (at least for me):
http://news.ycombinator.com/item?id=4453030
So I guess you spend your afternoons reading blue chip 10-k's? Didn't think so.
If one day somebody else does inherit the codebase, are there any tools out there that are designed to help people in that situation? Like something that de-spaghettifies everything?
I thought Braintree was also looking at launching in Australia during Q3? Was hoping to find that in this release as well, as the only real alternative (pin.net.au) is still in private beta.
Cue the "web2py is non-pythonic" crowd. FWIW, I liked web2py when I first saw it, then I stopped liking it and moved on to Django, Flask, Rails, Sinatra.

There is nothing to be gained from bashing somebody's hard work which isn't harming you in any way, and is probably benefiting a lot of people. Don't like it? Don't use it. Want to know how it compares to Django/Rails? Do a google search. It has been done sufficient number of times. The reddit thread with Flask's and Django's creator is the most popular I believe.
I prefer to mix in a small amount (well, as much as I can before it starts to feel forced) if FP into my imperative programs.
I've been trying hard to apply the "don't check e-mail/FB/Twitter/HN/etc until 11am" rule.

In my expericence, the later you open that gigantic can of worms, the better off you are. By far.
They aren't comparable and just show that the speaker hasn't used the alternative in over a decade. RPM is a packaging format like dpkg. Apt does dependency resolution like YUM/urpmi/zypper.

I do a lot of packaging for both Fedora and Debian and here are my thoughts:

* Building Debian packages is a horrible experience. Writing an RPM spec file is much nicer and easier.

* Apt is much much faster than yum.

* Using a true (NP-complete!) SAT-solver (ie. zypper) is lightyears ahead of anything Debian or Fedora are currently doing, although there's a project underway in Fedora to fork yum to use a SAT-solver.
Even though Redis is moving from being a Memcached competitor to being more of a Cassandra competitor and MySQL is used by many of the world's largest websites (often as a glorified key-value store) they are odd choices.

Would anyone really use Redis for 'big data' ?
Great input, Thanks a lot! Everything in the backlog already ;-)
It has been said on HN that Xerox got some pre-IPO Apple stock options so it's all good.

Yeah right. By all accounts Steve Jobs was a weasel.

Of course, all those accounts could be wrong.
Not sure if you can actually be "100%" productive in that full work day -- but it certainly is more effective to do your work efficiently, and then go home and have proper time off, doing the same amount of work in less time. Six hour work days doesn't seem so bad if you're average worker is only working five hours out of an eight hour day anyway.
• How do you launch and acquire users?
• What is your USP that makes me tell my friends?
• Are there any upsides of sharing the app?
That about article should be linked from the top nav on the site. Or at least in a footer. It would go a long way to explaining the origins and intentions of the site.
Learn how to More Traffic From Facebook 
The old very idea of "Build it and they will come." stopped working when the internet had a large number new web-sites every single day. It not any more works where just posting a different website is so visible by anyone, if you can not complete several type of marketing on it.
You mean unpossible?
the reason is cost and availability. The iphone is way too expensive in china as you must by the phone outright with no contract as most people use pre paid plans. There are some ways to get the phone discounted but still require you to leave deposit with phone company for the full value of the phone which is over $600.

The other reason is this does not account for age groups. There are so many cheap android phones on the chinese market used by older people who barely even know how to check their email with it, they just buy it because it is similarly priced to non smart phones. For the 18-30 crowd i think iphones must be over 50% market share for all phones not just smart phones
In the long run, having so called "Jokers" i.e. people that cause havoc in a given system is a net positive (think murders, con artist, psychopaths). Law still tries to stop them.

OTOH in the very long run, people from India are likely to emigrate and provide cheap labor.
The interesting thing comes at the bottom; "In such a huge market, even 7.5% market share, he noted, is worth billions."

So. 7.5% market share is worth billions in revenue to Apple, they make healthy profit on the iPhone. They know it's desirable. The simple question is, why would Apple try and price point compete and sacrifice the one thing that makes them stand out from the whole host of other, cheaper devices?

There was an interesting report from a while back about consumer purchasing in relation to knock off products in China, and it's an aspirational aspect of consumer purchasing. There's a whole host of people who get the closest thing to the 'the' item they want, be it a fake or a very similar item, and then they'll bank until the can afford it. This is why whilst there's a huge amount of goods counterfeiting it in China they also have one of the largest amounts of luxury goods growth for any economy. Apple is in a safe position by doing what they're doing, it's not like Ferrari or Louis Vuitton have suddenly panicked and tried dropping their prices for an increase in market share.

Note, there's a massive divide between the poor, the reasonable and the wealthy and I'm not an economist so I'm not even going to get into that quagmire.
TurnKey Linux 12.0 released with 100+ apps
Depends on whether step 2 is a complete rewrite (in a different language) or further hacking to "make it right".

My process tends to be:

1. Make it work - Knock up a prototype (lots of assumptions made and noted, limited error checking, etc)

2. Make it right - By starting from scratch and use what was learned in making the prototype

3. Make it fast(er) - Having a prototype, and trying it at scale, should have already given me an idea of what algorithms/structures to use/avoid in Stage #2 but, obviously, a further optimisation stage will almost always be beneficial.

Ideally (if time allows) the prototype is written in a completely different language to the desired target. This is the most important point.

Most of the production code I write is C and I tend to do my prototypes in Perl. The helps me for several reasons:

a) ADTs (lists, hashes/dictionaries, etc) are just easier/quicker in Perl/python/ruby than in C (I do have my own C library that I reuse for ADTs so it's not as if it's a great chore writing them each time, but ADT instantiation is just easier in Perl/python/ruby than C).

b) It's also easier to play around with different algorithms if you can switch between ADTs more easily.

c) I can use the prototype stage to continue to learn new languages (it used to just be Perl but has extended to include languages like Python and ruby). This list will keep on growing.

d) It prevents me (or the business) stopping at Stage #1 and using the prototype code for production. (This could be even worse if the prototype was written in C.)

e) A prototype, being quicker to knock up, means faster to getting it in-front of someone else to look at and give feedback.

f) It prevents me just copy-and-pasting chunks of the prototype code as production code so I, hopefully, don't carry over any of the assumptions I'd made in creating the prototype.

g) "Knock up a prototype" doesn't mean no design/testing/etc. I usually end up with design notes and some automated black box testing that can be reused in the later stages.
Ask HN: What is your opinion on freelance websites?
Does anyone have any particularly good/bad experiences to share about using freelance programming sites?
How would you rate them? Is it worth to get job from them?

I've heard bad stories stories about people not getting paid, projects never getting finished, etc.. how representative are they?

I'm looking for freelance job that's why I needed to ask this. If anyone is looking for same feel free to visit my page.
Watch any photoshop expert and they all use hot keys as well so I don't think gIMP is any faster in that area.

But otherwise I think it really depends on the features you use. I use Photoshop's layer effects all the time. Anytime I want to point something out on a map or a screenshot I drop it in photoshop, draw an arrow, add some text. Then set a layer effect that makes the arrow and text a bright color with a black outline and a drop shadow. If I need to add more arrows or more text they get automatically styled the same.

AFAIK that's not simple in gIMP or even available.

Similarly I use photoshop's non-destructive layer adjustments all the time. I don't know how I'd get by without them.

My understanding is gIMP will be adding those some day. 3.0 maybe?
Haha, oh wow.

Crank-tastic.
None of them do auto-sharding and master-master replication.
This is the domain dynamo/bigtable-like systems (elasticsearch, riak, cassandra, hbase, voldemort)
In my view, all performance optimisations need to be driven by hard data and a profiler is just one source of this kind of data.
> one benefit to less +F is that you can cancel the following and read normally in less.

Yeah, including doing backwards and forward searches, that is very handy
I haven't seen those usecases yet.

Either you want to scale over multiple systems or you don't. Either you have more data than RAM or you don't.
About Video Production with Video Marketing Services
Nigel Phillips Video Marketing Services is based in Germany, but we’re a global company. Our professional team reaches around the world, helping businesses like yours navigate the ever-changing landscape of advertising and marketing in today’s Digital Revolution.
If you want to capitalize on the media opportunities now available on the Internet, TV, and Mobile media, we have the forward thinking solutions you need. We create top quality videos that drive new traffic – new customers – to your website.
Ars has an interesting article about Facebook's release engineering process [1] with a discussion on HN.

My impression is that the different scale and technology mix at FB would make it difficult for them to deploy as frequently as github.

[1] http://arstechnica.com/business/2012/04/exclusive-a-behind-t...
[2] http://news.ycombinator.com/item?id=3803026
Well a real problem is the fact that it takes no effort to by cynical. It doesn't take intelligence or facts to be cynical, only doubt under the cover of pragmatism.
This is like publishing the comparative performances of a Nissan Altima, a Ford F-150, a Honda Odyssey, a Smart Fortwo, a Kawasaki Ninja, and a Gillig Advantage.

Sure, it's possible to determine which one has the best land speed, range, and fuel economy, but you're also sure as heck not going to use a Gillig Advantage to do an F-150's job or vice versa.
I can't wait for someone to release a virus hitting these 3D printers, hacking them to print and detonate a fragmentation grenade whenever his owner tries to print a gun.

3D printing era will be fun, that's for sure.
Beware of Orange: Active and Controversial
Orange is a secondary color on the color wheel, meaning it is made by combining two primary colors. But what do those colors mean?
How NBA and Ticketmaster can make their website successful?
The first and the only thing that they need to put their focus on is the consumer friendliness, as that’s the only thing that would help NBA and Ticketmaster to sweep the market of the NBA events...
Although GoCardless is great, it's not the same as a Stripe. Direct debits don't offer immediate transfer of funds[0] (they take a few days) which limits its suitability for a lot of e-commerce applications. As someone else mentioned, the lack of refunds is also an issue.

That said, for service invoicing, subscriptions, etc it's fantastic.

[0] https://gocardless.com/direct_debit
SEX is free! :-)
http://fex.rus.uni-stuttgart.de/SEX.html
A profiler will tell you if sorting actually using a meaningful amount time in your application.

If you go ahead and blindly change your bubble sorts for quick sorts then at best you may be wasting time doing something that has no effect on performance, and at worst you may be making your program slower.

Quicksort is slower than bubble sort for nearly sorted input after all.
Yes, photoshop is totally the wrong tool for most people. Photoshop is great for professionals and keen amateurs. It's overkill for most other users.

And yet photoshop is heavily pirated software.

By pushing other softwares, such as gimp, I'm not in anyway saying that photoshop is bad, or that gimp is a photoshop clone, or that the people who need to use photoshop should switch to a free open source alternative. I'm just trying to get people to move to a more suitable tool, and to stop using pirated software.
With these sorts of academic benchmarks I frequently find myself questioning what exactly got tested. The researchers obviously know what they're doing, but that doesn't make them experts on all of the technologies under test. Their description of their HBase configuration in particular leaves me skeptical of how closely it reflects a well-tuned production setup. I think publishing the actual configuration files they used for each technology would be a big help.
Not sure about the "heated argument". Off-topic, yes. But heated ?

Is it really possible to deny the statistical links established, the correlations, existing between (# of weapons in given country) and (# of violent death), or better (# of death by gunfire), or better (# of shootings) ?

Hmmm. Well. You're probably right. If someone can deny evolution, he can deny this just as well. So let's not troll here. :)
This is even the case after the introduction of the IO monad. Monads allow referentially transparent IO.

My purely functional programs actually do things! Amazing that my ivory tower allows me to say "Hello World".
You could also add 'reading HN' to e-mail / twitter / facebook. HN can be dubble as addictive due to the good comments. You now want to read the articles and the comments.
Parsing with Haskell and Attoparsec
Receiving an email = a small but significant affirmation of one's self worth.

That's the problem.
It would be interesting to know how much of the "leisure" time is spent watching television. My guess is almost all.
The Sun Publishes Prince Harry Photos - | The Blend.ie
I recently switched over to mac and was saddened to discover there wasn't any viable open source alternative to GIMP a la Paint.NET. GIMP is functional, but barely usable. Paint.NET on the other hand is great, on top of all the things you mention, it also has quite a good UI with some interesting features.
Pussy Riot Sentences Condemned
So true. I've seen people who have way more than the fabled "10,000 hours" of software development experience them that continue to push out truly woeful code.
When I say the headline, I immediately thought it as a "the onion" equivalent of HN. The startup scene needs some parody.
"But Linux on desktop is dead guys!!!" -- An OSX User
TV: 1hr 35min

There is a second graphic with a breakdown of "leisure" and "cooking, cleaning, etc"
So, you haven't only just joined a day ago then?
Right now ? 90% because I am learning a new programming language.
Google+ Launches Tools for Businesses
Finding More Traffic From Facebook
When employing social media to put together free site visitors to your website, you wish to sufficient to advance making associations and not only spamming your link as well as quick consequence you can actually get facebook likes.
From the article:

Supported countries are now: the U.S., the U.K., Austria, Belgium, Bulgaria, Canada, Cyprus, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Poland, Portugal, Romania, Slovakia, Spain, Sweden, Ireland, and Italy.

(As a Swiss citizen, I'm feeling non-european again...)
A bit confused why downmodded for responding to a request for clarification with a clarification. If you don't like the original post, isn't downmodding that enough for you?
The Arch Build System is utterly wonderful. All you do is define a PKGBUILD and it will handle downloading sources, compiling them, and creating a package. It's so simple that once you've done it a couple times it's basically fuck-all effort to create them for whatever you want.

So say I wanted to have dmenu on my systems with a custom colour scheme. I make the colour scheme changes as a patch and then create a package on the AUR like so: https://aur.archlinux.org/packages/dm/dmenu-dogs/PKGBUILD

Then all I need to do is run pacaur -y dmenu-dogs (pacaur is an AUR helper, which automates the process of downloading the PKGBUILD + any patches/local sources, running makepkg, and installing it) on my other boxes and it sorts everything out for me.

Pacman itself is also very lightweight and fast, and has a very simple and clearly separated API. Want to know what package owns a file? pacman -Qo /usr/lib/blah. Want to check a package has all it's files? pacman -Qk mypackage. Anything removing is -R, anything querying is -Q, anything installing (syncing) is -S.

The last thing I love about Arch is the wiki. It is fucking AMAZING. There are well explained and thought out posts detailing how to install and configure a vast, vast range of software. I even refer to it when I'm not using Arch.
To fix the blue youtube videos:
Create a file /etc/adobe/mms.cfg and put the following 2 lines in it:

EnableLinuxHWVideoDecode=1

OverrideGPUValidation=true

Some people will probably tell you all kind of reasons why this is bad, but it works.
Show HN: GitStars - A better way to organize your GitHub starred repositories
Just released a simple web tool, GitStars (http://www.gitstars.com) to help make the act of starring repositories on GitHub infinitely more useful.

When you log into GitStars, your starred GitHub repositories are fetched and automatically tagged. You can freely edit the tags and help make the system's auto tagging better for everyone.

In this early version, we were focused on helping you re-discover the repositories that you may have starred and lost track of. You can browse or search the repositories by the tags that were automatically generated.

I would love to hear your comment on whether you find GitStars useful.
It does give you information on where the most time is being spent, but it doesn't tell you what to implement. Without adequate algorithm knowledge you might try a micro optimisation when it really needs a completely different algorithm.

With superficial knowledge you might stick to certain rules without really understanding them. That bubble sort example you gave is a perfect example.
Ugh... don't blame "design patterns". They are just tools, and any good developer utilizes them nearly constantly. Are we really going to suggest that you can write good imperative code that doesn't involve delegation, strategies, or factories at some level?

The issue is with a culture that thrives on complicating relatively simple concepts by abusing those tools, not with the tools themselves.

Design patterns don't make for bad code, bad coders do.
New Blogpost Ben & Jerry's Visit and Follow :)
Why not release earlier?
How WebGL shader effects work in Construct 2
Google Plus For Business
Just released a simple web tool, GitStars (http://www.gitstars.com) to help make the act of starring repositories on GitHub infinitely more useful.

When you log into GitStars, your starred GitHub repositories are fetched and automatically tagged. You can freely edit the tags and help make the system's auto tagging better for everyone.

In this early version, we were focused on helping you re-discover the repositories that you may have starred and lost track of. You can browse or search the repositories by the tags that were automatically generated.

I would love to hear your comment on whether you find GitStars useful.
Pretty code is readable and readable code is pretty. If you can render your code as a nice pdf and distribute it as a paper, it's about as readable as it will ever be. Even if you can't, remember that aesthetics aren't random--there is a reason why pretty code is pretty.

I'll restate this: "Every programmer should know more than a little bit about typography". I was amazed at how much learning design fundamentals improved me as a programmer. I've learned to communicate through code much more effectively than I ever had before. Thinking about grouping, spacing, and the like leads not only to more readable ("pretty") code but usually more efficient code as well.
Please note that this should be a high quality web site.

Don't "argue" by finding a random web page that claims something.

I Googled market share smart phones 2012 quarter and got 16.9% for Apple in multiple sources, including Washington Post. In literally a minute.

(Apple's market share in pads is much larger than this, so it would only increase the statistic.)

http://www.bgr.com/2012/08/08/q2-2012-smartphone-market-shar...

http://www.boston.com/business/technology/2012/08/29/worldwi...

http://www.washingtonpost.com/business/technology/worldwide-...

Edit: I did learn something -- about AllThingsD. Which was the original source for your claim.
Your PC Just Crashed? Don’t Blame Microsoft
One of the best features of Stripe was actually "invented" by Braintree - https://www.braintreepayments.com/braintrust/client-side-enc...
https://www.braintreepayments.com/docs/javascript

What's great about this is it allows you to host all your payment pages and post them back to your server for processing/validation, without having to worry about PCI compliance apart from the most basic level as you never touch the credit card details.
Maybe not, but Google will:)
One significant difference between linux and windows/mac is the planning around features and the outreach. I work for a large organisation. The number of times a linux group has come round to our office to discuss what features are up-and-coming, or should be developed? None. The number of times Microsoft staff have done the same? Some.

Now I don't really expect linux volunteers to do this, but equally I don't really expect any linux distro to provide a coherent business desktop because they are not talking to their "customers" in the same way that their competition is. And the business desktop is a large market, if a bit unsexy.
A case of over-management
Scaling out database is nothing at all like spinning up stateless app servers.
Should'ev tested MongoDB too!
Amazon Appstore comes to Android devices in Europe