Tuesday, December 29, 2009

Easy Delegation

Accomplish More Each Day: Four Steps to Easy Delegation

You could spend two hours every evening reading tips on efficient working. You could then implement every last one of them so that you’re working as efficiently as possible, every minute of your working day.

And, all too often, you’d find that you’ve become very good at Getting Things Done. But the “things” you’re doing could be done by pretty much anyone and you’ve not made yourself any more effective. You’ll be racing through work, but, like Alice, you’ll be running hard and going nowhere.

Once you’re past the most junior level in your company, you can vastly improve your effectiveness by being willing to delegate. Even if you’re a freelancer working solely for yourself, there are tasks you can pass on to someone else (what about using a Virtual Assistant?)

So why do so many bosses end up trying to micromanage? Why do so many managers waste their time on work that a kid fresh out of high school could do? It’s often because they’re not willing to delegate – or not confident enough about it.

Delegating typically brings up some tricky issues that you might rather not face, like:

  • Needing to clarify a hodge-podge procedure before attempting to teach it to someone else

  • Spending time teaching someone else to carry out the work (when you could just’ve done it yourself)

  • Accepting that you’re not the only person who can do a good job of this task – forgetting the silly proverb that “If you want a job doing, do it yourself”

  • Needing to spend your time on real work, which only you can do. You may find you’ve been bogged down in trivia because it’s easier than tackling hard, creative tasks.
Here are some of my tips on getting through these problem patches.
  • Clarifying Procedures
    Whether or not you plan to delegate work, you should have a written procedure for any regular task that you carry out. (Keep it as simple and step-by-step as possible.)

    For example, if your job involves hosting websites for a number of clients, there are probably some simple steps you go through for each one:
    • Buying the domain name

    • Setting up hosting

    • Setting nameservers and other technical details

    • Creating email accounts...
    ..and so on. Do you really want to spend ten minutes figuring out what you did last time, in what order (and looking for account names and passwords) every single time? If you’ve got a straightforward document which lists, step by step, what you need to do, you can run through it without room for error and without much need for thought.

    Most of us have a number of routine tasks that we “bodge” our way through; things which we do on a semi-regular basis but can’t be bothered to sit down and work out a system for. When you next come across one of these in your own work, create a simple set of instructions there and then. It’ll take you a few minutes now, but it’ll save you time from now on. (Think of it like insulating your home: you pay up-front, but then you save on heating and air conditioning bills for years to come.)

  • Training Others
    When I worked in tech support, one of the reasons I often avoided delegating work was because of the need to train someone else how to do it. When you’ve got a lot on your to-do list, it often seems more sensible to spend 30 minutes getting a routine task done, rather than spending an hour teaching somebody else how to do it.

    Of course, this is a poor way to approach things. A one-off expenditure of an hour today could save you thirty minutes every week for the next five years.

    When you pass on a routine task to a colleague, make sure that:
    • You allow sufficient time to show them what to do – don’t rush this, and remember that a task that seems completely straightforward to you (because it’s so familiar) might be confusing to someone else.

    • You check their work the first time they carry out that task, and give corrections and feedback if necessary.

    • You make them fully responsible for the task: avoid having any blocks on them completing it. For example, if a client emails every few weeks asking for particular information to be compiled, ask that client to email your colleague in future – not you.
    In some cases, you’ll be passing on a one-off task. The best way to do this is to give clear written instructions (probably in an email) and to ensure that you’re available to answer questions if necessary. Don’t just dump work on someone and tell them to “figure it out”: you’ll cause them stress, and you’ll probably be unsatisfied with the results.

  • Other People Can Do A Good Job
    If you’ve got a straightforward procedure, and you’ve trained your colleague to follow it, there’s absolutely no reason why they can’t do as good a job as you.

    Don’t fall into the trap of thinking that you’re the only person who’ll check things properly, or that you’ve got a good eye for detail whereas others haven’t. If you find that work isn’t being completed to a satisfactory standard, it’s probably because either the procedure isn’t clear, or you haven’t clearly explained what needs doing.

    For some people, this is particularly important in their personal life. Don’t get hung up on being the only person in your household who can do laundry, clean the bathroom or iron clothes “properly”. If you take the time to teach a partner or child how to carry out simple household chores, you might find that you’ve freed up a lot of time for yourself. You might also consider hiring someone to clean once or twice a week – or even paying someone else to cook your meals. (It could be far cheaper than you’d think.)

  • Avoiding Busy Work
    “Busy work” is stuff that you get involved with because it’s easy, because it makes you feel productive and efficient. Typically, busy work:
    • Doesn’t make any real difference

    • Could be done by anyone

    • Makes you look or feel productive
    The biggest challenge with delegating is to accept that a lot of the work you’re doing isn’t really work – it’s just “stuff” that clogs up your day and your mind. There can be challenges involved in stepping back from the daily busyness and looking at the big picture. You might need to think strategically about the direction of your business, or your career. You might need to tackle a major project that you’ve been putting off for a long time (that very overdue re-envisioning of your company website perhaps? – This seems to be a favourite “I don’t have time...” project of many company owners, in my experience!)

    While you’re at work tomorrow, keep a list of all the tasks you carry out, from when you get into the office until when you leave. How many of them absolutely need to be done by you? Which could you delegate to someone else? If necessary, schedule half a day next week to work out simple procedures and train others to carry out your busy work

