Making the decision to purchase – How to visualise value

Why I want to purchase visualise value course? 

  • WordPress sites are only as good as the theme is 
  • I only have good taste. I can tell good from bad. Not able to convert taste into real world stuff
  • Spend hours trying to find the best theme and it still falls short
  • The price will increase – I will not be able to afford it then

Where will I put this in practice

For the next 3 months I will be focusing on building Mr Albert (gst filing service for self employed indians) and Asyncauto ( a specialised dev shop). I will use the learning from this and try and improved the messaging on these.

For Mr Albert I have a recurring revenue of

and for Asyncauto I have one active client.

Landing page for Mr Albert looks like this:

Landing page for Asyncauto looks like this:

Outcome I would like to have with this course:

The landing pages above look sort of ok. If I am able to polish these and additionally bring in significant more revenue, then this will be worth it. Hopefully I can show some output in 3 months time.

Bet that I am taking:

How create a read only user?

Good reasons why someone wants to access db

  • Analytics tools like metabase
  • Datascience team wants access to tables

Why create read only users?

  • Analytics tools are supposed to be used by non-developers. You dont want them to accidentally alter data
  • Only the app should alter data. Dont give people an opportunity to alter data outside of the app or via the api.

How to

-- create user
CREATE USER dbreadonlyuser WITH PASSWORD 'somepass';

-- give user permission to connect to db
GRANT CONNECT ON DATABASE dbname TO dbreadonlyuser;

-- give user permission to access schema
GRANT USAGE ON SCHEMA "public" TO dbreadonlyuser;

-- grants access to all tables in this schema public for this user

-- grants access to all future tables that you might add to the db. This way you dont want to keep running the previous command again and again when you create new table

Things to replace:

  • dbreadonlyuser – replace this with your choice of db user name
  • somepass – replace this with your choice of password
  • dbname – replace with the database’s name that you want to access

Day 1 of 1hr meditation


Naval Ravikanth recommends doing 1hr long meditation every day (atleast for 6o days). He has talked about the benefits of this in his podcast and via his tweets. My friend – Kedar, has always sworn by about the benefits of meditation.

I know both Kedar and Naval are very smart, intelligent people. I know there has to be some real backing to what they are saying. I have seen Kedar doing meditation when there are plenty of reasons not to (like when there are people around, when travelling etc). Always knew there has to be some benefit to doing it. Otherwise these guys will not be doing it.

I have tried meditating. I have always half-assed it. Do it for 10 mins. Do it once in a while etc. I was always put off by the thought of having to do nothing for 1hr. To me it looked like a waste of time. After years of avoiding doing it, I think I am starting to realise that it is not a waste of time.

After years of observing myself, I noticed that I spend more time watching youtube and being distracted than I save by not meditating. Saving time by not meditating is clear to me now was just bad short term optimisation.

Giving it a go:

Previous meditating attempts were based around an app giving guided meditation. For some reason I am not able to connect to the voice. My struggles are different. Naval’s meditation recommendation is – 1hr every day for 60 days. Do nothing. Give your thoughts an audience.

This makes sense. I can vent out my frustrations. Today April 20th is day 1 of the 60 days. I am going to force myself to sit for 1 hr every day for 60 days. After that, if I like it I will continue. If I dont like it, I will give up. No pressure.

Day 1: Setup

Setup is very simple. It consists of 3 things, 1) a chair on the balcony, 2) a stop watch(on phone) 3) a habit tracking app (streak)

Chair on the balcony


Challenges faced

Desire to check time remaining

1hr is a long time to do nothing. 5 mins in, I feel like checking time remaining. Its probably good that I dont know the time remaining, that way I will not feel demotivated by looking at the amount of time remaining.

I keep telling myself. Relax, this is going to take a long time.

Desire to get up and do some action

While letting my thoughts free, somethings I might be thinking of some problem at work. I might think though different solutions and when I feel like one of these solutions might work, I feel like getting up and quickly trying out the solution. Sometimes I feel like taking notes..

I had to keep convincing myself that I am going to do nothing and I am not going to break the 1hr based on whatever I feel like in the short term. I am not going to do short term optimisation. If the solution is that viable, it will come back to be again.

Worry that the stopwatch might not ring (and maybe I will meditate for ever)

This is a weird worry. I have no sense of time. Of course, I know I am not going to meditate for ever, but kept thinking what if the alarm does not go off? What if it is in silent and I over meditate?

I opened my eyes in between once to check time remaining. There was 8 minutes remaining. I was both pleased with myself (I did nothing for 52 mins) and not happy because I could have not done anything for another 8 minutes. The next 8 minutes felt like a long time.

For tomorrow I am going to test the stop watch by testing it before starting the meditation. This way, I can atleast be sure that the alarm will go off in 1 hr.

Change ZSH terminal prompt

