This is a topic for all those who are wondering how hard it is to make that big step of changing profession and entering this exciting world of programming languages and endless lines of code.
This is written by a person that went through that process and wants to help everybody that currently doesn't have a clear picture of all the elements that are needed to make good and beautiful projects. In the end, maybe it will at least help you with the next google search or you will have something to send to that friend who is asking all the questions about web development.
First thing is to get familiar with all different fields there are out there. Analyze yourself, your best features, your interests, and knowledge about web design.
Do you get frustrated when you can’t find the link you are looking for because the web page isn't user friendly and you have an idea of what will work better? Do you know that is the job of a UX/UI designer?
Do you know what UX/UI is and what does it stands for? UX stands for user experience design, while UI stands for user interface design. It is the first step in creating a good web page/ mobile application. UX/UI designer makes the wireframes of all the screens there are going to be in your future project. He/she is there to think about user-friendly aspects, instincts, and goes deeper into the psychology of people. UX designer is going to solve user problems by thinking ahead.
In companies like lloyds digital, there is a UX/UI department that is focused on different approaches to solve user problems and choosing which one is that project going to use.
The user interface design is the next step and, to put it simply, it is adding color to the wireframes. You get to see what project is going to look like and it is a perfect stage to discuss with the client what changes need to be done. It is a lot simpler and cheaper than to do it in the coding stage.
In this stage of the project, the UX/UI designer will discuss his ideas with the frontend and backend developer to see what is possible in the estimated time and budget of the project. Backend developers will also make data modeling if needed.
The next step is in the hands of developers. Frontend developers, backend developers, mobile application developers, all kinds of developers. They all use different programs, program languages, frameworks, libraries, etc. that are helping them bring that design to life and fulfill their purpose.
In some projects, there is no need for backend developers. If the project is simple like a landing page for some small businesses, frontend developers can do it on their own. But on more complex web pages both backend and frontend developers are needed.
There are many ways to build user interfaces, some are a bit old school, some are new and trendy. It is important to stay up to date with all the new technologies and possibilities and to find the one that suits you the best. But do not forget from time to time to step out of your comfort zone and try building something the other way around.
The thing is, many libraries/frameworks are very helpful and easy to learn and you should explore all the options to see what you can use in your next project.
If we can say that frontend developers code how a website looks, backend developers code how a website works. They use server-side languages like PHP, Python, .Net, Java, C++, and also databases like MySQL and SQL Server. Backend developers will store and organize data and make data architecture. In lloyds digital our backend developers use the Laravel PHP framework for web applications.
Backend developers create the logic of the website and make sure all the data is there for frontend developers to control and show in a way that the designer imagined.
So, now when you learned who is involved in the process it is time for you to see what is best for you. Why do you want to learn how to code? Do you have an idea of the application you would like to make or you just want to look on that black displays all day long and know what those lines of code mean? Do you like Mr. Robot too much?
Are you a more logical or creative kind of person? Do you want to code or you want to design and draw how everything should look?
If you don’t want to choose colors for all the buttons or think about the user perspective of the page. You want to learn how everything works and why? It's time to explore the first steps for a backend developer.
If you want to think about cool animations on the page and try to put on screen everything that you (or designer) imagined. Explore steps for the frontend developer path.
Of course, you can always learn every aspect of the web development and there is even a name for those great people - they are called full-stack developers. But to become a good full-stack developer there are many years of learning and a lot of projects to complete.
You should always learn a bit from every field but have a clear focus and try to be the best in one field, and then the rest will follow.
If you have motivation and energy and you are not afraid of a lot of headaches on the way (believe me, there are going to be a lot of them), I do not see a reason why not to try.
There are so many great resources online that can teach you how to code for free or for very little money. You can get 30h of tutorials for less than $15. Go set yourself a little goal, make some projects so you can have something to show somebody that is going to be interested to mentor you, or even hire you. But be aware that they are going to do so only if they see the potential in you. You should show them what you have learned and how hard are you trying to learn more.
If you are afraid that you don’t have a proper degree, believe me, it is not going to matter if you have projects to show and you prove yourself as a fast learner. You can show them what you've learned all by yourself, without anybody’s help, and it matters.
Of course, going to another level can be really hard if you don't have any help. From my experience, great mentors make a difference. It will mean a lot for your learning process if you have somebody to ask for help after you have been stuck for a few hours on the same problem. Having someone who tells you a better way about how you could've made something or how you can have cleaner code, means the world.
So, let's sum everything up. Learn all the steps of the process, find yourself in it, set your little goals, and be proud when you achieve them, do not give up. If you have energy and will, it is not too late. Start learning how to code and before you know it you will be making some beautiful projects.