Entretien avec Milan Petrovic

Publié: 2022-07-21

Contenu de la publication

  • Salut Milan et merci pour cette interview.
  • Pourriez-vous nous en dire un peu plus sur vous, votre histoire et votre parcours ?
  • Vous êtes probablement le plus connu pour votre plugin GD Star Rating, qui est largement utilisé sur de nombreux blogs WordPress sur Internet.
  • Vous m'avez mentionné à un moment donné que GD Star Rating dépasse 20 000 lignes de code. Comment développez-vous comme monstre?
  • Vous êtes le créateur d'autres plugins bien connus tels que GD Press Tools, GD Simple Widgets et bien d'autres. Lequel est ton préféré? Et pourquoi?
  • Vous avez récemment mis en place le support Premium, où il est possible de vous embaucher pour un tarif horaire (4 heures, 100 euros minimum). Quelle a été votre expérience depuis le lancement ? Et continuerez-vous à offrir ce service ?
  • La discussion sur les entreprises commerciales basées sur WordPress éclate de temps en temps. Quelle est votre position sur ce débat ?
  • Comment voyez-vous l'avenir de WordPress dans son ensemble ?
  • Comment voyez-vous l'avenir des auteurs WordPress et des développeurs de thèmes ?
  • Voyez-vous un avenir pour les auteurs WordPress et les concepteurs de modèles WordPress dans un sens commercial ? Les gens pourraient-ils gagner leur vie en travaillant avec WordPress ?
  • Vous êtes un auteur WordPress expérimenté, qu'est-ce qui pourrait être amélioré selon vous ? D'un point de vue pratique/quotidien, mais aussi du point de vue des développeurs ?
  • Votre collègue, Vladimir Prelovac, a eu la gentillesse de partager quelques astuces dans Entretien avec Vladimir Prelovac, avez-vous des astuces pour les auteurs WordPress que vous aimeriez partager ?
  • Quel type de logiciel utilisez-vous pour le développement ? Vous travaillez sur PC/Mac ? Quel type de logiciel utilisez-vous ? Bloc-notes ?
  • Avez-vous un système de modèles lorsque vous développez des plugins, ou partez-vous de « zéro » pour ainsi dire ?
  • Comment pensez-vous que WordPress est en termes de facilité de développement ? Ses avantages et ses inconvénients ?
  • Merci d'avoir fait cette courte interview, et merci d'avoir partagé vos pensées. Avez-vous un dernier mot que vous voudriez nous laisser?

Cette interview est la troisième d'une série d'entretiens avec des développeurs WordPress exceptionnels. Cette fois, Milan Petrovic a eu la gentillesse de répondre à quelques questions.

Salut Milan et merci pour cette interview.

Bonjour Lars. Merci pour l'invitation.

Pourriez-vous nous en dire un peu plus sur vous, votre histoire et votre parcours ?

milan-petrovic-avatar

J'ai commencé avec Delphi il y a environ 10-11 ans, pour le développement de bureau. En 2002 (je crois) j'avais besoin de faire un site web, et je cherchais une technologie à utiliser, et j'ai trouvé PHP. Cependant, dans le même temps, j'ai remplacé Delphi pour C # dans la première version de MS dot NET Framework.

Depuis 7 ans, je suis à la fois développeur C# et PHP. En 2006, j'ai commencé à travailler pour ILUMNIS, compagnie serbo-canadienne. Ils travaillent principalement avec les outils de développement Microsoft (C#, ASP.NET, MS SQL Server) et utilisent principalement ExtJS pour les applications Web frontales.

Fin 2007, je créais le nouveau site web de l'entreprise et j'avais besoin d'une plate-forme CMS uniquement pour gérer les actualités. J'ai décidé d'utiliser WordPress (la version 2.3 vient de sortir). À cette époque, je développais des choses mineures pour WordPress pendant mon temps libre, mais bientôt les choses ont changé et j'ai publié le premier plugin (GD Pages Navigator). GD Star Rating a suivi l'été dernier.

Pendant environ 8 mois, j'ai occupé deux emplois, et avec plus de projets WordPress, j'ai décidé de quitter Ilumnis. Depuis mars 2009, je travaille en tant qu'indépendant.

Vous êtes probablement le plus connu pour votre plugin GD Star Rating, qui est largement utilisé sur de nombreux blogs WordPress sur Internet.

