View Single Post
  #2   (View Single Post)  
Old 23rd January 2012
ocicat ocicat is offline
Administrator
 
Join Date: Apr 2008
Posts: 3,318
Default

Quote:
Originally Posted by daemonfowl View Post
franky speaking , being a total newbie both in the *Nix world as well as the programming field I wonder what programming lge might be more beneficial to me than others ..
This is a frequently posted question.

I have two recommendations.
  • Being able to script utilitarian common maintenance tasks is a useful skill.

    As a new (Open)BSD user, one of the first things you should consider going forth -- especially as you experiment with new tasks/exercises which you may not have done before -- is having a means of backing up & restoring an installed system. Everyone will goose a configuration at one time or another, so it is important that any foreseen or unforeseen mistake does not become a disaster by deleting critical data, & only you can define/decide what is critical & how much work do you want to take on in recovering a system. So consider writing backup shell scripts as a first exercise.
  • As to the choice between Perl & Python, I would suggest Python as newcomers will likely find it more natural to write. Python does not possess the syntactic baggage of other languages.

    Perl is integrated into OpenBSD's base system simply because it was the only available choice when the decision was made to integrate a scripting language into the default configuration. A number of common OpenBSD utilities including the tools used to manage third-party applications available in OpenBSD's package system are written in Perl. Writing Perl code is compelling given the maturity & breath of CPAN, however, Perl syntax has its challenges which some newcomers find difficult to surmount.
While learning to program is an accomplishment, there is also tedium that comes with the exercise. Unless you have a specific goal which is important to you to finish, it is not uncommon for people with the best of intentions to lose interest over time because writing the code needed to solve any given problem became "messy".

Programming effectively is more than learning any given language's syntax. Programming effectively also means understanding the problem which is to be solved. Lots of research may need to done before you fully understand the underlying problems & all essential code can be written. When embarking upon any programming project, be very truthful with yourself as to your own commitment, curiosity, fortitude, & time when tackling the exercise.

Some programming problems will be trivial, but many won't. Practice & experience will help. So don't think that programming can be "mastered" in a week or two. It takes time. Consider the effort a long-term investment.
Reply With Quote