Posted by: lrrp | August 27, 2016

Short cuts to the top….


Posted by: lrrp | August 27, 2016

Learn everything….


Posted by: lrrp | August 27, 2016

An addition to Maslow’s hierarchy of needs….

This made me laugh. An addition to Maslow's hierarchy of needs.png

“Though his hardware has been decommissioned, Bill’s application has been migrated to the Cloud..”🙂



Posted by: lrrp | July 17, 2015

When will you learn that you are not your code….

main-qimg-f467d4af38d54f3dc284d5519375f736Coders are quick to criticize other people’s code. Is it optimal? Is it reliable? Is it readable? The entire field of quality assurance  is built around the need to find flaws in other people’s code.

Coder culture is driven by what is, at best, well meaning constructive criticism, and at worst is ad hominem sniping.

And for new coders who aren’t used to this kind of environment, this constant criticism can be all too much.

“The most common mistake coders make it to take criticism of their code personally.”

When I first started learning to code, I was timid about showing people my code. If anyone had anything to say at all, it was usually critical. This is simply how coding is. Think about the Linux prompt. When you successfully run a command, Linux doesn’t say “Great job! Everything ran successfully!


No, Linux says nothing when a command runs successfully. It only says something when there’s a problem with your command.This is a good analogy for coders in general. No news is good news. Coders aren’t sycophantic or overly supportive. They assume that if you are showing them your code, you are doing so because you want their help finding ways to improve it.

“The most difficult thing to learn is how to accept, and act on, constructive criticism.”

main-qimg-7603822ad884726bc4c84cfe6127ea03Chess master and Tai Chi champion Joshua Waitzkin compared the world of high level competition to a vast field covered in thorns:

“You can either spend your life trying to trim away all the thorns – so that you can safely walk across them – or you can learn to weave sandals.”

In competitive chess and Tai Chi, thorns are the attacks from your competitors and critics. Weaving sandals is a metaphor for developing a stoicism that can be generally applied, so that you can avoid the herculean effort of single-handedly changing the competitive environment itself.

This applies perfectly to coding. Instead of wishing that coding was a more hospitable and supportive environment to newcomers, we should follow Waitzkin’s advice and learn to weave sandals. Fortunately, in our case, this is rather straight forward. Just remind yourself every day – I am not my code. Then you’ll be able to accept, and act on, constructive criticism.

Posted by: lrrp | July 17, 2015

Be prepared: five killer job interview questions

No matter which side of the interview table you’re on, be prepared with these five killer job interview questions from motivational speaker James Caan CBE…

We’re all familiar with the typical interview jargon, questions like “tell me about yourself” and “what’s your five year plan?” that you’re almost guaranteed to be asked in any interview you attend. Preparation is key so I’d expect every candidate to prepare answers for these sorts of questions, but you’d be surprised at how many people trip up here because they clearly haven’t thought long enough about a strategic, informative and concise answer. Interviews are all about getting to know your character and deciding if you’re a good fit for the business.

Nine times out of ten, the interviewer will know if they’re going to hire you the moment you walk out of the room so every minute should be treated like a pitch, like you’re selling yourself in front of a few dragons.

Startup Stock Photos

If I called your manager and asked what one thing irritated them about you, what would they say?

This question will instantly throw a candidate off because they probably haven’t thought about it before. In reality, it’s just another way of asking what your biggest weakness is, a question you will definitely be familiar with. The secret to answering this type of question is making it relevant and relative to the role you’re interviewing for. For example, if you were interviewing for a role as a PA and you told me that your old boss hated how messy your desk could get, that’s not going to make a good impression, A. because as a PA you need to be organised and B. because a cluttered desk could mean things get missed. If you’re asked this question try and think of a positive you can mask as a negative, something that adds value. For example instead of having a messy desk, how about saying that your previous employer found it really annoying how much of a stickler for time keeping you were and you’d always be on their case about it. As a PA, this is exactly what I need so although being constantly reminded can be irritating, it will show me you have what it takes to keep me in line.

What was your claim to fame in your previous role?

AKA what are your strengths? Here I want to know what you excelled at in your previous role; what would your previous colleagues tell me you were known for? Give me something character building. For example, if you told me you were known for organising the best staff social events, immediately I would think you are fun to work with, a good team player and you understand the importance of culture in the workplace. Or perhaps you’re best known for putting in the hours and staying behind at work to complete a task. If so, this shows me you’re committed to delivering the best possible work and you’re not scared to get stuck in and go over and above what’s expected.

If you had a magic wand and could have any job, what would it be?

This is one of my favourites, I use it in every interview and I like it because I’m always surprised by the reaction it receives. The general rule for this question is always answer with something in the same or similar industry or role you’re applying for. You’d be surprised how many people forget they’re in an interview when I ask this question – some of the answers I’ve had are priceless! Feel free to try something a little witty (depending on the interviewer) but in most cases, the best thing is to always make it relevant or at least give a good reason why you chose this particular career path. Employers don’t like the thought of candidates applying for roles they’re not passionate about so if you can’t illustrate this, you’re immediately at a disadvantage. Take this one for example, I was interviewing for a finance manager once who told me they’d like to be a professional wrestler. That’s great I thought, but how is that going to positively impact the business’ finances? Don’t make the same mistake, your interviewer is looking for reasons to hire you, I’m not sure wrestling will really help you clinch the deal.