Oui, GD Star Rating est un plugin très réussi. Quand j'ai commencé à travailler dessus il y a plus d'un an, c'était un plugin très simple fait pour un ami. Il n'y a que peu de plugins d'évaluation pour WP, et un seul d'entre eux était réellement bon et régulièrement mis à jour (WP-Post Ratings de Lester Chan).

Cependant, ce plugin est très limité et j'avais besoin de beaucoup plus de contrôle pour tout, y compris les évaluations des commentaires. De plus, très tôt, de nombreux blogs ont commencé à l'utiliser et à fournir des commentaires, de sorte que le nombre de fonctionnalités augmente avec le temps et continuera de croître. J'ai des plans pour de nombreuses nouvelles fonctionnalités qui mèneront à GD Star Rating 2.0 l'année prochaine.

Vous m'avez mentionné à un moment donné que GD Star Rating dépasse 20 000 lignes de code. Comment développez-vous comme monstre?

Ce nombre est maintenant beaucoup plus élevé. Il comporte 39 000 lignes (y compris CSS et HTML), avec 25 000 lignes de PHP. C'est définitivement beaucoup, mais toujours gérable pour un seul développeur. Le plugin contient environ 500 fichiers et le code est divisé en petits morceaux afin qu'il soit plus facile de trouver ce qui va où.

De plus, je compte sur l'IDE pour garder une trace de tout. La taille du plugin est un problème, et au moins deux fois, jusqu'à présent, j'ai dû réorganiser le code et le rendre plus logique. Lorsque vous prenez en compte toutes les fonctionnalités du plugin, ce n'est pas un trop grand nombre de lignes.

De plus, certaines des fonctionnalités des plugins se sont avérées très complexes à utiliser, donc je prévois également d'ajouter une autre fonctionnalité, appelée Assistant, qui aidera à configurer le plugin en utilisant une procédure de configuration systématique simple, comme le font tous les assistants d'installation. De plus, j'ajouterai une nouvelle visualisation intéressante des votes à l'aide de Google Maps.

New Dev4Press Logo
Nouveau logo Dev4Press

Vous êtes le créateur d'autres plugins bien connus tels que GD Press Tools, GD Simple Widgets et bien d'autres. Lequel est ton préféré? Et pourquoi?

GD Press Tools est mon préféré car il s'agit d'un plugin très inhabituel qui contient plus de 50 outils intégrés, et je l'utilise quotidiennement à des fins de débogage, pour garder le blog propre et bien plus encore. La version Pro sortira bientôt et offrira bien plus, à la fois de nouvelles fonctionnalités et l'expansion des fonctionnalités existantes.

J'aime aussi mentionner le plugin appelé GD Affiliate Center. Ce plugin est toujours en cours de développement, et il faudra encore un mois environ avant la sortie. Je me suis tellement amusé à l'écrire et j'ai expérimenté de nombreuses nouvelles choses pour créer une interface meilleure et plus facile à utiliser. Le plugin est conçu pour gérer les affiliés et leurs bannières et liens promotionnels, offrant des moyens faciles à utiliser pour ajouter des bannières dans le blog, suivre les impressions et les clics, etc.

Vous avez récemment mis en place le support Premium, où il est possible de vous embaucher pour un tarif horaire (4 heures, 100 euros minimum). Quelle a été votre expérience depuis le lancement ? Et continuerez-vous à offrir ce service ?

Le support premium actuel concerne principalement GD Star Rating et je fais au moins une ou deux personnalisations premium de ce type chaque semaine. Certaines choses dans GDSR sont compliquées, et certaines personnes trouvent qu'il est beaucoup plus rapide (et moins cher) de me payer pour personnaliser le thème et intégrer GDSR.

La plupart des utilisateurs de WordPress ne sont pas des développeurs, et certaines fonctionnalités plus complexes qui nécessitent de modifier le thème ne sont pas toujours faciles. Je travaille sur un nouveau site Web, et ce site Web offrira un support premium classique pour GDSR qui comprendra un forum réservé aux utilisateurs premium, un support par e-mail, des didacticiels vidéo et plus encore. Même avec cela, je serai disponible pour des intégrations GDSR plus spécifiques.

La discussion sur les entreprises commerciales basées sur WordPress éclate de temps en temps. Quelle est votre position sur ce débat ?

