Search This Blog

Tuesday, 18 January 2022

Riverlite

16th January 2022 marks my five years at Riverlite Ltd.

I've worked at a few companies big and small through my career, from little one man bands to big multinational corporations, across different verticals, and in both private and public sectors. Not one of my previous employers has come this close to perfection.

My role as Senior Consultant at Riverlite offers me daily challenges, projects of varying scope and difficulty, a team of truly talented and professional individuals, and a work/life balance which seems to have actually found an equilibrium. Not to mention the support they have offered during times of personal struggle.

I have found a happiness in my team, and my work that I have not had for a long time, and I wanted to take a few minutes to say thank you. Thank you to my team, thank you to my manager, and thank you to the MD.

That's all for now.
Dave

Sunday, 16 January 2022

100 Days to Offload

So, I was going through my Fosstodon time line, when I saw a Toot from Kev Quirk about #100DaysToOffload. The idea being to encourage people to write 100 personal blog posts in a year. Not necessarily long, wordy, or well written, just blog posts. 

I've been great at creating drafts in Blogger over the years, but have been more than a little lax in finishing them and publishing them. 

This got me thinking, can I create and publish 100 posts in a year? Can I finish up any of my drafts and get them out into the world? Do I have something to contribute to the world?

The last question has played on my mind for a while. I've tried engaging with people and organisations through social media lately, and either the posts haven't been seen by these organisations, or have been actively ignored. Buy why? Does my opinion not count, or do I just not have a big enough soap box to get noticed?

I suspect, like most people, I get treated as just another angry or upset individual who can easily be ignored in the social internet world, but this isn't right. I do have a voice, and as valid an opinion as any other.

And so back to the point. I'm going to start being not active and present in the blogging realm this year. Some of it will be piss poor, some may venture into being insightful, but it will all be my voice.

Sleep well.

Monday, 17 October 2016

Using a USB Serial cable on Ubuntu (without needing to sudo)

For those who know me, my views on using Windows as a desktop environment are well known. I wouldn't say it was necessarily a bad thing, it works for a great number of people, but for those of us in the world who care about freedom, choice and the greater good, then there are numerous alternatives.

My house is filled with precisely one laptop, and that's a Chromebook. I'm fairly well invested in the Google ecosystem, and it works well for me.  My company however have provided me with two laptops, one for doing my company business (e-mails, documentation, and the like), and one for conducting business on customer sites (networking tasks mainly).

My networking laptop was handed to me with Windows 8.1, as was the company standard at the time, and I subsequently (read very quickly) removed Windows and installed Ubuntu Gnome. I love Ubuntu Gnome, I find it to be a very clean, efficient and fast operating system, and works perfectly for my needs. When there is a need to do anything "Windows-ish", I have a VirtualBox VM running Windows 10.

Now, I'm a networking man, and my terminal emulator of choice has always been PuTTY. One of the annoyances I find with PuTTY is that as a user or administrator on an Ubuntu system, you need to run PuTTY using a sudo command to avoid the application showing the error message "Putty Fatal Error: Unable to open connection to: Unable to open serial port" when PuTTY tries to interact with the USB Serial Port. This can be worked around by launching a terminal window within Ubuntu, and running the following command:

sudo putty

This is all well and good, and will get you round the issue without any problems.  However, for me, this always seemed like an unnecessary obstacle to me getting my work done.

After a little investigation, I found that when I connect my USB Serial port to my laptop, it gets installed on Ubuntu as a device called /dev/ttyUSB0, and this device is a member of a group called "dialout", as shown in the screenshot below:



This theoretically meant that if my user account were a member of the "dialout" group, it would have the relevant permissions to access the port.  I checked my group membership be running the command "groups"



As I suspected, there is no reference to the group "dialout" in my list of groups.  By running the following command, I was able to add the "dialout" group to my list of groups.

sudo usermod -a -G dialout david

You need to log out and then back in to apply the changes.  When you the run the command "groups", you will see that "dialout" in the list of groups.




This too should work for you, if you substitute my username above "david" for your own username on the system.

Just for your information, the above command is broken down to illustrate what is happening:

sudo: run the following with highest privileges
usermod: invoke the user modification program
-a: specifies that usermod should be adding an entry
-G (note the capital G): specifies that what follows is an addition to an existing group
dialout: this is the group to which a user should be added
david: is the user who should be added to the above group

I hope this helps someone
Have a nice day
Dave

Sunday, 14 February 2016

Teething

Beautiful baby, mouth full of gum,
Painfully waiting for teeth to come,
Burrowing through, yet protruding none,
Our poor little Teddy, our poor little son.

The nights are long and filled with cries,
Helpless to stop the tears in your eyes,
Through your window we see the sunrise,
Our tiredness we try to disguise.

