<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <title>Shantanu Vs The World </title>
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="HandheldFriendly" content="True">
<meta name="MobileOptimized" content="320">
<meta name="viewport" content="width=device-width, initial-scale=1">


<meta name="description" content="/couchNerd /serialOutrager /puts2In42 /makesPigsFly" />

<meta name="keywords" content="">


<meta property="og:title" content="Shantanu Vs The World ">
<meta property="og:site_name" content="Shantanu Vs The World"/>
<meta property="og:url" content="http://shantanugoel.com/" />
<meta property="og:locale" content="en-us">


<meta property="og:type" content="website" />



<link href="http://shantanugoel.com/index.xml" rel="alternate" type="application/rss+xml" title="Shantanu Vs The World" />

<link rel="canonical" href="http://shantanugoel.com/" />

<link rel="apple-touch-icon-precomposed" sizes="144x144" href="http://shantanugoel.com/touch-icon-144-precomposed.png">
<link href="http://shantanugoel.com/favicon.png" rel="icon">

<meta name="generator" content="Hugo 0.18.1" />

  <!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->

<link href='https://fonts.googleapis.com/css?family=Merriweather:300%7CRaleway%7COpen+Sans' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="http://shantanugoel.com/css/font-awesome.min.css">
<link rel="stylesheet" href="http://shantanugoel.com/css/style.css">


  <style>

 .main_wrapper >.main_header {
     background-color: #272822
 }

 .main_wrapper >.main_header nav a {
     color: #F92672
 }
 
</style>

  
	<script>
	  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
	  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
	  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
	  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

	  ga('create', 'UA-3966412-1', 'auto');
	  ga('send', 'pageview');

	</script>

</head>
<body>
  <main id="main-wrapper" class="container main_wrapper has-sidebar">
    <header id="main-header" class="container main_header">
  <div class="container brand">
  <div class="container title h1-like">
  <a class="baselink" href="http://shantanugoel.com/">
  Shantanu

</a>

</div>

  
<div class="container topline">
  
  ~couchNerd ~serialOutrager ~puts2In42 ~makesPigsFly


</div>


</div>

  <nav class="container nav primary no-print">
  


  
<a href="http://shantanugoel.com/about">/about</a>

<a href="http://shantanugoel.com/post" title="Show list of posts">/posts</a>

<a href="http://shantanugoel.com/categories" title="Category list">/categories</a>

<a href="http://shantanugoel.com/contact" title="Contact Me">/contact</a>

<a href="http://shantanugoel.com/tags" title="Tag list">/tags</a>


</nav>

<div class="container nav secondary no-print">
  


<a id="contact-link-github" class="contact_link" href="https://github.com/shantanugoel">
  <span class="fa fa-2x fa-github-square"></span><span>github</span></a>











<a id="contact-link-twitter" class="contact_link" href="https://twitter.com/shantanugoel">
  <span class="fa fa-2x fa-twitter-square"></span><span>twitter</span></a>











<a id="contact-link-rss" class="contact_link" href="http://shantanugoel.com/index.xml" type="application/rss+xml">
  <span class="fa fa-2x fa-rss-square"></span><span>rss</span></a>



</div>


  

</header>


<section id="main-content" class="container main_content homepage">
  <header class="container header">
    <h1>Shantanu Vs The World
</h1>

    <span>last update: <time datetime="2016-09-17T17:14:43Z">17 September at 5:14pm</time>
</span>

  </header>
  
  
    <article class="container content summary">
  <div class="container hat">
  <h2><a href="http://shantanugoel.com/2016/09/17/indian-isp-act-fibernet-blocks-bit-ly-does-dns-hijacking/">Indian ISP ACT Fibernet blocks bit.ly. Does DNS Hijacking
</a>
</h2>

  <time datetime="2016-09-17">17 Sep, 2016</time>

</div>

  <p class="container content">
  
  
    TLDR;
 Indian ISP ACT Fibernet (aka Beam Telecom) hijacks its users&rsquo; DNS requests (even when using public DNS servers like Google or OpenDNS) and blocks websites through this method. This has huge implications beyond website blocking and you can&rsquo;t rely on anything that you are browsing anymore though there are ways available to make yourself safe.
Aside: Indian ISPs are blocking benign/collateral damage sites now like bit.
  


