Tips for novice web developers

I have been creating websites in one form or another since 1995. After 25 years of work, I think I have accumulated experience and now I have sufficient knowledge. Several points are outlined at random below that I would like beginner developers to think about.

  • Sometimes a site is just a site.
  • The browser is already a client; HTML is the language it speaks.
  • The web is built around server-side visualization.
  • You can provide data in several ways; consider HTML as one way of presenting data.
  • Scaling on the side of your server will help everyone, while scaling on the client side will only help those with powerful hardware and fast connections.
  • Not everyone has (or can use) a mouse.
  • Not everyone has (or can use) a keyboard.
  • Not everyone has (or can use) a touchscreen.
  • Not every color and picture is displayed the same as yours.
  • Not everyone has the information processing capabilities that you have.
  • It is inhumane to shift everything onto others.
  • The browser native HTML is much faster than anything you would write in JavaScript.
  • HTML already perfectly represents DOM nodes.
  • HTML is a complete framework.
  • You can well change the design in CSS.
  • Before creating a user interface component, check to see if it is in HTML. If not available, there is probably a reason. Adding DOM to div or span not the best way out.
  • Not everything should be a “one-page application”.
  • Even if you need to maintain client state between page loads (for example, to play music or video), you can trust the browser to do most of the hard work by fetching a new page, and replacing the content container at the DOM level.
  • Endless scrolling is inhuman. People should be able to leaf through to the end. The torment described in religious texts is even less cruel.
  • If you have to do endless scrolling (and you don’t), make sure that nothing is needed below.
  • Give people a constant but arbitrary stimulus, and you will form a habit in them. Getting people on their product may and may seem like a great idea, but tobacco companies are going the same way.
  • If you are developing with CDN in mind, then server crawling will not be slow.
  • You can use multiple languages ​​at the same time. The main thing is not to make everything isomorphic.
  • Always check your data on the server side; everything that comes from the client should be suspicious.
  • The developer isomorphic code breaks the barrier between the client and the server. For a malicious client, this means that it can potentially control the server. Know where the data comes from.
  • Browsers are changing. Relying on the behavior of a particular browser means that you rely on this one browser at a given time. Code according to the standard and test everywhere.
  • Use polyfills for browsers that do not yet support the standard you are using.
  • Copying others is fine; so we learn. Just don’t do it thoughtlessly.

Several people became interested in what I meant by saying “keep client state between page loads”. This is not a textbook, but I mean that you can do something like this:


Div replacement test  

Here is the content container. The other document

image

Learn the details of how to get a sought-after profession from scratch or Level Up in skills and salary by completing SkillFactory paid online courses:


Read more

  • The coolest Data Scientist does not waste time on statistics
  • How to Become a Data Scientist Without Online Courses
  • Sorting cheat sheet for Data Science
  • Data Science for the Humanities: What is Data
  • Steroid Data Scenario: Introducing Decision Intelligence

Similar Posts

Leave a Reply