Fog Creek Software
Discussion Board




Drowning in one's community

This comment:
"PHP has more mindshare than ASP and ASP .NET."

prompted this thread.

I've noticed a *lot* of people (myself included) tend to think that because everyone they relate to has a mindset, it must be the prevalent one. I used to think .Net was getting to be pretty popular, others think .Net is just gaining acceptance. Java types think J2ee is the only platform used in big business, recent surveys show it's got significant presence, but isn't "dominant" at all.

Apparently some people think PHP is more popular than ASP.Net, while a whole hecka lotta developers I know either haven't heard of PHP or only know it exists.

I'm interested what others think of this phenomenon, and if anyone else has been able to "break out" of their favorite technology mindset and get an actual lay of the land...

Philo

Philo
Wednesday, March 24, 2004

You may be right in a general sense.  In this specific case (PHP that is), the mindshare comment is more than likely accurate.

After all, when Netcraft recently pinged 47,173,415 domains, it found that 15,205,474 had PHP installed.  I would challenge any app serving technology to come close to that.

BTW, great interview with Rasmus Lerdorf here:

http://otn.oracle.com/pub/articles/php_experts/rasmus_php.html

"What it all boils down to is that PHP was never meant to win any beauty contests. It wasn't designed to introduce any new revolutionary programming paradigms. It was designed to solve a single problem: the Web problem."

dir at badblue com
Wednesday, March 24, 2004

"Had PHP installed"? Or "had PHP pages"?
There is a HUGE difference.

Philo

Philo
Wednesday, March 24, 2004

I judge the mindshare of a language by the amount of users on IRC. On freenode right now:

#php: 334 users
#c: 259 users
#perl: 239 users
#python: 239 users
#c#: 24 users
#asp: 2 users
#asp.net: 2 users

on efnet

#php: 363 users
#c: 216 users
#perl: 133 users
#c#: 108 users
#asp: 103 users
#asp.net 51 users
#python: 28 users

Matthew Lock
Wednesday, March 24, 2004

I would say perl is installed in *more* servers than php.

Matthew Lock
Wednesday, March 24, 2004

Hunh? What's PHP? What ever happened to Fortran? Have I missed something?

confused
Wednesday, March 24, 2004

Matthew, no way is that a valid metric. I'll agree it's criminal, but IRC is simply not used by a lot of new programmers, and has a heavy *nix bias.

I mean, look at your numbers - around 2,000 developers? Sun estimates there are 3,000,000 Java developers alone, but your metric indicates there's nobody using Java...


Philo

Philo
Wednesday, March 24, 2004

That's cause I forget about Java  ;).

But you have to admit it's *some* metric. And if you've read Peopleware, you'll know that law (I forget it's name, I lent my book out) that any metric is superior to no metric at all.

Freenode:
#java: 216

Efnet:
#java: 149

In the web design community ASP.NET has barely made a blip on our radars. It's all PHP, perl and Javascript, and Coldfusion. Everything else is an also ran at the moment.

And before you label me, I program in ASP.NET everyday for my job.

Matthew Lock
Wednesday, March 24, 2004

Here's another "metric", search Google for programming language, and get back the list of languages ordered by link popularity: http://www.google.com.au/search?hl=en&ie=UTF-8&oe=UTF-8&safe=off&q=programming+language&btnG=Google+Search&meta=

- python
- perl
- java
- c
- icon (???)
- scheme (beginning to wonder about this metric ;) )

Matthew Lock
Wednesday, March 24, 2004

Most of the time, you can't get an accurate picture about how the mindshare thing works because if you're a developer, you hang out with other people who develop the same sort of thing :)

I am in the PHP community and also in the Java community.. and I've been involved in Perl for a while before both :) Each camp thinks they're dominant and they have more mindshare :)

All other metrics about IRC and Googled pages and Netcraft aside (Netcraft is what I'd think is the most valid, but I do know quite a few intranets which use ASP.net, which wouldn't show up in those statistics), PHP "seems" to have more people who even casually use it than ASP.net. (yes, very subjective, but it seems that way).

I do also know that there are courses in universities that teach web design and their language of choice is PHP. So, more casual users of PHP than ASP.net ?

deja vu
Wednesday, March 24, 2004

PHP is also orders of magnitude easier to get started in than ASP.NET.

Consider what you have to know to even use ASP.NET vs PHP. PHP is just a perl-esque procedural language bunged in a html file.

ASP.NET is obviously more powerful that PHP, but there are so many PHPers that are really just HTML coders with a sprinkling of programming knowledge. And PHP is the right fit for them.

