>>1
I was a EXPERT PROGRAMMER before I purchased the book "Head First Design Patterns". As such, I got only an couple good things out of it. It has lots of pictures, so if you are a visual learner it will be for you!
Name:
Anonymous2008-06-29 13:56
You just bought it 'cause of the girl on the cover, didn't you?
Name:
Anonymous2008-06-29 14:07
>>5
I'd like to head my first into her design patterns, if you know what I mean.
Name:
Anonymous2008-06-29 14:19
I bought SICP because there's a wizard on the cover.
All the "Head First" books seem to have a MySpace angle pose on the cover...
Name:
Anonymous2008-06-29 18:14
>>4
I don't consider myself an EXPERT PROGRAMMER just yet, so hopefully i'll get more out of it than you did.
>>5
No, I bought it cuz it looks more interesting than the GoF book.
The chick on the front looks like an old chick that the marketing team felt could be made to look young (hence the pig tails & angle). but i'd still >>6 her
I had a design pattern fanboi on my team for a project in university. We had to make a simple game. The design he came up with was so ridiculously overengineered, it was 20 pages or so of diagrams of observers, singletons, factories, visitors, etc.
He told us he could implement it easily. After a couple of weeks, the result was barely functional, and a functional equivalent with a normal design could have probably been made in two days. In the end, we barely passed the course.
>>18
Design patterns suck. They're too often overused and abused -- for every place a design pattern is applied correctly, it's mashed and mangled a hundred times where it doesn't belong.
If it was your team, the fault is partly yours. You should have had the balls to tell him to sit down and shut the fuck up, rather than be passive-aggressive about it. Sure, you step on people's toes, but that's the only way anything useful can ever get done.
>>20
It had to be an education game. We went with a top-down view game where you run around the map answering questions.
>>21
He really wanted to do all the programming, and unlike the rest of us he actually had a job as a programmer (C++), so we went along with it. Anyway, it was a learning experience.
Reading just a sample of that book makes me want to throw up...IN REAL LIFE.
Name:
Anonymous2008-07-01 12:28
OK, I looked, out of curiosity. PIG DISGUSTING.
Name:
Anonymous2008-07-01 12:52
Fuckers with their examples with ducks made me think they were going to end the first chapter with duck typing, turns out it's about the Stategy Pattern a.k.a. the My Shitty Language Has Neither First-Class Functions Nor Function Pointers Pattern.
Name:
Anonymous2008-07-01 14:27
I never read any book about design patterns because I knew people who did and they would never shut up about them. Those people were so fucking annoying that I didn't want even risk turning into them. I get why design patterns are useful (a pre-assembled way of making up for the lack of some feature in your language), but I don't get what all the hype is about.
Why the fuck some people become so fanatic about design patterns that they end up overdesigning every shitty piece of code they have to turn out? Also, is UML really useful?
Name:
Anonymous2008-07-01 14:39
I read it but got lost in their explanation of the ``Anus Pattern''
>>33
Completely seriously, UML-like constructs and design patterns are both very useful for the same thing: inter-developer communication. Forcing strict compliance to the latest UML standards of modeling is fail. Copypasta of design patterns is doing it wrong. Overuse of design patterns is ALSO doing it wrong. A peppering of a few UML like diagrams to show connections between things and enumerate their parts can be very helpful, especially when working with multiple developers. Being able to say "the thing you're doing with that OBSERVER" is much more clear and concise than saying "the thing you're doing with that function/object that sends data over a specified interface to other functions/objects when an event or change occurs relating to the first function/object that the others may want to know about".
Name:
Anonymous2008-07-01 16:32
>>37
Yes, but why do some people get addicted to desgin patterns, can't shut up about them and design their code so that it's made entirely out of patterns?
Name:
Anonymous2008-07-01 16:35
>>38
A certain percentage of the populace is mentally underdeveloped.
Name:
Anonymous2008-07-01 16:44
>>37 Completely seriously, UML-like constructs and design patterns are both very useful for the same thing: inter-developer communication. Forcing strict compliance to the latest UML standards of modeling is fail.
So flow charts (an octogenarian concept) are useful. UML itself is just a fail-filled attempt to standardize something that really shouldn't be used extensively enough to need it.
Name:
Anonymous2008-07-01 16:53
Is UML still a fad? Shouldn't it be going away soon? I don't get all those people that are all "OMG, UML!" about it.
Name:
Anonymous2008-07-01 17:18
>>32
Yes most of the "design patterns" are bullshit. I remember reading the GOF book (which is without a doubt the most boring book I have ever read). A lot of it is useful in *some* cases but again should not be abused.
I think all C++ users should read the meyers books and GOF and realize C++ sucks ass and switch. Seriously fuck C++.
>>42
Trolling aside, what's good besides C++ when you need something fast to do real-time volume rendering, image processing, or generally anything that can't be handled by slow as fuck languages?
FIOC with C++ for the most intensive parts?
Name:
Anonymous2008-07-01 22:48
>>48
Common Lisp, calling out to C if there's something that Lisp is somehow just too slow for (this will not happen a lot).
Duh.
Name:
Anonymous2008-07-01 22:52
C++ is horrible for performance. You get performance from it solely because everything is implemented pretty fast to begin with. But the second any modularity or layer of abstraction is added you immediately lose all those gains.
Other languages can handle this (MLton) gracefully, but C++ can't. The sad fact is that you often will write things in C or fortran and link to C++ to get better performance.
The better question is "If C++ is in this performance no man's land, not good enough when trying to be fast, and horribly slow when being idiomatic, why do people say it performs well at all?"
Name:
Anonymous2008-07-01 22:54
>>50
No, I think the better question is, "If C++, despite not actually being especially fast, is plenty fast for >>48's purposes, what's he fussing about?"
Name:
Anonymous2008-07-01 22:54
C++ isn't even good at virtual dispatch. Java kicks its ass at virtual dispatch benchmarks.
Name:
Anonymous2008-07-01 22:56
>>51
But C++ isn't even fast for that. To do image processing you link to fortran implemented libraries.
Name:
Anonymous2008-07-01 22:59
>>53
I see your point. I wasn't actually paying attention to what his purposes were.
>>55
It's true. C++ can't inline virtual functions, because C++ can only optimize during compilation. The JVM can also apply optimizations during runtime. So if a method gets called a lot, it can inline the method and the only overhead is a check that the object has the correct type.
Name:
Anonymous2008-07-02 8:22
WANKING OFF
Name:
Anonymous2008-07-02 9:27
So if a method gets called a lot
I don't think this is implemented anywhere.
This is not really related to topic, this is just may way of saying "use common sense".
Name:
Anonymous2008-07-02 15:53
>>58
That's your problem. You don't think to even fucking google it.
Name:
Anonymous2008-07-02 17:14
>>48
If you want fast handling of fucktons of data, use Fortran.
>>66
And I suppose LISP is the old gay man of computing. FORTH and Smalltalk are the young guys who for some reason hang around him. Sepples is a successful bug chaser completely unrelated to the above. He's a disgrace to his father, C, who worked hard all his life.
Name:
Anonymous2008-07-03 0:35
>>68
And Objective-C is C's and Smalltalk's little secret?
Name:
Anonymous2008-07-03 0:40
Java is the overweight thirtysomething with the mind-numbing office job who can never seem to get the hang of "business casual".
Name:
Anonymous2008-07-03 0:56
>>69
I guess so. Smalltalk would have to be a woman then.
Name:
Anonymous2008-07-03 1:00
>>71
At least she allows complete introspection...
Name:
Anonymous2008-07-03 1:59
>>72
That's the kind of woman I want. Except I'm not really into her. What kind of person loves Smalltalk?
Name:
Anonymous2008-07-03 8:19
FIOC is the stuck-up guy who's alway nagging the others about their TPS reports and whines if you write in the margin or use a special font.
Name:
Anonymous2008-07-03 8:38
>>59
I googled it and found few texts about how it can be implemented. JVM may do this, JVM may do that.
Is it implemented somewhere already? Would storing how often every function is called not already be a great overhead?
Name:
Anonymous2008-07-03 8:44
>>74
I don't see how that's any different to any other programming language. C is the stuck-up guy who's alway nagging the others about their TPS reports and whines if you write in the margin or use a special font.
>>77
That's not always a good thing. In my experience, I've seen way too many programmers abuse that philosophy to write code in their cryptic and non-standard (to the current project) manner. It is very rare that I see a hack that is truly worth breaking the guide of consistency. In a vast majority of cases, it is better to be consistant*.
* Yes, I do bracket my {
single_statement;
} code in C-style code in the name of consistency
Name:
Anonymous2008-07-03 10:47
>>79 Yes, I do bracket my { single_statement; } code in C-style code in the name of consistency
So do why, but I have issues.
>>79 That's not always a good thing. In my experience, I've seen way too many programmers abuse that philosophy to write code in their cryptic and non-standard (to the current project) manner. It is very rare that I see a hack that is truly worth breaking the guide of consistency. In a vast majority of cases, it is better to be consistant*.
Fuck these programmers.
A language must allow many styles. A project must pick one style. The programmers must follow the project guidelines.
You don't do so? FUCK YOU AND FUCK YOUR CODE.
(also, consisntency my ass. you moron) >>80
So do I, you moron. Learn English.
>>90
Well, frankly, he's better at it than you are.
Maybe if you'd let him have a quick look over your Haskell ``code'', you'd end up with something comprehensible enough to be worth bothering reading.
Name:
Anonymous2008-07-03 18:17
>>88
You mean ``so there is something inane to argue about for people starting new projects''.
>>91
I don't think so. Haskell's abstraction is so awesome compared to imperative style that even badly indented Haskell (purely functional) code should be more readable than the Python equivalent.
Name:
Anonymous2008-07-03 20:39
>>93
We abstract the spirits of the computer with our nomads.
>>100
Yeah, because HASKELL makes you use indention and doesn't work if you want to use curly brackets and semicolons in some short expression. That you don't want to take up three lines. Oh wait no, that's PYTHON.