Skip to main content

The working man makes work

There is a song with the chorus "The working man makes work for the working man to do". The song may have been tongue in cheek but it proves the saying "Many a true word is spoken in jest". I am sure everyone can think of an example.

In our case we had our house renovated a few years ago and every time a tradesman completed his task there was a mess left for the next tradesman to have to avoid. We visited the house everyday and cleaned up the mess in an attempt to keep the renovation on time. It didn't work and our builder still managed to find $20,000 of extra charges as well as taking 35 weeks to complete what he said would take 14 weeks.

To save money we did the painting and we did most of the work before the flooring man came to lay the new floor (5 weeks late). The floor took about 7 weeks to do (it was a 10 day quote) and the floorers managed to put holes in the walls and ceilings which we had to patch and paint over. It is of little consolation that the floorer went out of business soon afterwards as he didn't do a very good job. All the knotholes in the floorboards were filled with a glue and sawdust mix and then sanded and oiled. Most of these fills have come out. The final indignity is that the floorer used plywood between the floorboards and the cement slab and then charged extra for the plywood. He should have used a special underlay as we now have a very hard floor which kills your feet if you don't wear shoes.

On the way home from work I passed the top half of a a Hills hoist (clothesline) at the side of the road complete with all the clothes pegs still on it. The next day someone had removed the clothes pegs. The fact that the clothes pegs weren't removed BEFORE the Hills hoist was removed is not a surprise but is further evidence of the lack of pride that tradespeople have in their work. Why bother to do the job properly - close enough is good enough and the sucker will have paid before the "cut corners" are discovered.

Comments

Popular posts from this blog

The Extended Attributes Are Inconsistent in Windows 8

I have upgraded my laptop to Windows 8 and all was fine for about three hours and then I started to get an error when trying to run any application that required Administrator privileges. Half an hour of Googling led me to this blog post   Case of the broken uac prompt This problem was caused by downloading themes. The final theme I had decided on included a new sound theme. Clearly at least one of the sounds did not play (the one for the UAC prompt!). Changing the sound theme (right click on desktop, choose "personalisation") to Windows Default sorted out the problem. Doing a clean install would also have fixed it but that would have been a drastic solution and as soon as I installed a new theme it may have happened again.

Beware vnc and upnp

My new linux box got hacked yesterday. I was careless. My ADSL router has upnp support and it is turned on by default. I enabled "Remote Desktop" in Linux - which is a version of vnc - and decided not to set a password as it would not be accessible from outside the local network. That was my first mistake. Last night I noticed a second connection to the linux box. Someone was using the browser and had connected to Western Union and was trying to install the flash plugin. They had not got very far as Fedora 14 does not install Flash on a 64bit system as it is still in beta so the install is not straightforward. I was able to disconnect this errant person before they got any further and I then disconnected the ADSL line from the modem to prevent another attempt and proceeded to diagnose what had happened. I checked the preferences for VNC and noticed the automatically configure the network check box had been selected and that it was reporting an external address could be

"No child processes" error on Linux

A problem was reported by a customer. They were getting a failure and in the logs it reported error → waitpid failed 'Reason: No child processes' The “No child processes” error came from waitpid() after using  fork/spawn to launch a utility to load data into a data base. Upon detailed investigation it appears it is possible that some other process that the user is running has changed the default handler for SIGCHLD - possibly the shell (e.g. bash!) used to launch our server processes. If the signal handler is set to SIG_IGN then when a process is started using fork()/exec() the return code from the process is NOT returned and waitpid() cannot retrieve the response code. The most likely reason for "No child processes" error from waitpid() is that the signal handler for child processes (SIGCHLD) is not set to SIG_DFL. This should not be possible however it seems that on Linux a process run in the shell (or maybe a shell process) can set it