If you’re offered this job how could you transform the role?

Employers are looking for more than just somebody to ‘do the role’ – they want you to bring something exciting and new to their team, something that makes you stand out from the crowd. I only recruit the best and the people I do recruit always communicate how they intend on understanding, mastering and improving the role. I want candidates who show ambition, drive, innovative thinking and above all, passion – if you don’t do that, I’m wasting my time.

You’ve got 2 minutes left to ask me anything you like. What’s it going to be?

This is the ultimate killer question because it could be the difference between securing the role or not. I’ve said it before and I’ll say it again; it is absolutely essential to say yes and ask some worthwhile, researched questions. If you don’t ask any questions, this illustrates that you don’t want to know anything else about the business and you’re not interested enough to carry on the conversation. Think about what you want to ask and use it to your advantage. For example, if you know the business has just launched a new product, show you’ve done your research – tell them and ask about it. These last few minutes is your closer, use this time to sell yourself and why you’re the perfect person for the role. If you’re feeling particularly brave, ask straight out what they thought of you and if they have any reservations about hiring you. This way, you can gauge their reaction and they will like your spunky attitude. Never one to follow the crowd, through my 30 years’ experience interviewing candidates I’ve fashioned my very own set of questions designed to throw them off course and get down to the nitty gritty – to see a little of the real McCoy, not just your interview alter ego. My questions are actually interview jargon in disguise but I always end up receiving a wealth of knowledge because you’re not expecting it, you have to prepare right there and then so your responses are true and unrehearsed.

Posted by: lrrp | July 6, 2015

What can I do to stand out as a programmer?

Focus relentlessly on what you can do to make the other members of your team more successful.If there’s a bug, assume it’s your code.  If a less experienced member of your team has a question, answer the question and do so in such a way that doesn’t damage their confidence and instills trust that they can ask you more questions.  Take care of your own responsibilities but be on the lookout for potential problems that aren’t necessarily in your wheelhouse, then work to make sure those problems don’t occur.  Deflect praise to your team.  Take criticism like a professional.

Being a 10x programmer that nobody wants to work with limits your effectiveness to what you alone can do.  A humble programmer who elevates a team of 4x programmers to 7x programmers will be seen as someone who is irreplaceable.

If you are the strongest developer in your company, make the other developer’s jobs easier. Do this by:

  • Providing tools and libraries that make them more productive.
  • Implement a proper architecture that can be well maintained and extended – include the team on these decisions – they     have to work with the design too.
  • Thoughtfully answer your teams questions.
  • Do constructive code reviews.
  • Have a solid testing system in place and insist on high coverage.
  • Provide a proper Agile environment and handle some of the administrative tasks so that the system does not get in their way.
  • Don’t take all of the cool tasks for yourself
  • Promote your team’s accomplishments to the company, and get ahead of the mistakes

If you are the weakest developer in your company, make the other developer’s jobs easier. Do this by:

  • Work harder than everyone else  – you generally want to work smarter, but if other developers are already doing that, you need to fill in some gaps.
  •  Write documentation – in addition to the obvious need, it will help you learn the code base.
  • Pick up the tasks that nobody wants to do  – you will be showered with appreciation.
  • Ask good questions.
  • Learn what a good question is.
  • Have boiled-down, simple test cases ready to demonstrate your question – this process usually answers your own question.

Other Important Points

  • Stay focused, try to do things on your own and seek help when you really need it.
  • Build sample applications on your own.For all your issues you encounter.
  • Always follow good coding practices naming conventions even in the sample code blocks you write.This will burn these good practices in to your work practices.
  • Make something really awesome that other programmers will want to use.
  • Find some open source projects you can contribute to relentlessly.
  • You would always stand out if you know the underlying business of your application.
  • Make many public repositories in Git-hub with beautifully formatted code with unit test like TDD and a solid documentation file for the code.
Posted by: lrrp | June 29, 2015

Understanding HelloWorld in Java

When I first started with Java programming, the fist program I wrote was HelloWorld in Java. That time I just copied it from a text book we were referring, I didn’t know anything about it. It took me a lot of time to understand everything about Helloworld in Java and how it works. From that time, I made it a rule to start with writing Helloworld program in any new programming language I learn and try to understand every single element of it in as much detail as possible, but,  to be frank its not that easy.

When you write say Helloworld in Java,  you are not capable enough to understand everything about it, and I found it better that instead of learning everything in one go, you should give yourself some time to let the knowledge you learned sink in. It’s even better if you write Helloworld program multiple times without looking at  the book. I have found that doing it repeatedly helps you to understand it better.

 * Helloworld in Java, your first Java Program
 * @author Javin Paul
public class HelloWorld {

