PHP Classes

PHP and JavaScript Innovation Award Report February 2015 Edition - 2014 Year Winners and November 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: 38

Last month viewers: 4

Categories: PHP Innovation Award, Lately in PHP Podcast

This is the February edition of the Innovation Award podcast hangout recorded by Manuel Lemos and Ernani Joppert to comment about the Winners of the Innovation Award Year Edition of 2014.

In the recording they show the nice trophies and elePHPant plush toys that all winners will receive.

They also commented on 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 November 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 winners of the year of 2014.

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

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

PHP Innovation Award Final Winners of 2014 (0:20)

Award Winners by Author of 2014

1Chi HoangFrance948
2wapmorganRussian Federation325
3Orazio PrincipeItaly324
4pooya sabramoozIran222
4Jacob FoggUnited States322
6Patrick Joseluis LasoSpain220
7ettore morettiItaly219
8Andoitz Jordan MarmolejoSpain316
9Everton da RosaBrazil214
9Er. Rochak ChauhanIndia214

Award Winners by Country of 2014

4United StatesUnited States854
7Russian FederationRussian Federation539
9United KingdomUnited Kingdom317

JavaScript Innovation Award Final of 2014 (5:20)

Award Winners by Author of 2014

1Thomas BjörkSweden415
2David CastilloMexico213
3Pierre FAUQUEFrance312
4JImmy BoCanada411
5Andoitz Jordan MarmolejoSpain210
6Emmanuel PodvinFrance18
7Andras TothHungary27
8John DiazColombia15
8Jakub KrolPoland15

Award Winners by Country of 2014

8United StatesUnited States36

JavaScript Innovation Award Nominees of November 2014 (6:50)

Winners of November of 2014

Barcode and qr code scanner jQuery plugin
Andras TothHungary33.33%4One downloadable e-book of choice by O'Reilly
1JavaScript CSS Generator
Generate CSS styles dynamically
JImmy BoCanada33.33%4One book of choice by Packt
3JavaScript Initial Avatar Creator
Render an avatar image with the user initials
Arturs SosinsLatvia16.67%2
Scroll page when clicking an anchor link
Mehdi SafavyIran16.67%2One year server license IP to country, region, city, latitude, longitude, ZIP code, time zone, area code database

PHP Innovation Award Nominees of November 2014 (14:51)

1PHP Avatar Generator
Creator for avatar images from parts of user faces
pooya sabramoozIran26.32%11One downloadable e-book of choice by O'Reilly
2Multisources Search Engine
Search data on MySQL, XML, INI or flat files
ettore morettiItaly21.05%10One copy of the Zend Studio
3Tradukoj PHP Po File Generator
Convert locale CSV file to PO and send to Tradukoj
Patrick Joseluis LasoSpain13.16%9PhpStorm IDE personal permanent license
Convert DOCX, DOC, PDF to plain text
Aditya SarkarIndia13.16%9One copy of VS.PHP
5PHP MySQLDump Table Chunks
Dump MySQL tables in chunks of limited size
Ovidiu LeseiRomania5.26%7One downloadable copy of PhpED Professional
5PHP Time Parse to Timestamp
Parse time in natural language and multiple idioms
wapmorganRussian Federation5.26%7One year server license IP to country, region, city, latitude, longitude, ZIP code, time zone, area code database
5PHP Database Sync
Synchronize tables of different databases with PDO
Jacob FoggUnited States5.26%7One downloadable copy of Komodo IDE
5PHP Content Security Policy generator
Generate CSP headers to prevent security attacks
Tom PostmaThe Netherlands5.26%7One book of choice by Packt
9PHP Split Number
Split a long number into an array of smaller parts
Anthony RogersUnited Kingdom2.63%3One subscription to the PDF edition of the PHP Architect magazine
Read binary files sent in SOAP requests using MTOM
Cleidson Dias do NascimentoBrazil2.63%3One downloadable copy of CodeLobster Professional
11PHP MySQL User Management
List, add, modify and remove MySQL server accounts
Maik GreubelGermany<1.00%1


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: 28MB Listeners: 1023

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


PHP Innovation Award Final Winners of 2014 (0:20)

Manuel Lemos: Anyway, now, we are reaching the end of the podcast when it's time to start talking about the Innovation Award aspects of the past month. But this time, we are going to start talking first of the Innovation Award winners of this year.

Let me share the screen here just to talk about the winners. In 2014, we had many, many contestants. We received over 100 innovative packages, but the winner is Chi Hoang from France. Actually, he's not originally from France. France is where he lives now. He sent nine packages. He had sent many, many innovative packages and for that he has won.

