skysight-inc/HackerNews huggingface dataset:
I'm with you on the Ruby fans seem like Apple fans.

Based on your comment about web programming, you are talking about Ruby on Rails which is the web framework for the Ruby language.

I've just gone back to learning RoR after trying it a few years ago. I'm normally a PHP programmer, but have been playing with some RoR with MongoDB stuff.

My take on it coming from a regular LAMP is that RoR has lots of gems (packages) that are easy to install and use.

The code generators get you up and running really quickly, though I'm not actually a fan of most generators.

RoR applications have a rather specific structure. I think it is deeper than MVC, as there are naming conventions for functions, variables/collections, etc.

The structure is good because it is fairly easy to back-trace through somebody else's code to see what they've done.

What I'm finding really challenging is that there are so many small details that are hidden from the code.

For instance, in RoR, 'render' is like an include file, but you don't actually have to type the name of the file or where it exists. Based on the naming schemes and structure of RoR it gets the variable/collection and file name because everything has the same name.

What I haven't found is a place where it explains what RoR is doing, so you know that when you have an error, this is why.

I think we are just supposed to blindly follow the 'it just works' mantra, which has never really worked for me with Apple, and I'm barely holding it together with RoR.

As far as documentation goes, it is tough to beat PHP. The documentation is really good, and the language/framework doesn't do the work for you, so you build a page, put something into the db, get it out, put it on this page, call it from that page, etc. You build your own structure so you know where things are and how things work.

The tutorials I've seen keep going through the very same basic stuff of getting RoR to build crud operations for you, or how to change a view. But getting into the meat of RoR is proving to be much more difficult.
As someone who learned C++ few years back let me tell you that professors in Universities actively discourage use of Boost.

There is C++0x or which contains hashset and hashtable but even use of it is discouraged.

I think C++ standardization effort has become a joke and I doubt when we will see them being used in real life.

Even funny are people who claim to be waiting for emergence of D.(my professor said that he was waiting for andrecue or some one to finish his D book)
I'm taking the wonderlic tmw, so the speed up will be worth it.

I have always wanted to learn shortcuts to doing basic maths; this is the first time I'm getting around to do it.
I would ditch the thumbnails and increase the image size. Maybe for at least the first 5 on the top of the page.
I should have stopped reading at "my eyes puked from the motion sickness.."

Seriously? What a horrible way to tear apart someone else's hard work.

An actual case study of Stack Overflow would be that something designed by developers could be a huge objective success.

Also, his proposed improvement "hasn’t included all the functional elements yet" Anyone can make almost any interactive design appear to be superficially better as a static screenshot by taking things away. As far as making something that actually works and does the right thing, that takes more than Photoshop and arrogance.

It's sad to see this guy getting attention.
Happy to help with the guide, if need be...
Nexus One is sold out in Google's store -- forever
I wasn't aware of it... HN should give a hint of resubmitted content as Reddit does :/
Yes. Although The Trial can also be read as a piece on his engagement. But Kafka was quite familiar with bureaucracy -- he worked for one.
Thanks Sean. I am working the founder to test the site for a conference coming up in August, and hope this provides an easy way for me to promote, organize and collect information for their hackathon portion. On the developer/participant side - the site will also provide a showcase for products and projects built during hackathons - a sort of deviantart.com for developers. There is a better run down of the "plan" at http://www.hackathonia.com/About
Designing Style Guidelines For Brands And Websites
Apple Demonstrates Antenna Problems in Nokia, BlackBerry, HTC and Samsung
I'm not sure where the (80%) comes from, but investors will only lose value if the total value of Facebook declines.

If it turns out that Ceglia and Zuckerberg each owned 50% of Facebook in 2003, their ownership would each be diluted down in subsequent rounds of financing (from the "Investors").

So if the equity capitalization before this lawsuit is assumed to be "Investors" - 40% and Zuckerberg - 60% (an example), the new capitalization if Ceglia wins would be Investors 40%, Zuckerberg 30% and Ceglia 30%.

