Sunday, July 26, 2015

Sublime Text 3 shortcuts used as part of my daily workflow

Hello there,

Shortcuts are an integral part of my daily workflow as programmer. Apart from the shortcuts that I use via my oh my zsh dotfile(the ones that come via oh my zsh plugins and the custom ones that I've added on top of those), below are the day to day programming shortcuts that I use wrt Sublime Text 3 for Mac OSX.

I'd be happy to know if you find any of them useful.

Monday, June 22, 2015

How to figure out Runtime Dependencies when using Bower via Rails Assets

Hi there,

The original post of this article was made in the company blog that I'm currently working for(Cybrilla). Please refer to this link for the complete blogpost.

Going forward, there might be quite a few posts which I might directly be posting on the company blog that I work for and I'm planning to share links to those posts on my personal blog. I just wanted to bring this to the kind notice of the readers/subscribers of this blog.

Thank you.

Sunday, June 7, 2015

ReactJS Bangalore June 2015 meetup experience


Recently, I attended my first ReactJS meetup in Bangalore. The meetup was hosted at Codemancers .

Kiran, an organizer of this meetup gave a talk titled Introduction to React Native. You can find the slides used as part of his talk on this link. Below are some quick notes that were jotted down based on the discussions at the meetup around the talk and also around varying experiences of the other attendees who've tried React.

  1. Discussion around ReactJS -
    1. Treat the application as small components
    2. We can compose those components to build large components
    3. jQuery etc., is imperative whereas React is declarative
    4. React handles states differently
    5. React uses different features like composition etc.,
    6. Interestingly React web and native supports writing some basic CSS properties within the React JS file itself.
    7. In react whenever the state changes, we update the view via the Virtual DOM.
    8. React components are tiny and manageable, one has more control over data when using React
  2. Discussion around React Native
    1. React Native is mainly for iOS apps at the moment. Support for Android is something that they've planned for the future.
    2. Development using React native can be done only on Mac at the moment because it depends on things like xcode etc.,
      1. to use in other operating systems Ubuntu → use a mac virtual box..(not officially supported by Apple)
    3. Has a steeper learning curve when compared to reactjs
    4. Learn once and write everywhere principle
    5. React native is mainly for the mobile apps with native experience
    6. Debugging can be done via chrome dev tools
    7. React native implements Flexbox(flexbox is a new layout module for web)
    8. Components like div etc., have equivalent things like View etc.,
    9. They try running react with the iOS simulator
  3. General discussion
    1. People definitely find it better than Angular. One of them even said that react is not only easier for him as a developer, but also it’s useful for other developers on the same project who may not be working on building similar JS stuff
    2. React Native is better than Web in terms of the UI
    3. Check out to help decide which JS framework can be used to better suit your needs.
    4. There is something like even the react developer tools through which you can even change the state or something on those lines.
  4. To get started with react
    1. - It will have all the build tools that we need.
    2. An open source project that Kiran is working on -
  5. Things to research further about in the context of React
    1. ReactJS style guide
      1. Around this topic there was a discussion that folks can use Flux as their application goes bigger in size.
    2. How to write tests in React

Photos taken at the meetup -

I would like to thank Codemancers for hosting us, Kiran for sharing his experiences of using React via his talk and all the attendees for the interesting discussions we had around React.


Since these are quick notes, please feel free to correct me if there is a typo in something or if I've incorrectly mentioned something. Also, please feel free to add more points as comments that were discussed as part of the meetup in case I missed mentioning something, I'll update the post accordingly.

Sunday, May 24, 2015

Bangalore Ruby User Group May 2015 Meetup Experience


The May 2015 BRUG meetup was at Amagi Media Labs. I just thought of summarizing some quick notes from the discussions that took place as part of the meetup hoping that it could serve as a reference for those who could and couldn't make it for the meetup.

To give you a background, some of these discussions were around some questions raised by a person who is running a site called Loan Meet using Ruby on Rails. What's unique was this person was doing Rails development on Windows! We had an interesting discussion around 'Rails on Windows' and the person using it admitted that he had to setup additional things for using certain gems in a Windows platform.

Things discussed were -

  1. Somebody from Amagi Labs was giving a presentation into what they're basically into, what problems their addressing and where does Ruby fit into their Tech Stack.
  2. Akash Manohar briefly spoke about asdf an Extendable Version Manager for Ruby, Node.js, Elixir and more
  3. There was a discussion around Elastic Search and Avinasha Shastry from SupportBee mentioned that they Cache Elastic Search setup for Circle CI instead of installing it as part of every build.
  4. People were discussing different deployment options and many of them were suggesting that the Digital Ocean $5 plan is good for starters.
  5. People were talking about Heroku Review apps
  6. For basic mailing options in RoR apps people were discussing the below -
    1. Don’t use mailgun - it's pretty costly
    2. Using Amazon instead is cheap
    3. For Transactional email on behalf of clients people can’t use amazon
  7. I had a question around ways to better manage our assets. Akash from Icicle and somebody else(sorry, I can't properly recall who) mentioned You can use multiple manifest files. That was something I didn't know about earlier.
  8. We were then discussing different ways to manage front end assets -
    1. People were talking about - bower, yeoman, grunt and something called brunch (This actually reminds me of something like breakfast + lunch :)?, jokes apart, this was something which even I hadn't heard of earlier!) .
  9. People were also talking about debugging in production via pry-remote, papertrail, logstash for production related logs. Many of them agreed that using a third party service like papertrail can save you from the responsibility of managing these things by yourself.
  10. Encoding issues, configure git config to better manage carriage returns
  11. We could use SMS services in our Rails apps via Twilio and solutionsinfini .
  12. People were also talking about Prometheus by SoundCloud.

I'd like to thank Amagi Media Labs for hosting us. They've come up with a new office there and I'm just sharing a few snaps(I had asked them if I could click a few snaps) taken there as they're office setup looked interesting :)

Since these are quick notes, please feel free to correct me if there is a typo in something or if I've incorrectly mentioned something. Also, please feel free to add more points as comments that were discussed as part of the meetup in case I missed mentioning something, I'll update the post accordingly.