<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-3416015228970774796</atom:id><lastBuildDate>Fri, 09 May 2025 15:50:49 +0000</lastBuildDate><category>Varun Mehta</category><category>technical</category><category>running</category><category>project planning</category><category>half-marathon</category><category>photography</category><category>raspberry Pi</category><category>adserving</category><category>architecture</category><category>gist</category><category>pi</category><category>plans</category><category>raspberry jam</category><category>running plans</category><category>startup</category><category>CFA Level I</category><category>Glen Rock</category><category>Google Apps</category><category>Google Cloud</category><category>Google docs</category><category>Multitenancy</category><category>Posters</category><category>Qcon</category><category>SaaS</category><category>books</category><category>calcuator</category><category>code</category><category>elasticsearch</category><category>event</category><category>iPad</category><category>iPhone</category><category>photobooth</category><category>race pace predictor</category><category>raspberry</category><category>reindex</category><category>shoes</category><title>{ proton: fever }</title><description></description><link>http://protonfever.blogspot.com/</link><managingEditor>noreply@blogger.com (Varun Mehta)</managingEditor><generator>Blogger</generator><openSearch:totalResults>35</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-3182029889440257534</guid><pubDate>Wed, 02 Aug 2017 21:00:00 +0000</pubDate><atom:updated>2017-08-02T17:00:17.727-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">event</category><category domain="http://www.blogger.com/atom/ns#">Glen Rock</category><category domain="http://www.blogger.com/atom/ns#">Posters</category><title>Festival poster designing month! </title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span id=&quot;goog_68336004&quot;&gt;&lt;/span&gt;&lt;span id=&quot;goog_68336005&quot;&gt;&lt;/span&gt;Busy with some poster designs for local events in town;&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Bollywood Night 
&lt;/h3&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a data-flickr-embed=&quot;true&quot; href=&quot;https://www.flickr.com/photos/varunmehta/36289888376/in/dateposted-public/&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot; title=&quot;Bollywood Night Poster - 2017&quot;&gt;&lt;img alt=&quot;Bollywood Night Poster - 2017&quot; height=&quot;1024&quot; src=&quot;https://farm5.staticflickr.com/4372/36289888376_faf8306d55_b.jpg&quot; width=&quot;663&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;script async=&quot;&quot; charset=&quot;utf-8&quot; src=&quot;//embedr.flickr.com/assets/client-code.js&quot;&gt;&lt;/script&gt;

&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Holi 

&lt;/h3&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a data-flickr-embed=&quot;true&quot; href=&quot;https://www.flickr.com/photos/varunmehta/36289891216/in/dateposted-public/&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot; title=&quot;Holi Festival Poster - 2017&quot;&gt;&lt;img alt=&quot;Holi Festival Poster - 2017&quot; height=&quot;1024&quot; src=&quot;https://farm5.staticflickr.com/4395/36289891216_7e188cd078_b.jpg&quot; width=&quot;796&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;script async=&quot;&quot; charset=&quot;utf-8&quot; src=&quot;//embedr.flickr.com/assets/client-code.js&quot;&gt;&lt;/script&gt;

&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2017/08/festival-poster-designing-month.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total><georss:featurename>Glen Rock, NJ 07452, USA</georss:featurename><georss:point>40.9628758 -74.1329207</georss:point><georss:box>40.9388938 -74.1732612 40.986857799999996 -74.0925802</georss:box></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-1885841416360928764</guid><pubDate>Sat, 15 Apr 2017 16:00:00 +0000</pubDate><atom:updated>2017-04-22T00:39:03.273-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">photobooth</category><category domain="http://www.blogger.com/atom/ns#">photography</category><category domain="http://www.blogger.com/atom/ns#">pi</category><category domain="http://www.blogger.com/atom/ns#">raspberry jam</category><category domain="http://www.blogger.com/atom/ns#">raspberry Pi</category><title>RPi Photobooth </title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
So as part of the &lt;b&gt;&lt;a href=&quot;http://bit.ly/GrPiJam&quot; target=&quot;_blank&quot;&gt;Raspberry Jam&lt;/a&gt;&lt;/b&gt; show &amp;amp; tell item, I&#39;ve decided to go ahead and make a photo booth. I&#39;m not the first one using the pi camera and python to create one, but never the less, it is a fun learning experience.&lt;br /&gt;
&lt;br /&gt;
&lt;a data-flickr-embed=&quot;true&quot; data-footer=&quot;true&quot; href=&quot;https://www.flickr.com/photos/varunmehta/albums/72157679713572213&quot; title=&quot;RPi Photo Booth&quot;&gt;&lt;img alt=&quot;RPi Photo Booth&quot; height=&quot;768&quot; src=&quot;https://c1.staticflickr.com/3/2840/33805724060_6e2bfbaa1a_b.jpg&quot; width=&quot;1024&quot; /&gt;&lt;/a&gt;&lt;script async=&quot;&quot; charset=&quot;utf-8&quot; src=&quot;//embedr.flickr.com/assets/client-code.js&quot;&gt;&lt;/script&gt;
&lt;br /&gt;
&lt;br /&gt;
The process is documented using pictures.&lt;br /&gt;
&lt;br /&gt;
The code is also available on github.com at &lt;a href=&quot;https://github.com/varunmehta/photobooth&quot;&gt;https://github.com/varunmehta/photobooth&lt;/a&gt; &lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Components in use;&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Raspberry Pi 3&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Pi Camera v1 &lt;/li&gt;
&lt;li&gt;Pi Touch Display&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Big Red Button&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2017/04/rpi-photobooth.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total><georss:featurename>Glen Rock, NJ 07452, USA</georss:featurename><georss:point>40.9628758 -74.1329207</georss:point><georss:box>40.9388938 -74.1732612 40.986857799999996 -74.0925802</georss:box></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-3400712351676992548</guid><pubDate>Sat, 01 Apr 2017 01:32:00 +0000</pubDate><atom:updated>2017-03-31T21:32:34.320-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">pi</category><category domain="http://www.blogger.com/atom/ns#">raspberry</category><category domain="http://www.blogger.com/atom/ns#">raspberry jam</category><category domain="http://www.blogger.com/atom/ns#">raspberry Pi</category><category domain="http://www.blogger.com/atom/ns#">technical</category><title>Raspberry Jam - Come Join </title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
After an awesome weekend for Maker&#39;s Day at the Glen Rock Library. A lot of people wanted to join a Raspberry Pi club. &lt;br /&gt;
&lt;br /&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;360&quot; mozallowfullscreen=&quot;&quot; src=&quot;https://player.vimeo.com/video/210083484&quot; webkitallowfullscreen=&quot;&quot; width=&quot;640&quot;&gt;&lt;/iframe&gt;

&lt;a href=&quot;https://vimeo.com/210083484&quot;&gt;Makers Day at the Library 2017&lt;/a&gt; from &lt;a href=&quot;https://vimeo.com/burkevideoprod&quot;&gt;Glen Rock TV&lt;/a&gt; on &lt;a href=&quot;https://vimeo.com/&quot;&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Those interested to join the Raspberry Jam - Fill this form out! &lt;br /&gt;
&lt;a href=&quot;https://goo.gl/forms/tJOXJK7h6LFRFWYf2&quot; target=&quot;_blank&quot;&gt;https://goo.gl/forms/tJOXJK7h6LFRFWYf2 &lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
For those want to know what a Raspberry Pi is;&lt;br /&gt;
&lt;br /&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;360&quot; mozallowfullscreen=&quot;&quot; src=&quot;https://player.vimeo.com/video/90103691&quot; webkitallowfullscreen=&quot;&quot; width=&quot;640&quot;&gt;&lt;/iframe&gt;

&lt;a href=&quot;https://vimeo.com/90103691&quot;&gt;What is a Raspberry Pi?&lt;/a&gt; from &lt;a href=&quot;https://vimeo.com/raspberrypi&quot;&gt;Raspberry Pi Foundation&lt;/a&gt; on &lt;a href=&quot;https://vimeo.com/&quot;&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2017/03/raspberry-jam-come-join.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total><georss:featurename>Glen Rock, NJ 07452, USA</georss:featurename><georss:point>40.9628758 -74.1329207</georss:point><georss:box>40.9388938 -74.1732612 40.986857799999996 -74.0925802</georss:box></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-4346036508782895581</guid><pubDate>Mon, 27 Jun 2016 13:58:00 +0000</pubDate><atom:updated>2016-06-27T13:16:49.324-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">half-marathon</category><category domain="http://www.blogger.com/atom/ns#">plans</category><category domain="http://www.blogger.com/atom/ns#">running</category><category domain="http://www.blogger.com/atom/ns#">running plans</category><title>Running Plans</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;style css=&quot;&quot; text=&quot;&quot; type=&quot;&quot;&gt;
tr:nth-child(even) {
    background-color: #EEEEEE;
}
&lt;/style&gt;

&lt;br /&gt;
&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
I&#39;ve split the plans for 2 types of runners. Pick the one which suits your profile the best. There are markers on paces to run at, refer the Jack Daniel&#39;s Pace calculator to insert paces as suitable for your plan, and target times. Do not increase your mileage more than 10% a week. The plans are based off Hal Higdon&#39;s Half Marathon Plans&lt;br /&gt;
&lt;br /&gt;
If you are currently doing C25K, please continue with that, and then pick the First Half Marathon plan, when due. Check the number of weeks required to train and the ones you have.&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;First Half Marathon&lt;/li&gt;
&lt;li&gt;Target Time Half Marathon&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
How to use the Calculator&lt;/h2&gt;
Go to the &lt;a href=&quot;http://protonfever.blogspot.com/2016/06/race-pace-predictor.html&quot; target=&quot;_blank&quot;&gt;Race Pace Predictor&lt;/a&gt;, and find your estimated race time, then take that time, and enter it in the calculator below, and follow the plan. If you have a target time in mind, then just go ahead and put that info in &lt;b&gt;(STRONGLY DISCOURAGED FOR FIRST HALF MARATHON RUNNERS)&lt;/b&gt;.
&lt;br /&gt;
&lt;br /&gt;
&lt;iframe frameborder=&quot;0&quot; height=&quot;600&quot; src=&quot;http://runsmartproject.com/calculator/embed/index.php?title=false&quot; width=&quot;600&quot;&gt;&lt;/iframe&gt;