Le débat autour de la GPL et de WordPress est toujours en cours, mais je n'y vois aucun intérêt.

WordPress est sous licence GPL, et il n'y a plus rien à faire, donc les concepteurs et les développeurs doivent l'accepter et l'utiliser, ou s'ils ne l'aiment pas, passer à une autre plate-forme qui n'est pas sous licence GPL. Même avec GPL, les affaires commerciales sont toujours possibles et vivantes, même avec des thèmes.

De nombreux concepteurs de thèmes (Woothemes, StudioPress, ElegantThemes…) ont adopté la licence GPL et s'en sortent toujours très bien car ils vendent maintenant le support pour leurs produits, et pour que les utilisateurs sachent que le produit pour lequel ils paient est supporté et constamment en développement c'est tres important.

En revanche, les plugins commerciaux pour WordPress sont rares, mais le même principe peut leur être appliqué. Étant donné que je prévois de publier bientôt quelques plugins premium de ce type et que vous avez des plugins premium, il serait bien que WordPress.org reconnaisse cela comme ils l'ont fait avec les thèmes.

Comment voyez-vous l'avenir de WordPress dans son ensemble ?

Je pense que WordPress va dans la bonne direction (pour la plupart). Core est développé avec l'aide et les commentaires de la communauté, et c'est très important. La fusion des projets WP et WPMU annoncée il y a quelques mois est également une bonne chose et facilitera la création et la maintenance de sites Web plus complexes. Avec le nombre d'utilisateurs qui augmente chaque jour, WordPress est désormais la plate-forme CMS à la croissance la plus rapide.

Comment voyez-vous l'avenir des auteurs WordPress et des développeurs de thèmes ?

La bonne chose est que le noyau de WordPress restera simple et que de nombreuses fonctionnalités (certaines même demandées en tant que fonctionnalités de base standard) seront laissées aux auteurs de plugins. Le nombre toujours croissant de designers et de nouvelles entreprises travaillant sur des thèmes WordPress est également un bon signe.

Voyez-vous un avenir pour les auteurs WordPress et les concepteurs de modèles WordPress dans un sens commercial ? Les gens pourraient-ils gagner leur vie en travaillant avec WordPress ?

Définitivement. Je suis freelance, et je travaille uniquement avec et pour WordPress, et je n'ai pas l'intention de basculer vers une autre plateforme. Je reçois plus d'offres de projets que je ne peux en gérer. De nombreuses entreprises passent à WordPress, elles ont toujours besoin de faire des choses spéciales et personnalisées, des plugins, un thème en expansion ou autre chose et il y a beaucoup de travail qui est idéal pour le modèle de freelance. Créer des plugins et des thèmes gratuits est un excellent moyen de commencer et de se forger une réputation qui, à la fin, vous permettra d'obtenir des emplois et des projets payants.

Au cours de la dernière année et demie, j'ai créé une vingtaine de plugins pour divers clients, et certains de ces plugins étaient très complexes et coûteux. Commercialement, WordPress est une excellente plateforme.

Vous êtes un auteur WordPress expérimenté, qu'est-ce qui pourrait être amélioré selon vous ? D'un point de vue pratique/quotidien, mais aussi du point de vue des développeurs ?

Il est trop tard maintenant pour WordPress 2.9, mais WordPress 3.0 doit avoir une nouvelle gestion et une nouvelle interface pour les publications/tags/catégories/taxonomies. L'interface actuelle est bonne pour les petits blogs, mais essayez de gérer un blog avec 10 000 articles avec 20 000 balises et 500 catégories. La réaffectation des messages aux catégories est pénible avec l'interface actuelle. Il existe des plugins pour cela, mais je suis désolé de le dire, aucun d'entre eux n'est bon. Cela doit être résolu dans le noyau de WordPress. Du point de vue du développeur, WordPress 3.0 ne devrait pas prendre en charge PHP4. J'ai récemment eu des problèmes avec GD Star Rating et PHP antérieurs à 4.4.9, et il est très difficile de tester avec un logiciel aussi obsolète et qui n'est plus pris en charge.

De plus, ce serait bien si les développeurs WordPress créent un ensemble de contrôles faciles à utiliser pour créer le côté administration des plugins (pour les grilles, les paramètres et plus encore). À l'heure actuelle, vous devez supprimer les éléments des panneaux par défaut de WordPress.

