skysight-inc/HackerNews huggingface dataset:
> Higher quality code. Java is easier to refactor than Ruby, which makes up for the lower language power.

Let me rephrase:

"It's easier in Java to rename identifiers than ruby, because my IDE does it for me."

Now that's fine, but I don't see how do you conclude:

Easier to rename identifiers => Higher quality code. How on earth?

Easier to rename identifiers => Makes up for lower language power. What language deficiencies does renaming identifiers make up for?

Other than renaming(which can be done for ruby, though it requires manual effort), there is no refactoring which Java does better than Ruby.

> Actual concurrency!

Am curious. Where in basic web development does concurrency help? As far as servers go, evented servers(thin, mongrel) will perform as good as, if not better, than a threaded server. And evented servers can handle much more concurrent requests than threaded servers.

As far as concurrency at language level goes, very rarely have I needed to spawn a thread(I go for gevent) in the controller. Controller's job is to dispatch ASAP - everything else goes in the queue where you use EventMachine or gevent or whatever if you need concurrent processing.

> Faster server spinup and incremental changes. Rails with 20 gems in development mode is super sluggish.

Rails is more sluggish compared to "stop the world. I am compiling" Eclipse?

> Better library ecosystem!
> Better dependency management system (maven > rubygems)

As long as we are just throwing out claims without backing them, ruby library and bundler/gem are 1000x better than mvn.

> Better debuggers
> Better profilers

Not everyone is a fan of graphical everything. Going by this line of reasoning, Windows has better support for git because gui?

> Easier deployment and ops environment(java -jar myjar, vs bundle install, ruby/passenger/unicorns)

`java -jar myjar` starts your app server, your web server, minifies your css, js, migrates the db....? You can very well bundle the dependencies along with your app for rails, but I don't see why I would do it for a webapp. Also, your jar works only when you don't have java calling into native code. If you don't have native extensions, ruby is platform independent as well(i.e can be bundled).

> Reasonable in-process metrics

No ideas. What's that?
Reddit used to be worthwhile and interesting until it became Digg v2. It's now just flooded with worthless content like rage comics to appeal to the lowest common denominator of internet "culture".

I wouldn't take their critique too seriously although I did get a chuckle out of a redditor blocking Hacker News for being too predictable.
You might find that the blocking style of Go networking code is far less mind bending than using twisted.
Doesn't Bing do this too?
Holy hell I'm reading this instead of working. What has my life come to.
has anyone tried using msgpack with backbone, or any other js framework?
No. Government meddling in a free economy is doomed to failure.

The only protections a free economy needs with the government is protection from cartels/monopolies and from market manipulators. Also said manipulators are likely foreign nations or atleast entities. Like when the US Steel industry was destroyed for us rebuilding Japan with better steel mills than our own country's and not introducing tariffs to make Japanese steel higher cost than American.
>>the rabid Java fans I've worked with [closed mindedness]

It is hard to argue against anecdotal evidence, but of the cases you mention -- java, Rails, Django -- imho, it is not exactly the Java people who seem to be the worst language/framework fanatics...

(That said, scripting languages eat static languages' lunch for development speed in most every case I've seen.)
A week or two ago I launched http://demoseen.com/webglenabler/ to enable WebGL on iOS devices. In theory, it's profitable -- it cost me nothing (outside of a few hours of dev, which I spent on myself anyway) and has made a whopping $26 or so -- but it'll never really go above that, and 'sales' have already stagnated. It was interesting to see the breakdown of downloads versus payment, and how much people paid. I also wonder how much I would've made if I put it up for, say, $1 only.

Edit: Also interesting that it got quite a bit of attention on HN and several hundred (maybe 400?) downloads and not a single sale (from what I could tell). That surprised me a bit; every sale has been driven by people coming from tweets that some big names in the jailbreaking scene retweeted.
Agreed. And splitting hairs here, but he's a Forbes contributor, not a writer there. Forbes is using its magazine's name to make its federated/outsourced blog system sound more credible. forbes.com has a lot of blogspam.
VBA is one of the best languages and environments for beginners ever. Why using Python instead would give the beginner anything, is beyond me.

Here's a shortlist:

- VBA is case-insensitive. If you don't know the significance of this, you've never taught beginners
- VBA hides event binding and namespaces for the user. Major obstacles removed
- VBA has full autocomplete
- VBA has F1 context-sensitive help
- VBA automatically formats and indents your code
- VBA is more verbose, and verbosity aids comprehension
- VBA finishes most of what you type, so you don't actually have to type much more than in Python
- VBA was designed for Excel, and vice versa. The object models fit
- There's tons of online resources for using VBA in Excel

