<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description></description><title>1 + 1 = 1</title><generator>Tumblr (3.0; @1p1e1)</generator><link>http://1p1e1.tumblr.com/</link><item><title>JSConf is over. But what would have I done if I could attend?</title><description>&lt;p&gt;If you are into JavaScript and/or the web in general you probably have noticed that &lt;a href="http://2012.jsconf.us/" target="_blank"&gt;JSConf&lt;/a&gt; finished yesterday. I, most probably as many of you, could not attend. Bummer.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://twitter.com/filipminev" target="_blank"&gt;My twitter feed&lt;/a&gt; was overflowing with tweets containing the &lt;a href="https://twitter.com/#!/search/%23jsconf" target="_blank"&gt;#jsconf&lt;/a&gt; hashtag, which sounded quite intriguing. While I was looking at my feed update (getting jealous) I thought - &lt;i&gt;&amp;#8220;What would I do if I was there?&amp;#8221;&lt;/i&gt;&lt;/p&gt;
&lt;!-- more --&gt;
&lt;p&gt;Therefore I decided to put together this short list, just for the heck of it.&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;1. Learn and discuss&lt;/strong&gt;&lt;br/&gt;
I believe the number 1 reason to go to an event like JSConf is to learn and then discuss what you have learned. And having such a high concentration of people that live and dream in code is very much stimulating your brain activity.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;2. Networking&lt;/strong&gt;&lt;br/&gt;
The breaks, the after-parties and all the small group hacking sessions. Meeting people whose articles and tweets you have read is awesome! Having a drink with them is even awesomER. Plus all the sweet talking about JavaScript and how the Web will take over the world. Muhahaha!
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;3. Ride the mechanical bull&lt;/strong&gt;&lt;br/&gt;
Yee-haa! That&amp;#8217;s about it, I&amp;#8217;ve never tried it so I&amp;#8217;m pretty certain I&amp;#8217;ll be a failure but heck why not give it a try.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;4. Drink and code Mojito&lt;/strong&gt;&lt;br/&gt;
Apparently mojito was a key word during JSConf &amp;#8216;12. It seemed like people not only had the alcoholic beverage but also hacked together on the newly open-sourced &lt;a href="http://developer.yahoo.com/cocktails/mojito/" target="_blank"&gt;Mojito&lt;/a&gt; MVC application framework by Yahoo. I would love to have a mojito while coding in mojito.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;5. Tell people about tiljs.com&lt;/strong&gt;&lt;br/&gt;
JSConf is probably one of the largest JavaScript development conferences and there are numerous JavaScript ninjas who have awesome tricks up their sleeves. The purpose of &lt;a href="http://www.tiljs.com/" target="_blank"&gt;tiljs.com&lt;/a&gt; is sharing JavaScript knowledge (&lt;a href="http://1p1e1.tumblr.com/post/20112429058/how-i-built-a-website-about-learning-javascript-in-20" target="_blank"&gt;blog post about that&lt;/a&gt;) and the people at this conference can contribute a big bunch to my small project. I would have loved to tell them more about it.
&lt;/p&gt;

&lt;p&gt;Oh well, that&amp;#8217;s my top 5. I would love to hear what&amp;#8217;s yours?&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/20457507601</link><guid>http://1p1e1.tumblr.com/post/20457507601</guid><pubDate>Wed, 04 Apr 2012 03:22:00 -0400</pubDate><dc:creator>timelysis</dc:creator></item><item><title>How I built a website about learning JavaScript in 20 hours</title><description>&lt;p&gt;
I love JavaScript, so I built &lt;a href="http://www.tiljs.com/" target="_blank"&gt;tiljs.com&lt;/a&gt;. Read on to find out how.
&lt;/p&gt;

&lt;a href="http://www.tiljs.com/" target="_blank"&gt;&lt;img src="http://i.imgur.com/DSt7L.png"/&gt;&lt;/a&gt;

&lt;!-- more --&gt;
&lt;p&gt;
I fully enjoy learning new trickery on optimizing, simplifying and improving my code. Therefore, I read a lot on the subject and always try to bookmark the source so that I can come back to it if I forget something. However, this creates a problem - my bookmark list is huge and unmaintainable. I can assume that you, my fellow coder, you suffer from the same disease.
&lt;/p&gt;

&lt;p&gt;
I had a problem and, being the developer that I am, I had to solve it. It was a wonderful Saturday morning when I rolled up my sleeves, fired up Sublime Text 2 and started pondering.
&lt;/p&gt;

&lt;p&gt;
My idea was to build a website where I can post what I&amp;#8217;ve learned about JavaScript in more detailed way compared to a bookmark, add more than 1 link and also provide a comments section where others can share their opinion on the topic. Furthermore, others should be able to share their knowledge as well, so that we can learn from each other and get to JS ninja town in the end. So the goal was set, I was ready for lift off.
&lt;/p&gt;

&lt;p&gt;
While working on the idea I came across the following questions:
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;0. Finding a name and buying the domain&lt;/strong&gt;&lt;br/&gt;
I like short names. The purpose of the site - sharing what you have learned. Today I Learned JavaScript - tiljs. Short - check, sounds good - check, bought through &lt;a href="https://www.gandi.net/" target="_blank"&gt;Gandi.net&lt;/a&gt; - check.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;1. Which server-side framework should I use&lt;/strong&gt;&lt;br/&gt;
So I&amp;#8217;m a PHP developer and I have experience with &lt;a href="http://codeigniter.com/" target="_blank"&gt;CodeIgniter&lt;/a&gt;, so this was the obvious choice. However, for quite some time I wanted to sit on my bottom and learn a new language like Python and/or Ruby. Python was first on my list, so I opened up the browser and asked Google about &amp;#8216;python django&amp;#8217;. After couple of minutes, I decided that it will take me at least a day to get a hang of it and I really wanted to finish the whole project in a weekend. Django was a no-go.
Next I tried googling for &amp;#8216;ruby on rails&amp;#8217;. In my opinion, RoR has better documentation and learning it will go faster, but it was still going to require from me some extra effort.
It was then that I decided to be boring and to go with what I know, CodeIgniter, and kick-start my project immediately. I couldn&amp;#8217;t wait anymore.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;2. Users sign-up - Twitter, Facebook or own sign-up&lt;/strong&gt;&lt;br/&gt;
The question here was if I have to go for my own tailored sign-up process or pick Facebook or Twitter connects. Again, since the number one most important thing for me was getting it done, I decided to ditch the own sign-up option because it was going to take more time than the other options. Twitter was the obvious choice since that&amp;#8217;s the place where people follow their interests rather than sending each other cat videos and photos of drunk people. I followed &lt;a href="http://www.9lessons.info/2010/02/connect-twitter-api-with-oauth-using.html" target="_blank"&gt;this useful tutorial&lt;/a&gt; on integrating Twitter OAuth API with PHP and soon enough I had my sign-up ready and kicking.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;3. One-page app vs. page refresh&lt;/strong&gt;&lt;br/&gt;
Let&amp;#8217;s not forget I&amp;#8217;m a huge JS fan, so I was kind of hurting for the one-page app option. However, once again I remembered I&amp;#8217;m trying to get to my &lt;a href="http://en.wikipedia.org/wiki/Minimum_viable_product" target="_blank"&gt;MVP&lt;/a&gt; as soon as possible, so I decided to stick to the old and simple page refresh technique.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;4. Design&lt;/strong&gt;&lt;br/&gt;
I didn&amp;#8217;t have a lot of questions here. I knew I was after the dead-simple list design, something like what &lt;a href="http://news.ycombinator.com/" target="_blank"&gt;Hacker News&lt;/a&gt; has, but a tiny bit more marvelous. I used parts of &lt;a href="http://twitter.github.com/bootstrap/" target="_blank"&gt;Twitter Bootstrap&lt;/a&gt; here and there, and I&amp;#8217;m quite fond of what the design turned out to be (having in mind I&amp;#8217;m not a pro designer).
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;5. Sharing&lt;/strong&gt;&lt;br/&gt;
I&amp;#8217;ve seen quite some social plugins, but I decided to stick to &lt;a href="http://www.addthis.com/" target="_blank"&gt;AddThis&lt;/a&gt;. It&amp;#8217;s a dead-easy way of integrating social sharing on your page/website. And I believe a social sharing plugin was an important addition to my share-what-you-have-learned site because &amp;#8220;sharing is caring&amp;#8221;.
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;6. Hosting&lt;/strong&gt;&lt;br/&gt;
I was experimenting with &lt;a href="https://www.dotcloud.com/" target="_blank"&gt;DotCloud&lt;/a&gt; recently and I&amp;#8217;m just loving how simple hosting and deploying can be with their PaaS. I configured 2 stacks for my project - PHP and MySQL, which is for free (you get 2 stacks for free) and I was ready to push my code. All it takes me to deploy is typing &amp;#8216;dotcloud push tiljs&amp;#8217; in my terminal and voila - it&amp;#8217;s online. It takes literally less than 5 minutes to get your product up and running.
&lt;/p&gt;

&lt;p&gt;
It was early Sunday evening when my idea was online, fully functioning and waiting for enthusiastic JavaScripters. It took me around 20 hours from start to finish.
&lt;/p&gt;

&lt;a href="http://www.tiljs.com/" target="_blank"&gt;&lt;img src="http://i.imgur.com/s2nvr.png"/&gt;&lt;/a&gt;

&lt;p&gt;
Are you as enthusiastic about JavaScript as I am? Then make sure you check out &lt;a href="http://www.tiljs.com/" target="_blank"&gt;tiljs.com&lt;/a&gt;. I&amp;#8217;ll be more than glad to hear your feedback and see you share JS trickery.
&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/20112429058</link><guid>http://1p1e1.tumblr.com/post/20112429058</guid><pubDate>Thu, 29 Mar 2012 07:23:00 -0400</pubDate><dc:creator>timelysis</dc:creator></item><item><title>jqcached makes DOM selectors caching extremely sexy</title><description>&lt;p&gt;Welcome fellow Javascript code monkeys,&lt;/p&gt;

&lt;p&gt;For a while now, I keep on wondering why Javascript frameworks don&amp;#8217;t provide an unified way of DOM selectors caching. I&amp;#8217;ve been using this homemade jQuery plugin that aids that exact purpose so I decided to share it with you.&lt;/p&gt;
&lt;!-- more --&gt;
&lt;p&gt;We all know the &lt;strong&gt;DOM is very slow&lt;/strong&gt;&amp;#8230; &lt;i&gt;slooowww&lt;/i&gt;. Usually it is the &lt;i&gt;bottleneck&lt;/i&gt; of your Javascript application, so we have to respect it and use it carefully. Minimizing the number of &lt;i&gt;reflows&lt;/i&gt; the browser has to make is probably one of best advices when it comes to DOM interaction. Even though less expensive than reflows, &lt;i&gt;DOM querying&lt;/i&gt; should also be taken into account. So why re-query the DOM every time when we can cache our selectors? &lt;strong&gt;Share&lt;/strong&gt; this with a friend who doesn&amp;#8217;t know yet about the advantages of DOM selectors caching. Sharing is caring.&lt;/p&gt;

&lt;p&gt;So I present you &lt;span class="end_of_text_note "&gt;&lt;strong&gt;jqcached&lt;/strong&gt;&lt;/span&gt; - simple, yet makes your life sexier. Make your application perform better by querying the DOM once and using the selectors without any additional overhead of re-querying them ever again. &lt;a href="http://filipminev.github.com/jqcached/" target="_blank"&gt;Visit the project page&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Why use it?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;1. The DOM is slow, it is a bottleneck for each JavaScript application. Respect it - cache and reuse.&lt;br/&gt;
2. In case you change the name of element&amp;#8217;s class or ID, you have to change it only at one place instead of all over the code.&lt;br/&gt;
3. It creates convenient coding convention.&lt;br/&gt;&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;How-to use it without context&lt;/strong&gt;
&lt;/p&gt;&lt;pre&gt;&lt;code class="javascript"&gt;
// Cache by assigning to the jQuery object
$.jqcached({
	'navMenu': $('#navMenu'),
	'home': $('#navMenu').find('li:first')
	'nextPage': $('a.nextPage')
});
&lt;br/&gt;
// Use by accessing selectors from $.ss
$.ss.navMenu.show();
$.ss.home.bind('click', function () {
	alert("We are in bee's knees");
});
$.ss.nextPage.addClass('highlight');
		&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;
