Blog post par l’auteur invité Joel Levy, un développeur 4D chez Sweetwater :
4D est le pouls de Sweetwater Sound. Notre application interconnecte harmonieusement les divers besoins de plus de 700 utilisateurs simultanés. Nous sommes toujours à la recherche de nouveaux développeurs pour répondre aux besoins d’une entreprise en constante croissance. Voici un aperçu des stratégies que Sweetwater utilise pour accueillir les nouveaux développeurs sur la plateforme 4D.
Stratégies d’embauche
La communauté 4D est riche en talents dans un large éventail de domaines d’application, mais la taille de la communauté de développement n’augmente pas rapidement. De plus, la communauté des développeurs est plus âgée et tend à être plus concentrée sur les côtes des États-Unis. Il est donc difficile d’inciter des développeurs établis et enracinés dans leur communauté à s’installer dans le Midwest.
C’est pour ces raisons que nous essayons généralement d’embaucher des développeurs de logiciels professionnels au sein de la communauté de Fort Wayne. Nous recherchons aussi bien des diplômés en informatique fraîchement sortis de l’université que des développeurs expérimentés à la recherche d’un changement de carrière. Le langage de programmation 4D est facilement appréhendé par toutes les générations de développeurs grâce à ORDA, à la modernisation globale du langage et à l’expansion de la communauté des développeurs 4D. Les nouveaux talents apportent des idées novatrices et des approches créatives dont nous bénéficions tous.
Documentation et autoformation
Comme notre base de code principale a 30 ans, une connaissance sérieuse de l’histoire de 4D est nécessaire. Pour cela, l’apprentissage de la plateforme et du langage de programmation commence par un peu de lecture. « Programming the 4th Dimension » de David Adams et Dan Beckett (publié à la fin des années 90) explique de manière concluante les concepts du moteur de base de données 4D. La partie auto-formation de la documentation 4D est essentielle au processus d’apprentissage du langage de programmation. Les vidéos sont l’outil idéal pour permettre aux nouveaux développeurs d’apprendre sans perdre de temps avec les autres développeurs ou la direction. Un document interne intitulé « STYLE, STANDARDS, PROCEDURE et POLITIQUE » est un excellent outil pour compléter les vidéos. Il a été rédigé par le responsable de l’application Sweetwater 4D et de ses développeurs, et membre connu de la communauté 4D, Jeff Kain. Ce document guide l’utilisateur dans la configuration de 4D, l’installation des macros, les conventions de nommage, les pratiques en matière de commentaires et d’en-têtes, les normes de l’interface utilisateur et bien d’autres choses encore.
Application Contact Manager
Une fois les tutoriels terminés, nous demandons au développeur de démarrer une nouvelle base de données et de créer une application de base de « Gestionnaire de contacts ». Nous prévoyons normalement 2 à 3 jours ouvrables pour travailler sur ce projet. Les exigences comprennent :
- Implémenter au moins une table avec des champs
- Implémenter une boîte de liste*.
- Avoir un formulaire de saisie de données (souvent le formulaire par défaut de la table de saisie)
- être capable d’importer des données à partir d’un fichier .csv dans l’application.
- Recherche et tri
- Capacité d’impression de base
- Intégrer avec un service web**
* Les boîtes de liste apparaissent partout dans notre application, sous toutes les formes et dans toutes les tailles, contrôlées par diverses sources de données. Il est important de veiller à ce que les nouveaux développeurs soient exposés aux listes de sélection, de tableaux et de collections pour améliorer notre application de production. Nous avons constaté que les nouveaux développeurs ont souvent tendance à utiliser des boîtes de liste basées sur des collections/objets dans leurs applications de gestion des contacts.
**La partie service web s’est avérée être la partie la plus attrayante du processus. Dans le passé, nous avons suggéré des services comme la validation d’adresse ou la recherche de code postal. Récemment, nos stagiaires ont mis en œuvre une API Google Maps avec une zone web 4D. Le processus s’est déroulé sans heurts et a rendu leurs projets beaucoup plus professionnels. Nous mettons chaque développeur au défi de faire preuve de créativité, en particulier lors de la mise en œuvre de cette partie de l’application Contact Manager. Il existe une abondance d’API RESTful utiles qui peuvent être facilement mises en œuvre dans 4D avec peu d’efforts et un impact important.
Leçons apprises – Nouvelles fonctionnalités et revues de code
La programmation en parallèle des tutoriels vidéo est une bonne occasion de suggérer de nouvelles fonctionnalités de 4D qui ne sont peut-être pas couvertes par les tutoriels vidéo actuels (collections, objets, ORDA). La structure de la documentation offre une bonne occasion d’effectuer des revues de code informelles qui aident à démontrer les techniques et les normes notées dans notre guide de style. Cela permet de s’assurer que les nouveaux développeurs ne développent pas seulement un bon code, mais qu’ils utilisent également de bonnes pratiques de programmation.
conclusion
La documentation 4D fournit une pléthore de documents, de vidéos et de tutoriels qui permettent à un nouveau développeur de créer une application 4D en quelques minutes. Ces outils, combinés à la documentation interne, aux projets pratiques ciblés et aux revues de code informelles avec d’autres développeurs, font que nous pouvons généralement intégrer les nouveaux développeurs dans notre application de production moins d’une semaine après leur premier jour.
Je pense que je parle au nom de tous les membres de Sweetwater lorsque je dis que nous sommes ravis d’être en mesure de présenter la plateforme 4D à de nombreux jeunes professionnels. Cela n’aide pas seulement notre application, mais toute la communauté 4D.