skysight-inc/HackerNews huggingface dataset:
The distinction is one of knowledge. We have evidence that that the environment as it exists now, is a relatively stable regime. The climate has changed throughout history, but not, obviously, to the extent of rendering us extinct.

If, however, we act to bring the climate out of the regime for which we have this evidence (for example, by raising the CO2 level to its highest value for 800,000 years), then with our present rudimentary understanding of the climate, we cannot predict what will happen with any great confidence. And, there is evidence that climatic changes can cause tremendous damage. So, the burden of proof should be on those who say that these changes are safe.
PHP's greatest strength is that it doesn't require OO. Seriously, for most simple web application tasks (and even some complicated ones) OO adds more confusion than it removes, and I say this as someone who certainly sees the value in OO for complex apps.

Most web apps are ultimately more like shell scripts or console applications than desktop/mobile applications. It's no coincidence that most of the former are written in C or C-like scripting languages, and most of the latter are written in OO languages running on .NET or Java. Your basic operations are "print some stuff", "read from a file or database" and various sorting, slicing and text-processing tasks inbetween, all of which are done well by PHP, Perl, C and so forth. ActiveRecord, TableDataGateway etc. are great patterns for data access, but sometimes mysql_query("SELECT foo FROM bar WHERE x = y") is just so much simpler that it becomes the better option.

The lack of OO makes PHP's documentation much more browseable, and makes code more readable in certain situations. If I look at your code and I see a function I don't know, I just google it. If I see a method invocation on an object, I need to figure out the type of the object (not easy in a dynamic language) and google the combination of class and method name, which often fails to return a result (has anyone ever managed to find anything useful in the Zend Framework docs?). PHP isn't the only data point for this argument - I think it's probably why Drupal handily beats ZF, Symfony etc. in terms of popularity, despite the superior OO architecture of the latter. You can google pretty much any API function and get an accurate result, which you just can't do with ZF (which lacks documentation at the method level, and what documentation that exists is buried in some Doxygen-based site which is made impervious to search by the use of frames). I'm also reminded of Linus's argument against OO in the Linux kernel - when you're all about the patch files, you need clear function names to understand what's going on without massive amounts of context. Drupal's rate of contributions probably exceeds that of other frameworks for similar reasons.

Of course, this bias against OO is also what makes PHP a bad choice for certain things, and this is why plenty of devs hate it. I honestly don't know if, in the final analysis, this makes PHP a good or bad choice. It probably depends too much on the problem you're trying to solve for there to be a simple answer.
Ask HN: So what is the best way to hire developers?
There is quite a lot of strong opinions on the current state of affairs regarding recruiting quality developers.

I'd love to hear some suggestions from the peeps here on what they consider to be a good hiring experience they were in.

What made it stand out? What would you do if you were hiring today?
FWIW, I really appreciated the post, Joel. I'm actually in the process of buying a lot of this stuff for myself due to accepting a new telecommuting job. I need to furnish my home office, and as understanding as my wife is, it's hard to explain to her why this costs what it does. I probably won't spend what you do at FogCreek, but it at least relieved me of the feeling that I was misspending our money. (My tentative stack for those that care: MacBook Air, Thunderbolt Display, GeekDesk, and ? for chair)
bug: requiring sign-in to continue and then putting up a popup "test"
When frameworks are the popular alternative to PHP (RoR,Django,etc), it is valid.

Are we also not allowed to talk about RoR when it comes to a discussion about PHP alternatives?
"Where" can substitute for phrases of the form "at PLACE" and "to PLACE" as well as bare placenames, so, "Where are we going? We're going to the market," is perfectly standard.

