Come si risolve un bug?

Risposta breve: semplicemente spiegandolo ad un collega

Vi è mai capitato di perdere ore nel risolvere un problema (non per forza legato al mondo dell’informatica e della programmazione, per questo non lo chiamerò bug) e cercare di trovare una soluzione facendosi aiutare da un collega, da una persona che potrebbe darvi qualche idea quale potrebbe essere la causa, e mentre ne state parlando, magicamente, vi viene in mente la soluzione o riuscite ad identificarne la causa…

Oggi ho scoperto che questa fantastica tecnica ha un nome 😀

Continua a leggere Come si risolve un bug?

Microsoft Azure come Monitorare un servizio con Avvisi e Notifiche Push

In questo tutorial vedremo come configurare degli avvisi tramite notifiche push quando il servizio su Microsoft Azure presenta qualche problema.

Sia che si utilizzano i Service App di Microsoft Azure (App Service) per ospitare un semplice sito web basato su WordPress che un complesso sistema di API, è fondamentale monitorare costantemente le performance del servizio per prevenire eventuali disservizi. Ricevere poi questi avvisi tramite notifiche push permette di intervenire rapidamente.

Come monitorare un servizio Microsoft Azure con notifiche push

Il lavoro che andremo a fare è definire una regola sul sito IFTTT https://ifttt.com/, che tramite un webhook ci permette di ricevere una notifica push sul nostro smartphone. Dopo di che andremo a configurare sul portale di Azure un avviso basato su una particolare metrica da monitorare.

Il portale di Microsoft Azure permette di definire degli Avvisi

Scatenati al verificarsi di regole da noi definite, questi avvisi possono essere ricevuti tramite mail oppure invocare un webhook.

Un webhook non è nient’altro che un indirizzo web che viene invocato al cambiamento o al verificarsi di un evento, questo url a sua volta scatenerà delle modifiche o dei comportamenti in un’altra applicazione, nel nostro caso si occuperà di inviare una notifica push.

Come inviare una notifica push utilizzando il servizio di notifiche offerto da IFTTT e Maker Webhooks

Per chi non lo conoscesse, IFTTT è un servizio web che permette di integrare più servizi attraverso delle regole di “if this than that”, classica struttura di controllo utilizzata nei linguaggi di programmazione.

Mettiamoci a lavoro partendo proprio dal creare una regola su IFTTT https://ifttt.com/create. Se non siete già registrati sul sito dovete farlo per poter creare una nuova regola, che sul sito viene chiamata come Applet, quindi:

♦ Premiamo su “New Applet” e poi sulla scritta “this”

Premiamo su “New Applet” e poi sulla scritta “this” Continua a leggere Microsoft Azure come Monitorare un servizio con Avvisi e Notifiche Push

Unity3D Multiplayer Games SDKs

UNet (Unity3D service)

Dalla versione 5.1 di Unity3D è stato introdotto un nuovo sistema di Networking molto più flessibile del precedente e che offre funzionalità avanzate per l’integrazione del multiplayer nei giochi.

Unity3D multiplayer

Uno dei principali vantaggi di questo SDK è che essendo fatto direttamente da Unity3D si integra alla perfezione in tutte le piattaforme (almeno si spera). E’ ancora in fase di preview ed in continua evoluzione, infatti ad oggi con la versione 5.2 continuano ad integrare nuove funzionalità.

Dopo un po’ di approfondimento sul suo funzionamento e dopo aver visto qualche esempio/tutorial sembra essere molto potente per la sua integrazione nell’ambiente di sviluppo ma essendo molto generico a volte potrebbe sembrare macchinoso dover implementare ad esempio un TurnBased Realtime, non che sia impossibile ma non si va a sfruttare a pieno le potenzialità dell’SDK.

 

Photon Engine

Prima che venisse introdotto UNet in Unity3D lo standard era Photon Engine. Sono fondamentalmente molto simili con l’unica differenza (non da poco) che Photon offre una suite di servizi molto più estesa di quella di UNet. In più offre la possibilità di avere logica sul server mentre in UNet tutta la logica di matchmaking e dei client/server risiede all’interno dell’app.

Photon Engine

 

 

Altri SDK

Esistono altri framework che offrono soluzioni per il multiplayer, a volte limitate solo a TurnBased asincrono e a volte anche realtime ma che secondo me rientrano più nella categoria dei Backend As A Service (BaaS).