Skip to main content

Tips to Development Beginners


Software Development tips:

These are just some tips and tricks I learnt over my career that I’d like to share. This list does not contains silver bullets and it doesn’t pretend to be complete or be an absolute truth. It’s just a list that I hope may be helpful for someone.



1 ) Push Coding to last:


  1. stay away from the keyboard!
  2. print the spec and take my time to read them carefully. Do not think that everything you will read there is exempt of mistakes or cannot be done in better and simpler ways. At the end of the day, people who wrote the specs, know little or nothing about the software, what they know is how to make more money with new functionality.

2 ) Simple = perfect:


Strive for simplicity, forget about the trends, focus on the most basic thing that will give you what is needed. Don’t think straight about XML configuration, spring/seam framework, drools, aspects, multi-threading solutions, ejbs, or whatever complex/cool technology you know or you heard out there, nobody really cares about the technologies you use.


3 ) Paper and pen:


Never found a tool more useful than paper and pen to design software. Before writing software usually spend a bit of time trying to put the idea of the design down on paper. then , if in doubt, go through it with a colleague. Because it is on paper  can fast go to the point with my pair and he can quick tell me if I’m missing something. Knowing that you are missing something in a piece of paper, it’s far way better then knowing that you are missing something in the code! So don’t waste time using UML tools, unless what you are doing is big-fantastic-amazing-new architectural prototype.

4 ) Don’t leave for tomorrow what you can do today :


If you are fixing a bug or adding new functionality and you notice in the existing code, DUPLICATION or BAD NAMES or a POSSIBLE BUG then FIX IT IMMEDIATELY. Don’t wait for the next sprint and don’t add a technical story in the technical backlog. Technical stories laid in the backlog for long time, when/if it will be the time to work on it, it will be more complicated to re-understand the context of the problem and fix it. The exception it’s when the fix/refactoring is too complex and required long time, then it’s appropriate to create a story in the technical backlog!

5 ) You have time! :


Really, you have time! Don’t rush. There is no competition and you are not at the programming Olympics.
Your job is to deliver good quality code. That’s it. This is your job!
If a client/manager is screaming above your shoulders because he wants something faster than you can deliver, it’s not your problem!!! When they say ‘I want this functionality to be ready asap’ translated in Truthlish it means ‘I want this functionality to be PERFECT with NO BUGS asap’. They will be happier to wait more and have less bugs than having a fast release full of issues.
So take your time and be intransigent on the quality level of your software and forget about external pressures!

6 ) Implement leaves first :


So, you just received a brand new story to develop and you want to implement it right.
For example the story is about calculating item prices. One price for each item. Each price is obtained with a different calculation.
Choose one item price logic and as first thing write a unit test against this logic. Don’t be stressed about implementing the whole design or writing interfaces, abstract classes etc. Focus on one small leaf per time!
When the first leaf is finished, start with a second test for the second small logic you want to implement. The design will come out almost by itself. The tests will tell you which direction is best to take.



7 ) Do Pair programming! :


Fully applied this technique only recently  and it’s powerful! It is twice productive than working alone, the quality of the code is superior, the development speed is increased.
A strength of this technique is the fact that is funny. being funny and so more stimulating means that you are more focused and you pay more attention to details.
You can learn a lot doing pair programming, so push for it as much as you can!

8 ) Rarely use checked Exceptions :


Every time use an API that force me to put around its method call the try and catch block, it makes me nervous, like a violent psychopath
If you want to use checked Exception used them ONLY if the client can reasonably recover from it at run time! Remember that checked exceptions will spread all over your design in case you need to extend the behavior!

9 ) Say NO to Hacks Programming. One mistake and you have to support it for the rest of your life. (Michael Sinz):


And Hacks ARE mistakes!
Simply don’t implement hacks. whatever reasons ( no time,pressure, desire to release a feature as soon as possible, managers screaming, Orcs, Leprechauns, whatever), and now after years we need to maintain them. Hacks are difficult to understand,they break the normal logic flow of your code and they are hard to die! You implement an hack today and tomorrow (1 year after maybe ) someone else will need to fix a bug on this hack and ..well good luck with that!
Spend more time on the spec if the hack is a business request, and explain why this will cost a lot to maintain. Propose other solutions, discuss it with your team, a better solution is on the way!

10 ) Forget about comments, just write proper names! :


Write proper names when writing packages, classes, methods and variables.
Write names that make sense, ask a review before committing your code, but don’t explain verbally what you have done, try first letting your reviewer read the code, and see how good you were in writing self explanatory code!
Comments need to be maintained, otherwise they are misleading. How often did you fix a bug in the code and you changed the class documentation?me, rarely!Use javadoc only if it is really necessary!and if you do,then remember to update them every time you change the code and enforce the same behavior in your team!

11 ) Reinvent the wheels :


Read books, blogs, tutorial, etc as much as possible, but always with a critical and open mind! The same apply when listening to your team or leader. Don’t be fooled by authorities, think always with your own mind.
If you decide to go for some approach it must be because you believe in it. Because you see good reasons to do so. If you feel that something could be done better or you see problems in the approach you are using , discuss it with your team and try to clarify your doubts. If after talking to the team you still feel that things should be done differently, then push for better approaches and fight for your ideas!
Sometimes, to progress, you need to reinvent the wheels or at this time we were all developing in FORTRAN.

Don’t forget to share!

Comments

Popular posts from this blog

YouTube video download

Hi guys, Today i'm back with new trick.In this tutorial i'll share a YouTube trick.In the before article i have posted related to YouTube streaming speed.But in this tutorial i'll tell you how to download YouTube videos without any software.Most of us download videos from YouTube by using some software. But today you can learn how to download without any software.It is a very simple trick and very latest trick.Lets start the tutorial. Have a look at the image below.

Check your bank balance by simply giving a missed call

#Tip4 hi friends,In this tutorial i'll show you how to check your bank balance by giving a small missed call .before that your mobile number should be registered in the bank.Its very easy to check. Missed call and check bank  balance.  1. Axis bank- 09225892258 2. Andhra bank- 09223011 300 3. Allahabad bank- 09224150150 4. Bank of baroda- 09223011311 5. Bhartiya Mahila bank- 09212438888 6. Dhanlaxmi bank- 08067747700 7. IDBI bank- 09212993399 8. Kotak Mahindra bank- 18002740110 9. Syndicate bank- 09664552255 10. Punjab national bank- 18001802222 11. ICICI bank- 02230256767 12. HDFC bank- 18002703333 13. Bank of india- 02233598548 14. Canara bank- 09289292892 15. Central bank of india- 09222250000 16. Karnataka bank- 18004251445 17. Indian bank- 09289592895 18. State Bank of india- Get the balance via IVR 1800112211 and 18004253800 (or) 09223766666 19. union bank of india- 09223009292 20. UCO bank- 09278792787 21. Vijaya ban...

how to play puzzle game in vlc media player ?

#Trick 8 Hi friends,After a long time i'm back with new trick.In this tutorial i'll tell you how to play puzzle game in vlc media player.Most of us use vlc as a media player to play videos.but there are lot of options which are available in the vlc media player.In that i take one trick.Coming to this we can play puzzle game when the video is playing.that means the video will be converted into pieces.so that we can play puzzle games easily with that.When ever you get bored you can play games with this.Now we start this tutorial. How to play puzzle game in vlc media player.               Step 1 :-  Download the vlc media player in you computer. click here               Step 2 :- play any video from your local disk.I took this video to show you.               Step 3 :-After playing the video               Step 4 :- go...