Thursday, December 3, 2015

5 Productivity Tips for Working Professionals

There is a quote from Late APJ Abdul Kalam, which working professionals seems to use and put in practise too often, "Always leave office on time." That goes on to say, 

"A person who stays late at the office is not a hardworking person. Instead he/she is a fool who does not know how to manage work within the stipulated time. He/She is inefficient and incompetent in his work."

Here are my two cents if you had wish to follow his saying and still be productive. 



1. Make A List

Agile is good, WBS are good, but on your personal level you should always have a list. A simple bulleted list, you make on your notebook, apps or NotePad.exe. But always write it down, no matter how better you think your brain is. And... put a tick, or cross it out when it is marked down. Let it be there for sometime before you trash it - it somehow motivates you to follow on.

Recommended App: Google Tasks

2. Put Your Devices In Sync

So you got this desktop where you do your work, and then you got the Macbook to carry around and that shiny Nexus in your pocket. And just add an iPad for the sake of it. Add the no. of devices and see productivity that is suppose to increase, get out of the window.

The best way to cope with this is to keep the devices in sync, at the best you would want to sync your emails, contacts, documents, notes and code?

I use Google Apps, DropBox, Evernote, SVN and iCloud and it really keeps thing sane. 

3. Make Your Phone Sleep

Damn the notifications! So you are writing your code, or feeding your baby and ding, and there turns your neck, and there you clicked on Reply, and there you are typing your heart out. Ok, so now, what was I writing in the code?

Make your phone in Sleep Mode, and put it down face first on the table. You can may be pick it up every 2hours and check what you had missed, but keeping it on and in front, or keep it in your pocket to tickle you every now-and-then will definitely take away the productivity, not add to it.

4. Put Everything in Place before You Begin

Getting everything in order before you even begin is work half-done. It could be as simple as keeping your coffee and water on desk, to making sure your graphics, designs, icons, web services documents and so on are in place and in one easy folder. Waiting for your design asset to download from company server or looking around in your files to see where is that SQLite structure will corrupt your work-flow and set you back.

Also, open the URLs which help you with work in your browser, and even the software that you occasionally use to get the work done. For me it could be Terminal, MySQL admin, Blasamiq, a Passwords file and so on. They are as close as Command-Tab (or Alt-Tab).

5. Procrastinate

Having a To-Do is good only if you also have the ability to add the tasks you jump into, into it first. Now, here you are designing your ERD and there you have a request from your HR to fill your employee information sheet. Basically leaving your task and jumping to another will put you in the Never Ending Work club, so whenever you get a new task while you are already working on one, and which is not extremely life-and-death situation, add it to your To Do list. And continue with what you were already doing.

So if you follow the above tips you can always leave your office on time and not feel guilty about it at the same time.

Tuesday, August 25, 2015

The Outdated Programmer

Suppose like Predestination, I have travelled back 10 years and met myself. Seriously, haven't you seen the movie? So I meet myself, and advise him, errr, me, "Dude, Learn Java!". But I say, "No, I love compilers. And how the hack do you create Windows app with Java (that people buy)?". And then I say, "Dude, drop your Windows." And then I say,  "Are you serious? What should I code for then, Nokia?" And I give up, there is no arguing with the younger me.

Now hypothetically, assume another me, the future me, comes and meet me now. See me coding Objective-C and running on iPhone 6 Plus, and says, "Dude, Learn Swift. The Apple Micro-oven doesn't support Obj-C anymore."



So what can we get from this, either Predestination got into my head or I am trying to make a point. What is the point? If you make no mistake in your life, you are stupid. If you make the same mistake twice, you are fool.

The other point I am trying to make is, embrace the technology as it comes. I have personally witnessed the upcoming of Windows, Java, .NET, iPhone, Android, each one taking over the predecessor technology and moving forward. For sure, the first version has always been crappy, and the already established VB6 can do so much, and make an OLE connection, which the new one can't. But guess what, the new one gonna get better while the old one get stuck where it is now. And then you are moving with the time, and your tool is not. This is certainly not a situation you want yourself to find yourself into. Keep your ears open to the upcoming drumbeat of the newest disruptive tech, and be ready to learn it as quickly as possible.

Keep calm and learn on.