No impact on "Investors" ownership.
Another Facebook Scam Spreads Virally
The big question here I still have is: text? Perl 6 gives us little languages, but they are still shackled by ASCII-based notation. Solve that problem, and you've got something big.

A text editor is just one way of viewing the bytes that represent source code. Theoretically, any language supports other ways of viewing and editing code. It's just the tools that are missing.
Not sure why this guy has such a livid response to those columns. I think he say's that kind of talk is "ugly" several times. Ok... well, I don't really see a problem with stereotyping programmers to add a little spice to your column. It wouldn't be the first time, and I got a laugh in at those two columns at several points.
Chris Sacca on Helping Founders Take Money Off The Table
You say:

>I think we need to get real. Programming isn't something most people are interested in, it's not glamorous, it's factory work. Lets not delude ourselves that we're at the cutting edge of new discovery.

And:

>Building companies, developing products, increasing revenue are all far more interesting to everyone.

But really, when was the last revolutionary product made? The last revolutionary way to increase revenue that was sustainable in the long run?

I've seen many revolutions in software, distributed version control for instance ie git, LLVM, gaming and visualization software, and hybrid synchronization systems such as unison. In OSS the 'As Seen on TV' type products generally don't see the light of day, they get buried and forgotten, it's only incorporate environments I've seen crappy interfaces using decrepit languages from the 90's, because those programmers have stopped, or never even started caring about programming. If they did they might take the initiative to fix up the program themselves.

As for the factory worker analogy, I think it's dead wrong. It's like saying anyone who ever designed a product is a factory worker. Programmers have to do a lot of design decisions, interop systems etc. Yeah if you're programming in Java, or making corporate program in programing lanaguage du jour you're probably not really innovating, like any part of life programming is self driven, for every Google there's a struggling business and for every git, there's a Java webapp for accessing an Access database.

Also if you think AI is going to obsoltete us in 50 years you're kinda pushing reality there. MS tried to make programming easy and accessible, look at every <LANGUAGE> in 24 hours book. They download MSVS and run through a bunch of wizards, that's about as much control and innovation as you get with a Java webapp that accesses an access database. Not only that but who's going to program all the new features into the the automation AI? When Intel releases a new architecture or something happens there's always gonna be a need for programmers to translate and incorporate data.

Essentially if what you said was true SIGGRAPH wouldn't exist. There's plenty of innovation going on in the software field, and plenty of talent, like every field there's a bunch of idiots, and plenty of talent. If anything you made a great social commentary, people care only about money, the easiest way to get money is working in middle management. Your argument is based on the corporate programmer stereotype.
In addition, while Reddit facilitates anonymous discussion, Hacker News has a substantial transparency in its population. My real name and address, for example, are trivial to find out using the information in my HN profile -- and that's kind of the point. You'll find that this practice is far more common on HN than on Reddit.

I hadn't noticed this, but it's very true. As a side-effect of the "would you say this in person?" question, I treat HN users as I would people I would have no hesitation of meeting in person. On reddit, although someone could put in the effort to find/meet me in person, I assume no one will.
When it comes down to it, patent trolls are only a symptom of the real problem - the fact that far too many obvious patents are granted. If the only patents granted were ones that companies would be unlikely to come up with of their own accord when they faced a given problem, patent trolls would be substantially less common, and more justifiable.
A Teacher's Education Philosophy
I thought that Stack Overflow had a bounty system?
Singling out Linux as the most successful open source project is not literally true in my opinion. It is successful, other projects are successful too - how do you want to determine "most successful"?
Avoiding premature optimization involves looking at the whole situation, instead of the optimization.

* Working at a strategic level is often nebulous and requires some definition.

* Little changes are simple, concrete, and instantly rewarding (if only I could do X, this would work better).
Probably not.

