<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 
 <title>Incognitech</title>
 <link href="http://blog.incognitech.in/" rel="self"/>
 <link href="http://blog.incognitech.in"/>
 <updated>2018-08-06T10:10:02+00:00</updated>
 <id>http://blog.incognitech.in</id>
 <author>
   <name>Udit Desai</name>
   <email>desaiuditd@gmail.com</email>
 </author>

 
 <entry>
   <title>Download Files from Apache Server Directory Listings</title>
   <link href="http://blog.incognitech.in/download-files-from-apache-server-listing-directory/"/>
   <updated>2016-06-19T00:34:28+00:00</updated>
   <id>http://blog.incognitech.in/download-files-from-apache-server-listing-directory</id>
   <content type="html">
&lt;p&gt;This evening I came across a &lt;a href=&quot;https://www.google.com/search?q=game+of+thrones+audiobooks&quot;&gt;Google Search&lt;/a&gt; result for &lt;a href=&quot;http://tinfoilgaming.com/Public/AudioBooks/A%20Song%20of%20Ice%20and%20Fire/&quot;&gt;Game of Thrones Audiobooks&lt;/a&gt; and my immediate question was how can I download all these &lt;code class=&quot;highlighter-rouge&quot;&gt;.mp3&lt;/code&gt; files at once to my computer. As going through each of those directory and clicking on those files to download was, well a bit too boring and time consuming.&lt;/p&gt;

&lt;p&gt;So I gave a thought to it and tried to play with the very famous shell command &lt;code class=&quot;highlighter-rouge&quot;&gt;wget&lt;/code&gt; and that’s it! After few trials it gave me what I needed.&lt;/p&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;wget &lt;span class=&quot;nt&quot;&gt;--execute&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;robots = off&quot;&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;--mirror&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;--convert-links&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;--no-parent&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;--wait&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;5 &amp;lt;website-url&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;explanation-with-each-options&quot;&gt;Explanation with each options&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;wget&lt;/code&gt;: Simple Command to make CURL request and download remote files to our local machine.&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;--execute=&quot;robots = off&quot;&lt;/code&gt;: This will ignore robots.txt file while crawling through pages. It is helpful if you’re not getting all of the files.&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;--mirror&lt;/code&gt;: This option will basically mirror the directory structure for the given URL. It’s a shortcut for &lt;code class=&quot;highlighter-rouge&quot;&gt;-N -r -l inf --no-remove-listing&lt;/code&gt; which means:
    &lt;ul&gt;
      &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;-N&lt;/code&gt;: don’t re-retrieve files unless newer than local&lt;/li&gt;
      &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;-r&lt;/code&gt;: specify recursive download&lt;/li&gt;
      &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;-l inf&lt;/code&gt;: maximum recursion depth (inf or 0 for infinite)&lt;/li&gt;
      &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;--no-remove-listing&lt;/code&gt;: don’t remove ‘.listing’ files&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;--convert-links&lt;/code&gt;: make links in downloaded HTML or CSS point to local files&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;--no-parent&lt;/code&gt;: don’t ascend to the parent directory&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;--wait=5&lt;/code&gt;: wait 5 seconds between retrievals. So that we don’t thrash the server.&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;&amp;lt;website-url&amp;gt;&lt;/code&gt;: This is the website url from where to download the files.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Happy Downloading :smiley:&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>FontAwesome in Android</title>
   <link href="http://blog.incognitech.in/font-awesome-in-android/"/>
   <updated>2016-02-29T16:39:28+00:00</updated>
   <id>http://blog.incognitech.in/font-awesome-in-android</id>
   <content type="html">
&lt;p&gt;&lt;a href=&quot;http://fontawesome.io/&quot;&gt;FontAwesome&lt;/a&gt; icon pack is quite popular in Web Development and it has got alot of custom icons related to almost every possible situation in your app/website that you may want to use.&lt;/p&gt;

&lt;h2 id=&quot;how-fontawesome-works&quot;&gt;How FontAwesome Works&lt;/h2&gt;

&lt;p&gt;The thought behind the FontAwesome symbol pack is straightforward. The symbols are dealt as characters. For instance, you can undoubtedly duplicate and glue this &lt;code class=&quot;highlighter-rouge&quot;&gt;β&lt;/code&gt; character or this &lt;code class=&quot;highlighter-rouge&quot;&gt;∑&lt;/code&gt; character. It’s additionally possible to change their size and colors. That’s because the browser and the text editor see these characters as text.&lt;/p&gt;

&lt;p&gt;FontAwesome expands upon this concept by including a wide range of icons. You choose an icon from the list, take note of its Unicode character, and use it in a &lt;code class=&quot;highlighter-rouge&quot;&gt;TextView&lt;/code&gt;, telling Android to render it using the FontAwesome font.&lt;/p&gt;

&lt;h2 id=&quot;android-setup&quot;&gt;Android Setup&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Download the FontAwesome project from &lt;a href=&quot;http://fortawesome.github.io/Font-Awesome/&quot;&gt;Github&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;Extract &lt;code class=&quot;highlighter-rouge&quot;&gt;fontawesome-webfont.ttf&lt;/code&gt; file located in &lt;code class=&quot;highlighter-rouge&quot;&gt;fonts&lt;/code&gt; folder.&lt;/li&gt;
  &lt;li&gt;Place &lt;code class=&quot;highlighter-rouge&quot;&gt;fontawesome-webfont.ttf&lt;/code&gt; within &lt;code class=&quot;highlighter-rouge&quot;&gt;assets&lt;/code&gt; directory.
    &lt;ul&gt;
      &lt;li&gt;Navigate to &lt;code class=&quot;highlighter-rouge&quot;&gt;app &amp;gt; src &amp;gt; main&lt;/code&gt; in your Android project.&lt;/li&gt;
      &lt;li&gt;Create a new directory named &lt;code class=&quot;highlighter-rouge&quot;&gt;assets&lt;/code&gt;. If it’s already there then skip this.&lt;/li&gt;
      &lt;li&gt;Place &lt;code class=&quot;highlighter-rouge&quot;&gt;fontawesome-webfont.ttf&lt;/code&gt; in &lt;code class=&quot;highlighter-rouge&quot;&gt;assets&lt;/code&gt;. You may want to put this file in a separate directory named &lt;code class=&quot;highlighter-rouge&quot;&gt;fonts&lt;/code&gt; within &lt;code class=&quot;highlighter-rouge&quot;&gt;assets&lt;/code&gt;.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;NOTE&lt;/strong&gt;: Note that the fonts directory is not required. As long as the FontAwesome font file is located in the &lt;code class=&quot;highlighter-rouge&quot;&gt;assets&lt;/code&gt; directory, or a subdirectory thereof, you’re good to go.&lt;/p&gt;

&lt;h2 id=&quot;helper-class&quot;&gt;Helper Class&lt;/h2&gt;

&lt;div class=&quot;language-java highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;kn&quot;&gt;package&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;in&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;incognitech&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;reminder&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;util&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;;&lt;/span&gt;

&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;android.content.Context&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;android.graphics.Typeface&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;android.view.View&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;android.view.ViewGroup&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;android.widget.TextView&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;;&lt;/span&gt;

&lt;span class=&quot;cm&quot;&gt;/**
 * Created by udit on 13/02/16.
 */&lt;/span&gt;
&lt;span class=&quot;kd&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;class&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;FontAwesomeManager&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;

	&lt;span class=&quot;kd&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;static&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;final&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;String&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ROOT&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&quot;fonts/&quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;;&lt;/span&gt;
	&lt;span class=&quot;kd&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;static&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;final&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;String&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;FONTAWESOME&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ROOT&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;&quot;fontawesome-webfont.ttf&quot;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;;&lt;/span&gt;

	&lt;span class=&quot;kd&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;static&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Typeface&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;getTypeface&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;Context&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;context&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;String&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;font&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
		&lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Typeface&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;createFromAsset&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;context&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getAssets&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(),&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;font&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;

&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Basically, we are making use of &lt;code class=&quot;highlighter-rouge&quot;&gt;android.graphics.Typeface&lt;/code&gt; class which can be applied to any text that is gonig to be rendered on screen. The &lt;code class=&quot;highlighter-rouge&quot;&gt;Typeface&lt;/code&gt; class specifies the typeface and intrinsic style of a font. This is used to specify how text appears when drawn (and measured).&lt;/p&gt;

&lt;p&gt;So after defining this class in your project, you can apply typface to your &lt;code class=&quot;highlighter-rouge&quot;&gt;TextView&lt;/code&gt; in your &lt;code class=&quot;highlighter-rouge&quot;&gt;Activity&lt;/code&gt; class with following snippet.&lt;/p&gt;

&lt;div class=&quot;language-java highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;c1&quot;&gt;// ...&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;TextView&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;textView&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;TextView&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;findViewById&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;R&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;textView&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;textView&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setTypeFace&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;FontAwesomeManager&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getTypeface&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;FontAwesomeManager&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;FONTAWESOME&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;));&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;// ...&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h4 id=&quot;one-step-ahead&quot;&gt;One Step Ahead&lt;/h4&gt;

&lt;p&gt;Well, above steps were all we need to do to apply the specific fonts to texts. But we can improvise on this. Above, we need to create object for each of the &lt;code class=&quot;highlighter-rouge&quot;&gt;TextView&lt;/code&gt; in the layout, but generally, icons are often contained in a &lt;code class=&quot;highlighter-rouge&quot;&gt;ViewGroup&lt;/code&gt; wrapper such as &lt;code class=&quot;highlighter-rouge&quot;&gt;LinearLayout&lt;/code&gt; or &lt;code class=&quot;highlighter-rouge&quot;&gt;RelativeLayout&lt;/code&gt;. We can create a recursive method to find out all of the &lt;code class=&quot;highlighter-rouge&quot;&gt;TextView&lt;/code&gt; elements within a container and apply &lt;code class=&quot;highlighter-rouge&quot;&gt;TypeFace&lt;/code&gt; to each of them.&lt;/p&gt;

&lt;div class=&quot;language-java highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;kd&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;class&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;FontAwesomeManager&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
	&lt;span class=&quot;c1&quot;&gt;// ...&lt;/span&gt;
	&lt;span class=&quot;kd&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;static&lt;/span&gt; &lt;span class=&quot;kt&quot;&gt;void&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;applyTypeFace&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;View&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;v&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Typeface&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;typeface&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
		&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;v&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;instanceof&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;ViewGroup&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
			&lt;span class=&quot;n&quot;&gt;ViewGroup&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;vg&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;ViewGroup&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;v&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;;&lt;/span&gt;
			&lt;span class=&quot;k&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kt&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;vg&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getChildCount&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;();&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;++)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
				&lt;span class=&quot;n&quot;&gt;View&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;child&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;vg&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getChildAt&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;i&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
				&lt;span class=&quot;n&quot;&gt;applyTypeFace&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;child&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
			&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
		&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;v&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;instanceof&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;TextView&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
			&lt;span class=&quot;o&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;TextView&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;v&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setTypeface&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;typeface&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
			&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
	&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
	&lt;span class=&quot;c1&quot;&gt;// ...&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Above method should work for the following layout.&lt;/p&gt;

