That has not been my experience at all. But I suppose it depends on what kind of programs you're writing.
3,114 karma · joined October 20, 2007
That has not been my experience at all. But I suppose it depends on what kind of programs you're writing.
> A course taught as a bag of tricks is devoid of educational value. One year later, the students will forget the tricks, most of which are useless anyway. The bag of tricks mentality is, in my opinion, a defeatist mentality...In an elementary course in differential equations, students should learn a few basic concepts that they will remember for the rest of their lives...
I hated the DE cleass I took in college and it was largely because I felt like it was nothing but a bag of tricks. I very distinctly remember one problem that seemed unsolvable until the teacher showed that you had to substitute a "2" with "1/2 + 3/2". And then, to make matters worse, he put the exact same problem on the test. So we were being rewarded, not for really understanding the core basic concepts, but for memorizing the tricks needed to solve specific problems.
[1] https://wiki.haskell.org/Hac_%CF%86
[2] (http://www.meetup.com/Boston-Haskell/events/223607923/)
My view is that people should live in a way that maximizes their happiness. MMM seems to enjoy taking frugality to the extreme. But I'm different. That lifestyle would not make me happy at all. In the past I have lived with very little left over for savings. That way of living also caused a lot of stress any time unexpected expenses pop up. It absolutely did not maximize my happiness. I'm fairly careful with my money naturally, so my current mode of living doesn't require any effort on my part. It leaves me free to make what many would consider pretty large splurges from time to time while still maintaining a nice cushion for unexpected expenses as well as a nicely increasing investment portfolio that should allow me to retire well before the standard retirement age.
So no, while you might not be able to say I have fully unabated spending habits, MMM might say that I do. And in that case I would satisfy all three of your points.
That being said, I'm very open to being convinced otherwise and pull requests carry a lot of weight with me. If someone reorganized the material in the way you suggest and it had a nice flow, there's a decent chance I would accept it.
[1] https://downloads.haskell.org/~ghc/latest/docs/html/librarie...
[2] http://hackage.haskell.org/package/vector-0.11.0.0/docs/Data...
[3] https://downloads.haskell.org/~ghc/latest/docs/html/librarie...
Yeah, I know what you mean. You certainly could do that. But I think that's less useful. If you use a specific number of hours as the benchmark you lose most of your relationship to useful levels of competence. I think each domain has natural levels of competence that have meaning, and it's probably better to keep the discussion oriented around that.
For a ukelele or guitar player, knowing enough to play the majority of pop songs is probably significant. For a piano or violin player maybe the bar for basic competence is a bit higher. For partner dancing it seems like the level you need to be to safely dance on a crowded public dance floor and make most partners feel comfortable is probably a pretty important level of skill to talk about. These levels are also personal. Maybe one budding pianist is happy with pop songs, but you're not going to be happy until you can play a full piano concerto. Perhaps your goal is just to be able to write a few computer programs, but a company hiring wants people who understand more about what it takes to maintain larger projects over a longer period of time.
When it comes down to how decisions are made in the real world nobody cares about how many hours you've practiced. It's all about what you can do.
Not all activities work like this, but some do. Good teachers, however, pretty much always help. :)
But even that is not always true. There are some activities where it's hard to see meaningful progress for awhile, but then once you've built up an adequate base you start progressing more rapidly.
These kinds of articles tend to be popular because they make people think that it's easy to learn new things. This is an inspiring idea and if it results in people learning more things then it might even be a beneficial thing to say. But I think it's more beneficial to promote the value of deliberate focused effort (hard work if you will), because some things simply don't come easily.
1. Learn vim (or emacs)
2. Use Linux and the command line
3. Use git
One of the guys started this semester. He's already a bright guy and would have been near the top of his class without me, but those three simple things make him look like a magician to his classmates. In the course of getting helping him get set up with Linux I also became aware how much of an advantage my middle class upbringing gave me. Something relatively basic like having a decent laptop can actually be a big obstacle. $1000 is a lot of money to a lot of people. Now I'm sure some people will say that you don't need to spend $1000 to get started with a usable computer. That's true, but there are useful things that you can do with a $1000 computer that the much more affordable computers can't do.
Another anecdote. A few years ago I was in a climbing gym and I tried slacklining. It seemed impossible so I didn't do anything more with it. A few years later someone suggested that it does wonders for your balance so I decided I wanted to learn. Then by luck I happened to run across some people slacklining and over the course of a couple days I was able to spend some time with them practicing. Their guidance got me over an initial hump that seemed insurmountable from the outside.
So yes, "environment" should DEFINITELY be added to my list!
I thought about saying something like this, but after some reflection I don't think it's true. The shape of skill vs time curves is not always exponential.
For instance, take Argentine Tango. It took me 9 months of consistent 10 hours / week practice to even reach a point where I felt comfortable going to the average public social tango event. In fact, in tango it's pretty widely recognized that the learning curve shape is very different for leaders and followers. For followers it typically looks like [1]. But for leaders it's more like [2]. (Time on the x axis, skill on the y axis.) I really think that in general it's probably more like a "multi-hump curve" [3] in the general case. I had a situation recently where I took one lesson with a tango teacher and in one hour he totally revolutionized my dancing. And this isn't me talking, people I dance with regularly said that.
So I don't think the rate of progress at a new activity is always exponential or even fastest at the beginning.
[1] https://upload.wikimedia.org/wikipedia/commons/b/ba/Exponent...
[2] https://upload.wikimedia.org/wikipedia/commons/8/88/Logistic...