Skip to main content

Posts

Showing posts from December, 2021

Understanding ASCII / Unicode character encoding format

Computer stores everything in binary format. The process of converting a value into binary is called Encoding and the the process of converting value from binary is called Decoding. value --> binary  ::     Encoding  binary --> value   ::    Decoding for example: A number 12 is stored in its binary format as below.               12 ---> 00001100 but how are the characters are stored? If we want to store a character 'a' what formatting should be used ? It easiest way is to map the characters to number and store the binary format of that number. So, the character 'a' is represented as number 97 is stored as 1100001.  ASCII: In ASCII encoding format, 128 unique characters are identified and mapped with numbers (mostly English). One byte is used to represent all the characters. It uses 7 bits to represent numeric value 0 to 127 (total 128 characters).  The most significant bit is a vacant bit.  The vacant bit can be used for other characters not represented in AS

Ruby gem explained

  What is a Ruby Gem? Gems are open source libraries just like jar packages in java or modules in Go, the gem contains contain Ruby code. This helps in modularization of the code. A gem can be used by a developer in their own program, without writing that piece of code. You can check the different gems at https://rubygems.org/ . Below are some of the popular gems: Bundler — Provides a consistent environment for Ruby projects by tracking and installing the exact gems and versions that are needed. RSpec — A testing framework that supports BDD for Ruby. Devise — Devise works with authentication. Website that needs to user log-in’s, Devise handles sign in, sign up, reset password, etc. JSON — Provides an API for parsing JSON from text. Nokogiri — Provides HTML, XML, SAX, and Reader parsers with XPath and CSS selector support. Rails — Rails is a fullstack web application development framework. Install Gems To Install gems locally you can run the command:

Library v/s Framework

        Library A library is a functionality grouped and packaged together. A library performs specific, well-defined operations. A library is just a collection of class definitions. The reason is it simply code reuse, in other words, gets the code that has already been written by other developers.   Framework A framework on the other hand more complex. It defines a skeleton where the application defines its own features to fill out the skeleton. Springboot/Rails are popular framework that deals with complexity of handling http request response cycle.  Springboot - makes it easy to create stand-alone, production-grade Spring based Applications.  It is an opinionated framework. Most Spring Boot applications need minimal Spring configuration. Rails - is a web application development framework written in the Ruby programming language.  It is designed to make programming web applications easier by making assumptions about what every developer needs to get started.  It allows you to write l

Five untold skills of a software engineer

Today there are multiple programming languages, frameworks, libraries and innovative technologies. They either get popular or fade away. But today I’m going to talk about few of the top untold skills in tech industry that don’t fade away with time. 1) Communication skills — Communication is by far one of the important skill to possess. It is very important for you to articulate your problems/ideas/solutions when you work in teams. It allows others to visualize the subject you are see. You ability to communicate the problems/ideas/solutions can lead to better understanding amongst others and the overall productivity of the team. 2) Ability to find solutions — As a software engineer we often spend time on stackoverflow looking solutions to our problem. Your ability to reference similar type problem on stackoverflow and connect it to your problem to get your solution is very important. I have often seen junior developers unable to connect the dots to their problem with si

Common handy git commands

           In this article I'll explain the commonly used git commands every developer, DevOps engineer should know. git config Git config commands gives you the information about your git configurations. It can be used to setup initial configs when you install git. Usage: list all the configuration for the git   $ git config -l   Setup global username $ git config --global user.name "Your name"  Setup global email $ git config --global user.email "Your email" git version  Displays the version of the git you are working on. Usage: $ git version git init This command use to initialise git in a new project. Once the git is initialised for a project you can add source code to track the commits. Usage: $ git init Use init with repository name will create a new project with git initi