    public static void main(String args[]) {       
       System.out.println("Helloworld in Java");


I am using Eclipse to write it again but I suggest you guys to use notepad and command prompt because that’s where you understand How PATH and CLASSPATH works in Java. So, if you are writing it in notepad then make sure you follow below steps :

1) Save your HelloWorld program into a file also name as, name of your public class should exactly match with the name of file.

2) First compile your file to create class file, for that just go to the directory where you have saved your file and execute following command :

$ javac

If you get error “javac is not recognized as an internal or external command” it means your PATH is not set properly and system is not able to look for “javac” command it need to compiler Java file. Its usually due to missing JDK bin directory in PATH and I suggest you to read that article to sort it

3) If you able to compile the Java source file then you will see a class file “HelloWorld.class” file in same directory. It means half job is done, now you just need to run it. In order to run a Java program, you need to use “java” command as shown below :

$ java HelloWorld

Remember there is no extension, its just the name of your public class which contains main method. If everything goes well then you will see message “HelloWorld in Java” in your screen or console. If you get error “Could not find or load main class” then you need to check out that article to find the exact reason. This usually happens when you use package to store your class but in this article, I have not used package so you will very unlikely to get that error.

Posted by: lrrp | June 29, 2015

What happens When System.out.println(null)?

    • Compilation Error -This is because you can pass an Object or a String or char[]. Since null can fit in both, the compiler doesn’t know which method to use, leading to compile error.
  • Method Overloading:
    1.public void prinltln(String str) { }
    2.public void prinltln(char[] ch){ }
    3.public void prinltln(Object ch){
  •  It seems the call System.out.print(null) is ambiguous to compiler because print(null) here will find the two best specific matches i.e. print(String) and print(char[]) . So compiler is unable to determine which method to call here .
  • Compilation Error:
  • Compile Fine:
  • It’s the compiler type-checking the parameters of the method call.
  • But here we need to know one more thing  System.out.println((char[])null); will compile fine but at run time will throw runtime exception.
Posted by: lrrp | June 29, 2015

5 Great Snacks For the Coder’s Brain

You’re coding and you’ve been in the flow for a few hours. Everything is going just fine, but then hunger strikes suddenly. Since you don’t have anything on hand, you go to the cafeteria or to a nearby café to grab a muffin or a pastry full of sugar. When you sit down to resume coding while eating your snack, you feel good for a few minutes, but the sugar spike soon wears off. You start feeling like crap, and your productivity screeches to a halt. Sounds familiar?

This happens to everybody from time to time. Working with your brain makes you hungry very fast, but eating a large sugary snack to compensate and topping it with an energy drink is the least productive way to go about it. If you’re well prepared and have good quality snacks on hand, you won’t feel like crap after eating and you will be able to resume coding in no time. Great snacks are also power foods that are great for your health, so it’s worth adding them in your diet.

So here are a few snacks you should try:

  • Nuts and seeds: this is one of the best power snack to keep around since they store well and you don’t need to eat a lot to feel better. You should be making your own mixes if you can, since most trail mixes available on the market are too salty, too sugary or both. You can add all your favourite nuts, but almond, walnut, Brazil nuts, pumpkin seeds and sunflower seeds are all great choices. You can add a bit of quality dark chocolate or dried fruits to the mix for more variety.
  • Fresh fruits: All fruits are also good snacks. You can bring along anything from bananas and apples, but for pure nutritional values berries are the best. I don’t recommend fruits like kiwi that need to be peeled since you don’t want to mess around when you want something quick. Fruits can also be kept at your desk for a few days if you want to bring some in advance.
  • Yoghurt or kefir: Yoghurt is a great source of protein and probiotics, but you should choose yoghurt with as little sugar as possible: you can add your own fruits if it’s too bland for you. I’ve started drinking kefir recently, which is a fermented milk drink with even more good bacterial than yoghurt. It’s interesting but it’s an acquired taste, being a lot sourer than yoghurt.
  • Egg, fish or avocado: Those require a bit more preparation, but the proteins and good fats that make it worth it. Boiled eggs takes only a few minutes for a week’s supply and are easy to eat. Avocados are also fast to prepare: just cut them in two, add some mustard or lime juice and pack them in your lunch. Half an avocado is enough for a snack, and it can easily be eaten with a spoon. And you can bring canned sardines or smoked salmon, which requires no preparation.
  • Vegetable sticks: All raw vegetables that can be cut into sticks like carrots, celery and peppers are good options. If you don’t have time to cut vegetables, you can buy bags of precut vegetables at the grocery store. Pair them with some hummus dip for added protein and you’ll have a great snack on hand. This is a good way to add more vegetables to your diet, we could all do with more of them.

As an aside, if you really like muffins and can’t do without, you can make your own whole grain muffins and use less sugar. Home made muffins will give you less of a crash than white flour and allow you to add more fruits, nuts and seeds. You can also make smaller portion when you bake them yourself, since most store-brought muffins are huge. This is a bit heavier than the other snack options, taking more energy to digest. Many people have trouble when they eat too much grains or gluten, so you should try it and see what works for you.

Which snack are you going to try? Do you have a favourite snack that’s not on the list? I’m always on the lookout for new ideas, so please share your routine!

Older Posts »