I personally think Microsoft made a big mistake phasing out ASP classic.  I know of so many occasional programmers who have jumped to PHP now, as ASP.NET is too complex for them.

Matthew Lock
Wednesday, March 24, 2004

Before ASP .NET, there was ASP vs. PHP vs. CFM vs. JSP.

JSP is an enterprise-class thing, so it isn't really in the same category with ASP and PHP.

CFM had little market share.


So.. ASP and PHP battled for many years.

The end result of these battles is that PHP had a lot more market than ASP, because it was simply BETTER in almost every way.

Now MS tries to tip the ballance in their favor with ASP .NET.

MX
Wednesday, March 24, 2004

"a whole hecka lot of" developers that haven't heard of PHP, huh?

what does that tell you
Wednesday, March 24, 2004

Netcraft's survey has its problems, but its the best we've got.  Just as you can say people installed PHP but never used it, the same can be said of ASP.  Actually, isn't ASP built-in?  I've had to manually install PHP on our redhat servers, so I guess it wasn't included by default.


Wednesday, March 24, 2004

In a discussion yesterday we asked ourselves wether the Linux mindshare phenomenon was akin to the Dean thing. Are we winessing a distorted effect of new communications technology seen through traditional measurement eyes?

Are small well organized communities profiting from an temporary imbalance in impact estimation? In the past the "grassroots" noise volume would have been more inline with general broad support, whereas now the same popular noise volume can be achieved through more effective many-to-many communication and organization technology, leading traditional indicators far astray.

Just me (Sir to you)
Wednesday, March 24, 2004

Number of ASP pages on the Web:
http://www.google.com/search?hl=en&lr=&ie=UTF-8&oe=UTF-8&q=inurl%3A.asp

Number of ASP.Net pages:
http://www.google.com/search?sourceid=navclient&ie=UTF-8&oe=UTF-8&q=inurl%3A%2Easpx

Number of JSP pages:
http://www.google.com/search?hl=en&lr=&ie=UTF-8&oe=UTF-8&q=inurl%3A.jsp

Number of ColdFusion Pages On the Web:
http://www.google.com/search?sourceid=navclient&ie=UTF-8&oe=UTF-8&q=inurl%3A%2Ecfm

Number of PHP pages:
http://www.google.com/search?hl=en&lr=&ie=UTF-8&oe=UTF-8&q=inurl%3A.php

Not very scientific, but it give you some rough numbers.

Myron A. Semack
Wednesday, March 24, 2004

In the absence of a proper study, one has to run on anecdotal evidence. One example ....  count the number of  apps/resources for php vs asp on sites like http://www.hostcripts.com

PHP wins hands down.

Furthermore, contrast the popular apps (blogging, bulletinboards, nukes, etc) that people run and find out whether they run php or asp versions, and again

PHP wins hands down.

Tapiwa
Wednesday, March 24, 2004

Here is a survey of 800 programmers & managers.

http://www.infoworld.com/pdf/special_report/2003/2003Issue38Developer.pdf

Scot
Wednesday, March 24, 2004

Some old programmers don't use IRC either.  Here we compound our difficulties by demonstrating the very same general problem Philo raised.  I might be blissfully unaware that anybody but pirates and script kiddies use IRC, while Matthew Lock may believe IRC use is widespread enough to serve well as a statistical sample for the whole of the programming population.

Googled pages include the interest of dilettantes, who are hardly relevant.

Even in these heady days of virtual community, physical proximity still plays an important role in community.  Local communities, I think, will usually be strongest.  The programming language question surely varies strongly geographically.  I would expect to find different answers in San Jose, Chicago, Zurich, and Bangalore.

A few additional rough mindshare indicators... (all problematic)

  Shelf space at specialist computer bookstores
  Conference attendance
  Job postings (local and otherwise)
  Local user group meeting attendance
  Informal polls in local study groups
  Furtive glances at the local coffee shops
  Interest by the Gartners of the world
  Dedicated periodicals, and articles in general periodicals

In short, I believe there to be no one sure way to learn the score, no wet finger in the wind.  But awareness of Philo's concern will help us avoid delusion.

Also, the mindshare question has only very limited interest to me.  Whether 10% or 60% of the population use C# has little influence in my choice to use it, so long the number is sufficient to reasonably expect continued support and a pool from which to draw talent.  What matters most to me is whether it is the best tool for my task, and the degrees of future freedom it affords or denies me.

veal
Wednesday, March 24, 2004

Here's a way to REALLY settle the debate: http://www.googlefight.com

Matthew Lock
Wednesday, March 24, 2004

Not to rip on PHP... but regarding the availability of PHP resources, don't forget to consider that PHP is a darling of the open source community -- a community notorious for spinning, for the fun of it, their own partial solutions to already-solved problems.

