Post del blog dell’autore ospite Joel Levy, sviluppatore 4D presso Sweetwater:
4D è il cuore pulsante di Sweetwater Sound. La nostra applicazione interconnette armoniosamente le diverse esigenze di oltre 700 utenti contemporanei. Siamo sempre alla ricerca di nuovi sviluppatori per soddisfare le esigenze di un’azienda in costante crescita. Ecco un’analisi delle strategie utilizzate da Sweetwater per inserire nuovi sviluppatori nella piattaforma 4D.
Strategie di assunzione
La comunità 4D è ricca di talenti in diverse aree applicative, ma le dimensioni della comunità di sviluppatori non sono in rapida espansione. Inoltre, la comunità di sviluppatori è più vecchia e tende a concentrarsi maggiormente sulle coste degli Stati Uniti. Per questo motivo è difficile che sviluppatori affermati e radicati nella loro comunità si trasferiscano nel Midwest.
È per questi motivi che di solito cerchiamo di assumere sviluppatori di software professionisti all’interno della comunità di Fort Wayne. Cerchiamo in egual misura sia laureati in informatica appena usciti dal college, sia sviluppatori esperti in cerca di un cambiamento di carriera. Il linguaggio di programmazione 4D è facilmente accessibile a tutte le generazioni di sviluppatori grazie a ORDA, alla modernizzazione generale del linguaggio e all’espansione della comunità di sviluppatori 4D. I nuovi talenti portano idee innovative e approcci creativi che vanno a vantaggio di tutti.
Documentazione e autoformazione
Poiché la nostra base di codice principale ha 30 anni, è necessaria una conoscenza approfondita della storia di 4D. Per questo, l’apprendimento della piattaforma e del linguaggio di programmazione inizia con un po’ di letture. “Programming the 4th Dimension” di David Adams e Dan Beckett (pubblicato alla fine degli anni ’90) spiega in modo definitivo i concetti del motore di database 4D. La parte di autoformazione della documentazione 4D è fondamentale per il processo di apprendimento del linguaggio di programmazione. I video sono lo strumento perfetto per far imparare i nuovi sviluppatori senza sottrarre tempo agli altri sviluppatori o al management. Un ottimo strumento per integrare i video è un documento interno chiamato “STILE, STANDARD, PROCEDURA e POLITICA”. È stato scritto dal responsabile dell’applicazione 4D di Sweetwater e dei suoi sviluppatori, nonché noto membro della comunità 4D, Jeff Kain. Questo documento guida l’utente nella configurazione di 4D, nell’installazione delle macro, nelle convenzioni di denominazione, nelle pratiche di commento e intestazione, negli standard dell’interfaccia utente e in molto altro ancora.
Applicazione Contact Manager
Una volta completate le esercitazioni, chiediamo allo sviluppatore di avviare un nuovo database e di creare un’applicazione “Contact Manager” di base. In genere, per lavorare su questo progetto, sono necessari 2-3 giorni lavorativi. I requisiti includono:
- Implementare almeno una tabella con campi
- implementare una casella di riepilogo*
- Avere un modulo di inserimento dati (spesso il modulo predefinito Input table)
- Essere in grado di importare i dati da un file .csv all’interno dell’applicazione.
- Ricerca e ordinamento
- Capacità di stampa di base
- Integrazione con un servizio web**
* Le caselle di riepilogo sono presenti in tutte le nostre applicazioni, in tutte le forme e dimensioni, controllate da varie fonti di dati. Assicurarsi che i nuovi sviluppatori siano esposti a caselle di selezione, array e raccolte è importante per il processo di miglioramento della nostra applicazione di produzione. Abbiamo riscontrato che i nuovi sviluppatori spesso si orientano verso caselle di riepilogo basate su collezioni/oggetti nelle loro applicazioni di Contact Manager.
**La parte del servizio web si è rivelata la più interessante del processo. In passato, abbiamo suggerito servizi come la convalida dell’indirizzo o la ricerca del codice postale. Recentemente, i nostri stagisti hanno implementato un’API di Google Maps con un’area web 4D. Il processo è stato perfetto e ha reso i loro progetti molto più professionali. Sfidiamo ogni sviluppatore a essere creativo, in particolare quando implementa questa parte dell’applicazione Contact Manager. C’è un’abbondanza di utili API RESTful che possono essere facilmente implementate in 4D con poco sforzo e grande impatto.
Lezioni apprese – Nuove funzionalità e revisione del codice
La programmazione accanto alle esercitazioni video offre una buona opportunità per suggerire nuove funzionalità di 4D che potrebbero non essere coperte dalle esercitazioni video attuali (collezioni, oggetti, ORDA). La struttura dei documenti offre una buona opportunità per eseguire revisioni informali del codice che aiutano a dimostrare le tecniche e gli standard indicati nella nostra Guida allo stile. In questo modo si garantisce che i nuovi sviluppatori non solo sviluppino un buon codice, ma utilizzino anche buone pratiche di programmazione.
conclusione
La documentazione di 4D fornisce una pletora di documenti, video ed esercitazioni che aiutano un nuovo sviluppatore a creare un’applicazione 4D in pochi minuti. Questi strumenti, insieme alla documentazione interna, ai progetti pratici mirati e alle revisioni informali del codice con altri sviluppatori, ci permettono di far entrare i nuovi sviluppatori nella nostra applicazione di produzione dopo meno di una settimana dal loro primo giorno.
Credo di parlare a nome di tutti noi di Sweetwater quando dico che siamo entusiasti di essere in grado di introdurre molti giovani professionisti alla piattaforma 4D. Questo non aiuta solo la nostra applicazione, ma l’intera comunità 4D.