Web apps

Bitforce si occupa di sviluppare web apps moderne, in grado di sfruttare a pieno tutte le potenzialità dei browser moderni.

Molto spesso quando si e’ davanti ad un business che cresce, le soluzioni software presenti sul mercato non sono sufficienti e le personalizzazioni diventano molto costose o semplicemente impraticabili.

Il nostro obiettivo e’ creare applicazioni web su misura in grado di evolvere nel tempo secondo le esigenze del business, supportandolo in ogni richiesta avendo la consapevolezza di poter gestire totalmente la codebase.

Bitforce web app

Bitforce web app

Con una web app Bitforce potete scordarvi discussioni del tipo:  (Citazioni non di fantasia)

  • “Per farlo dobbiamo vedere se esiste un plug-in”

  • “La libreria non lo supporta”

  • ”E’ un bug del plugin-in, dobbiamo attendere l’aggiornamento”

  • “Il sito è giù perchè un estensione è stata colpita da un malware, dobbiamo attendere il fix”

  • ‘Il caricamento è lento, ma è colpa del framework. Non possiamo farci niente“

Molto spesso le applicazioni che creiamo partono da soluzioni sotware troppo limitanti per le quali il cliente sceglie di andare in una direzione dove la flessbilità è totale.

I nostri strumenti

Per ogni progetto partiamo dalla scelta dei tre elementi fondamentali i quali ci danno il controllo totale sul progetto.

Una volta individuati scendiamo nei dettagli per definire con cura il set up migliore per il progetto che dobbiamo realizzare (vedi il nostro software). Dopo aver validato il prototipo navigabile siamo pronti a sviluppare partendo da una bella pagina bianca e dati forniti dal back end. Più tailor made di cosí

Cosa si può fare con una web app oggi

I browser di oggi sono piattaforme potenti e versatili in grado di far girare in maniera fluida e reattiva non solo semplici siti web ma vere e proprie applicazioni software per le quali qualche anno fa sarebbe stato necessario avere un eseguibile installato sul proprio pc.

Web apps VS desktop apps

Web apps VS desktop apps

Il vantaggi di una web app rispetto ad un’applicazione desktop li diamo quasi per scontati ma se ci riflettiamo capiamo subito che rivoluzionano il mondo dello sviluppo software.

Le web apps infatti

  • Girano su tutti i sistemi operativi e devices dotati di browser

  • Sono disponibili immediatamente, senza bisogno di scaricare ed installare nessun eseguibile e senza nessun requisito minimo di sistema

  • Con un semplice link si puo’ condividere qualsiasi contenuto

Tutte caratteristiche uniche che la distinguono fortemente da una tradizionale app desktop.

Accesso all' hardware

Le barriere che impedivano ad un browser di accedere a risorse hardware, sensori, calcoli impegnativi e grafica avanzata sono ormai cadute.

Questa evoluzione e’ stata facilitata anche dallo sviluppo di PWA che riducono drasticamente il gap tra applicazioni desktop e web, (leggi l’articolo su PWA)

Cosa puo’ fare oggi una web app?

  • Leggere le coordinate GPS

  • Orientamento del device (landscape / portrait)

  • Speech recognition

  • Attivare la modalita’ full screen

  • Accedere alla fotocamera per registrare immagini, video o stream live

  • Accedere al bluetooth

  • Eseguire upload di files

  • Gestire pagamenti in maniera sicura

  • Mostrare l’applicazione in modalita’ offline (PWA)

  • Installare l’applicazione sul desktop come un’applicazione nativa (PWA)

  • Inviare notifiche push (PWA)

  • Inivare al client aggiornamenti dell’app (PWA)

Se hai dubbi puoi provare direttamente dal tuo browser: https://whatwebcando.today

Grafica avanzata / AR / VR

Grazie a webGL e’ possibile eseguire sul browser animazioni 2D e 3D complesse, simulazioni, giochi, AR e VR

dai un occhio dal tuo browser a qualche esempio:

https://threejs.org/

https://kripken.github.io/misc-js-benchmarks/banana/index.html

Inoltre webGL 2 è in arrivo, preparando il terreno al gaming su browser. Prova questa demo sperimentale sul tuo browser desktop: https://playcanv.as/p/44MRmJRU/ fornita da https://playcanvas.com/

Web assembly

WebAssembly permette di eseguire del codice "binario" sul browser a velocità straordinarie, confrontabili con quelle dei rispettivi programmi nativi. Ad esempio si possono compilare molti dei programmi C/C++ in WebAssembly utilizzando Emscripten. Questo permette non solo di avere prestazioni prima impensabili in un browser, ma anche di poter accedere ai programmi open source, aumentando in modo consistente il numero di librerie disponibili per JavaScript.

La lista dei linguaggi di programmazione che supportano WebAssembly è lunga e in crescita e tutti i browser più importanti lo supportano: https://caniuse.com/#search=wasm

Un esempio di applicazioni che hanno sfruttato questa tecnologia sono: