Sorry, under construction!

Joan Alba Maldonado's portfolio

My pic
Joan Alba Maldonado
39 years old

Software developer & Teacher
A pioneer in JavaScript game development

*  Contact me

About me

About me

I was born on the 3rd of November 1984 in Reus city (Catalonia, Spain). But I have always lived in Cambrils, not far from Reus and in the same province called Tarragona.

During my childhood I was a scout, I learnt to swim, learnt to play tennis and even pottery.

One of my first contacts with electronic games was with a Nintendo Game & Watch with a Panorama screen which had a Popeye game inside (model PG-92). It belonged to one of my sisters.

Later, my brother bought me a Famiclone (Nintendo NES / Famicom clone) with many games in its internal memory (many only officially released in Japan). Thanks to that device, I could discover many fascinating games as for example Mario Bros., Super Mario Bros., Super Mario Bros. 2, Super Mario Bros. 3, Tetris, Tengen's Tetris, Ikki, TwinBee, Star Force, Donkey Kong, Donkey Kong Junior, Donkey Kong Jr. Math, Donkey Kong 3, Ninja Hattori-kun, Contra, Bomberman, Circus Charlie, Urban Champion, Yie Ar Kung-Fu, Spartan X (Kung-Fu), Antarctic Adventure, Mappy, Battle City, Road Fighter, Excitebike, Duck Hunt, Hogan's Alley, Wild Gunman, Binary Land, Space Invaders, Galaxian, Galaga, Xevious, Clu Clu Land, Super Arabian, Front Line, Ninja-kun, Dig Dug, Devil World, Tennis, Mach Rider, Pac-Man, Ms. Pac-Man, Pinball, Millipede, Teenage Mutant Ninja Turtles, Sky Destroyer, Lunar Pool, Lode Runner, B-Wings, Formation Z, Super Dimension Fortress Macross, Karateka, Baseball, Golf, Mighty Bomb Jack, Ice Climber, Ninja Crusaders, Warpman, BurgerTime, Popeye, City Connection, Gyrodine, Elevator Action, 1942, Nuts & Milk, F-1 Race, Mahjong, Othello, Gomoku Narabe Renju, Joust, Field Combat, Pro Wrestling, Exerion, Balloon Fight, Pooyan, Arkanoid, Kinnikuman: Massuru Taggu Matchi (Tag Team Match: M.U.S.C.L.E.), Brush Roller (Make Trax), Raid on Bungeling Bay, Wrecking Crew, Chack'n Pop, MagMax, Terminator 2: Judgment Day and many more.

My next consoles were a Nintendo Game Boy (first classic model) and a SNES (Super Nintendo Entertainment System). After some years I also got a Super Game Boy adapter. With those devices I could play Tetris, Super Mario Land, Wario Land (Super Mario Land 3), A Boy And his Blob: Rescue of Princess Blobette, Super Mario World, Super Mario All-Stars, Super Mario Kart, Mario Paint, Street Fighter II, Bubsy in Claws Encounters of the Furred Kind, Spanky's Quest, Plok, Illusion of Time, Aladdin, Dragon Ball Z: La Legende Saien, Super Ghouls 'n Ghosts, Donkey Kong Country, Toy Story, The Addams Family, King of the Monsters, Super Adventure Island, etc.

When I was about 9 years old, in 1994, I started learning computers in a private training centre in Cambrils (my hometown). They had Intel 80286, 80386 and 80486 (and maybe older machines). There I learnt typing, how to use MS-DOS 5.0 and create batch files first on paper and later using "edlin" which was a line editor that came with that operating system. After that, the teacher introduced us to the "edit" editor (MS-DOS Editor). I was also learning WordPerfect 5.1 under MS-DOS and later Microsoft Windows 3.1 and Microsoft Word 6.0, Excel 5.0 and Access 2.0. Later, I saw OS/2 for the first time in my life and we used Windows 95 and learnt basic Internet web browsing until about 1996. The first games I played in PC were a snake clone called Caterpillar, Xonix, Alley Cat, Maniac Mansion, Day of the Tentacle, Sam & Max Hit the Road, Indiana Jones and the Fate of Atlantis, Simon the Sorcerer, Dyna Blaster (Bomberman), Wolfenstein 3D, Doom, Doom II, etc.

