Re: [PHP] the state of the PHP community

[email protected] (Nathan Rixham)
Newsgroups php.general
Message-ID <[email protected]>
Adam Richardson wrote:
> On Thu, Jul 29, 2010 at 1:36 AM, Nathan Rixham <[email protected]> wrote:
> 
>> Hi All,
>>
>> I find myself wondering about the state of the PHP community (and related
>> community with a PHP focus), so, here's a bunch of questions - feel free to
>> answer none to all of them, on list or off, or add more of your own - this
>> isn't for anything specific, just out of interest and sure I (and everybody
>> who reads the replies) will learn something + doors/options/contacts may
>> come of it. The only thing I can guarantee is that I'm genuinely interested
>> in every reply and will read every one of them + lookup every tech and link
>> mentioned.
>>
>> in no particular order:
>>
>> What other languages and web techs do you currently use other than PHP?
>> - if you include html or css please include version, if js then preferred
>> libs, and whether client or server side.
>>
> 
> CSS, Javascript (Jquery, mostly), SVG, F#, C#, Java, Clojure, Scala, C,
> Objective C, Groovy

On the JS side, just for a radar check, assuming you know of extjs, 
jqueryui and commonjs? - also have you looked in to node on the server side?

Good to see you branching out to other languages - somebody once said a 
programmer with one language is akin to a joiner with only a hacksaw in 
his toolbox (though I may have made that up in a spout of subjective 
validation!).

I'm quite interested to know, which of [F#,C#,Scala,Clojure] you'd 
recommend one learned/invested some time in to - I've been debating for 
some time internally about which *# language to dive in to, and the 
Scala vs Clojure decision I find impossible to take!

Out of interested, have you seen or tried M or haskell?

>> What's your previous language/tech trail?
> 
> 
> Started with C++ (I hate it!), then moved on to Java and then to PHP and
> then to the others.

interesting how often Java and PHP get mentioned together, it seems most 
PHP devs have touched Java at some point recently.

>> Are you considering any new languages or techs, and if so which?
>>  - names / links
>>
> 
> Clojure is beautiful.   Google Go is intriguing.  Scala is sooo powerful
> (but worries me in terms of Perl's syntactic obfuscation.)  However, PHP is
> practical and sufficient for most of my needs.

Likewise I find the same re PHP, Go slipped past in a flight of fancy, 
ECMAScript-262 has my main attention whilst scala vs clojure, see afore 
mentioned "I can't decide" reference, any pointers welcome.

> I've moved away from Object Oriented Programming practices, and only use
> typical OOP practices/patterns when the conventions of a project dictate its
> use.
> 
> As a programmer, I've fully embraced functional programming (and Aspect
> Oriented programming is neat, but I've not used it in a project, yet.)

Interesting, I tend to sway between functional, class based OO and 
prototype OO (with some lessons learned from AOP) - I love functional, 
but also value the separation of cross cutting concerns one can achieve 
with full OO - increasingly liking js style prototype OO which is a 
great mix of the two.

>> Is PHP your hobby/interest, primary development language, just learning or?
>>
> 
> I use PHP in a plurality of web projects I'm involved with.
> 
> 
>> How many years have you been using PHP regularly?
>>
> 
> 6
> 
> 
>> How many years have you been working with web technologies?
>>
> 
> 7
> 
> 
>> Did you come from a non-web programming background?
>>
> 
> Grad school for cognitive psychology (long story)
> 
> 
>> Is your primary role web developer or designer?
>>
> 
> Both (I'm a one-man shop)

How do you find it? especially given you work with local clients, do you 
find 'maintenance' is a killer or does an appropriate 'cms' alleviate 
much of that? - how many years as a one-man shop if you don't mind me 
asking?

>> Do you tend to work on jobs for geo-local clients, clients in the same
>> country, or do you work internationally 'on the web'?
>>
> 
> Local clients.
> 
> 
>> How do you get your projects? do they come to you, word of mouth, do you
>> hunt and bid for projects, code call, visit clients, target clients
>> individually you think you can help, or?
>> - not looking for trade secrets, just to get enough for an overall picture.
>>
> 
> Word of mouth most often.
> 
> 
>> Do you have any frustrations with the PHP community, do you find you want
>> to talk shop but can't, or find people to work with but can't, have projects
>> in mind you want to do but can't find people to do them with etc?
>>
> 
> I very much enjoy working with PHP, and I hope it's able to keep pace with
> the other language eco-systems out there.  Like it or not, PHP is in stiff
> competition with many other languages, and while I thoroughly appreciate the
> community, I'm worried that the hype of other languages (Scala, etc.), the
> slow adoption of PHP 5.3, and the limited tools (at least relative to the
> other langauges) for using the NoSQL data persistence solutions (MongoDB,
> Cassandra, etc.) are restricting PHP's potential growth among the new crop
> of developers.  I have no data to substantiate this worry, however, and the
> beautiful simplicity of PHP could still provide the impetus needed to stay
> competitive.

Valid points, PHP has a huge strength in numbers, both in supporting 
(shared) hosts and in developer+projects - but I also worry that it 
doesn't change with the times quick enough, + the core doesn't have the 
same hacker + iterative development focus anymore, contrast other 
languages which get major functionality added at minor revisions, and 
minor revisions every few days/weeks and there certainly is something to 
worry about.

This said, perhaps the worry is primarily on a personal basis with 
developers loosing time invested in PHP were they to move off to other 
languages.

Real worries in the PHP core for me, are the huge ignorance and lack of 
native support for HTTP (which is somewhat ironic), lack of support for 
NoSQL + RDF tooling, and also support + implementations of the new sets 
of webapps APIs.

Overall, the general sentiment of 'if it can be done in userland, let it 
be done there' isn't always the best approach (although I understand the 
arguments to the contrary) - ultimately though, PHP does feel 'stale' 
comparatively.

>> Are there any efforts, projects or initiatives which are floating your boat
>> right now and that your watching eagerly (or getting involved with)?
>>
> 
> Brushing up on C skills so maybe I can try to create some extensions that
> facilitate functional programming approaches within PHP (currying, etc.)

On this note, you might be interested in a little project on git called 
Phunctional [1] which... well if you take a look at [2] you'll see :)

[1] http://github.com/KendallHopkins/Phunctional
[2] http://github.com/KendallHopkins/Phunctional/blob/master/Phunctional.php

Best & thanks for taking the time,

Nathan
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.