您的位置:首页 > 编程语言 > Python开发

python学习笔记第一天

2015-11-17 15:27 926 查看
http://www.ttlsa.com/php/yii-yaf-ci-php/ http://www.sitepoint.com/best-php-framework-2015-sitepoint-survey-results/

Best PHP IDE for 2014 – Survey

One month ago, we started
the annual SitePoint framework popularity survey. Now that the month
has expired, it’s time to look at the results and to distribute the
prizes. The response was a whopping ~7800 entries, far more than any
other survey we’ve held so far, and even after filtering out invalid
entries we end up with a formidable number of valid participants.
First things first, as promised, here is the entire result set for your perusal and use: download.
Do with it as you please. If you come up with some interesting graphs,
please do share them with us! Read the “Data” paragraph below for some
more details on the downloadable files.

More from this author

PHP Channel's 3rd 2015 Trimester Update

WebCamp Zagreb 2015 - a Conference You Must Not Miss

Fast Multi-language Docs with SitePoint's RTDSphinx-PHP

The Most Popular Framework of 2015

Framework Winner

To view the full screen versions of all plots below, just click on them. They open in new tabs.
As expected, Laravel won by a large margin once again.



Interactive version:




Interactive version:

Some people were worried that splitting the versions for some
frameworks but sparing Laravel may influence the results and give it an
unfair advantage, but as we can see, Laravel wins even if you merge all
other framework versions.
The data below will be presented in tabular form, simply because I
didn’t have time to make pretty graphs yet and a lot of you were very
impatient to hear the results. I’ll update the graphics soon.

Framework Winner by Country

If we look at all the countries with more than 50 votes, these are their favorites:
CountryTotal VotesWork FavoriteVotesPersonal FavoriteVotes
United States819Laravel219Laravel293
Czech Republic770Nette611Nette639
United Kingdom496Laravel138Laravel166
Germany428Symfony276Laravel100
France343Symfony2149Symfony2136
Brazil305Laravel100Laravel111
India287Laravel62Laravel77
Ukraine263PHPixie66PHPixie67
Indonesia242CodeIgniter77Laravel64
Russian Federation235Yii 253Yii 272
Poland216Symfony252Symfony246
Netherlands209Laravel64Laravel84
Romania183Symfony249Symfony248
Canada138Laravel40Laravel52
Spain131Symfony247Symfony243
Vietnam112Laravel34Laravel43
Iran101Laravel34Laravel35
Italy100Laravel20Laravel25
Australia99Laravel30Laravel39
Slovakia94Nette48Nette47
Belgium79Laravel26Laravel31
Serbia78Laravel20Laravel29
Hungary73Laravel17Laravel19
Turkey71Laravel26Laravel28
Mexico68Laravel22Laravel21
Bulgaria66Laravel13Laravel20
Lithuania65Symfony222Laravel26
Thailand58CodeIgniter14Laravel16
Pakistan57CodeIgniter14CodeIgniter13
Philippines54Laravel15Laravel16
Argentina52Laravel16Laravel21
Bangladesh51Laravel18Laravel16
Belarus51Symfony220Symfony219
Portugal50Laravel12Laravel17
It’s an interesting trend to observe. Most English speaking countries
favor Laravel, while France is loyal to Symfony – it’s own product.
Interestingly, an incredibly large percentage of Czechs (the second most
active country in the survey!) favor Nette – a framework largely
unknown in the western world, while Ukraine has its own local favorite –
PHPixie. It gets even more interesting when you look at the top five
for each country – not just the winner – but I’ll leave that up to you
to explore!

Framework by Age Group

Finally, if we take a look at the top 5 frameworks of each age group, we get this:
Group: Under 18Votes: 131
Work FavoritesVotesPersonal FavoritesVotes
PHPixie73PHPixie73
Laravel24Laravel27
Nette8Nette9
No Framework6No Framework5
CodeIgniter4Symfony24
Group: 18 – 25Votes: 2433
Work FavoritesVotesPersonal FavoritesVotes
Laravel604Laravel720
Nette329Nette338
PHPixie259PHPixie259
Symfony2258Symfony2255
CodeIgniter178Yii 2194
Group: 26 – 35Votes: 3870
Work FavoritesVotesPersonal FavoritesVotes
Laravel788Laravel1049
Symfony2636Symfony2597
CodeIgniter292Yii 2323
Nette285Nette303
Yii 2258CodeIgniter235
Group: 36 – 45Votes: 1044
Work FavoritesVotesPersonal FavoritesVotes
Laravel191Laravel249
Symfony2146Symfony2134
CodeIgniter91Yii 279
Zend Framework 277Zend Framework 271
Company Internal Framework73CodeIgniter68
Group: 45+Votes: 252
Work FavoritesVotesPersonal FavoritesVotes
Laravel52Laravel66
CodeIgniter31No Framework29
Symfony223CodeIgniter27
No Framework21Yii 222
Yii 219Zend Framework 214
Laravel, again, taking the lead in all, with Symfony usually
following closely, except in the curious case of the underaged group –
did PHPixie get introduced in a school and get points there? Worth
looking into. Nothing really unexpected in these – except that only the
youngest and oldest group seem to be “keeping it real” with “No
Framework”. It’s also apparent that CodeIgniter, even in its current
state, still maintains a very strong legacy and a loyal userbase.
Interestingly, Phalcon’s popularity dropped drastically when compared to last year – it effectively dropped off the charts – but that’s also likely due to the much bigger sample size this year.
Unfortunately, due to some complaints from last year, we didn’t
include gender data in this survey. It would have been an interesting
vector.

On Success