</p>


  <div class="container readlink">
  <a href="http://shantanugoel.com/2016/09/17/indian-isp-act-fibernet-blocks-bit-ly-does-dns-hijacking/">Read more &rarr;</a>

</div>


</article>

  
    <article class="container content summary">
  <div class="container hat">
  <h2><a href="http://shantanugoel.com/2016/06/29/fixing-the-problem-of-matplotlib-and-ggplot-not-showing-graphs-in-python/">Fixing the problem of matplotlib and ggplot not showing graphs in python
</a>
</h2>

  <time datetime="2016-06-29">29 Jun, 2016</time>

</div>

  <p class="container content">
  
  
    While trying to make some graphs for one of my side projects recently, I came across an issue that both matplotlib and ggplot did not show up the graphs. I was able to save the graphs to an image file just fine, but if I tried to show them directly on screen while running the script, it just printed a number and exited. After tearing apart my hair for some time, I checked the backend being used by matplot lib:
  


</p>


  <div class="container readlink">
  <a href="http://shantanugoel.com/2016/06/29/fixing-the-problem-of-matplotlib-and-ggplot-not-showing-graphs-in-python/">Read more &rarr;</a>

</div>


</article>

  
    <article class="container content summary">
  <div class="container hat">
  <h2><a href="http://shantanugoel.com/2015/03/01/ntp-driver-for-esp8266/">NTP Driver For ESP8266
</a>
</h2>

  <time datetime="2015-03-01">1 Mar, 2015</time>

</div>

  <p class="container content">
  
  
    I&rsquo;m building a smartwatch project based around the new IoT posterkid on the block, ESP8266. Apart from the usual &ldquo;smart&rdquo; stuff, it does still need to display correct time :) and hence, the need for an ntp driver/client. I couldn&rsquo;t find anyone working on that yet, so wrote up a quick and dirty implementation here:
NTP Implementation for ESP8266
  ESP8266 Smartwatch NTP Demo   It still has a lot of stuff left to be done to make it good enough for the smartwatch project but it works.
  


</p>


  <div class="container readlink">
  <a href="http://shantanugoel.com/2015/03/01/ntp-driver-for-esp8266/">Read more &rarr;</a>

</div>


</article>

  
    <article class="container content summary">
  <div class="container hat">
  <h2><a href="http://shantanugoel.com/2015/02/16/weekend-hack-shoutcast2dropbox-automatic-shoutcast-stations-to-dropbox-recorder/">Weekend Hack: Shoutcast2Dropbox - Automatic Shoutcast Stations To Dropbox Recorder
</a>
</h2>

  <time datetime="2015-02-16">16 Feb, 2015</time>

</div>

  <p class="container content">
  
  
    So I got bored of listening to same old songs on my phone over and over and Rdio announced a streaming plan for India. With a sigh of relief I subscribed immediately and it was stellar at home with its wonderful 32 million song collection and chromecast support to boot. The experience during the commute daily was underwhelming. Couple the spotty airtel data connection with no one station covering all songs I would love and it makes for a frustrating commute with long gaps all over.
  


</p>


  <div class="container readlink">
  <a href="http://shantanugoel.com/2015/02/16/weekend-hack-shoutcast2dropbox-automatic-shoutcast-stations-to-dropbox-recorder/">Read more &rarr;</a>

</div>


</article>

  
    <article class="container content summary">
  <div class="container hat">
  <h2><a href="http://shantanugoel.com/2014/08/03/browser-controlled-raspberry-pi-camera-car/">Browser controlled Raspberry Pi Camera Car
</a>
</h2>

  <time datetime="2014-08-03">3 Aug, 2014</time>

</div>

  <p class="container content">
  
  
    Spent this weekend building a remote controlled car with a live camera feed with a Raspberry Pi doing the communication and brains duty. Pretty nice real time movement control and camera pan/tilt control through websockets with a live stream feeding back to any browser directly from the car through mjpg-streamer
(PS: Video is at the bottom of the post. Browser/video on TV courtesy ChromeCast. Casted my Nexus 5 screen to the TV simultaneously while controlling the car :) )
  


</p>


  <div class="container readlink">
  <a href="http://shantanugoel.com/2014/08/03/browser-controlled-raspberry-pi-camera-car/">Read more &rarr;</a>

</div>


