Updates and Upgrades


Embed from Getty Images

I have currently got computer issues so this week’s posting has not been written.😱 I’m writing this as a placeholder until I can catch up. The subject will be, as above, “upgrades”.

One of the joys of using a computer is applying the updates that come out for the operating system and applications. With a multitude of computing devices that a person has these days, this can be time consuming.


Embed from Getty Images

On desktop computers running the Windows operating system, this can be made pretty much invisible, but on phones and tablets, and on other operating systems this can be a chore.

Most updates are for applications and not for the operating system itself, but often a user may have no idea of the difference. A tech-savvy person asks what operating system a user is using, expecting to hear “8.1” or “7” or even “Vista” or “XP” he/she is surprised to be told “Internet Explorer” or even “GMail”.

Screenshot of Android 4 on Galaxy Nexus
Screenshot of Android 4 on Galaxy Nexus (Photo credit: Wikipedia)

An application upgrade is usually benign and the user will not notice any difference as the changes will be behind the scenes, but now and then a user visible change is made and the user often thinks that his machine is broken.

Geeks often have a quiet snigger at this but it is a bit unfair. The user is using the computer as a tool, and tools as a rule do not change. A spanner doesn’t suddenly overnight change from Imperial sizes to Metric sizes and the computer user is not unreasonable in expecting his/her computer to not suddenly change.


Embed from Getty Images

Some updates however are far from benign, causing data loss or serious computer issues. Those not of the “Windows World” frequently blame Microsoft for such issues, but when there are billions of users out there, using different hardware configurations, it is not surprising that things occasionally break. Nastily!

When I talk about the “Windows World”, I am talking about the users of the Microsoft Windows operating system, by far the largest group of computer users. Until recently the other major groups of users were the “Mac World” and the “Linux World”, but more recently these have been joined by the “Apple World” and the “Android World”.


Embed from Getty Images

Since Macs are made by Apple, arguable the “Mac World” and the “Apple World” are the same, but by the “Apple World” I mean those users of iPads, iPhones and even the iPod. The “Mac World” refers to users of desktop and laptop Macintosh computers.

The application updates are arguably more visible on handheld devices and owners of such devices may be notified two or more times a week that such and such an app needs updating or has been automatically updated. It’s not too much of an issue, but naive users may not be performing the necessary couple of clicks to update the apps.


Embed from Getty Images

Of course, by taking this course they may be missing out on security and stability fixes or fixes for serious bugs, to them the risk of fiddling with their devices may seem higher, and I can understand that.

Computer users, especially naive users, develop a pattern of working, a “workflow” if you like that suits them and works around any bugs or issues in their apps. No wonder they get furious when their workflow is disrupted! In one case, (reputedly) a computer user who had her machine updated was outraged that her icon had “gone”, when in fact it had moved to a different line.


Embed from Getty Images

It’s easy to laugh at such happenings, but really, one should try to see here point of view. The icon did something when she clicked. It had moved and even if it looked the same in its new position, she could not be sure that it would do the same thing.

If a more sophisticated user were to notice that an icon had moved, they would probably assume that it would work the same, and in 99.99…. per cent of the time they would be correct. But the naive user did not know the odds and of course, she was correct in that there was a non-zero possibility that the icon would behave differently.


Embed from Getty Images

There is a subtle difference between an update and an upgrade, I believe. I don’t know if it is an official definition, but when updates are mentioned I feel that such changes should be minor and with little visible impact. Updates may be changes made to applications and to the operating system itself, but the key feature is that they do change functionality or user workflow fundamentally, and would predominately be bug fixes or small enhancements.

Upgrades on the other hand, would be more fundamental changes and may result in majorly changed functionality and workflows, like the changes between Windows 7 and Windows 8. The change between Windows 8 and Windows 8.1 would probably be an update rather than an upgrade, but this one is marginal.

Tux, the Linux penguin
Tux, the Linux penguin (Photo credit: Wikipedia)

I’m in the “Linux World” and my desktop runs Ubuntu. I’ve recently upgraded to version 14.10 (also known as Utopic Unicorn) and I had a number of issues, none of which was a show stopper, but some of which were annoying. I’ve previously upgraded successfully with few issues, but maybe I accumulated too much junk.