I like Mark Handley's work, but the premise of this project seems off. It was true in 1999 that the easiest attacks were passive, but it is no longer true in 2010. Today, you are far more likely to have traffic intercepted --- through a hijacked DNS server, on a public wireless network, or via an application-layer flaw --- than you are to have traffic "sniffed". "Authentication" in the simplest sense, of "am I talking to who the address bar says I'm talking to" is the key problem that Internet crypto addresses.

Lightweight negotation and session reuse are good concepts, but SSL is trending in that direction anyways (soon you may be able to negotiate SSL once and then use the key material to send lots of out of band messages). Meanwhile, SSL is thoroughly tested (look at what Nate Lawson just did to OpenID for an example of why that matters) and well understood. The organizational/logistical challenge of how we tear the bloodsucking CA leeches off our applications boils down to "how can we get one more root cert added to IE and Firefox", which is a far, far easier problem to solve than forklifting out everyone's TCP stacks.

Apropos nothing: using a short TCP option to signal that the SYN+ACK contains a larger data payload is clever, although I wonder if they realize that SYN and SYN+ACK can already contain data, and that every TCP stack in the world will deliver that data to the application as soon as the 3WH is finished.
SeatGeek Closes $1 Million Series A Round, Partners With Nielsen
The problem is that ARM is a licensable architecture, so there are lots of minor variations in sub-architectures.

The companies maintaining these have no motivation to consider the problem of maintaining /all/ of these, they're happy to basically copy/paste some other code until their CPU work.

Linus is saying that that's not going to work anymore, that they're going to have to come up with a way to consolidate their codebases.
Am I the only one who liked the immutable Java class the best?
This is fantastic. I had no idea this was part of HTML5. Do I have to log in to Flickr to try the new layout?
Memoizing higher-order functions
I don't think they're exclusive.

One corollary of "we will always seek new venues for content discovery" might be "there will always be opportunity in [interesting] new venues for content discovery." Flipboard, Pulse, etc. represent a fresh new category of venues.
Kill the keylogger
People still don't understand privacy on Facebook
Opportunities and Challenges for Technology Solutions Vendors
While the article makes lots of interesting points, I'm uncomfortable about how the case for the very existence of a "Value Apex" is accomplished through some brief hand-waiving and vague truisms. The idea that the talented people get less and less useful, while a very real possibility, I think warrants some harder research before we declare it inevitable fact.
Harvest scheduled something in NYC a couple of weeks ago called Walkabout. It was a walking tour of a bunch of NY startups - I'd start with them (http://www.walkaboutnyc.com). Other than that, there are definitely a lot of great companies that are open to visitors so long as you email them!

As an aside, I'm reading your Beginning Ruby book to get into Ruby and it's great. Thanks Peter!
Valuable to others, or only you?
Because the average person isn't going to be fit to be a PM. The amount of responsibility that a PM entails is more than what would be required as CEO of most smaller companies, yet they would make a lot more.
Interesting article, but I largely disagree with it. A big part of my problem is that he doesn't talk about the differences between new users, and regular users.

Most of the users who simply read content, are looking for an answer to a particular question. Chances are, they're coming from a Google search for a specific problem, and SO has the answer. Their actions and expectations are geared towards finding the answer as quickly as possible. I can't say for sure, but I think most users don't have much problem seeing the question or scrolling down to see the first answer. They also probably realize it is the "best" answers by the score next to it.

On the other hand, you have the regular users. Most regular users don't see the ads which bombard the newcomers, which already removes a lot of the ugliness from the screenshot he posted. Also, as a regular user myself, a lot of the other stuff he claims is "useless" is very important: the info bar at the top, the rep scores, the tags, all of it.

I'm not saying Stack Overflow is perfect. But to understand its design, you first have to understand the different users who come to it, and analyze whether the "off the street" user manages to find their answers or not, and whether the site is good for the "community users" (obviously it is, considering its success).

