PHP Classes

PHP and JavaScript Innovation Award Report December 2014 Edition - September 2014 nominees

Recommend this page to a friend!
  Blog PHP Classes blog   RSS 1.0 feed RSS 2.0 feed   Blog PHP and JavaScript In...   Post a comment Post a comment   See comments See comments (0)   Trackbacks (0)  


Viewers: 4

Last month viewers: 1

Categories: PHP Innovation Award, Lately in PHP Podcast

This is the December edition of the Innovation Award podcast hangout recorded by Manuel Lemos and Arturs Sosins to comment about the outstanding features of all the past month nominees and winners PHP and JavaScript packages, the prizes that the authors earned, starting with the nominees from the month of September 2014.

Listen to the podcast, or watch the hangout video, or read the transcript to learn why the nominated packages were considered to be innovative.

Loaded Article


This is the latest podcast hangout episode on the PHP Innovation Award  and the JavaScript Innovation Award about the nominees of September 2014.

We comment only on past nominees to avoid influencing the voting results. This way we are only talking of packages published already in September. The nominees of September were voted on October. In November the results were announced.

You may listen to the audio recording, or watch the hangout video, or read the transcript below.

JavaScript Innovation Award Nominees of September 2014 (0:20)

Format date according to country domain
Pierre FAUQUEFrance33.33%2One downloadable e-book of choice by O'Reilly
1JS Webcam
Capture pictures or video with the webcam
Elger van BoxtelThe Netherlands33.33%3One book of choice by Packt
1JavaScript BIC Validator
Validate the owner of a container with a BIC code
Sameer SemnaIndia33.33%2One year Codenvy Developer hosted cloud IDE premium plan

JavaScript Innovation Award Rankings of 2014 (4:37)

Award Winners by Author of 2014

1Thomas BjörkSweden415
2David CastilloMexico213
3Pierre FAUQUEFrance312
4Andoitz Jordan MarmolejoSpain210
5Emmanuel PodvinFrance18
6JImmy BoCanada37
7John DiazColombia15
7Jakub KrolPoland15
7Mark RolichArmenia15

Award Winners by Country of 2014


PHP Innovation Award Nominees of September 2014 (7:06)

1PHP Multi Profiler Class
Measure the performance of functions and classes
Jacob FoggUnited States17.65%12One subscription to the PDF edition of the PHP Architect magazine
1PHP Euler Circuit
Find nodes of a Euler circuit and Hamiltonian path
Chi HoangFrance17.65%11PhpStorm IDE personal permanent license
3PHP jQuery UI MySQL Accordion
Show master detail MySQL records using accordion
Neda DivbandiIran14.71%10One downloadable copy of PhpED Professional
4PHP Encode Form Values
Decode base64 encoded submitted form values
Er. Rochak ChauhanIndia11.76%9One copy of the Zend Studio
5PHP IP Sorter
Sort an array of IP addresses
Luca PacchiarottaItaly8.82%8One downloadable copy of Komodo IDE
Parse RAML of an API to generate documentation
Mike StoweUnited States5.88%7One copy of DWebPro Standard License
6PHP Mass Database Update
Update all MySQL database table records
amaniIran5.88%7One copy of VS.PHP
Generate markdown change log from git repository
Adil IlhanTurkey5.88%7
9PHP i81n
Extract text to translate from application code
Everton da RosaBrazil2.94%4One year Codenvy Developer hosted cloud IDE premium plan
9PHP Coins Change
Solve the coin change problem for a given amount
Michele AndreoliItaly2.94%4One book of choice by Packt
9PHP BIC Validation
Validate the owner of a container with a BIC code
Roberto AlemanVenezuela2.94%4One downloadable copy of CodeLobster Professional
9PHP Store Openings
Determine if a store is open at a given time
meivin123Germany2.94%4One downloadable e-book of choice by O'Reilly

PHP Innovation Award Rankings of 2014 (21:33)

Award Winners by Author of 2014

1Chi HoangFrance842
2Orazio PrincipeItaly324
3Andoitz Jordan MarmolejoSpain316
4Everton da RosaBrazil214
4Er. Rochak ChauhanIndia214
6Asbjorn GrandtDenmark212
6Jacob FoggUnited States112
6Abius XIran112
9pooya sabramoozIran111
9Patrick JL LasoSpain111

