otto catalogue shopping

Parag Arora's Blog

CTO and CoFounder @Glowing.io, Co-Founder @Plustxt now acquired by @One97, IITD Grad, Engineer, Entrepreneur, Multiplatform hacker, Product Guy

Enter your email address:

Delivered by FeedBurner

Maintaining forked private repo of a public repo

Lets assume you working on a public github repo e.g., https://github.com/parag/simplenlg-python3 . You have done git clone this repo but now you want to extend this library but privately. You could maintain a new branch ‘dev’ locally or since you are not pushing to master, you can maintain just master branch only. Advice to maintain a different branch though. You could push this ‘dev’ branch to master of your repo.

If you are wondering what is the use case, this is majorly used if your production systems are dependent on the repo and original author is not very active to accept your changes which you want to push to your server.

Imaging you have created a private new repository over bitbucket.

First, checkout a new branch:
git checkout -b dev

Add a new remote in your current local:
git remote add private git@bitbucket.org:paragarora/sp3.git

Now push this branch to master of new private repo
git push -u private dev:master

You could also push public master branch to your private branch
git push -u private master:github_master

Picking right messaging broker

I had implemented my last company (Plustxt) product over eJabbered. It worked well for couple of hundred thousand users but after I sold the company to Paytm and implemented for over 50+ million users, we immediately started noticing bottlenecks with scaling XMPP but also more importantly started facing heavy battery drainage in mobile. One of the most critical infrastructure for Glowing is also messaging broker. Inspite of great deal of knowledge sunk-in cost in eJabbered, we took the challenge of exploring for much better and reliable technologies.

Following were salient points we considered before picking the right solution:

  1. Ease of portability to platforms like having socket extension for web and MQTT for mobiles
  2. Lightweight
  3. Enterprise level message delivery, which would mean
    1. swift response
    2. for both device and web
    3. low latency
    4. no loss of message
    5. availability
    6. scalability
    7. eventual consistency

Read the rest of this entry »

Messaging aggregation platform and challenges

A messaging aggregation platform is a platform that is capable of receiving and sending messages to multiple (and popular) messaging platforms.  Existing messaging apps installed on user devices act as invisible apps available for and tie into our platform. Benefits for end (consumer) users who consistently rely and use a favorite platform include not needing to install any new apps, let alone change and learn new behavior; but rather, businesses that use a messaging aggregation platform merge into current habits and preferences of users.

Read the rest of this entry »

Localizing ReactJS static apps

Since we are so much focused on messaging layer, internationalisation and localisation is mission critical for us. We explored lots of solutions for incorporating messages for multiple languages but none of the solution worked out of box for us. After doing research, explored we need to zero down to one of the mentioned two options:

1: i18next
2: react-intl

Although both are complementary solutions with react-intl on first looked like eventual solution. But having different string messages for different languages looked like very hacky and react-intl was not infact made for that. Its mainly for localising formats (e.g., date). Also we are already using i18n on our API servers, so i18next looks like an apt choice for the workflow is similar. Here is how to integrate this i18next.

Read the rest of this entry »

The Droid Age

Translation of the wisest words I think I will ever hear or read.

 

Surely we will create droids one day who will serve us everything we think we desire
Surely we will make their body look like us, and then make them pixel perfect
Surely we will put mind to them, to act according to situation
By imparting them experiences, knowledge and thoughts  at regular intervals
Surely we will give them the 5 senses, which will trigger activities in their mind
Surely we will program mind triggers and name them good or bad
Surely we will thus impart emotions and expressions
Surely we will think we have created humans
Surely we will all forget what we can never give them
Surely we will forget the real self also known Buddha, Brahman, Om, Allah
And surely we even don’t need to create these droids
For we are the new droids, failed by our own desires
And surely desires are of false health, wealth, recognition and children
And surely desires are of the false sensory satisfactions

I am perfect?

When I am happy for I am perfect
is the pivot when I became imperfect
As perfect is perfect only to imperfect
For the perfect, its just being me
And its only the one who is not real I
who in duality is in delusion I am perfect

Favourite Food

And again I am asked, about my favourite food
Blessed me smile, in no search of answer
For if there is an answer, I open those gates
Those gates of stupidity, for favourite was past
Tasteless I seek, the next taste to come
For whatever I am served, is the magic of nature

On Entrepreneurship and learnings from Swami Vivekananda

Solution to all problems and living in a higher state is very simple though under-rated – it is surrendering. Surrendering to an idea, a cause, a desire to knowledge, or just any work you are doing in day-to-day life. Thats what will make a life complete. Care for the impacted ones. This is true work and way to live. This is Karma Yoga. Religions like Hindu assigns a Karma if a being is unclear on what to do. But an entrepreneur choses his Karma and associates so strongly with reasons behind those Karma that it becomes very easy to surrender. This is the fastest path to Karma Yoga and it becomes easier for him to connect faster.

Brainstuck

And I want to go across the ocean
And look for a seat by the garden as now
And pick up a book like one I am reading now
Go through some pages and keep thinking on those
As I am just doing
And then I will think
What has changed has always been same
And more they change, more is it the same
For, what I want has always been the same
But how I want is very lame

 

IMG_20150809_131230

 

Happiness fulfilment – only way to create successful companies

Everything what humans do is for the selfish interest of feeling happy which is fine and an accepted fact. Even public services are also done for the happiness. People consider happiness as “a feeling of satisfaction” or “attainment of satisfaction” against ” a state of calm and peaceful mind “. This is brainwashing done from ages.

There is always huge opportunity industrially and almost every organisation try to exploit this human behaviour which is fair. Examples are satisfaction of being connected, satisfaction of being insured, satisfaction of not getting cold, satisfaction of relief from nicotine pang,  satisfaction from assuming sugar is good and getting fix for it, satisfaction of saving time using time management apps etc. Seeing things in reality as they are is extremely important. Also, this makes a huge difference between successful and non-successful companies from a long term perspective. Fulfilling a satisfaction which can be seen as long lived is extremely important.

e.g., satisfying a need to provide crisp shortened news which saves time as well as provide all information is long lived, but providing news in a belief thats it a difference interface than existing ones is not long lived – its just a change. So next time you are working on anything – ask yourself what exact satisfaction you are fulfilling. If you can create happiness or even an assumption of happiness which can be long lived – you’re on great path.