Posts

Showing posts from April, 2020

My notes from GDG POS Firebase study jam

Today Google Developer Group Port of Spain hosted a livestream study session around Firebase. It featured a presentation by Arthur Thompson who has been working at Google for the last few years on the Firebase team. When asked about how he got started at Google he stated that it was simple but fascinating and what he did was go through jobs.google.com. He also mentioned that there were a number of other trinis working at Google and in Silicon valley.
I encourage you to visit the GDG POS website and join the meetup group to keep updated on future events.
What is firebase? Firebase is an app development platform with a number of related tools. Examples are tools for authentication, messaging, storage and hosting. One of the main tools is Firestore, their NoSQL document database. You can get started really quickly and there is much documentation.
One of the things that caught my attention in the presentation was global edge caching. On the website it states that Firebase Hosting uses a powe…

Ecommerce payment options in Trinidad and Tobago

This blog post is a work in progress and will be updated as new information comes to hand. I want to explore the available ecommerce payment options available to web developers in Trinidad and Tobago.
A term that you will hear often in this space is payment gateway. This is the technology platform that allows your business to accept debit and credit card payments.
First Atlantic Commerce and WiPay are the payment gateway options available in Trinidad and Tobago. To use FAC you apply through the banks in Trinidad and you follow FAC and bank instructions. WiPay uses FAC in their backend but they hide that hassle for you.
A good approach at this point would be to make a matrix, your needs versus what the two options offer versus advantages and disadvantages from the business owner perspective and from the web developer perspective.
What about international options like Paypal and Shopify? These work if you have an account with a US bank for your business. This is a worthwhile consideration a…

Girls in ICT Day Trinidad and Tobago

Girls in ICT Day is an annual world event to encourage girls to consider careers and studies in ICT. This takes aim at the gender digital divide and we should be looking at what limiting factors there are. What else besides encouragement is needed?
I did some research and came up with some things that are needed. More female role models and mentors in ICT, access to internet and digital tools, dealing with gender issues like poverty and education access, more women in leadership and decision making, more research and action planning related to the problem of girls in ICT.
In my view tech smarts is just as important as street smarts. I want to see tech as a core subject just like Maths and English. Most jobs these days require digital skills. Digital literacy is just as important as traditional literacy in this tech focused world that we now live in. Look at how much emphasis is being placed on using tech to get by during this pandemic lockdown. The side effect of tech as a core subject …

My experience with NodeJS and MariaDB on Android through Termux

Image
The first thing I did was check the official documentation, Getting Started With the Node.js ConnectorI modified my server.js code and tested and first error I encountered was, "Error: (conn=20, no: 1698, SQLState: 28000) Access denied for user 'u0_a270'@'localhost'"At some point in troubleshooting I also got this error, "ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/data/data/com.termux/files/usr/tmp/mysqld.sock'"Eventually I figured out that the problem was with the mariadb user that was created on install and how no password is required for mysql in Termux. So I just created a new user for my dev work as followsMariaDB [db1] > CREATE USER 'user1'@localhost IDENTIFIED BY 'password1';MariaDB [db1] > GRANT ALL PRIVILEGES ON *.* TO 'user1'@localhost IDENTIFIED BY 'password1';Then my testing nodejs code as followsconst mariadb = require('mariadb');
const pool = mariad…

Setting up a database server to use with my nodejs server on Android in Termux

Image
Following from my blog post on nodejs on android I now wanted to install a database server so I could develop a simple CRUD web app and doing it all on Android.MariaDB is a free and open source fork of MySQL and is what is available under Termux, which I already have installed and working. The following are the commands I used to install MariaDB.$ apt update && apt upgrade
$ apt install mariadbNext I started the server using$ mysqldWhat I learnt from doing this is that I can no longer run commands in the Termux session and what I should have done was run it in the background as follows. I could have also started a new Termux session.$ mysqld_safe -u root &But now I get the following error, "mysqld_safe A mysqld process already exists". I found out how to handle this as follows$ killall mysqld mysqld_safeThis may take a few seconds and I can verify that no mysql processes are still running using the following command$ ps aux | grep mysqldNext I wanted to create a …

My experience with Termux and NodeJS on Android

