What is web development?

Appeared with the Internet, web development refers to the process of writing a website or a web page in a technical language.
What is web development?
Web development is based on the use of languages ​​(HTML / CSS, JavaScript, PHP ...) to write programs that are then executed by computers. The instruction is put in place on the Internet and is carried out on the server. Depending on the needs of site owners or web pages, these can consist of texts and graphic elements that look like a document or be interactive by displaying information that changes.
The job of the web developer
Depending on the requirements presented in a precise specification, this specialist analyzes the needs and defines the appropriate technical solution. He then develops the functionality of the website or the web application by writing lines of code. Its missions also include the diagnosis and the resolution of problems detected on a site already online. Versatility, autonomy, adaptability, and respect for deadlines are among the qualities of this professional.
What is the appropriate training to become a web developer?
Different pieces of training for web developers are offered within the grandes écoles. The IESA multimedia offers a Bac + 3 in web development, with the Bachelor Multimedia Project Manager, accessible to Bachelors or holders of a Bac + 1 or Bac + 2. The specialization in web development takes place during the 3rd year.
To obtain a Bac +5 in web development, candidates must pursue two years of additional study to acquire more technical skills in this area. At IESA Multimedia, they can continue their studies with a Master's degree in Digital Strategy with a specialization in project management and web development. Delivered over two years, this training takes place alternately, based on 4 days in a company and 1 day at school.
For adults in reconversion, IESA Multimedia offers a module Web Developer of a duration of 5 weeks. The program consists of the following courses:
Introduction to dynamic and static sites.
Hosting systems.
Learning CMS.
Introduction to the PHP language.
Database design.
Algorithms and PHP programs.


Static site builders: how to build a web project with a minimum of resources.
Today, online offers are characterized not only by their variety of topics but also increasingly by their functional diversity. Dynamic elements that allow visitors to interact directly with the webpage or modulate the visual appearance (ie the appearance of the entire homepage or particular items) significantly increase the value-added sites and play an increasingly important role.
The deployment of interactive components, which can be implemented using databases and scripting languages ​​(such as PHP or JavaScript) either server-side or client-side, is not appropriate for every type of website. Small sites such as blogs, corporate sites or personal homepages can also satisfy customers with only static content without giving up basic features. By making a static website, developers often use static site builders. They greatly simplify the programming process through pre-fabricated website layouts and components.
Summary
What is a static site generator?
What are the benefits of a static website?
Weaknesses of web page generators
What are the most popular static website builders?

What is a static site generator?
Static website generators (sometimes also known as web page generators) are prefabricated code structures that form the basis of static websites. As opposed to CMSs that typically back up content on databases and process server-side HTML using scripting languages, static site builders create the HTML locally on the developer's computer (or in the cloud). To this end, all necessary components are stored in a well-structured inventory characterized by the strict separation of layout and content. This allows users to make changes to the project design at any time without changing previously published content. To achieve this goal, most builders have a template engine that allows them to create appropriate presentation templates.
The installation and operations of a static site generator are performed by the command-line interface. The actual content of the site is written in markup languages ​​such as Markdown, the corresponding HTML editors are then integrated into the software or, if necessary, downloaded manually. In order to publish a website, the automatically generated web code must be transferred to the desired webspace. Using the metadata at the beginning of the files (often called "introductory pages"), the builder makes sure that the website is visible in the visitor's browser. Instead of an uploaded inventory on your own webspace, it can also be stored in a content distribution network (DRC).
What are the benefits of a static website?
Static websites are reminiscent of the early days of the World Wide Web, where pop-up advertising windows represented the highest level of interactivity. Today, websites are often much more complicated than simple information platforms. Dynamic elements are therefore also an important factor and should not be underestimated to implement a powerful web application. In some cases, however, as for blogs or some corporate portals, simply transmitting information remains at the heart of the project. Although content management systems and home page authoring tools can be used for such projects, static site builders have decisive advantages over traditional solutions:
Speed: Projects created with a static website builder get outstanding results. Since they are composed only of HTML codes (and possibly CSS and JavaScript codes), the interpretation of these codes is an easy task for browsers. So, database queries that require resources are no longer needed. This means that the server can respond directly to each request. In addition, caching of content is also possible, which saves time when the page is requested again.
 Content version control: Although the content of dynamic Web projects is stored separately from the codebase in the databases, the content of a static site is usually in plain text files. As a result, the content elements are not structured differently from the other components of the codebase. This way, you can perform version control without any problem. For example, you can manage not only the code structure of a blog found in the inventory of GitHub but also the content of different blog articles. If there are multiple content managers, you can easily keep track of changes made. The GitHub Pages developer platform even offers its own version control package as well as a static site builder (as Jekyll).
 Security: Web sites created by static website builders provide very little opportunity for attack. This contrasts with content management systems (such as WordPress), which have a fairly high vulnerability risk and therefore need to be updated regularly. Static Web projects benefit primarily because they fulfill their goals even without accessing the database and without interacting with users or performing authentication. The potential risk is limited to client access when the page is called. Therefore, in the case of structured HTML pages, the probability of unwanted access is, in general, reduced to a minimum.
 Simple server maintenance: static site builders also have dependencies that must be taken into account. The number of components required is relatively small, but these are only relevant in the development process. While other solutions require various modules, databases, libraries, structures, and packs for live operation (and thus also regular updates), static pages are bound only to a functioning Web server from the moment of their publications.
 Good traffic management: Web projects with dynamic elements usually have problems with unexpected traffic spikes. The increase in the number of visitors can be absorbed in part by caching mechanisms, but the server reaches its limits quickly if a large number of queries are related to database queries. Websites created by a static website builder have far fewer problems with a high number of visitors. Rendering static HTML pages requires very few resources from a server.