&lt;strong&gt;How-to use it with context&lt;/strong&gt;
		&lt;/p&gt;&lt;pre&gt;&lt;code class="javascript"&gt;
// Or cache by assigning to a passed object
var myMenuView = {};
$.jqcached({
	'navMenu': $('#navMenu'),
	'home': $('#navMenu').find('li:first')
	'nextPage': $('a.nextPage')
}, myMenuView);
&lt;br/&gt;
// Use by accessing selectors from myMenuView.ss
myMenuView.ss.navMenu.show();
myMenuView.ss.home.bind('click', function () {
	alert("We are in bee's knees");
});
myMenuView.ss.nextPage.addClass('highlight');
		&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;&lt;strong&gt;Download&lt;/strong&gt; it from this &lt;a href="https://github.com/filipminev/jqcached" target="_blank"&gt;public Git repository&lt;/a&gt;.&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/18181547103</link><guid>http://1p1e1.tumblr.com/post/18181547103</guid><pubDate>Fri, 24 Feb 2012 04:04:15 -0500</pubDate><dc:creator>timelysis</dc:creator></item><item><title>How to create a kick-ass product? What I learned from 37Signals's book - Rework</title><description>&lt;p&gt;Before we begin I want to say that if you have the time, &lt;a href="http://www.amazon.com/Rework-Jason-Fried/dp/0307463745" target="_blank"&gt;buy and read the book&lt;/a&gt;. It&amp;#8217;s great source of how-to and how-not-to do a business. It breaks a lot of business myths and builds stable foundation for creating a product the right way.&lt;/p&gt;

&lt;p&gt;I&amp;#8217;ll write down the key points I found intriguing as a reference to which I can come back. Hopefully it can be helpful to you too.&lt;/p&gt;

&lt;img src="http://i.imgur.com/1ukXy.jpg"/&gt;&lt;!-- more --&gt;&lt;p&gt;&lt;strong&gt;1. Find your passion and go!&lt;/strong&gt;&lt;br/&gt;
What is the thing that makes your blood boil? Passion for what you build is the most important asset you have. Find it and start, there is big chance there are other people out there who share the same passion. Reach out - blog, tweet, talk about your passion, find people that want to listen to you. Share what you learn on the way - sharing is caring. Create something that you need, there are people who need the same.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Failure vs. Success&lt;/strong&gt;&lt;br/&gt;
It&amp;#8217;s a common believe that it&amp;#8217;s okay to fail, however the mass acceptance of it creates a negative vibe which does cause more people to fail. Be different, believe in your passion, believe in your success and it will come. We learn a great bunch more while being successful, rather than accepting failure and trying again.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Ignore the real world&lt;/strong&gt;&lt;br/&gt;
Don&amp;#8217;t listen to conventional wisdom that tells you &amp;#8220;this is not going to work&amp;#8221;, if you have a good gut feeling and passion about something just do it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Yes, go! Do!&lt;/strong&gt;&lt;br/&gt;
Passion by itself is not enough, idea by itself is nothing. What matters the most is the execution of the idea. Again, sit on your bottom and do, don&amp;#8217;t find excuses in &amp;#8220;not having enough time&amp;#8221; or &amp;#8220;not having enough money&amp;#8221;. You don&amp;#8217;t have to have big wallet, hundreds of employees or five-years-ahead business plan. It&amp;#8217;s all about keeping it simple. Rework the way you work.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. Start from the core&lt;/strong&gt;&lt;br/&gt;
Be as lean as possible, find your core feature. Make it simple, make it stand out, don&amp;#8217;t bury it behind dozen other features. Less is more. People understand simplicity, that&amp;#8217;s why they love it. Don&amp;#8217;t throw in more and more features to make all people like you, focus on one feature, make it perfect and a handful of people will adore you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;6. Don&amp;#8217;t lose your focus on planning&lt;/strong&gt;&lt;br/&gt;
You&amp;#8217;ve just started. You shouldn&amp;#8217;t focus on what could be and guessing what it will be, rather sit on your bottom and build the product. Nowadays we live in a dynamic world where things change every day, that makes it almost impossible to create a good plan. Take actions instead of making plans.
We are bad estimators. When you estimate a project to be several months long, probably it will take twice as much. Break it down, split the big project into easier and simpler steps that can be done in several days. Building step by step will do you good.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;7. It&amp;#8217;s time to launch&lt;/strong&gt;&lt;br/&gt;
You already started building your product, probably it&amp;#8217;s time to launch. Remember one thing - put it out there. That&amp;#8217;s the only way to validate an idea, that&amp;#8217;s the only way to get feedback. You might think that it&amp;#8217;s not ready yet, but most probably you are wrong. Do you have your core feature ready? Don&amp;#8217;t add more features, cut them out. Lean is what you should go after - lean and mean!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;8. Don&amp;#8217;t be in a hurry to grow&lt;/strong&gt;&lt;br/&gt;
Again, keep it as lean and as simple as possible. Don&amp;#8217;t add new features or employees if you don&amp;#8217;t absolutely need them. Premature will to grow might cause dramatic failure. Take your time, focus and think.
Furthermore, being small makes it easier to change the direction of your product. There are less people that know you, which implies less responsibilities. That results in more flexibility, which even big companies try to achieve.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;9. Stand high&lt;/strong&gt;&lt;br/&gt;
Have a point of view, a strong opinion that defines you, your idea and your business. Create an identity for your product, that&amp;#8217;s what will attract customers and supporters. Once you&amp;#8217;ve build your identity, stand behind it. Live up to the expectations you set with it. No one likes a liar!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;10. Distractions are your enemy, focus!&lt;/strong&gt;&lt;br/&gt;
People always complain that they don&amp;#8217;t have time while that&amp;#8217;s not true. Everyone has enough time, but people tend to be distracted quite easily. When you do a task focus on it, and only on it and this will increase your productivity. Switching between different tasks in a short interval of time is costly operation, we are not robots, don&amp;#8217;t multi-task, focus instead.
Furthermore, don&amp;#8217;t concentrate on what your competition does, don&amp;#8217;t soak into their ideas, because you become a follower. You want to be a leader instead, don&amp;#8217;t get interrupted being yourself, focus!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;11. Ask yourself questions to make sure you are on the right track&lt;/strong&gt;&lt;br/&gt;
Those are several of the questions 37Signals suggests:&lt;br/&gt;
- &lt;i&gt;Why are you doing this?&lt;/i&gt;&lt;br/&gt;
- &lt;i&gt;What problem are you solving?&lt;/i&gt;&lt;br/&gt;
- &lt;i&gt;Is this actually useful?&lt;/i&gt;&lt;br/&gt;
- &lt;i&gt;Is there an easier way?&lt;/i&gt;&lt;br/&gt;
- &lt;i&gt;What could you be doing instead?&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;Think. Focus. Start.&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/17178632631</link><guid>http://1p1e1.tumblr.com/post/17178632631</guid><pubDate>Mon, 06 Feb 2012 18:57:11 -0500</pubDate><dc:creator>timelysis</dc:creator></item><item><title>How to implement an awesome JavaScript JSONP API in 4 easy steps</title><description>&lt;p&gt;Recently I was given a project at &lt;a href="http://twoo.com/" target="_blank"&gt;work&lt;/a&gt; which had to get some data from a server on a different domain through JavaScript. We all know that this is not possible because of the &lt;a href="http://en.wikipedia.org/wiki/Same_origin_policy" target="_blank"&gt;same origin policy&lt;/a&gt;, however &lt;a href="http://en.wikipedia.org/wiki/JSONP" target="_blank"&gt;JSONP&lt;/a&gt; is here to help us hack around the problem. JSONP stands for &lt;i&gt;JSON with padding&lt;/i&gt; and it&amp;#8217;s incredibly simple, yet powerful way of requesting data from a server on a different domain.&lt;/p&gt;
&lt;p&gt;Let&amp;#8217;s suppose you want to build a public API that returns how awesome is something. &lt;/p&gt;
&lt;p&gt;You want to provide something like:&lt;/p&gt;
&lt;pre&gt;&lt;code class="javascript"&gt;how_awesome.is('&lt;a href="http://twitter.com/filipminev" target="_blank"&gt;@filipminev&lt;/a&gt;'); // Returns: Uber rad!&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I&amp;#8217;ll show you how to do it in 4 easy steps. &lt;br/&gt;Let&amp;#8217;s get down to bee&amp;#8217;s knees.&lt;/p&gt;&#13;&lt;!-- more --&gt;
&lt;p&gt;&lt;strong&gt;1. JS API wrapper&lt;/strong&gt;&lt;br/&gt;
I assume you will most probably want to build an API which has one or more public functions (API methods) and several private (internal) ones. I&amp;#8217;ve chosen to present the &lt;i&gt;Module Pattern&lt;/i&gt;, because it provides a clean way of having private variables and functions. You can read more about it &lt;a href="http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In-Depth" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;pre&gt;&lt;code class="javascript"&gt;
(function (window, document, undefined) {
    // We pass the window, document and undefined as parameters
    // so that the references to those global variables
    // inside the closure do not have to perform a scope look-up.
    // (tiny performance gain)
&lt;br/&gt;
    var how_awesome = (function (window, document, undefined) {
        var api = {},
            _callID = 1; // Private variable
&lt;br/&gt;
        // Public API function
        api.is = function(thing) {
            // 
            // Code goes here...
            //
        };
&lt;br/&gt;
        // Private function
        function _parseJSON(jsonStr) {
            //
            // Code ...
            //
        }
&lt;br/&gt;
       // Global function
	window.awesomeCallback = function(jsonStr) {
            //
            // Callback code
            //
	};
&lt;br/&gt;
        // Returning the api variable
        // exposes the 'is' function as public, 
        // everything else stays private
        return api;
&lt;br/&gt;
    })(window, document);
&lt;br/&gt;
    // We make 'how_awesome' a global variable
    window.how_awesome = how_awesome;
})(window, document);
&lt;/code&gt;&lt;/pre&gt;


&lt;strong&gt;2. JSONP request&lt;/strong&gt;&lt;br/&gt;
We create a JSONP request via a &lt;i&gt;script element injection&lt;/i&gt; - create a new script tag with src attribute = the destination of the data we have to fetch.

&lt;pre&gt;&lt;code class="javascript"&gt;
// Public API function
api.is = function(thing) {
    var src = '';
&lt;br/&gt;
    // Remote domain from where we need to request data
    src += 'http://how.awesome.is/?';
&lt;br/&gt;
    // We want to know how awesome is the thing
    src += 'thing=' + encodeURIComponent(thing);
&lt;br/&gt;
    // Callback and callID are explained later
    src += '&amp;amp;callback=awesomeCallback';
    src += '&amp;amp;callID=' + _callID;
&lt;br/&gt;
    var head = document.getElementsByTagName('head')[0];
    var script = document.createElement('script');
    script.async = true;
    script.id = 'awesome_' + _callID;
    script.type = 'text/javascript';
    script.src = src;
&lt;br/&gt;
    // Appending the script to the head makes the request!
    head.appendChild(script);
    _callID++;
};
&lt;/code&gt;&lt;/pre&gt;

&lt;strong&gt;3. Create JSONP response&lt;/strong&gt;&lt;br/&gt;
Let&amp;#8217;s assume our JSONP request ended up on this really simple PHP script, which we will call &lt;i&gt;awesomeness.php&lt;/i&gt;.

&lt;pre&gt;&lt;code class="javascript"&gt;
&amp;lt;?php
    $howAwesome = array(
        'Stinks like unwashed socks',
        'Meh',
        'Not to shabby',
        'Auwesome',
        'Uber rad!' 
    );