&lt;br /&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
First Half Marathon&lt;/h2&gt;
&lt;div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Tuesday - Easy&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Wednesday - Easy&lt;/li&gt;
&lt;li&gt;Thursday - Marathon&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Sunday - Easy&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;3&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
   &lt;th&gt;Week&lt;/th&gt;
   &lt;th&gt;Mon&lt;/th&gt;
   &lt;th&gt;Tue&lt;/th&gt;
   &lt;th&gt;Wed&lt;/th&gt;
   &lt;th&gt;Thu&lt;/th&gt;
   &lt;th&gt;Fri&lt;/th&gt;
   &lt;th&gt;Sat&lt;/th&gt;
   &lt;th&gt;Sun&lt;/th&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;1&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;2 m run or cross&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;30 min cross&lt;/td&gt;
   &lt;td&gt;4 m run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;2&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;2 m run or cross&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;30 min cross&lt;/td&gt;
   &lt;td&gt;4 m run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;3&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;3.5 m run&lt;/td&gt;
   &lt;td&gt;2 m run or cross&lt;/td&gt;
   &lt;td&gt;3.5 m run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;40 min cross&lt;/td&gt;
   &lt;td&gt;5 m run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;4&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;3.5 m run&lt;/td&gt;
   &lt;td&gt;2 m run or cross&lt;/td&gt;
   &lt;td&gt;3.5 m run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;40 min cross&lt;/td&gt;
   &lt;td&gt;5 m run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;5&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;4 m run&lt;/td&gt;
   &lt;td&gt;2 m run or cross&lt;/td&gt;
   &lt;td&gt;4 m run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;40 min cross&lt;/td&gt;
   &lt;td&gt;6 m run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;6&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;4 m run&lt;/td&gt;
   &lt;td&gt;2 m run or cross&lt;/td&gt;
   &lt;td&gt;4 m run&lt;/td&gt;
   &lt;td&gt;Rest or easy run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;&lt;strong&gt;5-K&amp;nbsp;Race&lt;/strong&gt;&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;7&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;4.5 m run&lt;/td&gt;
   &lt;td&gt;3 m run or cross&lt;/td&gt;
   &lt;td&gt;4.5 m run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;50 min cross&lt;/td&gt;
   &lt;td&gt;7 m run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;8&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;4.5 m run&lt;/td&gt;
   &lt;td&gt;3 m run or cross&lt;/td&gt;
   &lt;td&gt;4.5 m run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;50 min cross&lt;/td&gt;
   &lt;td&gt;8 m run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;9&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;5 m run&lt;/td&gt;
   &lt;td&gt;3 m run or cross&lt;/td&gt;
   &lt;td&gt;5 m run&lt;/td&gt;
   &lt;td&gt;Rest or easy run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;&lt;strong&gt;10-K&amp;nbsp;Race&lt;/strong&gt;&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;10&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;5 m run&lt;/td&gt;
   &lt;td&gt;3 m run or cross&lt;/td&gt;
   &lt;td&gt;5 m run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;60 min cross&lt;/td&gt;
   &lt;td&gt;9 m run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;11&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;5 m run&lt;/td&gt;
   &lt;td&gt;3 m run or cross&lt;/td&gt;
   &lt;td&gt;5 m run&amp;nbsp;&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;60 min cross&lt;/td&gt;
   &lt;td&gt;10 m run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;12&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;4 m run&lt;/td&gt;
   &lt;td&gt;3 m run or cross&lt;/td&gt;
   &lt;td&gt;2 m run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;&lt;strong&gt;Half Marathon&lt;/strong&gt;&lt;/td&gt;
  &lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;br /&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
Target Time Half Marathon&lt;/h2&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Monday - Easy&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Tuesday - Interval/Repetition&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Wednesday - Easy&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Thursday - Threshold&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Friday - REST MEANS REST&lt;/li&gt;
&lt;li&gt;Saturday - Marathon&lt;/li&gt;
&lt;li&gt;Sunday - Long Runs&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;3&quot;&gt;
 &lt;tbody&gt;
&lt;tr&gt;
   &lt;th&gt;Week&lt;/th&gt;
   &lt;th&gt;Mon&lt;/th&gt;
   &lt;th&gt;Tue&lt;/th&gt;
   &lt;th&gt;Wed&lt;/th&gt;
   &lt;th&gt;Thu&lt;/th&gt;
   &lt;th&gt;Fri&lt;/th&gt;
   &lt;th&gt;Sat&lt;/th&gt;
   &lt;th&gt;Sun&lt;/th&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;1&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;6 x hill&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;40 min tempo&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;90 min run (3/1)&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;2&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;7 x 400 5-K&amp;nbsp;pace&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;45 min tempo&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;3 m pace&lt;/td&gt;
   &lt;td&gt;90 min run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;3&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;7 x hill&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;30 min tempo&lt;/td&gt;
   &lt;td&gt;Rest or easy run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;&lt;strong&gt;5-K&amp;nbsp;Race&lt;/strong&gt;&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;4&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;8 x 400 5-K&amp;nbsp;pace&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;40 min tempo&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;90 min run (3/1)&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;5&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;8 x hill&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;45 min tempo&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;3 m pace&lt;/td&gt;
   &lt;td&gt;90 min run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;6&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;8 x 400 5-K&amp;nbsp;pace&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;30 min tempo&lt;/td&gt;
   &lt;td&gt;Rest or easy run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;&lt;strong&gt;10-K&amp;nbsp;Race&lt;/strong&gt;&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;7&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;4 x 800 10-K&amp;nbsp;pace&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;45 min tempo&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;4 m pace&lt;/td&gt;
   &lt;td&gt;1:45 run (3/1)&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;8&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;3 x 1600 race pace&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;50 min tempo&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;5 m pace&lt;/td&gt;
   &lt;td&gt;1:45 run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;9&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;5 x 800 10-K&amp;nbsp;pace&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;30 min tempo&lt;/td&gt;
   &lt;td&gt;Rest or easy run&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;&lt;strong&gt;15-K&amp;nbsp;Race&lt;/strong&gt;&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;10&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;4 x 1600 race pace&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;55 min tempo&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;5 m pace&lt;/td&gt;
   &lt;td&gt;2:00 run (3/1)&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr&gt;
   &lt;td&gt;11&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;6 x 800 10-K pace&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;60 min tempo&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;3 m pace&lt;/td&gt;
   &lt;td&gt;2:00 run&lt;/td&gt;
  &lt;/tr&gt;
&lt;tr class=&quot;alt&quot;&gt;
   &lt;td&gt;12&lt;/td&gt;
   &lt;td&gt;3 m run&lt;/td&gt;
   &lt;td&gt;6 x 400 5-K&amp;nbsp;pace&lt;/td&gt;
   &lt;td&gt;2 m run&lt;/td&gt;
   &lt;td&gt;30 min tempo&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;Rest&lt;/td&gt;
   &lt;td&gt;&lt;strong&gt;Half Marathon&lt;/strong&gt;&lt;/td&gt;
  &lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2016/06/running-plans.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-6948869371623406329</guid><pubDate>Thu, 23 Jun 2016 19:09:00 +0000</pubDate><atom:updated>2016-06-27T09:32:23.974-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">calcuator</category><category domain="http://www.blogger.com/atom/ns#">race pace predictor</category><category domain="http://www.blogger.com/atom/ns#">running</category><title>Race Time &amp; Pace Predictor </title><description>&lt;script type=&quot;text/javascript&quot; language=&quot;javascript&quot;&gt;
