
Hi! I’m David Morales.
I’m a web developer and technical instructor since 2000; and a computer engineer since 2005.
I have developed several e-commerce sites, social networks, and classified ad sites from beginning to end.
My story
I was always impressed by 80’s computers, those green screens, and those big boxes. I loved IBM PCs and could imagine myself being a hacker using them.
With my first computer in 1993, I started to learn to program. I chose Pascal as my first programming language, and it was exciting! Soon I heard of a more widespread language called C, so I started to learn it. I found it more difficult. I remember that I always preferred Pascal, so I left C and returned to it many times. I made some little text-based video games with Pascal containing school stories my classmates liked.
I even tried to develop an application for the mechanic in my neighborhood. What I tried to build from scratch was a database! He wanted to have a system to manage his customers and print invoices. I worked hard and accomplished storing data in binary files. It was driven by a rudimentary (but hey, very functional) user interface developed in plain-old C for MS-DOS.
At 17, I built an app containing a digital magazine. I developed a tool using Borland Turbo C, achieving a minimal executable size! It had a custom UI, supporting graphics and menu buttons, and pagination for the articles. The program had 2000 lines of C code and some assembler.
At 18, I decided to study computer science more seriously. While learning PHP and making my first websites, I studied for a higher degree in programming. I learned a lot about databases, networks, and languages like C++.
In 2000 I started to work professionally as a web developer, using JavaScript and ASP, and at the same time I was teaching on-site.
In 2001 I wanted to continue studying, so I started a degree in Computer Science at the University of Barcelona, which I completed in February 2005. There I learned the basics of computing: electronics, math, and software engineering. I even learned Java and Ruby!
Since then, I have worked on several projects in startups, first using PHP with the Symfony framework and later Ruby on Rails.
My experience as a web developer and teacher
- I started in 2000 as a full-stack web developer, mainly using ASP and JScript (Microsoft’s JavaScript version). And I was combining it, in the same company, with web development classes on ASP, PHP, and Java. I also taught Linux system administration. I had students from the following companies and institutions: Ajuntament de Barcelona (Barcelona City Council), TMB (Barcelona Metropolitan Transport), FGC (Catalan Government Railways), Cirsa, and Sony.
- In 2006 I developed an ecological social network called Tree-Nation, in PHP.
- In 2008 I developed a classified ads website. I used the first version of the Symfony framework for PHP.
- In 2010 I created another classified ads website, collaborating with several real estate portals in Spain. I also used the first version of Symfony.
- In 2013 I jumped to Symfony2 to develop a PrestaShop clone used in an e-commerce website.
- At that time, I switched to Ruby on Rails. But before, I wanted to dump my knowledge of Symfony2 in a course that I published on Udemy, and it had great acceptance. While learning Ruby, I developed a social network of activities similar to Meetup.
- Since 2014 I have been working remotely for several companies in the UK, using Ruby on Rails.
- In 2022 I started working on my first course for LinkedIn Learning. The experience of working with several teams to launch the course together has been gratifying.
- In 2023, I started working as a tech lead for a Ruby on Rails devs team.
My studies
- Degree in Computer Science, Universitat de Barcelona, 2005. Capstone project: Implementation of Bayesian Network Learning Algorithms (contributing to Intel’s open-source Probabilistic Networks Library).
- Here, I stumbled upon mathematics applied to many fields. I learned a lot about logic, computer architecture, artificial intelligence and discovered the Perl and Ruby languages.
- Associate’s Degree in Development of Computer Applications, Escola del Treball de Barcelona, 2001.
- Here I delved into databases, algorithms, and networking.
- Vocational Training in Management Computing, Col·legi Cultural Badalona, 1999.
- Here I discovered the basics of computer science, with languages as old as IBM RPG and COBOL.