Ernani Joppert: It is impressive to have one person submit nine packages within the year, and those packages weren't just simple things, contains a lot of nice work here. I guess his efforts were awesome. One point is he's living in France now, so he benefited France on the overall ranking. But, yup, I would say nice achievement. Kudos to Chi Hoang.

Manuel Lemos: And for that, he's going to win this nice trophy. Let me see if you are seeing it like I do. This is a trophy for the Innovation Award winners. And you can see there, there is the name here, the year, and he is the winner of the PHP Innovation Award.

Other than that, he is going to also to get one of those ElePHPants, which is a symbolic prize that winners get from the site for being Innovation Award winners.

I tried to invite him to the podcast, but it seems he had a problem with his notebook, so he could not participate because he didn't have another computer with a webcam. It's a shame, but I would still try to interview him in a separate program or maybe by email, so there will be a separate post to talk about this.

Other than that...

Ernani Joppert: It would be awesome to have him here, right? It would be awesome.

Manuel Lemos: Right. Well, not now, but maybe later if he can manage to fix his computer. Let's see how it goes.

Other than that, there was also for this year, for the first time, there was the Innovation Award Championship by Country, which is to give an award to the winners of the country that accumulate more points throughout the year.

So, in this case, the country that accumulated more points was Italy, with 10 packages and 75 points.

Congratulations to everybody from Italy. There are seven winners. I have at least here Orazio Principe, Ettore Moretti, Michele Locati, Luca Pacchiarotta, Enrico Anello, Michele Andreoli and then somebody who calls himself just jstar88. I don't know what his real name actually.

All these winners were already contacted because they also will be getting one of these trophies. They are very similar. Let me show them here. OK, you see them. There's the winner. This is the special trophy for the Innovation Award winners by country. So they will get one of these by mail. Here's the symbol of PHPClasses here, and then the symbol of the award, and I hope that they will get these awards by mail soon.

I'm still waiting for some of them to send me their postal addresses. They also will win one of those ElePHPants. Each of them will win one elePHant. This trophy has just arrived today. Soon, they will get them by postal mail.

JavaScript Innovation Award Final Winners of 2014 (5:20)

Manuel Lemos: So now, for JavaScript Innovation Award, we also have the same award. I could not fit all the trophies, but they also have a trophy. In this Thomas Björk from Sweden, he won the Innovation Award so he's going to get one of these.

Then, there were four winners that won the Innovation Award by countries. In this case, it was France that won. So they will get a trophy like this.

Ernani Joppert: And of course, they were benefited by Chi Hoang which was the major contributor.

Manuel Lemos: Yes, Chi Hoang also participated in the JSClasses, so kudos again for him. In this case, he helped France to win. I think probably France would win. There are not many contributors in JSClasses as there are in PHPClasses.

Anyway, this is just to mention, I will post separate articles just to talk about these awards, and if I can record a separate interviews with the winners, I'll try to do it. Or else try they have an interview by email.

JavaScript Innovation Award Nominees of November 2014 (6:50)

Manuel Lemos: Now, let's talk about the actual Innovation Award nominees that we've talking in the past months. In this case, we are going to talk about first, the JavaScript Innovation Award. Let's talk about the winners of November.

Let me increase the font here. OK, so Ernani, which ones would you like to comment this month of November.

Ernani Joppert: Right. I have handpicked some players on the PHPClasses. So let me share my screen, and I'll let you guys know.

Manuel Lemos: No, first, the JSClasses.

Ernani Joppert: OK, so the JSClasses would be two components. Apparently, this one haven't increased the font, so I'm zooming in.

It's from Jimmy Bo from Canada. The name of the class is JavaScript CSS Generator. It is used to generate CSS styles dynamically as the description tells.

And to me, this is a nice component because if I'm implementing solution given that user is logged in, he can customize the looks of the Web interface that he is actually logged into, he can save that preferences by manipulating colors, font sizes, et cetera, et cetera that suits him better. And that gives customization, so it's a nice component.

It saves time to implement such thing and actually to test it. It's a way to go for Jimmy Bo.

The other component...

Manuel Lemos: The prize?

Ernani Joppert: Yeah, I just forgot. By the way, Jimmy has won as far as I can tell a prize. Every Innovation Award winner can pick a specific prize, and he chose one book by choice of Packt Publishing.

So I guess he will even increase his knowledge on a technical subject. Unfortunately, I can tell which book he picked on, but hopefully CSS-related, so we can have even better, even more nice component for CSS from him.