function predictRacePace() {
    var d1 = document.getElementById(&#39;d1&#39;).value;
    var t1 = document.getElementById(&#39;t1&#39;).value;
    var d2 = document.getElementById(&#39;d2&#39;).value;

    t1 = convertHMS2S(t1);

    var t2 = predictPace(d1, t1, d2);

    t2P = time2Pace(t2, d2);

    t2 = convertStoHMS(t2);
    document.getElementById(&#39;t2&#39;).value = t2;
    document.getElementById(&#39;t2P&#39;).value = t2P;
}

function time2Pace(t2, d2) {
    pace = t2 / d2;
    return convertStoHMS(pace);
}


/*
  Pure math function for calculation

  T1 is the time achieved for D1 in seconds
  T2 is the time predicted for D2 in seconds
  D1 is the distance over which the initial time is achieved. (any unit)
  D2 is the distance for which the time is to be predicted. (same as D1 units)
*/
function predictPace(d1, t1, d2) {
    var d = Math.pow((d2 / d1), 1.06);
    return t1 * d;
}

/*
  This function handels &quot;HH:MM:SS&quot; as well as &quot;MM:SS&quot; or &quot;SS&quot;, and converts it to seconds.
*/
function convertHMS2S(hms) {
    var p = hms.split(&#39;:&#39;),
        s = 0,
        m = 1;

    while (p.length &gt; 0) {
        s += m * parseInt(p.pop(), 10);
        m *= 60;
    }

    return s;
}

/**
  This method will convert a given amount of seconds to HH:mm:ss format
*/
function convertStoHMS(s) {
    var secs = s % 60;
    s = (s - secs) / 60;
    secs = Math.floor(secs);
    var mins = s % 60;
    var hrs = (s - mins) / 60;

    return (hrs &gt; 0 ? hrs + &#39;:&#39; : &#39;&#39;) + (mins &lt; 10 ? (&#39;0&#39; + mins) : mins) + &#39;:&#39; + (secs &lt; 10 ? (&#39;0&#39; + secs) : secs);
}

&lt;/script&gt;

&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;

This race time predictor is based off Peter Reigel&#39;s formula for race pace prediction.&lt;br /&gt;
&lt;a href=&quot;https://en.wikipedia.org/wiki/Peter_Riegel#Race_time_prediction&quot;&gt;https://en.wikipedia.org/wiki/Peter_Riegel#Race_time_prediction&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
T2 = T1 × (D2÷D1) ^ 1.06&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;T1 is the time achieved for D1&lt;/li&gt;
&lt;li&gt;T2 is the time predicted for D2&lt;/li&gt;
&lt;li&gt;D1 is the distance over which the initial time is achieved.&lt;/li&gt;
&lt;li&gt;D2 is the distance for which the time is to be predicted.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;b&gt;Example&lt;/b&gt;&lt;br /&gt;
T1 = 9:28 minutes&lt;br /&gt;
D1 = 1 miles&lt;br /&gt;
D2 = 13.1 miles&lt;br /&gt;
&lt;div&gt;
T2 ~= 2:24:00 (HH:mm:ss)&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;Calculator&lt;/h2&gt;
I just whipped a quick one up in javascript, there are bunch of them available on the internet, but wanted to write one for my blog :)&lt;br /&gt;
&lt;br /&gt;

&lt;table&gt;
&lt;tr&gt;&lt;td&gt;Distance Run:&lt;/td&gt;&lt;td&gt; &lt;input id=&quot;d1&quot; type=&quot;text&quot; /&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Time Taken to Run above distance (HH:mm:ss):&lt;/td&gt;&lt;td&gt;  &lt;input id=&quot;t1&quot; type=&quot;text&quot; /&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Next Planned Race distance:&lt;/td&gt;&lt;td&gt; &lt;input id=&quot;d2&quot; type=&quot;text&quot; /&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;input onclick=&quot;predictRacePace()&quot; type=&quot;button&quot; value=&quot;Calculate Pace&quot; /&gt; &lt;/td&gt;&lt;/tr&gt;

&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;
&lt;h2&gt;Results&lt;/h2&gt;
&lt;/tr&gt;&lt;/td&gt;

&lt;tr&gt;&lt;td&gt;Predicted time to finish race:&lt;/td&gt;&lt;td&gt; &lt;input id=&quot;t2&quot; type=&quot;text&quot; /&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Predicted pace to finish race:&lt;/td&gt;&lt;td&gt; &lt;input id=&quot;t2P&quot; type=&quot;text&quot; /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;h1&gt;&lt;/h1&gt;
Jack Daniel&#39;s Calculator.
&lt;iframe src=&quot;http://runsmartproject.com/calculator/embed/index.php?title=false&quot; width=&quot;600&quot; height=&quot;1000&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2016/06/race-pace-predictor.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total><georss:featurename>Glen Rock, NJ 07452, USA</georss:featurename><georss:point>40.9628758 -74.1329207</georss:point><georss:box>40.9388938 -74.1732612 40.986857799999996 -74.0925802</georss:box></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-4666096403166357335</guid><pubDate>Thu, 16 Jun 2016 13:40:00 +0000</pubDate><atom:updated>2016-06-16T17:36:54.852-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">architecture</category><category domain="http://www.blogger.com/atom/ns#">Qcon</category><category domain="http://www.blogger.com/atom/ns#">technical</category><title>QCon 2016 - My Best Of</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
This was my second year attending &lt;a href=&quot;https://qconnewyork.com/ny2016/schedule/tabular&quot; target=&quot;_blank&quot;&gt;QCon New York&lt;/a&gt;. It is an interesting conference, where market leaders &amp;amp; innovators come and present their ideas, implementations, challenges and what worked for them. There is always a stream of knowledge and wisdom to be gained at this conference.&lt;br /&gt;
&lt;br /&gt;
A could do a quick run down of the sessions I was able to attend, and what I liked, disliked, but rather I&#39;m just going to point out some of the jewels by my experience. Talks which I attended and absolutely loved. When the presentations are made available, I would recommend a must watch!&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
&lt;a href=&quot;https://qconnewyork.com/ny2016/keynote/engineering-red-planet&quot; target=&quot;_blank&quot;&gt;Engineering the Red Planet&lt;/a&gt;&lt;/h3&gt;
&lt;a href=&quot;https://twitter.com/Doctor_Astro&quot; target=&quot;_blank&quot;&gt;Dr. Anita Sengupta&lt;/a&gt; gave an amazing presentation on the &quot;Curiosity Rover&quot; landing on Mars and the &lt;a href=&quot;https://www.youtube.com/watch?v=Ki_Af_o9Q9s&quot; target=&quot;_blank&quot;&gt;7 minutes of terror&lt;/a&gt;. The excitement in the room was way beyond any sci-fi finale. There were interesting questions on testing, and other details around the project. Makes you think, you are doing microservices, and others are planning missions to mars! Some links around the same topic.&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=Qa2sc6-u59I&quot; target=&quot;_blank&quot;&gt;Smarter Every Day, The Drill We Sent To Mars&amp;nbsp;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://lars-lab.jpl.nasa.gov/JPL_Coding_Standard_C.pdf&quot; target=&quot;_blank&quot;&gt;JPL C coding standards&lt;/a&gt;. You can google tons of documents related to this on reddit.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
&lt;b&gt;&lt;a href=&quot;https://qconnewyork.com/ny2016/presentation/membership-dissemination-and-population-protocols&quot; target=&quot;_blank&quot;&gt;Membership, Dissemination and Population Protocols&lt;/a&gt;&lt;/b&gt;&lt;/h3&gt;
I went in totally unprepared on what to expect for this talk.&amp;nbsp;&lt;a href=&quot;https://twitter.com/seancribbs&quot; target=&quot;_blank&quot;&gt;Sean Cribbs&lt;/a&gt;&amp;nbsp;was presenting it &amp;amp;&amp;nbsp;explained different cluster related&amp;nbsp;protocols. Off late after suffering a few cluster related outages, it was an interesting insight into the protocols. The major takeaways were the papers he linked in the talk, here is the tweet related to it.&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class=&quot;twitter-tweet&quot; data-conversation=&quot;none&quot; data-lang=&quot;en&quot;&gt;
&lt;div dir=&quot;ltr&quot; lang=&quot;en&quot;&gt;
My &lt;a href=&quot;https://twitter.com/qconnewyork&quot;&gt;@qconnewyork&lt;/a&gt; slides on Membership, Dissemination and Population Protocols: &lt;a href=&quot;https://t.co/TVuDVafMNK&quot;&gt;https://t.co/TVuDVafMNK&lt;/a&gt;&lt;/div&gt;
— Sean Cribbs (@seancribbs) &lt;a href=&quot;https://twitter.com/seancribbs/status/742798975749722112&quot;&gt;June 14, 2016&lt;/a&gt;&lt;/blockquote&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
&lt;a href=&quot;https://qconnewyork.com/ny2016/presentation/javascript-while-crafting-make-textile-compute&quot; target=&quot;_blank&quot;&gt;Crafting with JavaScript: Computing with Textiles&lt;/a&gt;&lt;/h3&gt;
&lt;a href=&quot;https://twitter.com/kosamari&quot; target=&quot;_blank&quot;&gt;Mariko Kosaka&lt;/a&gt; did an awesome presentation on running &lt;a href=&quot;http://johnny-five.io/&quot; target=&quot;_blank&quot;&gt;Johnny Five&lt;/a&gt; on an Arduino. The exciting part was not running Johnny Five, but the whole presentation of her learning process of converting an 8 bit image to 2 bit image. She was knitting using a 1980&#39;s knitting machine. The machine&#39;s PLC was replaced with Arduino. This is a true talk about the journey rather than the destination. The most unexpected and most favourite talk of all the QCons attended so far.&lt;br /&gt;
&lt;br /&gt;
Go check her &lt;a href=&quot;https://github.com/kosamari&quot; target=&quot;_blank&quot;&gt;github&lt;/a&gt; for all her projects&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
&lt;a href=&quot;https://qconnewyork.com/ny2016/presentation/javascript-space-there-back-again&quot; target=&quot;_blank&quot;&gt;JavaScript in Space (Or, There and Back Again)&lt;/a&gt;&lt;/h3&gt;
Since I&#39;ve seen &lt;a href=&quot;https://www.youtube.com/watch?v=XoMN-zg7r3M&quot; target=&quot;_blank&quot;&gt;Thomas goes to Space&lt;/a&gt;, I always wanted to try this out with my kids, but was never able to solve the problem of retrieving the device back. &lt;a href=&quot;https://twitter.com/dharden&quot; target=&quot;_blank&quot;&gt;Dan&#39;s&lt;/a&gt; talk was close to heart, cos he used a Raspberry Pi and also found a solution which can help retrieve the device back,&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.trackuino.org/&quot; target=&quot;_blank&quot;&gt;Trackuino&lt;/a&gt; is a GPRS device which uses radio signals can help find the location of the package after the balloon has busted and parachute is launched. Check his code at &lt;a href=&quot;https://github.com/dharden&quot; target=&quot;_blank&quot;&gt;github&lt;/a&gt;. Dan gives true hope, that even if you cannot &lt;a href=&quot;http://store.buzzaldrin.com/&quot; target=&quot;_blank&quot;&gt;Get Your Ass to Mars&lt;/a&gt;, you can still get to &quot;near space&quot;&lt;br /&gt;
&lt;br /&gt;
Check the videos out when they are released. I have early access to them, but they will soon be made available to you peasants too.&lt;br /&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;/h2&gt;
&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2016/06/qcon-2016-review.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-4282952326839711541</guid><pubDate>Wed, 15 Jun 2016 00:07:00 +0000</pubDate><atom:updated>2016-06-15T20:08:41.815-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">half-marathon</category><category domain="http://www.blogger.com/atom/ns#">plans</category><category domain="http://www.blogger.com/atom/ns#">running</category><category domain="http://www.blogger.com/atom/ns#">running plans</category><title>Half Marathons For The Rest Of 2016. </title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
All the half marathons [HM] listed below are fairly flat and on an easy terrain. An average HM plan recommends a 12-16 week plan depending upon your fitness level &amp;amp; goals. You can try to get away with zero running and still complete one with a 12 week plan. If you are looking for a target race time, be ready for more commitment.&lt;br /&gt;
&lt;br /&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
 Races&lt;/h2&gt;
&lt;br /&gt;
Half Marathons identified for 2016; &lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.newporthalfmarathon.com/&quot;&gt;&lt;b&gt;Newport Liberty Half Marathon&lt;/b&gt;&lt;/a&gt; - Sunday, 18th September 2016&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Training starts, Sunday, 26th June 2016&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.wyckoffymca.org/programs-services/triathlon-youth-biathlon/franklin-lakes-senic-half-marathon/&quot;&gt;&lt;b&gt;Franklin Lakes Scenic Half Marathon&lt;/b&gt;&lt;/a&gt; - Sunday, 25th September 2016&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Training starts, Sunday, 3rd July 2016&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;a href=&quot;https://princetonhalfmarathon.com/&quot;&gt;&lt;b&gt;Princeton Half Marathon&lt;/b&gt;&lt;/a&gt; - Sunday, 6th November 2016&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Training starts, Sunday, 14th August 2016&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.richmondmarathon.com/&quot;&gt;&lt;b&gt;Anthem Richmond Marathon&lt;/b&gt;&lt;/a&gt; - Saturday, 12th November 2016&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;HM Training starts, Saturday, 20th August 2016&amp;nbsp;&lt;/li&gt;
&lt;li&gt;FM Training starts, Saturday, 9th July 2016&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.bigsurhalfmarathon.org/Event_Information/Half_Marathon.htm&quot;&gt;&lt;b&gt;Big Sur Half Marathon&lt;/b&gt;&lt;/a&gt; - Sunday, 13th November 2016&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Training starts, Sunday, 21st August 2016&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.philadelphiamarathon.com/&quot;&gt;&lt;b&gt;Philly Half Marathon&lt;/b&gt;&lt;/a&gt; - Saturday, 19th November 2016&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;HM Training starts, Saturday, 27th August 2016&amp;nbsp;&lt;/li&gt;
&lt;li&gt;FM Training starts, Sunday, July 16th 2016&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&amp;nbsp;Few Words of Wisdom&lt;/h2&gt;
Some words of wisdom, I&#39;ve learnt along the way of injuries, DNF (Did not Finish) &amp;amp; races&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Motivation only works for the first week or two, beyond that you need discipline.&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.amazon.com/Power-Habit-What-Life-Business/dp/081298160X&quot;&gt;Power of Habit&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Set a fixed time and day of the week for a run, and try to run at the same time during the week. I would recommend morning, so you have no unexpected changes during the day which can deviate you from your plan.&amp;nbsp;&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.amazon.com/Eat-That-Frog-Great-Procrastinating/dp/1576754227&quot;&gt;Eat That Frog&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Being a weekend warrior is only going to increase your chance of an injury, and push you behind in your schedule.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;If your run asks for an hour of commitment, but you have only 1/2, do the half! Anything greater than 0 is good. A small run if better than no run.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;If you miss a day, it is okay, skip it and move on.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;If you miss a week, it is kind of okay, lose some fitness and move on.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;If you miss more than 2 weeks, you need to reevaluate your commitments.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Don&#39;t worry if your weight increases a first few weeks of training, it is normal.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;BUT you cannot just hog more food, just cos you are running. Don&#39;t add more than 200-300 calories to your diet on days you run. Junk food/Alcohol will not magically evaporate with running.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;You cannot wring out on race day.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;You can fool a 5K, not a 20K.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
Pace&lt;/h2&gt;
Running &quot;speed&quot; is measured in terms of pace, minutes per mile (min/mile)&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-weight: normal;&quot;&gt;
What is pace ? &lt;/span&gt;&lt;/h3&gt;
&lt;br /&gt;
&lt;a href=&quot;https://en.wikipedia.org/wiki/Pace_(speed)#Running&quot;&gt;Pace for running&lt;/a&gt; is the time (or average time) taken to complete a mile/kilometer. So if you take 10 minutes to complete a mile you are running at a pace of 10:00 min/mile. Pace is easier to comprehend as compared to speed (my personal opinion) when running. &lt;a href=&quot;http://www.coolrunning.com/engine/4/4_1/96.shtml&quot;&gt;Cool Running&lt;/a&gt; is the oldest site which helps with pace calculators.&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;
If you do not know your pace yet (new runner) then try to run at least a 5K to get an idea what your average pace is. A mile is too short, as you might push yourself into a sprint. Sprinting is when you run at your full potential, the speed you run at when a dog chases you. &lt;br /&gt;
&lt;br /&gt;
For distance running your pace should be fast enough to call it a run, but also easy enough to hold a conversation with someone. If you cannot talk while running, feel out of breath, you are running too fast! Slow down! You pace has to be kind of consistent (5-10% variation is okay) throughout the whole run. &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2016/06/running-plans-for-2016.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total><georss:featurename>Glen Rock, NJ 07452, USA</georss:featurename><georss:point>40.9628758 -74.1329207</georss:point><georss:box>40.9388938 -74.1732612 40.986857799999996 -74.0925802</georss:box></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-6498024836573553310</guid><pubDate>Thu, 10 Mar 2016 22:17:00 +0000</pubDate><atom:updated>2016-06-16T17:40:58.563-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">gist</category><category domain="http://www.blogger.com/atom/ns#">photography</category><category domain="http://www.blogger.com/atom/ns#">raspberry Pi</category><category domain="http://www.blogger.com/atom/ns#">technical</category><title>Install motion eye on Raspberry Pi for surveillance. </title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Decided to go on a month long vacation leaving the home all by itself. This was the perfect opportunity to put a home surveillance system in place. There was nothing I could do remotely if anything happened, but would not want to let go the jackasses who broke in!&lt;br /&gt;
&lt;h3&gt;
Hardware in use&lt;/h3&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;Raspberry Pi 2 (will work with 3 too!)&lt;/li&gt;
&lt;li&gt;Logitech 720p old web cam&lt;/li&gt;
&lt;li&gt;Sony PS3 Eye 480p web cam&lt;/li&gt;
&lt;li&gt;64GB SD card for OS and data capture.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8AdJ5qg0epvVS3zUSknCBsivwA8i36D1vbSYBSRWwNSMTdxy_kN4BHu3ZXSHn0cuyMC89K4m-AE8cO6DtJqnjN3_Qi-v6dpu9h-8Tx42T2VtYTLCR7ZvBl1Zd4X9R6mf2leD2N9u_N08/s1600/IMG_7418.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8AdJ5qg0epvVS3zUSknCBsivwA8i36D1vbSYBSRWwNSMTdxy_kN4BHu3ZXSHn0cuyMC89K4m-AE8cO6DtJqnjN3_Qi-v6dpu9h-8Tx42T2VtYTLCR7ZvBl1Zd4X9R6mf2leD2N9u_N08/s400/IMG_7418.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
I tore the &quot;Easy carry Ziplock&quot; box on the sides for the cables to pass thru. It was placed near the window, and I did not want to leave the pi running naked, since I did not have a proper enclosure, put it in this box. Placed two cameras around the room, one on the lamp, which would monitor 4 entry/exit points in the house, and the other one near the porch to monitor if anyone was approaching the front door.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiMsrIWvmQraN539pwgcB4UoDRXgrY98KI_ztDqH0uxsMCvXqJaewLcgJsOiAeRUfD8hYwYlC-_8zjlusrCx-PfLcBeBRtYgMRNSV1-eQ937PsvivG47bY7rYvBoM0Be1fbG19LlKdVJQ/s1600/IMG_7417.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiMsrIWvmQraN539pwgcB4UoDRXgrY98KI_ztDqH0uxsMCvXqJaewLcgJsOiAeRUfD8hYwYlC-_8zjlusrCx-PfLcBeBRtYgMRNSV1-eQ937PsvivG47bY7rYvBoM0Be1fbG19LlKdVJQ/s320/IMG_7417.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWaWUPcvssPF6AX0LOM5v2smG1WHpyNQYdpiNv56LIM1hgw-fEzDPsbLTHzbyD21mrgRdAscbKhlaGh2325R-vYPilxT_o2hrt3P-JyA-vnTi0F-e-niiDEoN5xxd0qx9ffor8RLCe6wg/s1600/IMG_7419.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWaWUPcvssPF6AX0LOM5v2smG1WHpyNQYdpiNv56LIM1hgw-fEzDPsbLTHzbyD21mrgRdAscbKhlaGh2325R-vYPilxT_o2hrt3P-JyA-vnTi0F-e-niiDEoN5xxd0qx9ffor8RLCe6wg/s320/IMG_7419.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Steps to install MotionEye&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;script src=&quot;https://gist.github.com/varunmehta/8b74afc5d5a2ec9779d7.js&quot;&gt;&lt;/script&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2016/03/install-motion-eye-on-raspberry-pi-for.html</link><author>noreply@blogger.com (Varun Mehta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8AdJ5qg0epvVS3zUSknCBsivwA8i36D1vbSYBSRWwNSMTdxy_kN4BHu3ZXSHn0cuyMC89K4m-AE8cO6DtJqnjN3_Qi-v6dpu9h-8Tx42T2VtYTLCR7ZvBl1Zd4X9R6mf2leD2N9u_N08/s72-c/IMG_7418.jpg" height="72" width="72"/><thr:total>0</thr:total><georss:featurename>New York, NY, USA</georss:featurename><georss:point>40.7127837 -74.005941300000018</georss:point><georss:box>40.3275957 -74.651388300000022 41.0979717 -73.360494300000013</georss:box></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-2873887238229309682</guid><pubDate>Wed, 24 Feb 2016 14:48:00 +0000</pubDate><atom:updated>2017-07-12T09:45:04.874-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">architecture</category><category domain="http://www.blogger.com/atom/ns#">code</category><category domain="http://www.blogger.com/atom/ns#">technical</category><title>Why Should Software Architects Write Code?</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Interesting article to read, rather than try to summarize or hijack the article, please read it in original.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://blog.ieeesoftware.org/2016/02/why-should-software-architects-write.html&quot; target=&quot;_blank&quot;&gt;http://blog.ieeesoftware.org/2016/02/why-should-software-architects-write.html&amp;nbsp;&lt;/a&gt;&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2016/02/why-should-software-architects-write.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-4985447301542095851</guid><pubDate>Thu, 28 Jan 2016 21:13:00 +0000</pubDate><atom:updated>2016-01-28T16:14:41.314-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">elasticsearch</category><category domain="http://www.blogger.com/atom/ns#">gist</category><category domain="http://www.blogger.com/atom/ns#">reindex</category><category domain="http://www.blogger.com/atom/ns#">technical</category><title>Script to re-index elasticsearch.</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
We started off with the default 5 shards of Elasticsearch and then suddenly realized, it was way beyond what we warranted for. After a conversation with the ES support team (which by the way is awesome! I definitely recommend them), we decided to downsize our shard level to 1.&lt;br /&gt;
&lt;br /&gt;
I&#39;ve used &lt;a href=&quot;https://www.npmjs.com/package/elasticdump&quot; target=&quot;_blank&quot;&gt;elasticdump&lt;/a&gt; to carry out the task. It is fairly quick and versatile tool.&lt;br /&gt;
&lt;br /&gt;
The script assumes you have modified elasticsearch.yml to have the desired shard/index size, and have restarted the cluster for the property to take effect. The script is just a general reindexing script, it backups up the data, deletes the indices backed up and then restores from the backup.&lt;br /&gt;
&lt;br /&gt;
Check the &lt;a href=&quot;https://gist.github.com/varunmehta/d0553071dad4171e4dd7&quot; target=&quot;_blank&quot;&gt;script&lt;/a&gt; for more info.&lt;br /&gt;
&lt;br /&gt;
&lt;script src=&quot;https://gist.github.com/varunmehta/d0553071dad4171e4dd7.js&quot;&gt;&lt;/script&gt;
&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2016/01/script-to-re-index-elasticsearch.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total><georss:featurename>New York, NY, USA</georss:featurename><georss:point>40.7127837 -74.005941300000018</georss:point><georss:box>40.3275957 -74.651388300000022 41.0979717 -73.360494300000013</georss:box></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-7600264560450313352</guid><pubDate>Mon, 07 Dec 2015 12:00:00 +0000</pubDate><atom:updated>2016-01-28T17:10:25.636-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">half-marathon</category><category domain="http://www.blogger.com/atom/ns#">running</category><title>Training my second batch of half marathoners.</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
After running the &lt;a href=&quot;http://www.newporthalfmarathon.com/&quot; target=&quot;_blank&quot;&gt;Newport Liberty Half Marathon&lt;/a&gt; for the 5th time and achieving my PR 2:10:07 (was targeting sub 2 hour) and helping setup a plan with my running troupe, I&#39;ve decided to help a bigger bunch this year. Started a Whatsapp group with a few friends who I know are interested to run.&lt;br /&gt;
&lt;br /&gt;
The target race is &lt;a href=&quot;http://www.thenewjerseymarathon.com/&quot; target=&quot;_blank&quot;&gt;NJ Marathon&lt;/a&gt;, and the race plan is &lt;a href=&quot;http://www.halhigdon.com/training/51312/Half-Marathon-Novice-2-Training-Program&quot; target=&quot;_blank&quot;&gt;Hal Higdon Novice 2&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Here is the link to the calendar; webcal://p01-calendars.icloud.com/published/2/fu-t5G7dbn4SZSMVR37o2GbYQgDQ7b6wJBdqP3tIorzT4OMKqF1DiJf9on6oETcBaNbPY9QaUQl0j82-i0ZEP-5x-LVQ5EEGoA3qDuSzkfo&lt;br /&gt;
&lt;br /&gt;
Feel free to download, import the ics and join the schedule!&lt;br /&gt;
&lt;br /&gt;
The only benefit of the Whatsapp group is I spew some running experience based general knowledge and ideas to help the group train better.&lt;br /&gt;
&lt;br /&gt;
See you guys at the shore 2016!&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2015/12/training-my-second-batch-of-half.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total><georss:featurename>Glen Rock, NJ, USA</georss:featurename><georss:point>40.9628758 -74.1329207</georss:point><georss:box>40.9388938 -74.1732612 40.986857799999996 -74.0925802</georss:box></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-9216107675288752831</guid><pubDate>Mon, 29 Jun 2015 14:55:00 +0000</pubDate><atom:updated>2016-01-29T10:56:37.011-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">books</category><category domain="http://www.blogger.com/atom/ns#">running</category><title>Running Book &amp; Website Recommendations - Will keep updating as I read more.</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Running for me started off as a weightloss program, then &amp;nbsp;injury prevention due to running, touched the runners high, and now trying to lose weight to run faster :) It is a vicious cycle but healthy one.&lt;br /&gt;
&lt;br /&gt;
A few good books I recommend for people who love to run, or in general want to know about other runners.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Books&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/6289283-born-to-run&quot; target=&quot;_blank&quot;&gt;Born To Run&amp;nbsp;- Christopher McDougall&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/13202092-eat-and-run&quot; target=&quot;_blank&quot;&gt;Eat And Run - Scott Jurek, Steve Friedman&lt;/a&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/13592481-hansons-marathon-method&quot; target=&quot;_blank&quot;&gt;Hansons Marathon Method -&amp;nbsp;Luke Humphrey&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.goodreads.com/book/show/112152.Daniels_Running_Formula&quot; target=&quot;_blank&quot;&gt;Daniels&#39; Running Formula - Jack Daniel&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Websites&lt;/div&gt;
&lt;div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.runnersworld.com/&quot; target=&quot;_blank&quot;&gt;Runner&#39;s World&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://strengthrunning.com/&quot; target=&quot;_blank&quot;&gt;Strength Running&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://fellrnr.com/wiki/Main_Page&quot;&gt;http://fellrnr.com&lt;/a&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.halhigdon.com/&quot; target=&quot;_blank&quot;&gt;Hal Higdon&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.reddit.com/r/running&quot; target=&quot;_blank&quot;&gt;Reddit /r/running&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2016/01/running-book-website-recommendations.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-7591329596938527911</guid><pubDate>Tue, 20 May 2014 13:35:00 +0000</pubDate><atom:updated>2016-01-29T09:54:10.190-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">running</category><category domain="http://www.blogger.com/atom/ns#">shoes</category><title>Running Shoes</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Your shoes run an average of 350-500 miles. I replace them at 400-450. After that they are good for lawn work.&lt;br /&gt;
&lt;br /&gt;
Strava, Garmin Connect have shoe tracking. So you can track your shoe&#39;s mileage. This is very useful and important to prevent injuries. The mid-sole of the shoe, also the shock absorbing layer get damaged over the period of time, and reduces shock absorption. I had measured my shoe&#39;s thickness when brand new and after 400 miles. The thickness was reduced by 3mm due to compression.&lt;br /&gt;
&lt;br /&gt;
If you know your size and that the type (stability or neutral) of shoe, then check &lt;a href=&quot;http://www.amazon.com/&quot; target=&quot;_blank&quot;&gt;Amazon&lt;/a&gt;, &lt;a href=&quot;http://www.zappos.com/&quot; target=&quot;_blank&quot;&gt;Zappos&lt;/a&gt;, &lt;a href=&quot;http://holabirdsports.com/&quot;&gt;holabirdsports.com&lt;/a&gt;, &lt;a href=&quot;https://www.jackrabbit.com/&quot; target=&quot;_blank&quot;&gt;jackrabbit&lt;/a&gt; (NYC store, online too). Try picking up the previous year&#39;s model, as they generally run $20-50 cheaper.&lt;br /&gt;
&lt;br /&gt;
Here is a list of shoe stores, runners have collected over the years. The list was created by &lt;a href=&quot;https://www.reddit.com/r/running/wiki/faq#wiki_what_shoes_do_i_buy.3F&quot; target=&quot;_blank&quot;&gt;redditors on runnit&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;iframe height=&quot;600&quot; src=&quot;https://docs.google.com/spreadsheets/d/19IQ5psSzuBMygFe7SoU3eeu5JZHzTOZz9fTyt1OjGdw/pubhtml?widget=true&amp;amp;headers=false&quot; width=&quot;765&quot;&gt;&lt;/iframe&gt;

&lt;br /&gt;
&lt;br /&gt;
If training for a full or half, always keep 2 pairs of shoes and rotate them weekly or for alternate runs. Do all types of &amp;nbsp;runs in both the pairs, so if one is damaged or wet, you can use the other. Also one might be more comfortable than the other, just a personal preference. Brooks, Asics, Saucony are some of the brands I&#39;ve tried and love. Find a shoe which fits you best.&lt;br /&gt;
&lt;br /&gt;
If you don&#39;t know your shoe type. Go to the nearest shoe store in your town and they can help you get assessed. Most of them will price match amazon or other shoe store for the newer models.&lt;br /&gt;
&lt;br /&gt;
If you go to Road Runners, don&#39;t fall for the insoles trap! Else they are an awesome shoe store. My favorite store in the New York area is JackRabbit sports.&lt;br /&gt;
&lt;br /&gt;
Edit: Runkeeper has now introduced shoe tracking too (finally!)&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2014/05/running-shoes.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-1536519903248461230</guid><pubDate>Sat, 01 Oct 2011 00:30:00 +0000</pubDate><atom:updated>2016-01-28T16:54:30.905-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">half-marathon</category><category domain="http://www.blogger.com/atom/ns#">running</category><title>Ran my first Half Marathon! </title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
After finishing the 5K, I got ambitious and decided to scale longer distances. Inched myself from 5K to an 8K and then a 10K. It was awesome to see the progress. After a long lull of running on the treadmill, I ventured out to run on the roads. It was miserable at first as you have no clue about your pace or the distance you travelled. The body is used to running, has not internalized a pace for you.&lt;br /&gt;
&lt;br /&gt;
I download Runkeeper Free to track my runs. It is a nice little GPS enabled app with alerts about pace and time and distance.&lt;br /&gt;
&lt;br /&gt;
One fine Friday morning, I decided to go out for a run, and saw banners all over Newport, Jersey City about &lt;a href=&quot;http://www.newporthalfmarathon.com/&quot; target=&quot;_blank&quot;&gt;Newport Liberty Half Marathon&lt;/a&gt;. If I can run 6 miles, I can run 13.1.&lt;br /&gt;
&lt;br /&gt;
My first ever 6+ miles run on Friday.&lt;br /&gt;
&lt;a href=&quot;https://runkeeper.com/user/varunmehta/activity/53385911&quot;&gt;https://runkeeper.com/user/varunmehta/activity/53385911&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
That weekend on Sunday, ran my first half marathon. My finish time was&amp;nbsp;3:19:03.07, and was placed&amp;nbsp;2215/2225 of the whole set. Average pace 15:00 min/mile. I completed and loved the experience.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://runkeeper.com/user/varunmehta/activity/53738744&quot;&gt;https://runkeeper.com/user/varunmehta/activity/53738744&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii07-PH77bqOYtjEMyfuRPeMpzBiGLr85C8PQNQ0Sc987eAu0Kr8GBXgqb5F9SWkTfDrkPVZ1I_2XxqcDTvphV7-1vhAyl-dT9P85YFd3ZwE7fg3rjJxPeoCbGC8rhKULuOB7S1hQVzQg/s1600/Screen+Shot+2016-01-28+at+4.45.21+PM.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;534&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii07-PH77bqOYtjEMyfuRPeMpzBiGLr85C8PQNQ0Sc987eAu0Kr8GBXgqb5F9SWkTfDrkPVZ1I_2XxqcDTvphV7-1vhAyl-dT9P85YFd3ZwE7fg3rjJxPeoCbGC8rhKULuOB7S1hQVzQg/s640/Screen+Shot+2016-01-28+at+4.45.21+PM.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Was dehydrated, famished, chaffed, blistered, out paced, by a 69 year old runner (who finished 14 minutes after me). I was at mile 10 at the 2 hour mark, and was just walking my way to the finish line. Got some gatorade at mile 11, and finally made it!.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Sitting sore after a week. Will run tomorrow.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;b&gt;Results:&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;a href=&quot;http://www.compuscore.com/cs2011/sept/libhm.htm&quot;&gt;http://www.compuscore.com/cs2011/sept/libhm.htm&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Hopefully can do better next year!&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2011/09/ran-my-first-half-marathon.html</link><author>noreply@blogger.com (Varun Mehta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii07-PH77bqOYtjEMyfuRPeMpzBiGLr85C8PQNQ0Sc987eAu0Kr8GBXgqb5F9SWkTfDrkPVZ1I_2XxqcDTvphV7-1vhAyl-dT9P85YFd3ZwE7fg3rjJxPeoCbGC8rhKULuOB7S1hQVzQg/s72-c/Screen+Shot+2016-01-28+at+4.45.21+PM.png" height="72" width="72"/><thr:total>0</thr:total><georss:featurename>Newport, Jersey City, NJ, USA</georss:featurename><georss:point>40.729028799999988 -74.034418800000026</georss:point><georss:box>40.716996299999991 -74.054588800000019 40.741061299999984 -74.014248800000033</georss:box></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-4498298458354617549</guid><pubDate>Tue, 08 Feb 2011 15:30:00 +0000</pubDate><atom:updated>2016-01-28T16:36:19.277-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">running</category><title>Running: c25K</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
C25K: Couch to 5 kilometers (3.1 miles). Finally finished my c25K training and was finally able to run a 5K (not a race, just by itself!), and it was awesome.&lt;br /&gt;
&lt;br /&gt;
C25K is the perfect program for someone who has never run and wants to start running. Just 30 minutes a day, 3 times a week, and after 9 weeks you can run 5 kilometers! It is awesome. The idea was first publicized by coolrunning.com.&lt;br /&gt;
&lt;br /&gt;
Check &lt;a href=&quot;http://www.coolrunning.com/engine/2/2_3/181.shtml&quot; target=&quot;_blank&quot;&gt;this link&lt;/a&gt; of theirs to get more info about the program &amp;nbsp;(&lt;a href=&quot;http://www.coolrunning.com/engine/2/2_3/181.shtml&quot;&gt;http://www.coolrunning.com/engine/2/2_3/181.shtml&lt;/a&gt;).&lt;br /&gt;
&lt;br /&gt;
With the app industry bustling with, there is an app for everything, you can search your phone&#39;s store to get an app. I used &quot;&lt;a href=&quot;http://www.bluefinapps.com/ease-into-5k.html&quot; target=&quot;_blank&quot;&gt;Ease into 5K&lt;/a&gt;&quot; to get me started, repeated week 4 multiple times to get comfortable with the pace and distance. An effort worth spending. &amp;nbsp;&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2011/02/running-c25k.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-2962066529070406611</guid><pubDate>Fri, 15 Oct 2010 18:24:00 +0000</pubDate><atom:updated>2016-01-28T16:55:38.051-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">startup</category><title>Tips for naming a startup...</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
This has been a tedious task for every individual who wants to start a company. What do I call it ? This was our problem too before we started out with this blog. The initial idea was to use &quot;oxymorons&quot;, but most of them sounded moronic (pun intended). So we started calling out random names and start noting them down, then started with a completely another set of names totally irrelevant to the first set&lt;br /&gt;
&lt;br /&gt;
Then we sat down and started matching these names, tried to figure of which combination sounds good, cool and not too cheezy, but at the same time was also available as a dot.com. Of the names shortlisted, we finally held on to &quot;protonfever&quot;.&lt;br /&gt;
&lt;br /&gt;
We found a dot.com and a twitter handle for it, hopefully I can find a facebook page for it too (do I need one??) &lt;br /&gt;
&lt;br /&gt;
So here you reading the blog, and also enlightened with some of its history. The reason I wrote this article was to help some of you guys who are looking for names to follow some ideas.&lt;a href=&quot;http://onstartups.com/About/AboutDharmeshShah/tabid/4147/Default.aspx&quot;&gt; Dharmesh Shah&lt;/a&gt; of &lt;a href=&quot;http://onstartups.com/&quot;&gt;OnStartups.com&lt;/a&gt; has written an interesting article on this subject. &lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://onstartups.com/tabid/3339/bid/17702/17-Mutable-Suggestions-For-Naming-A-Startup.aspx&quot;&gt;http://onstartups.com/tabid/3339/bid/17702/17-Mutable-Suggestions-For-Naming-A-Startup.aspx&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Go ahead read it in detail, interesting and informative.&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2010/10/tips-to-name-startup.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-7742557707939809704</guid><pubDate>Tue, 05 Oct 2010 10:00:00 +0000</pubDate><atom:updated>2010-10-05T21:51:38.366-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Multitenancy</category><category domain="http://www.blogger.com/atom/ns#">Varun Mehta</category><title>Multitenancy: What is it ?</title><description>I&#39;m not trying to redefine the concept or write a new white paper on multi-tenancy. Most of the article points you to few of the best articles and white papers on the internet that I&#39;ve come across. Different companies have different approaches and ideas on how to handle this. I try to handle this from a data separation perspective first and then take it to the application level.&lt;br /&gt;
&lt;br /&gt;
If you are new to the concept of SaaS itself, then you have some reading to do, before you read further. Can I suggest Wikipedia to being with first [&lt;a href=&quot;http://en.wikipedia.org/wiki/SaaS&quot;&gt;http://en.wikipedia.org/wiki/SaaS&lt;/a&gt;]&lt;br /&gt;
&lt;br /&gt;
Working on a SaaS model, multi-tenancy plays a major role to allow (their) multiple clients to live on the same system. There are various white papers and articles out there on the internet discussing on strategies on how to implement them. I&#39;ve listed a few for your bed time reading;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Multitenancy&quot;&gt;http://en.wikipedia.org/wiki/Multitenancy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://msdn.microsoft.com/en-us/library/aa479086.aspx&quot;&gt;http://msdn.microsoft.com/en-us/library/aa479086.aspx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://wiki.developerforce.com/index.php/Multi_Tenant_Architecture&quot;&gt;http://wiki.developerforce.com/index.php/Multi_Tenant_Architecture&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;Let me try to give you a real world analogy on what multi-tenancy is and what issues you face with it.&lt;br /&gt;
&lt;br /&gt;
Consider your self as a big rental management firm, who can rent all the apartments in the building, so how&#39;s that with a software? &lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/chavelli/37229474/&quot; title=&quot;Buildings Remix (by Ngudu Brown) by hellodisco!, on Flickr&quot;&gt;&lt;img alt=&quot;Buildings Remix (by Ngudu Brown)&quot; height=&quot;500&quot; src=&quot;http://farm1.static.flickr.com/31/37229474_47c1b7c0a8.jpg&quot; width=&quot;370&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;small&gt;Courtesy: &lt;a href=&quot;http://www.flickr.com/photos/chavelli/&quot;&gt;hellodisco&lt;/a&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;
But my problem was how to implement it in my application with minimum effort or interference from other developers. I did not want multi-tenancy code seepage into my regular code. The whole point is to keep is as sanitized as possible. One of the really quick and dirty ways was the make every front end developer pass that as a parameter to the backend, but that is not something any developer would want to introduce in his app.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;It&#39;s an added dependency across the application for every developer to pass the parameter&lt;/li&gt;
&lt;li&gt;If a developer forgets to pass the parameter, the system starts to fail.&lt;/li&gt;
&lt;/ul&gt;We want to keep the developer interference as minimum as possible (read none!), and keep the application as simple as possible to transform from a single to multi-tenant back and forth. To handle this we use the HttpSessions, ServletFilter &amp;amp; ThreadLocal.&lt;br /&gt;
&lt;br /&gt;
I&#39;ll try to cover the code in the next post, but here is how the flow of logic will occur.&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;When the user logs in, get the &quot;tenant code&quot; and store it in the user&#39;s web session&lt;/li&gt;
&lt;li&gt;Next the request when reaches the filter, the &quot;tenant code&quot; is read and stored in a ThreadLocal&lt;/li&gt;
&lt;li&gt;This ThreadLocal is accessible through out the &quot;request roundtrip&quot;.&lt;/li&gt;
&lt;li&gt;Use hibernate to set the &quot;tenant&quot; in the Filters and get the filtered data.&lt;/li&gt;
&lt;/ol&gt;We&#39;ll deep dive into the technical next time.</description><link>http://protonfever.blogspot.com/2010/10/multitenancy-what-is-it.html</link><author>noreply@blogger.com (Varun Mehta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm1.static.flickr.com/31/37229474_47c1b7c0a8_t.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-8813380482293207848</guid><pubDate>Sat, 31 Jul 2010 12:00:00 +0000</pubDate><atom:updated>2016-01-28T17:19:09.407-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">photography</category><category domain="http://www.blogger.com/atom/ns#">Varun Mehta</category><title>New Photography Blog! </title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
I moved out of my &lt;a href=&quot;http://varunphotography.blogspot.com/&quot; target=&quot;_blank&quot;&gt;old photography blog&lt;/a&gt; and started a &lt;a href=&quot;http://varunmehtaphotography.blogspot.com/&quot; target=&quot;_blank&quot;&gt;new one&lt;/a&gt;!&lt;br /&gt;
&lt;br /&gt;
My Sony DSC-S60 was getting old, and I have laid my hands on a fresh new DSLR, Canon 50D. Picked up the default 28-135mm/3.5-5.6f lens with a 50mm/1.8f.&lt;br /&gt;
&lt;br /&gt;
Starting this dedicated blog to keep this more personal and technical, and that exclusively about photography. Hope to checkout some awesome posts out there!&lt;br /&gt;
&lt;br /&gt;
The photographs will be hosted on flickr and then embedded on the pages. I don&#39;t trust blogger to do justice with the pics.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://www.flickr.com/photos/varunmehta/&quot; target=&quot;_blank&quot;&gt;https://www.flickr.com/photos/varunmehta/&amp;nbsp;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Happy Clicking!&amp;nbsp;&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2010/07/new-photography-blog.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total><georss:featurename>Newport, Jersey City, NJ, USA</georss:featurename><georss:point>40.729028799999988 -74.034418800000026</georss:point><georss:box>40.716996299999991 -74.054588800000019 40.741061299999984 -74.014248800000033</georss:box></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-3217563689137263132</guid><pubDate>Wed, 02 Jun 2010 18:37:00 +0000</pubDate><atom:updated>2010-10-05T21:51:38.368-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SaaS</category><category domain="http://www.blogger.com/atom/ns#">Varun Mehta</category><title>Own your network, Own your client</title><description>Own your network, Own your client. What do we mean by that ? &lt;br /&gt;
&lt;br /&gt;
When building a SaaS based model, companies built strong systems for their clients to use. All the latest web 2.0, 3.0 features and implement the security best practices, but many of them fail to make basic statistics available to them. &lt;br /&gt;
&lt;br /&gt;
I&#39;ve tried to list a few of the short-comings companies should look at resolving;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;Usage Statistics:&lt;/b&gt; If you bill the client per transaction and the amount of load they use on the system, its always nice to have this information available at the customer information screen of the application.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Billing Information:&lt;/b&gt; Invoices and bills should be readily available in the system. Build a billing engine right into the application, saves the finance team a lot of effort processing invoices on a monthly basis and then following up with the clients.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Auto-payments:&lt;/b&gt; You don&#39;t want to be left in the limbo, with the client not paying on time and keeping you stranded without money for months. In this age of advanced e-commerce and online banking, its advisable to go the extra mile and integrate an auto-pay system into your application.&lt;/li&gt;
&lt;/ul&gt;</description><link>http://protonfever.blogspot.com/2010/06/own-your-network-own-your-client.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-3741160651927008411</guid><pubDate>Thu, 08 Apr 2010 18:27:00 +0000</pubDate><atom:updated>2010-10-05T21:51:38.375-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">adserving</category><category domain="http://www.blogger.com/atom/ns#">iPad</category><category domain="http://www.blogger.com/atom/ns#">iPhone</category><category domain="http://www.blogger.com/atom/ns#">Varun Mehta</category><title>iAd for iPhone, what does that mean for Google</title><description>Apple just presented a preview of iPhone 4.0. Off all the bells and whistles with multitasking and other features released in this version, the most interesting one is iAds integrated into the iPhone api. &lt;br /&gt;
&lt;br /&gt;
Salient Features;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;60% of the revenue is shared with the developers.&lt;/li&gt;
&lt;li&gt;You as a developer can directly embed ads in your app from the api&lt;/li&gt;
&lt;li&gt;The ads will be sold and hosted by Apple.&lt;/li&gt;
&lt;li&gt;They have a limitation on how many ads will be served per-day,  per-phone, per-app&lt;/li&gt;
&lt;/ul&gt;So what does that mean to other ad-serving companies like Google, Yahoo, Microsoft etc...&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;ul&gt;&lt;li&gt;More iPhone developers with little or no knowledge about the Ad media market will bend towards Apple. (like Adsense for Blogger) &lt;/li&gt;
&lt;li&gt;60% is a good incentive for developers to use the in-built ad serving API, rather than finding loops to place ads by AdMobile or Google on their apps.&lt;/li&gt;
&lt;li&gt;This means less customers to Google, Yahoo and other ad-networks for serving mobile ads.&lt;/li&gt;
&lt;li&gt;Most of the ads on the web are in flash, but neither the iPhone nor the  iPad support them, so advertisers will either follow a new format for  displaying ads or get creative with classical formats on these devices.&amp;nbsp;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Apple has officially entered the ad serving business, along with the other big players in the market.&lt;/li&gt;
&lt;li&gt;The ads look more interactive and innovative. So we see a new format  coming out, plus a new way to measure the cost, apart from the classical  CPM, CPC stuff.&lt;/li&gt;
&lt;li&gt;The same ad-server and format might serve a way to show ads on the iPad websites too... &lt;/li&gt;
&lt;/ul&gt;Other Things we might see coming out of this.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Google Android, next version can also have a similar &quot;Adsense/Doubleclick&quot; api.&lt;/li&gt;
&lt;li&gt;Similarly Windows mobile 7.0 will be tied up with Atlas.&lt;/li&gt;
&lt;li&gt;Since Android is far more spread (in terms of devices) than iPhone OS, anything that is connected to the internet can server ads.&lt;/li&gt;
&lt;li&gt;The ads look more interactive and innovative. So we see a new format coming out, plus a new way to measure the cost, apart from the classical CPM, CPC stuff.&lt;/li&gt;
&lt;/ul&gt;Acceptance rate might be slow initially, but a change is already rolled out.&lt;br /&gt;
&lt;br /&gt;
As consumers we should be worried as more and more targeted ads can now be served to you. The day shall not be far, when using location services, the iPhone pushes an ad-notification on your screen.&lt;br /&gt;
&lt;blockquote&gt;It&#39;s lunch time! How about a Big Mac to fuel the appetite!&amp;nbsp; &lt;/blockquote&gt;&amp;nbsp;when it finds you walking past one...&amp;nbsp;</description><link>http://protonfever.blogspot.com/2010/04/iad-for-iphone-what-does-that-mean-for.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-60549239636363535</guid><pubDate>Thu, 18 Mar 2010 01:06:00 +0000</pubDate><atom:updated>2016-01-28T16:56:02.156-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">adserving</category><title>Annoying Geo Targeting</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Ever see those annoying ads on websites you are visiting, which advertise services or locations around where you are currently surfing. How do they figure out where you are??&lt;br /&gt;
&lt;br /&gt;
Such kind of targeting in the online media world is called as &quot;geo-targeting&quot;. Every computer or device that connects to the internet gets an IP address assigned to it. These addresses are assigned based on your location, so if you are in North America your IP will start from 63.*.*.* or 64.*.*.*. If you are in Asia, your IP address will range in 202.*.*.* or 212.*.*.*, so on and so forth. These addresses are further drilled to second and third level based on the subnet mask.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;When ads are placed, to target people in a specific location, they get help from the IP address/subnet, and then the spam ads really want to desperately reach you, they use a trick like the one mentioned in the cartoon below...&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://imgs.xkcd.com/comics/geoip.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://imgs.xkcd.com/comics/geoip.png&quot; height=&quot;244&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;blockquote&gt;
I hate to analyze &lt;a href=&quot;http://xkcd.com/&quot;&gt;xkcd.com&lt;/a&gt;, but this one hits right on target my work domain.&amp;nbsp; &lt;/blockquote&gt;
&lt;/div&gt;
</description><link>http://protonfever.blogspot.com/2010/03/annoying-geo-targeting.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-2950774483810614414</guid><pubDate>Wed, 17 Mar 2010 01:02:00 +0000</pubDate><atom:updated>2010-10-05T21:51:38.378-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">technical</category><category domain="http://www.blogger.com/atom/ns#">Varun Mehta</category><title>Hot Deployment issues</title><description>The build always makes it to the staging and production server after a series of rigorous tests. This ensures the build is complaint with the requirement and that none of the old features have been compromised in any way. Once in a while, a rare, but an &lt;a href=&quot;http://www.kevinwilliampang.com/2008/08/28/top-10-things-that-annoy-programmers/&quot;&gt;annoying&lt;/a&gt; &quot;&lt;a href=&quot;http://en.wikipedia.org/wiki/Scope_creep&quot;&gt;Scope Creep&lt;/a&gt;&quot; scenario does happen.&lt;br /&gt;
&lt;br /&gt;
Just minutes before the demo some one would realize a missing feature or patch which missed the commit deadline and did not make it to the server. So as a quick temp fix we just deploy that file to ensure the code does not have to go through the grueling tests again. Some of the smart developers don&#39;t commit these hot patches to SVN or merge it with the patch branch, losing the feature again.&amp;nbsp; &lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;
Writing a shell script or a program which can check the MD5sum of all the files deployed, with the files about to be deployed can give us an idea if anything had been hot deployed. Hudson has a neat trick called as fingerprints for jar files, which is similar in the same aspect of checking MD5, so you know if you need to redeploy all the jar files or only the changed ones.</description><link>http://protonfever.blogspot.com/2010/03/hot-deployment-issues.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-8112443630678099526</guid><pubDate>Wed, 17 Feb 2010 22:38:00 +0000</pubDate><atom:updated>2010-10-05T21:51:38.381-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">project planning</category><category domain="http://www.blogger.com/atom/ns#">Varun Mehta</category><title>Project Management and Issue tracking tools: Redmine vs Trac</title><description>I&#39;ve been beating around the web searching for a good solution, that can scale from a microISV team to a mid sized team. We&#39;ve been using &lt;a href=&quot;http://svnrepository.com/&quot;&gt;svnrepository.com&lt;/a&gt; for sometime. They provide svn and git as a SCM,&amp;nbsp; also trac with multiple plugins for project management.&lt;br /&gt;
&lt;br /&gt;
Off late they&#39;ve upgraded to a new system which offers &lt;a href=&quot;http://www.redmine.org/&quot;&gt;redmine&lt;/a&gt;, along with &lt;a href=&quot;http://trac.edgewall.org/&quot;&gt;trac&lt;/a&gt; and also has support for mercurial. After searching the web for a few minutes, I hit upon this article at stackoverflow; &lt;br /&gt;
&lt;a href=&quot;http://stackoverflow.com/questions/1130466/trac-vs-redmine-vs-jira-vs-fogbugz-for-one-man-shop&quot;&gt;Trac vs. Redmine vs. JIRA vs. FogBugz for  one-man shop?&lt;/a&gt; Check through the article, you might find it useful.&lt;br /&gt;
&lt;br /&gt;
If you are looking for online svn hosting, this website might be useful to you. &lt;a href=&quot;http://www.svnhostingcomparison.com/&quot;&gt;http://www.svnhostingcomparison.com&lt;/a&gt;. It provides you with multiple options available in the market. You can filter depending on the cost, disk space and other features.</description><link>http://protonfever.blogspot.com/2010/02/project-management-and-issue-tracking.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-7322905925623289240</guid><pubDate>Tue, 16 Feb 2010 22:59:00 +0000</pubDate><atom:updated>2010-10-05T21:51:38.382-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">project planning</category><category domain="http://www.blogger.com/atom/ns#">Varun Mehta</category><title>Adhoc or Agile</title><description>I wanted to hot link to an old post by &lt;a href=&quot;http://www.simonbrown.je/&quot;&gt;Simon Brown&lt;/a&gt;, but I believe he&#39;s dropped his old blog and transformed into a more consultant type blog. I&#39;m copy pasting the old post here, with link to the original post.&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;In the vast majority of cases where these phrases are used, agile has  mistakenly been used to mean that the development process in use is ad  hoc or even non-existent. It&#39;s not hard to get to the bottom of what  people mean by agile, particularly in interviews, with a few simple  questions. Usually, the flow of conversation goes something like this. &lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;ul&gt;&lt;li&gt;Me  : So you&#39;re using agile ... how are you finding it?&lt;/li&gt;
&lt;li&gt;Them : Good  thanks, we&#39;ve been doing XP for a while now.&lt;/li&gt;
&lt;li&gt;Me : Oh right,  which practices of XP are you following?&lt;/li&gt;
&lt;li&gt;Them : We&#39;ve got the  users sitting near us and we&#39;re doing test-driven development. We don&#39;t  do pair programming.&lt;/li&gt;
&lt;li&gt;Me : How are you managing your  iterations/time boxes?&lt;/li&gt;
&lt;li&gt;Them : We do a release whenever a new  feature is ready. The users test it and then tell us how they&#39;d like it  changed. Agile is really good for capturing this early feedback. We just  respond to whatever the users want and they love it!&lt;/li&gt;
&lt;li&gt;Me : So  how long are your iterations?&lt;/li&gt;
&lt;li&gt;Them : Oh, that depends on .....&lt;/li&gt;
&lt;li&gt;Me  : So then, how are you finding test-driven development?&lt;/li&gt;
&lt;li&gt;Them :  We&#39;re really liking that. It&#39;s such a great technique for understanding  exactly what an API should do before you code it.&lt;/li&gt;
&lt;li&gt;Me :  Excellent. What sort of unit test coverage do you have?&lt;/li&gt;
&lt;li&gt;Them :  Oh, I don&#39;t know, but it&#39;s probably over 50%.&lt;/li&gt;
&lt;li&gt;Me : 50%? Do you  use a code coverage tool? Do you write unit tests before writing all of  your code?&lt;/li&gt;
&lt;li&gt;Them : No, we&#39;ve not got around to using a coverage  tool yet. We sometimes right tests before the code, but we usually don&#39;t  have the time to do that so we do it afterwards.&lt;/li&gt;
&lt;li&gt;Me : How do  you ensure quality?&lt;/li&gt;
&lt;li&gt;Them : We&#39;re supposed to do code reviews,  but we don&#39;t usually have time.&lt;/li&gt;
&lt;li&gt;Me : So then, how do you feel  agile methods differ from others, such as ...?&lt;/li&gt;
&lt;/ul&gt;For me, agile  is about reducing the ceremony associated with software development  while maintaining very tight control over the structure of the process  and quality of the deliverables. Unfortunately, many people are now  using &quot;agile&quot; as a buzzword to describe their projects, although in  reality these projects are low in ceremony, structure and quality.&lt;br /&gt;
&lt;br /&gt;
Hmmm  ... are you really agile or just ad hoc?&lt;/blockquote&gt;&lt;br /&gt;
Original Link: &lt;a href=&quot;http://www.simongbrown.com/blog/2006/11/21/agile_or_ad_hoc.html&quot; target=&quot;_blank&quot;&gt;http://www.simongbrown.com/blog/2006/11/21/agile_or_ad_hoc.html&lt;/a&gt;</description><link>http://protonfever.blogspot.com/2010/02/adhoc-or-agile.html</link><author>noreply@blogger.com (Varun Mehta)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3416015228970774796.post-1777722403811731712</guid><pubDate>Thu, 21 Jan 2010 22:05:00 +0000</pubDate><atom:updated>2010-10-05T21:51:38.384-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">project planning</category><category domain="http://www.blogger.com/atom/ns#">Varun Mehta</category><title>Customizing JIRA workflow</title><description>Like other cool companies we also use JIRA for issue tracking; and we are agile using it. JIRA has posted a very useful article on how &amp;nbsp;to go agile using JIRA [&lt;a href=&quot;http://confluence.atlassian.com/display/CONFEVAL/Using+JIRA+for+Agile+Development&quot;&gt;http://confluence.atlassian.com/display/CONFEVAL/Using+JIRA+for+Agile+Development&lt;/a&gt;].&lt;br /&gt;
&lt;br /&gt;
Since JIRA gives you an option to customize the workflow.&amp;nbsp;We&#39;ve added some more details extending the normal 4 step JIRA workflow to a 6-7 step workflow.&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;The steps are closely related to what we follow in a normal development cycle, something that is not only natural to a developer, but also helps managers track them.&amp;nbsp;A look at the major steps involved;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggForjixQNAJGZpN-Ux-CtIynollWPFc-PdtXGNJslN0K04RfcpE7wzJa0yNeafTjixREU45g-dt2NzzTe8zreYBlstFnQUQtHEzvn08S0YKhPMSPenSljeHhp80uaefpQRL8kt_NUoNo/s1600-h/Jira-flowchart.preview.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggForjixQNAJGZpN-Ux-CtIynollWPFc-PdtXGNJslN0K04RfcpE7wzJa0yNeafTjixREU45g-dt2NzzTe8zreYBlstFnQUQtHEzvn08S0YKhPMSPenSljeHhp80uaefpQRL8kt_NUoNo/s640/Jira-flowchart.preview.gif&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Open Issue:&lt;/b&gt; Issue created by the lead and assigned to a responsible developer.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;In Progress: &lt;/b&gt;Once the developer starts working on it, they mark is as &quot;In Progress&quot;, to let others know he&#39;s working on it.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;More Info needed: &lt;/b&gt;Along the way is&amp;nbsp;any information is needed from the business analyst or the decision maker, reassign the issue to them and mark it as &quot;More Info Needed&quot; who when provides more info, assigns back to you. Why the run around; well helps you document for future reference.&amp;nbsp;Back &quot;&lt;b&gt;In Progress&lt;/b&gt;&quot; the developer continues with the quest to complete it.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Development Complete:&amp;nbsp;&lt;span style=&quot;font-weight: normal;&quot;&gt;When finished coding, update the status as &quot;Development Complete&quot;. The module is code complete but not unit tested for yet!&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Unit Tested:&lt;span style=&quot;font-weight: normal;&quot;&gt; Supporting unit test was written and&amp;nbsp;integrated&amp;nbsp;with the Ant/Maven build to run in Hudson/Cruise Control/Bamboo&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;

&lt;ul&gt;&lt;li&gt;There are also cases, when there are no unit tests needed or possible for the code, the developer can mark &amp;nbsp;&quot;No Unit Test&quot; in that case.&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;b&gt;QA Approved:&lt;/b&gt; This is where we get a bit waterfally, but only cos we think unit test may not always provide complete testing justice of your application. Here the QA is&amp;nbsp;responsible&amp;nbsp;for ensuring the business&amp;nbsp;requirements&amp;nbsp;are met as specked out.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Resolve Issue:&lt;/b&gt; Good to go, go to staging, pass some robust abuse, and if all goes well resolve the issue.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Close Issue:&lt;/b&gt; The build has been released and we are generating release notes of what made it and what was missed. Close the issue and let it rest. If there are any&amp;nbsp;repercussions reopen the ticket.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;&lt;blockquote&gt;*There is some debate about the Unit Test being written first and then the code; so you know what to expect; but in this case, it&#39;s a state for the developer and the manager for better understanding.&lt;br /&gt;
&lt;/blockquote&gt;On how to create a custom workflow, please refer the JIRA documentation</description><link>http://protonfever.blogspot.com/2010/01/jira-workflow.html</link><author>noreply@blogger.com (Varun Mehta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggForjixQNAJGZpN-Ux-CtIynollWPFc-PdtXGNJslN0K04RfcpE7wzJa0yNeafTjixREU45g-dt2NzzTe8zreYBlstFnQUQtHEzvn08S0YKhPMSPenSljeHhp80uaefpQRL8kt_NUoNo/s72-c/Jira-flowchart.preview.gif" height="72" width="72"/><thr:total>0</thr:total></item></channel></rss>