&lt;div class=&quot;language-xml highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;LinearLayout&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;xmlns:android=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;http://schemas.android.com/apk/res/android&quot;&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;xmlns:tools=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;http://schemas.android.com/tools&quot;&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:id=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;@+id/icons_container&quot;&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:layout_width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;match_parent&quot;&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:layout_height=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;match_parent&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;

	&lt;span class=&quot;nt&quot;&gt;&amp;lt;TextView&lt;/span&gt;
		&lt;span class=&quot;na&quot;&gt;android:layout_width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;match_parent&quot;&lt;/span&gt;
		&lt;span class=&quot;na&quot;&gt;android:layout_height=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;wrap_content&quot;&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;/&amp;gt;&lt;/span&gt;

	&lt;span class=&quot;nt&quot;&gt;&amp;lt;TextView&lt;/span&gt;
		&lt;span class=&quot;na&quot;&gt;android:layout_width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;match_parent&quot;&lt;/span&gt;
		&lt;span class=&quot;na&quot;&gt;android:layout_height=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;wrap_content&quot;&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;/&amp;gt;&lt;/span&gt;

	&lt;span class=&quot;nt&quot;&gt;&amp;lt;TextView&lt;/span&gt;
		&lt;span class=&quot;na&quot;&gt;android:layout_width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;match_parent&quot;&lt;/span&gt;
		&lt;span class=&quot;na&quot;&gt;android:layout_height=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;wrap_content&quot;&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;/&amp;gt;&lt;/span&gt;

&lt;span class=&quot;nt&quot;&gt;&amp;lt;/LinearLayout&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;And we can write following code in our &lt;code class=&quot;highlighter-rouge&quot;&gt;Activity&lt;/code&gt; class to apply &lt;code class=&quot;highlighter-rouge&quot;&gt;TypeFace&lt;/code&gt; to all three of &lt;code class=&quot;highlighter-rouge&quot;&gt;TextView&lt;/code&gt; instances at once.&lt;/p&gt;

&lt;div class=&quot;language-java highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;n&quot;&gt;Typeface&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;iconFont&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;FontAwesomeManager&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getTypeface&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;getApplicationContext&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(),&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;FontAwesomeManager&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;FONTAWESOME&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;FontAwesomeManager&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;applyTypeFace&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;findViewById&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;R&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;icons_container&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;),&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;iconFont&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;choose-specific-icons-from-fontawesome&quot;&gt;Choose Specific Icons from FontAwesome&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Go to &lt;a href=&quot;http://fortawesome.github.io/Font-Awesome/icons/&quot;&gt;FontAwesome Icon&lt;/a&gt; Search page.&lt;/li&gt;
  &lt;li&gt;You can choose any of the icon that you like. E.g, let me choose &lt;a href=&quot;http://fortawesome.github.io/Font-Awesome/icon/android/&quot;&gt;Android Icon&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Note down the text &amp;amp; unicode for this icon.&lt;/p&gt;

    &lt;p&gt;&lt;img src=&quot;/uploads/2016/02/android-fontawesome.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;Navigate to &lt;code class=&quot;highlighter-rouge&quot;&gt;app &amp;gt; src &amp;gt; main &amp;gt; res &amp;gt; values&lt;/code&gt;.&lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Create a new directory named &lt;code class=&quot;highlighter-rouge&quot;&gt;icons.xml&lt;/code&gt;. This file will serve as a dictionary. This means that we need to create an entry for each icon. You can add icon entries in this file as follows:&lt;/p&gt;

    &lt;div class=&quot;language-xml highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;resources&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;nt&quot;&gt;&amp;lt;string&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;name=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;fa_android&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;ni&quot;&gt;&amp;amp;#xf17b;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;/string&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;nt&quot;&gt;&amp;lt;string&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;name=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;fa_pie_chart&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;ni&quot;&gt;&amp;amp;#xf200;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;/string&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;nt&quot;&gt;&amp;lt;string&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;name=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;fa_line_chart&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;ni&quot;&gt;&amp;amp;#xf201;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;/string&amp;gt;&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;&amp;lt;/resources&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;apply-icons-to-textview&quot;&gt;Apply Icons to TextView&lt;/h2&gt;

&lt;div class=&quot;language-xml highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;TextView&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:layout_width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;match_parent&quot;&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:layout_height=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;wrap_content&quot;&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:text=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;@string/fa_android&quot;&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;/&amp;gt;&lt;/span&gt;

&lt;span class=&quot;nt&quot;&gt;&amp;lt;TextView&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:layout_width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;match_parent&quot;&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:layout_height=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;wrap_content&quot;&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:text=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;@string/fa_pie_chart&quot;&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;/&amp;gt;&lt;/span&gt;

&lt;span class=&quot;nt&quot;&gt;&amp;lt;TextView&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:layout_width=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;match_parent&quot;&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:layout_height=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;wrap_content&quot;&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;android:text=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;@string/fa_line_chart&quot;&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;/&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;After this, you can simply build you project and launch your app in a simulator/physical device. You should now see the icons correctly rendered.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/uploads/2016/02/android-fontawesome-app.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Of course, you can change the size and color of the icons just like you change for any text in Layout files. They look much more crisp and sharp, as they are rendered at runtime and they are &lt;a href=&quot;http://design.tutsplus.com/tutorials/quick-tip-the-difference-between-vector-and-raster--vector-19396&quot;&gt;vector instead of raster files&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;benefits&quot;&gt;Benefits&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;You don’t have to worry about different screen densities on different smartphones. With FontAwesome, it’s just single &lt;a href=&quot;https://en.wikipedia.org/wiki/TrueType&quot;&gt;TTF&lt;/a&gt; file.
    &lt;ul&gt;
      &lt;li&gt;When you use PNGs as icons for your Android app then you may have to include multiple versions of same icons for different screensizes.&lt;/li&gt;
      &lt;li&gt;Also, in some ultra-dense HD displays, the PNGs may look distortd.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;You can rely on one of the extensive &amp;amp; rich database for icons which is at no cost (at least for now :wink:).&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;problem&quot;&gt;Problem&lt;/h2&gt;

&lt;p&gt;The problem with this method is that you always have to work on text format for these icons. But there are times when you want to add icons for &lt;code class=&quot;highlighter-rouge&quot;&gt;MenuItems&lt;/code&gt; or &lt;code class=&quot;highlighter-rouge&quot;&gt;ImageView&lt;/code&gt; objects where they accept a &lt;code class=&quot;highlighter-rouge&quot;&gt;Drawable&lt;/code&gt; object as a icon. So above method won’t work directly.&lt;/p&gt;

&lt;h2 id=&quot;solution&quot;&gt;Solution&lt;/h2&gt;

&lt;p&gt;You can make use of this hybrid class from &lt;code class=&quot;highlighter-rouge&quot;&gt;Text&lt;/code&gt; &amp;amp; &lt;code class=&quot;highlighter-rouge&quot;&gt;Drawable&lt;/code&gt;, called &lt;a href=&quot;https://github.com/devunwired/textdrawable/&quot;&gt;TextDrawable&lt;/a&gt;. This class extends &lt;code class=&quot;highlighter-rouge&quot;&gt;Drawable&lt;/code&gt; class and appends the functionality of &lt;code class=&quot;highlighter-rouge&quot;&gt;Text&lt;/code&gt; within it so that you can apply &lt;code class=&quot;highlighter-rouge&quot;&gt;TypeFace&lt;/code&gt;, colors, font size and other attributes.&lt;/p&gt;

&lt;p&gt;You can simply create a &lt;code class=&quot;highlighter-rouge&quot;&gt;TextDrawable&lt;/code&gt; object, set the font string for the object and pass it to &lt;code class=&quot;highlighter-rouge&quot;&gt;setIcon()&lt;/code&gt; method of any view object. And that should work.&lt;/p&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;div class=&quot;language-java highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;c1&quot;&gt;// ...&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;TextDrawable&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;faIcon&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;TextDrawable&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;faIcon&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setTextSize&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;TypedValue&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;COMPLEX_UNIT_DIP&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;mi&quot;&gt;20&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;faIcon&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setTextAlign&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;Layout&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;Alignment&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;ALIGN_CENTER&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;faIcon&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setTypeface&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;FontAwesomeManager&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getTypeface&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;FontAwesomeManager&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;FONTAWESOME&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;));&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;faIcon&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setText&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;getResources&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;().&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;getText&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;R&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;string&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;fa_android&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;));&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;Menu&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;menu&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;Menu&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;findViewById&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;R&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;menu&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;MenuItem&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;menuItem&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;menu&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;findItem&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;R&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;menu_item&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;menuItem&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setIcon&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;faIcon&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;// ...&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
</content>
 </entry>
 
 <entry>
   <title>mtr not working in Mac OS X</title>
   <link href="http://blog.incognitech.in/mtr-not-working-in-mac-os-x/"/>
   <updated>2015-05-27T16:39:28+00:00</updated>
   <id>http://blog.incognitech.in/mtr-not-working-in-mac-os-x</id>
   <content type="html">
&lt;h2 id=&quot;problem&quot;&gt;Problem&lt;/h2&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;mtr google.com
mtr: unable to get raw sockets.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;solution&quot;&gt;Solution&lt;/h2&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;c&quot;&gt;# Follow your version for mtr with `0.86`&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;sudo &lt;/span&gt;chown root:wheel /usr/local/Cellar/mtr/0.86/sbin/mtr
&lt;span class=&quot;nb&quot;&gt;sudo &lt;/span&gt;chmod u+s /usr/local/Cellar/mtr/0.86/sbin/mtr
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;problem-1&quot;&gt;Problem&lt;/h2&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;mtr google.com
mtr: &lt;span class=&quot;nb&quot;&gt;command &lt;/span&gt;not found
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;solution-1&quot;&gt;Solution&lt;/h2&gt;

&lt;p&gt;Add following line entry in your &lt;code class=&quot;highlighter-rouge&quot;&gt;.bash_profile&lt;/code&gt; / &lt;code class=&quot;highlighter-rouge&quot;&gt;.bashrc&lt;/code&gt; / &lt;code class=&quot;highlighter-rouge&quot;&gt;.zshrc&lt;/code&gt; file.&lt;/p&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nb&quot;&gt;alias &lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;mtr&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;/usr/local/sbin/mtr
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
</content>
 </entry>
 
 <entry>
   <title>Extra HTTP Auth User for EasyEngine</title>
   <link href="http://blog.incognitech.in/extra-http-auth-user-for-easyengine/"/>
   <updated>2015-05-27T16:39:28+00:00</updated>
   <id>http://blog.incognitech.in/extra-http-auth-user-for-easyengine</id>
   <content type="html">
&lt;p&gt;Add a new user for HTTP Auth in EasyEngine setup.&lt;/p&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;openssl passwd &lt;span class=&quot;nt&quot;&gt;-crypt&lt;/span&gt; &amp;lt;plain-text-password&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Above command will print the encrypted password on the console. Copy the encrypted password.&lt;/p&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nb&quot;&gt;cd&lt;/span&gt; /etc/nginx
vim htpasswd-ee
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Add following exact line at the end.&lt;/p&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&amp;lt;username&amp;gt;:&amp;lt;encrypted-password&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Save the file.&lt;/p&gt;

&lt;p&gt;You can commit this change if you want since EasyEngine keeps the nginx directory under version control.&lt;/p&gt;

