skysight-inc/HackerNews huggingface dataset:
In particular, PHP should be obsolete now that we have many more ways of integrating pieces of code rather than linking together subroutines in one BIG BALL OF MUD. It is no longer necessary for an application to be written in one language or run on one platform. Existing PHP applications could be evolved using another language platform by taking advantage of the HTTP request to integrate other language code. Or using a message queuing library like AMQP or ZeroMQ.

Python and Ruby will be with us for a long time, but PERL and PHP will die an ugly death. Facebook has already abandoned PHP in favor of a PHP subset that runs on a modern VM platform (HHVM). We can't all do that, but we can adopt tools that run on the JVM or take on a well-designed language like Python or Ruby or Javascript.

On the JVM we have things like Grails on Groovy, Clojure and Scala which have strong development teams and visions for the future.

PHP, like PERL, just doesn't fit in any more. We have moved beyond hacks and incorporated computer science into our development platforms in order to save time and money and fossil fuels.
> As I'm writing this, the article has 42 points and I'm left wondering why. I've long suspected that HN votes articles by keywords happening in the titles, without reading the articles.

I haven't read the article, but it would be great if whoever submits an article also had to enter one or more questions (with yes/no answers or one-word unambiguous answers) about it. Then, upon submitting a vote for the article, HN would prompt users to answer them. A suggestion to read the fine article would be given to people who cannot answer, and no upvote would happen.
This middle ground is also why I think Go would be/is a great learning language at colleges or in general.

You've got something which has a lot in similar with dynamic languages, doesn't require much to learn Hello World (in comparison to Java), but has higher-level features like GC, first-class functions, etc. You also learn something C-ish in pointers which you might be aware of but not truly know in dynamic langs. Concurrency is only a benefit.

It is a really simple language that anyone can learn quickly and then take that knowledge higher level with a Python or even Clojure or Haskell or lower level with a C.

Is anyone aware of Go being used as a teaching tool in an academic environment?
HHVM is one of the things that is making PHP obsolete. You simply cannot run a top-level Internet business on PHP anymore. It does not work!! PERIOD!

Facebook realized this and solved the problem by building a proper platform to run a subset of PHP which allowed them an easy migration to the new platform. Massive companies can afford to do this, but the rest of use need to choose safer tools with a long future ahead of them.
I have to agree, I suspect the NSA is looking at this as a temporary exile and will resume the program when an "executive order" reinstates it.
At least in the US, it can be very hard to get a job without a permanent address.
"About" like, nightly, "rounded" down.
The Highest-Paying Jobs of the Future Will Eat Your Life
I am pretty sure it is mostly just a few big companies whose critical code bases are in PHP that are collectively keeping PHP alive.

Without the efforts of these few big companies, PHP would be much deader at this point than it currently is.

BTW: When I say dead I mean for new projects. I haven't heard of anyone creating a new product that chooses PHP unless it is the only thing they know or it needs to interface with existing PHP. But my sample isn't scientific so I could be very wrong.
Snowden showed us that a lot of things that sounded exactly like paranoid conspiracy theories were 100% true. At this point I wouldn't blame someone for thinking we should maybe take another look at UFO sightings or mind control satellites or something.
Very useful service! Easy to customize color, stroke, background...
Chrome for Android is now almost entirely open-source: Android
Teaching Encryption Soon to Be Illegal in Australia
7 lessons learned growing from 4 to 20 people
Another view is that things like GC sacrifice low-level performance stuff (you reference not having total system-level control) while the similarity to languages like C sacrifices some of the good characteristics of scripting languages.
If there was a time when dynamic typing was overrated, then it is certainly possible that this time is a time when static typing is overrated.
Source code for Quantum, an RTS with massive unit counts
Having gone through foreclosure myself, there is zero chance that you would lose your house after 2 missed payments.
When I was offered a position at Microsoft, I declined in part because, after the interview, I was concerned they were precisely looking to hire someone to be the "fall guy" for the team (this was while stack ranking was still in effect).