From about 1996 to 1999 I also studied in another training centre in Reus city (where I was born) and I learnt advanced MS-DOS 6.22 (with advanced batch scripting), QBasic, Visual Basic 3.0 and 4.0 and Borland Turbo C. In the same centre, I also studied HTML from 1996 and some basic Internet skills (web navigation, receive and send emails, FTP, IRC...).

My first computer had a 486DX4 microprocessor at 100 MHz with 8 MiB of RAM and Microsoft Windows 95. The hard drive had a capacity of less than 1 GiB (around 820 MiB or so, I cannot remember).

In 1996 I started creating basic apps, games and web pages (some also used JavaScript code and even Java applets) as a hobby.

Since I discovered emulators in 1997, I use them from time to time to play and remember old games when I want to disconnect and relax.

I became a BeOS fan as soon as I discovered it. I have also liked other operating systems as QNX, and I have used others as Microsoft Windows (3.x, 9x, NT, 2000, XP, Vista, 7 and so on), ReactOS, FreeDOS, MINIX, Linux, FreeBSD, NetBSD, OpenBSD, PC-BSD, DragonFly BSD, NeXTSTEP, Mac OS (on a Macintosh Performa 5260/120 I bought), OS X (on my Macbook white), Darwin, OS/2, eComStation, RISC OS, MenuetOS, SkyOS, Syllable, AtheOS, AROS, AEROS, Plan 9, Inferno, Solaris, OpenSolaris, Novell NetWare, yellowTAB/magnussoft Zeta, Haiku and some more. But my favourite operating system is still BeOS. Maybe one day Haiku will be able to become a good alternative.

I started learning PHP and using AJAX (XHR) by myself in 2004. My first PHP games are from 2005 (some using JavaScript too). I also started creating DHTML (HTML, CSS and JavaScript) games in 2006 as a hobby.

In 2005, I decided to go back to that academy I had been before in Reus and I studied PHP (also using HTML, CSS, JavaScript, mySQL, ODBC, FPDF, PHPMailer, GD Graphics Library, PHP-Nuke, etc.), Flash with ActionScript and JavaScript.

From 2006 to 2008 I studied a "CFGS DAI (Ciclo Formativo de Grado Superior en Desarrollo de Aplicaciones Informáticas)" which is a Software development associate degree equivalent (similar to Foundation degree in the UK, Diploma of Higher Education in Scotland or Higher Certificate in the Republic of Ireland) at IES Baix Camp school in Reus city. There I studied Boolean algebra, Electronic circuit design, Electronic circuit simulation, Electronic design automation, Computer architecture, Computer multitasking, Operating systems, File systems, Network architectures, Network topologies, Software engineering, Dia, Microsoft Visio, Microsoft Visual Basic, UML, (ArgoUML), CASE (Computer-aided software engineering) tools, Program (or project) evaluation and review technique (PERT), Gantt charts, Relational models, Entity–Relationship models (ER models), Use cases, Conceptual models, Data flow diagrams (DFD), Software requirements specification (SRS), Imperative programming, Declarative programming, Structured programming, Procedural programming, Functional programming, Modular programming, Object-oriented programming (OOP), recursion, Model–view–controller (MVC), Shell scripting, C, C# (.NET), ADO.NET, Java, AWT (Abstract Window Toolkit), Swing, JSP, Jakarta Struts (Apache Struts), servlets, JDBC (Java Database Connectivity), ASP, PHP 5, Adobe ColdFusion, Oracle PL/SQL, mySQL, Microsoft SQL Server 2005, ADOdb, XML and many things more. Those studies also included the CCNA (Cisco Certified Network Associate) Exploration curriculum. Despite the fact that I already knew some of those languages before (and I had even developed games with them), I could learn more during that time.

In 2008 I started studying "Enginyeria Tècnica d'Informàtica de Gestió / Ingeniería técnica en informática de gestión" (Computer Science Technical Engineering) degree at URV (Universitat Rovira i Virgili) university at Escola Tècnica Superior d'Enginyeria in Sescelades campus in Tarragona city. There I studied Theory of computation, Boolean algebra, Electronic circuit design, Electronic circuit simulation, Electronic design automation, Computer architecture, Mathematical analysis, Algebra, Calculus, x86 assembly language, C, etc. But I finally left because I was not enjoying it.

Apart from working for other companies and my work as a freelance developer, I was also working as a computers teacher for elderly people from 2011 to 2013. I am also the founder and CEO of Gearoo wholesale company since 2011.