&lt;p&gt;And That’s it ! You’re good to go with following credentials for your HTTP Auth.&lt;/p&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;username : &amp;lt;username&amp;gt;
password : &amp;lt;plain-text-password&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
</content>
 </entry>
 
 <entry>
   <title>Dear Woman</title>
   <link href="http://blog.incognitech.in/dear-woman/"/>
   <updated>2015-04-15T16:39:28+00:00</updated>
   <id>http://blog.incognitech.in/dear-woman</id>
   <content type="html">&lt;h1 id=&quot;dear-woman&quot;&gt;Dear Woman,&lt;/h1&gt;

&lt;p&gt;Sometimes,&lt;br /&gt;
You’ll just be too much woman.&lt;br /&gt;
Too smart,&lt;br /&gt;
Too beautiful,&lt;br /&gt;
Too strong,&lt;br /&gt;
Too much of something&lt;br /&gt;
That makes a man feel like less of a man,&lt;br /&gt;
Which will start making you feel like you have to be less of a woman.&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;The bigger mistake you can make&lt;br /&gt;
Is removing jewels from your crown&lt;br /&gt;
To make it easier for a man to carry.&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;When this happens, I need you to understand,&lt;br /&gt;
You do not need a smaller crown–&lt;br /&gt;
You need  man with bigger hands.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>TinyMCE Undefined Issue</title>
   <link href="http://blog.incognitech.in/tinymce-undefined-issue/"/>
   <updated>2015-01-28T16:39:28+00:00</updated>
   <id>http://blog.incognitech.in/tinymce-undefined-issue</id>
   <content type="html">&lt;p&gt;WordPress supports a very rich WYSIWYG editor in terms of TinyMCE. It works perfectly well when we, ( here I’m referring to all the geeky developers :godmode: :wink: ) do not temper with the content of TinyMCE through JS code. In a nutshell, it is smooth and valid. But it happens very rare that we do not have to customize the way a feature behaves by default. So in this case, we may have to add new content or update the existing content or in some cases clear out the content in the editor.&lt;/p&gt;

&lt;p&gt;On the first thought, our mind comes with this great and very simple idea that let’s write this awesome JS code bound to some event which would add/update/remove the content using TinyMCE API that is exposed to common developer. So we write some sort of following pseudo logic.&lt;/p&gt;

&lt;div class=&quot;language-javascript highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nx&quot;&gt;jQuery&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;ready&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;

	&lt;span class=&quot;nx&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;.class-to-update-content&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;on&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;click&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;e&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
		&lt;span class=&quot;nx&quot;&gt;tinyMCE&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kd&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;tinymce-editor-id&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;setContent&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;New Content in Editor&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
	&lt;span class=&quot;p&quot;&gt;});&lt;/span&gt;

	&lt;span class=&quot;nx&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;.class-to-get-content&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;on&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;click&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;e&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
		&lt;span class=&quot;nx&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;div.display-block&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;html&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;tinyMCE&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kd&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;tinymce-editor-id&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;getContent&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
	&lt;span class=&quot;p&quot;&gt;});&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;We feel like we’re on the top of the world after writing this cool piece of code :innocent:. We are all set to test out the code on our webpage. At first, it might have worked on our local environment. And we think that this is the code that’s going to work and immediately push to code to staging environment. And that’s where the catch comes and it traps us. Someone from the QA team or some other developer reports a bug saying WYSIWYG editor is not working and you’re like What the Fish :open_mouth: !&lt;/p&gt;

&lt;p&gt;And then you check and you find that JS code is really breaking the editor and you may see following error or similar one.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/uploads/2015/01/tinymce-undefined-issue-1.png&quot; alt=&quot;TinyMCE Undefined Issue&quot; /&gt;&lt;/p&gt;

&lt;p&gt;The real issue here is that TinyMCE has not finished initializing itself when you get the error. It has to load a script from the configured &lt;code class=&quot;highlighter-rouge&quot;&gt;script_url&lt;/code&gt;. That may take a while.&lt;/p&gt;

&lt;p&gt;One solution out of WordPress is that you make use of a callback such as &lt;a href=&quot;http://www.tinymce.com/wiki.php/Configuration3x:oninit&quot;&gt;oninit&lt;/a&gt;.&lt;/p&gt;

&lt;div class=&quot;language-javascript highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;myCustomOnInit&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
	&lt;span class=&quot;nx&quot;&gt;alert&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;We are ready to rumble!!&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
	&lt;span class=&quot;c1&quot;&gt;// So here you can bind your events and other stuff.&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;nx&quot;&gt;tinyMCE&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;init&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;({&lt;/span&gt;
	&lt;span class=&quot;p&quot;&gt;...&lt;/span&gt;
	&lt;span class=&quot;na&quot;&gt;oninit&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;myCustomOnInit&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;But in WordPress environment, initialization of TinyMCE is not in our control. Because WordPress handles that itself.&lt;/p&gt;

&lt;p&gt;So for that we have to put a fallback to prevent this error as follows:&lt;/p&gt;

&lt;div class=&quot;language-javascript highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nx&quot;&gt;jQuery&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;ready&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;

	&lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;myCustomSetContent&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;content&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
		&lt;span class=&quot;c1&quot;&gt;// Check if TinyMCE is defined or not.&lt;/span&gt;
		&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;typeof&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;tinymce&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;undefined&quot;&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
			&lt;span class=&quot;kd&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;tinymce&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kd&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;id&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
			&lt;span class=&quot;c1&quot;&gt;// Check if TinyMCE is initialized properly or not.&lt;/span&gt;
			&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;instanceof&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;tinymce&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;Editor&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
				&lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;setContent&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;text&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
				&lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;save&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;no_events&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
			&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
				&lt;span class=&quot;c1&quot;&gt;// Fallback&lt;/span&gt;
				&lt;span class=&quot;c1&quot;&gt;// If TinyMCE is not initialized then directly set the value in textarea.&lt;/span&gt;
				&lt;span class=&quot;c1&quot;&gt;//TinyMCE will take up this value when it gets initialized.&lt;/span&gt;
				&lt;span class=&quot;nx&quot;&gt;jQuery&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;'#'&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;id&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;val&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;text&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
			&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
			&lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
		&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
		&lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
	&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;

	&lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;myCustomGetContent&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;id&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
		&lt;span class=&quot;c1&quot;&gt;// Check if TinyMCE is defined or not.&lt;/span&gt;
		&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;typeof&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;tinymce&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;undefined&quot;&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
			&lt;span class=&quot;kd&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;tinymce&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;kd&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;id&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
			&lt;span class=&quot;c1&quot;&gt;// Check if TinyMCE is initialized properly or not.&lt;/span&gt;
			&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;instanceof&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;tinymce&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;Editor&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
				&lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;editor&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;getContent&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;();&lt;/span&gt;
			&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
				&lt;span class=&quot;c1&quot;&gt;// Fallback&lt;/span&gt;
				&lt;span class=&quot;c1&quot;&gt;// If TinyMCE is not initialized then directly set the value in textarea.&lt;/span&gt;
				&lt;span class=&quot;c1&quot;&gt;// TinyMCE will take up this value when it gets initialized.&lt;/span&gt;
				&lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;jQuery&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;'#'&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;id&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;val&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;();&lt;/span&gt;
			&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
		&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
		&lt;span class=&quot;k&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;''&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
	&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;

	&lt;span class=&quot;nx&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;.class-to-update-content&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;on&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;click&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;e&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
		&lt;span class=&quot;nx&quot;&gt;myCustomSetContent&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;tinymce-editor-id&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;New Content in Editor&quot;&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
	&lt;span class=&quot;p&quot;&gt;});&lt;/span&gt;

	&lt;span class=&quot;nx&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;.class-to-get-content&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;on&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;click&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;e&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
		&lt;span class=&quot;nx&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;div.class-to-display-content&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;html&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;myCustomGetContent&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;tinymce-editor-id&quot;&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
	&lt;span class=&quot;p&quot;&gt;});&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;This way we can fix this sort of TinyMCE undefined
issues.&lt;/p&gt;

&lt;p&gt;Hope this helps :smile:&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>No caption needed <3</title>
   <link href="http://blog.incognitech.in/no-caption-needed/"/>
   <updated>2014-10-11T09:11:53+00:00</updated>
   <id>http://blog.incognitech.in/no-caption-needed</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://photos-g.ak.instagram.com/hphotos-ak-xfa1/10725164_464837470324790_466457238_n.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://instagram.com/p/uAbANFkfBW/&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Multiple Instances of Skype</title>
   <link href="http://blog.incognitech.in/multiple-instances-of-skype/"/>
   <updated>2014-09-27T15:56:30+00:00</updated>
   <id>http://blog.incognitech.in/multiple-instances-of-skype</id>
   <content type="html">&lt;p&gt;Follow these steps to run multiple instances of Skype on same machine.&lt;/p&gt;

&lt;h3 id=&quot;windows&quot;&gt;Windows&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;From the Windows taskbar, click &lt;strong&gt;Start&lt;/strong&gt; &amp;gt; &lt;strong&gt;Run&lt;/strong&gt; (or press the &lt;strong&gt;Windows&lt;/strong&gt; &lt;img src=&quot;/uploads/2014/09/fa829.png&quot; alt=&quot;Windows&quot; /&gt; + &lt;strong&gt;R&lt;/strong&gt; keys on your keyboard at the same time).&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;In the Run window, type the following command (including the quotes) and press &lt;strong&gt;Ok&lt;/strong&gt;:&lt;/p&gt;

    &lt;ul&gt;
      &lt;li&gt;For 32-bit operating systems: &lt;code class=&quot;highlighter-rouge&quot;&gt;&quot;C:Program FilesSkypePhoneSkype.exe&quot; /secondary&lt;/code&gt;&lt;/li&gt;
      &lt;li&gt;For 64-bit operating systems: &lt;code class=&quot;highlighter-rouge&quot;&gt;&quot;C:Program Files (x86)SkypePhoneSkype.exe&quot; /secondary&lt;/code&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;linux&quot;&gt;Linux&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;Press &lt;strong&gt;Alt + F2&lt;/strong&gt; and type the following command: &lt;code class=&quot;highlighter-rouge&quot;&gt;skype --secondary&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Alternative :&lt;/strong&gt; Open a terminal and use the following command in it: &lt;code class=&quot;highlighter-rouge&quot;&gt;skype --secondary &amp;amp;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;mac&quot;&gt;Mac&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;Use this command in terminal: &lt;code class=&quot;highlighter-rouge&quot;&gt;sudo /Applications/Skype.app/Contents/MacOS/Skype /secondary&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
</content>
 </entry>
 
 <entry>
   <title>Temporary DB tables in WordPress PhpUnit</title>
   <link href="http://blog.incognitech.in/temporary-db-tables-in-wordpress-phpunit/"/>
   <updated>2014-09-27T15:23:41+00:00</updated>
   <id>http://blog.incognitech.in/temporary-db-tables-in-wordpress-phpunit</id>
   <content type="html">&lt;p&gt;When we set up &lt;a href=&quot;https://make.wordpress.org/core/handbook/automated-testing?&quot;&gt;WordPress-PhpUnit Environment&lt;/a&gt;, to automate test-cases for our plugin/theme (mainly plugins, I’ve not come across any WP theme which has test cases written for it), we either set it up &lt;a href=&quot;http://ben.lobaugh.net/blog/84669/how-to-add-unit-testing-and-continuous-integration-to-your-wordpress-plugin&quot;&gt;manually&lt;/a&gt; or we take help of &lt;a href=&quot;https://github.com/wp-cli/wp-cli/wiki/Plugin-Unit-Tests&quot;&gt;WP-CLI&lt;/a&gt; to build the scaffolding of our plugin. WordPress has an amazing &lt;a href=&quot;https://develop.svn.wordpress.org/trunk/tests/phpunit/includes/testcase.php&quot;&gt;testcase wrapper class&lt;/a&gt; for PhpUnit that can be used when we make out plugin testable.&lt;/p&gt;

