logo
Andrea Calici
Software developer

Work Projects

Personal Projects

Time Flies

A seguito dello sviluppo del prototipo durante il corso di Videogames Design e Programming, il gioco è stato perfezionato e completato aggiungendo modalità di gioco, collezionabili e achievements, andando ad incrementare la rigiocabilità e il divertimento. Prossimamente il gioco sarà disponibile su Steam in forma gratuita.

Link: Steam

Unity
C#

Personal Website

Questo sito è stato sviluppato in HTML, CSS e Javascript, sfruttando Tailwind CSS, uno utility-first CSS framework. Il sito presenta le mie esperienze lavorative, universitarie e descrive nel dettaglio i progetti svolti negli anni.

Link: Homepage

Tailwind Css
HTML
CSS
Javascript

Master's Degree Projects

Digital Healthcare

Digital Healthcare è un sistema sviluppato per salvaguardare la salute dei cittadini. È composto da due componenti fondamentali: un'applicazione web che consente ai medici di medicina generale e ai volontari di inserire le informazioni dei cittadini e un'applicazione mobile che trasforma i dati inseriti in documenti di utilità e genera il QR salvavita fondamentale per i cittadini in caso di necessità.

Corso: Tesi di Laurea Magistrale

Link: Tesi

Dart
Flutter
Firebase

Keep your Distance

Questa applicazione è pensata per allertare due persone nel caso in cui si trovino a distanza ravvicinata, sviluppata utilizzando TinyOS, NodeRed e IFTTT. Tale meccanismo è simulato da motes che inviano in broadcast la loro presenza attraverso un messaggio contenente il loro identificativo; quando un mote si trova in prossimità di un altro mote e riceve 10 messaggi dallo stesso, attiva un allarme.

Corso: Internet of Things

Link: GitHub

TinyOS
NodeRed
IFTTT

Time Flies (Prototype Version)

Time Flies è un'avventura platform 2D per Windows, macOS e Linus, inspirata dal processo naturale che coinvolge tutti noi: l'invecchiamento! Prova questo gioco innovativo, cerca di essere il più veloce possibile (il tuo personaggio perderà abilità con il passare degli anni), sopravvivi fino alla fine e mostra ai tuoi amici che invecchiare non è mai stato così divertente!

Corso: Videogame Design and Programming

Link: Itch

Unity
C#

Library Box

Library Box è un'applicazione mobile sviluppata durante il corso Design and Implementation of Mobile Applications. Essa offre ai suoi utenti la possibilità di tenere traccia delle proprie passioni, scoprirne di nuove e conoscere nuovi amici che condividano gli stessi hobby. L'applicazione comunica con diverse API e fornisce un lista di film, fumetti e serie tv che possono essere aggiunti alla propria collezione, un calendario per le uscite future e una lista di rewards che aiuteranno gli utenti a scoprire sempre più passioni!

Corso: Design and Implementation of Mobile Applications

Link: GitHub

Dart
Flutter
Firebase

Cat Wall Watch

Cat Wall Watch è un progetto sviluppato durante il corso di Computer Graphics utilizzando Javascript, HTML, CSS e WebGL. Rappresenta un orologio a forma di gatto che mostra l'ora attuale e muove gli occhi e la cosa al ritmo dello scorrere dei secondi. Inoltre è possibile personalizzarne il colore, l'illuminazione e il suono.

Corso: Computer Graphics

Link: GitHub

Html
Css
Javascript
WebGL

SafeStreets

SafeStreets è una piattaforma mobile e web il cui obiettivo è rendere i cittadini più sicuri attraverso una piattaforma che promuova la collaborazione tra gli stessi e le autorità locali per identificare le violazioni del traffico che verrebbero altrimenti ignorate. Durante il corso Software Engineering 2 abbiamo sviluppato il Requirements Analysis and Specification Documenti e il Design Document per questa applicazione fittizia.

Corso: Software Engineering 2

Link: Documentation

LaTeX

Bachelor's Degree Projects

Adrenalina

Adrenalina è un incalzante gioco di strategia in cui, vestendo i panni di alcuni intrepidi guerrieri, sarete chiamati a combattere in un serrato conflitto a fuoco nella sanguinosa e futuristica Arena, sprofondati in un caos selvaggio. Gli abitanti del pianeta si sono stufati di combattere in grandi conflitti armati, causando ingenti danni ai propri territori a prescindere dall'esito dei vari scontri e hanno così deciso di dividersi in cinque diverse Fazioni. La risoluzione dei conflitti da adesso si gioca nella famosa Arena! Per il corso di Ingegneria del Software ho realizzato la versione in videogioco di questo gioco in scatola.

Corso: Ingegneria del Software

Link: GitHub

Java

Nearest centroid

Questo progetto è stato realizzato durante il corso di Reti Logiche. Dato un punto in uno spazio bidimensionale e una lista di N punti nello stesso spazio, l'obiettivo è predire e valutare i centroidi più vicini al punto assegnato in partenza.

Corso: Reti Logiche

Link: GitHub

VHDL

Turing Machine interpeter

Questo progetto è stato realizzato durante il corso di Algoritmi e Prinicipi dell'Informatica. L'obiettivo è realizzare un interprete di Macchine di Turing che, data una funzione di transizione, una lista di stati finali, il numero massimo di step per la singola computazione e una lista di stringhe, produce in output un file che mostra le stringhe accettate e quelle rifiutate.

Corso: Algoritmi e Principi dell'Informatica

Link: GitHub

C

Papers

Criticism of the Turing Test

Nel 1950, Alan Turing introdusse il famoso Gioco dell'Imitazione, che sarebbe stato il punto di partenza per le ricerche future nell'ambito dell'intelligenza artificiale. Sebbene settanta anni siano passati da quel giorno è chiaro che tale test sia molto semplice da superare per macchine senza alcun tipo di intelligenza, ma allo stesso tempo di difficile superamento per super-computer il cui funzionamento sembra avvicinarsi incredibilmente a quello della mente umana.

Corso: Philosophical Issues of Computer Science

Link: Paper

LaTeX

Transhumanism paper

Lo sviluppo tecnologico evolve in maniera frenetica mostrando la possibilità di un futuro totalmente differente da quello atteso. In questo paper analizzo il movimento del transumanesimo che, oltre ad una serie di proposte sensazionali, dimentica o ignora le possibili conseguenze del futuro desiderato dai suoi esponenti.

Corso: Computer Ethics

Link: Paper

LaTeX