≡ Menu

OOP stands for Object Oriented Programming. This concept is a style of solving programming problems where properties and behavior of a real-life object is packaged as a single entity in the code.

This style of coding enables modularizing and scaling with least amount of issues.

Python is a dynamically typed, high level interpreted programming language. Python supports several OOP features including the following:

  • Classes and Objects
  • Encapsulation
  • Inheritance
  • Polymorphism


While using git, for most part, you shouldn’t be working directly on the master branch.

Any development work, or hotfixes, or research work that you do, you’ll typically create a new branch, and make changes to your code on that branch.

If you are happy with your code changes on your branch, then you’ll merge it to the master branch.

Or, if you created a branch to quickly test something by making some code change without the intention of keeping your code change, then after your testing, you can simply discard your code changes by deleting the branch that you created for your testing purpose. This way, the code in your master branch is not affected.

This tutorial explains the following steps:

  1. Create a new dev branch
  2. Do your work on local dev branch
  3. Push dev branch from your local to central git repository
  4. Once your work is done, merge dev branch to master
  5. Finally, delete the dev branch from both local and central git repository



Splunk supports three types of authentication: Native Authentication, LDAP and Scripted Authentication API.

For most part, Native Authentication is referred as Splunk authentication, which takes high priority over any external authentication.

So, if an user exists in both Splunk native authentication and LDAP, Splunk will use the user in the native authentication.

Typically, you’ll create an user, and then assign the user to a role. This is called role-based access control system. You can do this either using Splunk CLI or from Splunk Web.

[GoLang Slice Examples]Slice is an essential component of Go programming language.

When writing a go program, for most common use-cases, you’ll be using slice instead of array.

An array is fixed in size. But slices can be dynamic. The number of elements in a slice can grow dynamically.

But, keep in mind that slice uses array in the backend. Slice by itself doesn’t store any data. Think of slice like a reference to an array. All it does is to describe part of the underlying array.

This tutorial explains the following slice concepts:

  1. Declare Slice Variable and Make a Slice with X number of Elements
  2. Declare and Initialize Slice at the same time without using Make
  3. Initialize a Slice using Multi-Line Syntax
  4. Assign a Value to a Specific Element in a Slice
  5. Access a particular Element in a Slice
  6. Display All or Specific Elements from a Slice
  7. Create Slice with Low and High values using Colon Syntax
  8. Slice Refers to an Array underneath – Implication of Changing Slice Element Value
  9. Slice of Structs
  10. Identify Length of a Slice – How many Elements are there?
  11. Slice Capacity – Length vs Capacity
  12. Empty Slice without an Array Underneath
  13. Append one or more Elements to an existing Slice
  14. Copy elements from one Slice to another (Duplicate Slice)
  15. Two Dimensional Slices
  16. Loop through Slice Elements using For and Range
  17. Loop through a Slice and get only the Values (Ignore Slice Index)
  18. Full Working GoLang Code with All Slice Examples

For details on Go Array, refer to our previous tutorial: 12 Practical Go Array Examples


[AWS Configure Example]To use AWS CLI, you need to first make sure your AWS access key credentials are configured properly.

Once you have your AWS access_key_id and secret_access_key, you can either manually add them to the credentials file, or use aws configure command to set it up on your local machine.

This tutorials explains all the options available in aws configure command along with how to manage multiple profiles:

  1. First Time Configuring AWS Credentials – Default Profile
  2. ~/.aws Directory – Config and credentials File for Default Profile
  3. Edit Default Profile Credentials – Connect to Different AWS Account
  4. Create Multiple AWS Profiles – Dev and Prod
  5. ~/.aws Directory – Config and credentials File for Multiple Profiles (Dev and Prod)
  6. Switching Between Different AWS Profiles using –profile Option
  7. Switching Between Different AWS Profiles using AWS_PROFILE Env Variable
  8. View Profile Information using list Option
  9. Change Default Config and Credentials FileName and Location
  10. View a Specific Profile Parameter Value using get Option
  11. Set a Specific Profile Parameter Value using set Option
  12. Add New Model using add-model Option


[GoLang Array Examples]To get a good handle on Go programming language, it is essential to understanding arrays and slices.

If you are developer, or sysadmin who is new to Go, it is important to understand the following key differences in how array is handled in Go when compared to other language:

  • You cannot change the size of the array once it is declare.
  • The array size should be specified when you declare an array. To overcome this limitation, you’ll be using slices for most part in GoLang. But, it still sill important to understand how array works, as slices works on top of array.
  • When you assign an array to another array, essentially you are copying all the elements from one to another.
  • The above is important to understand, as when you are passing an array as a parameter in an function, the function will really get a copy of the array and will work on it. It is not a pointer that we are passing. It is copy of the whole array.

This tutorial explains the following basics of array handling in Go, with a full working example along with the output that is provided at the end of this tutorial.

Looping through stuff is an important aspect of any programming language.

In several of our previous tutorials, we explained in detail various loops including python for loop, for loops in c programming, loops in awk scripting, loops in bash shell scripting, etc.

The focus of this article is on how to loop through stuff in Ruby.

Happy New Year 2018 – From Geek, Dolls and Penguins

[Ramesh, Kids and Penguins]

Happy New Year from Me and My Daughters (Diya and Neha)

Happy New Year to all Geeks from Me, My Daughters (Diya and Neha), and our Penguins.

We wish you and your family a happy, healthy, and joyful New Year.