Development

Honey for Co-op bank now generally available

Back in 2017, I began working on Honey for Co-operative back. At the time, I released Honey as a sideloadable addon because I did not feel it was ready for prime-time. That changes today with the addon being made available in the chrome web store for any chrome based browser like Google Chrome and the new Microsoft Edge.

Honey is an addon that makes the Grenada Co-operative Bank’s online banking website look a little more modern. I created this for myself because I grew fed up of visiting the site which looks a bit dated in my opinion. Honey uses a combination of CSS and JavaScript to update the page’s content and images moving the site from a boxed outdated layout to a full width, green themed layout.

honey_chrome_ws_banner

To download honey, get it from the Chrome Web Store here.

Programming challenge 2020: Learning Python

It’s a new year and this year, most of my development work has been focused on Angular, dotnet core and ionic or C#, Typescript (JavaScript) and the like. I’m building a skybox management system and mobile app and looking to work on a few personal projects that have taken the back seat from last year.

Python logo and wordmark.svg

I’ve noticed the steady rise of Python as a programming language of choice for lots of various things. Learning Python was something I dabbled with before but this last week, it has become somewhat of a task I am challenging myself to do. I am challenging myself to learn Python in the first few months of the year and or the Django stack for working with it as well.

print(“Hello World”)!

What the F*N+!??

code

Font’s are cool. They can make the difference between good work, great work and terrible design. In programming, recently, I’ve come to appreciate fonts that feature ligatures. What are ligatures you ask? It’s when two or more letters are joined together to form one character or glyph. In the case of programming, fonts that support programming ligatures are especially cool as in my opinion, they add a bit of personality to your code and makes reading it just that bit easier.

There are many fonts that support programming ligatures… some free and others paid. A popular free choice is Fira Code. I’ve been using Fira Code for about a year now but recently, Microsoft has released a new font Cascadia Code for free and Open Source.

For those new to programming ligatures, they turn double equals == into a single joined long equal and fat arrows => into an actual arrow. Snazzy huh? From the screenshot above you can see how it looks.


Credit: https://github.com/tonsky/FiraCode

From the above image can you spot the ligatures? <=, != and == gets replaced. Why not give it a try. Download Cascadia Code or Fira Code and set it as your default font in your favourite IDE or code editor.

Ps: If you’re in need of a code editor, then Visual Studio Code should be your go to…. Seriously… it’s awesome.

Ad bar disabler now available for Chrome and Edge chromium

Today, I published the first version of Ad bar disabler to the Chrome Web Store. This addon removes the sidebar from Outlook.com (non-premium) and as a result provides more space for reading, viewing and composing emails.

To install on Google Chrome, just download it from the Chrome Web Store. For Microsoft Edge Chromium, you need to Enable the “Allow extensions from other stores” option from the Edge  three dot menu (…)  Menu > Extensions as seen below.

EdgeExtension

Download the Extension here

Download the New Microsoft Edge Chromium here

KAS Trivia gets colourful

feature_image

A new update to KAS Trivia is available. It improves the UI a little bit in preparation of a larger feature update. The game now has a bit more colour with bright answer buttons and bolder fonts. Next on the agenda is adding category selection and difficulty selection as well as fine-tuning the start screen of the app.

Screenshot_20190505-104453Screenshot_20190505-104643

Currently, the update is available on both the beta and production channels. The update should be rolling out in Google Play at present.

Rhema Bible beta released to Google Play

hero_bible

Whoo hoo! Today, a new update has been released for Rhema Bible which takes it to another level. Yesterday, I released an update which introduced better theming support which meant that dark theme worked way better than it did previously. Work was also done on daily bible verse notifications (still a work in progress).

Today’s update 2019.04.15.01 greatly improves on theming support and introduces the new app brand colours, fixes some bugs, tweaks the user interface a little bit and is the first release available on Google Play.

rhema-dark   rhema-light

Here’s what’s planned for the future:

  • eBook support
  • Audiobook support
  • Audio sermons (in collaboration with Temple of Deliverance Grenada)

en_badge_web_generic

KAS Trivia update

feature_image

Today, I released a new update to KAS Trivia. This update should improve the overall flow of the game as well as start preparations for a bigger update that will add level of difficulty choices, category selection and levels.

This update primarily focuses on improving the user experience. Here’s what’s new:

  • General fixes and improvements
  • UI refinements including new fonts
  • Sound improvements
  • Push notifications

The game can be downloaded on the Google Play Store here

Code faster with QuickTools for Android Library

Today, I’m proud to introduce QuickTools, an Android Library that provides a toolkit that simplifies some tasks related to Strings, Colors and other functions.

Welcome to my first Android Library which combines several useful utility classes to make coding easier. You can be sure that more useful features will be added over time.