Image
The first thing I did was install Termux from the play store. Termux provides terminal emulation and a linux environment. Read that I should install updates
$ apt update && apt upgrade
Next I installed nodejs
$ apt install nodejs
Next I needed an editor to create my code files. I decided for an external editor and shared external storage. By default Termux uses app private storage. Shared external storage needs to be setup as follows
$ termux-setup-storage
This creates a $HOME/shared folder in Termux that links to Internal storage in Android file manager. I created a folder called WEB/nodeapp for my project in there. Next I needed a code editor app. For that I chose Quick Edit.
Next was to create my starter node project
$ npm init
I got the following warning message, "npm WARN npm npm does not support Node.js v13.0.0". I fixed this by upgrading npm.
$ npm install -g npm
Next was to create my server.js code and test it.
var http = require('http');
http.createServer(functio…

Running a web server on my Android

Image
I have never attempted this before. I was deciding on what to blog about today and it occured to me that this would be a fun project and blog post. The first thing I had to do was see what apps were available and I was looking for apps where I would not have to do any rooting of my android device.
I searched the play store for "web server", looking at number of installs for popular apps. Then for free options and then the reviews. No quick obvious option so now I turned to a google search for "android web server".
HTTP server powered by Apache seems like a popular and useful option but I get, your device is not compatible with this version in the play store. My mobile is a Samsung M30 running Android 10.
I also came across Tiny Web Server which I decided to try. It's simple but I can review other options in another blog post. Today I just want to get started. I installed the app and was greeted with the warning, "this app was built for an older version of And…

My advice to tech startups in Trinidad and Tobago

Tech startups are needed in Trinidad and Tobago. There is so much that we could be doing more of in the tech space. We need more app, web and solution development. We need more online workflows and digital payment processing. We need a robust tech ecosystem. We need leaders who see the need to invest in tech. Congratulations to those who chose to startup in tech. You are needed and I would like to share some advice from the persective as a tech blogger and someone in the tech space for a very long time.
Firstly, you need to let others know about what you offer. This is where advertisment is very important even if you have a small or no budget. It just means that you have to be more creative. Come up with a marketing strategy. Social media is huge these days. Be honest about your newness and what you offer. Everyone understands that businesses have to start somewhere. Let persons know more about the persons on your team.
There is a saying that you have to know people to get things done. …

What makes a good website?

If you asked 100 persons to list 10 attributes of a good website you will get varied responses where some attributes will be more popular than others.
There is no one correct way to answer this question and you will find yourself researching and looking at many answers to shape your own thinking. I want to answer this question for you from my perspective as a tech blogger and web developer in Trinidad and Tobago and the Caribbean.
Firstly, a website should be working for all visitors. One way to measure this is by asking for feedback. A website should make it easy for visitors to message you and give feedback. You should have multiple contact options and let visitors know that if they don't get a response within 24 hours (for example) to try one of the other contact options. Always respond to and acknowledge messages. Messages should be part of a workflow where they are escalated to the top if left unanswered.
A good website loads quickly. In the blink of an eye so to speak. It will …

My years at St Marys College - Port of Spain, 1992 to 1998

It was a great achievement for me to pass the common entrance exam, now called Secondary Entrance Assessment, for my first choice. I heard that in my year you had to make above 95% to pass for CIC, the College of Immaculate Conception, the other name for St Mary's College. However, if you asked me now if they should remove SEA, I would say yes. I chose CIC because it was the best secondary school in north Trinidad, without knowing much else about the school.
I remember the first few days I walked to school up Frederick street. It seemed like a long distance but it really was not. Imagine my surprise years later when I learnt that these nowadays students were taking taxi to go from downtown to school in uptown.
Most students in my days disliked having to wear the shirt inside the pants. I was not surprised when I saw the changeover to shirt jacks years later. But now the dress uniform has a boring tie but at least not as bad the blazer that was there before my time. I am not a fan of…

How you can convince your boss to work from home?

Before this 2020 pandemic it was more difficult to request work from home, especially for us in Trinidad and Tobago. During this lockdown, many companies locally are forced to act and consider work from home options. Hopefully this trend continues beyond the lockdown, fingers crossed.
First of all, we must recognise that work from home only applies to some classes of workers, mostly back office workers.
Next, you should decide how much work from home you should request, at least initially. If full work from home seems like a harder ask then consider some days work from home. Office days would be for tasks that can only be performed in the office. If you share your job function with others then you can alternate with coworkers, so that someone is always in the office. Even half days can be beneficial.
Do your research so that you can list the advantages and disadvantages and case studies. Be prepared to make a formal presentation to your boss. Know about the technologies and resources tha…

What has it been like to be a blogger in Trinidad for the past 10 years?

I have seen the rise and fall of blogging. Blogging has been taken over by social media but I still see a role for blogging. Blogging is more personal and more in my control. More persons in Trinidad are online. More persons are on social media. Companies are slowly warming to the idea of a proper online presence, content creation and a digital strategy.
Blogging for me, is about being able to share myself, my thinking and my knowledge. From time to time I get comments thanking me for something I shared. Blogging has also made connections for me. Sometimes I get invited to launches and other events. Sometimes I am sent press releases. Sometimes I am asked to give my opinions. I have even been able to talk about my blog in job interviews.
I have written hundreds of blog posts over the years and have gotten hundreds of thousands of blog views. My blog has never made it big. It was always a side hustle and not for profit. I did it for the love of it. My goal is to continue enjoying what I …