Virtual Assistant

20 Places to Find a Top Notch Virtual Assistant

The phone has been ringing off the hook, you have a paper that needs to be edited, and you don't remember when you had an inbox contained fewer than 100 emails. The to do list is just out of control and it's to the point that you can't tell where to start.


Although you have aspirations of a tremendously successful year, perhaps it's time to admit that you can't do it all alone. Whether it's a blog, a business, or both, how can you seek out opportunities for growth and expansion if you are chained to a desk all day? The answer my friend, isfinding someone that can seeminglyappear, get you caught up, and then disappear until you need them again. The answer is a virtual assistant.

The only problem is finding someone that you can rely on and trust with, what could be, your proprietary information. that remains is locating this superhero that will save you from your dreaded "busy" work.

I'll show you all the hot spots where these tech-friendly, business-savvy, superheros hang out. With a little work, you'll find someone that can take over your busywork thus allowing you to focus on more strategic initiatives.

Best Places To Find Virtual Assistants

  1. Twitter - This is where I found my VA and you can too. All you have to do is tweet about it. Instantaneously, you will receive messages from VA businesses and others who can recommend one. You will definitely have some new VA followers. If you're a Twitter fanatic, your VA can send you tweets on the status of your projects. This is also a great way to check if your VA is being productive or twittering away.

  2. Assistant Match - They match busy professionals with off-site assistants by taking care of all logistics from interviewing to reference checks. They place virtual assistants in part-time positions which can be completed in their home office.

  3. Office Details - Hires VA's which they refer to as Preferred Partners. The independent contractors are paired up with small businesses looking to higher a virtual assistant. This company requires at least 5 years of administrative experience.

  4. Craigslist - You can post a free ad under 'gigs' when searching for a virtual assistant. Be sure to include an accurate description of what you are looking for. This is a great way to screen possible applicants. Remember to look for clues in their mail response. Did they answer all your questions? If not, that's definitely a red flag and shows they do not pay attention to details.

  5. VA Networking - If you never worked with a VA, this is a great place to start. This is a place where many VAs network and brainstorm together finding the most efficient and effective solution. They provide lots of valuable information for clients seeking to work with a VA. You can submit an RFP and receive hits from many qualified members.

  6. Resource Nation - This place is as easy as 1-2-3. All you have to do is describe your project and they match you with pre-screened qualified applicants for free. You will not be overwhelmed with quotes because they will connect you with the top five vendors to select based on their price and other factors you may take into consideration when hiring a VA.

  7. Virtual Assistants - Specializes in matching skilled freelance, contract, off-site and virtual workers to your position for free. They have over 7 yrs. exp. in the contract staffing and placement services industry.

  8. International Virtual Assistants Association - Dedicated to educating the masses about the virtual assistantindustry. The nonprofit organization connects qualified VAs with clients who submit an RFP.

  9. Virtual Assistance U - This organization certifies virtual assistants based on their testing results from the learning center. The VAs who successful complete the graduate program are connected to clients who visit the site and submit a RFP.

  10. Tasks EveryDay - Their team of VAs work around the clock, day or night, just for you. They even provide a local number you can call to connect directly with your assigned VA. All you have to do is pick a monthly plan and submit your assignment.

  11. Virtual Assistance Chamber of Commerce - In order for any VA to be part of this fine community, they must go through a process of essays and screening. VACOC provides a client center with lots of helpful resources and the ability to submit a RFP to connect with a qualified VA.

  12. Team Double Click - Assesses your needs and matches you with one of their highly-skilled and trained virtual assistants.

  13. AssistU - Many VAs start their career with training from AssistU certificate program. The qualified individuals connect with you once you submit a request for services on their site.

  14. Staff Centrix - Company developed a highly-successful Portable Career & Virtual Assistant Training Program for US military spouses and The e-Entrepreneur Training ProgramTM for the U.S. Departments of State Foreign Service Spouses -- helping you connect with men and women at bases and posts around the world.

  15. Elance - All you need to do is register and post your project. The offer many tools and features such as a time tracking tool and user profiles that compliment your search in locating the ultimate VA. This is a great way to stay on budget since you set the price and they bid to work for you.

  16. Find Virtual - Social networking site for VAs that provide information about the virtual assistant industry. They can help you find a virtual assistant and hire them.

  17. Get Friday - Their staff of VAs and team members can help you. All you need to do is pick a monthly plan and fill out the membership form and they will guide you from there.

  18. Longer Days - Once you choose your monthly membership plan, they will connect you with a VA that is employed by them. Even though they have a team of VAs, they make sure you work with the same individual each time.

  19. Hire My Mom - Provides businesses with top talent for temporary and permanent projects while enabling mom professionals to capitalize on the freedom and flexibility to do top-rated work from home. You can post your project and connect with a qualified work at home mother.

  20. Guru - You can find a freelance virtual assistant to assist you with any project by browsing profiles or submitting your project. You will receive many quotes within hours. Based on your criteria, you can choose a VA and pay them through an escrow account.