Getting started (:

Add the library to your project first

Step 1. Add the JitPack repository to your build file if it isn’t already there
{
   repositories 
   {
    ...
    maven { url 'https://jitpack.io' }
   }
}

Add it in your root build.gradle at the end of repositories

Step 2. Add the dependency

compile 'com.kenicenoel:QuickTools:v1.2'

Afterwards

In your fragment, create an instance of Toolkit. e.g Toolkit toolkit = new Toolkit(getContext()); Or, in your activity, create an instance of Toolkit. e.g Toolkit toolkit = new Toolkit(this);

Toolkit class

After you created an instance of the toolkit class, you can use two of its built in functions:

Generate random number

toolkit.generateRandomNumber(min, max); This takes an integer min and max range and returns a random integer with the min and max range included.

Is app installed?

toolkit.isAppInstalled(appPackageName);

example: toolkit.isAppInstalled(com.kenicenoel.doze); This takes a package name of any app and returns true if it is installed or false if not. It can be used for instance to take the user of the store or do somthing that requires the presence of another app.

Available tools

In this release, there are 4 kits that can take advantage of:

1. ColorBuddy

ColorBuddy is your helper that makes getting colors for your project a sinch. You can get a random color or add your own color. You can also use standalone e.g ColorBuddy colorBuddy = new ColorBuddy(); without first creating a Toolkit object.

Getting a color

toolkit.colorBuddy.newColor(); This returns a random color in the HEX format eg. #EA1E63

You can use this however you wish, example:

String color = toolkit.colorBuddy.newColor();
TextView header = (TextView) findViewById('testId');
header.setColor(Color.parseColor(color));

You can also add colors in a similar way

Adding a color

toolkit.colorBuddy.add('#EA1E63'); Add a color to the list of colors in the HEX format

Get all colors

toolkit.colorBuddy.getColors(); Returns an ArrayList of Strings of HEX format colors (ArrayList colorsList for example)

Get size of color list

toolkit.colorBuddy.size(); Returns an integer value of the number of colors

2. StringBuddy

StringBuddy provides some useful functions for working with Strings You can also use standalone e.g StringBuddy stringBuddy = new StringBuddy(); without first creating a Toolkit object.

Remove Non Alpha-Numberic characters from String

toolkit.stringBuddy.removeNonAlphaNumericCharacters(myStringHere); This returns a String with all characters that aren’t letters or numbers removed.

Convert to proper case

toolkit.stringBuddy.convertToProperCase(myStringHere); This returns a String in proper format e.g HEllo wORlD! becomes Hello World!

Strip HTML

toolkit.stringBuddy.stripHTML(myStringHere); This returns a String with the Html.escapeHtml function performmed on it

Get Current timestamp

toolkit.stringBuddy.getCurrentTimeStamp(); This returns a String of current timestamp in format: yyyy-MM-dd HH:mm:ss

3. SettingsBuddy

SettingsBuddy makes working with shared preferences easier. If you are using it stand alone, create like so: SettingsBuddy settingsBuddy = SettingsBuddy.getInstance(context);

If you created a toolkit instance then you can just use its functions like toolkit.settingsBuddy.functionName() without having to create the stand alone instance. The name of the shared preference is AppSettings and the context mode is Context.MODE_PRIVATE

Saving data

toolkit.settingsBuddy.saveData(key, value); This saves the key/value pair in the shared preference

Get data

toolkit.settingsBuddy.getData(key); This returns the value for the supplied key if it exists or the default value if non-existant.

Remove data

toolkit.settingsBuddy.remove(key); This removes the value for the supplied key if it exists.

Default value

By default the default value is “N/A” but you can change this: toolkit.settingsBuddy.getDefault(); to get the current default value or toolkit.settingsBuddy.setDefault(aStringValue); to set the default value

4. ZipBuddy

ZipBuddy makes working with Zip files easier. It provides 2 functions: Zip and Unzip. You can also use standalone e.g ZipBuddy zipBuddy = new ZipBuddy() without first creating a Toolkit object.

Zip files

toolkit.zipBuddy.zip(filesToZip, nameOfZipFile); This takes a list of files (string paths) to zip and the name to call the generated zip file and zips them

UnZip files

toolkit.zipBuddy.unzip(fileToUnzip, targetDirectory); This takes the zip file (string path) to unzip and the target directory to put the result and unzips it.

What is sweeter than Honey?

Today, I’m happy to release a new side project of mine called Honey for Co-op Bank. Honey is a new browser addon that makes the Grenada Co-operative Bank’s online banking website look a little more modern. I created this for myself because I grew fed up of visiting the site which looks a bit dated in my opinion. Honey uses a combination of CSS and JavaScript to update the page’s content and images moving the site from a boxed outdated layout to a full width, green themed layout.

I decided to release the early version to anyone who at least wants to try out the new look for themselves as it is (again, my opinion) a little bit better than the default implementation. This isn’t for everyone, but anyone can use it if needed.

How to get it

Currently, I am self hosting the addon which means that after installing it, you will need to enable it as most likely, your browser has disabled auto enabling extensions from unknown sources. Also, you have to trust that I will not include any malware in my software (I can proudly say that I do not). Download here

 

How to install?

To install Honey in your browser, simply right click the download link and choose ‘save link as’ or ‘save target as’ in Google Chrome. Then, open the menu > More tools > Extensions and drag and drop the crx file on that window. You’ll get a popup asking if you want to enable it.

 

Doze beta published to Google Play Store

I am happy to announce that Doze Alarm & Calendar has been published to the Google Play Store as a public beta. About two weeks ago, I published the app to Google Play. Since the last article, I’ve made several improvements, bug fixes, added new features and more to Doze beta. The app is much more stable and features improvements such as weather information based on the user’s current location, “Nearby”, a new feature which allows users to discover places near their current location that may be of interest. This feature is powered by the Foursquare API and the ability to get walking and driving directions is planned sometime in the future. As the app nears full non beta release, the Doze feature that allows users to choose when they usually wake up everyday so the app will only wake them up on days that aren’t public holidays is being worked on.

Thanks to everyone whose helping test this app.

Get it on Google Play