Posts

Bought a new domain - chickfort.com

A couple of days ago, I bought a domain named 'chickfort.com'. I have been wanting to own a '.com' domain for quite a while now, and I didn't want to buy one from a reseller. Every now and then, I used to go to one of the domain registrants and search for interesting names that would come into my mind. This has been going on for quite a while, and I finally found a domain name that is short enough and is a combination of two simple English words. The aforementioned is not the main reason why I chose to buy this domain. The words 'chick' and 'fort' coupled together could be loosely translated into the endonym of my hometown, Kozhikode. Additionally, I believe that the domain name could be potentially used for a wide-variety of purposes. The interesting thing is that, I have been receive calls from a few software and web development companies after I made this purchase. I wonder if the domain registrar is secretly sending the data to the marketing team

A decade of BuddyGo.net

It has been a decade since I started owning this domain; I was fourteen then. I did question myself on keeping on renewing the domain every year, at least a couple of times. But I am glad that I did. I could always use the wayback machine to showcase what BuddyGo once used to be. The Alexa rankings of the past could also be used as a bragging material. I regret that I did not keep the social network running, but choices had to be made. I attempted to revamp and relaunch many times, but I just couldn't prioritize the work and ended up not doing it at all. Anyway, the day may come when I finally do it again. Cheers!

My attempt to create a Quine in MATLAB

Image
A few weeks ago, I watched a video on YouTube which talked about quine. A quine is a program that outputs it's own code. For instance, in JavaScript, the following code would output itself. !function $(){console.log('!'+$+'()')}() As I watched the video, I was sure that creating a quine is not very easy. But, I found it interesting to attempt to write one on my own, maybe in MATLAB. During the initial five minutes, I sat on my easy chair and started thinking about how to approach it. I drank a cup of coffee and opened up MATLAB Online and started trying out random things, hoping that I would eventually get some idea. I did not want to cheat by using operations to read from the currently opened file. That can be easily achieved by using the 'type' function or 'fileread' function. As I was not able to get any idea by just thinking, I decided to have a look at different quines written by people in other languages. I thought perhaps something from JavaSc

Emoji converter for WhatsApp web - from ":P" to "😝"

Image
I don't use emoji's on WhatsApp very often. But recently, as I was texting using WhatsApp web, I inserted in an emoji and just as I was about to send it, I decided to select everything (ctrl + A) and cut it (ctrl + X). Later during the conversation, I decided to paste what I had selected and I observed that the emoji that I added was coming up just as it was. I was curious to know if WhatsApp uses a rich text editor, but it doesn't. Aparently, the emoji that I was using is a standalone Unicode character. I did a quick printing on Chrome developer console to verify that and Google search to know more about it. "😝" is the emoji that I used to use very frequently. Infact, back in the day when I was using the initial versions of Facebook chat, I used to press on ":P" after almost every message. After entering the WhatsApp days, I changed my habit as the shortcut no longer works. Now that I discovered the emoji is a Unicode character, I have decided to have

Phone as Trackpad for your Computer

Image
I am pretty sure that I am not the only one who crave for a mouse when I don't have one and crave for a trackpad when I don't have access to one. I have a few ideas on turning your phone into a mouse and a trackpad. Let us focus on the later in this blog post. There are two components to this experiment; the first is a server on the computer that you wish to control and the second is a web app that is opened up on your phone that will transmit coordinate data to the server. I think we'll create the server in Python and the web app in JavaScript. Let's get started with creating the server. We'll use 'Flask' to handle API requests and 'PyAutoGUI' to control the mouse. We'll have APIs defined equivalent to cursor move and click for now. import pyautogui from flask import Flask, render_template app = Flask(__name__) # Apparently flask doesn't support negative numbers. So offsetting it. coordinateShifter = 1000 @app.route('/') def index():

Using Google Translator to Internationalize your code

Image
While developing a software, it is often desired that it would be available in multiple languages so that more people can use it. Some standard coding practices include storing messages visible to the user in a JSON or an XML file in English, and have it translated to multiple languages and save it as JSON or XML files with the corresponding language name. In this blog post, I am going to mock a bunch of messages in JSON format and use Google Translator to generate a JSON string with all messages translated. We shall be using Google Translator page and the developer tools,  and not the APIs. As stated above, the first step is to create the mock JSON string having messages in English. I think the following would be good enough to represent the same loaded into a variable. var en_json = { "edit": "edit", "open": "open", "message_continue": "Do you wish to continue", "message_error": "Error performing the a

Drawing in the Air

Drawing in the air For someone who is completely unaware about image processing, this project would seem something out of the world. The people with some understanding about how to read an image pixel by pixel would have some understanding about what I am doing here. I am building a program in JavaScript that takes input from the computer's webcam and create a tool that lets you draw in the air and that gets displayed on the computer. For this, we will have a special pen to which we code our program to detect. To get started, let's use the <video> tag to receive the video feed from the camera, which I will later make invisible.. We'll also have two <canvas> tags that would each hold the current video frame and the drawing output from the tool respectively. We shall also have a button that clears data from the second canvas that has the drawing output. <video autoplay="true" id="videoElement"></video> <canvas id="canvas&quo

Smart Containers - An old project during my college days that could make Amazon better

Image
A few months ago, my friend Dhawal shared a page from Amazon Business introducing their product named Dash Smart Shelf. The system enables businesses to manager their inventories by keeping a track of stuffs in the shelves over time and automatically doing the reordering. The principle behind the product is to have a weight-sensing Wi-Fi-enabled smart scale that is placed on a shelf to track the inventory. The method involved is reasonably simple. A shop owner can have as many of these devices as the different products he/she wishes to store. That would be a lot of sensors. Dhawal and I had worked on a project that would enable reducing the number of sensors involved in order to do the same. In our setup, there would be just two weight sensors placed at a distance and a platform on top of the sensors. We divide the platform into any number and we can determine where each product is placed and if anything is taken away from it, it would automatically change the values. This could

Attempt to Draw a Clip Art of a person using JavaScript

I have been thinking a lot on what to blog about. I have not been able to find some interesting topic to write about. So, I have been reading through the news and different online content and until I observed a clip art of a person. It was an image and storing and retreiving an image takes more data to be transfered from the server to the client. I bet it would be much more efficient if we simply programmed it in. In this post, I am going to attempt to draw a person in using JavaScript. Creation of HTML DIVs and adding the styles shall also be taken care of from the JavaScript side. First let's set up the drawing canvas. I will be using DIVs in this attempt and not going to use any of the SVG related tags. var canvas = document.createElement("div"); canvas.style.background = "#efefef"; canvas.style.width = "500px"; canvas.style.height = "500px"; document.body.appendChild(canvas); Now, let's create the head. The head may b

Interactive Monty Hall Problem Implementation

Image
I may have watched too many videos about Monty Hall problem on YouTube. Many vloggers have attempted to explain the solution to the problem using their skills. I did not search for whether someone has published this before, but I am going to attempt to create a virtual version of the problem in this blog, although it is likely that at least a few people did create this. Some information from WikiPedia: The problem was originally posed (and solved) in a letter by Steve Selvin to the American Statistician in 1975. There was a game show named  Let's Make a Deal , created and produced by Stefan Hatos and Monty Hall, the latter serving as its host for nearly 30 years. I have not watched the show, and I am not sure if the entire show was just about this problem or not. The problem statement is as follows: Suppose you're on a game show, and you're given the choice of three doors: Behind one door is a car; behind the others, goats. You pick a door, say No. 1, and the ho