Langsung ke konten utama

Introduction to Web Development


Web developers, the people responsible for coding, building, analyzing, and maintaining all those websites. In short: web developers build and maintain websites. Web developers will often work for clients who are trying to get their product/service onto the web.

 

Types of Web Developers


Front-End Developer

The “Front End” is the stuff you see on the website in your browser, including the presentation of content and the user interface elements like the navigation bar.

The front end of a website is the part that users interact with. Everything that you see when you’re navigating around the Internet, from fonts and colors to dropdown menus and sliders, is a combo of HTML, CSS, and JavaScript being controlled by your computer’s browser.

Front-end developers are responsible for a website’s user-facing code and the architecture of its immersive user experiences. In order to execute those objectives, front-end devs must be adept at three main languages: HTML, CSS, and Javascript programming. In addition to fluency in these languages, front-end devs need to be familiar with frameworks like Bootstrap, Foundation, Backbone, AngularJS, and EmberJS, which ensure great-looking content no matter the device, and libraries like jQuery and LESS, which package code into a more useful, time-saving form. A lot of front-end developer job listings also call for experience with Ajax, a widely used technique for using Javascript that lets pages dynamically load by downloading server data in the background.

A designer crafted the logo and graphics, a photographer took the pictures, and a copywriter wrote the text. But a front-end dev assembled all of those pieces, translated them into web-speak, and built the experience you have with each page.

Front end developer

Previous experience

  • Understands key server-side web development concepts through experiences such as:
  • Interpreting graphic visual or interaction designs in HTML, CSS and Javascript.
  • Creating visually appealing web pages or interfaces.
  • Creating, editing or modifying templates for a CMS or web development framework.
  • Programming interaction with JavaScript and/or a library such as jQuery, YUI or Prototype.
  • Testing cross-browser, cross-platform, and/or cross-device compatibility for inconsistencies.
  • Testing for compliance to specified standards such as accessibility standards in the clients region or domain.
  • Conducting observational user testing, or reviewing designs against usability heuristics.

Domain specific knowledge or transferable skills

Experience with web development languages of HTML, CSS and JavaScript/jQuery.
  • HTML
    • Familiarity of HTML syntax for multiple specifications, including HTML 5.
    • Knowledge of the semantic meaning of all HTML elements.
    • Familiarity with the semantic markup for display of lists, tabular data, forms, articles, etc.
    • Knowledge of markup used for layout such as dividers.
    • Knowledge at the level to be able to hand-code markup.
    • Including media and images.
  • PHP
    • Familiarity with modifying Drupal Theme hooks to display data
    • Understanding how to utilize PHP to filter, process and output html, json, xml
  • CSS
    • Specifying different CSS for various media, devices and displays.
    • Best practices in CSS file organization and structure.
    • Methods for including CSS inline, internal and external via linked style sheets.
    • How to define, combine and group CSS selectors for HTML elements, ID, classes, pseudo classes, child or sibling.
    • Syntax of CSS declarations, properties and attributes.
    • CSS box model and methods for CSS positioning, absolute and relative.
    • Knowledge of properties and attributes to control the display.
    • Familiarity with differences in CSS 2 and CSS 3.
    • Proficient with a CSS Preprocessor such as Sass or LESS.
  • Best practices
    • Methods to ensure browser & device compatibility
    • Methods for degrading gracefully for older browsers and displays.
    • Methods to ensure accessibility.
    • File compression techniques for improving speed.
  • JavaScript
    • Knowledge of the operators, variables, datatypes, objects, properties and methods.
    • Familiarity with control structures such as objects, functions, conditional statements, arrays, loops and expressions.
    • Forms and regular expression validation and submitting data.
    • Knowledge of how to apply logical operators and conditional statements.
    • Knowledge of the DOM HTML objects and their properties.
  • Event handling.
    • Creating and controlling windows and dialogs.
    • Processes for troubleshooting and debugging
    • Familiarity with development and debugging tools for cross-browser issues.
  • jQuery
    • Knowledge of how to employ the jQuery library for visual effects, event handling, and document manipulation.

Back-End Developer

The back end of a website consists of a server, an application, and a database. A back-end developer builds and maintains the technology that powers those components which, together, enable the user-facing side of the website to even exist in the first place.

The “Back End” refers to the guts of the application, which live on the server. They manipulate data appropriately to make sure the Front End has what it needs. This can become very complicated as things scale. 

Back End Developers make use of programming languages like Java, Python, and Ruby (among many others) to work with data.

When you navigated to a website, the servers sent information to your computer or mobile device, which turned into the page you’re seeing right now. That process is the result of a back-end developer’s work. In addition, if you enroll in a course the storage of your personal information—and the fact that each time you return to the site and log in, your data is called up—is attributable to a back-end developer.

Full Stack Developer


“Full Stack” Developers marry both sides into one. A Full Stack developer can comfortably work with both the front and back ends.

Komentar

Postingan populer dari blog ini

Command Line Basics

The command line (Terminal on a Mac, Command Prompt on Windows) is your window into your computer and your home base for doing development work. It's how you'll be able to jump between files and directories, open stuff up, run simple scripts and check the status of things. The Command Line is fully text-based, so you'll need to type everything in and can pretty much forget about the mouse. Graphical User Interface We often access computer programs through their Graphical User Interface (or GUI, for short). This is simply the visual component of a computer program. For instance, word processing software (Microsoft Word, Google Docs, etc.) generally offers a GUI with whitespace to type in, a cursor to indicate where we're typing, and a variety of buttons, menus, and options to format our text. This is a GUI. It's the visual portion of a program we see and interact with. The Terminal However, when we are developing code we often ...

The Web

Internet: The internet is a network of linked computers from around the globe. Each of these computers communicate with each other in a specific format. Packets: Packets are the information of the internet. Packets are sent from the sender to the receiever in a specific format which contains all the information needed to communicate. The differences between a webpage, web server, web browser and search engine: A webpage is the page you look at in your browser. A web server is the computer that has the code for how the webpage should look and act. A web browser is a program on a computer that displays the web page. A search engine is a web server that searches all other web servers for information. A user can then pull up the webpage on their web browser and search for a site. Clients: A client is the computer or internet device that requests information from the server. Server: A server is the computer that rece...