Sourceforge alone hosts in excess of 70,000 projects, most of which are both incomplete and inactive.  Ideas are more common than diligence, and the open source world provides ample resources for self-publication of incomplete work.

The mass of a mountain tells nothing of its gold content.

veal
Wednesday, March 24, 2004

Don't bother to pick a fight with him, there's always people who likes to pick a topic they has little idea about (just ask how much code they have written in php or .net), say something almost intelligent about it, and see the trolls duke it out.

I am not even going to comment on php, there are plenty of really interesting flame wars out there on its merits (or lack there of), we don't have to rehash it here.

1. Should you use Mono or Java over PHP?

If you are strictly a webby, or the depth of your application is less than (source byte count less than 1 megabyte) substantial--I seriously wondering if you'll go Mono/Java right now. And if you do go JSP/mod_mono ASP.NET I doubt you'll use much of the infrastructure explained in those $1500 MSDN printouts.

2. Should you use Mono or Java over PHP?

Hey, on the other hand, but it is perfectly acceptible to write small projects in ASP.Net, you already know Java/Mono--don't know anything about PHP--who's to stop you?

By the way: Nothing stops you from using BOTH technology. PHP has gateways allowing the use of COM/.Net Interops and Java/Mono classes.

It all depends on your project(TM)

If you do mainly text processing, and you can afford to throw hardware at your web scalability problems (and your scalability problems can be solved by throwing inexpensive hardware at it): scripting languages are just perfect. Sure, maintainability of source is PHP and Perl is less elegant than C#, but C# is no beauty queen.

C# doesn't imply professionalism. Market share doesn't mean you won't accidentally hire an idiot contractor.

Li-fan Chen
Wednesday, March 24, 2004

It helps to say, "I automate things."  And learn the concepts one level down from programming languages.  Like semantics.  The point we stop calling them languages and start calling them notations.

There are advantages to different notations, and some of them will mean a momentary boost in popularity.  Ease of use is a big one.  The current ease of the mouseclick languages means more GUI users than C++ coders.  If GUIs became more powerful, that may change.  Therefore I think it's important to visit the language communities and find the best sources of information.  Top-quality websites (and books) tend to explain what it all "means," and that's fast.

If there are obvious disadvantages to something, most likely the community has found a way around it.  For example, Java is a pretty restrictive language.  Therefore Jython exists.

One bugbear is that mainstream sources of information are often important... but they're also the most subverted.  By people who want you to believe a viewpoint, like ad agencies.  They're essentially trolls, people who want to cultivate a certain reaction from others.  "Does someone -want- me to feel this way?"  But if you can trust yourself, keeping tabs on the trolls' effectiveness tells you a lot about what the mainstream believes.  Like with 100% Pure Java, people did desire a very predictable platform, and that desire was marketed to.

Tayssir John Gabbour
Wednesday, March 24, 2004

I'm not a big fan of PHP, but to believe that ASP.Net is more popular than PHP is delusional.

Anonymous
Wednesday, March 24, 2004

I'd just like to point out that this thread shows what I like about JoS: 

It didn't turn into a big flame war or fill up with insubstantiated "No, ASP is swiss cheese, PHP is the way to go" (although, admittedly, such threads exist here).

Instead, people attempted to approach the subject in a somewhat scientific manner, attempting to measure something that's hard to measure, and debating the merits of various ways of looking at the problem.

Bravo, gang!


Wednesday, March 24, 2004

"I'm interested what others think of this phenomenon, and if anyone else has been able to "break out" of their favorite technology mindset and get an actual lay of the land..."

I suppose that I have.  Like Joel says about Biculturism, I was 100% in the Windows culture.  I used every version of VisualBasic going back to VB/DOS.  I started doing web development in PERL but as soon as I had a chance I switched to ASP -- ASP was familar and I felt I could be 3 times as productive in it.  At the time, I knew absolutely nothing about open source or Linux, Apache, PHP, MySQL.

The project I was working on was growing rather large and I was starting to hit the wall as far as the scalablity of ASP.  The sysadmin at our webhost is a unix-culture guy and stongly recommended PHP (which was early in the version 3).

After reading the documentation and playing around with it,
I decided to build the next project in PHP.  PHP was not a huge departure from ASP -- and it felt like the PHP developers knew exactly what was wrong with ASP and done what was necessary to correct it.  I was also impressed with pace of PHP development.  May times I had silently wished for a feature that would then appear in the next version.  ASP, by comparison, moved a glacial pace. 

The change in my perceptions was quite rapid.  I was immediately introducted to a difficult culture with a different mindset.

