Life
Recent Post
Sunday, 3 November 2013
4 Steps for Finding the Path to Fulfill Your Dreams
How do you fulfill your dreams when you don’t know where to start and worry about the time and money that it may take you?
It can sometimes feel rather overwhelming to make the type of major life changes that lead you to meet the goals you’ve always dreamed of reaching. So if you find yourself pondering that, “where do I begin?” question, try these 4 simple steps for identifying the path to fulfill your dreams without getting “off track”.
Fulfill Your Dreams: Step One
Pretend for a moment that you have all the courage you could ever possibly want, and that money is just not an issue for you (no matter how much in reality it may be). Take a clean sheet of paper and at the top of it, list one area of your life you’d like to change. This might be something with your relationship status, career, spiritual connection, a creative endeavor, your physical condition, something environmental or anything else you choose.Fulfill Your Dreams: Step Two
Once you’ve chosen the area you’d like to work on, draw two vertical lines down your piece of paper to divide it into thirds. On the far left side, write down what you dream this area of your life could be. Let yourself have the freedom to make the dream as far-reaching as you could want it to be. Identify your highest potential in this area of your life that you are working on right now. Let yourself be as imaginative and upbeat as possible. Then, just as you’re able to pretend you have the ultimate amount of courage, pretend that no limitations—self or otherwise— exist.Fulfill Your Dreams: Step Three
On the extreme right side of your sheet of paper, write down a summary or list of the factors as they currently are in your life relating to each aspect of the goal you have on the left side of your sheet. In other words, what is your situation in this area of your life now? On the left side you have the ideal and on the right side you have your present situation. Make sure you thoroughly identify your status quo, even if it’s a painful prospect to acknowledge.Fulfill Your Dreams: Step Four
Now, finally, in between what is ideal on the left and what is real on the right, find the transition factor in the middle column of your paper. What are the steps you are willing to take that can help you to shift your situation from what is now, to where you want to be? This is the path for transitioning your dream to reality. In other words, use the middle column to reconcile the right and left sides of your paper to identify that path to your ultimate goal.If you complete this exercise, you’ll be on the right track to begin a life-changing journey inspired by your own dreams. There is never a better time than now to take any area of your life from where it is, to where it could be!
“Start working to fulfill your dreams, otherwise someone else will put you in work to fulfill theirs.”
Wednesday, 30 October 2013
Three Mental Tricks to Deal with People Who Annoys You!
Something
that we struggle with daily, that eats us up and causes stress and
anger: annoying people. You know those people. They cut in line, are
rude to you in the office or at the restaurant, cut you off in traffic,
talk loudly about obnoxious things, play loud music when you’re trying
to concentrate, interrupt you, and so on.
These
offenses are violations of the way you think people should act. And so
it burns you up. Don’t worry, I’m the same way. If you just keep letting
these offensive people get to you, you’ll always be mad or annoyed. Life won’t be very good. But it’s something you can learn to deal with.
I have to admit I’m not perfect at this, but here are three strategies I use that are helpful:
Get Big
I learned this one from a person,
who uses “Get Big” as one of his slogans that helps him to be mindful.
Imagine you’re a 2-year-old toddler who can’t have a toy or some ice
cream right this minute. This problem is your entire universe,
because you have no perspective, and so you throw a fit. This is the
world of a 2-year-old. But as
adults, they know that this is a very small problem, and in fact there are
lots of other things the 2-year-old could do to be happy.
Sure,
that’s easy for us—we have a bigger perspective. But when someone
offends us, we have a small perspective. This little offense is the
biggest thing in the world, and it makes us very angry. We throw the
equivalent of a 2-year-old fit. But if we get a bigger perspective ("Get
Big"), we can see that this little thing matters very little in the
bigger picture. It’s not worth being angry over. So remind yourself to
"Get Big," then widen your perspective.Float Down the Stream
Give Them a Mental Hug
This little trick can transform the way I feel about someone who makes me angry. Let’s say someone has just said something rude to me. How dare they! Don’t they have any consideration for my feelings? But of course, in this reaction, I’m not having any consideration for their feelings—only mine matter. So I try to empathize with this rude person, and realize that they’re angry, or scared, or both. They are being rude as a coping mechanism for their fear. And so, mentally (and once in a while physically), I give them a hug. I have compassion for this scared person, because I too am often scared. We’re the same. We need a hug, some compassion, a little love. Remember the movie Munnabhai MBBS and his move "Jaado ki Jhappi" just like that!
Try one of
these three tricks the next time someone makes you mad or offends you.
And then smile in serenity, armed with the comforting knowledge that,
like me, you are superior to the rest of the world.
Labels:
Featured
Saturday, 19 October 2013
Inspiring stories #4: Life is an Echo
A little boy got angry with his mother and shouted at her, "I hate you, I hate you." Because of fear of reprimand, he ran out of the house. He went up to the valley and shouted, "I hate you, I hate you," and the echo returned, "I hate you, I hate you." Having never heard an echo before, he was scared, and ran to his mother for protection. He said there was a bad boy in the valley who shouted, "I hate you, I hate you." The mother understood and she asked her son to go back and shout, "I love you, I love you." The little boy went and shouted, "I love you, I love you," and back came the echo. That thought the little boy a lesson - that our life is like an echo: We get back what we give.
Labels:
Attitude,
Inspiration
5 Ways to Stop Laziness In Its Tracks
Is procrastination eating into your valuable study time? Does it stop you from making the change to a healthier lifestyle or affecting your performance at work?
We all have our lazy, unproductive moments, when we really don’t feel like doing anything. The problem is, when these lazy moments become too frequent and actually stop us from moving our life forward.
Here are 5 powerful, butt-kicking ways to stop laziness, beat procrastination and get more done.
Uncover the true reason behind your laziness
The answer to ‘How to stop laziness’, starts with the underlying factors behind it. Laziness just like procrastination can be caused by deep psychological emotions such as feeling overwhelmed, stuck, afraid of failure or simply uninspired. Not every task or activity is exciting and fun to do.
Frequently, we may find ourselves stuck with tasks that seem complex, time-consuming and boring. It’s absolutely normal to resist doing them, but it helps to know what causes this resistance, so that you can figure out the best way to deal with it.
Find your ‘hot buttons’
Discover what really motivates you. Not in a ‘blah-blah find your passion’ way, but here and now.
What usually helps you to spring into action? Is it an approaching deadline? The sense of responsibility? Tony Robins’s inspirational video on YouTube? The thought of an upcoming vacation? A little reward that you promised yourself? Or the fear of looking like an underachiever in the eyes of your colleagues and your friends?
We all have these ‘hot buttons’, based on either moving towards something pleasant or avoiding something highly unpleasant (like a stern look from the boss or a parking ticket).
When you find what motivates you, it will be much easier to use this knowledge to your advantage and stop laziness.
List 3 things you want to accomplish before you go to bed
It’s that easy. You don’t need to write a laundry list of things that you want to get done. You just have to pick 3 tasks and write them down. Putting something in writing is a sign of commitment. It’s like a contract that you sign with yourself, promising that you will finish these tasks before you go to bed (even if it means staying up an extra hour).
When you get in a habit of listing 3 things and getting them done, you will no longer have to worry about laziness or procrastination. Just three small, but consistently met tasks a day can add up to some jaw-dropping positive life changes by the end of the year!
Work in blocks of time and take breaks
We often procrastinate, because we are physically and mentally tired, not because we don’t want to try harder. Seemingly unrelated things such as lack of sleep, a heavy meal at lunch, or too many hours spent sitting in front of the computer, have a huge impact on our productivity, concentration and performance.
You may push and you may pull, trying to keep up with your expectations and the expectations of other, but eventually you will wear yourself out. So don’t push yourself to the point where your body and mind are crying out for a break. Schedule your procrastination by allowing yourself to take 10-15 minute breaks after every 40 minutes of work. Get up, move around, breathe some fresh air, change your surroundings and you’ll notice that it is much easier to create momentum when you get back to work.
Allow yourself One Lazy day
If you force your body on a strict diet, it will go into starvation mode. Which means that every time you eat something caloric, your body stores these calories as fat, trying to protect itself from starving again in the future. The same mechanism may be triggered by pushing your mind and body to work harder, instead of letting yourself relax, rest and recharge. They will take their down time whenever they can (even if it means procrastinating at work).
Don’t force yourself into ‘down time starvation mode’. Slow down. Let yourself enjoy one lazy day and just do nothing, without feeling guilty or stressed out about it. It may go a long way towards stay productive throughout the rest of the week.
Labels:
Hacking,
Inspiration,
Life,
News
Wednesday, 16 October 2013
Introduction to Mobile Prototyping with HTML, CSS and JavaScript
If you are a designer in this day and age you are probably designing for handheld devices like smartphones and tablets. We live in a polarizing world where on one side we have native apps and on the other the web, with responsive sites and web apps. Designing in this environment requires understanding of the context you will be designing for, therefore, testing on devices. There are several ways to create prototypes, from paper to motion in After Effects. For me, basic HTML, CSS3 and JavaScript do the best job because they allow me to test on the phone with an incredible level of accuracy.In this post I will start sharing some tips on how to create basic HTML/CSS3/JS prototypes. The idea is to enable you to test your designs on phones, tablets or web. I will also assume that you know a little bit of HTML and CSS, but of course you can learn that online or doing the reverse engineer. So in this first post I will show you how to create a simple prototype with a few icons and basic transitions. You can then apply to your own designs. The coolest thing is that you can create a super smooth prototype with this simple technique.
Introduction
The first thing is to start an HTML document and make sure you have the structure done.For prototypes, the simplest way to create them is by having all screens you want to test in the same file, that way there won't be any lagging between screens. Remember, we are creating a prototype, not a web app.
The way I organized my HTML is that every screen will use a "DIV" tag with an "ID" and a "CLASS='SC". That way I can use CSS to make them work the same way.
For each screen I used the "HEADER" tag to create the header of the screen. Below is the full HTML file of the prototype.
<!doctype html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta charset="utf8">
<title>Prototype</title>
</head>
<body>
<div id="home" class="sc selected">
<ul>
<li class="link none" page-load="screen1"></li>
<li class="link slideup" page-load="screen2"></li>
<li class="link slideleft" page-load="screen3"></li>
<li class="link slideright" page-load="screen4"></li>
<li class="link slidedown" page-load="screen5"></li>
<li class="link 3dright" page-load="screen6"></li>
<li class="link 3dleft" page-load="screen7"></li>
</ul>
</div>
<div id="screen1" class="sc">
<header>
<a class="back link none" page-load="home">Back</a>
<h1>Screen 1</h1>
</header>
</div>
<div id="screen2" class="sc">
<header>
<a class="back link backdown" page-load="home">Back</a>
<h1>Screen 2</h1>
</header>
</div>
<div id="screen3" class="sc">
<header>
<a class="back link slideright" page-load="home">Back</a>
<h1>Screen 3</h1>
</header>
</div>
<div id="screen4" class="sc">
<header>
<a class="back link slideleft" page-load="home">Back</a>
<h1>Screen 4</h1>
</header>
</div>
<div id="screen5" class="sc">
<header>
<a class="back link backup" page-load="home">Back</a>
<h1>Screen 5</h1>
</header>
</div>
<div id="screen6" class="sc">
<header>
<a class="back" page-load="home">Back</a>
<h1>Screen 6</h1>
</header>
</div>
<div id="screen7" class="sc">
<header>
<a class="back" page-load="home">Back</a>
<h1>Screen 7</h1>
</header>
</div>
</body>
</html>
Step 2
For the icons, notice that I created a list using "UL" and "LI". Also notice that there are other classes like "LINK", "NONE", "slideup", "slideleft" and more. I will cover those in a few, but for now let's focus on the design of the screens and the icons.The first line you can see that I am reseting the CSS, that's an easy way to clear all properties and styles that browsers have. I am using the Eric Meyer's CSS Reset. You can find it at http://meyerweb.com/eric/tools/css/reset/
For the screens, this is the CSS:
@import "reset.css";
html, body{
width: 100%;
height: 100%;
}
body{
padding: 0;
margin: 0;
width: 100%;
height: 100%;
position: relative;
}
.sc{
width: 100%;
height: 100%;
position: absolute;
display: none;
z-index: 10;
}
.sc.selected{
display: block;
z-index: 11;
}
Icons
For the icons, we will use a basic "display:inline-block". We could have used the new and fancy flex model, however it doesn't work in Safari, so for now let's wait till iOS7.#home ul{
width: 100%;
height: 100%;
text-align: left;
}
#home ul li{
height: 72px;
width: 72px;
background: #fff;
display: inline-block;
margin: 22px 0 0 22px;
border-radius: 6px;;
}
Screens
Each screen will have a different color background. Below you can see the CSS.#home{
background: #333;
}
#screen1{
background: #2C3E50;
}
#screen2{
background: #E74C3C;
}
#screen3{
background: #3498DB;
}
#screen4{
background: #ECF0F1;
}
#screen5{
background: #2C3E50;
}
#screen6{
background: #E74C3C;
}
#screen7{
background: #3498DB;
}
jQuery
Now it's time for the most important part, how to make things work. How to make the links open a different screen. To do that we will use Javascript with jQuery. We will use jQuery because it's easier for beginners to understand how Javascript work.To use jQuery we will have to make sure we are loading it in our HTML. To do that, use this code withing your "HEAD" tag. We are basically loading jQuery from its servers.
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
Removing the 300ms lag
Every time you click/tap something using a mobile phone, there will be a 300ms second if you use regular Javascript events like "onclick". To get rid of that there are some plugins online. The one we will use is based on Google Fast Button, but it's a jQuery version. You can read more about it at https://github.com/alexblack/google-fastbutton
Download the ZIP file and copy the .js files to the folder of your HTML file. Then add these lines right after the previous "script" tags that you used load jQuery.
<script src="google.fastbutton.js"></script>
<script src="jquery.google.fastbutton.js"></script>
Animations
CSS animations are the best way to create silk smooth animations for mobile prototypes. You can create animations using the keyframe technique, however there's an amazing jQuery plugin that helps. The plugin is the jQuery Transit - CSS3 transitions and transformations by Ricard Cruz http://ricostacruz.com/.Same thing as before, let's load the plugin. Just add the code like the example below.
<script src="http://ricostacruz.com/jquery.transit/jquery.transit.min.js" type="text/javascript"></script>
Basic transition
For the basic transition, that's hiding the current screen and showing the new one we will use CSS classes. Notice that theres a ".sc" and a ".sc.selected". For the basic ".sc" we have a "display:none", that means all screens will be hidden. Then for the one selected ".sc.selected" there's a "display:block". So basically, the idea is, the screen that's visible, it will have a class "selected". By removing the class and adding to another screen, we make a simple transition.Below you can see the code.
$(document).ready(function() {
$(".link").fastClick(function () {
screen = "#" + $(this).attr("page-load");
if($(this).hasClass("none")){
$(".sc").removeClass("selected");
$(screen).addClass("selected");
}
})
})
The code above is basically, when the user clicks on a tag with the class ".link" it will get the screen to show, that is in the "page-load" from the link. We will create a variable called "screen" to have this value, but we will add the "#" symbol, that is the one used to represent the "ID".
If the link has a class "none" that is for different animations, we will basically remove the class "selected" to all ".sc" tags. Then we will add the class "selected" to the one we want to show.
Slide from Right to Left
To create a simple slide transition, we will pretty much follow the same idea, the only difference is that we will position the screen to load off the current viewport and then animate it in. Below you can see the code.if($(this).hasClass("slideleft")){So the code below will first add a class "previous" to the current screen, that's already selected. Then it will position the screen to show off the screen using "$(screen).css({x:$(window).width() + "px"})" that means, the screen will be position in the width of the window "$(window).width()" to get the value and move it in the X axis to that point. Example, if your screen is an iPhone, it will move the new screen at 640px. Then the class "selected" will be added in order to make it visible. At this point you will have 2 screens with the class "selected".
$(".selected").addClass("previous");
$(screen).css({x:$(window).width() + "px"}).addClass("selected");
$(".previous").transition({x:"-" + $(window).width() + "px"},300,"ease");
$(screen).transition({x:"0px"},300,"ease",function () {
$(".previous").removeClass("selected");
$(".previous").removeClass("previous");
$(".sc").removeAttr("style");
});
}
The second part is the animation using jQuery Transit. So we will basically animate the screen that was on the right to the 0 position using "$(screen).transition({x:"0px"},300,"ease",function ()". The time of the animation will be 300ms and it will use "ease" to make the speed not linear. Once the animation ends, we call a function to remove the "selected" class from the "previous" tag. Then we remove the "previous" class too. At last we remove any "style" attribute to make sure that there won't be any issue in the other animations.
More Animations
Below you can see different transtions type. We have SlideUp, SlideDown, SlideLeft, SlideRight, BackDown, Backup.if($(this).hasClass("slideup")){
$(".selected").addClass("previous");
$(screen).css({y:$(window).height() + "px"}).addClass("selected");
$(screen).transition({y:"0px"},300,"ease",function() {
$(".previous").removeClass("selected");
$(".previous").removeClass("previous");
$(".sc").removeAttr("style");
});
}
if($(this).hasClass("slidedown")){
$(".selected").addClass("previous");
$(screen).addClass("selected");
$(screen).css({y:"-" + $(window).height() + "px"});
$(screen).transition({y:"0px"},300,"ease",function() {
$(".previous").removeClass("selected");
$(".previous").removeClass("previous");
$(".sc").removeAttr("style");
});
}
if($(this).hasClass("slideleft")){
$(".selected").addClass("previous");
$(screen).css({x:$(window).width() + "px"}).addClass("selected");
$(".previous").transition({x:"-" + $(window).width() + "px"},300,"ease");
$(screen).transition({x:"0px"},300,"ease",function () {
$(".previous").removeClass("selected");
$(".previous").removeClass("previous");
$(".sc").removeAttr("style");
});
}
if($(this).hasClass("slideright")){
$(".selected").addClass("previous");
$(screen).css({x:"-" + $(window).width() + "px"}).addClass("selected");
$(".previous").transition({x:$(window).width() + "px"},300,"ease");
$(screen).transition({x:"0px"},300,"ease",function () {
$(".previous").removeClass("selected");
$(".previous").removeClass("previous");
$(".sc").removeAttr("style");
});
}
if($(this).hasClass("backdown")){
$(".selected").addClass("previous");
$(screen).show();
$(".previous").css("z-index","24").transition({y:$(window).height() + "px"},300,"ease",function() {
$(".previous").removeClass("selected");
$(".previous").removeClass("previous");
$(screen).addClass("selected");
$(".sc").removeAttr("style")
});
}
if($(this).hasClass("backup")){
$(".selected").addClass("previous");
$(screen).show();
$(".previous").css("z-index","24").transition({y: "-" + $(window).height() + "px"},300,"ease",function() {
$(".previous").removeClass("selected");
$(".previous").removeClass("previous");
$(screen).addClass("selected");
$(".sc").removeAttr("style");
});
}
Using the animations
With this basic code you can simply add a class "link" to any tag to make it clickable. Once it's clickable you can choose the transition by using another tag. In our case you can use:Conclusion
It might look confusing, but as any new thing we want to know there's a learning curve. The secret is to go little by little, with small little achievements in order to get easy and quick rewards, that way we keep ourselves motivated.You can also download the files and check on your phone (recommended)
Download Files
Labels:
Blog,
Featured,
Technology
Inspiring stories #3: Sharpen your Axe
John, a woodcutter, worked for a company for five years but never got a raise. The company hired Bill and within a year he got a raise. Then John resented Bill's getting a raise after only a year and went to his boss to talk about it. The boss said, "You are still cutting the same number of trees you were cutting five years ago. We are a result-oriented company and would be happy to give a raise if your productivity goes up." John went back, started hitting harder and putting longer hours but he still wasn't able to cut more trees. He went back to his boss and told him his dilemma. The boss told John to go talk to Bill. "Maybe there is something Bill knows that you and I don't." John asked Bill how he managed to cut more trees. Bill answered, "After every tree I cut, I take a break for two minutes and sharpen my axe. When was the last time you sharpened your axe?"When was the last time you sharped your axe? Past glory and education don't count for much. We have to continuously sharpen the axe.
Tuesday, 15 October 2013
Inspiring stories #2: Look for the Gold
Andrew Carnegie came to America from Scotland as a young boy. He started out by doing odd jobs and ended up as one of the largest steel manufacturers in United States. At one time, he had 43 millionaires working for him. A million dollars is a lot of money today, but in the 1920s it was worth much more!What is your focus? Search for the gold. If you are looking for what is wrong with people or with things, you will find many faults. What are we looking for? Gold or dirt? Even in paradise, fault finders will find faults.Most people find what they are looking for.
Someone once asked Mr. Carnegie how he dealt with people. Andrew Carnegie replied, "Dealing with people is a lot like digging for gold: When you go digging for an ounce of gold you have to move tons of dirt. But when you go digging you don't go looking for the dirt, you go looking for the gold."
Andrew Carnegie's reply has a very important message. Through sometimes it may not be apparent there is something positive in every person and every situation. We have to dig deep for positive.
Labels:
Attitude,
Inspiration,
Stories
Inspiring stories #1: The Color
There was a man who made his living selling balloons at a fair. He had balloons of many different colours, including red, yellow, blue, green and many more. Whenever business was slow, he would release a helium-filled balloon into the air. When the children saw the balloon go up, they all wanted one. They would come up to him, buy a balloon and his sales would go up. All day, he continued to release a balloon whenever the sales slowed down. One day, the balloon man felt someone tugging at his jacket. He turned around and a little boy asked, "If you release a black balloon, would that also fly?" Moved by the boy's concern, the man replied gently, "Son, it is not the colour of the balloon, it is what's inside that makes it go up."The same principle applies to our lives: It's what's inside that counts. And what's inside of us that makes us go up is our attitude.
Labels:
Attitude,
Balloon,
Inspiration,
Stories
Subscribe to:
Posts (Atom)