Now I'm by no means a great developer (as one of my Microsoft-employed friends brutally said about my declining, "No loss for Microsoft"), but I imagine this concern could scare away genuinely good developers too worried that the politics of "keeping the team together" would outweigh any actual individual contribution they'd make.
In case anyone else is wondering why doesn't the Go compiler have error ignore flags for scripting/prototyping purposes:

http://weekly.golang.org/doc/faq#unused_variables_and_import...
Unlike some other languages I won't name this isn't astroturf, a fair number of people are using Go as an alternative to C++ or Java or Node.
The real value of dynamic languages can only be realized in dynamic, image-based, live programming environments like the kind you have with Lisp and Smalltalk.

Whether "scripting" languages, as in languages used to write small, one-off programs, or programs to automate systems administration tasks or to glue other programs together, benefit from that type of power is debatable, but Ruby, Python, and Perl have never been particularly good representatives of the dynamic language paradigm as a whole, either conceptually or implementation-wise.
Big CMSs are also keeping it alive and this looks to keep going. Unfortunately.
>The military is huge: there are criminals in it. We have our own justice system for that reason.

Are you talking about the justice systems before or after their tour?

The first independent justice system that the service(s) use is a concept from Roman times [0], that predates any form of 'Court of Justice' we have in the states, and is really just there to punish soldiers that rebel, not really anything having to do with a split between civilian and soldier.

The second form, post tour 'veteran's court', is really just a way to damage-control dependancy-stricken veterans from causing too much publicity in public courts, and as a way to fast-track such people into lighter sentences than their civilian counterparts.[1] 90 percent completion rate and zero percent recidivism! Remarkable, it must be those values instilled by the service(s).. (the same values that lead them to that court, by the way..)

[1]: http://www.nytimes.com/2010/11/11/opinion/11castille.html?_r...
[0]: http://content.time.com/time/nation/article/0,8599,1940201,0...
Last paragraph totally distracts from your point.
I am pretty sure an engineer can face some kind of serious charges if they were negligent in part of a system that ended up killing people, like a faulty airplane
not very popular :)
As a Ruby user, I look longingly at the Python release notes. Such a pleasure to read. And 3.5 has so many cool features too!
Seems pretty useful for me. The first couple books were how to write in code. The last book was an example or writing in code. The first code was just a basic letter test. When writing LCD drivers the first thing I do is output color bars, very useful for making sure everything is working.

The second code was a demonstration of how you could have a messenger carry something that they don't know about. It said the bearer is a thief. This is pretty much what modern internet commerce is based on. Communicating in code (SSL) with messengers that internet routers in between can't read (credit card details, etc.).

The third code was Christian prayer, which proved the demonology plain text wasn't something he really supported. The demonology plain text was what made it popular and passed on, however, so even that was useful in that if the book was just all encoded numbers, no one would have printed it.

So the box wasn't garbage and the contents weren't garbage. What makes you think they were?
Voyage: les questions insolites des clients
except when these things pass, Google & Co. can decide not to play ball and have legal backing to do so. Though in this case, Google still needs to collect info..
For the kind of applications that Swift is intended for now (i.e. iOS / Mac apps), debug-mode runtime doesn't affect productivity very much as long as runtimes are fast enough to respond to UI events. It might affect automated testing times, but not productivity directly.

So, for that particular use-case, debug-mode being within 2x of release-mode build is not a valid concern.

