Talk on post “Agile is dead, long live agility.”

There was a post by Dave Thomas (for those who don’t know him he is one of the first 17 signatory in Agile Manifesto) “Agile is dead, long live agility“. There was a another post with difference of opinion by Kevin “Pragdave is wrong. And his advice is harmful“. Out of excitement I tweeted to which Dave replied.

You can find original tweets here. The conversation continues as mentioned below:

You can find original tweets here. Here is my view as an practitioner and enthusiast of Agile:

  1. I understand there are manifesto created 14 years back.
  2. There are many ways to do it Scrum, XP, Craftsmanship etc.
  3. There is a lot of gray area on how to design to agility.
  4. Appreciation of all the support and humble attitude from people like Dave.
  5. I feel even after having abundance of resource we do not have a bootstrap.

Happy Agility!

Google Charts Learning Series

Intial sets of learning:

  • While loading multiple package use one single google.load() statement.
  • When using both package 1 and 1.1 we can use only 1.1 as it is backward compatible.
  • In google playground click edit html for complete source code.
  • Months of google date starts from index 0 (zero) as January.
  • You must give all controls a filterColumnIndex (or filterColumnLabel) to specify column in use.
  • You should listen for the ready event before you try to change the dashboard composition or draw it again.
  • A control can be added in chart location for binding as well as in control location later.
  • Using bortosky-google-visualization for integrating data source with Dot Net.
  • Changed a code in above lib to manage date & datetime i.e: return string.Format(“\”Date({0}, {1}, {2})\””, d.Year, d.Month – 1, d.Day);
  • We will include Visualization libs source code in our solution.
  • In new google.visualization.DataTable(gdt, 0.5) < 0.5 is version of the google api
  • Before returning the data table to UI change the date column with google charts date data type.
  • We need to be very careful of the data type that we are sending to the charts, especially with int and datetime. Since some column mapping like pie charts only take integers.
  • To add pagination to table of google charts. add page : ‘enable’ under option section
  • If we are using GeoCharts we cannot zoom and pan by default. It will come in future version. But we can create a manual zoom and pan if required.
  • Few of the data in the charts are send to the server for processing. So need to be careful with data security.

Happy Charting!


Beautiful API of Google Charts

I have never came across such an fantastic api design for any library. There are many excellent library out there but Google Charts is different. I am not a language designer nor an public api developer. Working with this open source library was mind blowing. Below are couple of instance where the interface worked exactly like I thought it should work.

First instance: While working with dashboard, I had control charts dependent on main control chart and it must control another chart. So the data to a control chart say “B” comes from “A” and data to a chart “C” comes form “B”. Also on load the data to chart “C” comes from “A” To accomplish this what I did was exactly mentioned above.

  • someObject.bind( “A” , [“B” , “C”] );
  • someObject.bind( “B” , “C”);

Second instance: While constructing a chart in the dashboard if we have one data source. For each charts we can define a view property to set the column index that will be sub data source for the chart.

Such clear, simple and elegance use of api makes me think of below advantage:

  1. Faster development time.
  2. Same level of class design across different kind of charts.
  3. Easy to hand over the technical knowledge across team.
  4. Highly maintainable code.
  5. Less code to write.

Happy Programming!