Passwords you cannot optionally see or get back

If you are dyslexic passwords are a nightmare, typing in the correct sequence of characters without being able to see them is an absolute irritating and time consuming nightmare.
If you forget your password can you get it back, no you are given a chance to reenter a new password, but this means you have to think of yet another password and that confounds the issue over time and means you are even less likely to remember your password. Even if you remember it again when the password reset screen comes up some systems do not allow you to use old passwords again.

I remember something like fifty passwords but still have problems with some, and thinking of new ones that are hardened enough not to be cracked and remembering them is a nightmare, a nightmare, I tell you, well you probably already know.

Out of touch CEO’s

You have probably seen this one before but just for fun I am going to let Steve Ballmer demonstrate this one all for himself.

Lack of any connection with a product and its real usability, bugs, vulnerabilities, and problems that are just swept under the carpet. The so called “Metro” interface which has now been renamed to goodness knows what, and the lack of the start button is okay for the occasional user or for use on a touch screen machine but for most users machines and for Windows Server in particular it is totally out of touch, it should be an option.

URL space polution or “shall we buy up these domain names to see if we can make a few thousand bucks”

Basically domain name pollution or domain sitting as its also called stop legitimate use of domain names for good purposes. It should be outlawed and made illegal to hold on to a domain name for purposes of making money from it more than two years without using it. It just plain random capitalism and a misuse of the web. ICANN should be ashamed of them selves this is probably not what Tim Berners Lee intended should happen to his system.

Where is our IPv6 ?

Internet Protocol Version 6 was promised to be rolled out in the year 2012. It would have given us more IP addresses than we will ever need and much better IP facilities such as Mobile IP.

IP addresses are now like gold dust, Microsoft have reportedly bought up all the remaining ones that they can. There are a maximum of 2^32 IP addresses with our current IPv4 system as they are 32 bit or 4,294,967,296 of them. IPv6 on the other hand would give up 2^128 or 3.4 x 10^38, a very very big number.

Every person and every device could have its own IP address. Part of the reasoning in not introducing IPv6 is the overheads, see my post on MTU’s or Maximum Transmission Unit size.

HTML, CSS, and the box model, and lack of inheritance

If you have ever tried writing CSS for your HTML with lots of boxes called <div>’s you will find that the padding, borders, and margins are notoriously difficult to get right in a lot of circumstances. The model is basically what is called broken in programming parlance, its not logical, and it is not normalized. It can waste hours of time in learning HTML layout and hours when modifying and existing pure HTML/CSS web site.

The other problem with both HTML and CSS are the lack of inheritance, meaning you have keep repeating yourself and each time you make a modification you have to remember to do it in every case that you have used or worse in cryptic CSS code left by a pervious coder.

HTML and the verbosity of Markup languages

The web is all text based sequences of characters not raw binary data. It also keeps repeating information that is actually redundant. Every bit of HTML is written in what is called Markup hence the name “Hyper Text Markup Language”. Every bit of markup repeats its element name at the beginning and the end of its “section”, this is more than an overhead of 2.

There are no macro facilities for generating common parameterized sequences of HTML, and no inheritance of things like page headers, this all has to either be done on the server and retransmitted each time, or done in JavaScript which still requires retransmission or caching on the client browser.

It would be relatively easy to provide a binary format that is totally transparent on both browser and server end, by this I mean the user and web authors would not be aware of the difference and old browsers would still work.

This could be achieved utilizing techniques similar to a technology pioneered years ago in a language called ASN.1. Basically it allow binary description of data streams and provides the encoding and decoding of those streams.

So to put it in a nutshell HTML is a very inefficient way of both transmitting webpages and rendering them too as they have to be parsed from text to binary in order for the computer to understand them.

XML the cousin of HTML for the storage and transmission of data also suffers exactly the same problems.

Ethernet, MTU’s and the efficiency of the Internet

Ethernet or IEEE802.3 is the backbone of out whole worldwide internet system, used in offices, and the connections to the main backbone of the internet.

It has a variable called the MTU or Maximum Transmission Unit, which is basically the physical packet size that data is transmitted around in in the ISO OSI 7 layer model, which is a set of standards that all are communications systems are based on historically.

Anyway we live in a world on Mega bytes and Giga bytes these days, but our basic communication infrastructure is still based on a maximum MTU of 1536 bytes. Now this is a little short sighted to say the least. This is written into every bit of hardware to do with the internet, all our routers, switches, and the very chips that send and receive Ethernet communications in our very computers.

Also given the fact that each packet of IP (Internet Protocol) has several levels of headers there is also an extra overhead involved of 20 bytes plus some sometimes on every packet.

Then there are the TCP based headers for protocols like HTTP which is the thing you see at the beginning of every web address, that you probably ignore. This protocol header is text, a number of lines just as you would type it followed by a blank line followed by whatever HTML content there is. It also contains things like the dreaded cookies everyone is so worried about for tracking there surfing.

TCP stands for Transmission Control Protocol, which harps back to the days of dumb terminals and workstations which were the predecessors of our modern computers only connected back to mainframe computers rather than the internet.

All this adds up to a slow antiquated system, the MTU should be able to be at least a mega byte for streaming say video on YouTube for example, or even a modern web page.

You can calculate the average overheads, but they are significant particularly with the environment in mind. This system is just not green, I will go on to explain further why in another post about HTML…