&lt;p&gt;Of course, when our plugin does not deal with database then we do not have to worry about as our plugin will only make use of the readily available tables of WordPress and there will not be any need to introduce new database tables. But if we deal with database tables through our plugin then we need these tables when we perform test-cases using PhpUnit. &lt;a href=&quot;http://codex.wordpress.org/Class_Reference/wpdb&quot;&gt;wpdb&lt;/a&gt; &amp;amp; &lt;a href=&quot;http://codex.wordpress.org/Creating_Tables_with_Plugins&quot;&gt;dbDelta&lt;/a&gt; gives you enough power to play with database tables in your plugin. But when we are in PhpUnit environment, schematics are a bit different. WordPress testcase wrapper creates temporary DB tables in WordPress PhpUnit environment. What this means is when we execute test-cases for our plugin, the built-in wrapper class - mentioned before - tells WordPress to create temporary (virtual) tables in MySql and NOT permanent (actual) tables (&lt;a href=&quot;https:&amp;#47;&amp;#47;core.trac.wordpress.org&amp;#47;changeset&amp;#47;27041&amp;#47;trunk&amp;#47;tests&amp;#47;phpunit&amp;#47;includes&amp;#47;testcase.php&quot;&gt;Reference&lt;/a&gt;). Because of this, your test-cases related DB tables will only exist during the PhpUnit execution. They will be destroyed from the memory.&lt;/p&gt;

&lt;p&gt;The sole purpose of such mechanism is to keep the test data away from the database and not bloat the memory with corrupt data, keeping the database intact. If this is the case then you’re good to go; but there are times when we can’t move ahead and believe that everything is working absolutely fine until we see the actual results :wink:. We might need those database table to retain its state even after the PhpUnit execution. In that case we can use following solution:&lt;/p&gt;

&lt;p&gt;Override &lt;code class=&quot;highlighter-rouge&quot;&gt;setUp&lt;/code&gt; method of &lt;code class=&quot;highlighter-rouge&quot;&gt;WP_UnitTestCase&lt;/code&gt; class in your own testcase class. The method definition should look as follows:&lt;/p&gt;

&lt;div class=&quot;language-php highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;k&quot;&gt;function&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;setUp&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
	&lt;span class=&quot;c1&quot;&gt;// Perform the actual task according to parent class.
&lt;/span&gt;	&lt;span class=&quot;k&quot;&gt;parent&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;setUp&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;();&lt;/span&gt;
	&lt;span class=&quot;c1&quot;&gt;// Remove filters that will create temporary tables. So that permanent tables will be created.
&lt;/span&gt;	&lt;span class=&quot;nx&quot;&gt;remove_filter&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;'query'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;$this&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;'_create_temporary_table'&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
	&lt;span class=&quot;nx&quot;&gt;remove_filter&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;'query'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;array&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;$this&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;'_drop_temporary_table'&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Above code will do the trick. Happy coding &amp;amp; testing ! :smile:&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Skype Notification Sound Distorted in Ubuntu</title>
   <link href="http://blog.incognitech.in/skype-notification-sound-distorted-ubuntu/"/>
   <updated>2014-07-17T21:21:29+00:00</updated>
   <id>http://blog.incognitech.in/skype-notification-sound-distorted-ubuntu</id>
   <content type="html">&lt;p&gt;It has been noticed and seems to be a common problem in Linux Community users that Skype doesn’t get along well with Linux Distros. Recently I upgraded to Ubuntu 14.04 &amp;amp; I was sure enough that it’s not going to be in peace for long. The very first problem I observed that the Skype notification sound distorted in Ubuntu when it played &amp;amp; also the distortion continued unless I logged out or shut down the machine.&lt;/p&gt;

&lt;p&gt;Here are simple steps to follow in order to fix this issue:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Open the file &lt;code class=&quot;highlighter-rouge&quot;&gt;/etc/pulse/default.pa&lt;/code&gt; in your favorite text editor with root privileges. E.g., &lt;code class=&quot;highlighter-rouge&quot;&gt;sudo vim /etc/pulse/default.pa&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;Search for the line : &lt;code class=&quot;highlighter-rouge&quot;&gt;load-module module-hal-detect&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;Append &lt;code class=&quot;highlighter-rouge&quot;&gt;tsched=0&lt;/code&gt; to the end. i.e., &lt;code class=&quot;highlighter-rouge&quot;&gt;load-module module-hal-detect tsched=0&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;Restart pulse or just restart your machine &amp;amp; the distortion should be gone.&lt;/li&gt;
  &lt;li&gt;If you do not have a line with &lt;code class=&quot;highlighter-rouge&quot;&gt;load-module module-hal-detect&lt;/code&gt; then search for the line: &lt;code class=&quot;highlighter-rouge&quot;&gt;load-module module-udev-detect&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;Append &lt;code class=&quot;highlighter-rouge&quot;&gt;tsched=0&lt;/code&gt; to the end. i.e., &lt;code class=&quot;highlighter-rouge&quot;&gt;load-module module-udev-detect tsched=0&lt;/code&gt;. And then restart the machine.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;NOTE :&lt;/strong&gt; Not sure what the side effects are by disabling Glitch Free Audio; but hey, at least it doesn’t bug you with its annoying sound anymore :wink: :smile:&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>#Apple <3</title>
   <link href="http://blog.incognitech.in/apple/"/>
   <updated>2014-07-15T05:48:37+00:00</updated>
   <id>http://blog.incognitech.in/apple</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://scontent-b.cdninstagram.com/hphotos-xpf1/t51.2885-15/10546982_824717904259703_387910323_n.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1rm6ZQZ&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Probably Kavish's first #selfie wid Mamu jaans</title>
   <link href="http://blog.incognitech.in/probably-kavishs-first-selfie-wid-mamu-jaans/"/>
   <updated>2014-07-05T02:05:24+00:00</updated>
   <id>http://blog.incognitech.in/probably-kavishs-first-selfie-wid-mamu-jaans</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://scontent-a.cdninstagram.com/hphotos-xfa1/t51.2885-15/10499110_744950732235018_163880288_n.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/Vnc9RD&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Nikoning out bright</title>
   <link href="http://blog.incognitech.in/nikoning-out-bright/"/>
   <updated>2014-07-03T06:55:18+00:00</updated>
   <id>http://blog.incognitech.in/nikoning-out-bright</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://scontent-b.cdninstagram.com/hphotos-xpf1/t51.2885-15/891392_285519241630729_13953874_n.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1xitcC3&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Got Leh'd</title>
   <link href="http://blog.incognitech.in/got-lehd/"/>
   <updated>2014-06-05T01:56:28+00:00</updated>
   <id>http://blog.incognitech.in/got-lehd</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://scontent-a.cdninstagram.com/hphotos-xpf1/t51.2885-15/10449146_723201424388084_676514306_n.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1pFtstv&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Creaturous Crab or Delicious Dinner !</title>
   <link href="http://blog.incognitech.in/creaturous-crab-or-delicious-dinner/"/>
   <updated>2014-05-19T02:19:36+00:00</updated>
   <id>http://blog.incognitech.in/creaturous-crab-or-delicious-dinner</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://origincache-prn.fbcdn.net/1172153_247444048792853_729320517_n.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1oEuPIx&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Ladakh Calling</title>
   <link href="http://blog.incognitech.in/ladakh-calling/"/>
   <updated>2014-05-18T03:37:48+00:00</updated>
   <id>http://blog.incognitech.in/ladakh-calling</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://origincache-prn.fbcdn.net/926767_742735845778922_2031321620_n.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1jptXFr&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>And suddenly you realise this is how you've spent your childhood #Nostalgic #Childhood</title>
   <link href="http://blog.incognitech.in/and-suddenly-you-realise-this-is-how-youve-spent-your-childhood-nostalgic-childhood/"/>
   <updated>2014-05-15T18:35:45+00:00</updated>
   <id>http://blog.incognitech.in/and-suddenly-you-realise-this-is-how-youve-spent-your-childhood-nostalgic-childhood</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://origincache-prn.fbcdn.net/929087_732007613509876_2115874665_n.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/RTKWEn&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>#HappilyUnmarried</title>
   <link href="http://blog.incognitech.in/happilyunmarried/"/>
   <updated>2014-05-13T02:41:53+00:00</updated>
   <id>http://blog.incognitech.in/happilyunmarried</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://origincache-prn.fbcdn.net/10268822_1449690435277346_248936190_n.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1sluw2D&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Stream Extensions</title>
   <link href="http://blog.incognitech.in/stream-extensions/"/>
   <updated>2014-05-07T23:14:18+00:00</updated>
   <id>http://blog.incognitech.in/stream-extensions</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;/uploads/2014/05/Screenshot-from-2014-05-07-174126.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://x-team.com/&quot;&gt;X-Team&lt;/a&gt; has come with their new release on WordPress plugin &lt;a href=&quot;https://wp-stream.com&quot;&gt;Stream&lt;/a&gt;. This new release has come with a full support for their Stream extensions. Stream extensions are basically add-ons on top of the Stream which enhances the functionality of Stream.&lt;/p&gt;