I definitely don’t think that the issue is with Utopic Unicorn as the forums don’t have posts which relate to my issues, which they would if it were a general issue, so it is something related to my own setup, most likely.

Official Ubuntu circle with wordmark. Replace ...
Official Ubuntu circle with wordmark. Replace File:Former Ubuntu logo.svg. Español: logo de Ubuntu + marca denominativa Français : Logo officiel d’Ubuntu. Remplace File:Former Ubuntu logo.svg. (Photo credit: Wikipedia)

So I’ve reinstalled, which has taken some time. There is one niggly issue that should be fixed shortly, but I was without access to some essentials, like Facebook and GMail on my desktop machine, for a day or two. Fortunately I was able to access these absolute essentials on my tablet (Android) and phone (also Android).

During this time I had to fix my daughter in law’s Windows laptop and upgrade the iPad to the newest version of IOS. Now my Android phone wants to upgrade to Android version 5.0 (also known as “Lollipop”). I think that I will wait for version 5.0.1 or 5.1!


Embed from Getty Images

Fractals

A Julia set, a fractal related to the Mandelbr...
A Julia set, a fractal related to the Mandelbrot set (Photo credit: Wikipedia)

Now and then I fire up one of those programs that displays a fractal on the screen. These programs use mathematical programs to display patterns on the screen. Basically the program picks the coordinates of a pixel on the screen and feeds the resulting numbers to the program. Out pop two more numbers. These are fed back to the program and the process is repeated.

There are three possible outcomes from this process.

Firstly, the situation could be reached where the numbers being input to the program also pop out of the program. Once this situation is reached it is said that the program has converged.

Convergent light beam passing through a square...
Convergent light beam passing through a square hole (Photo credit: Wikipedia)

Secondly, the numbers coming out of the program can increase rapidly and without bounds. the program can be said to be diverging.

Thirdly, the results of the calculation could meander around without ever diverging or converging.

English: The Markov chain for the drunkard's w...
English: The Markov chain for the drunkard’s walk (a type of random walk) on the real line starting at 0 with a range of two in both directions. (Photo credit: Wikipedia)

A point where the program converges can then be coloured white. Where it diverges, the point or pixel can be coloured black. A point where the program seems to neither converge nor diverge can then be coloured grey. A pattern will then appear in the three colours which is defined by the equation used.

Anyone who has seen fractals and fractal programs will realise that a three colour fractal is pretty boring as compared to other published fractal images. Indeed the process that I have described is pretty basic. A better image could be drawn by colouring points differently depending on how fast the program converges to a limit. This obviously requires a definition of what constitutes convergence to a limit.

Fractal Art
Fractal Art (Photo credit: Wikipedia)

Convergence is a tricky concept which I’m not going to go into, but to compute it to say in a computer program you have to take into account the errors and rounding introduced by the way that a computer works. In particular the computer has a largest number which it can physically hold, and a smallest number. Various mathematical techniques can be used to extend this, but the extra processing required means that the program slows down.

[Fractal]
[Fractal] (Photo credit: Wikipedia)
I’m not going to explain how this difficulty is circumvented, since I don’t know! However the fact is that the computer generated fractals are fascinating. Most will allow you to continually zoom in on a small area, revealing fantastic “landscapes” which demonstrate similar features at all the descending levels. Similar, but not the same.

fractal landscape
fractal landscape (Photo credit: Wikipedia)

The above far from rigorous description describes one type of fractal of which there are various sorts. Others are described on the Wikipedia page on the subject.

Another interesting fractal is created on the number line. Take a fixed part of the number line, say from 0 to 1, and divide it into three parts. Rub out the middle one third. This leaves two smaller lines, from 0 to 1/3 and from 2/3 to 1. Divide these lines into three parts and perform the same process. Soon, all that is left is practically nothing. This residue is known as the Cantor set, after the mathematician Georg Cantor.