In September 2013 I went to Hangzhou (Zhejiang, China) to study Chinese and, after getting the working visa, I have been working for a Chinese company and I even developed a game for them to be used in Weixin (aka WeChat) which is the most used instant messaging client for mobile devices in China, made by Tencent (the same company that also owns QQ). The game was a complete success with thousands of players. I was also working as a Spanish teacher as a part-time job. In early 2016 I moved to Shenyang (Liaoning) because I wanted to experience the life in the Northeast of China. Finally, I moved to Dalian Hi-Tech Zone, in Dalian city (also in Liaoning province) where there are many software companies. Dalian is a beautiful city (some Chinese people say it is the cleanest or one of the cleanest cities in China) where there are different technology centers and software parks.

In early 2017 I came back again to my country, Spain.

I have experience publishing on Github, SourceForge, Freshmeat / FreeCode, Codeplex, Google code / Project Hosting, TuxFamily, BeBits, Haikuware, Opera add-ons, Mozilla Firefox add-ons, Firefox Marketplace, Chrome web store, Nokia Store / Ovi, Windows Phone store / Microsoft store, BlackBerry World, Google Play store / Android market, Amazon Appstore / Amazon Digital Services, Samsung Apps Store / Samsung GALAXY Apps, Opera Mobile Store, Facebook Apps, IndieDB (Indie DB) / Mod DB, IndieCity / Pi Store, SlideME,, Desura, Tucows, Softpedia, CHIP Online, etc.

Coding software, creating websites and developing games are not my unique hobbies. Since I am a kid I like creating things: writing stories and poems, drawing fun things and comics (although I am an awful drawer), creating board games, doing handicrafts, creating songs, etc. I also love nature, beach, mountain, trees, plants and animals, hiking, camping, survivalism and preparedness, I enjoy mushroom hunting (a typical tradition where I am from), planting and growing plants and trees, cooking, swimming at the beach, watching movies (especially old ones) because I am kind of a cinephile, and more. Although I am not a big fan, sometimes I have also enjoyed geocaching.

As I love animals, during my life I have had many pets and I always take good care of them. For example, I have had cats, dogs, turtles, rabbits, hamsters, guinea pigs, gerbils and even a degu.

During my life I have collected many things: antiques, coins and banknotes, stamps, minerals and stones, different kinds of comics (mainly Spanish ones), lapel pins, stickers and trading cards, flashlights (torches), folding knives, old computers (retrocomputing), classic consoles and games and so on.

I still have many games and projects in my mind that I would like to do one day but I need to find the time.

My blogs

Joan Alba Maldonado's blog (English):

Codéala otra vez, Sam (Spanish) [outdated]:

La Mussi per sempre (Catalan) [outdated]:


My Twitter account:

I use Twitter sometimes.


My Instagram account:

I use Instagram sometimes.


My LinkedIn account:

I almost never use LinkedIn.


My Facebook account:

I almost never use Facebook.


My YouTube account:

I don't use YouTube very often.

GitHub / GistGitHub / Gist

My GitHub account:

My Gist GitHub page:


My SourceForge account:

Freecode (Freshmeat)Freecode (Freshmeat)

My Freshmeat (formerly Freshmeat) account:

Stack Exchange / Stack OverflowStack Exchange / Stack Overflow

My Stack Exchange profile:

My Stack Overflow profile:


My Etsy account:

More links

My account:

My Medium account:

My Medium publication:

My Tumblr account:

My Reddit account:

My npm account:

My Yarn account:

My Packagist account:

My apps on Google Play / Android market:

My apps on BlackBerry World:

My apps on Amazon Appstore:,,,,,,,,

My apps on Bemobi Mobile Store (formerly Opera Mobile): HTML5, iOS, Symbian, Windows Mobile, Windows Phone, Android

My add-ons on Mozilla Firefox add-ons:

My add-ons on Opera add-ons:

My games on

My games on SlideME:

My games on IndieDB (Indie DB):

My games on Mod DB:

My apps on DownloadAtoZ:


My Google+ (Google plus) account:

NOTE: Google+ site is currently dead.


My CodePlex account:

NOTE: CodePlex site is currently dead.

Google code (Google Project Hosting)Google code (Google Project Hosting)

My Google code (Google Project Hosting) account:

NOTE: Goolge Code site is currently dead.


My BeBits account:

NOTE: BeBits site is currently dead.

Fork me on GitHub