Moving to the next one, this one is a WebCodeCam. It's called WebcodeCam. It's a barcode and QR code scanner, jQuery plugin. Basically, this is a Canvas-based plugin, so it can take Canvas elements and make it to show the image of the webcam. Then, it can detect and scan values of a barcode or a QR code. So it can be used to scan invoices, barcodes, product codes.

That is a nice component to see going on. I'm not sure if it works and performs really great because this is early adoption, I would say, but it's a nice component to see going on. I'm sure that it can be improved later. I mean, it can be used within the demand that you... If your website is running HTML 5, it can be used to scan barcodes if you have that necessity within your project.

So way to go to Andras Toth. I'm not sure if I pronounced his name correctly, but he's from Hungary. And by the way, I've never seen somebody from Hungary before here, so it's nice to see Hungary here. So it's nice to see that at least two winners from Hungary, as I can see on the page. It's nice to see everybody from all around the world contributing as well to JSClasses.

By the way, Andras, he picked one downloadable e-book of choice of O'Reilly. Unfortunately, I don't know which book he handpicked, but hopefully it is HTML5-related and Canvas-based, so he can even contribute to more components within the JSClasses website.

Manuel Lemos: Well, on my behalf, I would like also to comment a couple of components.

Let me start first the year with this JavaScript Initial Avatar Creator, which is a package from Arturs Sosins from Latvia. Unfortunately, Arturs who is usually been hosting this podcast too, but he had a strong cold and he could not make it. Let's see if he can make it for the JavaScript Hangout soon. I wish him well.

But, anyway, he submitted an interesting package that creates avatars from the initials of the names of somebody. He takes the name of somebody and creates pictures with those initials. It's simple but effective. For instance, you have a site on which you wanted to show an image that represents the user and user has not provided an image, you can use an avatar that is made of his initials.

So kudos for his contribution. In this case, he did not pick a prize.

So next nominee, it's Mehdi Safavy from Iran. He contributed a package named FlyMe and this one is to scroll smoothly. For instance, when you have a link that is an anchor to another section of the page, you can click on that link and instead of jumping directly to there, it will scroll smoothly as if it was a fly flying to that position. So I think it is quite neat.

Ernani Joppert: I think I've seen some websites using parallax scrolling, which I'm not sure if that is actually the effect.

Manuel Lemos: No, that's...

Ernani Joppert: Yeah, because parallax mimics... it mixes 3D. It has sort of a depth perception thing. But, actually, the parallax scrolling may use a smooth scroll component which this can be of help, right?

Manuel Lemos: Right.

Ernani Joppert: So maybe combined with the parallax class, this can be evolved into another component.

Manuel Lemos: Yeah, in the case, it is just to scroll pages to the right position, so it is a simple thing, not like parallax that you need to have multiple depths of backgrounds and foreground playing. I think there was a class ready for parallax scrolling. This one its just for a simple thing. Kudos to Mehdi Safavy for his contribution.

PHP Innovation Award Nominees of November 2014 (14:51)

Manuel Lemos: Now, we are going to move on to the Innovation Award winners of November but this time, for the PHP Classes site. Arturs, I mean, Ernani. I've been so used to ask Arturs to comment on packages like this month that I even confuse it.

Ernani, which ones would you like to comment?

Ernani Joppert: Yeah, I've handpicked some of them in order of preference and I will start commenting. The name of the component is PHP Avatar Generator. It is a creator of avatar images from parts of users' faces.

So basically, you can pick a model of your mustache or your eyes or your mouth. I'm not sure if it has a head shape, but it's actually a good solution when you don't want to have pictures of users looking on your website, so you can give another type to that user.

The creator of this component is Pooya Sabramooz. Hopefully, I've mentioned his name correctly. He's from Iran. Congratulations to him, and by winning this contest... I'm not sure if he was the winner.

Manuel Lemos: Yes.

Ernani Joppert: But, yeah, he was the November 2014 winner. So he got one downloadable e-book of choice by O'Reilly. It seems O'Reilly is a favorite among both JSClasses site and PHPClasses, huh? It's nice to see that O'Reilly is a favorite here.

Manuel Lemos: Yeah, many users like O'Reilly books.

Ernani Joppert: Yup. It's nice to see that.

So moving forward, I've liked to comment this specific class, because it does a lot of hassle free things, it does dump table in chunks. So whenever you have the need to compact a database table into specific chunks of bytes, you can use this component to do a table dump of MySQL.

I've been using MySQL in many, many years and I'm sure that eventually I will need such components. So congratulations to the author. His name is Ovidiu Lesei. Hopefully, I mentioned his name correctly. He's from Romania. I like to see people from Romania here. I don't see much of them here, but I'm sure that Romania is a strong country in PHP Classes.