By the way, if anyone is interest, Jeff himself comment on the blog.
What about the fact that everything needs to be a class? This works on Javascript or Smalltalk, which are dynamic languages, but not in a static language.

There is no way to have a function callback mechanism without introducing new classes. The very culture of using design patterns for everything is just a reflection on how things are solved in Java.
Using you advisors as consultants who are paid with options sounds more like what he is suggesting. Might be a good idea for some businesses.
Rails.

Prior to Ruby on Rails, most people's exposure to web dev was PHP. Go from doing PHP by hand for the simplest CRUD based pages, to the magic of Rails that magically does half the work for the same page. That magic gained the language not just converts, but fans on the level of Apple fans.

There are other choices these days, but thats where the fandom originates from.
Just a modest proposal, as it were. How would HN feel about qualified software engineers (and, indeed, other fields) having to do a service period in the patent office of, say, 3-6 months as the cost of getting their chartership?
This is just insanely impressive.
The source of this, afaik, is The Mythical Man-Month. You should read it if you haven't. It does get quoted and mis-quoted quite a lot.
The average man in fashion is not "camp"...
A New Million Dollar Prize?
I think you might be more interested in textbooks. In the programming world, the 'start a project' or build a software, it's more like a math theorem, not an entire branch of math. You find the solution to a problem, which basically in math you do by applying 1 or more theorems/solutions that have been found before.

Unfortunately I don't know of any programming textbooks (for programming languages, similar to math books), but CS texts: Structure and Interpretation of Computer Programs (as mifrai suggested); better to follow courses http://ocw.mit.edu/courses/electrical-engineering-and-comput...
It's probably because they think his [as personally told] story could/will happen to them. A hacker in a dorm room turns out to ignite the planet and become a [paper] billionaire nearly overnight. It's a great story and would be inspiring if true, but like many great stories it's full of shit. He apparently screwed over nearly everyone he came in contact with to get on top.
That's really interesting, I appreciate the link!

To clarify though, my ideas are geared towards actually generating the tunes to begin with, not analyzing them afterward.

It's too bad this thing isn't open-source and is stuck behind a paywall, seems like there's a lot to be learned from it.
Ah, I missed that, my bad.
Zuckerberg Makes It Official: Facebook Hits 500 Million Members
From a different perspective. You didn't get rejected, they chose somebody else. You were likely 1 of hundreds who didn't get chosen.

If you're sure it was due to your dislike of PHP, then I'd say it wasn't the right job for you anyway, and you wouldn't have been happy there.

At the same time, I'm surprised that you think PHP is a language in demand as it seems all the interesting stuff is happening in Ruby, Scala, Python, etc. these days.

The job market is tough. But you can't get down because you didn't get that one job (or the next, or the next).

if your country is only hiring php programmers, then you've got a great opportunity to market something better, and sell yourself in that regard.

If you know that going into interviews, you're going to be asked about PHP and everything is going to focus on PHP, take that opportunity to open up about what the business who is hiring might be missing by focusing on just PHP. Let them know that yes, you can program in PHP, along with your language of choice, and let them know why you prefer the other language, and maybe they should look into it as well. A business should want a more rounded and knowledgeable programmer, and talking about both languages might help you stand out from the pack.
I really like reading design critics like this one. It's detailed and most points are well supported. I stopped reading though when the OP offered his "better" version.

It's not that his version is bad but redesigns by outsiders necessarily introduce their own new flaws. They don't know what constraints drive a specific design, so there's little to learn from a mockup that fixes, say a white space issue, but did not consider if usability or conversion rate could be impacted.
+1.That clause seems pretty heavy in my experience. If the NDA is a really needed, at least have your own lawyer write it in a benign form. Every NDA I've run across has been pretty much the same, and much more friendly.
Programming languages for beginners
That's not true for life and not true just because you have a TS. It is true for certain compartmentalized programs and their ilk, but a GENSER TS does not bear this responsibility. It merely acknowledges that you've had a NAC and an SSBI performed - nothing more.
"People like compile time checks" cannot be the reason interpreted, non-interactive languages like PHP have taken off while compiled, interactive Lisps have not.

