Updating Nodejs

These are three simple steps to update Nodejs in Ubuntu using npm:

  • Clean the npm cache first: sudo npm cache clean -f
  • Install npm’s n module: sudo npm install -g n
  • Update node verison using the n: sudo n stable

Confirm the Nodejs version: node -v


npm itself can be updated in the following way – 

npm install npm@latest -g

Send Data from Disabled HTML Input Field

If you want to disable an input field and but still post it’s data to a database via a back end programming language like PHP, give it the readonly attribute i.e.

<input name="Percentage" readonly="readonly" type="textbox" value="100" />

If assigned the disabled attribute, then it will not be able to post data.

What if you are working with a <textarea> element?

<textarea id="description-text" class="form-control" name="description_change" rows="5" required readonly><?php echo set_value('description_change');?></textarea>

This feature is applicable when there are fields with auto-generated data and should not be tampered with while typing data.


Install Any pip Package Globally – Linux

Instead of the package installing in:


and install it globally and have it accessed from any Linux user, install it with sudo -H flag. For example:

sudo -H pip3 install seaborn

The above installs it in /usr/local/lib/python3.5/dist-packages and is accessible globally by any user or Python application.

This issue arose when I was trying to run a Jupyter notebook. There was a missing seaborn Python package but it was only installed in the .local folder of the logged in user (/home/user/.local).

Set Local Time on Ubuntu Server

To set an Ubuntu server instance to local time, simply type this command:
sudo dpkg-reconfigure tzdata

You’ll be greeted by a similar screen to this one (as of this post, I’m running Linux ubuntu-xenial 4.4.0-93-generic/ Ubuntu 16.04.2 LTS):

Linux Timezone Setting
Linux Timezone Setting

Select your geographic region and then your city/region corresponding to your timezone.


Python Unicode Encode Errors

It’s sometimes stressful when working with string conversion in Python while coming across encoding errors. An example is the following error that was generated when I converted a JSON file into CSV so that I can analyze the data using pandas:

‘ascii’ codec can’t encode character u’\xe9′ in position 2

The JSON file was generated from an Influx DB instance via cURL. These links from Stack Overflow really helped. Please read the first two answers from each question. The second question’s most voted answer gives a detailed description on why you should not do a system wide change to utf-8 encoding as opposed to the first question’s most voted answer.

Further reading: Getting unicode right in Python

Python UUIDs

An interesting article I read on generating UUIDs using Python:


I’m currently exploring the use of UUIDs to create unique identification for IoT sensor devices.

Will post more later here on what I find out and how I’ll implement it. I’m currently implementing a virtual sensor since I don’t have the actual devices. My host device for the sensor is a *NIX based system. e.g. Raspberry Pi Raspbian (for testing), MacOS (for development).