Yes, you're awake, but please not for long,
Sing you a lullaby, a sweet little song,
Be brave little baby, try to be strong,
To a loving pair of parents, you do belong.

Wednesday, 18 November 2015

Google Play Music Temporarily Unavailable

I've always considered myself a music lover. I'm fairly laid back and open minded in my approach to music, I don't specifically like or dislike any genre of music, I''ll give every musician a chance to thrill and excite me with their talents.  Hell, there are even a few Kanye West tracks I like...

In addition to this, I've never apologised for my love for all things Google, in particular the fact that they allow me to store all of my 18,000 or so songs in the Google Play Music cloud, and access them from anywhere at any time. I went one step further and joined the Beta Testing for Play Music All Access, and I've never looked back. I can sample any of the millions of tracks on offer as often as I like, and can even add them to My Library for future enjoyment. I can download them to my phone to be enjoyed whilst on the road or when internet connectivity is limited.

This brings me neatly onto my latest predicament. I am currently in London, the City of London, the capital of the United Kingdom. This is the one place I would expect to always have a mobile phone signal, or an available WiFi Hotspot. This time, however I am staying in a hotel with atrocious Three signal, and the "free" WiFi on offer is of no use to man or beast.

As a result of this, I decided it was a good idea to download some music from Google Play Music to my phone whilst at my training course. The WiFi isn't great here, but it's enough to download some tracks whilst I'm learning. I subsequently left the course on Monday afternoon feeling satisfied that I could make the 15 minute walk to my hotel listening to some "Laid-Back Soul".

Half way through Marvin Gaye's "What's Going On", a rather topical and relevant track, the music started to skip, and eventually stopped all together.  I checked the screen of my phone to be met with a message stating "Music temporarily unavailable."

Ignore the "Airplane Mode", it was a quick way of reproducing the error.

This appears to be a common issue which people have run into, and after a little time searching Google I found quite a few forum posts relating to this problem.  I didn't find any Blogs which related, and I know there are a lot of people, myself included, who tend to give more credence to Blogs rather than endless forum posts, and so that is why I am sharing this with you today.

1. Within Google Play Music, open the Menu by swiping in from the left-hand side of the screen.
2. Once this is open, slide to the bottom and look for "Settings".
3. Slide through the Settings menu and look for "Cache music" (illustrated below)


4. Untick the "Cache music" option so that your settings look like those below


5. Close the Google Play Music App ( I elected also to swipe it away from within the App Switcher too).
6. Relaunch Google Play Music, and you should be streaming again without any issues.

Changes these settings also had the additional upside of limiting the amount of data that Google Play Music was using from my Mobile Network Provider, and also limiting the amount of internal storage space that was being taken up cached music.

I hope this has helped some other people out their in the big bad world.


Wednesday, 3 June 2015

Xperia Z3 Compact Tethering Problems



I have been using Android now for many years now. Since Genesis, if you will. My first Android handset was the first Android handset; the T-Mobile G1 (A.K.A. the HTC Dream) I still to this day have fond memories of that old chunky device, with it's flip out screen, and little rollerball.

Times change, hardware fails and software is updated, and I find myself today using a Sony Xperia Z3 Compact (D5803) running Android 5.0.2 (Lollipop), this is build number 23.1.A.1.28. This originally shipped with Android 4.4.4 (KitKat), and was upgraded earlier this year. I am also on the Three UK network.

Since the upgrade, I have had troubles with the Tethering functions on the phone. When I enable the Tethering (via WiFi or USB), I received an error message stating "An error occurred during tethering". No further explanation or error, just nothing. The service is enabled, and my laptop can obtain an IP Address via DHCP, however when trying to browse the web, no DNS names are resolved. I tried all manner of things to try to work around this; manually specifying DNS entries, manually specifying IP Addresses, using third party apps from the Google Play Store, but nothing would fix the issues.

ThreeUK have been unable to provide any sensible support, and Sony have confirmed that there is some sort of issue which they would fix in a future update. However, tethering is a very useful function, which I tend to rely on when travelling.

After much frustration, and hours of trawling the Internet, I came upon a couple of posts, which in combination have fixed this issue for me, and I can now tether my phone. In fact, I'm writing this blog post whilst travelling into London on a train.

DISCLAIMER: The steps below fixed my issue, however I am an impatient sod, who doesn't mind getting my hands dirty and risk "bricking" my phone. If you are uncertain of the steps you are taking, and if you are more risk averse, then please do not follow these steps. I am listing them here in the hopes that some other people out there the world wide web will benefit from them. Please do not approach me if your phone does not function after following these steps, I can not be held accountable.

Now, on with the story...