Also see 5 Ways to Find, Hire, and Use a Virtual Assistant.

Tuesday, December 15, 2009

Live life without regrets

I was admitted into the hospital last year and during that time I was reminded that we only live once. To some people this means 'do it all' or 'take more risk'. To me, it's larger. It means what we do today cannot be undone. This minute right now is your last chance to impact the next minute. Remember this, you only have a single lifetime and how you are going to live is totally up to you.

Friday, November 20, 2009

Profiling kernel code coverage



Measuring which lines of code get executed and how often can be a useful tool for debugging or testing. That capability has long been available for user space programs in the form of gcov. A recent patch seeks to allow kernel hackers access to the same tool.

There are three main components to making gcov work with the kernel: changing the build to add the -fprofile-arcs -ftest-coverage gcc flags, hooking up the gcc-generated code to record the coverage information, and providing a way for the kernel to output the data to user space. TheGCOV_PROFILE kconfig option governs whether to include gcov into the build, while GCOV_PROFILE_ALLactivates profiling for the entire kernel. If desired, individual directories and files can be selectively included or excluded from being instrumented.

The new kernel/gcov directory contains the necessary functions to support the gcc-generated profiling code. This includes handling statically linked kernel code as well as kernel modules that are loaded. Information gathered from code in modules can be either preserved or discarded when they are unloaded. This will allow analysis of the module unloading path that could be useful for detecting resource leaks or other problems in that process.

A user space program compiled for gcov will write a binary file to the filesystem for each source file that contains the data corresponding to the execution path through that file. The kernel needs to do that differently, so instead it writes to a file in debugfs. Each source file that is compiled for gcov will store its information in /sys/kernel/debug/gcov/path/file.gcda, where /sys/kernel/debug is the debugfs mount point and path is the path to the file in the kernel tree. The individual .gcda files can also be written to, which will result in setting the accumulated data for that source file back to zero.

Once the data has been gathered, gcov can be invoked to produce a file that annotates the source showing each line with the number of times it has been executed. LCOV is a graphical tool that can also be used to examine the coverage information. LCOV and the gcov kernel patches both come from the Linux Test Project which has an extensive kernel test suite and is using gcov to expand the coverage of their tests.