</article>

  
    <article class="container content summary">
  <div class="container hat">
  <h2><a href="http://shantanugoel.com/2014/07/23/converting-a-toy-rc-car-into-an-autonomous-fun-car-the-indian-way/">Converting A Toy RC Car Into An Autonomous Fun Car The Indian Way
</a>
</h2>

  <time datetime="2014-07-23">23 Jul, 2014</time>

</div>

  <p class="container content">
  
  
    Dangerous is a mind which is left grounded at home for days. Being stuck at home and having a few pieces of joy around made me do this over the weekend.
Ingredients:
 An old Toy RC car broken out of shape by my 4 year old
 DAGU Mini Driver
 Screw Driver/Batteries/Tape/Glue/Rubber bands/Old gift cards
 Half an hour of coding
  Output:
A car that runs automatically making 8 shape on the floor (More like random fractals due to the wheels having no grip)
  


</p>


  <div class="container readlink">
  <a href="http://shantanugoel.com/2014/07/23/converting-a-toy-rc-car-into-an-autonomous-fun-car-the-indian-way/">Read more &rarr;</a>

</div>


</article>

  
    <article class="container content summary">
  <div class="container hat">
  <h2><a href="http://shantanugoel.com/2013/12/07/patterbuzz-your-content-your-way/">Patterbuzz - Your Content Your Way
</a>
</h2>

  <time datetime="2013-12-07">7 Dec, 2013</time>

</div>

  <p class="container content">
  
  
    My brother, Amit Goel, has founded a startup &ldquo;Patterbuzz&rdquo; which is aiming to disrupt the digital publishing marketplace. Read on for details about it in his words. I can assure you that you don&rsquo;t want to miss out on this whether you are a publisher or a consumer :)
Welcome Offer: Download the app and register your account before 15th December and get 100 Credits FREE!! to download the content of your choice.
  


</p>


  <div class="container readlink">
  <a href="http://shantanugoel.com/2013/12/07/patterbuzz-your-content-your-way/">Read more &rarr;</a>

</div>


</article>

  
    <article class="container content summary">
  <div class="container hat">
  <h2><a href="http://shantanugoel.com/2013/10/14/xposed-mod-bypass-exchange-security-policy-for-nexus-4-android-4-3/">[Xposed Mod] Bypass Exchange Security Policy for Nexus and other AOSP devices
</a>
</h2>

  <time datetime="2013-10-14">14 Oct, 2013</time>

</div>

  <p class="container content">
  
  
    Exchange Security Bypass Xposed Mode for Nexus 4/5/7 and other AOSP based devices (Android 4.3 / 4.4)
