Programmer's Hostility Towards Beginners
mo at ccr.org
Sun Jul 6 20:57:06 CDT 2008
Joseph Bento wrote:
> Hey guys,
> In all the years I've worked in electronics, both a a career and as a
> hobby, I've never learned any programming languages.
> I've started playing with PIC microcontrollers, and am attempting to
> learn some basics of assembly language and C. I have a PicKit2
> programmer, and know how to burn the code into the chips. I've also
> joined a few mail discussion lists catering to embedded C programming
> and assembly as used in the microcontrollers.
> In recent posts to this programming forum, I've encountered something
> that I find most unfortunate. This certainly doesn't speak for all,
> but is just a generalization from my own observations. Professional
> programmers are rather hostile towards beginners. If you can't
> understand the syntax of C or mnemonics used in assembly, you are
> perceived as an idiot. I had replied to one individual in the list
> that also maintains a web page of projects, including the source
> code. In writing, I stated that I was trying to learn, and received a
> rather curt reply stating that it takes years to learn the ins and
> outs. It felt Sort of like, go back to your little hobby world and
> leave the coding to professionals.
> I hope this is an isolated incident. There are some excellent books
> for self learning, though it is always helpful to have an expert peak
> at what you're doing and offer constructive criticism, rather than
> PICs look to be a lot of fun to use for projects, and what can be done
> with them is limited only by one's imagination. It does take a bit of
> help to learn how to program them, however.
> Wish there were some night classes at the local university to attend.
> Joe, N6DGY
> Pleasant Grove, Utah
don't take any crap - they were newbies once, too, and you
don't plan to write flight control software for the Space Shuttle.
if they don't wanna be fun to play with, nobody will play with them.
if it sounds like 3rd grade playground foolishness,
that's because it is.
the important ideas in programming are independent of the language
used to express them (to some large but not infinite degree).
hence, any intro programming course would likely help you get a
leg-up on things.
if you wish to learn C, there is still no better book than the
original Kernighan and Ritchie "The C Programming Language".
sure, you can find rags more au courant with the latest fine
print that's been added to the language to placate the language
lawyer types, but for learning what real idiomatic C looks like,
K&R is a great start. (Yes, the pedants will point out that some
of the library routines used in K&R have been declared insufficiently
"PC" for use by the overly-righteous, but if that's the only sin
you commit, you are well down the road to enlightenment.)
As for the PICs, there's a vibrant and active community around the
Arduino tiny controller. it's cheap, lots of code, lots of add-on
boards, lots of fun. and a community composed largely of people
who want to do something amusing with a microcontroller, not
inflate their ego.
oh yes, the Adruino now works with "Processing" - a language
descended from Java (and implemented in it) with a great environment
for doing waaaaay cool stuff like music and art. in fact, it was
designed specifically for doing art and music. for those who know
something about Java and the 9-yards of hair usually involved in
graphic and sound intensive Java code, you'll find Processing
an real bottle-brush through the ears.
73s and Happy Coding
More information about the Tacos