&lt;p&gt;As of now they have launched 4 extensions which are already listed on their website. With these you can take your blog’s user activities to the next level.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/uploads/2014/05/Screenshot-from-2014-05-07-174526-472x180.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Cherry Pick&lt;/strong&gt;&lt;/p&gt;

    &lt;ul&gt;
      &lt;li&gt;Delete Any Row With A Single Click - With Cherry Pick you simply hover over any row and a “Delete” option appears.&lt;/li&gt;
      &lt;li&gt;Delete Multiple Rows At Once - Each row has a check box next to it, as well as a check box at the top and bottom for choosing all rows. Once you’ve selected what you wish, simply click the “Delete” button at the bottom to remove those rows.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Data Exporter&lt;/strong&gt;&lt;/p&gt;

    &lt;ul&gt;
      &lt;li&gt;Export only the data you need - The Data Exporter extension can filter your data by Date, Author, Connector, Context and Action. This allows you to export specific subsets of your data, or you can leave the filters empty to just export everything.&lt;/li&gt;
      &lt;li&gt;A variety of data file formats - You can export your data in the most common modern formats CSV, JSON and XML. Optionally, you can also include all Stream record meta data into your exported file.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Notifications&lt;/strong&gt;&lt;/p&gt;

    &lt;ul&gt;
      &lt;li&gt;Managing your rules is easy - Search, sort and manage all of your notification rules quickly and easily. Create as many rules as you need and see which ones happen the most.&lt;/li&gt;
      &lt;li&gt;Smart and powerful trigger matching - Fine-grained control of your notification rules with nested trigger groups in an easy-to-use interface. You make the rules, and Stream Notifications will make sure you’re always in the loop.&lt;/li&gt;
      &lt;li&gt;Fully customized e-mail alerts - Alert yourself or your entire team by e-mail each time someone’s activity triggers a rule. Custom-tailor the e-mail subject and message with dynamic data tags.&lt;/li&gt;
      &lt;li&gt;Push alerts to your smartphone or tablet - Get real-time push alerts to your smartphone or tablet when rules are triggered. Powered by &lt;a href=&quot;https://pushover.net/&quot;&gt;Pushover&lt;/a&gt;, a free push service that is iPhone, iPad, iPod Touch and Android compatible.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Reports&lt;/strong&gt;&lt;/p&gt;

    &lt;ul&gt;
      &lt;li&gt;Fully-interactive charts - Bring your Stream activity data to life with fully-interactive charts. Reports makes it easy to spot patterns in the various ways your site is being updated.&lt;/li&gt;
      &lt;li&gt;Monitor team contributions - Identify the top performers on your content team so they can be rewarded with high fives! See at a glance which actions have been performed on your site the most within a specified time period.&lt;/li&gt;
      &lt;li&gt;Responsive for any screen size - Reports are responsive for any screen size, so you can pull up activity visualizations from the office or on-the-go. Adjust the height and number of columns so your historical data is displayed exactly the way you want.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;img src=&quot;/uploads/2014/05/cherry_pick_multiple_delete-770x422-472x258.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/05/cherry_pick_single_row_delete-770x422-472x258.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/05/data_exporter_file_formats-770x422-472x258.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/05/data_exporter_filter_options-770x422-472x258.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/05/notifications-email-770x422-472x258.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/05/notifications-list-770x422-472x258.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/05/notifications-push-770x422-472x258.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/05/notifications-triggers-770x422-472x258.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/05/reports-interactive-716x422-451x266.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/05/reports-responsive-770x422-472x258.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/05/reports-team-718x422-452x266.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Before jumping ahead; X-team business modal for these extensions should be known. X-team is calling it its Membership plan which includes 3 segments named : Personal, Business &amp;amp; Developer with respective &lt;a href=&quot;https://wp-stream.com/#pricing&quot;&gt;pricing &amp;amp; criteria&lt;/a&gt; for each segments. You join for &lt;a href=&quot;https://wp-stream.com/join/?ref=8&quot;&gt;Stream’s membership&lt;/a&gt; &amp;amp; you get access to all the premium extensions which you can use in you website keeping their membership criteria in mind.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Catch 22s - Life is full of it</title>
   <link href="http://blog.incognitech.in/catch-22s-life-is-full-of-it/"/>
   <updated>2014-04-26T07:35:39+00:00</updated>
   <id>http://blog.incognitech.in/catch-22s-life-is-full-of-it</id>
   <content type="html">&lt;p&gt;Many times it happens in life, at least it happens with me; that you keep finding the opposites mangling around with you and it becomes so obsessive that every single fraction of your mind keep seeking that opposite meanings clashing with each other ever. Sometime it makes sense; sometimes it doesn’t. Sometimes it just doesn’t let you think the sane way.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;h2 id=&quot;every-now-has-its-own-right-time&quot;&gt;&lt;em&gt;Every “Now” has its own right time.&lt;/em&gt;&lt;/h2&gt;
&lt;/blockquote&gt;

&lt;p&gt;But again this whole &lt;em&gt;“making sense”&lt;/em&gt; thing, being sane or insane; is all about perception and I’ve always believed this thing about perception that it really settles the case just by saying these simple magic words that &lt;em&gt;“It doesn’t matter because it’s all about perceptions and priorities.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Anyway, the point is the world have always taken interest in contradiction and I just love the way this whole drama is created between those two entities within the contradiction. If you look closely around, if you see through all the things around, all the incidents that happen in our day-to-day life; it’s just not that hard to find such catches. Life is full of contradictions, oxymorons and ironies. As we get older, decisions become harder and consequences become greater. Nothing comes without a price and everything forces you to make a small sacrifice. Unfortunately (and fortunately) for our generation, we now know the ramifications of the things we do, unlike the generations before.&lt;/p&gt;

&lt;p&gt;While I am grateful for all that we’ve learned from earlier generations, I can’t help but look at all the knowledge we’ve acquired as a reason to make no decisions at all. We know so much that it’s hard to make a move without spending all your time weighing the pros and cons of every minute decision.&lt;/p&gt;

&lt;p&gt;Then again, maybe we’re just young and starting to realize that life is about choices. Life is about dealing with the shit and making the everyday decisions we used to leave to our parents. And I think that’s what makes being in your twenties so thrilling and absolutely terrifying.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;h2 id=&quot;were-still-young-enough-to-act-like-kids-but-old-enough-to-live-like-adults&quot;&gt;&lt;em&gt;“We’re still young enough to act like kids, but old enough to live like adults.”&lt;/em&gt;&lt;/h2&gt;
&lt;/blockquote&gt;

&lt;p&gt;Broke adults, of course. And being broke, we’re faced with many more challenges and &lt;em&gt;“Catch 22s”&lt;/em&gt; because we don’t have the options that money can buy. So these twenties with all the vigor of a roller coaster, where it seems like everything is asking for a piece of your soul, and crossing the street comes with its own paradox, a list of all the Catch 22s of twenties that can drive you crazy:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Life - Fun, Age and yourself:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;If you choose to smoke cigarettes, you are enjoying yourself now, but harming yourself later.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;If we go tanning we’ll be hotter, but we’ll age earlier. So is it worth it ?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;If you’re hotter now, will you get married sooner ? And if you get married earlier, will it not matter how badly you’re aging ?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;College:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;Go to college to get a job, get a job to pay off college.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Drugs:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;Smoke weed to do better work and make more money, spend all your hard-earned money on buying more weed.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bread:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;The cheapest food to buy, the most expensive to work off.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dating:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;When you’re single you just want to be in a relationship, when you’re in a relationship you just want to be single.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Older Men:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;Date them because they’re old, break up with them because they’re old.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Birth Control:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;If you don’t take it, you’ll get pregnant. If you do take it, you’ll never get pregnant, ever.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tanning:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;Do it, look hot now. Don’t do it, look hot later.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tattoos:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;Get them to piss off your parents, end up becoming a parent with tattoos.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Broker Fees:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;You can’t find an apartment without a broker, can’t get an apartment after broker fees.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Roommates:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;Can’t live with them, can’t afford to live without them.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Alcohol:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;Drink to feel better after bad day at work, feel sick at work the next day and piss off your boss again.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Beards:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;Grow one and get a girl, grow one and look like you live in Brooklyn.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Friends:&lt;/strong&gt;&lt;br /&gt;
&lt;em&gt;Need them for your sanity, lose your sanity when you’re with them.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;And the below one is just perfect in its own contrast way:&lt;/p&gt;

&lt;p&gt;I hate the way you talk to me,&lt;br /&gt;
and the way you cut your hair.&lt;br /&gt;
I hate the way you drive my car,&lt;br /&gt;
I hate it when you stare.&lt;br /&gt;
I hate your big dumb combat boots&lt;br /&gt;
and the way you read my mind.&lt;br /&gt;
I hate you so much it makes me sick,&lt;br /&gt;
it even makes me rhyme.&lt;br /&gt;
I hate the way you’re always right,&lt;br /&gt;
I hate it when you lie.&lt;br /&gt;
I hate it when you make me laugh,&lt;br /&gt;
even worse when you make me cry.&lt;br /&gt;
I hate it when you’re not around,&lt;br /&gt;
and the fact that you didn’t call.&lt;br /&gt;
But mostly I hate the way I don’t hate you,&lt;br /&gt;
not even close …&lt;br /&gt;
not even a little bit …&lt;br /&gt;
not even at all.&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;And last but not the least:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;h2 id=&quot;here-is-the-silence-so-loud-&quot;&gt;&lt;em&gt;Here is the Silence; So Loud …&lt;/em&gt;&lt;/h2&gt;
&lt;/blockquote&gt;
</content>
 </entry>
 
 <entry>
   <title>#Nautilus: Speakers worth 7lacs or Open Source "FREE" file explorer !! Use at your peace ;)</title>
   <link href="http://blog.incognitech.in/nautilus-speakers-worth-7lacs-or-open-source-free-file-explorer-use-at-your-peace/"/>
   <updated>2014-04-23T18:40:25+00:00</updated>
   <id>http://blog.incognitech.in/nautilus-speakers-worth-7lacs-or-open-source-free-file-explorer-use-at-your-peace</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://origincache-prn.fbcdn.net/10261328_1484556481758727_550060817_n.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1mxWhUZ&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Alot can happen over a #coffee</title>
   <link href="http://blog.incognitech.in/alot-can-happen-over-a-coffee/"/>
   <updated>2014-04-22T22:59:40+00:00</updated>
   <id>http://blog.incognitech.in/alot-can-happen-over-a-coffee</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://origincache-prn.fbcdn.net/10246193_614031552013580_1328957889_n.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1jCOoLo&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>WhatsApp on Ubuntu</title>
   <link href="http://blog.incognitech.in/whatsapp-on-ubuntu/"/>
   <updated>2014-03-27T07:41:07+00:00</updated>
   <id>http://blog.incognitech.in/whatsapp-on-ubuntu</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;/uploads/2014/03/ubuntuwhatsapp2-257x266.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;installation-and-configuration&quot;&gt;Installation and configuration&lt;/h2&gt;

&lt;ol&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;apt-get install python python-dateutil python-argparse&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;wget https://github.com/tgalal/yowsup/archive/master.zip&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;unzip master.zip&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;cd yowsup-master/src&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;cp config.example yowsup-cli.config&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;cat yowsup-cli.config&lt;/code&gt;&lt;/p&gt;

    &lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nv&quot;&gt;cc&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;34
