Being a rock star programmer
-
The best way to improve is to study code that is better than your own. Read good code written by experts, in a variety of programming languages. Study it until you understand how it works and what makes it good. That's it.
The One Tip That Rules Them All[^] The IronMonkey claims that the one tip to being a better programmer is the above. To read good code. Anyone care to agree or disagree? (And you can skip his waffle at the begining of the post.) regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
do -
The best way to improve is to study code that is better than your own. Read good code written by experts, in a variety of programming languages. Study it until you understand how it works and what makes it good. That's it.
The One Tip That Rules Them All[^] The IronMonkey claims that the one tip to being a better programmer is the above. To read good code. Anyone care to agree or disagree? (And you can skip his waffle at the begining of the post.) regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
doWell perhaps. But reading good books don't turn you in a good author - even if you understand them. Understanding good code and the technology is one part of it, but I think we could find more. Greetings, Ingo ------------------------------ PROST Roleplaying Game War doesn't determine who's right. War determines who's left.
-
The best way to improve is to study code that is better than your own. Read good code written by experts, in a variety of programming languages. Study it until you understand how it works and what makes it good. That's it.
The One Tip That Rules Them All[^] The IronMonkey claims that the one tip to being a better programmer is the above. To read good code. Anyone care to agree or disagree? (And you can skip his waffle at the begining of the post.) regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
doI believe in the age old phrase: practice makes perfect e.g. -Write code -Work out how that code could be written better -Repeat '--8<------------------------ Ex Datis: Duncan Jones Merrion Computing Ltd
-
The best way to improve is to study code that is better than your own. Read good code written by experts, in a variety of programming languages. Study it until you understand how it works and what makes it good. That's it.
The One Tip That Rules Them All[^] The IronMonkey claims that the one tip to being a better programmer is the above. To read good code. Anyone care to agree or disagree? (And you can skip his waffle at the begining of the post.) regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
do -
The best way to improve is to study code that is better than your own. Read good code written by experts, in a variety of programming languages. Study it until you understand how it works and what makes it good. That's it.
The One Tip That Rules Them All[^] The IronMonkey claims that the one tip to being a better programmer is the above. To read good code. Anyone care to agree or disagree? (And you can skip his waffle at the begining of the post.) regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
doOne need not only to understand how a problem was solved, but also why it was solved in that particular way, what were the alternatives and what benefits the solution chosen offers over them. Only then the knowledge acquired can be applied to solve new problems. So reading code doesn't suffice. Discussing with experts, having them review your code could do it.
-
I believe in the age old phrase: practice makes perfect e.g. -Write code -Work out how that code could be written better -Repeat '--8<------------------------ Ex Datis: Duncan Jones Merrion Computing Ltd
That would be my adage too. In his post he mentions;
Tip 7 says to "go back and enhance your old code" because "you learn oodles of things reading your own crap, which old code always is." Sorry, but you don't learn how to write good code from reading your own bad code, you only learn why bad code is so aggravating.
regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
do -
Well perhaps. But reading good books don't turn you in a good author - even if you understand them. Understanding good code and the technology is one part of it, but I think we could find more. Greetings, Ingo ------------------------------ PROST Roleplaying Game War doesn't determine who's right. War determines who's left.
ihoecken wrote:
But reading good books don't turn you in a good author
Wait a minute, if you are a student author with talent, and you are looking to pick up some tips and techniques, then studying good books WOULD help you. Nobody said that reading good code would turn just anybody into a good programmer. It is a given that the advice refers to people who are already programmers, have significant talent, AND have the motivation to improve their skills. Nothing will improve someone who doesn't have the commitment to make improvements.
-
One need not only to understand how a problem was solved, but also why it was solved in that particular way, what were the alternatives and what benefits the solution chosen offers over them. Only then the knowledge acquired can be applied to solve new problems. So reading code doesn't suffice. Discussing with experts, having them review your code could do it.
totally agree, we've some code here and when you look at it your first thought is that this is complete crap but when you think about it, it makes sense. If you were to change it you cant be sure what your going to break and only find out what is broken on a complete system test with 15 apps all going hammer and tongs at you. Thats why were rewriting from scratch for the next project. Imp. 'Out of Office Auto Reply' The email server is unable to verify your server connection and is unable to deliver this mesage. Please restart your computer and try sending again. '(The beauty of this is that when you return, you can see how many in-du-viduals did this over and over).
-
The best way to improve is to study code that is better than your own. Read good code written by experts, in a variety of programming languages. Study it until you understand how it works and what makes it good. That's it.
The One Tip That Rules Them All[^] The IronMonkey claims that the one tip to being a better programmer is the above. To read good code. Anyone care to agree or disagree? (And you can skip his waffle at the begining of the post.) regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
doDeveloping over a decade now and one thing someone told me in my early days was...
There's a difference between constructive criticism and being an ass!
Personally, Constructive criticism is always appreciated! :) .Net Wannabe
-
ihoecken wrote:
But reading good books don't turn you in a good author
Wait a minute, if you are a student author with talent, and you are looking to pick up some tips and techniques, then studying good books WOULD help you. Nobody said that reading good code would turn just anybody into a good programmer. It is a given that the advice refers to people who are already programmers, have significant talent, AND have the motivation to improve their skills. Nothing will improve someone who doesn't have the commitment to make improvements.
Troposphere wrote:
Nobody said that reading good code would turn just anybody into a good programmer. It is a given that the advice refers to people who are already programmers, have significant talent, AND have the motivation to improve their skills.
No of course not. But there is more than reading code. You need background information. Programming is like writing not only practice. There is a theoretical part. Of course there are writers and programmers who learned it just by reading, but the most have to do more. Otherwise nobody would have to go to a university. Greetings, Ingo ------------------------------ PROST Roleplaying Game War doesn't determine who's right. War determines who's left. -- modified at 8:26 Thursday 30th March, 2006
-
The best way to improve is to study code that is better than your own. Read good code written by experts, in a variety of programming languages. Study it until you understand how it works and what makes it good. That's it.
The One Tip That Rules Them All[^] The IronMonkey claims that the one tip to being a better programmer is the above. To read good code. Anyone care to agree or disagree? (And you can skip his waffle at the begining of the post.) regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
doI think it can certainly help to study good code written by others, especially good code written by someone who's "better" than you. But understanding the code and the whys and wherefores is of vital importance too. Is it the only tip you need. No I don't think so. Lots of practice and lots of learning from your own mistakes and those of others is equally important. I mean, how did the first "expert" programmer get that way? Certainly not by reading someone else's expert code. ---sig---
Might I suggest that the universe was always the size of the cosmos. It is just that at one point the cosmos was the size of a marble. -- Colin Angus Mackay Silence is the voice of complicity PS. If you don't understand my sarcasm -- go to hell! -
Troposphere wrote:
Nobody said that reading good code would turn just anybody into a good programmer. It is a given that the advice refers to people who are already programmers, have significant talent, AND have the motivation to improve their skills.
No of course not. But there is more than reading code. You need background information. Programming is like writing not only practice. There is a theoretical part. Of course there are writers and programmers who learned it just by reading, but the most have to do more. Otherwise nobody would have to go to a university. Greetings, Ingo ------------------------------ PROST Roleplaying Game War doesn't determine who's right. War determines who's left. -- modified at 8:26 Thursday 30th March, 2006
ihoecken wrote:
But there is more than reading code.
If you re-read the original post, you will see that it does not say that reading code is the ONLY way. It says that reading code is the best way.
-
totally agree, we've some code here and when you look at it your first thought is that this is complete crap but when you think about it, it makes sense. If you were to change it you cant be sure what your going to break and only find out what is broken on a complete system test with 15 apps all going hammer and tongs at you. Thats why were rewriting from scratch for the next project. Imp. 'Out of Office Auto Reply' The email server is unable to verify your server connection and is unable to deliver this mesage. Please restart your computer and try sending again. '(The beauty of this is that when you return, you can see how many in-du-viduals did this over and over).
Surely your testing system is not working well if you can't test your refactoring? I know pretty quickly when some code I refactored has broken the existing logic thanks to tests. (Obviously performance testing is a whole different ball game.) regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
do -
I think it can certainly help to study good code written by others, especially good code written by someone who's "better" than you. But understanding the code and the whys and wherefores is of vital importance too. Is it the only tip you need. No I don't think so. Lots of practice and lots of learning from your own mistakes and those of others is equally important. I mean, how did the first "expert" programmer get that way? Certainly not by reading someone else's expert code. ---sig---
Might I suggest that the universe was always the size of the cosmos. It is just that at one point the cosmos was the size of a marble. -- Colin Angus Mackay Silence is the voice of complicity PS. If you don't understand my sarcasm -- go to hell!Agreed: well put. I learnt a lot from working in an environment where I had to produce rapid solutions to problems under pressure. You sink or swim pretty quickly. www.merrens.com
www.bkmrx.com You can ignore relatives but the neighbours live next door -
The best way to improve is to study code that is better than your own. Read good code written by experts, in a variety of programming languages. Study it until you understand how it works and what makes it good. That's it.
The One Tip That Rules Them All[^] The IronMonkey claims that the one tip to being a better programmer is the above. To read good code. Anyone care to agree or disagree? (And you can skip his waffle at the begining of the post.) regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
doI agree. Way back in my first programming class one of the first things they told us was, "You will only get better at programming by studying and writing good code." Note they did say WRITING good code as well, not just STUDYING it. Back then there were professors telling us what was "good code" and now it's more of a judgement call but I think it's still relevant. I still try to read some type of reference book every now and then to make sure I'm still up on new techniques. ------------------------------------- Do not do what has already been done. Absolute power corrupts absolutely.. but it ROCKS absolutely, too.
-
I believe in the age old phrase: practice makes perfect e.g. -Write code -Work out how that code could be written better -Repeat '--8<------------------------ Ex Datis: Duncan Jones Merrion Computing Ltd
Duncan Edwards Jones wrote:
I believe in the age old phrase: practice makes perfect
I second that :)
-
The best way to improve is to study code that is better than your own. Read good code written by experts, in a variety of programming languages. Study it until you understand how it works and what makes it good. That's it.
The One Tip That Rules Them All[^] The IronMonkey claims that the one tip to being a better programmer is the above. To read good code. Anyone care to agree or disagree? (And you can skip his waffle at the begining of the post.) regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
doUnderstanding how other's code works by reading is great, but until you've screwed up trying to implement it, you still won't really grok it. One of my professors always had the acronym, ABP, on his board. Always Be Programming he'd say ad nauseum. I rolled my eyes at the time, but it was good advice. BW
If you're not part of the solution, you're part of the precipitate.
-- Steven Wright -
Surely your testing system is not working well if you can't test your refactoring? I know pretty quickly when some code I refactored has broken the existing logic thanks to tests. (Obviously performance testing is a whole different ball game.) regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
doThis mainly comes down to load tests (100%, for 24 hours a day, for 2 weeks) e.g. memory leaks. Its the reproduction of the fault that is the pain, see potential problem, fix, rerun test and wait a week to see if it worked. At the minute we've had 2 customer faults reported in 2 months which was unheard of last year (or ever). It's stable & performant so STAY AWAY. We spent a full year getting to this stage so we're not going to muck it up now. Sure, things can be done differently, better but is it worth the possible fallout from a customer (think big CDMA/UMTS mobile network providers) if a fault does slip through (and they do). Imp. 'Out of Office Auto Reply' The email server is unable to verify your server connection and is unable to deliver this mesage. Please restart your computer and try sending again. '(The beauty of this is that when you return, you can see how many in-du-viduals did this over and over).
-
Understanding how other's code works by reading is great, but until you've screwed up trying to implement it, you still won't really grok it. One of my professors always had the acronym, ABP, on his board. Always Be Programming he'd say ad nauseum. I rolled my eyes at the time, but it was good advice. BW
If you're not part of the solution, you're part of the precipitate.
-- Steven Wrightbrianwelsch wrote:
ABP
Is that like ABC on Glengarry Glen Ross? ;P ------------------------------------- Do not do what has already been done. Absolute power corrupts absolutely.. but it ROCKS absolutely, too.
-
This mainly comes down to load tests (100%, for 24 hours a day, for 2 weeks) e.g. memory leaks. Its the reproduction of the fault that is the pain, see potential problem, fix, rerun test and wait a week to see if it worked. At the minute we've had 2 customer faults reported in 2 months which was unheard of last year (or ever). It's stable & performant so STAY AWAY. We spent a full year getting to this stage so we're not going to muck it up now. Sure, things can be done differently, better but is it worth the possible fallout from a customer (think big CDMA/UMTS mobile network providers) if a fault does slip through (and they do). Imp. 'Out of Office Auto Reply' The email server is unable to verify your server connection and is unable to deliver this mesage. Please restart your computer and try sending again. '(The beauty of this is that when you return, you can see how many in-du-viduals did this over and over).
Was the code that works your first draft or have you rehashed it a few times? And the code as it is now, are you happy with it in other terms apart from "it works"? regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
do