Forum OpenACS Q&A: Response to Advice to ACS newbie wanting to do the problem sets, learn ACS
(not a criticism or debate, Yon, just a reply)
**********
While psets are useful, don't make it sound like nothing can be learned without them. They are just problems to solve with some tool specific hints about how to solve them. If one really has no idea what would be useful to do, it should be possible to solve pset problems in just about any web server that can embeed some scripting language and talk to a database.
**********
What I found most useful about the problem sets was the suggested/required outside reading included with the "task to do".
This solves the very big problem of knowing how much of what to study in what order. As Phillip has stated in his other writing, the way computer subjects are usually taught is for the student to spend a semester in subject A, then a semester in subject B, and after 2-3 years of this start to put it all together and hope not much was forgotten.
I think Phillip's approach is superior. As we all know, there are just way too many topics making up what a well rounded developer needs to know to be proficient. By definition, newbies are not able to correctly guess/know how much of which subjects to learn in what order.
FWIW, I think the problem sets did a WONDERFUL job of seasoning the lessons/task with outside reading with, as far as I am capable of telling, JUST the right subjects at JUST the right depth and detail that encouraged JUST the kind of thinking and questioning in the learners mind so that they "got" the gist of what was beneficial to know at that stage of their learning.
I think Phillip was masterful at this. Phillip would even say something like "skim this for now and then come back to it later" or "this is a good reference" -- letting the learner know what to study like a subject in school .vs what to become familiar with and have at the ready for reference.
A lot of his stuff were (and still are, IMO) exceedingly good introductions to subjects and topics that left the reader with not only a great conceptual framework, but also the benefit of many lessons learned by hard won experience. As a bonus, he made it both entertaining and engaging to read, too!
After all, isn't that one of the primary things this very forum does for many here? Saving us from wasting time by sharing the benefits of our relevant experiences? Heck, that's the purpose of lots of online communities. As an example, think of PC tech sites like 2cpu.com, amdmb.com and arstechnica.com where folks in the forums share what components/cards work in what motherboards with what driver software to install -- and avoid -- to get their PCs running as desired; stable or over clocked.
People can then can spend that saved time and money productively bearing fruit rather than tilling the same ground.
Where would society be if we all had to reinvent the same wheels and learn the same lessons? I'm NOT saying there is no need to learn the lessons one learns by experience. Heck, now I can usually figure out what the problem most likely is before I even look at the code due to my experience doing maintence work on very large old very patched up systems for so many years when some bug rears it's head for me to squash.
Think of the problem set zeros some folks put together. Just what someone needed to know and familiarize themselves with before boot camp. Maybe I look at the problem sets as a whole as "problem set zero for one's first "real" production DB-backed website/webservice".
Heck, being a mainframe programmer/analyst for going on 13 years, I'm under no illusions of an easy "cook book" approach to guru like status as a web services developer. However, I am today and have been for many years perpetually blessed by the fact that when I started I had formal training classes (was #1 in the class, BTW) at work and mentors to guide me in the basics I needed to know instead of being left to flounder.
The company I started with developed their people expecting *at the time* to enjoy the benefits of their increased productivity for 2 or 3 decades; so it made sense to make sure everyone got a good grounding and help to minimize the "wash outs" who could have made it if only they had some guidance and help in the beginning.
Just like what would benefit this community by not losing newbies who "could have made it" and become productive contributors of the community if only they had had enough help and guidance in the beginning to get them over "newbie hump" with all the new stuff they have to learn.
Detailed guidance and how to's would help greatly, IMO. People's lives clamor with so many competing interest that anything we could do to give folks an edge to stay the course until they overcome "newbie hump" would work wonders for community growth over time, IMO.
Heck I recall it took 14 months after I started before the "buffer overload" ebbed away and another 3 years before I was pretty much "fully qualified" -- and I was told by serveral in my work group that they never saw anyone come along as fast as I did; was told I was performaing like someone with ten years of experience after 4 years, so I'm no duffer or lazy learner who wants it all handed to me.
I'm under no illusions of "quick senior level knowledge" without the benefit of years in the trenches; I know that following an install how to and doing five problem sets and some outside reading do not an expert senior db-backed web developer make.
The folks at the company I started out at in IT knew what ALL new programmer/analyst needed to know -- how much of what in what order -- and also what they didn't need to waste time becoming expert at, too; just like Phillip and the senior folks here. IMO, THAT'S the value and immense public service Phillip's writtings -- including the psets -- and sites like this provide.
I'm hoping what has been produced so far does not fall into drab disrepair and become an online shanty town, but is rehabbed, modernized and brought up to code (pun intended) -- because I think what Phillip and this community has produced in the past -- and this comminity itself -- is worth it.
Sincerely,
Louis