Monday, December 15, 2014

Mastering Vim By Damian Conway

Being a fan of Vim, I had always tried to learn new tricks whenever I had time. Being able to enhance my skills to use the tool in a more efficient manner (Vim) was always a welcome bonus. Though the skill level to use vim would vary from person to person, the video covers a wide range of topics and I think would have something for everyone.  
The video starts with the help command and introduces how to use the help command in vim. This was informative, since you could learn once concept at a time by using vim help.    Then the video continues with the different features of vim ranging from search to visual block mode. It was interesting to learn about the different visual modes and how they differ. There were a wide range of concepts covered in the video and I would say the best way to learn them is do one video/feature at a time.

I did expect more of the advanced concepts of Vim like macros, etc - but that wasn't covered . Some of the concepts in the video was very interesting to learn like the undo time machine in Vim. I never knew Vim had such a complex but elegant undo mechanism.  I don't know if I will ever use the undo feature though.

Overall I was impressed by the video and still learned some concepts even though I use so much of vim everyday. The video describes the usage in a very articulate manner and it was easy to follow along. I am hoping to try to incorporate some of the concepts into my day to day activity and see how it helps. . 

Wednesday, October 22, 2014

OSCON 2014 Complete Video Compilation

I always wanted to attend OSCON, but never had a chance since it is usually in Portland. The video compilation provides a complete view of all the action missed, except the social interaction that you get in the conference. This video compilation provides hours of technical entertainment and the scope of topics are pretty wide. The quality of the talks were very good and the video coverage/audio is good.
Starting with the keynotes, I am going to list the talks that I liked and the ones I wouldn't recommend that much. Since the list of video is pretty extensive, I am sticking to a subset of the list. I will continue to update the list if I find some talks more interesting and worth mentioning.
The main keynote talk by Tim O'Reilly is very inspirational and well presented. Also the keynote talk by Shadaj Laddad was good - the talk was well presented and probably inspirational for younger kids wanting to program. 
Liked the business keynote talk by Simon Wardley about Introduction to Value chain mapping. The talk is funny and makes sense.

The Continuous delivery talk by Neil Ford was very informative and covers a lot of topic. Personally this talk was very useful for me, since I am trying to understand the various deployment models and trying to apply some of the models in my work place. Some of the concepts like feature toggle, etc I have been using all the while. But from a deployment perspective it makes sense on how feature toggle can be useful. Talks about various configuration management system with a focus on Puppet. Talks about Dockers and explain how it is used in deployments. 

Get started with Openstack a hands on tutorial provides a good introduction on Openstack and getting started with openstack as the title says. Most of the concepts are similar to Amazon EC2 and after working with a lot of EC2 instances and migration recently, this talk just provided me a good overview on how Openstack terminologies match with the way things work in Amazon. 

Mapbox: Building the future of open mapping by Justin Miller: Talks about various maps and how Mapbox works with opensource. Very good talk if you have worked with open street maps or any of the api like leaflet or anything to do with mapping. Also talks a lot about the book open source “Producing open source software by Karl Fogel” and how Map box uses some of the principles from the book. Talks about how github is used for collaboration. 

How disney built a modern cloud with open source: More generic, less technical. Talks about how to build, etc based on what user wants. I didn’t find it that interesting.
No More whiteboard hiring process by Austin Putman.
Don’t know how practical the methods are to implement, but provides a good view of how you could hire engineers. But one of the best interviews I had was where I was given a computer and was allowed to search, program on the spot,  to solve a particular problem. I do agree that hiring engineers through an intensive data structure/concept understanding drill or through puzzles is not the right approach that is followed by most companies like Google, Facebook, Amazon, etc. 

How to build your applications to scale in cloud by Steven Pousty
Good talk about Microservices and how you will scale from monolithic to micro services. Talks about PAAS and SAAS and why it makes sense to use Microservices on a PAAS model or otherwise and the advantages/disadvantage of a micro service. More high level talk about architecture but would make sense if you are building a new service or trying to break a big monolithic service.


Thursday, September 4, 2014

Programming JavaScript Applications by Eric Elliott; O'Reilly Media

I first heard about Eric Elliott from the Kickstarter page where there was a kickstarter project to raise money to teach a course on Javascript. I was very much expecting a lot from this book but I had to stop reading the book after a point when I realized this book was not for me.

The book started with some very basic information like how REST worked including details about HTTP protocol, best practices for programming with functions, etc which is probably useful for novice programmers and I found no use of it. I was hoping to find a more gradual introduction to advanced concepts of Javascript instead of the introduction in this book. I know the book referred to other books to get familiar with the more advanced topic of Javascript and may be my perspective would have been different if I had read those books. 

The code samples often jumped into concepts that was not spoken about, but eventually it got spoken about later. I had basic understanding of some of the advanced concepts of Javascript since I have used libraries like extJS, JQuery, etc. I was hoping this book would have helped me build my foundation to use the libraries better and to be a better javascript programmer, but I guess this was not the right book for that.

I would not recommend this book to anyone who has basic knowledge of Javascript and wants to just grasp the advanced concepts in an easy to understand way.  I would try to read this book again after I read some of the other books mentioned in the introduction and probably update my review.