
In this lecture we'll see the needed tools for web development and some suggestions for such tools.
In this lecture we'll make a short introduction to the origins of HTML5.
In this lecture we'll understand the structure of HTML markup.
In this lecture we'll see how html page is structred and what are its elements.
In this lecture we'll see another type of tags - tags that don't effect a text but effect the page format.
In this lecture we'll see what tag's attributes are and get to know some useful tags.
In this lecture we'll learn a useful tag for making lists in html.
In this lecture we'll learn about the table tag.
A short summery of this section, and what is left to complete it.
In this lecture we'll see the problems with html page layouting.
In this lecture we'll learn about the div tag and see its role in page layout.
In this lecture we'll see what semantic elements are and why they are important.
In this lecture we'll introduce the input tag to perform user input and get to know some of the available input types.
In this lecture we'll continue to see other types of inputs.
In this lecture we'll see what is CSS and how to apply in inside html tags.
In this lecture we'll see how to apply styling in style tag and in external file.
In this lecture we'll learn about various css selectors.
In this lecture we'll see some styling properties.
In this lecture we'll learn about the box model.
In this lecture we'll have a little taste of css3 version.
In this lecture we'll see a short overview on JS history and place in the world.
In this lecture we'll see three options for running JS code.
In this lecture we'll learn how to write JS functions
In this lecture we'll learn about the execution context and scopes
In this lecture we'll learn about the hoisting mechanism in js.
In this lecture we'll see the function type and functions as references
In This lecture we'll see the function expression and few more functional abilities in JS
In this lecture we'll see how we can use function in variety of ways in functional programming.
In this lecture we'll see how arrays are defined in JS.
In this lecture we'll see how to reverse array and how to sort it.
In this lecture we'll see how to manipulate items in the array
In this lecture we'll see the array's helper (iterative) functions.
In this lecture we'll see what is a JS object and how to create it using the constructor.
In this lecture we'll see another method of creating an object, using the object literal.
In this lecture we'll see the factory pattern as a tool for creating objects
In this lecture we'll see how the html is represented as a tree.
In this lecture we'll see the elements objects and some of their properties. We'll also see the document object.
In this lecture we'll see how to access specific elements on the page in various ways.
In this lecture we'll learn about events and see how to write events listener.
In this lectures we'll see more things we can do with listeners - listen with one listener to multiple objects.
In this lecture we'll see how to change the DOM tree in run time.
In this lecture we'll see what are some of the main problems in writing big applications in JS.
In this lecture we'll see how to define a module or namespace and we'll learn bout the important feature called closure.
In this lecture we'll see anonymous self executed functions.
In this lecture we'll present the application we want to develop
In this lecture we'll build the main structure of the project
In this lecture we'll go over the code of the main module
In this lecture we'll go over the rest of the code
TL;DR - Learn HTML, CSS, JS, they are the tools of the past, present and future.
Web development is a big thing nowadays, and probably would be in the next coming years. Web development is the field of writing applications that would run and accessed via the web browser. The web development field had gone (and is going every day!) through tremendous changes. From the very first days of the internet and to our present days, the web technology advances in huge steps, making state of the art technologies obsolete, creating new technologies almost on monthly basis, and attracting more and more developers, companies and industries to the web development area.
What is a web development really?
In web development we build web applications. A web application is an application that is rendered on the browser, and accessed by the user through the browser. Simply put - when you order tickets to movie in your home town theatre, when you check your bank account balance, when you write a post on Facebook or update your resume on LinkedIn, all of these and more are examples to web applications. You open a web browser, go to a specific URL, and get a full working application. Today you can even find sophisticated applications on the web, like sound and video editing applications, drawing, recording, gaming, word processing, you name it. They're all on the web, and all are accessed via the browser.
So, how do I build one?
Like any other field, web development has its own jargon and tools. Since the technology becomes more able and strong, new platforms, languages and tools arise every day. But over the years that passed and probably for the years to come, there are three essentials tools and skills that stand in the base of every web application - those are html, css and javascript.
What is HTML?
HTML (stands for HyperText Markup Language) was invented by Tim Berners-Lee in the late 1980's. It's a standard that contains data to be rendered on the browser, and directions of how to render it. The browser reads HTML document that tells it what to show and how to show it. For example, we can tell the browser to show the sentence "Hello World", and if we want the browser to make it bold, we'll add HTML directions (called "markups") that would direct the browser how to render the text. In this manner, html contains the data (What to be shown) and the meta-data (how it would be shown).
What is CSS?
HTML comes with very narrow set of abilities to style the page. For real styling we use CSS (stands for Cascading StyleSheet). CSS contain rules that control the page styling and actually can do anything - we can change font family, size, decoration, we can change background colours, images, shadows, gradients, every type of styling is possible with CSS, and more features are added all the time.
What is Javascript?
Javascript (abbreviated to JS) is a programming language that was invented in the mid 1990's and its main and primary goal was to enable simple functionality to the HTML. For example, if we built a HTML form in which the user should fill his/her name, we could use JS code to validate the input. Over the years, and really in the last decade, JS had became from a modest, inefficient and kind of "toy" language, to a monstrous creature that controls every last aspect of the web. Everything in the web development world is done with JS, and its popularity increases by every known matrices.
But hey, people really build web apps using those three tools?
The answer is yes and no. HTML is too complicated, css is a mess and JS code tends to be unmaintainable very quickly, so you can't really write a web app that is more than trivial and keep your sanity.
Over the last decade tons of tools were invented to overcome those three friends' disadvantages, and modern web applications are written in variety of modern, new and shiny tools. You probably heard some buzzwords like Angular, React, Vue, Meteor, Bootstrap, Node and so on. To be a web developer you will probably have to learn one (and usually much more than one) of those tools.
But here is the trick - every platform, every modern tool, with no exception at all, works on the same basic tools - HTML, CSS, JS. No Exceptions, and I mean it. That means that you just can't start learning how to develop web application without them. If you try to start learning Angular for example, without any knowledge in the three basic tools, you'll get nowhere. So the conclusion is that you have to learn the basic tools and to use them as a jumpstart to other newer tools.
Another advantage for learning the basic triad
Even if you somehow manage to learn reasonably enough one platform without the triad, you are not safe! As mentioned earlier - the web development world is crazy and moving fast. I mean very fast. New platforms are invented on day to day basis. New libraries, new tools. AngularJS had started in 2010, but now it is version 6 and the Angular paradigm had changed drastically during this time. Vue.js was presented in 2017, and as to the time I'm writing those lines, there is some trend to migrate to Vue.js from other platforms. And it's not the end. One just can't keep track of all the new ideas and innovations with this influx of ideas. What I'm saying is that if you don't know the basics, you'd be irrelevant the minute a new technology appears. If you knew only AngularJS, what would you do when version 3 came along, and it's different from the one you know? But since the basic triad - html, css and js - stands on the basis of every platform, when you know it you can migrate to any other new and shiny platform.
In the bottom line - learn html, css and js if you want to be a web developer. They are not going anywhere anytime soon.