Votre collègue, Vladimir Prelovac, a eu la gentillesse de partager quelques astuces dans Entretien avec Vladimir Prelovac, avez-vous des astuces pour les auteurs WordPress que vous aimeriez partager ?

Écrivez toujours des plugins en utilisant des classes PHP. Même avec les tâches les plus simples, il est beaucoup plus facile de contrôler le code. Si vos plugins commencent à se développer, il n'y a aucun moyen de garder les fonctions en place, et les classes sont la voie à suivre. Essayez de documenter le code autant que vous le pouvez. J'utilise le programme DoxyGate qui peut rechercher dans le code source et générer des fichiers HTML (ou PDF, CHM) avec votre documentation. DoxyGate peut être intégré dans NetBeans pour une utilisation plus facile.

J'inclus ces fichiers HTML avec tous mes plugins. Il est plus facile pour les utilisateurs finaux de comprendre comment utiliser le plugin, s'ils ont des fonctions documentées dans un fichier facile à lire. Utilisez également SVN ou un autre système de gestion des versions. Et faites des sauvegardes régulières de tout ce que vous faites.

Quel type de logiciel utilisez-vous pour le développement ? Vous travaillez sur PC/Mac ? Quel type de logiciel utilisez-vous ? Bloc-notes ?

J'ai des ordinateurs de bureau et des ordinateurs portables, tous deux sous Windows, et je travaille principalement sur un ordinateur portable (Lenovo SL500). J'utilise NETBeans IDE 6.8. Il est idéal pour PHP, HTML et CSS. De plus, les projets WordPress fonctionnent très bien et NETBeans mappe toutes les fonctions et classes de WordPress, ce qui est très important pour la vitesse et le confort de développement.

J'utilise HeidiSQL et phpMyAdmin pour l'accès à la base de données, Tortoise pour l'accès SVN (NETBeans a également un support SVN intégré), Notepad++ et WinMerge pour diverses tâches. De plus, je garde tous mes projets sur SVN.

Avez-vous un système de modèles lorsque vous développez des plugins, ou partez-vous de « zéro » pour ainsi dire ?

J'utilise quelques systèmes de modèles de plugins, en fonction du plugin que je développe. Les plus complexes sont basés principalement sur la structure GD Star Rating. J'ai une bibliothèque des mêmes classes et fonctions de base que j'utilise dans chaque projet (installation de la base de données, débogage, fonctions pour chaque besoin, téléchargement et manipulation d'images). Il est pénible de repartir de zéro à chaque fois, et de nombreux éléments se répètent dans chaque projet, donc avoir un projet de démarrage est nécessaire.

L'année dernière, j'ai commencé à développer GD Plugin Core, qui était une base pour le plugin qui incluait même un assistant capable de générer un plugin entièrement fonctionnel : vous définissez le nom du plugin et quelques autres choses, et le plugin génère un dossier avec tous les fichiers nécessaires, tous s'étendant classe de base de base. Cependant, ce plugin n'est plus maintenu. Peut-être qu'un jour je reprendrai ce travail.

Comment pensez-vous que WordPress est en termes de facilité de développement ? Ses avantages et ses inconvénients ?

Comparé à Joomla ou Drupal, il est beaucoup plus facile à développer pour WordPress. Cependant, beaucoup de choses ne sont pas si bonnes du point de vue du développeur. Malheureusement, la devise de WordPress : Code Is Poetry ne peut pas être appliquée à WordPress dans son ensemble.

WordPress a trop de fonctions, dont beaucoup font la même chose ; les fonctions utilisent différentes spécifications de paramètres qui peuvent parfois prêter à confusion. Plus de fonctionnalités doivent être dans les classes. Certaines choses ne changeront pas pour conserver la compatibilité avec les anciennes versions des plugins, des thèmes et de WordPress.

Néanmoins, une fois que vous vous êtes habitué à ces choses, elles ne sont pas si mauvaises. Chaque système a des problèmes similaires, et vous ne pouvez pas trouver celui qui est parfait.

Merci d'avoir fait cette courte interview, et merci d'avoir partagé vos pensées. Avez-vous un dernier mot que vous voudriez nous laisser?

Merci pour l'opportunité Lars, ce fut un plaisir.