Is it really necessary to have a website today? Food for thought

Before the social era, having a personal/company website was the thing. Whether you wanted to produce content, showcase your work or products, let people know what your email was to contact you, you needed a website. And either you learned how to build it yourself or you passed this task to someone else.

Today, establish our presence online has never been easier. Social medias and platforms are for all tastes and needs, only one click away.

So now the dilemma is - what should I do?
Why should I opt in for a website?
Or why would I want to write a blog for example? Isn't it facebook or twitter enough to guarantee my voice is heard?

In this article I will try to explain how I reached the decision to have a website and the steps I went through.

Content is king

build a website - and you immediately think about structures, colors, templates, social media interactions.

Reality is that you can turn your website into whatever you want it to be, but the first question you should ask yourself is - What am I going to talk about? -

The content of your website is going to affect everything. Design will meet your content's needs and not the other way around.
You may realize that a social network suits your needs better than a website.

Sit down, take your time and start writing down your master plan on a piece of paper.

Here was mine:

For me this was enough to point me in the direction of choosing a website over a social network.
Structured followed pretty quick: a part for tutorials/lesson learned, a blog to talk about things more in general like this article. That's it.

As for the platform, it really depends on each person's preferences and knowledge. I opted for a flat file CMS called Grav.

Designing your website

Once you have a general idea of what you would like to realize, it's time for design choices.

I have to confess, here I am a total disaster: I do something, then I see something else which I also like, then I search for different solutions, then I encounter new programming languages and... I usually end up with 4 or 5 versions of my site.

Nevertheless, first question you need to ask yourself is - how am I going to code my website?

If you don't have any web programming experience (not even HTML and CSS) you can still rely on many free solutions: from hosting companies providing self-installer software for the most common CMS platforms like Wordpress or Joomla, to web-hosted applications where you only really need to think about text.

The only drawback (which is a huge one!) is that as soon as you'd like to modify any aspect of your site or add additional functionalities, you'd need to put your hands in the source code.

So what can you do?
Unfortunately there is no way around it. You have to learn how to modify code yourself.

At its core, a website is really HTML and CSS code.
Through HTML you define your elements (i.e. here is my title, then comes my paragraph) and with CSS code you style them (i.e. my title is going to be red and bold).

I learned HTML and CSS a long time ago where if you wanted to add anything more than styling you should have looked at PHP or Javascript code. Today with HTML5 and CSS3, we have already a lot of design possibilities just using these two programming languages.

But in today's web design, HTML and CSS are not enough: content, structures, routines, processes are dynamic and you'll also probably need some additional knowledge in server-side scripting languages as the above mentioned PHP or client-side languages as Javascript.

Learn the basics of HTML and CSS and their capabilities first.
Leave the advanced techniques for when you will really need them and learn by doing!

Knowing web programming languages is a must if you want to design and code all aspects of your site.
Today's tendency though is to choose a framework that takes away most of the programming routines and processes and let us concentrate on content and style.

That is why the second question you'd need to ask yourself is - what platform should I choose for my website?

We mentioned before Wordpress and Joomla which are popular Content Management Systems (CMS) based on PHP and MySQL, but there are tons out there, including the one which I am using: a flat file CMS called Grav which makes no use of databases.

For each solution there are pros and cons and a quick search on the internet will explain them better than I can.

As for my choice, Grav, I liked the idea not to use databases and treat my site as copy/paste folder to move it around easily.
People at Grav made a wonderful job in making it fast, simple, flexible and reliable. Should your site be small/medium size you should give it a try.

Choose your platform carefully and according to your needs!
Changing platform is never an easy job.

Lastly, after all this conceptual work, it is time to decide how our site will look like to our visitors.

Again, here there are thousands of templates you can start with: from pure HTML to more complex ones for CMS and other frameworks, free, paid.

In the past I used some free templates and then modifying where needed to adjust it to my needs.
Today I found pleasure in designing my own theme. Not fancy as some premium ones, but I wanted something personal and I like the end result.

Do not reinvent the wheel everytime.
Take a look at what has been created, try to understand why it has been created that way and start making some amendments.
Re-use the code!