You can test what prompt you like by running the following command in the terminal – PROMPT='%/ %# '

My preferred basic prompt – PROMPT='%n@%1~ %# '. This will give me a prompt that looks like this – alex.jv@ec2code %.

In order to make sure this prompt is available on opening new terminal, its needs to be added to profile.

touch ~/.zshrc – create – zshrc file

open ~/.zshrc – open zshrc file and add PROMPT='%n@%1~ %# ' to the file.


Book digest – “knock knock” by Seth Godin


This post is my take away from this book – knock knock (it is available online) by Seth Godin

I found this book from Value Saas Basecamp guide: An Indian founder’s guide to achieve first $10k MRR.

Book digest

What a website does? 

Big picture #1: purpose

  • Turns a stranger into a friend and a friend into a customer
  • Talks in a tone of voice that persuades people to believe the story that you are telling

Big picture #2: what can happen

After someone sees it, it can cause one of these 4 things to happen:

  • clicks and goes somewhere you want that person to go
  • Clicks and gives you permission to follow up by email or phone
  • Clicks and buys something
  • Tells a friend either by clicking on or by blogging or phoning or talking

A web page is a step in a process.

A webpage is not a place. A web page is a step in a process. They are supposed to choose a direction and take you to the next step.

Web page are better off being good at one thing. 

Eg: Buying traffic:

$1 cost per click

People who land up 20% of then clicks on next step- say free trial- cost $5 per user at this step

After trial the conversion turns out to be – 20% conversion – $100 for a customer.

In the case, pages clearly acts as steps in your conversion funnel.

First big rule: 

View your site as a service of steps that go from stranger clicking on an ad, all the way to a satisfied customer telling ten friends. Figure out which step is least efficient, and focus all your energy on making it more efficient. Measure everything. 

Another great principle

Like it or not, every page on your site has a ton of voice. That tone must match the expectation of the visitors or they will misunderstand who you are (or worse, flee). Choose a tone that matches or exceeds the tone of your sucessful competitions 

The challenging thing here, is that one person’s appropriate vernacular is another person’s trite over-design. There is n o way to predict what the visitor’s worldview is going to be … no way to know what a given person is going to get it. 

Principle- you have to choose

You have to choose – you are never going to please everyone, so you should  not ever try. If you do, you will fail at pleasing anyone. Instead, imaging who your very best audience is and go straight for the heart of that group – and ignore everyone else. 

Principle – there is nothing just as a home page. 

When you send someone to your website, dont send them to your home page. You can have as many entrances to your site as you want – landing pages. 

People can land on your landing pages via google search or via ads or via people sharing links. 

We are been trained by the engineers to see a website as a pyramid, with a home page at the top and an ever-increasing range of choices as the user digs deeper. 

Instead I’d like you to see a website as a series of processes, as different from each other as each customer is different. 

Other random points:

Choice is a bad thing – If you give people too many choices, 

Contact is a good thing – Give out your contact. With your website you want the conversation to happen.

This is the biggest challenge that most sites face. It takes guts to say,- here is one thing I want you to do. It is much easier to just list every choice. Alas, every choice is no choice. 

Simple internal sitemaps

Simple admin sitemap

What ever solution that you build, there will be some internal pages that you would be building for internal employees to do administrative work such as clean up data, manually create new user etc.

The minimum functionality that you can build is to have an simple clean admin sitemap. HTML code the the above sitemap:

<div class='ui container'>
  <div class='ui grid'>
    <div class='sixteen wide column'>
      <div class='ui segment'>
        <h2>Admin sitemap</h2>
        <div class='ui ordered list'>
          <div class='item'>
            <div>Users and VAs</div>
            <div class='ui ordered list'>
              <a href="" class="item">List all users</a>
              <a href="" class="item">List all VAs</a>
              <a href="" class="item">Create a user or va</a>
          <div class='item'>
            <div class="ui ordered list">
              <a href="" class='item'>VA hours consumed per month</a>

Use trix for as rich text editor

Trix used with semantic ui

Semantic UI does not support a native wysiwyg. Trix by Basecamp team is a very elegant rich text editor (wysiwyg).

Use the sails-business-stack-generator to install trix in your sails project.

Sample code for using trix.

<div class="field">
    <label>Summary of work for this subscription</label>
    <input id='report_body' type="hidden" name="report_body" placeholder="write your summary here" value="<%=dr.body%>">
    <trix-editor input="report_body"></trix-editor>

Things to note about the above code – 1) trix editor has an attribute called input. This should be the id of the input element on which the trix editor is applied. 2) Also make sure that this page includes the trix js and trix css.

<link rel='stylesheet' type='text/css' href='/trix/trix.css'> 			
<script type='text/javascript' src='/trix/trix.js'></script> 	

This post is part of the business solution stack series