Update: This has now been tested to work successfully on all stock or nearly stock JellyBean (4.3) and KitKat (4.4) ROMs on Nexus 4 / Nexus 5 / Nexus 7. Other AOSP ROMs like CM11 should work as well.
This mod should be used along with Xposed ( http://forum.xda-developers.com/showthread.php?t=1574401 ). Xposed is this awesome framework developed by rovo89 which allows you to carry out mods to your device without changing any files (well except one &ldquo;app_process&rdquo; as part of the xposed installer).
  


</p>


  <div class="container readlink">
  <a href="http://shantanugoel.com/2013/10/14/xposed-mod-bypass-exchange-security-policy-for-nexus-4-android-4-3/">Read more &rarr;</a>

</div>


</article>

  
    <article class="container content summary">
  <div class="container hat">
  <h2><a href="http://shantanugoel.com/2013/07/14/samsung-tv-message-box-python/">Display Message on Samsung TVs in Python (Samsung MessageBox Service Exploitation)
</a>
</h2>

  <time datetime="2013-07-14">14 Jul, 2013</time>

</div>

  <p class="container content">
  
  
    This script is the result of a weekend&rsquo;s hacking to get my TV to display incoming calls/texts which I miss invariably because the phone is buried under a sofa or in a different room. Earlier I had done this using my Odroid U2 and Tasker/AutoRemote but this was limiting as this meant that I could see the notifications only when I was watching something through the Odroid. Samsung TVs, which are DLNA enabled, also include a hidden service called &ldquo;Message Box&rdquo; which can display different information on the TV natively irrespective of which display mode/input mode you are in.
  


</p>


  <div class="container readlink">
  <a href="http://shantanugoel.com/2013/07/14/samsung-tv-message-box-python/">Read more &rarr;</a>

</div>


</article>

  
    <article class="container content summary">
  <div class="container hat">
  <h2><a href="http://shantanugoel.com/2013/03/03/fixing-the-static-noise-clicks-and-pops-with-turtlebeach-earforce-px5/">Fixing The Static Noise, Clicks And Pops with Turtlebeach Earforce PX5
</a>
</h2>

  <time datetime="2013-03-03">3 Mar, 2013</time>

</div>

  <p class="container content">
  
  
    So I got this beautiful piece of headset a few days ago, called the EarForce PX5 by TurtleBeach. It&rsquo;s claim to fame being an awesome virtual surround sound headset which also does the double duty of providing game audio as well as voice chat over the same headset. I preferred this over the Sony PS3 Elite headset as the PX5 is more generic and can work across multiple devices since it uses the regular bluetooth for A2DP and voice chat and the wireless transmitter has standard optical/RCA inputs and outputs.
  


</p>


  <div class="container readlink">
  <a href="http://shantanugoel.com/2013/03/03/fixing-the-static-noise-clicks-and-pops-with-turtlebeach-earforce-px5/">Read more &rarr;</a>

</div>


</article>

  
  
<div class="container pagination">
  


<a aria-label="First" href="http://shantanugoel.com//">
  <span aria-hidden="true">««</span>
</a>

<a class="disabled" aria-label="Previous" href="#">
  <span aria-hidden="true">«</span>
</a>


<a class="active" href="http://shantanugoel.com//">
  1
</a>

<a href="http://shantanugoel.com//page/2/">
  2
</a>

<a href="http://shantanugoel.com//page/3/">
  3
</a>

<a href="http://shantanugoel.com//page/4/">
  4
</a>

<a href="http://shantanugoel.com//page/5/">
  5
</a>

<a href="http://shantanugoel.com//page/6/">
  6
</a>

<a href="http://shantanugoel.com//page/7/">
  7
</a>

<a href="http://shantanugoel.com//page/8/">
  8
</a>

<a href="http://shantanugoel.com//page/9/">
  9
</a>

<a href="http://shantanugoel.com//page/10/">
  10
</a>

<a href="http://shantanugoel.com//page/11/">
  11
</a>

<a href="http://shantanugoel.com//page/12/">
  12
</a>

<a href="http://shantanugoel.com//page/13/">
  13
</a>

<a href="http://shantanugoel.com//page/14/">
  14
</a>

<a href="http://shantanugoel.com//page/15/">
  15
</a>

<a href="http://shantanugoel.com//page/16/">
  16
</a>

<a href="http://shantanugoel.com//page/17/">
  17
</a>

<a href="http://shantanugoel.com//page/18/">
  18
</a>

<a href="http://shantanugoel.com//page/19/">
  19
</a>

<a href="http://shantanugoel.com//page/20/">
  20
</a>

<a href="http://shantanugoel.com//page/21/">
  21
</a>

<a href="http://shantanugoel.com//page/22/">
  22
</a>

<a href="http://shantanugoel.com//page/23/">
  23
</a>

<a href="http://shantanugoel.com//page/24/">
  24
</a>

<a href="http://shantanugoel.com//page/25/">
  25
</a>


<a aria-label="Next" href="http://shantanugoel.com//page/2/">
  <span aria-hidden="true">»</span>
</a>

<a aria-label="Last" href="http://shantanugoel.com//page/25/">
  <span aria-hidden="true">»»</span>
</a>


</div>


</section>

      <footer id="main-footer" class="container main_footer">
  

  <div class="container nav foot no-print">
  
<a href="http://shantanugoel.com/terms-of-use">Terms of Use</a>

<a href="http://shantanugoel.com/privacy">Privacy</a>


  <a class="toplink" href="#">back to top</a>

</div>

  <div class="container credits">
  
<div class="container footline">
  

</div>


  

</div>

</footer>

    </main>
    
<script type="text/javascript">
  (function() {
    
    
    if (window.location.hostname == "localhost")
      return;

    var dsq = document.createElement('script'); dsq.async = true; dsq.type = 'text/javascript';
    dsq.src = '//shantanugoel.disqus.com/count.js';
    (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
  })();
</script>




    
  </body>
</html>

