Category: Uncategorized

Role of the Chief Technology Officer

Chief Technology Officer's Blog

Given the title of my Blog ‘Chief Technology Officer’s Blog’ – I thought it would be a good idea to briefly explore it’s namesake.

The role of the Chief Technology Officer (CTO) is one of the least defined and understood corporate executive roles (such as CEO, COO, CFO, CIO, etc).  The role has been gaining prominence in many organizations, as witnessed with the newly created position of Chief Technology Officer of the United States.  This can be attributed to the growing impact of technology on both organizations and society, and highlights an expansion of focus beyond Research and Development to broader Competitive Strategy.

According to Wikipedia

A chief technical officer or chief technology officer (abbreviated as CTO) is an executive position whose holder is focused on scientific and technical issues within an organization.  Essentially, a CTO is responsible for the transformation of capital – be it monetary, intellectual, or political – into technology in furtherance of the company’s objectives.


View original post 268 more words


Rails::Reply via Email::Using Postmark


Sending emails from rails is an easy process. But sometimes we need to reply to the email itself that was sent by the app.

Postmark is the easiest and most reliable way to be sure your important transactional emails get to the inbox. Postmark allows you to send your application’s emails with high delivery rates, including bounce/spam processing and detailed statistics. In addition, Postmark can parse incoming emails which are forwarded back to your application.

The process of replying via email is known to be inbound.

How to implement Postmark in rails?

  1. Add add-on postmark in your Heroku or  sign up using ( If you add postmark as an add-on in Heroku you do not need to sign up additionally).
  2. Create your server by adding the name of the server.
  3. You can create a signature or even skip this step.
  4. Since we are implementing inbound process, we will need…

View original post 207 more words

Ruby : Public , Private, Protected simplified

My Daily Technical Notes [ Ruby, Rails, Gems, Server Ops]

class A
  privatedef pri
    'hey I am private of A'
  endprotecteddef prot
    'Hey I am protected of A'
  endendclass B < A
  def call_pri_of_a
  enddef call_prot_of_a

Now calling the accessors within B

 > b => #<B:0x00000002b56ad8> 
 > b.call_pri_of_a
 => "hey I am private of A" 
 > b.call_prot_of_a
 => "Hey I am protected of A"

Up to here; there seem to be no difference

bb => #<B:0x00000002b1a0b0>
def bb.access_private(child_of_B)
def bb.access_protected(child_of_B)

Now calling the accessor

> bb.access_private(b)
# => NoMethodError: private method `pri' called for #<B:0x00000002b56ad8>
> bb.access_protected(b)
# => "Hey I am protected of A"

View original post

Processes to run Whenever gem in remote server.

These are the processes to run whenever gem in remote server:

  1. Install the whenever gem
  2. Write your scheduler.rb file
  3. Push to the remote server
  4. Login to the remote server (for example with ssh)
  5. See if whenever is good uploaded by running in terminal: whenever . You can see the following type result if whenever is uploaded.

Screen Shot 2015-10-04 at 9.40.12 PM

  1. Update whenever crontab by running: whenever –update-crontab
  2. Restart the server crontab (for example in Ubuntu server): sudo service cron restart
  3. Check if crontab is good implemented on the server: crontab -l.  You can see the following type result after whenever implemented.

Screen Shot 2015-10-04 at 9.48.08 PM

Creating User and Admin Model using Devise Rails 4.0

Ruby on Rails Help

In this tutorial I will show you how to install Devise. I decided to make this tutorial because it is hard to find a good resource for installing Devise on Rails 4.0. This tutorial will NOT teach you the basics of Ruby on Rails. It is intended to help those who have a basic understanding of Ruby on Rails.

If you would like a good place to start learning Ruby on Rails, read and complete by Michael Hartl

Other good resources are:
Devise Github page

In this tutorial I will be using the following gems

  • Rails 4.0
  • Devise 3.2
  • PostgresSQL 9.1

Using PostgreSQL is optional. If you would like to use it then you can follow the railscast to learn how to set it up.

This tutorial will show you how to create two models within devise. We will create a User and Admin model…

View original post 572 more words

Google Integration Using Devise and Omniauth In Rails App.


Ruby on Rails


In this blog i’ll show how to integrate Google authentication using devise.To install devise you can refer to my blog here.

Add the gems in your gem file

gem ‘devise’gem 'omniauth'gem 'omniauth-google-oauth2' 

Run the “bundle install” command to install the gem.

You need two more columns to store provider type and userid given from google

rails g migration AddProviderToUsers provider:string uid:string

Runt rake db:migrate to insert the columns in users table.

Go the user model “user.rb” and add the following line

devise : omniauthable

First of all you need to create an app in google to get “Client key” and “Client Secret key”

Create an app and get the Client id and secret key.

Now you need to declare the provider name and client id and key.Go to the file config/initializers/devise.rb and the following line

require 'omniauth-google-oauth2' config.omniauth :google_oauth2, "APP_ID", "APP_SECRET"…

View original post 195 more words

minimum maximum validation between two attributes


There have been many instances when working with rails application, I had to put the minimum, maximum custom validator or active record callbacks check if the maximum value is valid compared to minimum value.

Few such examples are:

1. Comparing minimum and maximum salary.
Maximum salary should not be less than the minimum salary. It can only be equal or greater than the minimum salary.
Minimum salary or Maximum salary can be blank because we might have constraint on minimum salary and no cap on maximum salary or vice a versa.

2. Comparing the age.
Comparing the father son age. Son’s age should not be more than father’s age

3. Comparing Minimum, maximum points to avail an offer.

Though writing a custom validator is a matter of 5 minutes. But for each of the case in different application you have to repeat the code in one of the module or…

View original post 152 more words