What would affect productivity for this kind of use-case is build times. (Swift isn't great here either.)
They're not going to shut down a single thing. They need to roll out a half-assed update to 'minimize' data on US persons, and also open investigations of potential criminal activity into as many millions of Americans as possible (because they can keep surveillance on in that case).

They'll probably try to do this as sloppily as possible because as long as they can claim surveillance of US people is unintentional, it's legal under FISA 702.

'alter table Panopticon drop column Country;'
All of what you said about performance could just as easily be said for modern implementations of Common Lisps. SBCL, for example, fairs quite well against Go despite being much more dynamic than either Python or Ruby:
http://benchmarksgame.alioth.debian.org/u32/benchmark.php?te...
> Collect all the things is exactly their mandate.

Where is this written down?

Facts matter. Especially in debates like this.
You can also just use a beer cooler with the top open.

It makes it easier if you learn the timing such that it freezes to just about the depth you want to cut the blocks at (about 2") and the rest of the water is still liquid. Then the ice comes out already at melting point and cuts more easily.
You sound like one of those crazy guys in the movies who walks around with a sign around his neck that says "The end is near."

And yet here we are. Doing better than ever.
What is your point? That if we were all totally satisfied with half-ass solutions and non-answers, we wouldn't have to worry P = NP?

>By the way, Mother Nature does protein folding, right?

Yes, but it does it directly without simulating any models of itself. As soon as you add the indirection and abstraction needed for human communication, you can't use those methods.

That's like saying "Usain Bolt can run fast, so you should be able to run fast just by pretending to be him." You can't be nature by pretending to act like it in an abstract model. I can't solve a protein folding problem by simply realizing that my body already folds proteins. That has nothing to do with the mental models of protein folding we use.
The Death of AngularJS
You've just described PMs pretty much everywhere.

The PM role kind of forces people to become political players. Unlike engineers, a good PM often has trouble distinguishing her work from that of a bad PM that is just good at politics. A good engineer can't get away with being garbage if the engineering manager has half a brain. On the other hand, a bad PM can mask his lack of work and talent pretty easily if he can master the political games of a large organization.

A lot of the value add of a good PM is the intangible organizational and communication stuff that is difficult to quantify. A good PM can make an organization respond better to customer needs. A bad PM can still take credit for anything good that comes out of an organization.

PMs can easily shed blame for organizational failures, especially if there are multiple layers of bureaucracy and scapegoats that haven't mastered politics. In places like Google you'll see the most skillful PMs line up people to share blame with by taking on collaborators mid-way through projects; similarly, they can spot a success story in the making and engineer their own late involvement to benefit from the halo effect of a successful project.

At the highest level, the CEO can filter the shit from the gold in the PM ranks, by personally taking an interest in projects ... but a CEO can't get into the weeds of all corners of the organization. So even in companies with great CEOs there are lots of shit PMs sprinkled throughout the organization.

Many engineers learn to just live with it. You learn that political skill will be rewarded in large organizations. Its the nature of the world, just like jackals and vultures eat for free after the wolves do all the hard work. Wolves don't get depressed about it.

But there will always be some naive kids from college that don't understand the way of the world. And they just can't deal with some PM getting paid well for doing nothing but politics. Instead of making peace with the world the way it is, they leave and go to start ups, thinking that is a refuge. But if the start up has success, the same cycle begins again as the team grows larger and larger.

The only way to avoid politics is to become a hermit ... or the tech equivalent ... the solo consultant/gun for hire. Or I suppose, you could start your own company.

Another possible solution is Holacracy:
https://medium.com/holacracyone-blog/holacracy-vs-hierarchy-...

I've never worked in a place with Holacracy, so I have no idea if it actually works.
Here here! Very well said!
Can you give an example, because I have seen very few papers with negative or 'null' results. I'm not even sure what 'null' results means.
The Senate is going to meet May 31st to prevent the shut down from happening. This was their most successful vote on Saturday. 57 out of 60 votes needed. http://politics.nytimes.com/congress/votes/114/senate/1/194

Notice all Democrat Senators voted for it. They are going to spend all this week trying to bring over 3 more Senators by offering to add amendments to the bill.

The time to act is now, not May 31st minutes before the vote. Does anyone know how to reach out to Senators and let them know that we want them to let section 215 of the Patriot Act to expire, and not to vote for USA Freedom Act simply because a few new amendments might be added in the next week?
Some people think PHP is obsolete because it has been around for 20 years. Universities are usually teaching Ruby and Rails in their web programming courses (at least in US). Not a lot of kids feel inspired to learn an "old" language that has always had a bad reputation. And yes, the early versions of PHP were quite a mess. The new generations of engineers prefer learning the newest cool technologies. Nothing wrong with that.

However PHP has become a lot better. Starting from PHP 5, it started feeling a legit language. Frameworks like CakePHP, Laravel and Symphony have shown that PHP is capable of competing with Django with Python and Rails with Ruby. Facebook drastically accelerated its runtime speed with the HHVM. And PHP 7 promises to be even faster.

What I like about PHP is how the runtime works:
- If something is messed up in a controller only the requests that hit that code will have problems. The whole application does not crash.
- The other thing I like is that you change a file and the change is immediately available without having to restart anything.

I love Node.js, C++, Go and Python but PHP is still a good tools in these days.

PHP is only obsolete for those that choose not to use it.
i'm paid to write go :)
It's more than a bit disingenuous to call Facebook's work on Hack and the HHVM an abandonment of PHP. A big part of the HHVM project was writing a formal PHP spec, and features from Hack have been making their way into mainstream PHP (generators in 5.5; static types in 7).

It would be much more accurate to say that Facebook has invested heavily in PHP by financing an alternative runtime.
This is quite interesting because we are living a similar experience, but now in Microsoft not 7 years ago. We do not know what is going on with PMs. The ratio is 1 PM per 6 Software Engineers which is justified, by them because they are overwhelming in tasks. However, we do not have clear requirements, neither clear job to do. Most of the time, we also have to work on the same thing again and again because they are changing their mind before we even release any bits. At the end, like you said, I think it is a politician job because they do not do any budget or schedule management, just giving verbal indication of their vision. I do not agree with your last paragraph through.

Concerning the removal of testers, I think this is also wrong in some extends. Software Engineers are having a hard time to catch up with the code and testing. The goal was to create a better quality and having more people being able to understand the code but at the end we become more specialize in some part of the system and know less of the overall, mostly because we are working longer on the same part because automating everything take a lots of time.

I also think that PM does not help the whole process of being fast to deploy new bits. However, this is something rotten in the code of big business with multiple hierarchy. This goes far beyond the PM problem, it goes with a paramount management hierarchy where everyone can override any decision. Oh well, I guess any big top 500 companies has the same problem at some point. Isn't?
From Bamford's books, I get that the NSA does not consider itself to be bound by the Constitution, US law, etc. As a military organization, it is subject only to the authority of the President. And I gather that it fudges on even that, through a Byzantine maze of need-to-know restrictions.

So yes, there are no rules.
And millions of installations of Wordpress and other PHP based systems. Wordpress is highly active and widely used because it's easy to work with. The ease of use is a SELLING point, that "S" word that engineers aren't always strong with.

Given all this activity on forward progress (we aren't dealing with a Y2K bug where we are prepping for death) I don't see how you could say PHP is a dying language.

All software sucks. All ecosystems have their doomsday scenarios. Business as usual.
Indeed. They're basically saying "trust us, we've shut it down."

Yeah, okay. It's even worse that it supposedly "leaked" only a few hours before the White House made the announcement public. I guess the White House has been paying attention at how to make things go viral, to fool everyone.
"Martinis, too, demand minimal dilution, so bartenders will stir gin and vermouth with dense cubes for several minutes to get them to the right temperature."

That's nonsense. Chilling and dilution are proportional. It'd be much smarter to just stir less with normal cubes.

"Lazar noted that some bartenders will stir drinks for several minutes to achieve maximum chilling, which also gives the spirits a viscous, “ropey” quality."

Also silly. At that point you've reached equilibrium, so you might as well have saved yourself 5 minutes and shaken it. Also I don't know how over-diluting can make something viscous or ropey, I'd think it'd make it thin.
http://www.cs.toronto.edu/~nitish/nips2014demo/results/80282...

It must be making some very broad generalisations to come up with the tag 'homosexuals'...
SafetyEar Agency!

You know, for the kids.
I would never understand advising getting a derivative of Ubuntu for the sake of the UI. But I agree that if the OP wants to use Apple's environment he should consider buying their product. I personally would rather use a Linux/BSD system.
You're confusing the Hack language (the "subset" of PHP Facebook uses -- actually a superset, as all PHP is valid Hack) with HHVM, which is a PHP runtime engine.

Wikipedia recently transitioned their PHP website from running on the Zend engine to running on HHVM. It's still regular PHP code, though.
PHP is obsolete? Apparently my bank account didn't get the memo.
I used to do a lot of PHP, and I love Clojure (all my work for the past year has been Clojure only), so I totally get where the author is coming from. Comparing Clojure and PHP is not even fair, whether we're talking performance, concurrency, or elegance.

In the process of learning Clojure, I have discovered a "better" way to write PHP:

1. Use PHP namespaces (5.3+)

2. Use functions in those namespaces that take mostly PHP arrays and sometimes other params, modify them, and return new/modified arrays and params (again, that's similar to how data flows in Clojure, albeit not "pure")

3. Minimize or eliminate use of classes, objects, public, private, protected, getters, setters, and other OOP goofiness; classes with static properties/methods are OK
trying it out. thanks.
I've also struggled with understanding what Mozilla does with that much money. It's a staggering amount.

As for someone else's reply to you, same question. What in the world do they do with 1000 people?

And yet they can't develop something useful, like e.g. an improved alternative to Certificate Patrol? That way TÜRKTRUST Bilgi İletişim ve Bilişim Güvenliği Hizmetleri A.Ş. (first certificate in my browser) can't compromise my browsing in the USA. Fine to use them for someone browsing to a website in Elbonia, not so fine for anything that I would ever do.

Edit: just to be clear, Turktrust actually did abuse their privileged position, and Mozilla did get rid of them. But why were they there in the first place, and what about the 100 or 1000 other certificates that Firefox comes with?
Meanwhile, there are hundreds (thousands?) of new Wordpress installs going up every day. People building their businesses and making money without much thought as to which tooling is behind their administrative control panels other than the name, Wordpress.

You did say, "website." Perhaps you didn't mean to use such a general term. A green field web application may not choose a stack which includes PHP.
Except it seems like in practice the cuts are spread around so you destroy the worst 10% of your kitchen and the worst 10% of your garage even though the kitchen was really nice and the garage needed knocking down completely.
JavaScript is well designed? Of course, 'well' is not very precise. But considering how fast it was created, how many translate-to-JS languages there are, at best I'd call it 'best possible design in 10 days' (http://www.quora.com/In-which-10-days-of-May-did-Brendan-Eic...)
Correction: employed, with several side jobs and clients.
I've been living in SE Asia for the last four years and the energy and time Americans waste on stuff like this seems increasingly surreal to me the longer I'm here. Spend your time how you like but there's something very liberating about being freed from all these first world obsessions.
"take on a well-designed language like Python or Ruby or Javascript"
I like Javascript and Node.js BUT please do not call it a well-designed language. Strict mode makes it a lot better and ECMAcript 6 is great. Even the people that invented it recognized that it had more than a few design flaw.

As time passes and better engineers that understand computer languages get involved in the core development, things have been drastically improved. This is true for Javascript, Python, and, yes, also for PHP.
As a relative pointed out, you can put "artisanal" in front of anything and charge more for it.
I tend to have quite a lot of objects that are basically what I'd use complex closures for in a lispy language - i.e. a bunch of read only attributes, then some methods that use those as configuration/etc.

That's basically a 'bigger hammer' version of (2) though - mutable state is, as ever, the enemy.
That is an incredibly inspiring share! Thank you, OP.
Something in the Bay – A Song Dedicated to SF Coders