"People like syntax" has not been tested. I think it's safe to say that people like syntax that's like syntax they've already learned.

We don't really know why Lisp hasn't taken hold, and we don't know that it won't take hold at some point in the future.
I am going to plug one of my favourite editors, Code Browser: http://code-browser.sf.net/ - it is a folding editor that I have been using for outlining (I have my task list and stuff in it and it is just always open), but it is meant for programming and does it well.
It is nice to structure a file into classes and functions etc. and be able to concentrate on one at a time.
Not sure how many other languages can do that! :P

>>> def sum(x):
... return lambda y: x + y
...
>>> sum(4)(5)
9

user=> (defn sum [x] #(+ % x))
#'user/sum
user=> ((sum 4) 5)
9
When you have written lots of code, you remember some of the things you had to optimize in the past, and when you find yourself in a similar situation you're tempted to just do it now so that you don't have to do it later.

The fact that sometimes you're right just reinforces this behavior, but when you get it wrong it tends to blow up in your face.
Here you go. Copy paste into your url bar. Only tested in Chrome (edit: apparently also works in safari 5)

javascript:var dashes = ""; var num = 20; while(--num) dashes += "-"; setInterval(function() { window.history.pushState("", "", dashes.slice(0, num % 20) + "foo" + dashes.slice(num % 20)); num++;}, 500)
Disagree. Writing programs that are correct with multiple threads is harder than writing single-threaded program (remember that if you're motivated enough to post about it, you're in the top 0.1% of programmers).

But that aside, writing programs that are truly faster and, more importantly, that scale reasonably with the number of threads, compute resources, other resources, &c is far harder. Have you profiled your code? Have you had the experience of untangling serializations around locks? Have you had the experience of having to custom-code your own sync primitives because locking overhead started to kill you? Are you graphing performance over number of threads under stress? I've worked on projects like that, watched the curves flatten (and sometimes dip), and I don't think scalable multicore code is anywhere nearly as simple as "man pthread, and remember to lock and unlock in the right order".

I'm not trying to say you don't know what you're talking about. I'm saying that you're underestimating the amount of work that goes into making fast multithreaded designs work; you may do all this stuff without even thinking about it, but you have to remember that this is work that you don't have to do at all in "normal" nonscalable designs.
Most distros patches their kernels, though.
Yes, they're paying for the infrastructure. That fact is not lost on me.

But think about the real costs. Assuming that they have a nice scalable multi-tenant design, a ghost town is not going to have a lot of content or users, which means only a small hit on their database. Yes, tons of ghost towns add up to significant costs, but that can be easily fixed with some simple rules around inactivity over a set period of time.

Wayne Gretzky famously said "You miss 100% of the shots you never take." StackExchange is taking a 'rifle' approach. More power to them. My own personal opinion is that a 'shotgun' approach could result in more successful sites than the one they're taking. Just my 2 cents.
The Rupee Gets Its Symbol
> It is entirely appropriate to use technical language here.

Of course. I'm not telling anyone what to do. What I meant was, that to understand the legal issues, the explanations in these terms are irrelevant and obfuscate the thought processes that lead to the legal understanding of the situation. I understand perfectly what spinning is. But 'algorithmic spinning' is irrelevant in this context. It's not about the level or nature of mechanical changes. One shouldn't think about legal issues in quantitative ways. It's orthogonal to the system.

> As we move forward I'll wager that the lawyers will be the ones needing to do a greater percentage of the adjusting if they are to remain relevant.

Thanks for making my point for me. It's this technocratically warped world view that lies at the basis of the bigger part of misunderstandings about the legal field and how it relates to technology. The technical details are seldom relevant in most technology legal issues. or at least in a very different way than technologically oriented people look at it.