Ordinarily I don't make a big song and dance about stupid decisions made by politicians - I've come to understand the average polly has the intelligence of a lobotomised amoeba...but I digress.
Many have heard me lament the short-sighted, wasteful policies implemented by various Ministers for Communication (particularly Senator Alston) under the previous regime in Canberra. I hate to say it, but the incumbent administration has truly exceeded even my worst imaginings. Everyone on this list knows the Internet, and has come to rely on it one fashion or another so I think it prudent to at least make you aware of the level of stupidity the current government has stooped to.
The run down of what is proposed
Read it, and make your own choices. Take it from me, being someone who has worked at the ISP level for a company that hosted all of Telstra's wholesale ISPs and hosted all of TransACT, AAPT and Telstra-Clear NZ, this is a bad policy for all Australians. Even if you ignore the policy, or moral standpoints, the technology to implement this simply does not exist. The outcome will be millions of tax payer dollars wasted on grand ideas, with questionable motivations, to attempt something that can only be achieved under the draconian levels of government oversight and intervention seen in places like China, Burma and North Korea.
I always thought we lived in a democracy populated by intelligent people able to make their own decisions. I DO NOT need the Australian Labour Party, or any other political party, to dictate what is and isn't appropriate for my children or myself.
Please read the link above and if you are motivated to do so, please contact the minister with either your support or objection to his proposal. I have added a block that is persistent across my site to drive as much traffic as I can to the fight against this policy. If you are in a position to do likewise, please consider it.
49 truly inspired reasons why it is a great thing to be male. Those with a sharp sense of political correctness and not a funny bone in sight, feminists and other such men haters, can skip this one.
I've seen a lot of posts about how to get Compiz+Emerald working together in Kubuntu that involves a lot of poking around and creating scripts etc. However, there is a "better" way that is from what I can see, the K/Ubuntu preferred method. First some background. Like may others, I wanted to get Compiz and Emerald all singing and dancing on my desktop system at work but was frustrated by the lack of integration with GUI management tools - specifically with regard to getting Emerald to start at login. The general sequence of events goes like this:
Lovely! Kudos to the package maintainers for making it this easy :) However, when you log out (reboot etc) and back in again, the compiz compositing manager starts, but not emerald! Why? Well the simple answer is that Emerald was never ASKED to start. So the better question is; why wasn't emerald asked to start? The answer to which is buried in a wrapper at /usr/bin/compiz-decorator. Basically this script is called by compiz when it starts to start your preferred window decorator (have a look in the "Window Decorations" configuration in CompizConfig Settings Manager, ie, "ccsm"). A few posts I've seen have suggested replacing this "compiz-decorator" with "emerald --replace" but this removes some of the fall-back/redundancy provided by the bundled script. This got me thinking - there must be a way to tell "compiz-decorator" to use Emerald...and there is!
If you open /usr/bin/compiz-decorator (it's a shell script, so any old text editor will do) and scroll down a little, you will find this block:
# start a decorator
if [ -x ${COMPIZ_BIN_PATH}emerald ] && [ "$USE_EMERALD" = "yes" ]; then
DECORATOR=emerald
elif [ -x ${COMPIZ_BIN_PATH}gtk-window-decorator ] && [ -n "$GNOME_DESKTOP_SESSION_ID" ]; then
DECORATOR=gtk-window-decorator
elif [ -x ${COMPIZ_BIN_PATH}kde-window-decorator ] && [ -n "$KDE_FULL_SESSION" ]; then
DECORATOR=kde-window-decorator
elif [ -x ${COMPIZ_BIN_PATH}kde4-window-decorator ] && [ x$KDE_SESSION_VERSION = x"4" ]; then
DECORATOR=kde4-window-decorator
fi
Notice the check to see if "USE_EMERALD" is set to "yes"? Well, scrolling back you will find a section like this:
if [ -z "$XDG_CONFIG_HOME" ]; then test -f $HOME/.config/compiz/compiz-manager && . $HOME/.config/compiz/compiz-manager else ...etc...Ok - so now we have the two pieces of the puzzle; firstly why Emerald isn't being to start and what files are read to get the instructions in the first place. So the final resolution is dead simple. All we need to do is create a file "$HOME/.config/compiz/compiz-manager" and populate it with "USE_EMERALD=yes" like this:
echo "USE_EMERALD=yes" >> ~/.config/compiz/compiz-manager
Voila. Log out and back in again and you'll see Emerald start :) Best bit is this modification will make the start-up consistent across upgrades of K/Ubuntu, and will work regardless of your choice of Gnome/KDE/XFCE etc. In other words, it's desktop environment neutral which is what makes this approach a little different to most of the others I've read online that seem specifically geared to one window manager/desktop environment or another. Also note, you can over-ride any of the variables in "/usr/bin/compiz-decorator" using additional declarations in the local ~/.config/compiz/compiz-manager file. This could be handy if you want to play with development versions of Emerald.
Some people may be aware that my old ISP decided to increase my monthly access from $120/mth (paid quarterly in advance) to $500/mth!! Consequently I told them to shove it and went with the only real alternative in my area...Telstra Wireless 3G. It's expensive at $130/mth for 10GB but it's fast and reliable (surprisingly fast actually)...which is a LOT more than I can say for my old ISP. As anyone who had mail hosting on my old server knows, if my link was down for 2-3 days a month then it was good month. If the speed was anything over 2-3Mbps, it was fast for a change (they promised me 12Mbps...but it never happened). Compared to the new link which is routinely over 3Mbps and never goes down...it makes me wonder how the heck Fish Internet are going to survive with their price gouging, poor service, next-to-no-customer-support, service offering. Couple that with the dragon who answers their phones (yeh, good luck getting past her!) I hope they go the way of other $#!t-house ISP's - down the proverbial gurgler. Good bye, and good riddence to them; they'll never get another cent out me and I'll make sure to tell everyone who can't get ADSL in our area to give them a wide berth.
So seeing as I no longer have a static IP (can't get them on Wireless 3G) and the small bandwidth quota, I decided to move all my hosting off-site and use the same provider my employer uses. Actually, I'm piggy-backing off their hosting account (with the boss' blessing). So this site is now on a faster server sitting in a data centre somewhere and I don't have to monkey around with it to keep all the lights blinking...that's someone else's job! Yay!! Everything is back up and running, including the galleries, but the weather stuff will take me a little longer to sort out. The problem with the weather is that the weather station is sitting on my desk at home (with the sensors outside) and the server is sitting in Sydney somewhere. Consequently I've got to figure out a sensible way to get not only data but the graphs (which are generated on my server) onto the hosted server. Real-time updates aren't going to workable but I'm thinking sensor data every 3 minutes and graphs every 15 minutes. We'll wait and see :)
For those who need help setting up their e-mail, I will be updating the support page in th next day or so. Right now though, there are some lawns that need to be mowed!!
A frined of mine sent this to me via e-mail and I just had to add it to my funny anecdotes :)
Modern computers have at their heart a piece of equipment commonly referred to as the "Central Processing Unit" (CPU). This is common knowledge and regularly used as the final determinant factor in a computer's performance. The reality of a machine's performance, however, is a much more complicated equation. Like many devices, the overall performance is a measure of the sum of parts that compose the system. Similarly, a single poorly performing component can undermine, or even negate, the performance of the other components. Using blindingly fast CPU's in a system with very slow memory will result in a computer that is well below accepted standards. However, fast components are becoming very cheap and offer other advantages beyond the initial design goals of the component in question.
For instance, most people are unaware that their video card has a highly specialised processor call a "Graphics Processing Unit" (GPU). The GPU, unlike the CPU is designed for a set of very specific calculations; usually matrix transformations using arbitrarily precise floating point numbers - usually double precision floating points, but not always. The GPU typically runs at a slower clock speed than the CPU and uses a very fast, purpose-built memory subsystem of its own too. Combined, the video card's GPU and memory are capable of some truly mind-boggling calculations. Here's where things get interesting; many facets of science and "non-graphic" mathematics use exactly the same type of calculations the GPU was designed for. In fact nVidia has even released a programming framework (called CUDA) to leverage their GPU's for doing things other than playing games. Researchers in Belgium at the University of Antwerp, have now been able to build a system, capable of super-computer speeds, using commodity graphics cards totalling eight GPU's!
For quite some time now, I've considered the role of the general purpose microprocessor, aka CPU, rather limiting. As stated before, a single component doesn't in itself determine how fast a machine will be, but a single component can certainly determine how slow a machine will be. I believe the time is coming when to move beyond current performance limitations, the computer industry will need to utilise specialised processors for specialised tasks. Given the generalist role a CPU must undertake, by design it is a compromise to balance performance across a broad set of tasks, consequently it will never excel at any specific task. However, if the CPU could offload particular tasks to other, external, processing units specialised for that particular task the overall performance of the system would increase significantly. We have already seen this in limited ways with the advent of hardware-based storage controllers, dedicated graphics processors and I would argue the advent of the northbridge for direct access to various busses that link the core of the system together. Prior to the separation of the CPU and northbridge, all input and output (I/O) to any device was forced to go through the CPU. With northbridge controller the CPU could be freed up and many devices are capable of direct communication and data transfer.
In conclusion, I look forward to future of the CPU; whether it's a Intel "Core", IBM "Cell" or any other processor. However, what really interests me, is the rise of the specialist processor and how we as programmers and system engineers can find new and innovative ways to implement them to augment and enhance overall system performance in specialised ways.
Credits:
The results have been what I expected. Loading photos and large files from the file server is now a LOT faster. I especially noticed the difference when browsing the file server in "thumbnail" mode; it was as fast as it would be if running locally. The Time Machine backups for my Mac Mini are now super fast to the file server too which is great as the system (the Mac Mini) bogs down a little while it does the backup. Basically, with the consumer-grade hard drives in my server, I am now limited by the speed of those drives and the CPU power in the clients far more than the network fabric. It's nice to know that as I develop this network any gains in the server speed will pay off for the clients on my LAN.