Weaknesses of web page generators
Although the benefits of static pages (such as speed or high security) can not be denied, many disadvantages can make a static site generator unsuitable for large projects. Above all, mention must be made of the huge maintenance costs. Generators not only require extensive knowledge of Markdown and HMTL but also lack the many automations that are taken for granted in content management systems as well as in the building elements of home pages. The following weaknesses can also be detected when using static website builders:
No real-time content: A static site builder offers no opportunity to create dynamic content (such as recommendations, price updates, full-text search, etc.). The elements automatically adapted to the user that are analyzed in real-time can only be implemented using diverted means such as client-side scripts (especially JavaScript). This means that there are potential vulnerabilities that could pose a threat to the Web project as well as to its visitors. In addition, many users have blocked JavaScripts and other scripting languages ​​in their browsers so that these contents are not visible.
 Time-consuming user input: Another problem with missing server scripts is when the web project must also allow user input in certain situations (for example, when filling out a contact form). Therefore, it is necessary to use JavaScript or support third-party services. The DISQUS platform can also be used, for example, to add a comment function (including for content moderation and spam management) to website builder projects. However, this service also relies on JavaScript. In addition, the GitHub pages offer a comment function, which is not only closely related to version management, but also evaluated on the server-side. In any case, the time and technical effort required to implement these user components are usually quite high.
 No traditional user interface: Static site builders have no internal interface with which to create new content or modify what has already been created. WYSIWYG editors help write the necessary Markdown code and inspect the result in advance using the preview feature, but do not eliminate the need for manual downloads of prefab files on the server. This process is particularly difficult for publishers who have little to do with the actual code and structure of the site. As a result, access takes much longer than CMSs like WordPress.
In summary, projects based on static pages also have their weaknesses, especially if changes or interaction with users are needed. Solutions such as authoring tools and content management systems are preferable to minimalist static website builders if you.
review content regularly,
add different functions,
handle user input, or
make optical adjustments at any time and with little know-how.
What are the most popular static website builders?
Recently, the number of static site builders has increased dramatically. On GitHub, for example, there is a list of many free open source solutions that can create your own website and adapt it to your needs. Staticgen.com offers an overview of the most popular generators. The page lists the different options in alphabetical order and scores according to several criteria. In addition, the structure of websites can also be filtered according to the programming language (eg Ruby, Python, C, C ++). The following table is based on the StaticGen information and shows some of the most important generators (without JavaScript):
With more than 31,000 stars and 7,000 forks, Jekyll is the undisputed leader of static site builders on GitHub. This can be explained by the fact that the Jekyll structure forms the basis of the official hosting service of the developer platform "GitHub Pages". In addition, Jekyll, written in Ruby and published in 2008 by GitHub founder Tom Preston-Werner, is one of the oldest generators. The rendering engine is responsible for generating the HTML code. Our guide provides detailed information and a tutorial on creating a Jekyll project via GitHub Pages.
Since 2013, the Hugo generator published by Steve Francia has also been noticed (more than 20,000 GitHub stars and 2,700 forks). Unlike Jekyll, Hugo was written in Go programming language, which was developed by Google employees. On the official homepage, Hugo provides more than 100 website templates, which can be used as templates for layout and design for the realization of your own website. This static website builder also offers its own web server for the delivery of HTML pages.
Even if the other generators (such as Octopress, Middleman or Cactus) do not have the same level of distribution as Hugo or Jekyll, an accurate test can be useful, for example, to have another programming language or another engine template. Because of the small size of the programs in question, they can be tested in no time; you can easily search for new website builders and find the one that best suits your needs.

0 Comments