And finally, VBA is dead-easy to learn, even for Microsoft-hating open source hackers. You just have to learn to get over yourself.
I agree the fact that it's very hotly debated in the US is part of what makes the US such an infamous example of this irrationality, but I would say the fact that the US is a scientifically advanced first world country definitely also contributes to why this is a phenomenon to so many people. Third world countries don't exactly have the best education system. The US (even though it gets a lot of slack) still has a comparably very good one, that should reach beyond "god put us on the earth with magic, the end".

And it does reach beyond that, the whole "teach the controversy" is an eccentricism of an otherwise science-based curriculum.
It is not used for 'Show HN my useless toy I built last weekend'. It is widely used in many start-ups.
I've created http://pazler.com, and it isn't making any profits :)
Built using Clojure, Postgresql, StringTemplate, hosted at Hetzner.
Learned quite a lot of things in the process..
Only project I have done this year (http://route.im), makes $xx/pm however doubt that it would ever cover the server costs, especially when more locations are added.

Although it was done more for me, than generating revenue, so that's not too bad.
Perhaps I was a bit ambiguous - they were free farmers, not professional soldiers. Even if they spent a good deal of time practicing, it was not their primary pursuit.
Looks a bit like http://pinterest.com/ ;)
Having actually used MsgPack, it's nice that's compact, but bad that it doesn't handle utf-8 properly. The reason data is smaller is because they're basically using less bits depending the value, eg if the numerical value is "5" then you can use 3 bits to represent the value whereas JSON will always use floats to represent integer values. If you know exactly what your data in the JSON might be, MsgPack is nice, otherwise it can be a pain in the butt if you're sending arbitrary data from users.

Here's a nice review of different "competitive" formats to JSON:
http://qconsf.com/dl/qcon-sanfran-2011/slides/SastryMalladi_...

According to their review, msgpack is good for small packets of data, bad for big ones. Binary JSON formats like MsgPack, are only good if you know your exact usage pattern, otherwise they bring along too many restrictions for it to be competitive. The best transport mechanism is still JSON.
Quickoffice acquired by Google
you won't be able to use msgpack with backbone, unless you're using backbone on the server side and you have something to decode the binary json blobs. msgpack is not a json replacement on the client side.
Fascinating list of actual dev projects by Google
Your Java IDE also lets you move methods and fields, extract interfaces from concrete classes, push members up or down, find all references to a member (reliably), view inheritance relationships, and much more. And it can do all of those safely, warning you if you'll shadow another name. I wish I had that stuff in a Ruby IDE.

I've used Eclipse for a long time, but not for JEE projects, and I don't see any "stop the world" behavior when it's compiling Java. Java compile jobs run at a low priority and rarely block another workspace job. If you want to save a file that's being compiled, Eclipse will let you and restart the build. Maybe you mean "stop the world I'm launching a JEE app?"
It's been incorporated into the front page. The only thing missing is that they want to use Razer Hydra as the controller.
Do we really need an entire library to encapsulate http://docs.python.org/library/hmac.html and string.rsplit?
The Text Triumvirate: Most Productive Programming Environment?
Although not really a tech company, I started http://www.thoughtthreads.org/ with a few university friends. We don't expect it to be profitable since it's a non-profit. :)
What's the difference between this and BSON, another binary based JSON implementation?
Any self respecting programmer must create a Pinterest clone these days.. lol
How I built and launched my first product PicMosMe
It irritates me that all this stuff is sent in the URL. Personally, I would put the query (and query-related) things in the URL, then use POST parameters for the stuff that the user needn't see.
Done two years ago:

Code.google.com/p/pyinex

O.83 alpha version includes the code.
>(...) I can't build things in C++ that target XP using 2012.

Maybe not for long, there is a work in progress: http://tedwvc.wordpress.com/2012/03/11/how-to-get-visual-c-2...
Online game 'League of Legends' Compromised | The Hacker News
"People were laughing at Bing's quality, but it is really on par with Google right now."

This is definitively not the case outside of the US. At least not here in the Scandinavian countries.
"whereas JSON will always use floats to represent integer values."

It might use floats to represent integers in memory, but when json is transferred over the wire it's a textual encoding so each digit will consume 8 bits.
You guys are conflating two things. Google starting charging for the Maps API last year. They don't currently run any ads on the Maps API. Apple does not use the Javascript Maps API for their current iOS maps.
Also see PyXLL http://pyxll.com, which has been around for a while and is more comprehensive.

It lets you write Excel addins in Python in a very straightforward way. Python functions can implement functions, menu items, macros. Supports asynchronous functions in the latest Excel.

See examples here: http://pyxll.com/introduction.html
Well that would break back and forward history navigation as browsers require you te explicitly resend POST parameters.
The JVM is very fast to start on my machines. For Java 7 on Linux x86_64:

t:~% time java HelloWorld
Hello from Java!
java HelloWorld 0.04s user 0.02s system 94% cpu 0.063 total

It's not as fast as C or Ruby, but who cares about .063 seconds spent once at start-up?

t:~% time ./hello
Hello from C!
./hello 0.00s user 0.00s system 0% cpu 0.002 total
t:~% time ruby hello.rb
Hello from Ruby!
ruby hello.rb 0.00s user 0.00s system 86% cpu 0.009 total
WWDC 2012 Rumor Round Up
For those interested, NIST (National Institue of Standards and Technoology) announced a competition to find candidates for the SHA-3 algorithm back in November 2007:

"NIST also plans to host a final SHA-3 Candidate Conference in the spring of 2012 to discuss the public feedback on these candidates, and select the SHA-3 winner later in 2012."
[http://csrc.nist.gov/groups/ST/hash/sha-3/Round3/index.html]

The final SHA-3 Candidate Conference was held March 22-23, so they should be picking the winner any day now.
Fur ball in WebGL
I'd suggest going to parks with playground equipment during the day monday to friday.

Also run it by stay at home mom/dad bloggers.

Buy some ads on Facebook with a targeted demo.

Talk to sellers of childrens' items on etsy.
That's true, but I guess one should then mention a 5 digit number would consume less space in memory than in textual format. MsgPack recognizes this and stores that 5 digit number using the minimum number of bits required, but this wouldn't be possible in the usual json string formats.
I created http://www.sherbondy.com, a website that gives family members free subdomains @sherbondy.com. Learned Clojure while making it. Wrote the entire thing in Clojure and ClojureScript. Tons of fun. I've even open-sourced it so that others can do the same for their families: https://github.com/sherbondy/sherbondy.com

Still need to fix/optimize a bunch of stuff and better document/test, but it was a nice break from studying for exams. And man am I loving Clojure.
We started to offer hosting for the Quassel IRC client. Not sure if this will make enough money this year to pay for the server we're running it on.

But at least it is a small start in transitioning to be some kind of product company instead of just doing consulting/contracting.

http://woboq.com/quassel.html
Locux - Low cost linux , we are trying to create open source very low cost linux platform ... it wont be profitable :) .

http://www.ngcoders.com/category/projects/locux-projects
using msgpack on the server with rails for example shouldnt be a problem. using this gem https://github.com/nzifnab/msgpack-rails , it seems like its not much different then to letting rails return xml, json or html.

I just thought that it might be possible to transform the received msgpack-data into json, so backbone can use it.
Ported this guy from Flash (http://wonderfl.net/c/7au5 ) to JavaScript. Microsoft is really missing out with WebGL support, but I know why people are saying that plugins are dying...
I built http://www.giftstrong.com/ that pulls the 100 top rated products from Amazon.

It was built over a weekend to experiment with the Yii PHP framework and because I wanted to see what the list looked like (wasn't disappointed, there's some surprising stuff on there - like how Braveheart on DVD is mankind's greatest accomplishment according to Amazon).

I was considering promoting it as a quick way to find gifts for people and use it for this purpose myself, but I have more profitable/enjoyable things to be doing.
''Am curious. Where in basic web development does concurrency help? As far as servers go, evented servers(thin, mongrel) will perform as good as, if not better, than a threaded server. And evented servers can handle much more concurrent requests than threaded servers.''

I don't know what is 'basic web development', but the argument 'why do we need concurrency if I rarely use it' doesn't work. I mean if you are a front-end developer/designer and mess with CSS/JS/HTML all day (without format CS education), you are probably wondering why concurrency even exists, but in real-world programming you can't go far without it.
What do you think of my most recent personal project?
Hello Cell is far simpler with IronSpread.

No instantiating a COM object, no opening a workbook, no selecting a worksheet, etc.
Its mostly mobile based, but you can see some of the things people are posting in the all posts section.
Override Backbone.Sync, and you should be sweet.
I started tchvlly: http://tchvlly.com is a community site for the tech valley region of new york.

I don't expect it will ever make any money!
I built http://stalltalk.info/. Its a toilet based social network. The amount of fun I have had with this far outweighs the profitability.
Users generally dislike java on the client side because the widgets don't integrate with their platform quite right. Java apps don't "feel right". A good web app is generally easier and cheaper to build and better than a bad GUI app.

I think the server is where Java shines. Good Java is almost as fast as good C (if it's not, you're using bloaty libraries or being cavalier with memory), and when something breaks you get a stack trace that a support team can make some sense of, and the build/dependency system is a lot nicer.

Sun sold Java as a plug-together ecosystems. They encouraged a mindset of putting together big teams of developers who live in padded IDEs and lean on bloaty frameworks, and not to think about resource usage. This won a mental traction with companies who wanted to believe that software work and developers should be a commodity, but has lead to a lot of bad systems. The results cause people to have some strange ideas about Java, like that it's slow.

The Java world places a lot of emphasis on inheritance, which may be an anti-feature. Before I became fluent with python I used to create thick abstract class hierarchies that aimed for perfection and reuse. In truth the result was a bloaty, brittle mess. Python's awful inheritance model forced me to learn how to think in ways other than inheritance.

Your example technology stack isn't a like-for-like criticism. You're criticising Java because Oracle takes up stack of memory and because you'd choose to use hybernate and spring. Why can't you use lighttpd, fastcgi, Java and mysql? The rails ORM isn't sophisticated, and it'd only be a couple of days' work to hack something up equivalent in Java. The result will be faster than rails and less memory intensive.

You missed the obvious advantage of rails over java for web development - a lot of web development involves heavy string processing, and the tools you get in ruby/python style languages for list processing and string manipulation are a luxury compared to what you get in Java! That was the main reason I moved away from Java for web work. With Java you try to build things to be configurable. You might need to do a different option later, and you know that it will be a laborious refactor. Whereas with scripting languages, the configuration language and the programming language are the same thing. So you just write the thing to do what you need it to do. And if you needs change a bit later, you throw away what you had without it feeling like the death of a child and then do the new thing and get on with your life.
I started http://blisscontrol.com and http://notificationcontrol.com which won't be profitable.
The last part of your comment is just language bias. symbols and hashes are fundamental to ruby. Why would I use string concatenation like my parent, when the language support string interpolation. It's as unclear to you as generics or annotations might be to someone who didn't know Java. Surely you see that?

I think you are being pedantic about characters vs code. But, for what it's worth, I disagree. You are having to create 2 classes, define a field, a constructor and use four framework specific annotation. I consider all of that code (made up of characters).

Both versions should be unit tested. The unit test might be more important in the Ruby version, but so too will it be easier to write.
One alleged evil of "excessive competition" here is that with open competition you might get a "race to the bottom" wherein cabs that aren't well maintained or that overcharge customers make the most money. The initial apparent advantage of the medallion system is that it gives the regulators quite a lot of control over what cab operators do and it's easy to imagine that power might be used to do good. Standardizing cab appearance and fares so customers aren't confused, standardizing cab behavior in various ways, that sort of thing.

The downside of this system is that - like nearly every other regulatory system - it is subject to "regulatory capture". Over the years, the established players in any regulated industry have a huge incentive to convince the regulators to rule in ways that keep out competitors. Eventually market competition no longer serves as a check on bad behavior at all - all that matters is keeping the regulators happy. And the regulators are in the pocket of industry, so customers get screwed.
I always wondered why people don't just use rainbow tables to get all the raw passwords, and then hash them with the better algorithm. The ones that are left, you just change upon login.
Richerd and I built http://sinkorship.com/ about a month ago: http://news.ycombinator.com/item?id=3899231. Got on the HN front page for 10+ hours, tons of attention, tweets, press etc.

Except nobody paid.
What problems does it have with UTF-8?
"Unless the Chinese can get the inflation rate up, expect a revolution."
I wrote whatlanguageis.com (still early beta with just 7 languages and a less than decent identifier) as a test of django abilities. It was fun!
And when those changes are made, I can change my version to:

response = {:content => "Hello, #{params[:name]}"}
respond_to do |wants|
wants.json { response.to_json }
wants.xml { response.to_xml }
end
That's what I mean. MsgPack is strictly a wire format for server side applications. You won't gain much using that as the wire format for browsers, especially if you use compression which would probably negate the benefits of MsgPack anyway. You'd also need something to read/write byte arrays inside the browser; I think firefox has some non-standard mechanisms for doing this, but I doubt there's cross browser compatibility here.