So the prize was one downloadable copy of PHP Editor Professional. So he may be using a Windows version, probably. It's nice to see Windows developers as well on the PHP Classes, right?

Manuel Lemos: Yeah.

Ernani Joppert: Because I think PhpED is Windows-based IDE.

Manuel Lemos: Yes, I think there is only Windows version for PHP IDE. Yeah, and I've been using Php IDE, the earliest version, so I'm curious now to see which features does it have. It's nice to see that as a prize on your website. It makes me curious. I'll even leave the link here to take a look later. Although I don't use Windows. You know, sometimes, you have those old-fashioned curiosities.

But then, let's move forward to the next class that I really like. It's the Multisources Search Engine. He mentioned if within your web site, you have lots of data sources, such as MySQL, XML, INI or flat files and you need to perform a search. Imagine you're dumping a library database from a specific place and they have those legacy files that you need to search for and implement a quick solution on your website.

You can benefit from this component, which basically can provide you search facilities for MySQL databases, XML files, INI files, flat files, text files, TXT files, and database INI or even flat files.

I'm curious how he does encoding handling on character searches, or if he does convert those files to UTF. I'm not sure if it has multi-language support or if it assumes that those files are UTF8-based. But it's nice to see a solution.

And it can use words like LIKE, or LEVENSHTEIN or SOUNDEX functions, which is even a benefit, a value-add to this solution. I'm not sure if he does it purely in PHP or not, but LIKE, LEVENSHTEIN or SOUNDEX functions are MySQL functions as far as I recall.

Manuel Lemos: Yeah, that's the part when he searches on databases. So for other types of searches, he doesn't use that.

Ernani Joppert: Yeah, but he says here, "For database, INI and flat files, the matching of the search keywords..."

Manuel Lemos: Oh, yeah, right.

Ernani Joppert: "... can be by equality, contained words using LIKE, or similarity with the LEVENSHTEIN or SOUNDEX." So hopefully...

Manuel Lemos: Yeah, but in PHP, those functions exist in PHP, too.

Ernani Joppert: OK, OK. Yeah, I haven't seen those. I haven't done so much similarity functions, searches, et cetera. So I wasn't aware about that, but it's nice to see that he implemented such solution.

Congratulations. The author is Ettore Moretti. He's from Italy, which is the winner of these components. And he's from Italy, which is the winner of the whole ranking. So it's nice to see Italy getting strong in PHP Classes.

And I'll hand you over to you, so when I come back I'll comment on the next two components. Please go ahead, Manuel.

Manuel Lemos: OK, on my behalf, I would also to comment a few components. Let me share the screen here.

First, I'll start by this one that is called PHP Database Sync. Basically, this is a package that can synchronize tables of different databases, but this one specifically uses PDO.

There are many packages to synchronize databases, but this one is sort of database agnostic so it can work with different database, not just databases like those that are more frequently used like MySQL, which in the case is...

There was also a request in the package request section that ask for database class that would work with other databases, not just between MySQL databases. It could be mixed database types.

This one was developed by Jacob Fogg from the United States, and for this he picked a prize which is a copy of the Komodo IDE.

Next that I would like to comment is another package that was also requested. This one is PHP MySQL User Management by Maik Greubel from Germany. There was a user also requested a package that would be for managing MySQL user accounts.

It's not managing records of any users. It's actually the users that have access to MySQL databases. So this package can do many operations, like listing, editing, modifying, removing MySQL users from the actual user accounts in the MySQL database server.

So congratulations for Maik Greubel, and for this he picked... Actually, he did not pick a prize, sorry.

Moving on to the next package, PHP Time Parse to Timestamp is a package developed by wapmorgan from Russia. What this class does is to take dates in natural language and convert them to timestamps.

There were actually classes. I think you can do that with PHP but only for English, so this package goes farther because it supports different language, like Russian, English, French, German, Chinese and Spanish.

So congratulations to wapmorgan for his contribution, and this is very interesting. For that he picked a prize, which is one license of the IP to country database, that is provided by IP2Location.

Ernani Joppert: Which is a huge thing when you're building analytic-based applications. It really helps to track down visitors coming to your website.

Manuel Lemos: Yes, it is interesting that several authors that also picked that prize. So it is useful for them in their products.

So the next package that I wanted to comment is PHP Content Security Policy Generator, which is a package, in this case, developed by Tom Postma from The Netherlands that can generate headers, I mean HTTP headers that define security policies that your browser will comply.