English: A Cantor set Deutsch: Eine Cantor-Men...
English: A Cantor set Deutsch: Eine Cantor-Menge Svenska: Cantordamm i sju iterationer, en fraktal (Photo credit: Wikipedia)

This particular fractal can be generalised to two, three, or even higher dimensions. The two dimensional version is called the Sierpinski curve and the three dimensional version is called the Menger sponge.

One of the fractal curves that I was interested in was the Feigenbaum function. This fractal shows a “period doubling cascade” as shown in the first diagram in the above link. If you see some versions of this diagram the doubling points (from which the constant is determined) often look sharply defined.

English: A very old ficus tree in São Paulo, B...
English: A very old ficus tree in São Paulo, Brasil. Deutsch: Ein sehr alter Feigenbaum in São Paulo, Brasilien. Português do Brasil: Uma figueira muito antiga nas ruas de São Paulo, Brasil. (Photo credit: Wikipedia)

I was surprised the doubling points were not in fact sharply defined. You can see what I mean if you look closely at the first doubling point in the Wolfram Mathworld link above. Nevertheless, the doubling constant is a real constant.

English: Bifurcation diagram Česky: Bifurkační...
English: Bifurcation diagram Česky: Bifurkační diagram Polski: Zbieżność bifurkacji (Photo credit: Wikipedia)

Another sort of fractal produces tree and other diagrams that look, well, natural. A few simple rules, a few iterations and the computer draws a realistic looking skeleton tree. A few tweaks to the program and a different sort of tree is drawn. The trees are so realistic looking that it seems reasonable to conclude that there is some similarity between the underlying biological process and the underlying mathematical process. That is the biological tree is the result of an iterative process, like the mathematical trees.

Русский: Ещё одно фрактальное дерево. Фракталь...
Русский: Ещё одно фрактальное дерево. Фрактальное дерево. (Photo credit: Wikipedia)

I’ve mentioned natural objects, trees, which show fractal characteristics. Many other natural objects show such characteristics, the typical example which is usually given is that of the coastline of a country. On a large scale the coastline of a country is usually pretty convoluted, but if one zooms in the art of the coastline that one zooms in on stays pretty much as convoluted as the large scale view.

Mandelbrot fractal. Rendered as an island with...
Mandelbrot fractal. Rendered as an island with Terragen, a fractal-based landscape generator. (Photo credit: Wikipedia)

This process can be repeated right down to the point where one can see the waves. If you can imagine the waves to be frozen, then one can take the process even further, but at some point the individual water molecules become visible and the process (apparently) reaches an end.

If you want a three dimensional example, clouds, at least clouds of the same type, probably fit the bill. Basically what makes the clouds fractal is the fact that one cannot easily tell the size of a cloud if one is simple given a photograph of a cloud. It could be a huge cloud seen from a distance or a smaller cloud seen close up. Of course if one gets too close to a cloud it becomes hazy, indistinct, so one can use those clues to guess the size of a cloud.

Fractals were popularised by the mathematician Benoit Mandlebrot, who wrote about and studied the so-called Mandlebrot set, wrote about it in his book, “The Fractal Geometry of Nature”.  I’ve read this fascinating book.

