Web Design Resources for Beginners
Have you been curious about web design, and would you like to know if it's something you'd be good at or enjoy doing? A recent blog showcased our eLearning resources on programming. Besides those, there are many free and open-source tools in the web that will enhance your path forward. Web development divides into two domains: front-end and back-end. Below is a list of popular and authoritative open-source tools that will aid you on your path to both. This list is not exhaustive, but it's a good way to get started.
To access the resources below from Lynda.com or access the ebooks, you will be asked to sign in with your library card.
Front-end web developers create the graphical interface that we interact with when surfing the web. This includes the way the we organize data in a visual and structural manner. It also includes functions like clicking, buttons, logins and other interactive elements. The basic tools of the front-end developer are:
- HTML, a markup language that structures information on a page
- CSS, a language that styles that information with colours, positions, and dimension
Below are some free and open-source resources to get started with front-end development.
Edx is the only nonprofit left in the massive online open courses movement. While certificates cost money, course content and materials are free to access. W3C, or the Worldwide Web Consortium, is the international body of many member organizations that develops web standards. Part of the education arm of W3C, this series of 5 courses hosted on Edx provide foundational instruction for the front-end developer to the complete beginner. Because course content is free but you have the option to purchase a certificate, it is great for those with professional aspirations as well as those who want to dabble.
Read a comparison of the advantages and disadvantages of code playgrounds such as JsBin and Codepen.
Github is a company for hosting code repositories and provides free accounts with a great deal of open-source projects. This means that a great deal of the content is accessible for free to users to learn from and change. Github also allows users to host for free a multi-file website. This is something that a professional or amateur front-end designer may at some point want to do. You can write the documents or files on desktop code editor outlined below.
- Beginner Github tutorials on Lynda.com
- Github essentials on O'Reilly (formerly Safari Tech)
- Github video tutorials on O'Reilly (formerly Safari Tech)
Khan academy is a popular, free online video tutorial website on a wide variety of topics. Even though its content on computer science is basic, it is very useful for beginners. Computer science tutorials on Khan academy give complete beginners the background they need to tackle the subject more formally. Tutorials on things such as how to host a website on Github, how to pick web and online editors, and where to find further instructional material are very useful.
Back-end development is also known as server-side development. It refers to the organization, management, and manipulation of the data stored on the physical server. This involves a database and an application layer that allows efficient communication between the server, database and the browser. Back-end developers use many languages including Java, PHP, ASP.net, Python, Ruby, Perl etc. to build applications as well as many database programs like MySQL and Mongo DB.
Below is a list of tools for back-end development with links for free learning resources.
PHP is a well used open-source scripting language executed on the server, which is free to download and use. Even though some of its popularity has declined, it's still popular for developing web applications. Social networking platforms like Facebook and blogging platforms like Wordpress use PHP. PHP is suited for back-end beginners because it is more forgiving of errors and easy to set up. Lynda.com and codecademy have great beginner courses on PHP. Also, there are many free resources on the web such as w3Schools.
Java is one of the world's most popular programming languages. Its back-end uses include database connectivity, networking, image processing and web development. Java is not a beginner language but learning it has many benefits for those with some coding background because of its flexibility. Lynda.com and Codecademy have courses for complete beginners. Also, Edx offers an array of courses for different learning levels.
Databases are a major component of backend development. MySQL and MongoDB are two different and popular database management systems, and each is free and open-source. Here's an article that compares popular databases. Learn mySQL mySQL and MongoDB MongoDB.
XAMPP and MAMP are free and open-source software that allow you to run and test websites off your desktop computer before uploading them to a remote web server. XAMPP is used on Windows and MAMP on MacOS. These programs are useful for testing the website you've built on a virtual server before publishing it on the web.
Apache HTTP Server is an open-source web server that is free to download. It is compatible with all major operating systems. One of the uses of Apache is for virtual hosting. This is a way for you to host several websites with different domain names (your web address) in a single server. For example you can host both www.myfirstwebpage.com and www.mybusinesspage.com. Both XAMPP and MAMP applications make use of the Apache Server.
Stackoverflow is an online computer programming Q&A based community. All user generated content is licensed under a Creative Commons licence. This means that the cycle of content generation remains within the commons in order to promote universal access. Stackoverflow is a great place to pose questions when you stumble on a problem as well as a great opportunity to help others.