This is very in-depth security topic. But if you are onto security, and I'm sure you have read about what should be your security, you should take a look at components like this that help to prevent certain types of security attacks.

And for this Tom picked a prize, which in this case was a book of choice by Packt.

Another package that I wanted to comment in this page is PHP Split Number. So it takes a long number with many digits, and it splits in an array of smaller parts according to certain rules that it defines. This is a sort of unusual package that you got here. For that, it was considered innovative.

Kudos to Anthony Rogers from the United Kingdom that submitted this package. For that, he picked a subscription of the PHP Architect magazine.

Finally, my last package that I want to comment is one that's also unusual. It's PHP MTOM SOAP Server, which is basically a specification that is part of the SOAP specification for transferring binary data over the SOAP requests.

SOAP requests, as you may know, they are made of XML. In this case, it is able to extract binary data that uses this MTOM recommendation. So it decodes that message from the binary data, from the SOAP request, so it can be used, for instance, as a file.

So congratulations to Cleidson Dias from Brazil for this submission, and for that, he picked one copy of CodeLobster Professional IDE.

On my part, I commented all. I think Ernani, you were about also to comment a couple of packages, right?

Ernani Joppert: Yes. I have two more packages to comment on. I was just looking at PhpED, the editor, and they have both Linux and Mac OS X capabilities by using Wine.

Manuel Lemos: Oh, I see. Its similarity.

Ernani Joppert: Yeah, it's not the best way to emulate your IDE, but if you're like me missing out the Windows field sometimes, you can use that. I'll give it a try, and maybe on the next podcast which I'm here, I'll comment back on.

Now, moving forward to the two packages that I really like. It's the package that it's called Tradukoj PHP PO File Generator. So it converts locale CSV file to PO file and send it to Tradukoj. I'm not sure about, but I think it's a translation repository as the user explains here, but it can be used by any applications using gettext libraries in PHP to benefit from translation files. So if you're building a multi-locale based application, that is a nice component to look around.

The author is Patrick Joseluis Laso from Spain. I guess Spain was a huge competitor in the PHPClasses country ranking. It's nice to see...

Manuel Lemos: There are several countries that did very well, not just Italy that won, but several others.

Ernani Joppert: If you began the prizes for countries, the ranking for countries, Spain has caught up a lot.

Manuel Lemos: Yes, Spain went to the fifth place. They did not win because the other countries did better, like United States, France, Iran and Italy that won. But they did well. Fifth is still a great place, and I hope this year already they continue to submit great packages, so they can compete for the Innovation Award winner by country.

Ernani Joppert: They might. May I say now then the next one, which is the last one. Oh, by the way... Yeah, I forgot the prize. Let me just recall on that prize thing. I just closed my tab, so I'll have to reopen it. As far as I recall he got... Oh, wait.

Manuel Lemos: PHP, you need to scroll.

Ernani Joppert: Yeah, the PhpStorm which is one IDE which I love about, and they have Mac support as well. So, yeah, kudos to him. He is now the proud owner of PhpStorm, which is really, really nice IDE. I guess it's based on IntelliJ IDE or something like that.

Manuel Lemos: Yeah, it's from the family of similar tools.

Ernani Joppert: To JetBrains, right?

Manuel Lemos: Right.

Ernani Joppert: Which is now Android Studio, which is something I have been involved with a lot these days. It's now the official IDE for Android, so it's all based on JetBrains IDE. So it's nice to see if you're programming to Android and PHP altogether, you can benefit from PHPStorm. It's a nice user experience.

Now, the last one, which is PHP DOC DOCX PDF to Text Converter. So if you have a Word File, both old versions of the DOC formats or the DOCX, which is the newest format of a Word file or a PDF file, this library can help you extract the text from those files.

So imagine you're scanning for files, and you're looking for specific word matches, and you have a set of files to look for. Imagine you're searching for a resume database and you're looking for the particular name of a person, you can benefit from this component, which can be a huge value-add on your webpage.

The author of this component is Aditya Sarkar. So I'll say it again, Aditya Sarkar, from India. India is a long-time country here in PHPClasses. I haven't seen much from India lately, but it's nice to see that one person won. Am I being not fair, or am I being fair?

Manuel Lemos: No, India always have many nominees. Actually, they did rank well. They ranked in eighth with five packages but other countries did better, so it's not that they did not do well. Once you're in a competition, everybody tries to do better. Let's see if India also can do better in 2015.

Ernani Joppert: The prize that he picked up of his choice was an VS.PHP which is a component for Visual Studio, so he's a Windows user and he likes Visual Studio apparently.


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

1,609,421 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)