&lt;br/&gt;
    if (isset($_GET['thing']) &amp;amp;&amp;amp;
        isset($_GET['callback']) &amp;amp;&amp;amp;
        isset($_GET['callID'])) {
&lt;br/&gt;
        $callbackData = array();
        $callbackData['callID'] = $_GET['callID'];
        $callbackData['thing'] = urlencode($_GET['thing']);
&lt;br/&gt;
        $asciiSum = 0;
        $thing = $_GET['thing'];
&lt;br/&gt;
        for ($i = 0, $len = strlen($thing); $i &amp;lt; $len; $i++) {
            $asciiSum += ord(substr($thing, $i, 1));
        }
        $callbackData['awesomeness'] = $howAwesome[$asciiSum % 5];
&lt;br/&gt;        
        // That's how we create the JSONP response!!
        echo $_GET['callback'] . "('" . json_encode($callbackData) . "')";
        return; 
    }
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;As you can see we create the JSONP response just by wrapping the json encoded data by the callback specified in the JSONP request. In that way we return JavaScript code which is then interpreted by the browser. It will try to find in our case a global function named &lt;i&gt;awesomeCallback&lt;/i&gt;.&lt;/p&gt;

&lt;strong&gt;4. Handle JSONP response&lt;/strong&gt;&lt;br/&gt;
As mentioned above, now the browser will call the global function &lt;i&gt;awesomeCallback&lt;/i&gt; with the JSON string as a parameter. So let&amp;#8217;s define the function, I&amp;#8217;ll put it in our API wrapper closure since it uses the private function &lt;i&gt;_parseJSON&lt;/i&gt;.

&lt;pre&gt;&lt;code class="javascript"&gt;
window.awesomeCallback = function(jsonStr) {
     // Parses JSON string to JSON object
    // See function definition below
    var json = _parseJSON(jsonStr);
&lt;br/&gt;
    // API call clean-up
    // Removes the injected script from the DOM,
    // that's why we needed a callID parameter
    // that we pass in the JSON request
    var elem = document.getElementById('awesome_' + json.callID);
    elem.parentNode.removeChild(elem);
&lt;br/&gt;
    // Print the result!
    var thing = decodeURIComponent((json.thing+'').replace(/\+/g, '%20'));
    console.log(thing + ' is ' + json.awesomeness);
};
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Since I decided to make this example JSON API framework agnostic, we need a function that parses the returned JSON string into a JSON object. 
That&amp;#8217;s the definition of the private function &lt;i&gt;_parseJSON&lt;/i&gt;:&lt;/p&gt;

&lt;pre&gt;&lt;code class="javascript"&gt;
function _parseJSON(jsonStr) {
    if (typeof jsonStr !== "string" || !jsonStr) {
        return null;
    }
&lt;br/&gt;
    // Has JSON.parse built in?
    if (window.JSON &amp;amp;&amp;amp; window.JSON.parse) {
        return window.JSON.parse(jsonStr);
    }
&lt;br/&gt;
    // Logic borrowed from &lt;a href="https://github.com/douglascrockford/JSON-js/blob/master/json2.js" target="_blank"&gt;https://github.com/douglascrockford/JSON-js/blob/master/json2.js&lt;/a&gt;
    if (/^[\],:{}\s]*$/
    .test(jsonStr.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@')
    .replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']')
    .replace(/(?:^|:|,)(?:\s*\[)+/g, ''))) {
        return (new Function( 'return ' + jsonStr))();
    }
    throw new SyntaxError('JSON.parse');
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;
Voilà! Our awesome JSONP API is complete! You can check out the complete source on &lt;a href="https://github.com/filipminev/simple-jsonp-api" target="_blank"&gt;GitHub&lt;/a&gt;.&lt;/p&gt;

&lt;img src="http://i.imgur.com/IA8s8.png"/&gt;&lt;p&gt;
Another very intriguing topic, which I would like to discuss with you in the comments below, is: How do we secure a JavaScript JSONP API like that one? Any suggestions?&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/16921184216</link><guid>http://1p1e1.tumblr.com/post/16921184216</guid><pubDate>Thu, 02 Feb 2012 10:15:10 -0500</pubDate><dc:creator>timelysis</dc:creator></item><item><title>FOCUS, FOCUS, FOCUS on the process</title><description>&lt;p&gt;&amp;#8220;Hey you, you..&amp;#8221; Hugo shouted.&lt;/p&gt;
&lt;p&gt;A tall girl turned around.&lt;/p&gt;
&lt;p&gt;&amp;#8220;Yes&amp;#8230; yes, you!&amp;#8221; he confirmed.&lt;/p&gt;
&lt;p&gt;She didn&amp;#8217;t know him, so she was obviously confused. Nevertheless, she strode towards his direction. Her hair red and wavy, eyes glaring with the reflection of every color around, her hands gracious, her legs long and skinny.&lt;!-- more --&gt;&lt;/p&gt;
&lt;p&gt;&amp;#8220;Listen, listen. Focus&amp;#8230; I have no time.&amp;#8221; Hugo panted.&lt;/p&gt;
&lt;p&gt;&amp;#8220;Do I know you?&amp;#8221; the girl asked.&lt;/p&gt;
&lt;p&gt;&amp;#8220;Ah pardon, I&amp;#8217;m Hugo.&amp;#8221; he answered. &amp;#8220;And what&amp;#8217;s your name?&amp;#8221;&lt;/p&gt;
&lt;p&gt;She took a step back, wondering whether she should answer or just walk away. Her lips were trembling, she was about to speak. &amp;#8220;Charlotte.&amp;#8221;&lt;/p&gt;
&lt;p&gt;&lt;img alt="Charlotte" height="331" src="http://i.imgur.com/QPLbb.jpg" width="500"/&gt;&lt;/p&gt;
&lt;p&gt;&amp;#8220;I&amp;#8217;m pleased to meet you dear lady. Do you maybe have a moment to spare?&amp;#8221;&lt;/p&gt;
&lt;p&gt;&amp;#8220;Hmm.. but.. yes, yes sure.&amp;#8221; Charlotte answered while checking her tiny wrist watch.&lt;/p&gt;
&lt;p&gt;It was a sunny day with mild wind. They were standing in front of the train station in Brussels, facing each other. Two strangers - one with a problem, and the other possibly with a solution. &lt;/p&gt;
&lt;p&gt;&amp;#8220;I missed my train.&amp;#8221; Hugo explained. &amp;#8220;Do you know where I can check when is the next train to Paris?&amp;#8221;&lt;/p&gt;
&lt;p&gt;&amp;#8220;Yes, follow me.&amp;#8221; she told him.&lt;/p&gt;
&lt;p&gt;They passed through a huge room with a high ceiling, people inside it looked like tiny ants in a big anthill. In there everyone looked tense and in a hurry just like Hugo. But not Charlotte, she seemed to be calm.&lt;/p&gt;
&lt;p&gt;&amp;#8220;The timetable is right there.&amp;#8221; she smiled, soring her long index finger in the air. &amp;#8220;Across of you.&amp;#8221;&lt;/p&gt;
&lt;p&gt;Hugo impatiently looked, scanning through the many blinking rows of trains leaving the train station, setting off in various directions. His eyes glimmered when he saw Paris on it. Platform 5, train leaves at 14:41.&lt;/p&gt;
&lt;p&gt;&amp;#8220;Excuse me, Charlotte, what time is it?&amp;#8221; asked Hugo.&lt;/p&gt;
&lt;p&gt;Hugo turned around, but she was gone. Ah, and he even forgot to thank her. He scanned the room as he scanned the trains timetable, just this time Paris was Charlotte.&lt;/p&gt;
&lt;p&gt;Yes, there she was. He saw her red wavy hair dangling down a long corridor. He quickly followed her.&lt;/p&gt;
&lt;p&gt;&amp;#8220;Charlotte, hey, Charlotte..&amp;#8221; Hugo was running after her.&lt;/p&gt;
&lt;p&gt;Charlotte turned around, her smile was still hanging there underneath her pointy nose.&lt;/p&gt;
&lt;p&gt;&amp;#8220;Hi&amp;#8221; Hugo tried to catch his breath. &amp;#8220;Sorry, I didn&amp;#8217;t have a chance to say thank you, so thank you.&amp;#8221; he smiled for a first time today.&lt;/p&gt;
&lt;p&gt;&amp;#8220;No worries.&amp;#8221; she answered.&lt;/p&gt;
&lt;p&gt;&amp;#8220;Can I.. do you maybe want to get a coffee?&amp;#8221; Hugo proposed - impatiently waiting for Charlotte&amp;#8217;s answer.&lt;/p&gt;
&lt;p&gt;&amp;#8220;I would love to, but only if we walk North.&amp;#8221; she said. &amp;#8220;I go only to the North.&amp;#8221;&lt;/p&gt;
&lt;p&gt;Hugo was confound by her answer, but quickly came to his senses and answered. &amp;#8220;Yes, North, right. I have about 42 minutes to my train. It has to be enough.&amp;#8221;&lt;/p&gt;
&lt;p&gt;They walked away together - Charlotte walked North, Hugo walked next to her. Not event after a minute they found a cozy looking place. Hugo ordered himself a shot of espresso, because he &amp;#8220;needed it very badly&amp;#8221; as he mentioned to Charlotte on their one minute walk to that place. She had a glass of water.&lt;/p&gt;
&lt;p&gt;&amp;#8220;So where are you going to the North?&amp;#8221; Hugo asked, sipping from his tiny cup of coffee.&lt;/p&gt;
&lt;p&gt;Charlotte smiled, she expected that question. &amp;#8220;Nowhere specific, just to the North.&amp;#8221; She made a small pause, saw the confusion in Hugo&amp;#8217;s eyes and continued. &amp;#8220;I have no final destination, I&amp;#8217;m just going North.&amp;#8221;&lt;/p&gt;
&lt;p&gt;&amp;#8220;Hm, where do you plan to go to? Holland? Denmark? Norway?&amp;#8221; he asked still confused.&lt;/p&gt;
&lt;p&gt;&amp;#8220;I don&amp;#8217;t have a plan. I just wake up everyday and go North. I take small steps. I&amp;#8217;m not in a hurry because I don&amp;#8217;t have a destination. I have a direction.&amp;#8221; she continued.&lt;/p&gt;
&lt;p&gt;&amp;#8220;But what about work? Don&amp;#8217;t you have a job? Don&amp;#8217;t you have any responsibilities?&amp;#8221; Hugo was interested.&lt;/p&gt;
&lt;p&gt;Charlotte brushed back her hair and smiled. Hugo was staring at her. She had a beautiful smile. &amp;#8220;I did have a job,&amp;#8221; she answered &amp;#8220;but then I quit 2 months ago. Since then I&amp;#8217;m walking North.&amp;#8221;&lt;/p&gt;
&lt;p&gt;&amp;#8220;But why North?&amp;#8221; Hugo wanted to know more.&lt;/p&gt;
&lt;p&gt;&amp;#8220;Because I threw a coin twice, and twice I got heads. If it was tails, I was going to head South.&amp;#8221; she took a coin out of her pocket and put it on the table between them. &amp;#8220;I learned a lot of things on the way - about myself and life in general. I realized how important focus is. I used to have a plan and destination, to be in a hurry to finish all my to-dos. To-do after to-do were streaming in and out of my head. I lost my freedom. I became a slave of my own plans. Hugo, do you know what is the meaning of the name Charlotte?&amp;#8221; she asked.&lt;/p&gt;
&lt;p&gt;&amp;#8220;No, do you?&amp;#8221; he responded.&lt;/p&gt;
&lt;p&gt;&amp;#8220;It means free man. I was not free anymore, Hugo. I was a prisoner. My being was not defined by my thoughts, but rather by my to-dos. I needed a change. Then I found about focus.&amp;#8221; she smiled widely. &amp;#8220;Focus means to take your time, not to rush, to enjoy, interact and learn from whatever comes on your way, not to generalize.&amp;#8221; her voice was full of enthusiasm and passion. &amp;#8220;Our ancestors were once thinkers, but our world today turned us into doers. We value quantity and solutions, but we forget about the process.&amp;#8221;&lt;/p&gt;
&lt;p&gt;&amp;#8220;The process?&amp;#8221; Hugo asked.&lt;/p&gt;
&lt;p&gt;&amp;#8220;Yes. The distance between the start and the finish, the distance between A and B. Many people see only B and have their eyes on the price, other don&amp;#8217;t even dear setting off from A. Those kinds of people are very different, but they are the same when it comes to understanding focus and process. When one focuses on the process, he can find great gems on the way. And it&amp;#8217;s up to me and you to find those little gems.&amp;#8221;&lt;/p&gt;
&lt;p&gt;Charlotte pushed the coin towards Hugo. &amp;#8220;Flip the coin.&amp;#8221; she prompted him. He took it and the coin went into the air, flipped and fell back on the table. Meanwhile, Charlotte stood up and looked back at the coin.&lt;/p&gt;
&lt;p&gt;&amp;#8220;Do you know what&amp;#8217;s the meaning of your name, Hugo? It means thinker. Maybe Paris will not be your final destination.&amp;#8221; she smiled and left the café.&lt;/p&gt;
&lt;p&gt;Hugo was still standing there, looking down at the coin. It was tails.&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/16164435870</link><guid>http://1p1e1.tumblr.com/post/16164435870</guid><pubDate>Fri, 20 Jan 2012 03:39:00 -0500</pubDate><dc:creator>timelysis</dc:creator></item><item><title>WebEater follows you wherever you go</title><description>&lt;p&gt;It&amp;#8217;s holiday time! And don&amp;#8217;t we all love that. A week ago I packed my bags and came back home. I wanted to see and catch up with lots of friends, so I directed my browser to Facebook and contacted them. There was I chatting and occasionally waiting for a reply when I got myself thinking - &amp;#8220;Isn&amp;#8217;t it going to be neat to have something quick and funky to do while I&amp;#8217;m waiting for the response?&amp;#8221;&lt;/p&gt;