As part of the patch set, the seq_file interface has been extended to allow writing of arbitrary binary data to a virtual file. Currently, the seq_file interface is somewhat character oriented, so a function has been added to fs/seq_file.c to provide that ability:

    int seq_write(struct seq_file *seq, const void *data, size_t len) 
As the prototype implies, it writes len bytes from data to the seq_file seq.

Efforts to get gcov support into the kernel have been around since 2002, but the code was recently rewritten to be a better fit for recent kernels. In the patch, Peter Oberparleiter says "due to regular requests, I rewrote the gcov-kernel patch from scratch so that it would (hopefully) be fit for inclusion into the upstream kernel." One of the bigger changes is to move the user space interface for gcov from /procinto debugfs.

It seems that the technical issues have largely been addressed in the third version of the gcov patch. It can provide useful information, especially for increasing the reach of test coverage—something that can only help reduce kernel bugs—so it could make for a nice kernel addition. Whether it will be picked up into linux-next or -mm and pushed towards an eventual mainline merge remains to be seen.

Sunday, November 15, 2009

mutex

Mutexes may be recursively acquired, but they are intended to be held for a short period of time. Specifically, one may not sleep while holding a mutex. If you need to hold a lock across a sleep, use a lockmgr(9) lock

Monday, November 9, 2009

User Space vs Kernel Space

User Space vs Kernel Space

