Funny thing is that the former gets lots of work and the later none at all.
What skills do self-taught programmers commonly lack?
61–70 of 161 posts
Re: What skills do self-taught programmers commonly lack?
#62Re: What skills do self-taught programmers commonly lack?
#63It's interesting that this question implied the negative -- not what's the difference between , not even what are the strengths and weaknesses of , but: > What pieces of the whole are missing? The implication being that without a formal CS education, it is an impossibility to obtain a whole. As if whole matters; how does one obtain whole , anyway? This is a very loaded question and perspective that betrays a serious…
As a self-taught programmer myself, I confess this is exactly how I would frame the question. I'm constantly worried there's something crucial to which I'm oblivious.
Re: What skills do self-taught programmers commonly lack?
#64My hypothesis is that a CS education would be most useful after you have already spent 5-10 years in industry. Unfortunately for most people life just isn't structured in a way to allow for full time education later in life.
Interestingly, historically, there's usually been a war or famine or other hardship that has forced people in their late teens to grow up quickly. Is our society really better on a macro level for the ease that teenagers have now?
Additionally, schooling after a few years as an apprentice is extremely helpful in that you have a familiarity and context about the field and can instantly filter the busy work from the useful information. One may also be in better financial condition by that point, making loans less necessary and ultimately saving the student a lot of money.
Personally I plan to encourage my children to do something else for a few years before they enter post-secondary education (if they plan to do so at all).
Re: What skills do self-taught programmers commonly lack?
#65This is a most frustrating and poignant question. I am a self-taught programmer. That being said, I'm not lacking in any desire or ability to teach myself. In fact I am quite active about it and not just in programming. Sitting on my bookshelf is a current set of AoCP and the companion, Concrete Mathematics. I keep journals of my thoughts, progress, and notes about excercises. I converse with knowledgable people on u…
Re: What skills do self-taught programmers commonly lack?
#66Re: What skills do self-taught programmers commonly lack?
#67There's a comment there where someone says you go to school to learn how to learn. Clearly self-taught programmers already have this part mastered. It leads me to wonder why we aren't asking, "What skills do school-taught programmers commonly lack?"
The most common I have seen is to obsess over code as an ends in itself. Writing pretty code when the solution doesn't really require it. The other is premature optimization, where all code must be fast, regardless of whether the problem requires it. These both lead to lacking a "get it done" attitude that I've seen in the self-taughts.
Re: What skills do self-taught programmers commonly lack?
#68Earlier quoted context omitted.
I'm inclined to disagree. The converse -- what skills does a programmer who has never left academia lack? -- strikes me as perfectly valid. And surely there must be some benefit to taking four (or more) years out of your productive life to the study of programming? But I say this as a self-taught programmer, so perhaps it's just that I'm envious of those who've had the benefit of a formal CS education.
I feel the same. Inferiority complexes for the self-taught?
After many years of experience and a lot of dedication—he expended much effort reading CS books on different topics—he came to be a solid practitioner and now is a leader in the Ruby community.
Re: What skills do self-taught programmers commonly lack?
#691) Your average database/object driven application. There is user input. This translates pretty directly to output. There may be some interesting algorithms in between, but it's pretty much UI programming.
2) Solving difficult problems. A logistics routing application. The bulk of the code is based on graph theory, reducing the problem perhaps into smaller segments that can be solved in different ways. The UI is just the surface.
There is a need for both types of programmers. The first type are increasingly graphic designers who decided to learn PHP or some similar situation. There are tons of great applications out there that really aren't that complex (except when scaled to extreme proportions - ie Twitter). Wordpress, Gmail, even Microsoft Office isn't terribly complex (at least, the 90% of it that everyone uses).
The second group seems to be a bit more selective. Applications like Dropbox, which need to route data in the most effective way, or Adsense, in which profit needs to be optimized in choosing what ad to display as a page loads. These are complex problems, with complex solutions. That's where O(n) analysis is important. That's where an understanding of graph theory and established algorithms is critical.
While these two groups aren't completely exclusive, I'd say many self taught programmers find themselves in the first group.
Re: What skills do self-taught programmers commonly lack?
#70It's interesting that this question implied the negative -- not what's the difference between , not even what are the strengths and weaknesses of , but: > What pieces of the whole are missing? The implication being that without a formal CS education, it is an impossibility to obtain a whole. As if whole matters; how does one obtain whole , anyway? This is a very loaded question and perspective that betrays a serious…
I'm inclined to disagree. The converse -- what skills does a programmer who has never left academia lack? -- strikes me as perfectly valid. And surely there must be some benefit to taking four (or more) years out of your productive life to the study of programming? But I say this as a self-taught programmer, so perhaps it's just that I'm envious of those who've had the benefit of a formal CS education.
Also known as making deadline.