Complex Web Development — A Guide for non-tech Founders

As a non-tech founder, starting the process of building a complex web project can be challenging. You might be wondering about the tools, team, and frameworks that will work best for you. Also, with many options and opinions around, you will be second guessing your choices.

So this article will help you to learn the basics of building a complex web application and give you an overview of the options available. Also, it will point you towards technologies and frameworks that are worth exploring. So, let’s start.

Basic Programming Skills

No tool or framework can replace the basic concepts of programming. Your developers should be well versed with the basic programming concepts like data types, functions, conditions, and loops. So, do not opt for coders, who can work on frameworks, but can’t handle nested loops.

Strong understanding of programming concepts and a low-level language should be a must for any coder who wants to work with you. So look for coders with a strong understanding of languages like C or Java.

HTML, CSS, JavaScripting

A good understanding of HTML/CSS is a precursor to any web development learning. It’s the building block of web and there is no way around it. Your developers should be super comfortable with such technologies. The front-end developers should also be familiar with tools like Flex or Grid.

For JavaScripting — basic vanilla java-scripting is a must. Strangely you will find many programmers who can work with java-scripting frameworks, like jquery, and not know much about the basics of java-scripting.

So, anyone who claims to be good with JavaScripting should be able to handle things like DOM manipulation, page events (without JQuery!), asynchronous events with AJAX, JSON, and Fetch APIs.

Frameworks

Once done with basics, now you can look into different frameworks.

Begin with HTML/CSS Frameworks. There are many available and can help you with simple to fairly complex work. I personally love Bootstrap with is a general framework and is very popular. As an alternative to Bootstrap, you can also look at Zurb Foundation. Also, Bulma is another framework, which is easy to learn and comes without JS.

Front-end Frameworks

Frameworks like Angular, Vue.js are the most popular options here.

Such frameworks can be mixed and matched with frontend and backend tools. There are quite a few popular stacks that can get the job done. MEAN, MERN stacks are fairly popular ones. MEAN, for example, uses Angular (with Express) with Node (Backend) and Mongo as DB.

React is gaining massive popularity with the startups. Its a set of libraries developed by Facebook. It is mostly used with state manager — Redux.

Vue.js is another example of a framework that is very fast, light, and easy to learn.

Server Side Frameworks

Again you will find many options and you need to make a smart decision.

If you want to keep Javascripting throughout the frontend and backend, then use Node.js. If you are more comfortable with PHP, then use Laravel. For Ruby, Ruby on Rails is very popular. .NET for C#. Django for Python.

These are my recommendations and you should decide based on the resources available and your product development plans.

Remember, frameworks appear and disappear. Choose the one that has good support available and many developers using those. This way you are never stuck with HR issues.

Databases

Here you have choices like traditional SQL to no-SQL to real-time databases.

Choose the one that goes well with the technology stack chosen. MongoDB is a database when you plan to work with MEAN stack. MongoDB is an example of NoSQL Database.

If you prefer traditional SQL based databases go with MySQL, PostgreSQL, and SQL Server.

For real-time, you can always explore Google’s Firebase.

For a more bigger corporate project, use Oracle.

Side Technologies and Frameworks

There are many tools and technologies that you need to be aware of for building and deploying a web project. Like GIT, a must for version control, backup, and collaboration and you shouldn’t be building your application without it.

Also learning the basics of REST APIs, HTTP, HTTPs, SSL, CSS Pre-processors should help.

Full Stack, Front End, Back-End Developers

You will hear terms like a full stack, front end, back end developers a lot. All such terms represent the developer's ability and focus.

A Back-End Specialist is the one that works with Server Side technologies, manage complex APIs, and work with databases.

Front End Specialists is the someone who is experts in frontend technologies like HTML/CSS, JavaScripting, Angular, React and so on.

A Full Stack Developer is the ones who can look after frontend and backend frameworks.


I hope this article gave you enough insights to start the process of selecting the right for developing a complex web application.

In the next articles, I will go further and discuss issues like DevOps, web components, Progressive Web Apps, AI, and Bots.

Originally published on App2Dev.com/Blog