A kernel is all about access to resources, whether the resource in question happens to be a video card, a hard drive or even memory. Programs often compete for the same resource. As I just saved this document, updatedb started updating the locate database. My vim session and updatedb are both using the hard drive concurrently. The kernel needs to keep things orderly, and not give users access to resources whenever they feel like it. To this end, a CPU can run in different modes. Each mode gives a different level of freedom to do what you want on the system. The Intel 80386 architecture has 4 of these modes, which are called rings. Unix uses only two rings; the highest ring (ring 0, also known as `supervisor mode' where everything is allowed to happen) and the lowest ring, which is called `user mode'.

Recall the discussion about library functions vs system calls. Typically, you use a library function in user mode. The library function calls one or more system calls, and these system calls execute on the library function's behalf, but do so in supervisor mode since they are part of the kernel itself. Once the system call completes its task, it returns and execution gets transfered back to user mode.

The Linux Kernel Module Programming Guide

http://tldp.org/LDP/lkmpg/2.6/html/

Sunday, November 1, 2009

http://www.dumblittleman.com/2009/10/7-must-read-productivity-steps-to.html

Step #1: Write Down What You Want to Accomplish and Give it a Deadline
Step #2: Create a Simple Plan for Getting Things Done
Step #3: Schedule Critical Tasks Daily
Step #4: Eat that “Ugly Frog” First
Step #5: Focus on the task at Hand
Step #6: Just Say “No”
Step #7: Track and Report Your Progress

Friday, October 9, 2009

words learned

1 grouch : A bad-tempered person

40+ Tips to Improve your Grammar and Punctuation

http://www.dumblittleman.com/2006/12/40-tips-to-improve-your-grammar-and.html

Tuesday, September 22, 2009

5 Practical Keys to Living The Life of Your Dreams5 Practical Keys to Living The Life of Your Dreams

Link : http://www.dumblittleman.com/2009/09/5-practical-keys-to-living-life-of-your.html
I’ve spent most of my life studying success. I’ve always been intrigued by what causes one person to succeed and another to fail. Why does one person become rich, while another person seems doomed to a life of poverty? Is it due to where they were born, or the social status of their parents, or the academic education they received?Yes, these external situations are indeed factors, but they are not the cause of success. The real source of success comes from following the principles of success; principles that work for all alike. If you follow the principles, your bettering your odds of success! I’ve studied these principles over the last 15 years. From this study I’ve come up with five keys that are necessary for you to live the life of your dreams. This article recaps those five keys. Read them, study them, and then put them into action; soon you to will be living the life of your dreams:Key Number 1: A Plan
“Have a plan. Follow the plan, and you will be surprised how successful you can be. Most people don't have a plan. That's why it's easy to beat most folks.” - Paul "Bear" Bryant, University of Alabama's Crimson Tide Football CoachIn order to live the life of your dreams you must have a written plan as to how you will get from where you are to where you want to be. If you have no plan, you will fail, and you can quote me.A plan is a map which will guide you to your destination, without one, you’re lost, and you’ll never find your dream. Thane Yost said, the will to win is worthless if you do not have the will to prepare.So develop a plan today.Key Number 2: Passion
“Nothing great in the world has ever been accomplished without passion.” - Hebbel, German Poet and DramatistIf reaching your dream is a road trip, then passion is the fuel that will get you there. You must determine what your passion is, and you must dedicate your life to living your passion, if you want to live your dream. You will never be truly happy if you’re not doing what you’re most passionate about. If you love to sing, then you must sing, if you love to dance, then you must dance, and if you love to paint, then you must paint.Your passion will give you the ability to overcome the obstacles associated with achieving your dreams. Nothing worth achieving is going to be easy; passion gives you the strength to go through the pain of failure until you arrive at your dream.So if you’re planning on doing the impossible, make sure your plan includes your passion. One of my favorite quotes is by an unknown author and it goes, “Above all, be true to yourself, and if you cannot put your heart in it, take yourself out of it.”Key Number 3: Action
Great it is, to dream a dream,when you stand at youth, by a starry stream,but a greater thing, is to fight life through,and say at the end, the dream is true. - Poet UnknownFor every dream accomplished, there is a story. A story of sweat, blood and tears; if you’re going to achieve your dreams, you’re going to have to give your all.You must become consumed by the dream. You must see it, think it and do it. I like what Mario Andretti the race car driver said, he said, “If things seem under control, you’re just not going fast enough.” That’s what I’m saying to you, if things aren’t just a little chaotic, you’re not moving fast enough toward your dreams. As the saying goes, you can’t stroll to a goal.Glade Byron Adams said, “Chase down your passion like it’s the last bus of the night.” That’s the determination and persistence that’s necessary for you to live your dream.Remember there are no short cuts to success; we must all take the same road.Key Number 4: Faith
“Whether you believe you can do a thing or not, you are right.” - Henry Ford, Founder of the Ford Motor CompanyYour beliefs determine your actions. If you don’t believe you can succeed, then you won’t take the actions necessary to succeed. If you believe you can succeed, then you will take the actions to succeed, and you will succeed; it’s that simple.Faith in your limitless ability is required for you to live the life of your dreams. I think if anyone can succeed, then everyone can succeed. You were born to be a success, as cliché as that sounds, it’s the absolute truth. Walt Disney said if you can dream it, you can do it.Key Number 5: Teamwork
“Teamwork is the fuel that allows common people to attain uncommon results.” - Author UnknownThe song is true, “Everybody needs somebody.” In order to live the life of your dreams you need a team. It may be your spouse, it may be your business partners, it may be your mentors, it may be your family, but everyone needs someone to support them and help them along the way.Don’t try to do it alone, because you can’t. Learn to lean on others for wisdom, advice, counseling and support, and be sure to reciprocate the same.We’re all connected and we need each other, if I write, then I need you to read. If you sing, then you need me to listen.In closing, go after your dreams, not because they’re easy to attain, go after your dreams because you deserve to live the life of your dreams.

Wednesday, July 29, 2009

myself

Your presence is a present to the world.
You are unique and one of a kind.
Your life can be what you want it to be.
Take the days just one at a time.

Count your blessings, not your troubles.
You will make it through whatever comes along.
Within you are so many answers.
Understand, have courage, be strong.

Do not put limits on yourself.
So many dreams are waiting to be realized.
Decisions are too important to leave to chance.
Reach for your peak, your goal and you prize.


Nothing wastes more energy than worrying.
The longer one carries a problem the heavier it gets.
Do not take things too seriously.
Live a life of serenity, not a life of regrets.

Remember that a little love goes a long way.
Remember that a lot … goes forever.
Remember that friendship is a wise investment.
Life’s treasure are people together.

Realize that it is never too late.
Do ordinary things in an extraordinary way.
Have hearth and hope and happiness.
Take the time to wish upon a start.

AND DO NOT EVER FORGET ….
FOR EVEN A DAY
HOW VERY SPECIAL YOU ARE