Projects

Some apps & websites I've worked on over the years
dotdot

dotdot 2020

Online community where people come and chat to each other. We ensure that chat groups are around 10 people, and try to make it so that when you come back you end up with a mix of people you already chatted with, and some new people.

More about it on the launch blog post :)

Great project to practice React and Socket.IO.

socialgorithm

socialgorithm 2017

Online community and platform for code workshops and challenges. Used by universities and companies to run events for students, interns, employees…

We provide all the technology + experienced mentors from the industry to our events. Students come to the events from local universities thanks to the support of our partner student-led tech societies.

Our first Workshop was Ultimate Tic Tac Toe, which works really well for a 1 day event. The ideal solution involves a Monte Carlo Tree Search algorithm so it allows students to practice some pretty cool programming.

We’re also working on a Self Driving car race and a Bee Hive simulation game, both aiming at allowing students to practice Deep Learning solutions.

VayaCoñazo

VayaCoñazo 2013

An entertainment site, mixing an RSS aggregator and a “rage comic” site where users submit their content. It pulls content from its own database and a lot other sources, combining everything on the same feed.

There is also a video viewer that displays the latest videos in a nice AJAX interface, I actually used the video viewer quite more often than the actual site, it’s a nice way to spend 10 minutes. Every single video that ever goes viral or becomes famous appears on this viewer some time before.

This website saw quite a bit of traffic, so in order to make it efficient I wrote a backend in PHP that ran on a cronjob, generating JSON files for all the content on the site (mainly the Hot, New, and Trending lists). This effectively turned it into a blazing-fast static site, where upvotes would influence the content only every minute or so.

I eventually closed it down when I got my first full time job because I wasn’t sure of the legal side of aggregating content from multiple sources.

nuophoto

nuophoto 2013

HTML5, canvas, JavaScript experiment. I’ve always been interested in image manipulation, so I decided to build this. It does image processing using convolution matrices and some creative canvas tricks.

It’s a mix of two different libraries, all created from scratch for this project: a GUI controller and an image editing library.

CloudClient

CloudClient 2012

An experiment integrating an API with JavaScript. It’s fully open source if you want to take a look.

Back then I was in uni and saw that Dropbox offered some very cool internships, so I built this in the hopes that it would help get one (it didn’t :( ) I also though I could create an amazing interface for cloud storage services, trying to make the web app look like the Windows explorer.

I did learn a lot of JavaScript, while failing to do an amazing interface. But thanks to this project I learned to setup OAuth, integrate with a fairly complex REST API and expose a fake “file system” API in PHP so that my frontend could look like it was an actual file explorer.

The full source code can be found on Github, there might be some useful parts.

QuePiensas

QuePiensas 2011

Spanish (failed) social network fully integrated with Facebook. It alows users to express their opinion on their friends. I’m still sure that this idea can become popular, it’s just that we didn’t achieve the right user experience. Building everything from scratch was a serious effort that helped us learn a lot, but made development too slow. We had no reusable CSS or components, no MVC architecture, nothing really…

At some point I will surely give it another go, although this time as an app, they have far more potential I think.

It was built from scratch by Jaime Caballero and me. It uses jQuery, lots of (awful) AJAX and a PHP backend.

Chevismo

Chevismo 2009

Entertainment site featuring many popular tools and services. Also a chat, forum, and many other sections that users discover over time.

This was mostly done to experiment with some new programming concepts, but it got quite popular in Spain so I kept on working on it for several years, making a few good friends in the community that it formed :)

The chat was the main feature, and some people kept coming back for some reason, eventually forming a very tight community. It was built before Nodejs and Socket.io were a thing, so I built it on top of MySQL with just INSERTS and SELECTS. Some JavaScript would poll this server on a varying interval depending on how active the chat was at the time. This taught me a lot about how efficient a DB can be if tuned properly.

Once the site became popular I started having issues with abuse and spam, so I added a system that would shadow-ban users who misbehaved. I even added some fake replies to their chat posts so the ban would be even harder to detect.

All in all it was a blast running this and I plan on recreating something similar soon (2020)

DJs Music

DJs Music 2007

Music sharing website where independent DJs upload their mixes and original songs, packed with features developed over the years.

The site is now translated in 5 languages, and is popular in many different countries (although most notably in India).

Google decided one day that I was braching the AdSense ToS without an explanation so I could no longer monetize it… This was a tough blow for my motivation because I had managed a steady 500$/month as a teenager with it and suddenly it was gone. I believe it was due to someone uploading a copyrighted song, so I revamped a lot my copyright claims handling system but I wasn’t able to have my AdSense account reopened.

I still kept the website online for years, reaching a monthly bandwidth of 3 Terabytes at some point. Unfortunately it was costly to keep it online and I wasn’t able to monetize it, so I closed it in January 2020, 13 years after opening.

This project taught me a ton about infrastructure, databases, asset optimization and distribution, and coding in general, I just wish it could’ve become a side-business to run over the years…