&lt;p&gt;And WebEater was born. &lt;/p&gt;
&lt;p&gt;&lt;img align="middle" height="65" src="http://i.imgur.com/cFqwe.png" width="233"/&gt;&lt;/p&gt;

&lt;div class="end_of_text_note textAlignCenter"&gt;Press &lt;strong&gt;Alt + S &lt;/strong&gt;to show and hide it.&lt;!-- more --&gt;&lt;/div&gt;
&lt;p&gt;It&amp;#8217;s a Nokia-like snake game that follows you wherever you go on the interwebs.&lt;/p&gt;
&lt;p&gt;&lt;img height="300" src="http://i.imgur.com/DcKlr.png" width="480"/&gt;&lt;/p&gt;

&lt;p&gt;All you should do is drag and drop the link below into your bookmarks bar, therefore creating a bookmarklet. &lt;/p&gt;
&lt;div class="end_of_text_note textAlignCenter"&gt;&lt;a href="javascript:(function()%7Bvar%20a=%7Bstarted:false,visible:false,isAlt:false,pointsCount:0,canvasSize:500,blockSize:25,foodColor:'#FF1C0A',bodyColor:'#369a3d',bodyBorderColor:'#378e3d',woodColor:'#895227',backgroundColor:'#FFF',blackColor:'#000',dead:false,init:function()%7Bvar%20b=this;document.onkeyup=function(c)%7Bif(c.keyCode===18)%7Bb.isAlt=false%7D%7D;document.onkeydown=function(c)%7Bb.handleInput.call(b,c)%7D%7D,resetWebEaterProperties:function()%7Bthis.head=%7Bx:100,y:50%7D;this.tail=%7Bx:50,y:50%7D;this.directionCode=39;this.bodyDirection=%5B39,39%5D;this.bodyPlace=%7B%7D;this.eyes=%7Bleft:%7B%7D,right:%7B%7D%7D;this.food=%7B%7D%7D,countdownBeforeReleasingTheKraken:function(f)%7Bvar%20e=this;var%20d=(f===true)?'Resuming':'Starting';var%20c=2;this.status.innerHTML=d+'%20in%203...';this.points.innerHTML=this.pointsCount+'%20points';var%20b=window.setInterval(function()%7Be.status.innerHTML=d+'%20in%20'+c+'...';c--;if(c===0)%7Bwindow.clearInterval(b);e.status.innerHTML='Om%20nom%20nom%20nom';e.ticker=window.setInterval(function()%7Be.moveWebEater.call(e)%7D,200)%7D%7D,1000)%7D,goWebEater:function()%7Bthis.resetWebEaterProperties();this.drawBabyWebEater();this.showFood();this.countdownBeforeReleasingTheKraken(false)%7D,start:function()%7Bthis.started=true;this.visible=true;var%20b=this;var%20d=(window.innerWidth-this.canvasSize)/2;var%20c=(window.innerHeight-this.canvasSize+20)/2;this.overlay=document.createElement('div');this.overlay.setAttribute('style','position:%20absolute;%20top:%200px;%20left:%200px;%20bottom:%200px;%20right:%200px;%20width:%20100%;%20z-index:%201000;%20background:%20rgba(0,%200,%200,%200.5);');document.body.appendChild(this.overlay);this.webeaterWrapper=document.createElement('div');this.webeaterWrapper.setAttribute('id','webeaterWrapper');this.webeaterWrapper.setAttribute('width',this.canvasSize);this.webeaterWrapper.setAttribute('height',this.canvasSize+20);this.webeaterWrapper.setAttribute('style','position:%20absolute;%20top:%20'+c+'px;%20left:%20'+d+'px;%20z-index:%209999;%20color:%20#fff;%20background-color:%20#000;%20font-family:%20Verdana;%20font-size:%2014px;');this.statusBar=document.createElement('div');this.statusBar.setAttribute('style','width:%20100%;%20height:%2020px;');this.status=document.createElement('span');this.status.setAttribute('style','float:%20left;%20padding-left:%205px;');this.statusBar.appendChild(this.status);this.points=document.createElement('span');this.points.setAttribute('style','float:%20right;%20padding-right:%205px;');this.points.innerHTML='0%20points';this.statusBar.appendChild(this.points);this.webeaterWrapper.appendChild(this.statusBar);this.canvas=document.createElement('canvas');this.canvas.setAttribute('id','webeaterCanvas');this.canvas.setAttribute('width',this.canvasSize);this.canvas.setAttribute('height',this.canvasSize);this.webeaterWrapper.appendChild(this.canvas);document.body.appendChild(this.webeaterWrapper);this.ctx=document.getElementById('webeaterCanvas').getContext('2d');this.ctx.lineWidth=2;this.ctx.fillStyle=this.backgroundColor;this.ctx.fillRect(0,0,this.canvasSize,this.canvasSize);this.goWebEater()%7D,restart:function()%7Bthis.dead=false;this.clearRect(%7Bx:0,y:0%7D,this.canvasSize,this.canvasSize);this.goWebEater()%7D,pause:function()%7Bthis.visible=false;window.clearInterval(this.ticker);this.ticker=null;this.webeaterWrapper.style.display='none';this.overlay.style.display='none'%7D,resume:function()%7Bvar%20b=this;this.visible=true;this.webeaterWrapper.style.display='block';this.overlay.style.display='block';if(this.dead===false)%7Bthis.countdownBeforeReleasingTheKraken(true)%7D%7D,drawBabyWebEater:function()%7Bthis.drawHead(this.head);this.drawRect(%7Bx:this.head.x-this.blockSize,y:this.head.y%7D,this.blockSize-2,this.blockSize-2,this.bodyColor,true);this.drawRect(this.tail,this.blockSize-2,this.blockSize-2,this.bodyColor,true)%7D,handleInput:function(c)%7Bvar%20b=c.keyCode;if(b===18)%7Bthis.isAlt=true%7Dif(this.isAlt&amp;amp;&amp;amp;b===83)%7Bif(this.visible)%7Bthis.pause()%7Delse%7Bif(!this.started)%7Bthis.start()%7Delse%7Bthis.resume()%7D%7Dreturn%7Dif(this.isAlt&amp;amp;&amp;amp;b===82)%7Bthis.restart()%7Dif(this.ticker&amp;amp;&amp;amp;(b===37%7C%7Cb===38%7C%7Cb===39%7C%7Cb===40))%7Bthis.directionCode=b;c.preventDefault();return%20false%7D%7D,moveWebEater:function()%7Bvar%20c=%7B%7D;c.x=this.head.x;c.y=this.head.y;var%20b=this.bodyDirection%5B0%5D;var%20d=(Math.abs(b-this.directionCode)!==2)?this.directionCode:b;this.head=this.moveInDirection(this.head,d);if(this.bodyPlace%5Bthis.head.x+','+this.head.y%5D===true%7C%7Cthis.head.x&amp;lt;0%7C%7Cthis.head.x&amp;gt;=this.canvasSize%7C%7Cthis.head.y&amp;lt;0%7C%7Cthis.head.y&amp;gt;=this.canvasSize)%7Bthis.die();return%7Dthis.drawRect(c,this.blockSize-2,this.blockSize-2,this.bodyColor,true);this.drawHead(this.head);this.bodyDirection.unshift(d);if(this.head.x===this.food.x&amp;amp;&amp;amp;this.head.y===this.food.y)%7Bthis.eatFood();return%7Dthis.bodyPlace%5Bthis.head.x+','+this.head.y%5D=true;delete%20this.bodyPlace%5Bthis.tail.x+','+this.tail.y%5D;this.clearRect(this.tail,this.blockSize,this.blockSize);this.tail=this.moveInDirection(this.tail,this.bodyDirection.pop())%7D,moveInDirection:function(b,c)%7Bswitch(c)%7Bcase%2037:b.x-=this.blockSize;break;case%2038:b.y-=this.blockSize;break;case%2039:b.x+=this.blockSize;break;case%2040:b.y+=this.blockSize;break%7Dreturn%20b%7D,eatFood:function()%7Bthis.pointsCount++;this.points.innerHTML=this.pointsCount+'%20points';this.showFood()%7D,showFood:function()%7Bvar%20b,c;do%7Bb=Math.floor(Math.random()*this.canvasSize/this.blockSize)*this.blockSize;c=Math.floor(Math.random()*this.canvasSize/this.blockSize)*this.blockSize%7Dwhile(this.bodyPlace%5Bb+','+c%5D===true);this.food=%7Bx:b,y:c%7D;this.drawFood(this.food)%7D,die:function()%7Bthis.dead=true;this.pointsCount=0;this.ctx.beginPath();this.ctx.moveTo(0,0);this.ctx.lineTo(this.canvasSize,this.canvasSize);this.ctx.moveTo(0,this.canvasSize);this.ctx.lineTo(this.canvasSize,0);this.ctx.strokeStyle=this.foodColor;this.ctx.stroke();window.clearInterval(this.ticker);this.status.innerHTML='R.I.P%20(Restart%20with%20Alt%20+%20R)'%7D,drawFood:function(b)%7Bthis.drawRect(%7Bx:b.x+6,y:b.y+7%7D,this.blockSize-10,this.blockSize-9,this.foodColor,false);this.drawRect(%7Bx:b.x+11,y:b.y%7D,3,7,this.woodColor,false);this.drawRect(%7Bx:b.x+14,y:b.y%7D,5,5,this.bodyColor,false)%7D,drawHead:function(b)%7Bthis.drawRect(b,this.blockSize-2,this.blockSize-2,this.bodyColor,true);switch(this.directionCode)%7Bcase%2037:this.eyes.left.x=b.x+7;this.eyes.left.y=b.y+7;this.eyes.right.x=b.x+7;this.eyes.right.y=b.y+18;break;case%2038:this.eyes.left.x=b.x+7;this.eyes.left.y=b.y+7;this.eyes.right.x=b.x+18;this.eyes.right.y=b.y+7;break;case%2039:this.eyes.left.x=b.x+18;this.eyes.left.y=b.y+7;this.eyes.right.x=b.x+18;this.eyes.right.y=b.y+18;break;case%2040:this.eyes.left.x=b.x+7;this.eyes.left.y=b.y+18;this.eyes.right.x=b.x+18;this.eyes.right.y=b.y+18;break%7Dthis.drawCircle(this.eyes.left,3,0,Math.PI*2,true,this.backgroundColor);this.drawCircle(%7Bx:this.eyes.left.x,y:this.eyes.left.y+1%7D,1,0,Math.PI*2,true,this.blackColor);this.drawCircle(this.eyes.right,5,0,Math.PI*2,true,this.backgroundColor);this.drawCircle(%7Bx:this.eyes.right.x,y:this.eyes.right.y+1%7D,2,0,Math.PI*2,true,this.blackColor)%7D,drawCircle:function(c,b,f,e,g,d)%7Bthis.ctx.beginPath();this.ctx.arc(c.x,c.y,b,f,e,g);this.ctx.fillStyle=d;this.ctx.closePath();this.ctx.fill()%7D,drawRect:function(c,f,b,d,e)%7Bthis.ctx.beginPath();this.ctx.rect(c.x+1,c.y+1,f,b);this.ctx.fillStyle=d;this.ctx.closePath();this.ctx.fill();if(e)%7Bthis.ctx.strokeStyle=this.bodyBorderColor;this.ctx.stroke()%7D%7D,clearRect:function(c,d,b)%7Bthis.ctx.beginPath();this.ctx.rect(c.x,c.y,d,b);this.ctx.fillStyle=this.backgroundColor;this.ctx.closePath();this.ctx.fill()%7D%7D;window.webEater=a;a.init()%7D)(window);" target="_blank"&gt;WebEater&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;And bam! You can play it wherever you go. Just click on the bookmarklet that you created and press &lt;strong&gt;Alt + S&lt;/strong&gt;. It&amp;#8217;s already preloaded in my blog, so all you need to do is press &lt;strong&gt;Alt + S&lt;/strong&gt; now.&lt;/p&gt;
&lt;p&gt;Controls:&lt;br/&gt;&lt;strong&gt;Arrow keys&lt;/strong&gt; - move&lt;br/&gt;&lt;strong&gt;Alt + S&lt;/strong&gt; - start/resume&lt;br/&gt;&lt;strong&gt;Alt + S&lt;/strong&gt; - pause&lt;br/&gt;&lt;strong&gt;Alt + R&lt;/strong&gt; - restart&lt;/p&gt;
&lt;p&gt;The game was implemented using the HTML5 canvas element and you can find the code in &lt;a href="https://github.com/filipminev/webEater" target="_blank"&gt;this GitHub repo&lt;/a&gt;.&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/14921775251</link><guid>http://1p1e1.tumblr.com/post/14921775251</guid><pubDate>Wed, 28 Dec 2011 11:36:59 -0500</pubDate><dc:creator>timelysis</dc:creator></item><item><title>From 0 to 15,909 pageviews: the Hacker-News and Paul-Irish effects</title><description>&lt;p&gt;Whoa, that&amp;#8217;s pageviews. &lt;br/&gt;All the way. Double pageviews. &lt;br/&gt;Oh my God. It&amp;#8217;s double pageviews all the way. &lt;br/&gt;Whoa, that&amp;#8217;s so intense.&lt;br/&gt; Whoa, man. Wow. Whoa-ho-ho. &lt;br/&gt;Oh my God. Wow. Yeah.&lt;/p&gt;
&lt;p&gt;Look at that. &lt;br/&gt;It&amp;#8217;s starting to even look like triple pageviews. &lt;br/&gt;Oh my God. It&amp;#8217;s double pageviews all across the graph. &lt;br/&gt;What does this mean?&lt;/p&gt;
&lt;p&gt;It&amp;#8217;s so beautiful. *weeping*&lt;!-- more --&gt;&lt;/p&gt;
&lt;div class="end_of_text_note"&gt;&lt;strong&gt;Disclaimer&lt;/strong&gt;: I know this number is nothing for most of you, nevertheless that&amp;#8217;s a milestone for me.&lt;/div&gt;
&lt;p&gt;On 11/11/11&amp;#160;11:11:11 I started this blog which I called 1+1=1. It&amp;#8217;s idea is to celebrate imagination and serve as my brain dump. Many people ask me why 1+1=1. The explanation is below.&lt;/p&gt;
&lt;p&gt;&lt;img align="middle" alt="blog source code" height="504" src="http://i.imgur.com/bzIYi.png" width="771"/&gt;&lt;/p&gt;
&lt;p&gt;The first articles were focused on imagination: &lt;a href="http://1p1e1.tumblr.com/post/12932290478/from-a-to-b-and-then-or-how-imagination-works" target="_blank"&gt;how it works&lt;/a&gt;, &lt;a href="http://1p1e1.tumblr.com/post/13360552932/get-brilliant-ideas" target="_blank"&gt;how to get brilliant ideas using it&lt;/a&gt; and &lt;a href="http://1p1e1.tumblr.com/post/13602747177/you-are-running-out-of-time-if-you-have-an-idea-just" target="_blank"&gt;then just do it&lt;/a&gt;. I truly believe imagination is the greatest resource we, humans, have, next to time. I got several &amp;#8216;nice read&amp;#8217; comments from friends and that meant a bunch to me. Woohoo, there was someone out there reading it.&lt;/p&gt;
&lt;p&gt;&lt;img align="middle" alt="woohoo" height="260" src="http://i.imgur.com/OmWXc.jpg" width="190"/&gt;&lt;/p&gt;
&lt;p&gt;Then I wrote an article about the &lt;a href="http://1p1e1.tumblr.com/post/14262857223/9-reasons-you-must-install-sublime-text-2-code-like-a" target="_blank"&gt;reasons you must install Sublime Text 2&lt;/a&gt;. I use it extensively (for work mostly writing PHP, for my side project mostly writing JavaScript and for my blog mostly writing gibberish) and I had to share the love.&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Hacker-News effect&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;So what happened? I posted the article on &lt;a href="http://news.ycombinator.com/" target="_blank"&gt;Hacker News&lt;/a&gt; at 4pm UTC following the advice from this post: &lt;a href="http://blog.itlater.com/whats-the-best-time-to-post-to-hackernews/" target="_blank"&gt;&amp;#8220;Whats the best time to post to HackerNews&amp;#8221;&lt;/a&gt;. In the first 30 minutes the article got several up-votes and comments, when suddenly they started growing faster - it made it on the frontpage. I was excited. The post stayed on the frontpage for about 30 minutes. In the evening I couldn&amp;#8217;t follow up the blog because I had a Christmas party to attend, but when I came home early in the morning I sat in front of my computer to find out that I&amp;#8217;ve made 3,274 pageviews that day. Woohoo again!&lt;/p&gt;
&lt;p&gt;&lt;img align="middle" alt="Hacker-News effect" height="216" src="http://i.imgur.com/8vrmm.png" width="279"/&gt;&lt;/p&gt;
&lt;p&gt;What are the reasons that the post got any vote-ups and comments? I believe there are 4 reasons:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Number in the title&lt;/strong&gt;&lt;br/&gt; The title was &amp;#8220;9 reasons you must install Sublime Text 2. Code like a man, man.&amp;#8221; When you see the digit 9 and the word &amp;#8216;nine&amp;#8217;, which one do you understand and assimilate faster? Digits work better - they are shorter, so faster to read. When you scan through a page in most of the cases digits catch your attention because we process them immediately.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Scandalous statement in the title&lt;/strong&gt;&lt;br/&gt; &amp;#8220;Code like a man, man.&amp;#8221; That was unplanned, I promise. It was a reference to the &lt;a href="http://www.youtube.com/watch?v=owGykVbfgUE" target="_blank"&gt;hilarious OldSpice commercial&lt;/a&gt; which states - &amp;#8220;Smell like a man, man.&amp;#8221; Nevertheless, some people called it sexist. However, this resulted in more comments because if people were not interested in the article itself they wanted to talk about the &amp;#8220;sexist&amp;#8221; title.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Entertaining intro&lt;/strong&gt;&lt;br/&gt; There is a lot of information on the internet, a lot. It&amp;#8217;s impossible to read everything, and therefore readers pay less attention and time for reading every single piece of news. I tried to attract readers by making the article&amp;#8217;s intro engaging and entertaining Sublime-Text-2 version of the OldSpice commercial. I believe the intro is the crucial point when the reader decides whether to read on or leave.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. Written with passion&lt;/strong&gt;&lt;br/&gt; It&amp;#8217;s mentioned last, but it&amp;#8217;s the most important one. I wrote about Sublime Text 2 because it fascinates me. I believe when you write with passion, you find people who think likewise.&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Paul-Irish effect&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;The day after publishing my post the pageviews naturally went down. However, on the next morning, I opened Google Analytics and I was surprised. More than 60 people were reading the blog at that very moment. What was going on? I checked the top referrals and found out most of the visitors come from &lt;a href="https://plus.google.com/" target="_blank"&gt;Google+&lt;/a&gt;. I thought to myself &amp;#8220;Hm, I didn&amp;#8217;t post it there.&amp;#8221; I surfed to Google+, pasted the URL of the blog post in the search bar and what do I see? &lt;a href="http://paulirish.com/" target="_blank"&gt;Paul Irish&lt;/a&gt; had shared &lt;a href="https://plus.google.com/113127438179392830442/posts/CVRkUTVQkc3" target="_blank"&gt;it&lt;/a&gt;. I smiled.&lt;/p&gt;
&lt;p&gt;There was a constant flow of visitors all morning and afternoon. Then in the evening Paul Irish tweeted that his &lt;a href="https://twitter.com/#!/paul_irish/status/148099929850642432" target="_blank"&gt;&amp;#8220;G+ stream has been lighting up&amp;#8221;&lt;/a&gt; which resulted in even more visitors and even more people started tweeting the link. The pageviews got up to 4,298 for that day only. Woohoo once again.&lt;/p&gt;
&lt;p&gt;&lt;img align="middle" alt="Paul-Irish effect" height="214" src="http://i.imgur.com/aH2SE.png" width="648"/&gt;&lt;/p&gt;
&lt;p&gt;What are the reasons Paul Irish posted the link on his Google+ stream? I believe there is 1 very important reason.&lt;/p&gt;
&lt;p&gt;It&amp;#8217;s all about &lt;a href="http://movethewebforward.org/" target="_blank"&gt;moving the web forward&lt;/a&gt;. Linters are amazingly useful code quality tools, they make you write better code. &lt;a href="http://www.jshint.com/" target="_blank"&gt;JSHint&lt;/a&gt; and &lt;a href="http://www.jslint.com/" target="_blank"&gt;JSLint&lt;/a&gt; are awesome. JSHint &lt;a href="https://github.com/Kronuz/SublimeLinter" target="_blank"&gt;integrated in your Sublime Text 2&lt;/a&gt; editor is even better. If everyone is on the same page when writing code, the web will move forward in a faster pace.&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;Hacker News, Twitter and Google+ are all great platforms for discovering useful information and getting discovered, use them wisely. If you have something interesting to say, don&amp;#8217;t wait another instance, &lt;a href="http://1p1e1.tumblr.com/post/13602747177/you-are-running-out-of-time-if-you-have-an-idea-just" target="_blank"&gt;just do it&lt;/a&gt;. Sharing is caring!&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/14619363972</link><guid>http://1p1e1.tumblr.com/post/14619363972</guid><pubDate>Thu, 22 Dec 2011 11:01:20 -0500</pubDate><dc:creator>timelysis</dc:creator></item><item><title>9 reasons you must install Sublime Text 2. Code like a man, man.</title><description>&lt;p&gt;&lt;div class="end_of_text_note"&gt;Don&amp;#8217;t miss my new blog post: &lt;br/&gt;&lt;a href="http://1p1e1.tumblr.com/post/20112429058/how-i-built-a-website-about-learning-javascript-in-20" target="_blank"&gt;How I built a website about learning JavaScript in 20 hours&lt;/a&gt;&lt;/div&gt;
&lt;p class="p1"&gt;Hello, fellow code monkeys.&lt;/p&gt;
&lt;p class="p1"&gt;Look at your editor. Now back at mine. Now back at yours. Now back to mine. Sadly your editor is not like mine. But if you stopped using noob-scented editor, and switched to Sublime Text 2, your editor could look like mine.&lt;/p&gt;
&lt;p class="p1"&gt;Look down. Back up. Where are you?&lt;/p&gt;
&lt;p class="p1"&gt;You are on a desk with the editor your editor could look like. &lt;/p&gt;
&lt;p class="p1"&gt;What&amp;#8217;s in your hand? Back at me. I have it! It&amp;#8217;s a package control with several handy plugins that you would love. Look again. The plugins are now diamonds. Anything is possible when your editor looks like Sublime Text 2 and not Eclipse.&lt;/p&gt;
&lt;p class="p1"&gt;I&amp;#8217;m on a horse.&lt;!-- more --&gt;&lt;/p&gt;
&lt;p class="p2"&gt;&lt;a href="http://i.imgur.com/B7cXd.png" target="_blank"&gt;&lt;img align="middle" alt="Sublime Text 2" height="329" src="http://i.imgur.com/B7cXd.png" width="550"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="p1"&gt;Coming straight from the &lt;a href="http://www.sublimetext.com/" target="_blank"&gt;homepage of Sublime Text&lt;/a&gt;: &amp;#8220;Sublime Text is a sophisticated text editor for code, html and prose. You&amp;#8217;ll love the slick user interface and extraordinary features.&amp;#8221;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;strong&gt;0. It&amp;#8217;s gorgeous&lt;/strong&gt;&lt;br/&gt; I probably can&amp;#8217;t stress that enough - Sublime Text is the most beautiful editor I have laid eyes on. It has simple, clutter-free UI, and yet powerful functionalities. Before I switched I even created this &lt;a href="http://www.eclipsecolorthemes.org/?view=theme&amp;amp;id=66" target="_blank"&gt;Eclipse Sublime-Text-like color theme&lt;/a&gt; (it&amp;#8217;s in top 20 most picked themes), because the syntax highlighting of the default theme is that awesome. Then, one happy day I just closed Eclipse and downloaded &lt;a href="http://www.sublimetext.com/2" target="_blank"&gt;Sublime Text 2&lt;/a&gt;.&lt;/p&gt;
&lt;p class="p1"&gt;&lt;strong&gt;1. It&amp;#8217;s blazing fast&lt;/strong&gt;&lt;br/&gt; I can open it and then close it for less than 10 seconds on my Mac OS X 10.7.2. For comparison, it takes me 2 minutes to do the same with Eclipse. Opening files, switching between files, searching in files and the whole project, switching between different projects, it is all amazingly fast. Just try it!&lt;/p&gt;
&lt;p class="p1"&gt;&lt;strong&gt;2. It&amp;#8217;s updated pretty-much daily&lt;/strong&gt;&lt;br/&gt; You can have Sublime Text 2 if you &lt;a href="http://www.sublimetext.com/2" target="_blank"&gt;download it from here&lt;/a&gt;. It is available for all the popular OS choices - OS X, Linux and Windows. The editor can be downloaded for free, however a license must be purchased for continued use. There is currently no enforced time limit for the evaluation.&lt;/p&gt;
&lt;p class="p1"&gt;However, in order to get the daily updates you gotta download the nightly/dev version from here: &lt;a href="http://www.sublimetext.com/dev" target="_blank"&gt;&lt;a href="http://www.sublimetext.com/dev" target="_blank"&gt;http://www.sublimetext.com/dev&lt;/a&gt;&lt;/a&gt;. You will not regret that.&lt;/p&gt;
&lt;p class="p1"&gt;&lt;strong&gt;3. ⌘ + P&lt;/strong&gt;&lt;br/&gt; I just love that! That&amp;#8217;s my bread and butter.&lt;/p&gt;
&lt;p class="p1"&gt;&lt;em&gt;Command + P&lt;/em&gt; (OS X) or &lt;em&gt;Control + P&lt;/em&gt; (Linux/Windows) activates the magic. Press the combo and a drop-down appears.&lt;/p&gt;
&lt;p class="p1"&gt;Start typing and see how the files of your project jump in and out, that&amp;#8217;s the fastest way to search for files in a project. The cool thing is not only it searches for the filename, but also the whole file path. So if you have a file - src/Controller/TestShizzle.php, and then search for &lt;em&gt;&amp;#8220;controller test&amp;#8221;&lt;/em&gt;, bam you have it! Furthermore, the search is quite forgiving when it comes to typos, which is neat.&lt;/p&gt;
&lt;p class="p2"&gt;&lt;a href="http://i.imgur.com/aJwZu.png" target="_blank"&gt;&lt;img align="middle" alt="Command+P" height="160" src="http://i.imgur.com/aJwZu.png" width="550"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="p1"&gt;So after you wrote &lt;em&gt;&amp;#8220;controller test&amp;#8221;&lt;/em&gt;, and Sublime Text focused the correct file then you can continue with &lt;em&gt;&amp;#8220;controller test@&amp;#8221;&lt;/em&gt; which reveals the list of methods in that file. Cool, heh?&lt;/p&gt;
&lt;p class="p2"&gt;&lt;a href="http://i.imgur.com/EF4BF.png" target="_blank"&gt;&lt;img align="middle" alt="Command+P" height="160" src="http://i.imgur.com/EF4BF.png" width="550"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="p1"&gt;When you have opened a file:&lt;br/&gt; - &lt;em&gt;Command + P&lt;/em&gt; and then type &lt;em&gt;&amp;#8221;@&amp;#8221;&lt;/em&gt;, that gives you a list of all the methods in this file.&lt;br/&gt; - &lt;em&gt;Command + P&lt;/em&gt; and then type &lt;em&gt;&amp;#8221;:&amp;#8221;&lt;/em&gt; followed by a number, that jumps to the specified line number in this file.&lt;/p&gt;
&lt;p class="p1"&gt;&lt;strong&gt;4. Installing packages can&amp;#8217;t be easier&lt;/strong&gt;&lt;br/&gt; First install Package Control from &lt;a href="http://wbond.net/sublime_packages/package_control" target="_blank"&gt;here&lt;/a&gt;. Restart Sublime Text and you are ready to go!&lt;/p&gt;
&lt;p class="p1"&gt;&lt;em&gt;Shift + Command + P&lt;/em&gt; gives  you another handy drop-down. Write &lt;em&gt;&amp;#8220;install&amp;#8221;&lt;/em&gt; and an option &amp;#8220;Package Control: Install Package&amp;#8221; appears. Select it by hitting &amp;#8220;Enter&amp;#8221; and wait for the package list to load. Browse through it or simply search for a specific package. Easy!&lt;/p&gt;
&lt;p class="p1"&gt;When you install a plugin through the Package Control, it is being automatically updated to the newest version. Restart the editor after you install plug-ins in order to start using the goodies.&lt;/p&gt;
&lt;p class="p1"&gt;&lt;strong&gt;5. Git plugin&lt;/strong&gt;&lt;br/&gt; Install by following the instructions here: &lt;a href="https://github.com/kemayo/sublime-text-2-git/wiki" target="_blank"&gt;&lt;a href="https://github.com/kemayo/sublime-text-2-git/wiki" target="_blank"&gt;https://github.com/kemayo/sublime-text-2-git/wiki&lt;/a&gt;&lt;/a&gt; (Easy way to install: use Package Control: Install Package and search for &lt;em&gt;&amp;#8220;Git&amp;#8221;&lt;/em&gt;).&lt;/p&gt;
&lt;p class="p1"&gt;Use it. &lt;em&gt;Shift + Command + P&lt;/em&gt; comes in use again. &lt;em&gt;Shift + Command + P&lt;/em&gt; and write &lt;em&gt;&amp;#8220;git&amp;#8221;&lt;/em&gt;, you will see all the possible git commands you most probably use on a day-to-day basis. &lt;em&gt;Shift + Command + P&lt;/em&gt;&lt;em&gt;+ &amp;#8220;git blame&amp;#8221; + hit that &amp;#8220;Enter&amp;#8221; + punch the colleague that broke the sacred code&lt;/em&gt;. :) You have it all - git status, git pull, git push, git diff, you name it.&lt;/p&gt;
&lt;p class="p2"&gt;&lt;a href="http://i.imgur.com/hUY61.png" target="_blank"&gt;&lt;img align="middle" alt="Git plugin" height="80" src="http://i.imgur.com/hUY61.png" width="550"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;strong&gt;6. Code completion&lt;/strong&gt;&lt;br/&gt; A plugin which probably you will fancy: &lt;a href="https://github.com/Kronuz/SublimeCodeIntel" target="_blank"&gt;&lt;a href="https://github.com/Kronuz/SublimeCodeIntel" target="_blank"&gt;https://github.com/Kronuz/SublimeCodeIntel&lt;/a&gt;&lt;/a&gt; (Easy way to install: use Package Control: Install Package and search for &lt;em&gt;&amp;#8220;CodeIntel&amp;#8221;&lt;/em&gt;).&lt;/p&gt;
&lt;p class="p1"&gt;You use it by &lt;em&gt;Control + Space&lt;/em&gt;, also you can explore classes and methods by clicking on them while holding the &lt;em&gt;Alt key&lt;/em&gt;. Don&amp;#8217;t despair! The first time you use the plugin it will need to build some indexes which can take more than a few seconds (depending on the size of your project). If &lt;em&gt;$allOk === true&lt;/em&gt; then you are good to go.&lt;/p&gt;
&lt;p class="p2"&gt;&lt;a href="http://i.imgur.com/Qs5u7.png" target="_blank"&gt;&lt;img align="middle" alt="code completion" height="91" src="http://i.imgur.com/Qs5u7.png" width="345"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;strong&gt;7. Lint plugin&lt;/strong&gt;&lt;br/&gt; SublimeLint will hurt your feelings, but it will make you write better code: &lt;a href="https://github.com/Kronuz/SublimeLinter" target="_blank"&gt;https://github.com/Kronuz/SublimeLinter&lt;/a&gt; (Easy way to install: use Package Control: Install Package and search for &lt;em&gt;&amp;#8220;SublimeLinter&amp;#8221;&lt;/em&gt;).&lt;/p&gt;
&lt;p class="p1"&gt;It has built-in linters for JavaScript, PHP, Python, Ruby, Java, Perl and Objective-J. It is extremely handy.&lt;/p&gt;
&lt;p class="p2"&gt;&lt;a href="http://i.imgur.com/asuiG.png" target="_blank"&gt;&lt;img align="middle" alt="linter" height="110" src="http://i.imgur.com/asuiG.png" width="550"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="p1"&gt;&lt;strong&gt;8. Many other goodies I use on a daily basis&lt;/strong&gt;&lt;br/&gt; - WordHightlight plugin is something useful: &lt;a href="https://github.com/adzenith/WordHighlight" target="_blank"&gt;&lt;a href="https://github.com/adzenith/WordHighlight" target="_blank"&gt;https://github.com/adzenith/WordHighlight&lt;/a&gt;&lt;/a&gt;&lt;br/&gt; - Make the gorgeous, even more gorgeous with this funky Soda theme: &lt;a href="https://github.com/buymeasoda/soda-theme" target="_blank"&gt;&lt;a href="https://github.com/buymeasoda/soda-theme" target="_blank"&gt;https://github.com/buymeasoda/soda-theme&lt;/a&gt;&lt;/a&gt;&lt;br/&gt; - &lt;em&gt;Control + Command + P&lt;/em&gt; - switching between different projects&lt;br/&gt; - &lt;em&gt;Command + /&lt;/em&gt; - commenting/uncommenting&lt;br/&gt; - &lt;em&gt;Command + ]&lt;/em&gt; - Indent&lt;br/&gt; - &lt;em&gt;Command + [&lt;/em&gt; - Unindent&lt;br/&gt; - &lt;em&gt;Control + Command + Up&lt;/em&gt; - move selected line up&lt;br/&gt; - &lt;em&gt;Control + Command + Down&lt;/em&gt; - move selected line down&lt;br/&gt; - &lt;em&gt;Command + Number&lt;/em&gt; - switches to an open tab. Command + 1 goes to the 1st tab, Command + 2 - 2nd tab, etc.&lt;br/&gt; - &lt;em&gt;Shift + Command + F&lt;/em&gt; - searches through the whole project&lt;br/&gt; - &lt;em&gt;Shift + Control + K&lt;/em&gt; - deletes selected code or line&lt;/p&gt;
&lt;p class="p1"&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;&lt;br/&gt; Sublime Text 2 is just &lt;a href="http://www.urbandictionary.com/define.php?term=Auwesome" target="_blank"&gt;auwesome&lt;/a&gt;. It makes you fly like Superman, fight like Chuck Norris and code like Linus Torvalds. &lt;a href="http://www.sublimetext.com/dev" target="_blank"&gt;Download it&lt;/a&gt;. &lt;a href="http://www.quickmeme.com/meme/35i1cr/" target="_blank"&gt;Impossibru&lt;/a&gt;!&lt;/p&gt;
&lt;p class="p7"&gt;ф.&lt;/p&gt;&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/14262857223</link><guid>http://1p1e1.tumblr.com/post/14262857223</guid><pubDate>Thu, 15 Dec 2011 10:03:00 -0500</pubDate><dc:creator>timelysis</dc:creator></item><item><title>You are running out of time. If you have an idea, just do it!</title><description>&lt;p&gt;&lt;p class="p1 firstParagraph"&gt;You are running out of time. I am running out of time too, so I will be short. In my previous articles I talked about imagination - &lt;a href="http://1p1e1.tumblr.com/post/12637305300/imagine" target="_blank"&gt;what is it&lt;/a&gt;, &lt;a href="http://1p1e1.tumblr.com/post/12932290478/from-a-to-b-and-then-or-how-imagination-works" target="_blank"&gt;how to use it&lt;/a&gt;, &lt;a href="http://1p1e1.tumblr.com/post/13360552932/get-brilliant-ideas" target="_blank"&gt;how to get brilliant ideas&lt;/a&gt;. You don&amp;#8217;t have an idea yet? Go have a beer with Imagination, think, talk and then come back here.&lt;/p&gt;
&lt;p class="p1"&gt;If you are a person &lt;strong&gt;who&lt;/strong&gt;: &lt;!-- more --&gt;&lt;br/&gt;- dreams of getting into a great university. Just go and study! &lt;br/&gt;- wants to be be stronger, run further, be healthier. Just put down the chocolate and run! &lt;br/&gt;- is an artist that takes marvelous photos, draws touching images. Just take the camera and go outside! &lt;br/&gt;- envisions a change in the politics and economics of their country. Just get involved! &lt;br/&gt;- has a business plan for a product. Just go out and sell it. &lt;br/&gt;- is a start-up enthusiast (entrepreneur, code monkey, design guru). Just sit down on your ass and code!  &lt;br/&gt;- has a crush on this cute girl/guy you see everyday in the lunch break. Just go and say &amp;#8216;Hi&amp;#8217;! &lt;br/&gt;- is a dreamer!&lt;/p&gt;
&lt;p class="p1"&gt;Carpe diem. Just. Do. It.&lt;/p&gt;
&lt;p class="p2 redLetters"&gt;.&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;Dream as if you&amp;#8217;ll live forever.  Live as if you&amp;#8217;ll die today.&lt;/span&gt;&lt;br/&gt; &amp;#8212;James Dean&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;Why always &amp;#8220;not yet&amp;#8221;?  Do flowers in spring say &amp;#8220;not yet&amp;#8221;? &lt;/span&gt;&lt;br/&gt; &amp;#8212;Norman Douglas&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;And in the end, it&amp;#8217;s not the years in your life that count.  It&amp;#8217;s the life in your years. &lt;/span&gt;&lt;br/&gt; &amp;#8212;Abraham Lincoln&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;To change one&amp;#8217;s life:  Start immediately.  Do it flamboyantly.  No exceptions. &lt;/span&gt;&lt;br/&gt; &amp;#8212;William James&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;You may delay, but time will not. &lt;/span&gt;&lt;br/&gt; &amp;#8212;Benjamin Franklin&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;We cannot waste time.  We can only waste ourselves. &lt;/span&gt;&lt;br/&gt; &amp;#8212;George M. Adams&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;Life happens too fast for you ever to think about it.  If you could just persuade people of this, but they insist on amassing information. &lt;/span&gt;&lt;br/&gt; &amp;#8212;Kurt Vonnegut, Jr.&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;There&amp;#8217;s never enough time to do all the nothing you want. &lt;/span&gt;&lt;br/&gt; &amp;#8212;Bill Watterson&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;The fear of death follows from the fear of life.  A man who lives fully is prepared to die at any time. &lt;/span&gt;&lt;br/&gt; &amp;#8212;Mark Twain&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;What would be the use of immortality to a person who cannot use well a half an hour. &lt;/span&gt;&lt;br/&gt; &amp;#8212;Ralph Waldo Emerson&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;May you live all the days of your life. &lt;/span&gt;&lt;br/&gt; &amp;#8212;Jonathan Swift&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;I wasted time, and now doth time waste me. &lt;/span&gt;&lt;br/&gt; &amp;#8212;William Shakespeare&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;Every second is of infinite value. &lt;/span&gt;&lt;br/&gt; &amp;#8212;Johann Wolfgang von Goethe&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;We are always getting ready to live but never living. &lt;/span&gt;&lt;br/&gt; &amp;#8212;Ralph Waldo Emerson&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;The future has a way of arriving unannounced. &lt;/span&gt;&lt;br/&gt; &amp;#8212;George F. Will&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;When one has a great deal to put into it a day has a hundred pockets. &lt;/span&gt;&lt;br/&gt; &amp;#8212;Friedrich Nietzsche&lt;/p&gt;
&lt;p class="p3"&gt;&lt;span class="quote"&gt;We&amp;#8217;re fools whether we dance or not, so we might as well dance. &lt;/span&gt;&lt;br/&gt; &amp;#8212;Japanese Proverb&lt;/p&gt;
&lt;p class="p5"&gt;&lt;span class="quote"&gt;And no, we don&amp;#8217;t know where it will lead. We just know there&amp;#8217;s something much bigger than any of us here.&lt;/span&gt;&lt;br/&gt; &amp;#8212;Steve Jobs&lt;/p&gt;
&lt;p class="p2 redLetters"&gt;.&lt;/p&gt;
&lt;p class="p7"&gt;Inhale. Exhale. Close your eyes. Imagine. Open your eyes. Go and do it!&lt;/p&gt;
&lt;p class="p2 redLetters"&gt;.&lt;/p&gt;
&lt;p class="p7"&gt;ф.&lt;/p&gt;&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/13602747177</link><guid>http://1p1e1.tumblr.com/post/13602747177</guid><pubDate>Thu, 01 Dec 2011 16:34:00 -0500</pubDate><dc:creator>timelysis</dc:creator></item><item><title>Inhale. Exhale. How to come up with possibly brilliant ideas?</title><description>&lt;p&gt;&lt;p class="p1 firstParagraph"&gt;Inhale. Exhale. It is dark outside and the sun has set long time ago. It feels like ages since I saw the light for a last time. It is even darker in my room since my lights burned out a week ago. I have three candles that glimmer in the darkness and the light coming out of my computer screen. It brightens me but it does not enlighten me. I separate my fingers from the keyboard, pick my hands up, rotate them 180 degrees, look at them and then put them on my eyes. It is even darker and I like it. Oh, how much I do value it. Inhale. Exhale. The music in the background is farther and further than a moment ago, it echoes in my ears. Inhale. Exhale. The pitch black in front of my eyes starts twisting, it forms a black hole which pulls me towards itself. It is the last quarter of second before I get sucked in. Inhale. Exhale. Freedom. I am in the middle of nothing, it is just me, myself and I(magination). Go!&lt;!-- more --&gt;&lt;/p&gt;
&lt;p class="p1"&gt;Let&amp;#8217;s go approximately five months back in time. It is a Saturday afternoon in the beginning of the summer. I am laying on my bed after watching several episodes in a row of That 70&amp;#8217;s Show when I realize I haven&amp;#8217;t had my lunch yet. I crawl out of bed, pace slowly through the infinite corridor leading to the living room and the kitchen. I open the fridge, take a pick inside and close it. I walk out of the kitchen and slide on the sofa where I spend a dozen of minutes thinking with what I could possibly pleasure my stomach. I make myself scrambled eggs with bacon. Now let&amp;#8217;s leap an hour and a half forward. Inhale. Exhale. I am sitting under the shower - the hot water is raining down on me while I am looking at the water whirling around the siphon and then disappearing forever just like the seconds spent watching it. Skip forward another three hours. Inhale. Exhale. I am in a gloomy pub - the music echoes on the dark walls and jumps back at us. We are having dark beers and my thoughts rarely return back from the dark walls unlike the music. Close your eyes. Inhale. Exhale. We are another two hours ahead. I collapse on my bed, too tired and busy with empty thoughts to even go out of my own clothes. I lay on my back and stare into the darkness. I have goals and I am not even moving an inch closer to them day after day. I have procrastination in my blood stream. It is time for change, time to put my time back on time.&lt;/p&gt;
&lt;p class="p1"&gt;Let&amp;#8217;s go approximately three hundred years back in time. &amp;#8220;Aha!&amp;#8221; it&amp;#8217;s probably what Newton said to himself when he saw the apple falling down on the ground. He has just found the force of gravity - the force which pulls all of us towards the center of Earth. Newton&amp;#8217;s Universal Law of Gravitation is extremely important scientific discovery that changed our understanding of the universe. And how did it all happen? Sir Isaac Newton was wandering in the apple-tree gardens, unwinding his thoughts and opening his mind to what imagination says.&lt;/p&gt;
&lt;p class="p1"&gt;Let&amp;#8217;s go approximately two millennia back in time. &amp;#8220;Eureka! &amp;#8221; shouted Archimedes running naked on the streets of Syracuse. He had just found out that the volume of displaced water in the bath is equal to the volume of his body. He was enlightened, he had an insight. How did he have this idea? Wouldn&amp;#8217;t it be good if we had a recipe that we can follow step by step? A spoonful of apple seeds, 10ml of water and a pinch of brown sugar. What did Archimedes do? He was relaxed, his mind was free of any thoughts, he was submerged into the bathtub and his imagination. I say yes, there is a recipe. There are certain steps you can follow to get ideas. Some of the ideas might be totally ridiculous, but some of them might be ingenious. I will share my approach which I believe might work for you as well.&lt;/p&gt;
&lt;p class="p1"&gt;We are back to nowadays. Inhale. Exhale. I slowly open my eyes. It is nine o&amp;#8217;clock in the morning and it is bright outside. I open my window and take a deep breath. Inhale. Exhale. The air is fresh - it wakes up my mind and energizes my body. I stand up, open the door and walk in the bathroom. I turn on the water in the shower and while waiting for it to heat up I stand in front of the mirror, observe my reflection and reflect on what happened in my dreams. After a minute or so I go under the running water. Inhale. Exhale. Close my eyes. My mind starts drifting after a while, it goes wild. It goes from penguins to deep space exploration and time travel. I am just sitting motionless and observing my thoughts flow over my head. Have you noticed how the walls in the bathroom get steamy and when you move your fingers across you leave marks? The walls are my canvas. I draw. I spend a big chunk of my time in the shower drawing my thoughts on the walls. After half a minute the drawings start disappearing, then I redraw the good ones and let the rest vanish from time and space. I do not ask myself &amp;#8220;why&amp;#8221; or &amp;#8220;but&amp;#8221;, I just let imagination do its thing.&lt;/p&gt;
&lt;p class="p1"&gt;The &amp;#8220;Aha&amp;#8221; and &amp;#8220;Eureka&amp;#8221; moments do not always come easily. When we have set on a quest to solve a problem, to find a solution, we might get stuck somewhere in the middle. We get frustrated that our thoughts do not move forward even though we have examined all possible ways to get to the solution. It is easy to give up when you are in this situation. But then procrastination will possess you and will not let go. Procrastination feeds on weakness - giving up makes it stronger, putting off feeds it. How do we leap over this abyss? How do we get to the ideas? My recipe:&lt;/p&gt;
&lt;p class="p1"&gt;1. Inhale. &lt;br/&gt;2. Exhale.&lt;br/&gt; 3. Close your eyes. &lt;/p&gt;
&lt;p class="p1"&gt;Cover your eyes with your palms and stare into the darkness. Rearrange your thoughts, reopen your mind, fall in the black hole of imagination. You are in a kingdom where you are the king/queen. In this parallel universe where your word is a command. Search for your passion, find your purpose, get motivated, be enlightened. And do not open your eyes until you catch your brilliant idea by the tail.&lt;/p&gt;
&lt;p class="p1"&gt;I was there and I kid you not I am mesmerized. I got my idea - a quest to bring procrastination down to zero around the world. It is a project that I work on every day and I will not give up until it helps at least one more person other than myself. It worked for me, and I cannot wait to share it with all of you. Soon.&lt;/p&gt;
&lt;p class="p1"&gt;Now, can I ask you for a little favor? &lt;br/&gt;Inhale. Exhale. Close your eyes &amp;#8230; just do it!&lt;/p&gt;
&lt;p class="p1 redLetters"&gt;.&lt;/p&gt;
&lt;p class="p1 redLetters"&gt;.&lt;/p&gt;
&lt;p class="p1 redLetters"&gt;.&lt;/p&gt;
&lt;p class="p1"&gt;How was it? What did you see? Share it with me and the world.&lt;/p&gt;
&lt;p class="p1 redLetters"&gt;.&lt;/p&gt;
&lt;p class="p1"&gt;ф.&lt;/p&gt;&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/13360552932</link><guid>http://1p1e1.tumblr.com/post/13360552932</guid><pubDate>Sat, 26 Nov 2011 14:58:00 -0500</pubDate><dc:creator>timelysis</dc:creator></item><item><title>From A to B, and then ∞ or how imagination works</title><description>&lt;p class="p1 firstParagraph"&gt;Picture a coordinate system. What are A and B? They are points, correct. So let  A be at (1,1) and B at (11,11). When connected A and B form a line, which we might say has a beginning and an end. Since we see the line&amp;#8217;s A and B, we can perceive it, understand it and measure it. It has a slope of 1 and length of 10&lt;span class="s1"&gt;√2. It&amp;#8217;s finite. Now let&amp;#8217;s introduce &lt;/span&gt;∞ to the game a.k.a. infinity, in Latin infinitas which means unboundedness. Imagine, where do we place ∞ on the coordinate system? &amp;#8220;How do we place the unbounded on the bounded coordinate system&amp;#8221; you might ask. That&amp;#8217;s unquestionably impossible, it would violate the laws of mathematics and physics. In the Ancient World people were imagining and depicting infinity with the &lt;a href="http://en.wikipedia.org/wiki/Ouroboros" target="_blank"&gt;ouroboros snake&lt;/a&gt;. Intriguing.&lt;!-- more --&gt;&lt;/p&gt;
&lt;p class="p1"&gt;Picture a sunny deserted island and the never-ending blue sky above it. What are A and B? A is you, B is the horizon. The distance between your eyes and the horizon is actually finite, it&amp;#8217;s √(your height in cm / 6,752) in km. We can perceive, understand and measure that. For me it&amp;#8217;s a bit over 5,30km. But what is out there after those 5 kilometers? How do we see the unseen? Does not compute. Seeing over the curve of Earth would violate the laws of physics - matter, it&amp;#8217;s volume and mass. Around the year 1000 a Norse explorer, &lt;a href="http://en.wikipedia.org/wiki/Leif_Ericson" target="_blank"&gt;Leif Ericson&lt;/a&gt;, was the first to set foot in North America. He imagined that there is land beyond the horizon. Astonishing.&lt;/p&gt;
&lt;p class="p1"&gt;Picture yourself in bed, it&amp;#8217;s warm and cozy. What are A and B? A is now - you are still awake, B is the point you start dreaming. The time between A and B can be measured, it&amp;#8217;s variable but finite number. How? I&amp;#8217;ll explain. There are &lt;a href="http://en.wikipedia.org/wiki/Sleep#Sleep_stages" target="_blank"&gt;4 different stages of sleep&lt;/a&gt; - transition to sleep, light sleep, deep sleep and REM (Rapid Eye Movement) sleep, and the 4 of them together form a sleep cycle. On average a sleep cycle continues for about 90 minutes. Approximately 70 minutes after you fall asleep you get into the first REM stage, this stage renews the mind and makes your dreams lucid. But what happens when we start dreaming? Blank. Not only we cannot foresee our dreams, but also we talk about them as &amp;#8220;what a crazy dream&amp;#8221; on the next day. In Ancient Greece and Egypt dreams were portrayed as a divine message, one which was then deciphered by a dream interpreter in order to establish a connection with the supernatural. Fascinating.&lt;/p&gt;
&lt;p class="p1"&gt;We can conclude that getting from A to B is relatively straightforward, using our knowledge we can make our way through. However, from B onwards we need something more to understand the mysteries. A wise man once said &amp;#8220;Logic will get you from A to B. Imagination will take you anywhere.&amp;#8221; That&amp;#8217;s it. That&amp;#8217;s our unknown, our x - imagination. The questions is how do we turn it on? How do we make it work its magic? And the answer is we can - you can, I can, that other guy can do it as well. Not only we can, we already do. Maybe we don&amp;#8217;t realize it, but we have all woken up from a vivid dream and thought to ourselves - &amp;#8220;Wow, that was insane. Thanks. More please.&amp;#8221; Dreams are imagination, they are hardly explainable as it is ∞, unpredictable as it is the space beyond the horizon. Imagination is infinite and it goes beyond what we see and know.&lt;/p&gt;
&lt;p class="p1"&gt;We do imagine. Unfortunately, most of the times we forget. But can we do it all the time? Can we do it consciously? We need to think of the conditions before starting to dream. We are relaxed, there are no limits to our thoughts - they flow freely. For example: &amp;#8220;You are making your way through a jungle, when a polar bear and a penguin walk in, ask you for a lighter and directions to the nearest bar.&amp;#8221; There is no one to tell us that&amp;#8217;s impossible, no one to say &amp;#8220;Moron, penguins live in the South hemisphere while polar bears live in the North hemisphere&amp;#8221; or &amp;#8220;Jeez, penguins in the jungle, are you kidding me?!&amp;#8221; You might say it can be socially awkward. I say no. &lt;/p&gt;
&lt;p class="p1"&gt;It was insane to think life expectancy on average will be 70 years a millennia ago. It was socially awkward to say the Earth is not flat 5 centuries ago. It was crazy to think a man can go in outer space. What was &amp;#8220;black magic&amp;#8221; yesterday, it&amp;#8217;s reality today all thanks to imagination. We are 7 billion on Earth today, if we all imagine where can we be tomorrow? Imagination means moving forward, moving beyond B. So I plead … please let&amp;#8217;s talk more penguins.&lt;/p&gt;
&lt;p class="p1 redLetters"&gt;.&lt;/p&gt;
&lt;p class="p1"&gt;Notes:&lt;/p&gt;
&lt;p&gt;1. Points A and B are on the line of the function f(x) = x. While I was writing the time was f(x) hours and the-angle-between-f(x)-and-Oy minutes.&lt;br/&gt; 1. How far away are you from the horizon?&lt;br/&gt; 1. The formula for optimal sleep: (# of hours) modulus 1.5 = 0 where # of hours &amp;gt;= 6 and &amp;lt;= 9. Basically 6, 7.5 or 9, everything more than 9 increases the chance of heart attack. Why 1.5? Because a sleep cycle continues 90 minutes on average (hour and a half). You feel better when you wake up in the end of a cycle.&lt;br/&gt; 1. The wise man is Albert Einstein.&lt;br/&gt; 1. Around year 1000 life expectancy was ~30 years and population ~300 million, today life expectancy is ~70 years and population ~7 billion.&lt;br/&gt; 1. Even in the Bible we can find references to imagination: Genesis 11:6 - And the Lord said, behold, the people is one, and they have all one language; and this they began to do: and now nothing will be restrained from them, which they have imagined to do.&lt;br/&gt; 1. Imagination, motherfucker, do you speak it?&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/12932290478</link><guid>http://1p1e1.tumblr.com/post/12932290478</guid><pubDate>Thu, 17 Nov 2011 14:10:00 -0500</pubDate><dc:creator>timelysis</dc:creator></item><item><title>1 + 1 = 1 or how you can get anywhere using your imagination! </title><description>&lt;p&gt;&lt;p class="p1 firstParagraph"&gt;And let&amp;#8217;s countdown together! 1… 1… 1… Go! It&amp;#8217;s currently 11th of November 2011, 11:11am UTC or if we have to present it funkier 11-11-11&amp;#160;11:11:11. So what does this mean to you? And what does this mean to me? Does it mean anything at all? Yes and no. &lt;!-- more --&gt;&lt;/p&gt;
&lt;p class="p1"&gt;It&amp;#8217;s just another tick-tock of the clock, or total of 24 tick-tock&amp;#8217;s around the globe: 1 for each timezone. You might be lucky and hear two of those tick-tock&amp;#8217;s if you are traveling to the West faster than the Earth&amp;#8217;s rotation speed (only possible with Concorde commercial flights which don&amp;#8217;t exist anymore) , or traveling to the East through the International Date Line. But as far as I know there is no 11-11-11&amp;#160;11:11:11 Tick-Tock-er Award, you can&amp;#8217;t get rich and famous. Unless maybe you manage to hear it three times, then you might get a Nobel Prize for it. And yes, that&amp;#8217;s not valid for people in orbit and pilots in fighter aircrafts, that&amp;#8217;s cheating. Unquestionably it&amp;#8217;s fun to think about it, but other than that this phenomenon has not actual purpose.&lt;/p&gt;
&lt;p class="p1"&gt;You probably see it coming right? I hope you see it already, if not bear with me.&lt;/p&gt;
&lt;p class="p1"&gt;Someone told me a while ago, there is no right or wrong, good or bad, purposeful or purposeless, it all depends on the angle you are looking at it. Let&amp;#8217;s do a rotation transformation together … say… with angle of rotation 111 degrees, direction clockwise. Do you see it now? How do you feel? It&amp;#8217;s good, it has purpose, it makes me smile. Smile along.&lt;/p&gt;
&lt;p class="p1"&gt;So what is it? What do we have in front of us? A beginning.&lt;/p&gt;
&lt;p class="p1"&gt;A beginning of an unwinding path that leads to the new purpose - put a tock to procrastination and a tick to imagination. 1 Universe, 1 Earth, 1 you and 1 me all fighting 1 evil. We are all 1, and in this 1 we are many. 1 + 1 = 1.&lt;/p&gt;
&lt;p class="p1"&gt;1 tiny step onto this path by 1 of you out there might cause 1 big difference. 11-11-11&amp;#160;11:11:11 is gone in the blink of an eye, but imagination will last forever.&lt;/p&gt;
&lt;p class="redLetters"&gt;.&lt;/p&gt;
&lt;p class="p1"&gt;P.S. &lt;br/&gt; 1. Follow/subscribe/friend/add/stalk me, there is more to come. &lt;br/&gt; 1. I&amp;#8217;m developing something under my sleeve that might as well aid you fight procrastination, it helped me.&lt;br/&gt; 1. Imagine.&lt;/p&gt;&lt;/p&gt;</description><link>http://1p1e1.tumblr.com/post/12637305300</link><guid>http://1p1e1.tumblr.com/post/12637305300</guid><pubDate>Fri, 11 Nov 2011 06:11:00 -0500</pubDate><dc:creator>timelysis</dc:creator></item></channel></rss>
