Ludovic Frank - Freelance developer

What tools should you use to create your website? Are they all the same?

ionicons-v5-k Ludovic Frank Oct 5, 2020
84 reads Level: Beginner

There are several ways of creating a website, each with its own advantages and disadvantages. But first of all, you need to ask yourself the right questions? Why this site? What needs should it meet? Is it a store? Is it a blog? Is it a showcase site? Does it need to be highly interactive (like an application)? Does it need to be SEO-friendly?

Once we've answered these questions, we have several options open to us, including two main ones:

Custom development.

In this case, we create the site using Web programming languages such as JavaScript, PHP, Ruby... and we often use what we call "Frameworks", which save development time and increase the developer's efficiency.

There are two types of "Framework": those that manage the "Back end", which run on servers; in this category, we can cite "Symfony", "Laravel", "Ruby on Rails", "Express.js" and many others.

There are also "Front End" frameworks, which operate in the browser / on the user's mobile device, managing the graphical interface / interactions / animations. ReactJS, VueJS, Angular, the latter is interesting, because while the first two (React and VueJS), Angular is more complete, it can handle requests sent to servers, "Routing" (URLs in the browser navigation bar).. etc.

As explained above, there are advantages and disadvantages to this method:

Advantages :

  • You can do exactly what you want (design, functionalities ... etc.)
  • You have complete control over natural referencing
  • Changing site needs? No problem, we can make it evolve without difficulty.
  • You have complete control over your website.

Disadvantages :

  • Slower time-to-production

The use of tools known as "CMS" for "Content Management System".

In this case, there's generally less code to produce, and software such as Wordpress (for a blog, for example), Joomla (for a showcase site, for example), Prestashop (for an online store), Magento (also for an online store) are used. CMS have the big advantage of doing their job well when they're used the way they were designed. For example, Wordpress is an excellent blogging platform (a huge number of blogs use it, such as Korb's).For example, Wordpress is an excellent blogging platform (a huge number of blogs use it, such as Korben's), but if you want advanced features later on, it can quickly become expensive to adapt it to needs for which it wasn't designed.

Advantages :

  • Quick to put into production
  • Ideal for simple generic needs (blog, showcase site, store)
  • Used by a large community, they are generally well documented.
  • Turnkey
  • Modules are available to add simple functionalities

Disadvantages:

  • If your needs change, it's not always easy to adapt the CMS to the new requirements.
  • You have less control, and natural referencing will be done more via plug-ins like Yoast SEO.
  • They are more vulnerable to computer attacks, being widely used: if a flaw is discovered in the CMS or a plug-in, all sites using this CMS or this plug-in have a security hole (which can be costly).

This sums up the possibilities available to you for creating your own website. There are obviously things you can add, but I wanted to keep it as simple as possible.

And how was this website designed?

The developpeur-freelance.io website was custom-built by me, which gives me a lot of flexibility, for example in the creation of the technology watch page and its search engine. What's more, I have lots of ideas for future improvements, so I didn't want to restrict myself.