Award Winners by Country of 2014

6United StatesUnited States535
7Russian FederationRussian Federation323
10United KingdomUnited Kingdom214

Package Recommendation Requests of November 2014 (24:05)


Listen or download the podcast, RSS feed and subscribe in iTunes

Watch the podcast video, subscribe to the podcast YouTube channel

Click on the Play button to listen now.

Download Size: 27MB Listeners: 1225

Introduction music Harbour used with explicit permission from the author Danilo Ercole, from Curitiba, Brazil

View Podcast in iTunes

RSS 2.0 feed compliant with iTunes:

In iTunes, use the Subscribe to Podcast... item of the Advanced menu, and then enter the URL above to subscribe to this podcast.

Watch the podcast video

Note that the timestamps below in the transcript may not match the same positions in the video because they were based on the audio timestamps and the audio was compacted to truncate silence periods.

See the Lately in PHP podcast play list on YouTube and Subscribe to this channel there.

Read the podcast transcript

JavaScript Innovation Award Nominees of September 2014 (0:20)


Manuel Lemos: Now, it's time to talk about the Innovation Award of the JavaScript of 2014. We are going to start talking about the winners of September. Actually, this month, there are not many nominees as before. There were just three and all got tied with the same votes, so all of them won.

OK, let's talk about them. Arturs, please go ahead and talk about what you thought were the most interesting.

Arturs Sosins: The first one is... Let me try to share it first. The first one is Format.js class, developed by Pierre from France. What it does, it returns the date format according to your country's specifics.

I'm interested in how he actually do it, because there is no general rule how he could generate it, and he just stores the formats for different countries and sites, so he has this information. If you need it, it's a handy class that extends the date object, then you can format the date to any specific country that you need.

Pierre got one downloadable e-book of choice by O'Reilly for this class.

The second one, is JS Webcam class... let me load it here... developed by Elger van Boxtel. What it does, it uses the API to retrieve pictures or video from your computer's webcam. Basically, it can retrieve binary data and then, display it for example in the web site data URLs. It's also a really neat package.

Elger got one book of choice by Packt for this class.

Manuel Lemos: On my behalf, I would like to talk about the remaining one which is a package for a somewhat unusual purpose. I mean, unusual for most types of applications that you would find on the Web... JavaScript BIC Validator.

This BIC standard is a format for defining codes for containers that are transported with products around the world in ships or maybe trucks.

This one is a package developed by Sameer Semna from India. What it does, it validates the code because a BIC code has certain conventions. It can take the code, compute the check digit and verify if it was correctly formatted. It is an interesting package for people that, for some reason, need to deal with containers that are transported around the world.

For this award, Sameer picked a prize, which in this case was one year of Codenvy Developer hosted cloud IDE premium plan. I hope he's enjoying this cloud IDE.

For the Innovation Award of this month, we have talked about all winners.

JavaScript Innovation Award Rankings of 2014 (4:37)

Manuel Lemos: Now, let us see how is the ranking of the Innovation Award winners of 2014. Individually, Thomas Bjork from Sweden continues to lead with 4 packages and 15 points, followed by David Castillo (2 packages and 13 points), and now followed by Pierre FAUQUE with 3 packages and 12 points, then, Andoitz Jordan Marmolejo from Spain with 2 packages and 10 points, then, several others with one or more packages but less points.

By country, so far, France is leading now with 5 packages and 21 points, followed by Sweden (4 packages and 15 points), then Mexico (2 packages and 13 points), Spain (3 packages and 12 points), Italy with 3 packages and 9 points, Canada (3 packages and 7 points), India with 2 packages and 6 points. Then, there are several other countries with only one package and less points.

Unfortunately, this month, we have less nominees, so there are not so many people sending packages to participate in the award. Previously, I mentioned that JSClasses had a boost in traffic from Google because there are some recovery of some Google algorithms. But then, it dropped again for some reason that I am not sure what happened.

What happens is that, unfortunately, many new packages are sent by new users, and if the site gets less new users, it also gets less new packages. So let's see if in the future things recover.