&lt;span class=&quot;nv&quot;&gt;phone&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;34123456789
&lt;span class=&quot;nv&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;
&lt;span class=&quot;nv&quot;&gt;password&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;chmod +x yowsup-cli&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;./yowsup-cli --requestcode sms --config yowsup-cli.config&lt;/code&gt;&lt;/p&gt;

    &lt;pre&gt;&lt;code class=&quot;language-`shell&quot;&gt;status: sent
retry_after: 3605
length: 6
method: sms
&lt;/code&gt;&lt;/pre&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;./yowsup-cli --register 123-456 --config yowsup-cli.config&lt;/code&gt;&lt;/p&gt;

    &lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;status: ok
kind: free
pw: &lt;span class=&quot;nv&quot;&gt;S1nBGCvZhb6TBQrbm2sQCfSLkXM&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;
price: 0,89
price_expiration: 1362803446
currency: EUR
cost: 0.89
expiration: 1391344106
login: 34123456789
&lt;span class=&quot;nb&quot;&gt;type&lt;/span&gt;: new
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Copy the &lt;code class=&quot;highlighter-rouge&quot;&gt;pw&lt;/code&gt; field from the output &amp;amp; paste it in front of &lt;code class=&quot;highlighter-rouge&quot;&gt;password&lt;/code&gt; field in the &lt;code class=&quot;highlighter-rouge&quot;&gt;yowsup-cli.config&lt;/code&gt;. Your &lt;code class=&quot;highlighter-rouge&quot;&gt;yowsup-cli.config&lt;/code&gt; should look like below: &lt;code class=&quot;highlighter-rouge&quot;&gt;cat yowsup-cli.config&lt;/code&gt;&lt;/p&gt;

    &lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nv&quot;&gt;cc&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;34
&lt;span class=&quot;nv&quot;&gt;phone&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;34123456789
&lt;span class=&quot;nv&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;
&lt;span class=&quot;nv&quot;&gt;password&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;S1nBGCvZhb6TBQrbm2sQCfSLkXM&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id=&quot;send-a-message&quot;&gt;Send a message&lt;/h2&gt;

&lt;p&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;./yowsup-cli --send 34111222333 &quot;Test message&quot; --wait --config yowsup-cli.config&lt;/code&gt;&lt;/p&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;Connecting to c.whatsapp.net
Authed 34123456789
Sent message
Got sent receipt
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;receive-messages&quot;&gt;Receive messages&lt;/h2&gt;

&lt;p&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;./yowsup-cli --listen --autoack --keepalive --config yowsup-cli.config&lt;/code&gt;&lt;/p&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;Connecting to c.whatsapp.net
Authed 34123456789
34111222333@s.whatsapp.net &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;02-02-2013 14:14]:I have received a &lt;span class=&quot;nb&quot;&gt;test &lt;/span&gt;message from you
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;interactive-send-and-receive-messages&quot;&gt;Interactive: Send and receive messages&lt;/h2&gt;

&lt;p&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;./yowsup-cli --interactive 34111222333 --wait --autoack --keepalive --config yowsup-cli.config&lt;/code&gt;&lt;/p&gt;

&lt;div class=&quot;language-shell highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;Connecting to c.whatsapp.net
Authed 34123456789
Starting Interactive chat with 34111222333
Enter Message or &lt;span class=&quot;nb&quot;&gt;command&lt;/span&gt;: &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;/available, /lastseen, /unavailable&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;
Yes, I know it
34123456789 &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;02-02-2013 14:15]:Yes, I know it
Enter Message or &lt;span class=&quot;nb&quot;&gt;command&lt;/span&gt;: &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;/available, /lastseen, /unavailable&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;
34111222333@s.whatsapp.net &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;02-02-2013 14:16]:What are you doing?
Enter Message or &lt;span class=&quot;nb&quot;&gt;command&lt;/span&gt;: &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;/available, /lastseen, /unavailable&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;
Testing a new application
34123456789 &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;02-02-2013 14:16]:Testing a new application
Enter Message or &lt;span class=&quot;nb&quot;&gt;command&lt;/span&gt;: &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;/available, /lastseen, /unavailable&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;
/unavailable
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;too-much-of-geeky-stuff-&quot;&gt;Too much of geeky stuff ??&lt;/h2&gt;

&lt;ol&gt;
  &lt;li&gt;Skip all the steps of sending and receiving a message. Just install the WhatsApp client &amp;amp; configure it as mentioned.&lt;/li&gt;
  &lt;li&gt;We will use Pidgin Instant Messenger to make this work. Install it if you don’t have it.
&lt;code class=&quot;highlighter-rouge&quot;&gt;sudo apt-get install pidgin&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;Then install WhatsApp protocol implementation for Pidgin.
    &lt;ul&gt;
      &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;sudo add-apt-repository ppa:whatsapp-purple/ppa&lt;/code&gt;&lt;/li&gt;
      &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;sudo apt-get update&lt;/code&gt;&lt;/li&gt;
      &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;sudo apt-get install pidgin-whatsapp&lt;/code&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Now simply launch Pidgin. Add a whatsapp account, put username as the phone number with country code (as written above) and password as the string we obtained earlier.&lt;/li&gt;
  &lt;li&gt;Use WhatsApp on Ubuntu of yours. ( &lt;strong&gt;NOTE :&lt;/strong&gt; Don’t use it simultaneously on your mobile ).&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id=&quot;whatsapp-emojis-for-pidgin&quot;&gt;WhatsApp Emojis for Pidgin&lt;/h2&gt;

&lt;p&gt;You need to install and enable the &lt;strong&gt;Emoji smiley theme&lt;/strong&gt;. Just copy one of the sub-directories from following Git repositories to &lt;code class=&quot;highlighter-rouge&quot;&gt;$HOME/.purple/smileys/&lt;/code&gt; and enable the newly installed theme in the Pidgin preferences window.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/stv0g/unicode-emoji&quot;&gt;https://github.com/stv0g/unicode-emoji&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/VxJasonxV/emoji-for-pidgin&quot;&gt;https://github.com/VxJasonxV/emoji-for-pidgin&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;known-issues&quot;&gt;Known Issues&lt;/h2&gt;

&lt;p&gt;I’ve tested this on my Ubuntu 13.04 (64 bit) &amp;amp; it seems to be working perfectly. Though the trouble part is at the other hand. Whenever the other person receives a message sent by us via Pidgin; the mobile phone hangs up a bit &amp;amp; WhatsApp gets crashed :wink: :stuck_out_tongue:&lt;/p&gt;

&lt;p&gt;Yet, it’s all togather a different story whether WhatsApp mobile app is reading messages properly  which comes from Pidgin or not. Maybe Pidgin seems to be sending any unknown message/socket headers which the mobile app can’t decode. (Tested on Samsung S Advance &amp;amp; Micromax Canvas) Anyway, this problem is for the mobile users :stuck_out_tongue: and not for you if you want to use WhatsApp on your machine.&lt;/p&gt;

&lt;p&gt;Regarding Emojis, some of them might not work but this is the best that I’ve come across.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NOTE :&lt;/strong&gt; This method will not work if you’re already using WhatsApp on your mobile with same mobile number. You will need another number to get this working.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Truths of Womanhood</title>
   <link href="http://blog.incognitech.in/truths-of-womanhood/"/>
   <updated>2014-03-20T05:10:22+00:00</updated>
   <id>http://blog.incognitech.in/truths-of-womanhood</id>
   <content type="html">&lt;blockquote&gt;
  &lt;h2 id=&quot;truths-of-womanhood-does-not-reside-in-the-manhood-but-the-ultimate-feminism-it-tends-to-hold-be-it-irony-or-reality&quot;&gt;Truths of Womanhood does not reside in the Manhood; but the ultimate feminism it tends to hold. Be it irony or reality.&lt;/h2&gt;
&lt;/blockquote&gt;

&lt;p&gt;I guess this is a bit late as well; but better late than never.&lt;/p&gt;

&lt;p&gt;Who am I ? I’m a mother, I’m a wife, I’m a friend, I’m a sister and I’m also a daughter. But does it end over here for me ? Is it that I get to do what I feel like doing even after fulfilling all my responsibilities ? Can I roam around wherever and whenever I want to go without worrying about anything like hell ? Can I stay peacefully without hearing out people telling me what I should be wearing, how I should be behaving, how I should be sitting in a public place, how I should not be getting angry and as if this is not enough; how I should be not worrying about my own dreams and just forget about it even before I start weaving hopes for the only thing that I’ve ever wanted.&lt;/p&gt;

&lt;p&gt;A Simple answer to all this is a Big No. If we keep all the complexity of this society to one side and just observe her, we can see the beauty of it, we can look through her eyes. And it’s not hell lot of a thing that she desires. She’s a princess to a father. She’s a queen to a husband. She’s a angel to a son. And she’s also guardian to a brother. The only thing she’s not or rather should not be is &lt;em&gt;disappointed&lt;/em&gt;. Why do we have to keep a special day to celebrate her feminism ? Why does she have to feel that this world is still not for her and she has to be surrounded by this male dominant society ? Why does she have to feel awkward for those lusty stares in the public ? She has to live in this insecure environment where each step she puts outside the house in the night is a burden, a fear in her mind that haunts her.&lt;/p&gt;

&lt;p&gt;She should be the essence that drives our life. It does in fact; but I would not call it drive. It’s just a mere responsibility on her shoulder of which she should be free. She’s like a charm that sits on the the head of a society like a crest but unfortunately we do not understand its value and yet we keep moving ahead in the human race.&lt;/p&gt;

&lt;p&gt;Wake up!! How far can we go with this? Somewhere down the line this has to stop in order to truly empower our women and the feminism in their womanhood. Let’s make this world a better place with equality of life for life as we know it itself is the balance of both; feminine and masculine. Let us not make her mad; I think her magic in its own is the essence of her pyre !&lt;/p&gt;

&lt;blockquote&gt;
  &lt;h2 id=&quot;shes-mad-but-shes-magic-theres-no-lie-in-her-fire&quot;&gt;She’s mad; but she’s magic! There’s no lie in her fire!&lt;/h2&gt;
&lt;/blockquote&gt;
</content>
 </entry>
 
 <entry>
   <title>#WCMumbai 2014</title>
   <link href="http://blog.incognitech.in/wcmumbai-2014/"/>
   <updated>2014-03-20T02:05:36+00:00</updated>
   <id>http://blog.incognitech.in/wcmumbai-2014</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://distilleryimage4.s3.amazonaws.com/555819ccaf8211e38e440ad7235ffb94_8.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1lP4of0&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>#newbie Coming as a surprise! Din know that I was this as well :P</title>
   <link href="http://blog.incognitech.in/newbie-coming-as-a-surprise-din-know-that-i-was-this-as-well-p/"/>
   <updated>2014-03-14T05:05:01+00:00</updated>
   <id>http://blog.incognitech.in/newbie-coming-as-a-surprise-din-know-that-i-was-this-as-well-p</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://distilleryimage6.s3.amazonaws.com/f788e752aae211e3a20e0e7fffce62c2_8.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1hgdUVA&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Headphones Sound Work Around in Ubuntu</title>
   <link href="http://blog.incognitech.in/headphones-sound-work-around-in-ubuntu/"/>
   <updated>2014-03-10T20:03:58+00:00</updated>
   <id>http://blog.incognitech.in/headphones-sound-work-around-in-ubuntu</id>
   <content type="html">&lt;p&gt;You might have faced this problem that your laptop speakers are working perfectly fine; but the same sound doesn’t come when you attach your headphones to the laptop. Here’s a small headphones sound work around in ubuntu:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Using a Terminal = “Applications-&amp;gt;Accessories-&amp;gt;Terminal”&lt;/li&gt;
  &lt;li&gt;Open this file for editing. &lt;code class=&quot;highlighter-rouge&quot;&gt;sudo vim /etc/modprobe.d/alsa-base.conf&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;Insert this line at the bottom: &lt;code class=&quot;highlighter-rouge&quot;&gt;options snd-hda-intel model=hp-dv5 enable_msi=1&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;Save. Close. Reboot. Check your levels in alsamixer. &lt;code class=&quot;highlighter-rouge&quot;&gt;alsamixer&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;Press &lt;code class=&quot;highlighter-rouge&quot;&gt;&amp;lt;F6&amp;gt;&lt;/code&gt; to select the correct sound-card. Press &lt;code class=&quot;highlighter-rouge&quot;&gt;&amp;lt;F3&amp;gt;&lt;/code&gt; to show playback levels. &lt;code class=&quot;highlighter-rouge&quot;&gt;&amp;lt;F4&amp;gt;&lt;/code&gt; selects capture levels [or use &lt;code class=&quot;highlighter-rouge&quot;&gt;&amp;lt;Tab&amp;gt;&lt;/code&gt;]. Use the left/right arrow keys to select and up/down arrow keys to change levels. &lt;code class=&quot;highlighter-rouge&quot;&gt;&amp;lt;M&amp;gt;&lt;/code&gt; to mute/unmute.&lt;/li&gt;
  &lt;li&gt;Go to “System -&amp;gt;Preferences -&amp;gt;Sound” and make sure the correct sound-card is default and adjust your profile on the hardware tab.&lt;/li&gt;
  &lt;li&gt;On the output tab choose the correct device.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;And there you go !! Your headphones should be banging your ears with the bass ! :+1: :wink:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NOTE :&lt;/strong&gt; This solution is tested on Ubuntu 13.04.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Finally my #Bumblebee awakes ;) #relief</title>
   <link href="http://blog.incognitech.in/finally-my-bumblebee-awakes-relief/"/>
   <updated>2014-03-09T02:07:13+00:00</updated>
   <id>http://blog.incognitech.in/finally-my-bumblebee-awakes-relief</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://distilleryimage7.s3.amazonaws.com/ca5bddfea6d011e3a8920e4a008a30bb_8.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1lIzKXt&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Why should girls have all the curves ! ;) #oldies #archives #amul</title>
   <link href="http://blog.incognitech.in/why-should-girls-have-all-the-curves-oldies-archives-amul/"/>
   <updated>2014-02-24T08:45:50+00:00</updated>
   <id>http://blog.incognitech.in/why-should-girls-have-all-the-curves-oldies-archives-amul</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://distilleryimage1.s3.amazonaws.com/b0e294809cd511e38b99120841cb52d9_8.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;via &lt;a href=&quot;http://ift.tt/1mp85bR&quot;&gt;Instagram&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Not Any More</title>
   <link href="http://blog.incognitech.in/not-any-more/"/>
   <updated>2014-01-19T16:55:18+00:00</updated>
   <id>http://blog.incognitech.in/not-any-more</id>
   <content type="html">&lt;p&gt;Not that we had realized the importance of this time; but standing at this virtual horizon where on one side we can see ourselves dragged into our personal lives and professional worlds that we - ourselves have only created. And on other side there are these two years filled with lots of emotions, lots of pride, lots of fun, lots of love and many more things that anyone would for sure want to cherish and we are no exception.&lt;/p&gt;

&lt;p&gt;And finally, the day has come that we say good-bye to our own DA-IICT, just after the 10th Convocation Ceremony. Still that moment is remembered when we had placed the very first foot step inside the lovely campus and we still have to figure out how easily it can be so close to heart that we had started believing it as our “Home”. The heart becomes heavy when we all are facing this moment at once as it has given us everything that - a hostel life, a post-graduate life, a student life - can give to a person.&lt;/p&gt;

&lt;p&gt;Today also, sitting on a workplace, when we recall how we have spent these two years; only two things come across the mind. First very rapidly we sink into the past, we cherish all those pretty moments, all the mischievous things we did and there is this simple smile takes the place on our face. And then the very next moment it is realized that gone are the days that we had such amazing time. It leaves an irresistible void.&lt;/p&gt;

&lt;p&gt;Even though everything seems to be going well in life as planned, even though we do socialize along with our colleagues and hang around in the Weekend’s free time; but still somewhere deep down within us, a part of us still craves for going back into time and wants that life should just be like the old times with friends around beyond the work pressure where there’s no tension, there’re no people playing politics around, there’s no sense of worry being a kid in your very own campus, where you don’t worry about the work ethics and your outer persona in front of the world. So basically, the heart still cries for that time to be spent again and again. This very long-lasting effect that DA-IICT has placed upon us is so full of vigor that I guess no-one have been able to escape from it and I think it will stay with each of us being just like a part of our soul forever knowing that the time is going to come Not Any More !&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Skype Audio on Ubuntu</title>
   <link href="http://blog.incognitech.in/skype-audio-on-ubuntu/"/>
   <updated>2014-01-06T02:24:46+00:00</updated>
   <id>http://blog.incognitech.in/skype-audio-on-ubuntu</id>
   <content type="html">&lt;p&gt;Here comes another experimental solution for the Skype Audio problem in Linux Distros. You must have noticed that your Skype does not trigger the typical Sign-in sound when you log in to your Skype account at your machine start-up. It also must have happened that you are not able to execute your voice calls over Skype. So all your music files, video files, music players, video players are working except Skype audio on Ubuntu machine of yours is dead. Here is a trick that you can follow to solve this little problem.&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Select Skype Options.&lt;/li&gt;
  &lt;li&gt;Go to “Sound Devices” section.&lt;/li&gt;
  &lt;li&gt;Now here comes the tricky part. You will have to set microphone device, speaker device and ringing device that you want your Skype application to use. By default Skype tries to use the default dedicated device for its task; but due to incompatible driver issue or due to any unknown reason it doesn’t go well with the default device.&lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;If your motherboard is of Intel family then here’s the trick. Select the options as given in the screenshots provided below.&lt;/p&gt;

    &lt;ul&gt;
      &lt;li&gt;&lt;strong&gt;Microphone :&lt;/strong&gt; HDA Intel PCH, STAC92xx Analog (hw:1,0)&lt;br /&gt;&lt;/li&gt;
      &lt;li&gt;&lt;strong&gt;Speakers :&lt;/strong&gt; HDA Intel PCH, STAC92xx Analog hardware device without any software conversions (plughw: CARD = PCH, DEV = 0)&lt;/li&gt;
      &lt;li&gt;&lt;strong&gt;Ringing :&lt;/strong&gt; HDA Intel PCH, STAC92xx Analog hardware device without any software conversions (plughw: CARD = PCH, DEV = 0) Normally, you can keep same device for Ringing &amp;amp; Speakers.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Many community people have opinion that you will have to play around with the possible choices over here and try out each combination with a little guess work.&lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;But my guess is try to go with the device which has name of your motherboard family variant. So e.g., if your mother board is of Intel family then try out combinations with Intel devices. These are some of the other combinations that I found on community forums which might work.&lt;/p&gt;

    &lt;ul&gt;
      &lt;li&gt;Sound In: HDA Intel (hw:Intel, 0)&lt;/li&gt;
      &lt;li&gt;Sound Out: HDA Intel (plughw:Intel, 0)&lt;/li&gt;
      &lt;li&gt;Ringing: HDA Intel (plughw, Intel, 0)&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;After selecting a proper combination of devices; test your configuration with “Make a test sound” &amp;amp; “Make a test call” buttons. You will be able to hear the log in sound and make a successful test call.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Screenshots:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/uploads/2014/01/Screenshot-from-2014-01-05-202902.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/01/Screenshot-from-2014-01-05-203626.png&quot; alt=&quot;&quot; /&gt;
&lt;img src=&quot;/uploads/2014/01/Screenshot-from-2014-01-05-205736.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Ghost</title>
   <link href="http://blog.incognitech.in/ghost/"/>
   <updated>2013-12-25T06:52:55+00:00</updated>
   <id>http://blog.incognitech.in/ghost</id>
   <content type="html">&lt;h3 id=&quot;introduction&quot;&gt;Introduction&lt;/h3&gt;

&lt;p&gt;This is something new that I’ve come across. Something different from any conventional blogging platform like &lt;a href=&quot;http://wordpress.org/&quot;&gt;WordPress&lt;/a&gt; or &lt;a href=&quot;http://joomla.org/&quot;&gt;Joomla&lt;/a&gt; or &lt;a href=&quot;http://drupal.org/&quot;&gt;Drupal&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This is based on &lt;a href=&quot;http://nodejs.org/&quot;&gt;Node.js&lt;/a&gt; which is its most earliest stage that is just v0.3.&lt;/p&gt;

&lt;h3 id=&quot;simplicity&quot;&gt;Simplicity&lt;/h3&gt;

&lt;p&gt;But cosidering its simplicity you can very quickly get used to its interface. The interface is so simple and so beautiful that any content writer or “Poetry” writer would love it to get started with their hands.&lt;/p&gt;

&lt;h3 id=&quot;features&quot;&gt;Features&lt;/h3&gt;

&lt;p&gt;The Ghost team has come up with the very basic CRUD operational Blogging platform built upon &lt;a href=&quot;http://twitter.com/JohnONolan&quot;&gt;John O’Nolan&lt;/a&gt;’s wireframic inception about a new blogging platform which is based on a concept for a fictional platform that would be once more about online publishing rather than building complex websites. And so far it looks exactly like this.&lt;/p&gt;

&lt;p&gt;Another new exciting feature would be Markdown; especially for those who love writing readme’s and lots of technical documentation on &lt;a href=&quot;http://github.com&quot;&gt;Github&lt;/a&gt; or any other framework that supports &lt;a href=&quot;http://daringfireball.net/projects/markdown/syntax&quot;&gt;Markdown&lt;/a&gt;.&lt;/p&gt;

&lt;h3 id=&quot;themes&quot;&gt;Themes&lt;/h3&gt;

&lt;p&gt;Just like WordPress or any other CMS framework &lt;a href=&quot;http://ghost.org/&quot;&gt;Ghost&lt;/a&gt; also support custom themes for your blog. You can switch between multiple themes and re-design your blog within a few minutes. Ghost is managing its own &lt;a href=&quot;http://marketplace.ghost.org/&quot;&gt;marketplace&lt;/a&gt; for a variety of themes in a huge number both - free ‘n’ open-source themes and premium themes developed by Ghost &amp;amp; Node.js community. Ghost Theme framework is highly based on &lt;a href=&quot;http://handlebarsjs.com/&quot;&gt;Handlebars&lt;/a&gt;.&lt;/p&gt;

&lt;h3 id=&quot;hosting&quot;&gt;Hosting&lt;/h3&gt;

&lt;p&gt;Recently Ghost has launched its new Blog Hosting Service for users to use. It has got fair monthly pricing and one month trial usage subscription as well. You can just sign up to &lt;a href=&quot;http://ghost.org/&quot;&gt;Ghost&lt;/a&gt; and play around with it.&lt;/p&gt;

&lt;h3 id=&quot;geeky-stuff&quot;&gt;Geeky Stuff&lt;/h3&gt;

&lt;p&gt;If you have got your own server that can run Node.js then you are good to go. Ghost is an open source project. You can just download the core framework package, &lt;a href=&quot;http://docs.ghost.org/installation/&quot;&gt;install&lt;/a&gt; on the server, &lt;a href=&quot;http://docs.ghost.org/usage/&quot;&gt;configure&lt;/a&gt;, &lt;a href=&quot;http://docs.ghost.org/mail/&quot;&gt;setup&lt;/a&gt;; the mailing system and you’re good to go with your own blog.&lt;/p&gt;

&lt;h3 id=&quot;so-far-till-now&quot;&gt;So far till now&lt;/h3&gt;

&lt;p&gt;Looking at Ghost Stats; So far Ghost has been downloaded 99K+ times and counting.
Ghost is backed up by many of the big giants from the industry such as &lt;a href=&quot;http://ie.microsoft.com/&quot;&gt;Internet Explorer&lt;/a&gt;, &lt;a href=&quot;http://envato.com/&quot;&gt;evanto&lt;/a&gt;, &lt;a href=&quot;http://woothemes.com/&quot;&gt;Woo Themes&lt;/a&gt;, &lt;a href=&quot;http://codeschool.com/&quot;&gt;Code School&lt;/a&gt;, &lt;a href=&quot;http://marketpress.com/&quot;&gt;MarketPress&lt;/a&gt; etc.&lt;/p&gt;

&lt;h3 id=&quot;support&quot;&gt;Support&lt;/h3&gt;

&lt;p&gt;Ghost is buzzing up 24x7 on its &lt;a href=&quot;https://ghost.org/forum/&quot;&gt;Support Forum&lt;/a&gt; and lots of developers are emerging into this new platform to make it a better platform for the blogging community.&lt;/p&gt;

&lt;p&gt;At last, I just can say one thing about Ghost; I’m just lovin’ it ! :heart:&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Sixteen - Being classy is your teenage rebellion</title>
   <link href="http://blog.incognitech.in/sixteen-being-classy-is-your-teenage-rebellion/"/>
   <updated>2013-12-14T06:18:19+00:00</updated>
   <id>http://blog.incognitech.in/sixteen-being-classy-is-your-teenage-rebellion</id>
   <content type="html">&lt;p&gt;Sixteen …. An exciting time … An exciting age … And there’s this strange enigma going around in your mind, in your heart and in soul as well which is sufficient enough to have you live your life on edge. They think they know how this world works and this thought of theirs make them so invincible that it becomes hard to argue with them and they can beat you at any cost with this single zest in their mind. They are crazy; they are smart enough to understand that world is fooling them around. At the same time they are not matured enough to understand the real outer world that is waiting around for them to make their first step out of their shell and till that time it is their gala time, and nobody is able to understand this mind. Even if you try; you don’t get the success at all. Because for that you will need to be a teenager; a sweet sixteen persona that has the right state to understand the flow where the life is taking them; which is not even enough at times. The destiny is not meant to end your teenage just like the way it is supposed to be. Of course, you live after that. But it does leave an impact on the days that are at your door-step for the next phase.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Beats Audio On Ubuntu (HP Envy 15)</title>
   <link href="http://blog.incognitech.in/beats-audio-on-ubuntu-hp-envy-15/"/>
   <updated>2013-10-28T00:11:41+00:00</updated>
   <id>http://blog.incognitech.in/beats-audio-on-ubuntu-hp-envy-15</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;/uploads/2013/10/beats_audio_2-wallpaper-1920x1080-650x365.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;The very new HP Envy 15 or any other high config machine with Beats Audio with its 4 audio speakers (2 under the display &amp;amp; 2 below the keyboard in the back panel) and sub-woofer boasting Beats Audio technology which in itself is a tremendous piece of work in the audio technology domain. It has an impressive audio output registering an average 85 decibels on playing Bryan Adam’s Summer of ‘69.&lt;/p&gt;

&lt;p&gt;But the tricky part is; if you are a Ubuntu Geek and want to run the same machine on Ubuntu with the expectation that it will run perfectly fine just like it runs on pre-installed Windows; then you are mistaken. Ubuntu by default takes the default Intel on-board audio controller instead of Beats’ external one and your beats audio on ubuntu are dead. You will need to explicitly tell you machine to override the on-board audio controller. It is a big turn off if you can’t get your machine working on its full capacity even though it is capable of doing so. Here is an easy to go steps to get that outstanding result back on Ubuntu:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Firstly you will need to install &lt;code class=&quot;highlighter-rouge&quot;&gt;hda-jack-retask&lt;/code&gt; tool; which mainly helps us to re-task the audio jack pins on our motherboard.&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;sudo apt-add-repository ppa:diwic/hda&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;sudo apt-get update&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;sudo apt-get install hda-jack-retask&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;highlighter-rouge&quot;&gt;hda-jack-retask &amp;amp;&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;Open hda-jack-retask&lt;/li&gt;
  &lt;li&gt;Select the &lt;code class=&quot;highlighter-rouge&quot;&gt;IDT 92HD91BXX&lt;/code&gt; codec (may be different on other models; but definately other than your on-board controller i.e., Intel-XXX).&lt;/li&gt;
  &lt;li&gt;Check the “Show unconnected pins” box (the internal speakers do not show as connected).&lt;/li&gt;
  &lt;li&gt;Remap 0x0d (Internal Speaker, which is your Front side) to “Internal speaker”.&lt;/li&gt;
  &lt;li&gt;Remap 0x0f (“Not connected”, which is the under-display speakers) to “Internal speaker”.&lt;/li&gt;
  &lt;li&gt;Remap 0x10 (“Not connected”, which is the subwoofer) to “Internal speaker (LFE)”.&lt;/li&gt;
  &lt;li&gt;Apply &amp;amp; test audio output with any media player.&lt;/li&gt;
  &lt;li&gt;Select “Install boot override” to save the settings to apply at boot time.&lt;/li&gt;
  &lt;li&gt;Reboot. When it comes back, you should have full sound from all speakers. Also test headphones. Plugging in headphones should disable sound from all internal speakers.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;img src=&quot;/uploads/2013/10/selection_001.png&quot; alt=&quot;Selection_001&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NOTE :&lt;/strong&gt; This solution will work on Ubuntu 12.04, 12.10 &amp;amp; 13.04. From 13.10 on wards &lt;code class=&quot;highlighter-rouge&quot;&gt;hda-jack-retask&lt;/code&gt; has been moved to another ppa repository; and the pulse configuration for the Audio Jack Tasks is changed as well.&lt;/p&gt;

&lt;p&gt;As of Ubuntu 13.10, &lt;code class=&quot;highlighter-rouge&quot;&gt;hda-jack-retask&lt;/code&gt; is part of &lt;code class=&quot;highlighter-rouge&quot;&gt;alsa-tools&lt;/code&gt;. Just install the &lt;code class=&quot;highlighter-rouge&quot;&gt;alsa-tools-gui&lt;/code&gt; package from the regular archive and start “hdajackretask”. (&lt;strong&gt;Note:&lt;/strong&gt; if you don’t have a &lt;code class=&quot;highlighter-rouge&quot;&gt;.pulse&lt;/code&gt; directory, try symlinking &lt;code class=&quot;highlighter-rouge&quot;&gt;.pulse&lt;/code&gt; to &lt;code class=&quot;highlighter-rouge&quot;&gt;.config/pulse&lt;/code&gt; - and remove the symlink again when you have closed &lt;code class=&quot;highlighter-rouge&quot;&gt;hda-jack-retask&lt;/code&gt;. Solution is not tested with guarantee that it would work on all the machines.)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UPDATE :&lt;/strong&gt; Tested on 14.04 as well &amp;amp; it works properly.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Wave2Wake - A stepping stone towards a touch-free era</title>
   <link href="http://blog.incognitech.in/wave2wake-a-stepping-stone-towards-a-touch-free-era/"/>
   <updated>2013-08-20T05:52:18+00:00</updated>
   <id>http://blog.incognitech.in/wave2wake-a-stepping-stone-towards-a-touch-free-era</id>
   <content type="html">&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;//www.youtube.com/embed/XkdQoSD8DDw&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;With the latest Samsung S4 release, Samsung had made it very clear that it is not going to stand behind in the league of smartphones since Apple is consistently working on its iPhone family. Samsung has a very strong back support of Google in form of Android. So with the passing time; a common man can come very easily under dilemma that which smartphone he should pick from these wind range available in the market.&lt;/p&gt;

&lt;p&gt;Samsung has introduced a lot of features in it Galaxy S4 model. Air Gesture is one of the coolest feature among them. You just glide your hand over the phone and you phone acts on your signs. Smartphones have made life easier for us since day-to-day tasks keep playing in our hands.&lt;/p&gt;

&lt;p&gt;With these upcoming hardware coming on and on; software world also keeps booming. There are lots and lots of programmers/coders keep emerging with their new ideas embedded in their apps/games. And these guys try to bring in innovation.&lt;/p&gt;

&lt;p&gt;What if we get the newest features of S4 in our economical simple Android phone ? Let’s say… what you can achieve if you get the Air Gesture feature in your Samsung Galaxy Ace phone ?? Yes… it is possible. A pair of guys from Pune have come up with this cool app that turns your simple android phone into a cool Air Gesture enabled phone and you can play with your phone with just a wave over it. Just install the app from Google Play and that’s all you have got to do. &lt;a href=&quot;http://goo.gl/igMxpe&quot;&gt;Download&lt;/a&gt;. These guys have released this app recently and they have a strong roadmap to enhance this app. We just have to imagine what is it in future that this app has to deliver.&lt;/p&gt;

&lt;h5 id=&quot;from-the-developers&quot;&gt;From the developers:&lt;/h5&gt;

&lt;p&gt;Use Wave2Wake to awaken(unlock) your phone by simply gliding(waving) your hand over your phone. No touch required. No power/unlock button required. Apart from giving you a touch-free experience, using this app will also reduce the wear on your power/unlock button. If you use a flip cover, you can simply flip it open to unlock(wake) your phone, no button presses required! And more importantly, it hardly consumes any battery–it’s like the app isn’t running at all!&lt;/p&gt;

&lt;p&gt;See the video to see it in action.&lt;/p&gt;

&lt;h5 id=&quot;why-should-i-use-this-app&quot;&gt;Why should I use this app?&lt;/h5&gt;

&lt;ul&gt;
  &lt;li&gt;To reduce wear on your power/unlock button.&lt;/li&gt;
  &lt;li&gt;Use your flip cover to wake your phone.&lt;/li&gt;
  &lt;li&gt;Its faster than pressing the unlock button.&lt;/li&gt;
  &lt;li&gt;Quickly see the time and notifications.&lt;/li&gt;
  &lt;li&gt;To get a magical touch-free experience.&lt;/li&gt;
  &lt;li&gt;It’s free.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Try it out and give us/the developers your feedback and suggestions.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Adminer</title>
   <link href="http://blog.incognitech.in/adminer/"/>
   <updated>2013-06-18T23:58:52+00:00</updated>
   <id>http://blog.incognitech.in/adminer</id>
   <content type="html">&lt;p&gt;Necessity : Mother of Invention&lt;/p&gt;

&lt;p&gt;I re-phrase it … Necessity : Mother of “Google It” :stuck_out_tongue: :wink:&lt;/p&gt;

&lt;p&gt;A great moment where &lt;a href=&quot;http://lmgtfy.com/&quot;&gt;Let Me Google That For You&lt;/a&gt; comes handy. Right from the range of very trivial queries like “What is Eclipse Juno ?” to the trickiest job I faced recently i.e. “How do we configure Nginx Server to make it work with Wordpress on PHP-FastCGI Process Manager ?”&lt;/p&gt;

&lt;p&gt;Anyways … the point is, A mere substitute of phpMyAdmin where you don’t work with a typical XAMPP (WAMPP) flavor Web Environment and where you do not have access to phpMyAdmin directly. Of course; you can always go with MySQL Workbench, but personally I did not find it appealing and user friendly as far as Ubuntu or any other Linux based distros are concerned. (I’m unaware of Mac or Windows environment).&lt;/p&gt;

&lt;p&gt;That’s where Adminer comes into picture.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Keypoints:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;A Database management in just a single PHP file.&lt;/li&gt;
  &lt;li&gt;Just download it; put it into the root directory of your web server.&lt;/li&gt;
  &lt;li&gt;Hit the URL.&lt;/li&gt;
  &lt;li&gt;Your own Web based Database client is ready to serve you.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A very basic UI might raise your eyes but personally it caught my interest and can come handy at times if you want to save up your time configuring the DB client all day long.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.adminer.org/en/&quot;&gt;Adminer&lt;/a&gt; is the gateway where you can find the Downloads and other documentation or support stuff. There’s an API documentation also available if you wanna fidget around with the code. Maybe … you can have your own customized DB client.&lt;/p&gt;
</content>
 </entry>
 
 
</feed>