"Where are you at?" is considered nonstandard, but it (and the form "Where you at?" are standard in AAVE.
Sure, that is possible if you want to spend the time wrapping every function in your code with a try/catch block. Most people don't, and so we provide automatic code instrumentation. You can't just wrap your js file in a single try/catch.
Find the jQuery Bug #1: Chick or the Egg
I worked on a large PHP codebase for a few years, and that sounds very familiar. We never did get it untangled enough to test before I left.

Do you have a static analyzer or something like it that enforces the no-circular-dependencies rule, or is it just a procedural thing?
> user comments

Ha-ha-ha. You're kidding, right?

Check strlen: http://www.php.net/manual/en/function.strlen.php

Comments:

1. Comment about how PHP converts types. "Conclusion: The values are converted to string before check the lenght."

2. Comment from a novice user who posted a solution to the problem of subtracting the number of spaces in string from its length.

3. Comment about someone who thought that there was a bug in strlen, but it actually was a documented difference in behavior between two minor versions of PHP.

4. Comment about counting characters in UTF-8 encoded string by decoding it to some other one-byte encoding.

5. Comment about counting characters in UTF-8. Actually, the whole new function.

6. Reminder that \r\n are actually two bytes! "If I had thought of this starting out, I would have saved myself several hours of trouble trying to get php to cut a message to the same length that my auxiliary javascript validation imposed on it."

7. Benchmarks for different UTF-8 strlen implementations.

8. Complaint about another comment, which suggested the function to count characters in UTF-8 strings that didn't work. And the "proper" solution using regular expressions.

...
My thought process was that the online discussion group is the target or the victim, not the venue, of the loosing. In which case "on", or "at" for some other direct objects (like "arrows") would be the appropriate preposition. As in, I loose my temper (the hounds) on the unfortunate souls of Hacker News.
Thanks for the response! I'm sure having you as an investor would be an asset, it was just having it as a requirement that concerned me.
It seemed a bit dishonest seeing benchmarks that showed how MongoDB beats CouchDB in write-performance tests when there was no acknowledgement of write requests comming back to the client.

Not saying that MongoDB wouldn't be faster with full commits turn on, it is just that their design decision to pick that as the default and calling their product a 'database' seemed very strange at best, and dishonest at worst.
> detrimental effects our environmental behavior has not only on nature, but on ourselves too.

Is the goal environmentalism to preserve the earth or to preserve humanity? The earth will survive perfectly well without humans, so I believe the (generally unacknowledged) goal of mainstream environmentalism to help humanity. That said, there are environmental fundamentalists who believe (with almost religious fervor) humans are "evil".
Can you please provide me a resource to learn how to fully separate the code from the markup? I learned web development on ColdFusion then switched to PHP. I certainly understand separation of content from design (HTML to CSS) but I honestly have no idea how to do web development without mixing markup (HTML) with the actual programming.

I've done a little C and Java web stuff where my code printed HTML output - ugly. CFML and PHP mingle HTML and code together - also ugly, but better. I can't fathom any way NOT to mix them but would love to have some resources to see what I'm missing. I know there needs to be something better. Thanks.
"(now illegal) part of the 'Deutschlandlied' originally called 'Deutschland ueber alles'"

Technically, it is not illegal. It's not part of the official anthem, however.
... and neither are crustaceans. They're mollusks, and they're delicious when properly cooked (especially mussels, if you ever visit the north of France, Belgium or the Netherlands, you'll miss something if you don't try them).

I find oysters disappointing though, especially for their high price. They're just textureless, wet salty things.

French people also eat snails. With truckloads of garlic, to mask the dirt taste, they're quite nice to eat too.
Uh huh.

http://www.fns.usda.gov/oane/MENU/Published/CNP/FILES/NHANES...

Data from the National School Lunch Program suggests the same thing. Protein deficiency is not statistically a challenge faced by Americans living below the poverty line. You can disagree with Heritage's politics (I certainly do), but it's naive to suggest that they're simply fabricating their underlying data.
Good to see, I had missed that T-Mobile made the UMA move on Android. Does it do the seamless handoffs or do have to make a call either over the cellular network or WiFi?
Http://www.kmrc.in/news.php
What do you really 'know'?
I like PHP because it's got a C-like syntax, which is a personal preference of mine. I also like it because it exposes the nuts-and-bolts of web development without any fuss, unlike, say, ASP.NET (though last I touched that was 3 years ago so doubtless things have changed since), and that it has a basic templating system built in, and that it's easy to install and deploy to.

It definitely is deeply flawed for many reasons, which is why I'm still looking for my "white unicorn" language: one with a C-like syntax, no fancy templating or ORM magic (just let me print() html), foss, easy to deploy, and with an established community and searchable "recipes" online.

Lots of languages fit some of those criteria, but I haven't found one that fits them all.
I figured they would need to move onto something new after Twitter started including pictures in tweets.
It does when one of the big criticisms of PHP is that it rolls everything into core that'd normally be third-party.
Wow, interesting, thanks! Hopefully at least the icons are different... If not - it's worth complaining about that somewhere so the MS folks can fix that - since it's a fairly obvious hole to exploit (and not too difficult to fix).

Any chances you might find some time to make some screenshots and blogpost them ?
This is a content free comment. Please stop sucking the oxygen out of the thread. Nutrition information specific to the US cross-tabbed by income is a pain in the ass to find, but it is out there. If you want to refute a study, you'll actually have to refute it, not simply cast aspersions on its authors.
Have a play around with a framework such as Symfony [1]. That's the most natural way of learning a better style of PHP web development.

[1] http://www.symfony-project.org/
Use an MVC framework.

I prefer Kohana + Mustache (KOStache is the module). Mustache is a logic-less templating language available in many languages. Kohana is my PHP MVC framework for choice.
I dunno if it's the mobile redirect or not but I can't view the page on my phone. Either way why oh why do people redirect without my input to m.site.com??? Maybe try to make your content readable no matter what the format. Secondly, make sure redirects don't break your page. Just sayin
> e.g. http://docs.python.org/library/stdtypes.html#string-methods - PHP beats this by lightyears with a single page with examples and comments per function

1. Please explain why you need more explanation of these very basic functions

2. PHP's doc comments are unadulterated garbage

3. When things are worth documenting, they are: http://docs.python.org/py3k/library/collections.html

4. if you truly think string methods are insufficiently documented, it is very easy to contribute to the documentation.
How about NearlyFreeSpeech and other low cost solutions? I keep a forum for old friends, as an example. This is not worth 20 dollars a month for me. Hosting my own blog is not worth 20 dollars a month for me. (It's barely worth the two dollars a month I spend on it.)

I have a friend with a webcomic and an art gallery page. She doesn't need ruby on rails and a 20 dollar a month host. PHP is a nice solution for her.

That's why PHP is still around.
Probably related to the MSM stuff that caused HN to get really slow yesterday. See http://news.ycombinator.com/item?id=2865985
Most of the looters only pulled scarves over their faces when they got close to the scene of the crime, if you look at the images they police have released a lot of them are from other places in the city and from on public transport where they've identified groups based upon the clothes they were wearing before they covered their faces.

Examples:
http://www.flickr.com/photos/metropolitanpolice
Thanks for the feedback! It's interesting you associate the toolbar approach with Meebo, rather than Facebook.
The problem is not as simple as just temperature change. There is a huge worldwide investment based around rainfall following existing patterns. Exchanging 100+million acres of grassland for 100+ million acres of dessert might seem ok if just as much tundra becomes grassland, however rebuilding existing cities in new locations quickly become trillion dollar projects. IMO, preventing climate change is less about protecting the ecosystem as it is protecting existing investments in roads, bridges, dams, houses and factory’s.

PS: Toss in even stronger and more frequent extreme weather and dumping CO2 is unlikely to end up as a good thing. At some point in the near future we are simply going to run out of oil so doing nothing does not mean we get to keep up our current approaches for all that long anyway.
Gene therapy succeeds in destroying leukemia tumor
The data for 2001 and 2004 is out there and does not appear to show a sudden swing away from protein consumption for low-income Americans.
The free preview on Amazon is HORRIBLE. The title page and the dedication page? UGH.

I could never recommend this to anyone without actually seeing it, and I can't imagine how far it'll get without recommendations.

Also, both un-DRMd formats are separate? Most publishers sell you the content and then let you pick the format... Multiple times, if you want, in case you change readers.
Am I reading the docs correctly...put your secret key in the client side script block?

https://www.proxino.com/docs/getting_started
I like MJD's quote the best: "Like C without the speed, like Perl without the toolbox"
Best Practices for using WebGL Typed Arrays
but why do you need LABjs to defer it, rather than simply `document.createElement('script')` pattern? (or `<script defer>`/`<script async>` if you're targeting latest browsers)
Fukushima Game Jam asks game devs to help Japan recover
Or confusing "mainstream" with "free webhosting by your internet provider"
http://learnyouahaskell.com/

^^ one of the most interesting (and entertaining) experiences I've had learning a programming language
Not for many years, no. I'd forgotten about it.

Still surprised I got voted down for that, since C and Java are still correct.

In fact, it's what I hated about Java web development the most... You had to compile, package, and deploy every time you made a tiny change. It was a nightmare.
It absolutely is NOT SIMPLE.

I agree that mob mentality can reach "criticality" and cause crazy stuff to happen over one night. The thing that makes this different from a football riot (or the WTO riots), however, is that the activity is sustained and spreading. I feel it demonstrates an intense hate on the part of the rioters.

This kind of violence indicates a core problem which cannot be addressed in the long term by police swinging billy clubs and shooting water cannons. I expect that this will get ugly at some point in the future even if the police manage to quell the immediate problem.
Seems to be a lot of immaturity in the Github thread, as interesting as the implications are.
We need to because we are likely to unbalance the natural cycle and cause change that is more severe and more rapid than ever before. This is difficult to deal with, and dangerous to our survival.
I wasn't thinking of the large multinational brands so much as the smaller labels that are more similar to the food trade.
Looks like HTML5 is gaining momentum
Apple suing Motorola over the xoom
I was in Vegas this past week, but not for Defcon and I was on the Strip, not at the Rio, and still had flaky service. However, I've always had flaky service when on the strip. I am able to make calls, but it would delay before the phone started ringing, texts messages would hang longer than usual, and 3G data transfers were painfully slow. But again, nothing out of the ordinary for that part of town.
up-to-date Chrome, Mac Lion - worked without causing any disturbance.
I that it mainly shows you map and satellite imagery and directions. Sure someone has at some point typed in that data (or photographed it), but it does not really sound like a fitting description.
Secret is a misnomer; it is actually a public key.
Don't forget being able to do this from within the interpreter:

>>> print abs.__doc__
abs(number) -> number

Return the absolute value of the argument.
>>> print xrange.__doc__

xrange([start,] stop[, step]) -> xrange object

Like range(), but instead of returning a list, returns an object that
generates the numbers in the range on demand. For looping, this is
slightly faster than range() and more memory efficient.
ge.tt does it all for me. Loved it when I saw it, don't see what else I need. I have no huge files on my mobile devices that Dropbox can't handle.
I wouldn't use it for a write-heavy logging system ( and I am a big fan of it).

Well actually it depends on what type of logging. If you plan on pouring megabytes of data/sec second into it continuously you might want to find something else. I don't think CouchDB would be a good candidate for that. It might be if you plan on archiving your post-processed logged data for a long term storage but you have to be smart about its format.

Yeah 'logging' can mean a lot of things that it is hard to give a better advice without more information.

Other DBs/tools you might want to look at:

* rrdtool http://oss.oetiker.ch/rrdtool/

* MongoDB http://www.mongodb.org/

* Redis http://redis.io/

* Custom format + plain text files
This is one of those things that I don't need right now, but when I do want it I won't be able to find it or remember what it's called.
Ha! Seems like HN has already pronounced the current economy a doozy.
Wordnik's swagger api framework
I don't want to attack you or anything, just want to point out that no living thing wants to die.
There is evidence that even plants have some form of sensation [1]

[1] http://www.nytimes.com/2011/03/15/science/15food.html?_r=2
> PHP is academic

Uh... could you explain how you arrived to this assertion? Because as far as I can see, PHP definitely is not academic. The bloody thing started as a hodge-podge collection of Perl scripts, and to this day it still does not have anything even remotely close to a formal grammar. A language in which `foo()[1];` is a syntax error even though `$a = foo(); $a[1];` is valid code most definitely is not academic.
> There were also a number of underqualified candidates and people with strong careers but zero commercial or practical experience with Python.

This kind of ignorance is why you should never use a "Tech Recruiter" to hire your technical candidates --- even the ones savvy enough to post on Hacker News seem to value programming-language knowledge you can pick up in two weeks over "strong careers".
> I try to reply to all applications personally within 24 hours.

With that, you've addressed my biggest issue with the ordinary hiring process: Complete Lack of Feedback. When I was fresh (or nearly) out of college in 2003, the only responses I received were from the CMU Robotics Lab. And while they were "we're not interested" replies, they at least had a real signature on them. Nothing else I applied for produced even as much as an automated response - print, e-mail, phone, nothing. (My options and interests at the time were admitedly a bit too narrow, and geography worked harshly against me.)

Worse yet is when you interview somewhere and then never hear back. Thankfully that only happened once to me.

Otherwise it really depends on the group and the culture. It doesn't bother me when Megacorps use standardized tests or puzzles (large or popular groups need some sort of advanced filter), but I prefer the hiring process at smaller companies to be more personal.
Keep up the good work, but remember that your code is not really 95% complete. Your code may be 95% ready to launch. After launch, you (or the users) will discover unexpected bugs and users will want new/different features. I suggest launch as soon as possible and start getting feedback.
Discontent with Lion’s “My Way or the Highway” Approach
Not to offend anyone, but a person who makes some money off of an add-on to another's service should take the money and run once the platform squeezes them out, not spend money on a product hoping to compete against the platform's core. Seriously, take the money and run.
For ASP.NET, indeed, WebForms can be a bit violent since it's essentially an abstraction that tries, with mixed sucess, to make you forget you're writing for the Web.

ASP.NET MVC, which came out 2 years ago, is much closer to RoR and other similar frameworks, and is a better abstraction in my opinion.
Melt - PHP Framework
Or another idea that doesn't require frameworks:

http://toys.lerdorf.com/archives/38-The-no-framework-PHP-MVC...
True, or from your OS's shell:

> pydoc unittest
Help on module unittest:

NAME
unittest

FILE
/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/unittest.py

MODULE DOCS
http://docs.python.org/library/unittest

DESCRIPTION
Python unit testing framework, based on Erich Gamma's JUnit and Kent Beck's
Smalltalk testing framework.

This module contains the core framework classes that form the basis of
specific test cases and suites (TestCase, TestSuite etc.), and also a
text-based utility class for running the tests and reporting the results
(TextTestRunner).

[snip]
At what point does Apple get sued for copying the design of the CrunchPad, http://en.wikipedia.org/wiki/Crunchpad
or HP for the slate http://www.engadget.com/2010/01/06/the-hp-slate/

I'm sure there were others before these two that had very similar looks and basic functionality to the ipad. (Not to say that either are truly iPad competitors, but to the average person, without looking at logos or turning the devices on, could they tell which was which?)
Vudu Comes to iPad Via Browser-Based Streaming
That is like saying Cocoa is a popular alternative to C++, but you prefer C++ because it allows you to write your own UI event loop.

I guess it is true if you really stretch your imagination, but does it mean anything?
I remember having a holy shit moment when I tried Envolve. This is definitely one of those service you want to see succeed.
I wonder how the AirTouch desks compare to the GeekDesk. I'm really interested in trying out the standing/sitting thing, and those two seem to be the really big ones. Does anyone have any experience with either of them?
Ethanol is now using about 40% of the US corn crop.