Pages

Tuesday, 8 October 2013

WHY WE SHOUT IN ANGER!!

A Hindu saint who was visiting river Ganges to take bath found a group of family members on the banks, shouting in anger at each other. He turned to his disciples smiled and asked.
“Why do people shout in anger shout at each other?”
Disciples thought for a while, one of them said, 'Because we lose our calm, we shout.'
“But, why should you shout when the other person is just next to you? You can as well tell him what you have to say in a soft manner.” asked the saint
Disciples gave some other answers but none satisfied the other disciples.
Finally the saint explained.
“When two people are angry at each other, their hearts distance a lot. To cover that distance they must shout to be able to hear each other. The angrier they are, the stronger they will have to shout to hear each other to cover that great distance.
What happens when two people fall in love? They don't shout at each other but talk softly, because their hearts are very close. The distance between them is either nonexistent or very small...”
The saint continued, “When they love each other even more, what happens? They do not speak, only whisper and they get even closer to each other in their love. Finally they even need not whisper, they only look at each other and that's all. That is how close two people are when they love each other.”
He looked at his disciples and said.
“So when you argue do not let your hearts get distant, Do not say words that distance each other more, Or else there will come a day when the distance is so great that you will not find the path to return.”

Friday, 4 October 2013

Prepare yourself better for a developer's life!!

Looking for your first position in the software world? Want to know more about developer's life? Improve your chances of getting hired and blend in better? Most cases you just finished your studies. The years you spent in the academy are valuable and helpful in many ways, but don’t necessarily prepare you for a developer's life. Now, this post is not about whether studies are a necessary and sufficient condition for being a good programmer, nor about which university prepares you better, but it is about pointing out what might be overlooked during your study, what can be improved, and how one can have a head start when diving into this exciting world. I present you with 6 essential points that will help you in your upcoming venture:

  • Understanding the structure of a software company. Although this can vary form company to company, in most cases there will be a distinction between Developers, QA's/Testers, Support, Product and IT. Understanding this structure earlier ill help a candidate understand the job description he is interviewing for. A new employee will blend in better, adopt business processes faster and utilize all the companies' capabilities.
  • Development Methodologies. Whether it's Waterfall or ScrumAgile or not, understanding the different approaches in Development Methodologies can give you a since of how your life will look like as a programmer. It could even help you choose a better suited company.
  • Code Management tools and processes.  
    • You can finish your degree with knowing slight to none about code repository tools such as SVN,GIT, etc, which are used extensively. 
    • Continuous Build as a quality control process.
    • Integration Test as a phase in the development process. 
    • Issue tracking systems which is used to handle development process as a whole.
  • Coding guidelines. No need to be alarmed if you haven't coded much during your study. However - they say it takes 100 repeats to learn how to bench-press correctly, but if you learn it the wrong way then it takes 10000 to correct yourself. Teach yourself how to write good code from the very start.
  • IDE usage.
    • IDE's are great - Don't you think? If you haven't mastered one during your studies - that's a shame. They really make life easier and supply easy access to new technologies.
    • However, on the downside - if you adopted one too fast - you might be baffled when someone will ask you to run something from the command line or mention the word classpath. Be aware that there is a world outside your IDE.
  • Utilizing the power of open source. Let's say you have a great idea for a new project. Most chances are that a large portion of your project's infrastructure is already available as open source. Moreover, choosing the right technology can save you an enormous amount of time. A new developer must understand that open source is a powerful tool that can be leveraged- there is no need to invent the wheel every time.
 As a final note, and from my point of view, the best tip that I can give a starting developer is joining an open source code initiative. This can certainly introduce him to most of the concepts mentioned above, get him a feel of the software world, and make the difference between him and other job seeking developers.