Many sites are being affected by Google algorithm fluctuation, not just JSClasses and others. To a certain point, also PHPClasses, but PHPClasses is much more popular. Let's see if things improve in the future. Anyway, for now, I hope the current users keep sending great packages, so we can keep talking about them.

PHP Innovation Award Nominees of September 2014 (7:06)

Manuel Lemos: Now, for the Innovation Award of the PHPClasses site, we have much more nominees for September. They were voted in October, and then in November, the results come out. So we are in December, so we can now already talk about them. So there are 12 nominees. It's a lot of packages.

Arturs, which ones would you like to comment?

Arturs Sosins: OK, let me share the screen again. There, it's shared. The first class I would like to comment is the PHP Multi Profiler Class by Jacob Fogg from the United States. Well, we've all done testing which function works better, which approach is faster. This class does exactly that. It can call the function multiple times and record the time how each class spent or how long it was creating object. So yeah, that's very useful.

Jacob got one subscription to the PDF edition of the PHP Architect magazine.

The second class I wanted to mention is the PHP Euler Circuit for Hamiltonian path. They differ only if you want to work through the graph either by unique nodes or unique edges. This class exactly does that. It walks through it... it visits either once and returns back to the same position.

This class was developed by Chi Hoang from France. As I remember, I think Chi submits lots of classes with geographical approaches. Now... he got PhpStorm IDE for this class.

Manuel Lemos: Talking about that, just to briefly comment on the fact that Chi Hoang was one of the authors that recently changed his country and also updated it on the PHPClasses site profile, so he could apply it to the country he's in now, which is France. Previously, I think he was in Germany, but just because he changed the country, he also changed the rankings of awards by country.

There's another author, Patrick Laso from Spain, that also changed country to the United States. But I contacted both. I asked them if they wanted to preserve the representation of country from their original country. In the case of Chi Hoang, he said that he prefer to represent France now because that's where he lives.

In the case of Patrick, despite he's still in the United States, he wish to represent Spain, which is his origin country. So this sort of fixed the problem of author representing the country that they want not where they live in the moment. It also affected the rankings, but let's see more about that ahead.

Arturs Sosins: Now, as of the first count by developers via a widget, lots of PHP scale so they could win. It's never going to work, guys, anymore. There was a country could vote...

Manuel Lemos: Your voice is cutting a bit so I'm not sure what you were asking.

Arturs Sosins: No, nothing. Let me proceed.

The next class is a PHP jQuery UI MySQL Accordion developed by Neda Divbandi from Iran. This class implements the master table detail table view that could basically retrieve rows from the master table and retrieve more details from a detailed table but based on the ID and generate HTML file to display this data using accordion UI element.

Neda got one downloadable copy of PhpED for this class.

Next one is PHP Encode Form Values class developed by Rochak Chauhan from India. The interesting part of this class is that it not only generates the PHP code but also JavaScript, that the values on the... client side among the PHP class. So that's how it works. That's why it's great.

Rochak got one copy of the Zend Studio for this class.

The next one is PHP IP Sorter. Basically a class that receives an array of addresses and sorts them. It's not a simple sort because IP addresses are usually stored like a string, so you need to divide the strings in different values and then sort separate values to see where the IP address stands.

This class is handy for the useful function if you needed that class. It was developed by Luca Pacchiarotta, and he got one downloadable copy of Komodo IDE for this class.

The last, what I wanted to mention is PHP RAML to HTML class, developed by Mike Stowe from the United States. RAML is a way to disclose the API RAML Markup. The last stage is YAML markup generates an HTML function for the REST API, so you could view this API. That's why it's so neat.

Mike Stowe got one copy of the DWebPro Standard License for this class.

So that's all for me.

Manuel Lemos: On my behalf, I would like to also mention a few other classes starting from this one... PHP Coins Change from Michele Andreoli from Italy. He's one of the Italian developers that has been helping Italy to move ahead, but we'll get there in a moment.

For now, talking about this class. It is interesting. It has sort of an unexpected purpose, but probably there are applications that would make good use of this. Imagine if you have a certain amount of coins of different values and you need to give change to a customer, this class computes the number of coins that you should give to the customer to match the necessary change that you... It is an interesting package.

Michele so far did not pick his prize yet, because there are many packages this month to pick prizes, and the prize-picking took longer than usual, but eventually he will get to his turn.

