A few months back, I added shiny new Samsung Galaxy S9+ to my gadget list. [Yaay! :D] While Samsung flagships are known for their build quality, looks, camera, display et cetera, Samsung is notorious for adding unnecessary bloatware on their phones. One of such bloatwares that comes pre-installed is their virtual assistant Bixby and its related services. Hell, they even added a physical button for the same.
Chatbots are the next big thing in the hot Artificial Intelligence market.
For the uninitiated, chatbots are artificial intelligence powered (or rule based) computer programs that can mimic human behavior while interacting with actual humans. In simpler words, chatbots are smart programs that can talk to a human in humanly way.
I had a free weekend so I decided to develop such chatbot.
Recently, I was exploring various logging mechanism available in Java and I came across this topic - Aspectj.
I found the AOP - Aspect Oriented Programming approach quite unique (and complex to use as well! :P)
As I learned basics of Aspectj step by step, I kept taking notes of whatever I've grasped. Sharing it here.
Step by step tutorial on setting up AndroidViewClient on Windows machines.
AndroidViewClient is a python library and tools that simplifies test script creation and android test automation, providing higher level operations and the ability of obtaining the tree of Views present at any given moment on the device or emulator screen and perform operations on it.
AndroidViewClient is commonly used to create tests scripts but can be in stand-alone scripts as well. Test script creation can be even further simplified and automated by using Culebra.
Culebra is a sweet tool!
Anyone working with Android development will come across this utility - adb - at one point of time during their development cycle. Android Debug Bridge, acronym-ed as adb is a powerful command line based utility to assist developers during Android app development. While the utility might have been conceived as a debugging utility by Google Engineers, it has set of innovative use cases which could go way beyond as just "debugging" tool.