Sto pensando di approfondire lo sviluppo di Discourse (sia plugin che temi), ma è passato un po’ di tempo da quando ho lavorato con Ruby e, più in generale, anche da quando ho fatto sviluppo web (lavoro ancora nell’ingegneria del software, ma si tratta principalmente di ABAP/SAP in questi giorni). Quindi mi stavo chiedendo quanta conoscenza di Ruby e/o Rails sia richiesta/raccomandata?
La mia ricerca superficiale ha indicato che Programming Ruby 3.3 (Pragmatic Programmers) sarebbe un buon inizio per Ruby, e hanno anche un libro su Rails (Agile Web Develpment with Rails 7, con una nuova versione per Rails 7.2 in arrivo l’anno prossimo).
Ma forse persone con un po’ di esperienza qui possono commentare su cosa hanno usato per mettersi al passo con lo sviluppo di Discourse (e se qualcuno ha letto i libri sopra, sarò lieto di ricevere qualsiasi resoconto sulla loro qualità).
Ho fatto un bel po’ di lavoro sugli script di importazione prima di leggere Programming Ruby. Mi ha aiutato parecchio. Penso che sia anche lo stesso libro di Rails che ho letto. Non penso che possa fare male.
Detto questo, a seconda di cosa stai cercando di fare, puoi arrivare abbastanza lontano semplicemente trovando alcuni esempi da seguire. Puoi usare grep su GitHub - discourse/all-the-plugins e trovare molti esempi.
E capire Rails aiuta sicuramente, ma sapere che puoi chiamare add_to_serializer per aggiungere cose al serializer è qualcosa che non troverai in un libro (o almeno in nessun libro che io conosca).
Grazie! L’importazione è effettivamente una delle prime cose che esaminerò (anche se, fortunatamente, un membro della nostra community si è fatto avanti per supportarmi, quindi non sarò più solo io). Ma a medio termine vorrei anche esaminare più da vicino la creazione di componenti tematici più piccoli o plugin per cose come avere un’opzione per visualizzare anteprime di media esterni o utilizzare automaticamente la vista a griglia quando le persone caricano più immagini (spero che parte di questo finisca nel core, ma ho l’impressione che ci sia molto nella roadmap, quindi potrebbe volerci un po’). E poiché faremo l’auto-hosting, ho avuto l’impressione che non guasti avere un po’ più di conoscenza nella risoluzione dei problemi (almeno allo stesso livello di quella che ho per l’attuale forum basato su PHP).