Friday, July 23, 2021

Oracle TO_DATE( ) this afternoon

Just being asked to convert string "1/1/2020 0:00' to date field in Oracle, and come up with this:

select to_date('1/1/2020 0:00', 'dd/mm/yyyy hh24:mi') from dual

Thursday, July 8, 2021

Tips on GeoPandas

According to the documentation in GeoPandas, the following codes could read a local GeoJSON file and import to a PostGIS DB:


import geopandas

from sqlalchemy import create_engine


path_to_data = "./my_file.geojson"

gdf = geopandas.read_file(path_to_data)


db_connection_url = "postgres://user:pwd@localhost:5432/db";

engine = create_engine(db_connection_url)

gdf.to_postgis("my_file_table", con=engine)


I found the following tips:

  • "postgres://" has to be changed to "postgresql://". 
  • Package "psycopg2" is required together with "sqlalchemy" (Details could be found in DBAPI support section in PostgreSQL documentation)
  • Package "GeoAlchemy2" is required together with "sqlalchemy"
Enjoy!

Thursday, June 3, 2021

About CKAN installation from package

 In lubuntu 20.04, we can install CKAN from package via the following command:

# dpkg -i python-ckan_2.9-py3-focal_amd64.deb


The system fails with the following error:

ModuleNotFoundError: No module named 'distutils.core'


This error is caused by missing some essential Python modules, to solve this problem, install the 'python3-distutils' package by:

sudo apt-get install python3-distutils


 


Friday, May 28, 2021

About CKAN Sample Dataset

You can use "ckan seed" to create sample datasets

e.g. ckan seed basic, which creates two datasets: 

  1. annakarenina
  2. warandpeace


BUT, after you delete the two datasets, either via 

User Interface 

OR 

CLI: 

ckan dataset delete annakarenina 

ckan dataset purge annakarenina

 

You cannot run the "ckan seed basic" again to regenerate the two datasets. 


Why?

Since there are two records still in table "group" and 5 records created in table "user" (They are created by "ckan seed basic"). Remove those records and then you can run the "ckan seed basic" again.


Tuesday, May 25, 2021

Share folder in VirtualBox

I'd been creating a shared folder in VirtualBox guest (Lubuntu) in a Ubuntu host. While the folder path I entered is a symbolic link, it just NOT work at all.

So, always remember the "Folder Path" has to be a REAL PATH, no symbolic link !!





Tuesday, February 2, 2021

Wednesday, January 27, 2021

Neovim Setup

A very nice tutorial for neovim setup we found in medium.com:

https://medium.com/better-programming/setting-up-neovim-for-web-development-in-2020-d800de3efacd

There is something more about the setting:

  1. Run 'nvim +PlugInstall' if you added new plugin in ~/config/nvim/init.vim
  2. Run 'nvim +PlugClean' after you remove plugin in  ~/config/nvim/init.vi
  3. Avoid using plugin 'ryanoasis/vim-devicons' if you see strange characters in NERDTree

Monday, November 9, 2020

Using icacls.exe command to change the permission of a folder

Use following command to change the permission of a folder:

 C:\folder> icacls FOLDER_NAME /grant user_id:(OI)(CI)(F)


Reference: https://stackoverflow.com/questions/38725364/icacls-permissions-not-applying-as-i-expect


F - Full Access

OI - Inherit file

CI - Inherit sub-folder


Saturday, October 24, 2020

Ubuntu WiFi device disappear with dual boot Windows 10

 When your device is dual boot with Ubuntu and Windows 10, you'll got a chance to lose the WiFi device in Ubuntu.


To fix this issues, try to disable the "Fast Startup" feature in Windows 10.


It solves the problem for me, hope this work for you too.


Monday, October 12, 2020

Ubuntu apt-get update with NO_PUBKEY error

 In Ubuntu, I'd encountered the following error when doing a apt-get update:

The following signatures couldn't be verified because the public key is not available: NO_PUBKEY F7E06F06199EF2F2

This key belongs to the repository https://qgis.org/ubuntu. To add the key, I did the following:

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 F7E06F06199EF2F2

By default, the command above will called gpg which uses port 11371. I had to force command   to use port 80 instead. Also, please also pay attention that the protocol is called "hkp://"

Ref: https://askubuntu.com/questions/1119727/gpg-keyserver-receive-failed-connection-timed-out



Upgrade nodejs in conda (from v18 to v26)

If your conda env is nodejs v18, doing a conda install nodejs=26 is likely to create a lot of conflict. Consider remove those conflicting p...