|
-
March 29th, 2006, 07:14 AM
#1
Congratulations SuperKoko for 2000 Brilliant posts
congrats SuperKoko Really excellent posts ...
- Sreehari
"Sometimes I think the surest sign that intelligent life exists elsewhere in the universe is that none of it has tried to contact us."
" Everybody is sent to Earth on a purpose. I am so Lagging behind that i won't die." – Calvin
-
March 29th, 2006, 07:32 AM
#2
Re: Congratulations SuperKoko for 2000 Brilliant posts
congratulations... I guess you put the "super" in "koko".
-
March 29th, 2006, 07:39 AM
#3
Re: Congratulations SuperKoko for 2000 Brilliant posts
Congratulations!
A few friendly reminders: * Use Code Tags when posting code.
* Rate good replies/post by clicking "Rate this Post" and leaving a positive feedback. * Things should be made as simple as possible, but not any simpler. -- Albert Einstein
-
March 29th, 2006, 08:02 AM
#4
Re: Congratulations SuperKoko for 2000 Brilliant posts
Congratulations
-
March 29th, 2006, 09:56 AM
#5
Re: Congratulations SuperKoko for 2000 Brilliant posts
Congratulations!!
-
March 29th, 2006, 10:43 AM
#6
Re: Congratulations SuperKoko for 2000 Brilliant posts
Congratulations!!! Keep up the good work...
If there is no love sun won't shine
-
March 29th, 2006, 11:44 AM
#7
Re: Congratulations SuperKoko for 2000 Brilliant posts
Congratulations SuperKoko
I really must say those are 2000 really professional posts u have to ur credit...Bravo!
-
March 29th, 2006, 12:53 PM
#8
Re: Congratulations SuperKoko for 2000 Brilliant posts
Congratulations, Andre. It's really great to have you around.. Keep up the good work..
//I call him - the living C++ compiler...
Can you help me with my homework assignment?, Before you post!, Use code tags, How to post!, Codeguru technical FAQs, C++ FAQ Lite, Stroustrup: C++ Style and Technique FAQ, Guru of the Week, Comeau C and C++ FAQs, Comeau C++ Templates FAQs, CUJ @ DDJ, Spam threshold
My Blogs : Learning C++ is fun | Abnegator's reflections
Open Threads : C++ Aha! Moments | Nature of work in C++?
-
March 29th, 2006, 01:35 PM
#9
Re: Congratulations SuperKoko for 2000 Brilliant posts
congrats, SuperKoko
-
March 29th, 2006, 01:57 PM
#10
Re: Congratulations SuperKoko for 2000 Brilliant posts
Congratulations
Please use code tags [code] [/code]
We would change the world, but God won't give us the sourcecode.. 
Undocumented futures are fun and useful....
_________
Gili
-
March 29th, 2006, 04:41 PM
#11
Re: Congratulations SuperKoko for 2000 Brilliant posts
Thanks sreehari, cilu, cherish, Shuja Ali, wildfrog, miteshpandey, leojose, exterminator, kirants and g_gili.
Definitively, CodeGuru is a strong addiction. 
exterminator : I don't read compiler's documentations, except when I have to.
I don't know exactly how I get these intuitions about the internal details of compilers...
My knowledge sources are : My brain, the C++ standard (I wonder why I have not bought the book... perhaps I like the paper sound of the electronic drafts ), and ... no book.
Why? Perhaps because I have been disguted by Visual Basic for dummies (in french : Visual Basic pour les nuls). A very superficial clickodromic* book in my opinion.
*clickodromic : directly related to the most superficial layer of the clickodrom, which is in turn the most superficial graphical interface of the combination of the shell and currently installed applications, even not doing distinction between OS, shell and installed applications.
The real reason is that I have a strong enough addiction to C++. If I read C++ books, I could not stop... But, I have medecine to learn.
Recently (one week or two), I read a few Herb Sutter's GotW and online publications.
exterminator : I started programming at the age of ~13.
Before that, I had never seen a computer. I didn't know what it was... The only descriptions I had were Science Fiction books. A computer was much less magical and mysterious than I imagined.
My first computer was a CPC with a Z80 at 4 Mhz CPU.
I learnt Locomotive Basic from scratch, with the manual as only document.
I got a PC at an age of ~14 or 15 (I can't date exactly, because I have not a good notion of dates).
I started with Visual Basic on that computer.
This Visual Basic is a whole story in itself...
My brother had a PC before I (even before I had a CPC).
At this date, we were newbies, and a retailer convinced him to buy VB on diskettes (he said that the documentation was better). Yeahh... everybody knows that diskettes are better than cd-rom.
So, I used VB for a time.
When I was in mathematics D.E.U.G., I had informatic modules.
So, I learnt the Scheme language.
I really loved this one... Indeed, at the end of the second week of the scholar year I had learnt more than enough to pass the examination at the end of the semester (in fact, the examination was really very easy... mathematicians are not programmers).
I discovered to C++ late. I discovered this language at the age of ~16 or 17 : Still in D.E.U.G. (second year, second semester). We had really very basic course. At the end of the semester we had still not learnt polymorphism.
The professor has not mentioned any word about templates, exceptions, STL.
Pointers (very useful when there is no std::vector...) were vaguely mentioned and not really used (no dynamic allocation!).
No... We just learnt C ... with classes ... and inheritance.
I didn't like much this courses.
<warning-cardiac-attack-risk>
Particulary, I remember a course where complex (std::complex was not be mentioned) was derived (publicly) from real !
Multiplying complexs using references to reals would just multiply the real part of complex (there was no polymorphism of course)!
Everybody knows that a complex IS-A real!
And everybody knows that a real is not concrete (deriving from a concrete class is usually a bad idea).
</warning-cardiac-attack-risk>
The transition Scheme -> C++ is somewhat hard to get.
Particulary, not knowing that dynamic allocation existed (it was not mentioned in course), I tried some code like that (I was conscient that it is dangerous).
Code:
Object *ConstructObject()
{
Object obj;
return &obj;
}
So, after ten minutes, I decided that I had to learn from a book.
I got a C++ book from dad. He had bought this book before we had any computer, just because he wanted to learn what are in computers... In fact he had not used it.
Like that, I learnt dynamic allocation (in a C style) : malloc/calloc.
It has been very hard, to me, to understand why there were two allocation routines (malloc and calloc).
The book said : Use calloc for arrays, and malloc for objects.
The day I learnt that calloc & malloc are essentially the same (except that calloc do a stupid multiplication and zero-initialize the data), I really understood the whole language.
I don't know exactly how I got the transition from C-style C++ (the so-called C/C++ language) to C++... without book... not reading any documentation... without Internet.
Okay, I read a bit my compiler's documentation by keword.
Then, I found a very good C++ course online (I was probably 19 years old):
http://casteyde.christian.free.fr/cp...ine/book1.html
I read a good part of that course : mainly the core language.
I hope this course will be translated to English. It would be good for a so great community!
From my learning curve (in particular the fact that I got nearly all my information from references documents ... no Effective C++ book or similar programmation learning book), I should probably be a very bad programmer, using plenty of goto, mixing basic/C/C++/scheme, in incomprehensible non-standardized ways...
But, it is not. In fact, nowadays, I have a correct C++ style (at least compared to many people). codeguru helped! I learnt here that effective const correctness is good!
And, I created from scratch more or less unconsciously, programming rules, such as:
In a class, all members should be public, or all data members should be private.
Don't derive from concrete classes.
Derive from abstractions!
Don't abuse derivation : membership is better than derivation when possible.
I used much this pattern:
Code:
class AbstractInterface
{
public:
// virtual pure functions, no data
};
// in another header
class ClassUsingInterface
{
public:
ClassUsingInterface(AbstractInterface&);
};
Instead of the more coupled:
Code:
class AbstractThing
{
// protected virtual pure functions
// the stuff of ClassUsingInterface
};
And, now I see that Herb Sutter himself, recommend my programming style!
Of course, with GotWs, I learnt things : mainly, true exception safety.
And, I some unconscious rules became conscious!
And all subtle distinctions : ACID (I love that GotW):
If you want to really understand exception, you can read some related GotW, and more than all, this one:
http://gotw.ca/gotw/061.htm
I know some implementation details (I don't know how I got them)... Thus I should unconsciously rely on them... Actually, no. Probably because I also know how many unexpected things a compliant compiler can do (I have some imagination for that), and probably also because I prefer to keep things clear and simple, not using anything that seems doubtful to me. Probably because I am lazy. Using the full "expressiveness" of the language would require much brain reflexion. I prefer being able to program asleep (I don't really).
It summaries my learning curve.
I hope that you can now understand why I am like I am.
I let you judge whether I must be an horrible programmer or a good one.
I let you judge my mind sanity.
Cheers.
Sincerely.
-
March 29th, 2006, 07:33 PM
#12
Re: Congratulations SuperKoko for 2000 Brilliant posts
Congarates..
Come Join This Poll Where are we from? (Ultimate)
Knowing is not enough; we must apply. Willing is not enough; we must do. - Johann Wolfgang
An idle brain is the devil's workshop. - unknown
-
March 29th, 2006, 07:51 PM
#13
Re: Congratulations SuperKoko for 2000 Brilliant posts
Congratulations
01101000011001010110110001101100011011110010000001110011011001010111100001111001
-
March 29th, 2006, 07:57 PM
#14
Re: Congratulations SuperKoko for 2000 Brilliant posts
Congratulations!
quoted from C++ Coding Standards:
KISS (Keep It Simple Software):
Correct is better than fast. Simple is better than complex. Clear is better than cute. Safe is better than insecure.
Avoid magic number:
Programming isn't magic, so don't incant it.
-
March 29th, 2006, 11:56 PM
#15
Re: Congratulations SuperKoko for 2000 Brilliant posts
Congratulations !!!
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|