Da un progetto Hackathon a un framework open source di successo: Vladimir Kharlampidi, uno sviluppatore front-end, ha condiviso la sua esperienza di lavoro su Framework7
Pubblicato: 2023-07-07Framework7 è un progetto che ha reso la vita molto più facile a molti sviluppatori web, ma di cui per ora non si parla ancora abbastanza.
Framework7 è uno strumento intuitivo e di facile utilizzo per la creazione di varie applicazioni mobili, basate su HTML, CSS e JavaScript. Nonostante la sua unicità e rilevanza, il progetto è disponibile in modo completamente gratuito. La comunità degli sviluppatori web è sicura che il progetto non abbia abbastanza pubblicità. Il maggior numero possibile di specialisti dovrebbe conoscere Framework7.
Su Framework7 vengono creati numerosi siti Web, applicazioni mobili di aziende come Wappler, Thorium Builder, WFM Buddy e applicazioni governative.
Framework7 non è l'unico progetto noto lanciato da Vladimir Hardampidi. Lo sviluppatore è anche conosciuto come il creatore dello slider Swiper, che è uno strumento per scorrere le immagini, il cosiddetto “carosello di immagini”.
Prima di lavorare su progetti Open Source (Open Source è un software con un codice primario aperto, che è disponibile per modifiche eseguite da terze parti senza violare i diritti d'autore), Vladimir ha lavorato come sviluppatore front-end in molte aziende diverse, come: ADV, Intern Avenue, FindersCrowd, CodersRank e Optimonk. Ha realizzato molti progetti per i seguenti noti marchi: Disney, Microsoft, McDonalds, Mercedes, Panasonic, ecc.
Oggi parleremo con Vladimir Kharlampidi di come è stato creato il progetto e quali vantaggi e significato ha per l'industria in generale.
1. Hai 13 anni di esperienza nell'Open Source e nello sviluppo web, e questo è il tuo lavoro principale. Allo stesso tempo, lo sviluppo Open Source rimane un hobby per molte persone. Come sei riuscito a passare dal freelance al lavoro a tempo pieno sui tuoi progetti?
Fin dall'inizio, sono stato ispirato nella creazione di prodotti universali, che potessero facilitare il lavoro di molti altri sviluppatori. E non appena i miei progetti hanno iniziato a guadagnare popolarità, è stato più facile per me concentrarmi sui miei progetti Open Source e, nel tempo, molti sviluppatori in tutto il mondo hanno iniziato a utilizzarli attivamente. Ma non è stato sempre così.
Ho iniziato a lavorare come sviluppatore front-end. Ho lavorato come libero professionista, creando vari siti Web e applicazioni mobili per aziende locali. Ho collaborato con ADV e Disney, per i quali ho sviluppato siti Web, giochi e applicazioni per grandi clienti, tra cui Sony, molte banche affidabili, vari negozi online, ecc.
Ho anche collaborato con successo con la pluripremiata startup britannica Intern Avenue, un servizio che mette in contatto studenti e laureati, che sono alla ricerca di stage retribuiti, con potenziali datori di lavoro tramite un sistema di valutazione basato sui dati.
Più o meno contemporaneamente ho creato Brief, un messenger pensato per semplificare le comunicazioni aziendali aggregando diversi canali di vendita in un unico luogo. Parallelamente a quel progetto, lavoravo per la società svedese nota come FindersCrowd, che è un servizio per la gestione efficace di raccomandazioni e consigli nelle organizzazioni, e collaboravo con le società ungheresi CodersRank e OptiMonk.
2. Vladimir, puoi dirci di più su Framework7 e su come è stato creato?
Nel 2014 ho preso la decisione di prendere parte all'hackathon online annuale chiamato Static Showdown (un forum in cui i membri lavorano insieme per risolvere un particolare problema in un periodo di tempo limitato). L'obiettivo principale era lo sviluppo di siti Web statici, applicazioni e giochi utilizzando solo HTML (linguaggio di markup WEB), CSS (un linguaggio di rendering di pagine Web) e JavaScript (un linguaggio per la programmazione), il tutto senza logica lato server.
Nello stesso periodo, iOS 7 è uscito con un nuovo design "piatto", che è diventato virale. Ma nonostante il successo e la popolarità di un tale progetto, non esistevano ancora soluzioni simili per le piattaforme web. Pertanto, ho deciso di replicare l'interfaccia dell'applicazione iOS utilizzando le tecnologie Web come progetto per questo hackathon.
È così che è nata l'idea di Framework7. Volevo creare una "cornice" unica della futura applicazione web, che includa vari componenti visivi, come elenchi, finestre a discesa, pannelli, pulsanti, elementi del modulo, animazioni e navigazione per lo sviluppo di applicazioni web e dispositivi mobili "ibridi". applicazioni, utilizzando le più avanzate tecnologie web. L'obiettivo principale del progetto è quello di semplificare e velocizzare il processo di sviluppo web.
A quel tempo, jQuery Mobile, che è un insieme di strumenti per la gestione del contenuto delle pagine WEB, era uno dei framework più popolari, ma anche allora sembrava piuttosto obsoleto e non passava mai a un design "piatto".
Mi ci sono volute circa 48 ore per creare la prima versione di Framework7. E questo progetto ha vinto nella nomination "Crowd Favorite".
Non appena l'hackathon si è concluso, ho deciso di scrivere un post sul mio progetto su Hacker News per ricevere feedback da altri sviluppatori e conoscere la loro opinione personale. Il post è andato rapidamente esaurito, quindi ho deciso di sviluppare ulteriormente Framework7 come strumento per la creazione di siti Web e applicazioni mobili.
3. Perché gli sviluppatori amavano così tanto Framework7? Quali sono i principali vantaggi di esso?
Framework7 è diventato uno dei primi nella nicchia delle applicazioni mobili "ibride". Prima, se volevi creare un'applicazione per iOS e Android, dovevi conoscere Swift, Kotlin o Java e, grazie a Framework7, basta una conoscenza di base della programmazione web. Quindi significa che anche un singolo sviluppatore è in grado di creare un'applicazione per iOS e Android.
È ovvio che Framework7 fa risparmiare molto tempo e risorse allo sviluppatore. E anche uno specialista alle prime armi è in grado di creare applicazioni mobili.
Nonostante il progetto sia stato lanciato nel 2014, continuo a lavorarci, migliorando costantemente, modernizzando e aggiornando Framework7 per soddisfare i più moderni standard web, i design attuali e gli stili visivi.
Parlando delle caratteristiche principali di Framework7, la prima, che vale la pena menzionare, è la risposta stabile e veloce. Nonostante possano ancora apparire alcuni bug minori, in primo luogo sono estremamente rari e, in secondo luogo, possono essere risolti molto rapidamente.
C'è un'altra caratteristica che vorrei menzionare è la disponibilità di una documentazione chiara e dettagliata, che contiene tutti gli esempi, le descrizioni delle possibili difficoltà e le loro possibili soluzioni. Inoltre, Framework7 ha un Kitchen Sink visivo e accessibile (base di conoscenze, toolkit e definizioni di termini), dove puoi sempre sbirciare come funziona tutto e scoprire quali componenti sono disponibili e come funzionano.
Ecco perché Framework7 continua a essere utilizzato in migliaia di applicazioni mobili e web, anche a livello governativo. Ad esempio, è stato utilizzato per l'app mobile ufficiale per la vaccinazione COVID-19 durante la pandemia in Cile. Allo stesso tempo, il sito web ufficiale del progetto (https://framework7.io) è visitato da 30mila sviluppatori ogni mese e il numero di pagine viste supera le 300mila.
4. Possiamo affermare che Framework7 occupa un posto significativo nel settore?
Penso che Framework7 abbia preso un posto stabile nel mercato per tutto il tempo della sua esistenza. Proprio di recente ha ottenuto il primo concorrente, che è l'azienda ionica. Un enorme team sta lavorando a questa startup e vi sono stati investiti finanziamenti multimilionari. Ma nonostante tutte queste condizioni favorevoli, l'azienda concorrente ha a disposizione molti meno componenti UI (User Interface).
L'ultima versione di Framework7 ha già implementato l'ultima versione del design di Material You per dispositivi Android, a differenza del già citato Ionic. I vantaggi di Framework7 vengono notati anche da molti sviluppatori che lavorano con due piattaforme software. Secondo loro, Framework7 ha una componente visiva molto migliore e l'implementazione di molte funzioni essenziali.
5. Quali sono i tuoi progetti futuri?
Ho intenzione di continuare a sviluppare i miei progetti. C'è anche l'idea di creare un costruttore di applicazioni mobili, dove non è richiesta alcuna conoscenza di programmazione, la cosiddetta soluzione senza codice. Negli ultimi anni, la richiesta del concetto di "Low-code" è cresciuta, quindi un progetto del genere non sarà solo utile ma anche rilevante.