I'm now in-between the communities.  I still do all my web development in PHP.  I'm looking into .NET for desktop projects.  I still do VisualBasic development.  I have a Windows XP desktop running Apache for Windows and Linux firewall running MySQL.  The conly ommunity I'm not in is the Java community -- which is itself an entirely different beast.

"Apparently some people think PHP is more popular than ASP.Net, while a whole hecka lotta developers I know either haven't heard of PHP or only know it exists."

Globally PHP is far more popular than ASP.Net.  I'd also say that globally PHP is more popular than vanilla ASP.  It's even hard to find a Windows host that doesn't offer PHP for Windows and MySQL. 

However, in the corporate space I'd say ASP/ASP.NET is more popular.  These are companies that host their own web site (or intranet) and have direct access to their internal systems.  If your going to interface with your MS SQL backend and your COM-based business layer and your webserver is Windows NT -- you'd be insane to use anything else.  I wouldn't hesistate to use ASP.NET in such a situation.

Almost Anonymous
Wednesday, March 24, 2004


Darn.

Just when I start getting good at Turbo Basic............

Philadelphia Lesbian Mafia
Wednesday, March 24, 2004

I use ASP and ASP.NET and the whole slew of Microsoft technology.  I haven't found any other technology that provides so much power, ease of use, and options for programming - I think it is a more of a fad to say "hey, i don't like ASP/.NET".  In reality, I think, there are more people using it than care to admit.

KS
Wednesday, March 24, 2004

Myron -- scientific or not, that was pretty damn interesting.

More props to the JoS crowd for keeping the discussion intelligent (try this same question on <insert typical web forum of choice>).

Also was going to say that it seems obvious that there would be a divide between intranet / internet and ASP(.NET) / PHP.  The Netcraft and google metrics don't measure the internal stuff.  I've always told anyone who asks that in my opinion PHP probably dominates in the internet sector, while ASP(.NET) dominates in the internal/intranet sector.  FWIW, I like and use both about equally (each for their strengths / weaknesses).

Good angle on an old topic too.

MacSqueeb
Wednesday, March 24, 2004

You cannot use various IRC networks, as philo mentioned, to judge the popularity of a language.

Some networks have better X language channels than others; for instance, DALnet has a very small #delphi, whereas, IIRC, and it's been a while, EFnet has a much larger one.

What does this mean?

Nothing!

It's a useless way to measure things.

one meeeellion dollars!
Wednesday, March 24, 2004

by the metric of sites i visit, there is still plenty of work for cold fusion, jsp, asp, and php people, with some perl.  i mostly visit newspapers or business sites, though.  the php ones tend to have the most errors (thank you mysql), followed by cold fusion, asp and jsp.  almost always some database interaction issue.  but anyhow.

some internet chick
Wednesday, March 24, 2004

Here is another datapoint, but no PHP figures http://news.netcraft.com/archives/2004/03/23/aspnet_overtakes_jsp_and_java_servlets.html
Then again, Netcraft's methodology is incredibly limited(looking at file extentionson main page).

Just me (Sir to you)
Thursday, March 25, 2004

Such a methodolgy wouldn't figure out this site: http://www.coffeegeek.com -- you won't find a single extension on that site even though it's entirely PHP.

Almost Anonymous
Thursday, March 25, 2004

More useful than knowing the current popularity of a particular language is knowing the first derivative of the popularity. Is its popularity increasing, steady-state, or declining?

Ideally I'd like to know what will be most commonly used 2 - 5 years from now, and also what will lose developers.

Michael Bean
Sunday, March 28, 2004

Stating that I belive Asp.net is king would cause a problem, however I do belive that asp.net and PHP have there cons and pros.

However one thing that I have noticed is that no one has mentioned the different paradigms that PHP and asp.net use. asp.net being a newer language is far more object orientated then PHP. As well I am sure that everyone has noticed that ASP.net can better make use of many design patterns and create code that is far more structured than php or asp.

I do however believe that we all have to start programming somewhere and jumping into asp.net without ever learning object orientated programming could be a problem. Therefore I belive asp classic should be kept around as perhaps a introdution language or something along those lines. Asp classic is powerful but requires far more coding then using asp.net.

Also on a final note, I wonder if new version of PHP will ever spring up. This could be a project that many poeple could contribute to(open source of course). This new version of PHP could be much like asp.net using a more object orientated model, code behind files and containing built-ins like datagrids and such that make life so much easier when programming. For all I know this could be going on right now I have not really researched the topic.

Chaos
Monday, March 29, 2004

*  Recent Topics

*  Fog Creek Home