Let me move on to the next package, which is this PHP i... It should be PHP i18n which means PHP internationalization.

This package is interesting because sometimes when you want to prepare your package, your application to... You need internalizations, if you want to set it for users of different countries, you need to have the application text translated to different languages.

Sometimes, we did not plan it from the beginning so you have to extract the strings that are using your application from your existing code. This package just does that for you. You can't reverse your PHP code files and just extract the strings that need to be translated to internationalize your applications.

For this, Everton da Rosa from Brazil was nominated. He did not yet pick his prize. Probably, he just checked one thing because I think he was not sure if it was this month... not this month... but when it is his turn he can pick his prize.

Going on, let me comment about the remaining that were nominated. One of them is PHP Mass Database Update from Amani from Iran. Amani has developed a package which is meant to do mass updates in values you are using in your database that, for some reason, you changed, and that you need to change all records that you have, add certain values to change the new values.

Another thing that I would like to take the chance to mention is that the recommendation system that has been implemented recently now has a new feature, which is when a package is recommended for a certain purpose, the recommendation is also listed in the page. This is a new feature that was not available before.

In this case, this package was recommended for two purposes, for two recommendation requests. This is useful to see, for users to see if this package has been recommended for certain purposes.

But let's carry on. Another package that I wanted to comment which is called Defterdar is from Adil Ilhan from Turkey. What it can do is to generate change log files from git repositories. It checks the git repository for changes that had been done and the last commits.

And it generates text file in the Markdown format that shows those change logs. So this is very useful if you want to create those change log files automatically, so you don't have to wait to do it later on.

The next package is another package that is for single purpose that what I mentioned before for JavaScript... PHP BIC Validation. In this case, it was implemented in PHP by Roberto Aleman from Venezuela.

It basically does the similar thing that the JavaScript version does, which is to validate the code of a container. Actually, it can do a bit more, which providing a link to a page on which you can verify the container code online. So it's not just validation of the code itself.

Finally, I would like to mention the PHP Store Openings package, which is interesting because it lets the users determine if a store is opened at the current moment, giving the regular store opening times and eventually, the date of holidays.

This package was developed by meivin123 from Germany. Obviously, it's not his real name. It's an alias but that's the way he wants to be identified.

So in terms of Innovation Award nominees, that's all.

PHP Innovation Award Rankings of 2014 (21:33)

Manuel Lemos: Let's see how are the rankings of the Innovation Award of 2014, first by author. Chi Hoang is still leading with a great advance, with 8 packages and 42 points. He is followed by Orazio Principe from Italy with 3 packages and 24 points, then Andoitz Jordan Marmolejo with 3 packages and 16 points, Rochak Chauhan from India with 2 packages and 14 points and tied with Everton da Rosa from Brazil with 2 packages and 14 points, and then followed by several other authors with one or two packages but less points.

By country, things are heating up. As I mentioned, before there was a certain adjustment because Patrick JL Laso is now representing Spain, as he was originally, while Chi Hoang keeps representing France as he has chosen to.

So far, Italy is ahead with 8 packages and 56 points, followed very closely by Iran with 6 packages with 54 points, France with 11 packages and 52 points, Brazil with 7 packages and 39 points, Spain with 7 packages and 38 points, and Unites States with 5 packages and 35 points, Russia with 3 packages and 23 points, India with 4 packages and 22 points, Germany with 3 packages and 16 points, and the United Kingdom with 14 points.

Things are heating up because, so far, we don't know which country is more likely to win because there are several countries that are very close to each other, and things can change quite a bit.

So far, this is considering the nominees of October, so we still have to see the nominees of November and December. The final results, we will know in February, but so far, the things are very, very interesting. We don't know yet who's going to win.

Package Recommendation Requests of November 2014 (24:05)

Manuel Lemos: To make these even more interesting, we are going to mention some of the things that was started a few weeks ago, which is the package recommendations. As I mentioned before, that may help users, authors to be to be nominated for submitting innovative packages. This, we see here in the Featured Requests.

As I was saying, the Featured Requests are packages that were requested by users that has some needs but for which there is no package in the site that addresses those needs. Those that are flagged as featured is that what they requested. So we have here in the Featured Request tab, several requests. There are no package yet to satisfy them. Actually, some have suggestions, but they are not necessarily innovative. They do not necessarily solve the user problem.