What follows is my opinion on why Laravel won again, read ahead if you’re interested in my take on things.
To the framework maintainers / owners out there. If you want to make
it big – Laravel kind of big – recognize what Taylor has been doing.
It’s not enough to just have good code. In fact, looking deeper
into more than one framework can really disappoint a person,
code-quality-wise. Just the other day, I was asked
about Cake vs CodeIgniter and, having looked at CI’s source, got some
serious 2008-level PTSD. The key to succeeding is, actually, advertising
– as sad as that truth may be.



Taylor not only made sure Laravel has near perfect documentation, he also built (directly or indirectly) several other
commercial services and partnerships around it. Laracasts covers all the
missing docs and use cases, Forge and Envoyer are tuned for Laravel,
and he frequently communicates with various bloggers about upcoming
features and releases before they’re ready, so that they get maximum
exposure on release time. The framework has its own subreddit, Packalyst
is like Packagist but just for Laravel (!?), and there’s also
Larajobs.com, which is borderline ridiculous. Laravel even has its own
t-shirts (though the design leaves something to be desired). This may
sound like typical marketing gobbledygook to you, but it works – social
engineering is real, and to commercially succeed with your brand, you
need to embrace it for what it really is – a brand.
If you’re serious about making money off of your open source work,
don’t be afraid to invest in these matters. For example, get a good
logo. Don’t trust your design abilities, you’re just not good.
If you were, you’d have been a designer, not a PHP dev. Paying a couple
hundred bucks for a good one will pay off in the long run. Don’t get
your friend/daughter/partner to design it for you, else you may end up
with something like this:



Don’t publish documentation or website copy text without having someone disconnected look at it first – proper English is incredibly
important for first impressions. Don’t be afraid to approach potential
developer evangelists – try to get people to believe in your product by
asking them what they dislike. Shape your product around other people’s
desires and opinions, don’t swim hardheadedly against the current, and
don’t let your ego feel insulted because someone suggested a solution
that, when looked at objectively, could just be better than yours. Get a
developer evangelist to write tutorials and other technical pieces
about your framework – in time, the relationship may just grow into a
Laravel->Laracasts mutually lucrative one. Don’t release half-baked
products, and don’t do alphas and betas publicly. There’s no need to
have public announcements about those – announce an RC or two, and
release. Exposing people to an imperfect product too early does more
harm than good. When was the last time Laravel had a beta release?
Look, I’ll be the first one to admit that Laravel is good. It really
is, and I use it for some of my projects purely due to simplicity – one
command and you’re good to go? Sold! I don’t even care about the
underlying bloat of hardcore framework components that power it – it’s
so simple to use, I can easily spend that time on optimization later on
if I ever end up needing it – I’ll just rewrite part of the framework in Zephir if
performance becomes THAT important (spoiler alert: it won’t). But I’m
also bothered by this looming monopoly and the frankly astounding
incompetence of other framework communities. Locking yourselves into
your isolated environments is not good community management. Having a
forum is not enough – interacting with other forums is better. Spread
the word, analyze solutions from other people, discuss them. Be open, be
transparent. Have an official blog, get a StackOverflow tag, justify
your decisions, get in touch with popular publications which can help promote your framework if you present it well enough.
That said, I’d like to invite framework maintainers and those
competent in the usage of those projects to get in touch – let’s build a
good repository of cross-framework content. Let’s compare solutions, do
“versus” posts not for the sake of one framework winning over others,
but for the sake of comparing approaches and learning from each other.
You have one year until the next survey – use this time to get exposure.
Use it to teach, not dictate – to collaborate, not judge. Let’s make it
happen – let’s tilt the scales for next year.

Data

The data for this survey is all in the repo.
While most of the aggregation was done with R, I have a feeling some of
you may want to use PHP to process this, so I’ve included some helper
files – the details are all in the repo’s README file. I’ve mainly
extracted the age group and education level into integers so that the
whole set takes up less space and has some more robust data types
inside, and I replaced Typeform’s funky multi-select answer format with
the number one (1) where the answer was selected (originally, Typeform
copies the name of the answer into the answer field, wasting a whole lot
of space).
I also extracted the header fields and countries into separate PHP
files (in order of appearance) so you can have them open on a separate
screen or even include them directly if you need them.

Sponsorships

Many thanks to Jetbrains for providing us with three PhpStorm licenses, and to Zend for three Zend Studio licenses, rewarding the total top six resharers of this survey. In numbers of reshares and the country they’re from, they were:
168 (Czech Republic)

97 (Brazil)

84 (Germany)

54 (Indonesia)

53 (UK)

26 (Bangladesh)

The first three have been contacted, and once they’ve made their choice clear the other three will get their rewards.
Likewise, three random people with valid email addresses have been contacted about their three-month Learnable subscriptions.
Many thanks to all who participated and to all who reshared the
survey – without your efforts we couldn’t have built such an amazing
body of responses. Stay tuned for more in depth analyses further down
the road!

Conclusion

With another survey drawing to a close, we’re once again reminded how
much a good, healthy community matters. How much do you agree/disagree
with my idea of why Laravel won above? Do you feel like the factors I
mention aren’t that important in the grand scheme of things, or do you
think I’m right on some points? Let us know in the comments below – and
remember, the data is available for download,
so if you come up with some interesting graphs, share them with us and
we’ll add them to this post! Likewise, if you’d like some other
correlations and vectors explored but don’t feel like fiddling with the
data, let us know!

Bruno
is a coder from Croatia with Master’s Degrees in Computer Science and
English Language and Literature. He’s the editor of SitePoint’s PHP
channel and a developer evangelist for Diffbot.com. He avoids legacy code like the plague and when picking projects makes sure they’re as cutting edge as possible. He’s a treadmill desk enthusiast and active (board)gamer who sometimes blogs.

本文出自 “Mr_Computer” 博客,请务必保留此出处http://caochun.blog.51cto.com/4497308/1699896
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: