Alternatively why not change the parameters on capital gains taxes?
If the argument is that capital gains should be taxed at lower rate to attract investment and create jobs, then capital gains realized on companies that have outsourced should be taxed at a rate significantly higher than capital gains made on companies that have created jobs.
The devil is in the details (esp. wrt. productivity) but it does try to link the apparent goal of a low capital gains tax with the labour market outcomes of the capital investments.
I would argue that the difference is in how opaque the integration is. The interfaces to WebCore (or is it WebKit?) and other Apple-provided frameworks are well-defined and in known locations. There is nothing preventing someone from (for example) writing a facade for Gecko and changing html rendering throughout the system. I don't believe (but don't know) whether that would be possible in Windows.
Isn't a salient difference that WebKit could feasibly be replaced (say by a Gecko derivative) by replacing a single framework in a single well-known location?
I agree with you that some people need to learn the details (syntax) before they learn the structure (abstractions and conceptualizations). However there are a number of theories of intelligence (that I happen to agree with) that discuss other people who need structure before they can understand syntax.
I'm concerned that the current crop of programming resources focus on the first kind of people while ignoring the second. I'm looking for balance, not to replace the current approach.
For fun try dealing with counter-intuitive, non-experiential things (eg. complex, adaptive systems). Experience works for many things, but not for everything. Look at the current debate about the limits of specturm for an example. Experience tells us that bandwidth and usage are in opposition; a different conceptualization tells us that usage and bandwith can be complementary.
Another really great example is quantum mechanics. Ask people who work with the deep magic, and you'll find out that they have to unlearn much of their experience.
I don't mean to completely dismiss experience, which would be foolish. However there must be a middle ground between experience and theory/conceptualizations/etc.
I have as an (unproven) article of faith that you can help people learn to think differently. In my own experience I know (believe?) that certain people did help me learn to think differently. What I'm wondering now is whether there are certain approaches that work particularly well with certain individuals.
I totally agree that there is no "one size fits all" approach to developing intuition, or problem solving for that matter. On the other hand I don't want to go to the other extreme and say that there are no common approaches. Hopefully there is a middle ground of techniques that would work better than others for a particular sub-group.
I like the idea of "masterworks" a lot. All we need now are those notebooks:) Again, speaking only from my experience I know that it was talking with people that let me get into their minds (to some degree) and change my way of thinking about things.
Your final point is bang on, but the problem is that there is a finite (and it seems small) population of these great programmers and a much larger population of people trying to learn programming.
I agree with you that Gamma et. al. is a good great book, *assuming that you have already conceived of your program as objects*. While there could conceivably be design patterns for other conceptual models, I have yet to see such patterns collected into a similar work.
Alternatively why not change the parameters on capital gains taxes?
If the argument is that capital gains should be taxed at lower rate to attract investment and create jobs, then capital gains realized on companies that have outsourced should be taxed at a rate significantly higher than capital gains made on companies that have created jobs.
The devil is in the details (esp. wrt. productivity) but it does try to link the apparent goal of a low capital gains tax with the labour market outcomes of the capital investments.
I would argue that the difference is in how opaque the integration is. The interfaces to WebCore (or is it WebKit?) and other Apple-provided frameworks are well-defined and in known locations. There is nothing preventing someone from (for example) writing a facade for Gecko and changing html rendering throughout the system. I don't believe (but don't know) whether that would be possible in Windows.
Isn't a salient difference that WebKit could feasibly be replaced (say by a Gecko derivative) by replacing a single framework in a single well-known location?
I agree with you that some people need to learn the details (syntax) before they learn the structure (abstractions and conceptualizations). However there are a number of theories of intelligence (that I happen to agree with) that discuss other people who need structure before they can understand syntax.
I'm concerned that the current crop of programming resources focus on the first kind of people while ignoring the second. I'm looking for balance, not to replace the current approach.
For fun try dealing with counter-intuitive, non-experiential things (eg. complex, adaptive systems). Experience works for many things, but not for everything. Look at the current debate about the limits of specturm for an example. Experience tells us that bandwidth and usage are in opposition; a different conceptualization tells us that usage and bandwith can be complementary.
Another really great example is quantum mechanics. Ask people who work with the deep magic, and you'll find out that they have to unlearn much of their experience.
I don't mean to completely dismiss experience, which would be foolish. However there must be a middle ground between experience and theory/conceptualizations/etc.
I have as an (unproven) article of faith that you can help people learn to think differently. In my own experience I know (believe?) that certain people did help me learn to think differently. What I'm wondering now is whether there are certain approaches that work particularly well with certain individuals.
:) Again, speaking only from my experience I know that it was talking with people that let me get into their minds (to some degree) and change my way of thinking about things.
I totally agree that there is no "one size fits all" approach to developing intuition, or problem solving for that matter. On the other hand I don't want to go to the other extreme and say that there are no common approaches. Hopefully there is a middle ground of techniques that would work better than others for a particular sub-group.
I like the idea of "masterworks" a lot. All we need now are those notebooks
Your final point is bang on, but the problem is that there is a finite (and it seems small) population of these great programmers and a much larger population of people trying to learn programming.
I agree with you that Gamma et. al. is a good great book, *assuming that you have already conceived of your program as objects*. While there could conceivably be design patterns for other conceptual models, I have yet to see such patterns collected into a similar work.