If you could rewrite HTML/CSS/Javascript or other basic web languages from scratch, what changes would you make?

Asked by Last Modified  

Follow 1
Answer

Please enter your answer

IT Professional Trainer with 15 years of experience in IT Industry

It’s a short list:Static type checking.HTML, CSS, XML and JSON have many problems, most notably:They are all overly-complicated ways to express untyped trees.They were supposed to be human readable.A better direct replacement for all of these would be the most straightforward tree: a Lisp-style...
read more
It’s a short list:Static type checking.HTML, CSS, XML and JSON have many problems, most notably:They are all overly-complicated ways to express untyped trees.They were supposed to be human readable.A better direct replacement for all of these would be the most straightforward tree: a Lisp-style list of lists where the leaves are strings although I’d probably use m-express and square brackets rather than s-exprs because I find them easier to understand. However, significant picture none of this stuff needs to be human readable. We have computers, people. Let’s use them. So I’d go with a binary format but more on that later.Javascript is a poorly designed programming language when what we needed was a common language runtime. If I were to reinvent this today, I would use Microsoft’s .NET. If I were reinventing it back when Javascript came out I would look for a lean binary replacement like OCaml’s bytecode but, retrospectively, I’d be sad to have missed out on reified generics and value types.The core issue is this: HTML, CSS, XML and JSON are just ways for programs to exchange information. A better alternative would be to use statically type checked code and verify the data going over the wire using that same type system. The interface between your web browser and the remote web server should be type checked. No need for “schemas”. Serialization should be an implementation detail.Interesting question though. After programming for almost 40 years, professionally for over 24, I have given up because I cannot stand the fact that web technologies have dragged computer programming backwards ~20 years. I think the state of web tech is shameful.PS: I should probably give more detail about my proposed type of system. I’d aim for core ML:Ints, floats, chars and strings.Mutable arrays.TuplesUnions (where each constructor has precisely one argument).Functions (that accept one value and return one value).Parametric polymorphism (aka “generics”).Zeroth-order modules.I believe that is the most straightforward type of system that would be practically useful. You don’t even need a built-in bool type because it is just the union of true and false.I’d expect the first language to provide ML-style pattern matching with exhaustiveness and redundancy checking and the ability to serialize any value to and from the wire format (whatever it is: an implementation detail) with a single function call. read less
Comments

Trainer

I would first plan my work using a pencil and paper. The best architecture would involve DRY (Don't repeat yourself) techniques, resulting in modularised code. I would remove the dependency of one module over another. Coding standards and documentation would be the utmost priority, as it helps in the...
read more
I would first plan my work using a pencil and paper. The best architecture would involve DRY (Don't repeat yourself) techniques, resulting in modularised code. I would remove the dependency of one module over another. Coding standards and documentation would be the utmost priority, as it helps in the maintenance of the code over the long run once the application starts becoming bigger. read less
Comments

Related Questions

How do I become better at JavaScript?
Go through JavaScript tutorials from w3schools.com site. They have good examples with description. Then learn some es6 and es7 syntax. You will be pro in JavaScript.
Pooja
0 0
5
I know HTML, CSS, and a bit of JavaScript. What should I learn next?
HTML,CSS and Javascript are Tools which are used for Front-End Web Development. The next step is to learn the following: 1)Learn Javascript Frameworks like node.js,react.js,angular.js etc. 2)Learn Back-End...
Inch By
Want to learn javascript jquery and angular with live demo
Yes you can join me, i will provide you teaching with real life example,
Sandeep
0 0
7

What is an Array?

An array is a collection of (same or different type of) items.In Java and C#, etc., the elements inside the array should be of the same type (e.g. ) while in languages like JavaScript and Python. The elements can be different types also(e.g. )
M
Some basic program bass of java and how it work?
JavaScript (Lightweight & loosely typed client-side Scripting Language which needs interpreter) is entirely different from Java (Programming Language which needs compilation)
Shekhar

Now ask question in any of the 1000+ Categories, and get Answers from Tutors and Trainers on UrbanPro.com

Ask a Question

Related Lessons

Some good resources
Clean Code by Robert C Martin, is available in my profile please download and read it, irrespective of what language you code in, it will change the way you code. Also if you code in Javascript read https://12factor.net/ https://blog.risingstack.com/javascript-clean-coding-best-practices-node-js-at-scale/ For...

JavaScript Arrow Function
Javascript Arrow Functions : JavaScript ES6 is a type or version which let us provide a way to write javascript syntax in a better way. ES6 version is having a feature or new method to use functions...
A

Abhay

0 1
0

Differences Between HashMap vs HashSet In Java.
HashSet HashMap HashSet implements Set interface. HashMap implements Map interface. HashSet stores the data as objects. HashMap stores the data as key-value pairs. HashSet...

Mark And Sweep Algorithm in Javascript Memory Management
This algorithm reduces the definition of "an object is not needed anymore" to "an object is unreachable". This algorithm assumes the knowledge of a set of objects called roots (In JavaScript, the root...

Become a Javascript Programmer | Kick start your career as a web developer
Wondering what to do after college? If you want to start your career in IT and if you want to become a programmer, I would strongly insist on learning one language/skill and that language is 'Javascript'. Yes,...

Recommended Articles

Here are the top 6 must have skills for every Web Designer : Technical Skills Web designers undoubtedly require very strong technical skills. They must have hands on using Web designing software and tools, such as Adobe Dreamweaver, Fireworks, Photoshop, Flash etc. In addition to the knowledge of design...

Read full article >

Whether it was the Internet Era of 90s or the Big Data Era of today, Information Technology (IT) has given birth to several lucrative career options for many. Though there will not be a “significant" increase in demand for IT professionals in 2014 as compared to 2013, a “steady” demand for IT professionals is rest assured...

Read full article >

Microsoft Excel is an electronic spreadsheet tool which is commonly used for financial and statistical data processing. It has been developed by Microsoft and forms a major component of the widely used Microsoft Office. From individual users to the top IT companies, Excel is used worldwide. Excel is one of the most important...

Read full article >

Almost all of us, inside the pocket, bag or on the table have a mobile phone, out of which 90% of us have a smartphone. The technology is advancing rapidly. When it comes to mobile phones, people today want much more than just making phone calls and playing games on the go. People now want instant access to all their business...

Read full article >

Looking for Java Script Training classes?

Learn from the Best Tutors on UrbanPro

Are you a Tutor or Training Institute?

Join UrbanPro Today to find students near you