Tue May 06 14:25:04 HKT 2008
From
/weblog/design/interview
Donald Knuth on Multi-Core, Unit Testing, Literate Programming, and XP:
I also must confess to a strong bias against the fashion for reusable code. To me, "re-editable code" is much, much better than an untouchable black box or toolkit. I could go on and on about this. If you’re totally convinced that reusable code is wonderful, I probably won’t be able to sway you anyway, but you’ll never convince me that reusable code isn’t mostly a menace...
http://www.artima.com/forums/flat.jsp?forum=276&thread=229705
(google search)
(amazon search)
Tue Apr 29 01:46:55 HKT 2008
From
/weblog/design/interview
Nice message cover DSL, IDE, multiple dispatch, message passing, and more
http://msdn2.microsoft.com/en-us/magazine/cc500572.aspx
(google search)
(amazon search)
Sun Nov 11 23:32:58 HKT 2007
From
/weblog/design/interview
The discussion of "Flexibility and Complexity" and "Flexible versus Reusable" answer my long question of how to have flexibility code with simple design.
http://www.artima.com/intv/flexplexP.html Another interview -
http://www.infoq.com/presentations/modifiability-fowler
(google search)
(amazon search)
Wed Sep 19 01:10:05 HKT 2007
From
/weblog/design/interview
"They build their own infrastructure for performance, reliability, and cost control reasons. By building it themselves they never have to say Amazon went down because it was company X's fault. Their software may not be more reliable than others, but they can fix, debug, and deployment much quicker than when working with a 3rd party."
http://highscalability.com/amazon-architecture
(google search)
(amazon search)
Fri Aug 10 01:59:30 HKT 2007
From
/weblog/design/interview
Erich Gamma: A pattern is always a problem-solution pair that can be applied in a particular context. Although the solutions might look similar in different patterns, the problems they are solving are different. In fact from ten thousand meters most patterns solve a problem by adding a level of indirection. What is interesting is how this indirection comes about and in particular why it needs to happen.
Therefore if you just look at the solution to the problem, it isn't that enlightening and everything starts to look the same. When we wrote design patterns we often had this feeling??hey all started to look like the Strategy pattern.
http://www.artima.com/lejava/articles/patterns_practice.html
(google search)
(amazon search)
Sun Apr 15 19:26:55 HKT 2007
From
/weblog/design/interview
Interview of netbean developers, I feel this is a lot more promotion than sharing of technology. However, these still valuable -
http://blogs.sun.com[..]ree_interviews_with_language_programmers
(google search)
(amazon search)
Thu Oct 12 15:49:07 HKT 2006
From
/weblog/design/interview
Have anyone read "Effective Java"? Compare the "item 10: Override clone judiciously" with this interview is fun
http://www.artima.com/intv/issuesP.html No perfect design because we need difference design trade off for difference task, like performance, time, resource, ....
No perfect design because difference user have difference expectation of API ....
No perfect design because requirement change by time
http://www.artima.com/intv/perfect.html
(google search)
(amazon search)
Thu Oct 12 15:48:27 HKT 2006
From
/weblog/design/interview
*Dave Thomas*: You have to accept the fact that you're not going to get it right the first time. And you're not going to get it perfectly right the second or third time. You'll never get it perfectly right, but along the way you can get better and better . To do that, you have to discipline yourself to apply a reflective process to what you do.
*Bill Venners*: What do you mean by reflective process?
*Dave Thomas*: You always have to look back at what you did and ask, "How did I do that? Could I have done it better? Did I have to do it at all?" Get into the habit of doing that with everything you do. That way, you're consciously forcing yourself to reevaluate the way you do things.
Full message:
http://www.artima.com/intv/metadataP.html
(google search)
(amazon search)
Thu Oct 12 15:47:11 HKT 2006
From
/weblog/design/interview
I think a schism existed between the C++ community, which was still focused on language issues, and the other prominent development communities, which pretty much left the language alone. Java already had exceptions, but didn't have templates and had nothing like the STL. Yet the Java community focused on writing a whole bunch of libraries that everybody can assume will exist everywhere, libraries that will let you write applications really quickly. The end result is, we have templates in C++, but there's no way to write user interfaces or talk to databases. Java has no templates, but you can write user interfaces up the wazoo and you can talk to databases with no trouble at all.
http://www.artima.com/intv/abcsP.html
(google search)
(amazon search)