English: Topological model of Mandelbrot set( ...
English: Topological model of Mandelbrot set( reflects the structure of the object ) Polski: Topologiczny model zbioru Mandelbrota ( pokazuje strukturę obiektu) (Photo credit: Wikipedia)

While I was searching for links to the Mandlebrot Set I came across the diagram which shows the correspondence of the period doubling cascade mentioned above and the Mandlebrot set. This correspondence, which I did not know about before, demonstrates the interlinked nature of fractals, and how simple mathematics can often have hidden depths. Almost always has hidden depths.

English: Paths of correspondence between scien...
English: Paths of correspondence between scientists (Photo credit: Wikipedia)

 

A Programmer’s Lot is Not a Happy One?


Embed from Getty Images

Well, I don’t know really. Most programmers that I know seem about as happy as the rest of the population, but I was thinking about programming and that variation on “A Policeman’s Lot” from the Pirates of Penzance appealed to me.

Programming in often presented as being difficult and esoteric, when in fact it is only a variation of what humans do all the time. When you read a recipe or follow a knitting pattern, you are essentially doing what a computer does when it “runs a program”.

Unix program to display running processes
Unix program to display running processes (Photo credit: Wikipedia)

The programmer in this analogy corresponds to the person who wrote the recipe or knitting pattern. Computer programs are not a lot more profound than a recipe or pattern, though they are, in most cases, a lot more complicated than that.

It’s worth noting that recipes and patterns for knitting (and for weaving for that matter) have been around for many centuries longer than computer programs. Indeed it could be argued that computers and programming grew out of weaving and the patterns that could be woven into the cloth.

English: Pattern of traditional Norwegian Sete...
English: Pattern of traditional Norwegian Setesdal-sweater. The pattern is created to be used on a punch card in a knitting machine. Svenska: Klassiskt mönster från lusekofta från Setesdalen, Norge. Mönsterrapporten är skapad för att användas på hålkort i stickmaskin. (Photo credit: Wikipedia)

In 1801 Joseph Marie Jacquard invented a method of punched cards which could be used to automatically weave a pattern into textiles. It was a primitive program, which controlled the loom. I imagine that before it was invented the operators were giving a sheet to detail what threads to raise and which drop, and which colour threads to run through the tunnel thus formed. I can also imagine that such a manual process would lead to mistakes, leading to errors in the pattern created in the cloth. It would also be time consuming, I expect.

Jacquard’s invention, by bypassing this manual method would have led to accurately woven patterns and a great saving in time. Also, an added advantage was that changing to another pattern would be as simple as loading a new set of punched cards.

English: Jacquard loom in the National Museum ...
English: Jacquard loom in the National Museum of Scotland, Edinburgh. Nederlands: Weefgetouw met Jacquardmechanisme in het National Museum of Scotland, Edinburgh. (Photo credit: Wikipedia)

At around this time, maybe a little later, the first music boxes were produced. These contained a drum with pins that plucked the tines of a metal comb. However the idea for music boxes goes back a lot further as the link above tells.

The only significant difference between Jacquard’s invention and the music boxes is that Jacquard relied on the holes and music boxes relied on pins. They operated in different senses, positive and negative but the principle is pretty much the same.

A PN junction in thermal equilibrium with zero...
A PN junction in thermal equilibrium with zero bias voltage applied. Electron and hole concentrations are reported respectively with blue and red lines. Gray regions are charge neutral. Light red zone is positively charged. Light blue zone is negatively charged. Under the junction, plots for the charge density, the electric field and the voltage are reported. (Photo credit: Wikipedia)

Interestingly there is a parallel in semiconductors. While current is carried by the electrons, in a very real sense objects called “holes” travel in the reverse direction to the electrons. Holes are what they sound like, places where an electron is absent, however I believe that in semiconductor theory, they are much more than mere gaps, and behave like real particles.

It’s amazing how powerful programming is. Microsoft Windows is probably the most powerful program that non-programmers come into contact with, and it does so many things “under the hood” that people take for granted, and it is all based on the absence or presence of things, much like Jacquard’s loom and the music boxes. While that is an analogy, it is not too far from the mark, and many people will remember having been told, more or less accurately that computers run on ones and zeroes.


Embed from Getty Images

When a programmer sits down to write a program he or she doesn’t start writing ones and zeroes. He or she writes chunks of stuff which non-programmers would partially recognise. English words like “print”, “do”, “if” and “while” might appear. Symbols that look like maths might also appear. Depending on the language, the code might be sprinkled with dollar signs, which have nothing directly to do with money, by the way.

The programmer write in a “language“, which is much more tightly defined than ordinary language, but basically it details at a relatively high level what the programmer wants to happen.

Logo for the Phoenix programming language
Logo for the Phoenix programming language (Photo credit: Wikipedia)

The programmer may tell the program to “read” something and if the value read is positive or is “Baywatch” or is “true”, do something. The programmer has to bear in mind that often the value is NOT what the programmer wants the program to look for and it is the programmer’s responsibility to handle not only the “positive” outcome but also the “negative” one. He or she will tell the program to do something else.

When the programmer tells the program to “read” something, he or she essentially invokes a program that someone else has written whose only job is to respond to the “read” command. These “utility” program are often written in a more esoteric language than the original programmer uses (though they don’t have to be), and since they do one specific task they can be used by anyone who programs on the computer.

This program instructs other, lower level programs to do things for it. Again these lower level programs do one specific thing and can be used by other programs on the computer. It can be seen that I am describing a hierarchy of ever more specialised programs doing more and more specific tasks. It’s not quite like the Siphonaptera though, as the programs eventually reach the hardware level.

At the hardware level it will not be apparent what the programs are intended for, but the people who wrote them know the hardware and what the program needs to do. This is partially from the hierarchy of programs above, but also from similar programs that have already been written.

English: CPU
English: CPU (Photo credit: Wikipedia)

Without going into detail, the low level program might require a value to be supplied to the CPU of the computer. It will cause a number of conducting lines (collectively a “bus”) to be in one of two states, corresponding to a one or a zero, or it might cause a single line to vary between the states, sending a chain of states to the CPU.

In either case the states arrive in a “register”, which is a bit like a railway station. The CPU sends the chains of states (or bits) through its internal “railway system”, arranging for them to be compared, shifted, merged and manipulated in many ways. The end result is one or more chains of states arriving at registers, from whence they are picked up and used by the programs, with the end result being whatever the programmer asked for, way up in the stratosphere!

Modelleisenbahn im Hauptbahnhof Wiesbaden
Modelleisenbahn im Hauptbahnhof Wiesbaden (Photo credit: Wikipedia)

This is monumental achievement, pun intended, and is only achievable because at each level the programmer writes a program that performs one task at that level which doesn’t concern itself at all with any other levels except that it conforms to the requests coming from above (the interface, technically). This is called abstraction.

Data abstraction levels of a database system
Data abstraction levels of a database system (Photo credit: Wikipedia)

Legalistic Stuff

Marooned
Marooned (Photo credit: Wikipedia

Suppose two men are marooned on a remote island somewhere. At first each is unaware that the other is there, but eventually they meet. Suppose that for some reason they don’t want to join up, but they do want to interact. So they set about working out ways to share the island, and obviously they want to live amicably until they are rescued.

So they might draw an imaginary line across the island. A can only go into B’s half as long as B is aware and approves, and vice versa. Maybe it turns out that food is easier to come by in B’s half, but there is plenty for both. B allows A to venture into parts of his half of the island and A drops off a few items that he has gathered as thanks.

The upper part of the stela of Hammurapis' cod...
The upper part of the stela of Hammurapis’ code of laws (Photo credit: Wikipedia)

Later on they find that A’s part of the island has the best spots to catch fish or something, and they come to an agreement about that. Slowly but surely they build up a set of rules on how to behave and live on the island in harmony.

One can imagine that an arbitrarily complex set of rules may be developed, and these rules could be further complicated if a third man, C, were to join them on the island.


Embed from Getty Images

You can probably see where I am going with this. As the population of the island rises, more and more rules will become necessary, or if not necessary, useful, and at some stage someone will have the idea of writing them down. The rules become laws and eventually attract all the mechanisms of a full legal system.

While browsing around while thinking about this sort of thing, I came across a review of “Day Z”, which the author of the review describes as “A Video Game Without Rules”. The author describes how the ability to do nasty things to others leads to characters in the game, especially established players doing nasty things to other players, usually new spawned players.

English: Uppercase and lowercase Greek letter ...
English: Uppercase and lowercase Greek letter zeta, the 6th letter of the Greek alphabet. Times New Roman font. (Photo credit: Wikipedia)

It’s possible that the behaviour of players in the game is merely an early stage in its evolution, and it may be that later on stronger players may band together to help the newly spawned players and the people who treat new players badly will be marginalised or persuaded to change their ways. One can hope.

Another dismal view of the island scenario was that of William Golding who wrote “The Lord of the Flies”, where a group of English schoolboys are marooned on an island, perhaps as the result of an atomic war. They soon revert to savagery and murder, overriding the civilised urgings of Piggy and Ralph. As Piggy says “Which is better—to have rules and agree, or to hunt and kill? … law and rescue, or hunting and breaking things up?” The rest of the boys obviously want to hunt and kill.

Pig head for sale at Cleveland's West Side Market
Pig head for sale at Cleveland’s West Side Market (Photo credit: Wikipedia)

Nevertheless, the process of generating laws by discussion and agreement was probably along the lines that I have suggested above. No doubt there were many tries to achieve this process which failed in the manner that things appear to have failed in the video game and how they were depicted as failing in “the Lord of the Files”, before a working system of laws was achieved.

It’s possible that the magic ingredient was the evolution of system of magistrates and a method of enforcing the laws. With a supposedly impartial system to decide the rights of a matter, and a special force or police system to enforce the laws, the weak individual would be protected against the stronger.

English: Hammurabi code. One of the first law ...
English: Hammurabi code. One of the first law sets in the world. Now it is in the Louvre museum, Mesopotamia section. Asia. Español: Código de Hammurabi. Uno de los primeros conjuntos de leyes del mundo. Se encuentra en el museo de Louvre, sección de Asia antigua. Mesopotamia, Babilonia. (Photo credit: Wikipedia)

In early days, the system of laws and the enforcement of them would have been vested in the priests and spiritual leaders, who would have controlled the enforcement system, probably “Temple Guards” or similar.

Where do kings fit in? The rulers were often not priests themselves, but the rulers were seen to rule by divine right, so there was a tight link between the rulers and the religious leaders. Kings such as Hammurabi supposedly led the way in law making, though no doubt there was much political to and fro between the kings and the priests.

English: Priest Mongaku's forty-five article r...
English: Priest Mongaku’s forty-five article rules and regulations (文覚四十五箇条起請文〈藤原忠親筆/, mongaku yonjūgokajō kishōmon). Document requesting the restoration of Jingo-ji temple from Emperor Go-Shirakawa. Located at Jingo-ji, Kyoto, Japan. The scroll has been designated as National Treasure of Japan in the category ancient documents. (Photo credit: Wikipedia)

These days, in many countries the law has been secularised and in many laws are decided by the government of the country, and are arbitrated by a separate branch of the administration called the justice system, and the enforcement is carried out by the police and retribution by the prisons system.

Lawmaking, justice and enforcement are in many countries legally independent of one another so that, for example, the government cannot manipulate the system for its own advantage. The principle is that justice should be independent of lawmaking and the enforcement systems.

English: The courthouse of Tours. Français : L...
English: The courthouse of Tours. Français : Le palais de justice de Tours. (Photo credit: Wikipedia)

How does all this affect the man in the street? Well, in practise, not very much, usually, at least not directly. When driving along the road, a motorist is aware that the speed limit is so-and-so, and usually keeps to it, more or less. He or she treats it as an advisory rather than a restriction, in that it is taken as the top speed that is safe for that road.

The man in the street also uses laws for his own protection. He will assume that the consumer protection laws back him up when he purchases something which it transpires is defective and will feel confident in returning it. In most cases the retailer would not be too upset by someone returning a defective product as in most cases the retailer would want a happy customer and can return the product to the manufacturer.

In general, laws work best when they conform with the principle of “natural justice” or what would generally be considered fair. It is not fair for example for someone to keep others awake by holding noisy all night parties, and in most cases the law will support the sleepless neighbours over the noisy one, but it could come down to a matter of perception.

Things like disputes about access to properties can hinge on such matters and are very often cannot easily be settled. The law has been evolving for thousands of years, but it can’t solve every dispute, although we would be worse off without it. It has to change as the world is changing, so it is constantly evolving. We cannot expect it to be perfect.

At the Law Rock, or Lögberg, a rocky outcrop o...
At the Law Rock, or Lögberg, a rocky outcrop on which the Lawspeaker, or lögsögumaður, took his seat as the presiding official of the Icelandic Althing (Alþing), at Thingvellir, or Þingvellir, Iceland. assembly. (Photo credit: Wikipedia)