For instance, this custom search engine API, in reality, for instance, in this page, I suggested what package to use to send API request via OAuth, but this is not what the user was asking. He was asking Google custom search engine using Google API for that purpose. So it would be a more innovative package if there was a package that could be used specifically to implement this API for the purpose that the user wants.

Then, there are other requests here like a request for a package to manage stocks. And then, there is a user also asking for image gallery that is private, so different from public image galleries, because you have to control the access of the users that can see each gallery.

There is a request for package that can generate reports using the Jasper iReports package, which is a package in Java but it provides the HTTP server from which you can pull the reports. So, very interesting for this user.

There is a user also asking for a calendar of events, using PDO instead of other MySQL extension. Then, there is another user asking for photo voting system which would be like a system to not only upload photos but also to vote on them.

There is another request for handling payments on a local server. This is a more complex request than the user there details, how he wants to work. There is another request for a RESTful Web Service for registration and login and forget password steps for... I supposed he wants an API for that, a Web-based, HTTP Rest-based API for that.

I guess these are all the new packages that are recommendation requests.

Arturs, have you been following these requests? What do you think about these requests? Do you think authors can come with innovative packages for these purposes?

Arturs Sosins: Yeah, definitely. While, of course, it seems most users don't ask for a class that do that, but they're ready to use script. But authors should consider that you should read behind the lines to see maybe not provide how users should use it already to have everything for them, but just provide the functionality and API and let them use it on their own, in their own script.

Manuel Lemos: Yeah, that's true. There are some users that just come here, "I want a package that does all my work."

Arturs Sosins: Yeah, exactly.

Manuel Lemos: "Is there a package that can do all my work, so I can make money without having to work."

Arturs Sosins: Yeah, that's what it would be like.

Manuel Lemos: It's interesting, especially because there are users practically from all the countries coming to the PHPClasses site, and some of them are not able to express themselves very well in English, and they sometimes are not able to explain what they want. But it's pretty clear that sometimes what they want is basically solutions to do all they are being paid for.

I think if I'm not mistaken, there is an instance they say "I want a class," they say "I want a script." They think the script is the magic script that does everything for them.

Arturs Sosins: Exactly.

Manuel Lemos: Very very few users. While I'm talking about that, I would like to also mention the fact that if somebody submits requests that are not very clear of just things that do make much sense, those requests are removed because I think it is important just to keep the requests that are very good quality, at least they are clear, what they want and they can also be useful for others.

One thing that it was not yet implemented, but it will be implemented hopefully soon is that some of these request already matched certain keywords that are being searched in the search page of the site.

When they match keywords, instead of showing the results, I can show them, "Are you looking for a package for this problem?" and show links that already have recommendations. So, instead of they having to express what they want, they see existing requests that have already recommendations, and they have a solution right away. That was the main goal of the system: to make the site more useful for the users and faster as if there is a solution for the problem that they have, they will not ever have to wonder too much.

And this will also avoid the problem of certain requests that are sort of duplicated. There are several requests here already that have been asking for the fastest PHP mailing class. Since that it is the frequently requested purpose, I think once I showed them the recent suggestions, they will not commit those requests over and over again.

Well, there are still other improvements to be implemented. I'm thinking about things that would motivate more authors to submit suggestions not necessarily of their own packages, but they need packages that they had seen from others, because only a few users have been suggesting recommendations.

Arturs, since sometimes you have a great ideas, if you have any idea... or anybody else, not just Arturs... of how to motivate more people to participate in giving suggestions., it would certainly be interesting to share. Anything in mind, or maybe not?

Arturs Sosins: For now, no. Sorry, breaking up still, probably. Can you hear me?

Manuel Lemos: Aw, it's OK, just tell me in the future if you have any ideas.

Arturs Sosins: Yeah.


You need to be a registered user or login to post a comment

1,615,253 PHP developers registered to the PHP Classes site.
Be One of Us!

Login Immediately with your account on:


No comments were submitted yet.

  Blog PHP Classes blog   RSS 1.0 feed RSS 2.0 feed   Blog PHP and JavaScript In...   Post a comment Post a comment   See comments See comments (0)   Trackbacks (0)