GREx 31 December 2017 GRExTrustBig TechGeneral In the current state of fake news, trolls and scathing comments, it’s refreshing to see that some people can still be positive. Let’s be honest, most people who take the time to go online and actually write about a product or service, are usually blowing off steam. In fact, the comments you usually see the most are about one thing, getting revenge:“the service was terrible, the product doesn’t work, it’s a scam or a rip off”.Especially with how many trolls and general negative interactions there are nowadays, the outlook can be bleak. Even so, many of us still give a glance or two at reviews looking for some guidance. At least to have an idea of what we're facing, there’s a comfort in knowing beforehand that a service is good or you can trust a product you want to buy. It’s nice to see that there are still people taking the time to write glowing reviews praising a wonderful experience they had. Like these wonderful posts expressing their opinion about car dealerships in Australia…“Had an amazing experience at Westernport Holden. Colin was fabulous to deal with. Love my new Spark with Apple iPlay, a girls got to have that! Would highly recommend to friends and family!”April 5, 2016“Love my new little Astra! Thanks for the great service. Big thanks to Peter for looking after me. I’d highly recommend them”22 February 2017“Love my new Juke! Thanks to Peter & the team, fantastic experience, I’ll be back!”8 June 2017All of these appear under Google Places Reviews. If they sound a bit repetitive, it’s because they were written by the same person.It’s interesting that these are just three of the 13 outstanding reviews Clara Padalini has written for the eight different car dealerships where she has bought over nine cars in the past three years alone. All her reviews are five stars, she has bought her “first new car” twice now, and she must really know the dealerships and workers very well by now, because recently, she’s averaging a new car every 6 weeks. What a life!If we were to break it down to numbers, Clara’s car-buying timeline goes something like this:3 years ago: She bought a new Hyundai i30 from Ferntree Gully Hyundai.2 years ago: She bought another new car—“my first new car” from Watson Holden & HSV.1 year ago: She bought a 3rd new car from Northern Motor Group.1 year ago: She bought her 4th new car, a Holden Spark from Westernport Holden.8 months ago: She bought 5th new car, a Renault Koleos from Watson Renault.3 months ago: She bought 6th new car, a Nissan X-Trail from Mornington Auto Group.2 months ago: She bought 7th new car, a Jeep Cherokee from Northern Chrysler Jeep Dodge.1 month ago: She bought 8th new car, a Holden Astra from Glen Waverley Holden.1 month ago: - bought 9th new car, a Fiat Spider from Northern Fiat.That amounts to:● 9 new cars in 3 years ● 7 new cars in the past year ● 5 new cars in the past 8 months ● … and 13 FIVE STAR reviews of 13 Melbourne car dealers Nothing against Clara Padalini really, she’s simply a perfect example of what’s happening in Google Places Reviews. Unfortunately she isn’t alone. There’s also Dominique Grainger, to name a fellow colleague who has also bought several cars in different dealerships and “loves” their work.She went to Mornington Nissan in November 2016Couldn’t have loved it that much, because the next year she went to Northern Motor Group NissanAnd she wouldn’t buy her car from anywhere else than Mornington Holden on that very same day!But a month later, she prefers to service her cars at Frankston Nissan instead:So, after going over a couple of these reviews we are left wondering“Do millennials really have the ability to buy a new car every year, every six months, or even more frequently?”Or, and this is just an idea, maybe Google should pay a little closer attention to its reviews pages and how it’s being used. Just a thought.References:Clara Padalini - Director - ADME Advertising P/L Google Places reviews link LinkedIn profileDominique Grainger - Advertising Account Manager - ADME Advertising P/L Google Places reviews link LinkedIn profileNote:Some of the data presented in this article may be different to the current reality as reported by Google and/or LinkedIn. This is normal. For example, most of this article was written 3-6 months ago. Dominique no longer works for ADME Advertising P/L. Google's algorithms and human action, by Google or the individuals highlighted, will also affect what you might find today in the above links. Automotive advertising executive buys 7 new cars in past year!
Personal 18 November 2017 PersonalGeneral When I was a baby, my family had the custom of putting a little honey in my bottle, to sweeten it up and make me enjoy the taste more. Although now you can’t give a baby honey, back then the saying was, “everyone can use a little honey in their life.” I couldn’t agree more, that’s why I am sitting down to write this today. I want to put a little Honey in your lives. I work in a call center, and as you can imagine I meet all sorts of interesting people, but it’s thanks to my good friend Andrew who has encouraged me to share my story, that I'm doing this. So here goes…I’m one of the few people who has never wanted a dog. Whenever I passed the pet shop and the puppies came up to me, I could actually walk past without a second glance, I wouldn’t even break my stride. So, how did a confirmed “Not A Dog Person”, end up with the sweetest dog ever? Simple, Honey found me.It was one of those awful everything-goes-wrong kind of days, it started difficult and just went down hill from there: the alarm didn’t go off, I ran out of coffee, one of the kid’s homework wasn’t ready, the other kid couldn’t find her shoes, there was the usual traffic (only it seemed worse), the children were bickering (only more than usual), and to top things off, I got rear ended by a driver texting. All this before 8 am.That day was going to go down as one of the worst I’d had in a long time, and I'd had some really bad ones. Eight painful, soul-crushing hours later working at a call center, and I had picked up the kids, we did the weekly grocery shopping, and continuing with the theme of the day, it started to rain on the way home. When we finally finished getting inside, soaking wet, dropping bags, purse and keys on the counter, I turned to close the door, which of course had been left open, and there she was: a mat of muddy, stinky, wet, shivering fur. Honey walked into my house the same way she walked into my life, without asking for permission but set on staying. Like she belonged.At first I tried to get her out of the house. No one wants a strange wet dog, especially not on one of your worst days. But Honey would not budge. I was too scared to just pick her up and put her outside, even though she was small, she was a strange dog. I tried enticing her with food, used some toys and a ball to get her attention. But nothing would move that stubborn dog. I was too tried and frustrated to give the dog anymore of my time, so I left her there and went to set up my daughter’s bath. At that moment Honey moved. As soon as she heard the water running in the tub, she zoomed through the house and dived into the water.The kids were ecstatic, they had begged for a dog for as long as they could say the word dog. And Honey, with those big golden eyes, now a much better sight having lost half her size in mud, yelped happily inside the bathtub. My horrible day, my tiredness, the urge to scream, all disappeared with that first yelp. I didn’t care about the mess, or the fact that I still had a million things to do, that crazy yelp burst something inside me that just made me happy. I had officially become a Dog Person.Even though I felt she was mine, I still tried looking for her owners, but no one ever claimed her. She was in perfect health and very well trained. It didn’t take much convincing for me to accept Honey. Although I tried to put up a front. From the first night I insisted Honey sleep in the kitchen, and from that very same night she never left my side, always waking up curled into a tight little ball at the foot of the bed.Honey became the best companion I ever had, she was with me through it all. And I do mean ALL. Through the fun times, holidays and vacations, and the test your strength times.Honey travelled like a pro, passengers and tourists would take pictures of her because my daughter would always dress her up in funny outfits, glasses or hats. Honey didn’t mind, she would patiently wear anything, and yelp happily not caring as long as she was hugged and kissed. When the divorce happened she would take turns napping beside one of the kids beds, patiently keeping them company until they fell asleep, but she would always wake up at my feet. When I got sick, and the chemotherapy had me weak and crying and just angry at life, fate and how unfair it can be, Honey would lay down beside me just barely touching me, and ever so softly yelp to remind me she was there. If I woke up, or couldn’t eat on those really horrible days, Honey would come over with her favorite toy, an ugly duck she had chewed beyond recognition, and place it at my feet. Because of sanitary concerns Honey couldn't come with me to the doctor's office, but I had that ugly little duck in my purse, when I got the news of my remission. I still think it brought me luck that day.When the kids went off to college there was not a moment Honey left my side, scratching the bathroom door to make sure I knew she was there, that I wasn’t alone.Years passed and Honey mellowed out even more, she ran less, and on our walks she would need to sit longer by our bench, to catch her breath for the walk home. Some days I could tell she went on the walk more for me than for her. She always did things like that, it's like she knew when I needed her most.That’s how I knew something was wrong that afternoon. Ever since that first night, Honey would always race up to me. Coming home I would have to brace myself or she could knock me over, she was always so excited to see me. But not that day. When I called her, she barked back but would not come to me. I found her in the kitchen, struggling to get up, but her hind legs would not support her. As I rushed towards my sweet Honey, she looked at me with those big golden eyes, gave me a big smile and a very soft yelp and closed her eyes.I always made fun of people who treated their dogs like humans. I finally understand that what they really treat their dogs like, is family. She was the extra sweetness that made my life better. Even though it’s been a year now, my eyes still well up when I think about her, and that ugly little duck never leaves my purse. Every day, I miss my Honey so very much. My Honey
Network Engineering 31 October 2017 Network EngineeringBig TechRPiExpert Key points: Average Telstra DNS resolution speed is 23ms, 5 times faster than Google and 4.2 times faster than OpenDNS With over 10,000 discrete tests, run every 30 minutes for 7.5 months, the test observations are representative and the results are comprehensive Telstra's DNS infrastructure is not only way faster, it appears more reliable than both Google and OpenDNS too All network engineers understand the importance of DNS. The reachability, performance and reliability of networks are all key operational metrics that are seriously impacted by DNS problems. Seriously. A lot of thought and engineering grunt goes into building and maintaining DNS operational infrastructure. ISPs in Australia and elsewhere in the world, love to mess with their DNS servers to cheaply and easily implement redirection & blocking of target domains due to Government (or parental) censorship, alleged copyright infringement, whatever. A simple bypass for this basic blocking technique is often switching DNS servers, or resolvers, to a non-ISP public DNS server, like Google's 8.8.8.8 or OpenDNS's 208.67.222.222. Internet users in many countries use this simple bypass method. But are there any downsides? DNS name resolution speed is important so I thought I'd do some tests to see if there are any speed differences between say, my home ISP Telstra, and the Google and OpenDNS public DNS servers. One would normally expect the closest DNS server, your ISPs, to be the fastest due to physics but there is more to "fast" than just propagation delay. It didn't take a lot of research to come to the conclusion that namebench, written a few years back by a Google engineer would probably be a good choice. It appears well regarded and will run happily on a headless Raspberry Pi computer running Linux, which is easily configured to take test measurements every 30 minutes or so, hour after hour, day after day, week after week. I use Raspberry Pi (RPi) computers for many and varied purposes and this was a perfect opportunity to use one. I started with a standard headless RPi as I usually do. I live in Melbourne, Australia, my ISP is Telstra and I subscribe to a HFC Internet service with extra speed boost. I also use my Telstra cable modem/switch/router/firewall in switch mode or bridge mode or "NAT disable" mode. Goodness gracious - so many names for the same thing. The net result of this configuration is that each of the 4 ports on my Telstra modem will give me a public IP address. Thanks Telstra! I have a Ubiquiti EdgeRouter Lite plugged into one port for my main home connection. The other 3 public IP ports are available for experiments, just like this one. By using a bridged connection like this with a public IP address assigned to the Ethernet port on the RPi, I give the test the best chance of accurate and uninterrupted measurements. Experimental design What exactly are the tests? Every 30 minutes, namebench will try and resolve the IP addresses of the (Alexa) top 50 Australian domains with each of the 3 DNS servers (or resolvers) in the test. They are Telstra’s 61.9.133.193, Google’s 8.8.8.8 and OpenDNS’s 208.67.222.222. That’s 150 DNS resolutions per test, every 30 minutes. Preparing and running the test RPi First, I created a headless Raspberry Pi. Next, I SSH'd into the newly booted RPi and installed Python. sudo apt-get install python-tk Downloaded namebench. wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/namebench/namebench-1.3.1-source.tgz Extracted it. tar xvfvz namebench-1.3.1 Changed directory to namebench. cd namebench-1.3.1 Downloaded the (Alexa) top 50 Australian domains list. wget https://raw.githubusercontent.com/synaptec/dns-test/master/top-50-domains-au.txt Test ran namebench. ./namebench.py -q 50 -i data/top-50-domains-au.txt -O 61.9.133.193 8.8.8.8 208.67.222.222 That gave me an output something like this: Then I configured a cron job to run it every 30 minutes. Because I was using a public IP address, I added some extra security to the RPi to minimize the risk of it being subverted and penetrated. If you were to replicate this experiment behind your home Internet (NAT’ed) router, you wouldn't normally need to be concerned about adding that extra security. Initially, back in early January this year, I was just going to run the tests for 2 or 3 days, enough time to get 100 test measurements. But I got distracted, forgot about it, and the experiment ran for around 7.5 months and executed just over 10,000 discrete test measurements. Data analysis You can check out the raw data and analysis at this GitHub repo. Box plot Cumulative frequency plot Response time timeline Based on the 95% confidence intervals, Telstra’s DNS mean response time is 5 times faster than Google’s DNS mean response time. Based on the sample, the standard deviation for Telstra response times is 3-4 times lower than both OpenDNS and Google. This means that Telstra's response times were very stable over the entire 7.5 months of the testing. OpenDNS and Google both had significant spikes/peaks which may indicate equipment maintenance, network conditions or other issues. The performance of both Google and OpenDNS improved in early June, which is interesting. Google's performance appears to degrade from early August. Telstra smashes Google in DNS speed test
RPi 25 August 2017 RPiDIY Headless Raspberry Pi (RPi) computers are quite useful and handy for DIY types and makers. By headless, we are talking about no monitor or keyboard attached. And no desktop GUI or Graphical User Interface. This RPi is purely for power and performance. Access is only via a SSH connection, or command line interface. If that is alien or scary, or you don't know what a shell, command line or terminal access is, you may want to start somewhere like here. Note - The method to create a headless RPi has changed over time. If you search the internet you will find different methods. For example: Burning the Operating System (OS) image file onto the microSD card used to be complicated, error prone and ugly. It was also different depending on what PC OS you were using to burn the image - Windows or Apple Mac for example. Horrible. Then a company called resin.io changed all that nonsense when they released their cross platform burning software called Etcher in late 2016. OS image burning is now simple thanks to resin.io. Unfortunately, around the same time, something that used to be automatically enabled, simple and working in every newly burned image of the RPi Rasbian OS, the SSH server, was disabled by default. The Raspberry Pi foundation had a little panic attack fearing 1000s of RPi's might be taken over by nefarious actors, so they made it complicated again to build a simple headless RPi. I'll endeavor to update this post as and if methods change again. You will need: A RPi computer (any version with an Ethernet network interface) A suitable power supply An Ethernet cable to connect the RPi to an internet router A microSD memory card (min. 4GB) for the RPi Raspbian Stretch Lite Linux OS A microSD to USB card reader/writer or slot in your PC, to burn the OS image A copy of Etcher to burn the OS image file onto the microSD card [option] A case for the RPi Step 1 - Download the latest RPi OS Via direct download or even better, torrent, you should download a ZIP file of the latest Raspbian Stretch Lite image file from here: https://www.raspberrypi.org/downloads/raspbian/ Step 2 - Burn the Raspbian OS image onto the microSD card Insert the microSD card into the microSD/USB card reader/writer or slot in your computer. Run the Etcher burning program. Etcher unzips the image file automatically so no need to unzip the *.img file first. Follow the Etcher instructions and burn the image file from the ZIP file to the microSD card. Once the *.img file is successfully written and verified, Etcher will unmount the microSD card. You need to re-mount it as you are not finished yet. Removing and re-inserting the microSD card will remount it. Step 3 - Add a file named "ssh" to boot partition on imaged microSD card Step 3a: Windows computers First, you need to find out what drive letter has been assigned to the boot partition of the imaged microSD card. In the below image of my Windows 7 PC, you can see that the "E:" drive is the one on my PC. If yours is different, substitute as appropriate. Open a command prompt window and type e: <enter> to switch to drive E: then type copy /b NUL ssh <enter> to create an empty file called "ssh" on the boot partition. Safely eject the microSD card. Continue at Step 4. Step 3b: Apple Mac computers Open a command prompt in terminal and type mount | grep "boot" <enter> This will give you output something like /dev/disk2s1 on /Volumes/boot (msdos, local, nodev, nosuid, noowners) Here, the "/Volumes/boot" part is the text you want. Add an "/ssh" suffix to that to construct this text >> "/Volumes/boot/ssh" for use with the "touch" command. Obviously adjust the text as per your computer's output. touch /Volumes/boot/ssh <enter> to create an empty file called "ssh" on the boot partition. Safely eject the microSD card. Step 4 - Assemble RPi, plug into Internet router, power on If you are using a case with your RPi, please assemble it, with the RPi now. Plug the micro USB power cable into the RPi from the power supply. Insert the power plug of the power supply into a free power socket. Plug one end of the Ethernet cable into the RPi and the other end of the cable into a free Ethernet port on your Internet router or switch. Step 5 - Find the IP address of the RPi on your local network and SSH connect into the RPi Turn on the power. The next part involves finding the IP address of the RPi so you can SSH into the RPi on your local network. You can find the local IP address of the RPi by examining the DHCP "leases" or "clients" via the Web application running on your Internet router. Step 6 - SSH into the RPi In your favourite terminal emulator, where 1.2.3.4 is the IP address of your RPi discovered in Step 5 above, type ssh pi@1.2.3.4 <enter> password: raspberry <enter> Setup a headless Raspberry Pi for DIY experiments