I used an Ubuntu based distribution installed on my laptop to complete these steps, if you are a Windows user, you will need to obtain the Android SDK from the Android Developers site in order to conduct this fix. The steps for obtaining this are well documented and LifeHacker have a great article about this, you'll also need the relevant drivers for your Xperia phone, which you can obtain from the Sony Developers website (links will open in a new browser window).


OK, so for Linux, you firstly need to launch a Terminal window. This can be done from the Applications Menu, or on some distributions, by pressing CTRL+ALT+T.
type the following command into the Terminal window to install the tools:

sudo apt-get update
sudo apt-get install android-tools-adb

Enter your current user account password to authorise the install, you may also need to type Y to accept the installation.

Once the software installation is complete, grab your phone and enable USB Debugging:

This can be found in Settings > Developer Options > tick USB Debugging

If you don't see "Developer Options" in your settings menu, go to Settings > About Phone, find the entry for "Build Number", and the tap on it repeatedly until you see a message stating that you are now a developer. Head back a page to your Settings menu, and you should now have Developer Options available to you.

Plug your phone into your PC/Laptop, and if prompted, accept any pop-up messages on your phones screen relating to debugging connections from your PC/Laptop.

Now head back to the terminal, and type the following command:

adb devices -l

This should show you an android device connected to your PC/Laptop and look something along the lines of:

user@laptop:~$ adb device -l
0123456ab789 device usb:2-1.1 product: Sony model: D5803


Next, type the following to enter the Shell Prompt for ADB:

adb shell

Once in the Shell, we need to alter a setting within Android itself. This is the point of no return. If you're unsteady or nervous, quit the ADB shell now.

Type the following command to make the required change:


settings put global tether_dun_required 0

That should be that. Now reboot your phone by typing the following command into the ADB Shell:

reboot

Your phone will now reboot, and you can now quit the ADB Shell and close the Terminal window.

Once your phone has rebooted (if indeed it has), go to your Settings menu, and enable tethering. You should find that everything is now working as it should be.

If you have any questions or comments, please leave them in the section below, and I'll do my utmost to answer them.

Thanks go to:
conceptxo on Redditand also to the good folks at tamingthedroid.com

Friday, 21 March 2014

Windows, hey? Who'd have it...!?

I long for the day when I'm in a job where I can abandon Windows as the Enterprise Operating System of choice, and switch to a more stable, more reliable and generally quicker Operating System. With more firms moving to the likes of Ubuntu and Mac OSX, and Cloud Services becoming more prevalent I can't see any reason why Windows needs to be the de facto standard for Enterprises any more.  This being said, I am unfortunately stuck with it.

The 'it' being Windows 7, which I'll admit is my second favourite Windows OS of all time (Windows 98SE sits at the number one spot), and has been a solid OS since it's release in 2009.  I found a very strange quirk in Windows 7 a few months ago after an update.  I'm afraid I don't know which of the updates was involved as they're all managed by my employers IT team.  This update somehow removed all of the default entries in the Windows Sounds dialog box.

This meant that all of the default Windows beeps, clangs and donks were gone. Not only that, but all of the Microsoft Outlook mail notification sounds and the Microsoft Lync ringtones as well.  This is quite an inconvenience when you need to explain to your boss why you haven't been answering the phone or any e-mails.

Being the tinkerer that I am, I checked the Windows Sound dialog from Control Panel and found an entirely empty list.

What the...?

The IT Team mentioned above were a tad stumped and could offer no real solution short of a rebuild of the laptop. As much as I understand the many benefits of a full rebuild: the speed increase for one, and the resulting tidiness of the desktop, I didn't much fancy the idea of going through the usual headache of backup and restore jobs and the inevitable items which get forgotten.  I thanked the team for their time, and decided to go it alone. Thanking my lucky stars that my employer trusts me with administrative rights on my machine.

After a few minutes of Googling, I managed to identify that the Sound Dialog draws its listing from a Registry Key, namely:
HKEY_CURRENT_USER\AppEvents\Schemes\Apps\.Default\
When navigating to this Key in my own registry, I could see that it was devoid of entries.

Rather than scouring the internet looking for a dodgy registry file to download, I decided to fire up VirtualBox, and using my Windows 7 DVD I installed a fresh OS onto a new Virtual PC.  Once this was up and running I configured a Shared Folder to enable me to share files between my PC and the new virtual machine.

Navigating the registry in my fresh Windows 7 OS, I exported the above registry key to the Shared Folder.  Back on my broken PC I found the exported registry file and imported it into my registry. A quick reboot later, and all my sounds were back, as good as new.

If you don't have the time, inclination or know-how to try this yourself, you can download the registry file I exported from Google Drive.