DaemonForums  

Go Back   DaemonForums > Miscellaneous > Programming

Programming C, bash, Python, Perl, PHP, Java, you name it.

Reply
 
Thread Tools Display Modes
  #1   (View Single Post)  
Old 23rd January 2012
daemonfowl daemonfowl is offline
bsdstudent
 
Join Date: Jan 2012
Location: DaemonLand
Posts: 834
Thanked 0 Times in 0 Posts
Default What should be my first language?

Hello to everybody !!

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 ..

ksh scripting ? perl ? python ?
they say python is clement as to beginners but I feel perl can help me advance better in 'daemonology' ..
right ,
Daemonologists ?
Reply With Quote
  #2   (View Single Post)  
Old 23rd January 2012
ocicat ocicat is offline
Administrator
 
Join Date: Apr 2008
Posts: 2,834
Thanked 190 Times in 160 Posts
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
  #3   (View Single Post)  
Old 23rd January 2012
IdOp's Avatar
IdOp IdOp is offline
Too dumb for a smartphone
 
Join Date: May 2008
Location: twisting on the daemon's fork(2)
Posts: 534
Thanked 14 Times in 13 Posts
Default

I would think Bourne shell (sh) scripting is essential if you're going to maintain your own Unix-like system.

Knowing a bit of awk scripting can be helpful with your shell scripting. awk uses a C-like syntax, so if you're familiar with C it should be reasonably accessible. If you're not familiar with C, it would be worth considering. Any self-respecting Unix-like workstation will have a C compiler on it, so why not know something about this language with deep Unix roots, which is still used today for system development. It's nice to be able to compile your own programs.

Beyond that, I'd think very carefully why you want to learn anything else before proceeding on a large effort.
Reply With Quote
  #4   (View Single Post)  
Old 23rd January 2012
ocicat ocicat is offline
Administrator
 
Join Date: Apr 2008
Posts: 2,834
Thanked 190 Times in 160 Posts
Default

Quote:
Originally Posted by IdOp View Post
I would think Bourne shell (sh) scripting is essential if you're going to maintain your own Unix-like system.
Very good point.

Most, if not all shells claim Bourne compatibility, although some are more compatible than others.

The point IdOp is making is consider coding to the Bourne shell as the lowest common denominator. Bourne shell code has a higher probability to running on any number of shells. Although bash was not initially mentioned, integrating bash-ism's into a script limits its use to the bash shell only. Getting locked into using a specific shell may hurt one's self at the most inopportune moment later on.

Last edited by ocicat; 23rd January 2012 at 09:14 PM.
Reply With Quote
  #5   (View Single Post)  
Old 23rd January 2012
daemonfowl daemonfowl is offline
bsdstudent
 
Join Date: Jan 2012
Location: DaemonLand
Posts: 834
Thanked 0 Times in 0 Posts
Default

Thanks Ocicat , much indebted to you and you're a source !
I thought the openbsd team chose perl because it is more practical and more powerful than the rest .. likewise after reading days ago that openbsd team got rid of c++ from the base I thought c is better or less problematic or more secure .. again a newbie scale ..
my aim is to qualify as a BSD user [and contributor in the long run] so that I can -the best way- make use of the new OS I discoverd,loved, and trusted .. I feel the urge to embrace this new culture .. the BSD UNIX culture .. I met with some problems that windows hid from me as a user .. namely : unicode support ..
I am divorsing my old bad 'WinHabits' .. among many , doing without gui to develop the alternative '*Nix-habits' .. using snownews / lynx/ mp3blaster/ mutella /xxxterm / ...

so I guess it is python instead of perl ..
Reply With Quote
  #6   (View Single Post)  
Old 23rd January 2012
daemonfowl daemonfowl is offline
bsdstudent
 
Join Date: Jan 2012
Location: DaemonLand
Posts: 834
Thanked 0 Times in 0 Posts
Default

ldOP , Thanks for your suggestion

c is famous in prog literature so well as in real UNIX LIFE , but some disencourage beginners like me from choosing c as a first programming language
some went further as to blame c for pushing learners into learning bad programming habits .. I am just quotng here .. I still have no clue how true or false this might turn ..

Friend ldOP , what do you mean by 'large effort' ?
Reply With Quote
  #7   (View Single Post)  
Old 23rd January 2012
IdOp's Avatar
IdOp IdOp is offline
Too dumb for a smartphone
 
Join Date: May 2008
Location: twisting on the daemon's fork(2)
Posts: 534
Thanked 14 Times in 13 Posts
Default

Quote:
Originally Posted by daemonfowl View Post
c is famous in prog literature so well as in real UNIX LIFE , but some disencourage beginners like me from choosing c as a first programming language
some went further as to blame c for pushing learners into learning bad programming habits .. I am just quotng here .. I still have no clue how true or false this might turn ..
I'm sure the discouragers have some valid points, and I was surely just showing my biases as much as anything. You did mention C in another post, so I thought you may have had some familiarity with it already. Working a bit with C can not only be an avenue to learn about programming, but also issues to do with compiling, porting etc. For someone starting out, you could leave the to-C-or-not-to-C decision until later, and just keep an eye open and note if there are sufficient times where you thought "gee it would be good if I knew more about C, it would help a lot with <this>".

Quote:
what do you mean by 'large effort' ?
Well I guess an effort somehow in line with what you get out of it, and not distracting you too much from other important things. Nothing wrong with doing something just for fun, or to learn generally, if you can't stop yourself from going at it . OTOH there are so many programming choices out there nowadays, that it might be easy to start a partly wasted effort to learn language X just because you felt you had to, or it was the cool thing today, if you really had little use for it. Of course you would still get something out of the effort.
Reply With Quote
  #8   (View Single Post)  
Old 23rd January 2012
ocicat ocicat is offline
Administrator
 
Join Date: Apr 2008
Posts: 2,834
Thanked 190 Times in 160 Posts
Default

Quote:
Originally Posted by daemonfowl View Post
I thought the openbsd team chose perl because it is more practical and more powerful than the rest ..
Not true. However as mentioned before, the breath, depth, & maturity of CPAN is unsurpassed by any other language.
Quote:
likewise after reading days ago that openbsd team got rid of c++ from the base I thought c is better or less problematic or more secure ..
Certainly not true. Many of the project developers prefer C over C++ because:
  • BSD was originally written in C.
  • Debugging C++ code can be more problematic than debugging C although this has gotten better as C++ compilers have matured.
Quote:
I am divorsing my old bad 'WinHabits' ..
Although we have a number of members who try to outdo each other in spouting anti-Microsoft diatribes, it is not a particularly effective use of time. Windows is Windows for better or worse. Most of the public is familiar with it (or OS X...), & this isn't going to change anytime soon regardless of how much any of us posture. Operating systems targeting the masses have their place. No more, & no less.

But that is my opinion.
Reply With Quote
  #9   (View Single Post)  
Old 23rd January 2012
daemonfowl daemonfowl is offline
bsdstudent
 
Join Date: Jan 2012
Location: DaemonLand
Posts: 834
Thanked 0 Times in 0 Posts
Default

interesting ..
well I said it as a fact (bad habits relating to the very nature of the OS) not as an attitude. while bidding windows farewell I did it , not out of contempt or resentment but simply because I found a better alternative .. encompasing all expectations and at this low newbie level , let alone afterwards ..
I reember Theo de Raadt once said on an old TV interview that security is based both on me and the other net user ..
I believe Windows has contributed much to most net probs ..
Respect to all opinions of course .. bifrost has got many colors ..
Reply With Quote
Old 3rd February 2012
thirdm thirdm is offline
Package Pilot
 
Join Date: May 2009
Posts: 180
Thanked 3 Times in 3 Posts
Default

Quote:
Originally Posted by daemonfowl View Post
Thanks Ocicat , much indebted to you and you're a source !
I thought the openbsd team chose perl because it is more practical and more powerful than the rest .. likewise after reading days ago that openbsd team got rid of c++ from the base I thought c is better or less problematic or more secure .. again a newbie scale ..
my aim is to qualify as a BSD user [and contributor in the long run] so that I can -the best way- make use of the new OS I discoverd,loved, and trusted .. I feel the urge to embrace this new culture .. the BSD UNIX culture .. I met with some problems that windows hid from me as a user .. namely : unicode support ..
I am divorsing my old bad 'WinHabits' .. among many , doing without gui to develop the alternative '*Nix-habits' .. using snownews / lynx/ mp3blaster/ mutella /xxxterm / ...

so I guess it is python instead of perl ..

Here's a fuller answer about the decision to use Perl:

http://marc.info/?l=openbsd-misc&m=121155084515533&w=2

C++ isn't removed from base in any way that would meaningfully limit you if you chose that as your first programming language. The gcc in base compiles C++ fine, and these days is only a little out of date on most architectures. If you find yourself wanting to use features from C++11 (the new ISO standard just out this year) you may be able to pull in a newer gcc from ports with some support. The C++ program they removed from base I believe you are thinking of was groff. Whatever the C++ bashers want you to believe, the problems for them with groff seemed, from my reading, to have more to do with that particular code base, that it was a general purpose troff formatter and they only needed enough of it in base to handle man page formats, that groff's license was GPL (perhaps -- I'm always unclear just how big an issue GPL in base is for OpenBSD and whether that issue isn't overstated by some people), that the job to bring in a newer version of groff was nothing anyone would find fun, and that Kristaps Dzonsons and Ingo Schwarze had done such a nice job with mandoc. Unfortunately, this usually gets translated as, "groff's written in C++ so it sucks."

C is not better than C++. Python is not better than Perl. I'd suggest you try to avoid these language A is superior to language B kinds of statements (both reading them, even when written by OpenBSD developers, or writing them). Bjarne Stroustrup writes about the problems with these statements better than I ever could in his FAQ: http://www2.research.att.com/~bs/bs_faq.html#compare .

What ocicat wrote about Python being syntactically clean is fair and a plus for Python as a first language. I think I've read something to the effect that Guido had an earlier language whose goals included being a good teaching language as a model, so it's perhaps understandable that it's novice friendly. That said, Perl's not as bad a choice as many make it out to be either, and you could read the source to the OpenBSD package system, once learning it. Larry Wall has been quoted as having a design goal of supporting "baby talk" meaning that there are meant to be multiple levels of Perl knowledge, none of which leave you hamstrung as far as making things work. IMO, he's been quite successful with that. I found learning Perl to be great fun (and still do every time I relearn it ).

I also like what ocicat said in suggesting shell script (though, personally, I go out of my way to avoid shell script beyond a two liner -- Olin Shivers takes some entertaining swipes at Unix shell script I relate to that you can find here if you don't feel like following my advice above about reading language bigotry: http://www.scsh.net/docu/scsh-paper/...per-Z-H-1.html ), since you said your goal was to perhaps contribute to OpenBSD someday. I'm guessing you would start with making ports, in which case you'd need to know shell script, perhaps some Perl, Makefiles, and some C at a minimum. If you learned Python instead of Perl, maybe you could start by maintaining Python module ports.

In general though, except for your goal to contribute, I don't personally think you should be as influenced as you seem to be by the preferences of other BSD users and developers. There seems to be a bias towards C and shell script/awk/sed among Unix people. That's not such an unattractive programming world, but there are other worlds, and OpenBSD supports programming in them quite well too, despite the preferences of many of its kernel and user land developers. As an example of the many alternatives available, this book on Lisp could be a fun place to start for a beginner (and there are some great, more serious books on Lisp you could follow up with, such as Peter Norvig's Paradigms of Artificial Intelligence or Abelson and Sussmans' Structure and Interpretation of Computer Programs): http://landoflisp.com/ OpenBSD now has very good support for Common Lisp. They actually are better (in some respects?) than anyone else in their SBCL support, supporting me on PowerPC (yay!). Not even Linux or OS X are up to the version number the OpenBSD porter and SBCL people have gotten up to: http://www.sbcl.org/platform-table.html
Reply With Quote
Old 3rd February 2012
ocicat ocicat is offline
Administrator
 
Join Date: Apr 2008
Posts: 2,834
Thanked 190 Times in 160 Posts
Default

Quote:
Originally Posted by thirdm View Post
Here's a fuller answer about the decision to use Perl:

http://marc.info/?l=openbsd-misc&m=121155084515533&w=2
Very thoughtful answer, thirdm! Thanks for taking the time to contribute deeper reflection.

Why Perl is in base has been discussed on misc@ periodically for a number of years. My recollection centered around project developer comments such as the following:

http://marc.info/?l=openbsd-misc&m=123044348520838&w=2

However, your resurrection of Espie's take (as done above...) is more apropos(1).
Quote:
...I'm always unclear just how big an issue GPL in base is for OpenBSD and whether that issue isn't overstated by some people)
I suspect it is an unofficial dream to be rid of all GNU dependencies making at least one *BSD thoroughly self-sufficient from relying on any GNU tool in the base installation. As an example, several releases ago there was considerable discussion about moving OpenBSD to pcc:

http://undeadly.org/cgi?action=artic...20091228231142

As I recall, the motivation came from wanting to move away from GCC3.2 which was getting old in the tooth. pcc was considered, but many of the developers had concerns over whether pcc was mature enough & whether it could handle all of OpenBSD's supported platforms. The window for making a decision was short, so retrofitting GCC4 was the alternative chosen.

I suspect that there will be continued piecemeal moves away from GNU. If mandoc(1) (for replacing textproc/groff...) & tmux(1) (for replacing misc/screen...) are indications, there are collateral advantages. Increased stability is one. Clarity coming from reviewing the problems of old & seeing where usage is likely to go in the future is another. The original tools being replaced had been long used in enough situations for their deficiencies to become clear. Plus, there have been developers motivated enough to come up with working alternatives. Clarity didn't come from using newer shinier tools & languages; clarity came from understanding the fundamental problem space.
Quote:
I also like what ocicat said in suggesting shell script (though, personally, I go out of my way to avoid shell script beyond a two liner...
While I understand why you made this statement, I will nevertheless push back. Some of the most useful pieces of code I have written which I come back to time & again are shell scripts to backup & restore, plus build bootable USB flash drive configurations. They are not elaborate, but the bootable USB configuration script is over 250 lines. Shell scripting isn't sexy, but gluing together common Unix tools is a useful & practical skill. Could these be rewritten in Perl and/or Python? Given how I use these tools, keeping them compatible to OpenBSD's base configuration is a useful feature, so that excludes Python. Could they be rewritten in Perl? Sure (& I considered this at the time...), but there isn't much to gain. The scripts work quite fine as they are now, so until I have reason to revisit the decision, they will continue to be maintained & tweaked as shell scripts.

FWIW.
Quote:
...since you said your goal was to perhaps contribute to OpenBSD someday. I'm guessing you would start with making ports, in which case you'd need to know shell script, perhaps some Perl, Makefiles, and some C at a minimum. If you learned Python instead of Perl, maybe you could start by maintaining Python module ports.
This is a useful suggestion! However, depending upon the application chosen for porting, the list of tools one needs familiarity gets long (as seen here in your example...). When the question gets focused on what should be a person's first language, I still come back to scripting in some form. Scripting is practical, & nominal mastery can be attained in a few months. Not everyone needs to be fluent in C/C++, & as you know, good C/C++ programmers take years to mature.
Quote:
...but there are other worlds, and OpenBSD supports programming in them quite well too, despite the preferences of many of its kernel and user land developers.
I want to underscore your point here too. As I continue to be employed as a developer, I, too, keep coming back to the value of functional programming originally advocated by Lisp (& Haskell...). As time allows, I hope to explore these further.

But for those who dismiss the notion, functional programming idioms can be found in Perl & Javascript too(as examples...).

Again, thanks thirdm for your insight! You have made some compelling arguments.
Reply With Quote
Old 4th February 2012
thirdm thirdm is offline
Package Pilot
 
Join Date: May 2009
Posts: 180
Thanked 3 Times in 3 Posts
Default

Quote:
Originally Posted by ocicat View Post
While I understand why you made this statement, I will nevertheless push back. Some of the most useful pieces of code I have written which I come back to time & again are shell scripts to backup & restore, plus build bootable USB flash drive configurations. They are not elaborate, but the bootable USB configuration script is over 250 lines. Shell scripting isn't sexy, but gluing together common Unix tools is a useful & practical skill. Could these be rewritten in Perl and/or Python? Given how I use these tools, keeping them compatible to OpenBSD's base configuration is a useful feature, so that excludes Python. Could they be rewritten in Perl? Sure (& I considered this at the time...), but there isn't much to gain. The scripts work quite fine as they are now, so until I have reason to revisit the decision, they will continue to be maintained & tweaked as shell scripts.
I will agree for the person starting with Unix, shell scripting is a good place to start. Some could argue that you could go directly to Perl, Python, Ruby, scsh, lua, Tcl, or something else and get more regular syntax or fuller capabilities (the scsh paper's worth a read, but perhaps not until after OP has learned some shell and C)..., but then you would miss out on appreciating the approach to programming that's described so well in a book like The Unix Programming Environment.

I find myself lately wanting to do everything through emacs, scsh and Common Lisp. But I've bounced back and forth on this over the years. Sometimes even now I read how others work, quotes like, "the Unix environment is my IDE," and find myself wistful, almost ready to bounce the other way again and become for a while a vi/awk/shell/C person or an acme/awk/rc/C/plan9 person.

Still, I hate the quoting rules and lack of types in shell. Just my preference. No one should take that as advice, but instead try it and decide themselves what they like.
Reply With Quote
Old 12th February 2012
daemonfowl daemonfowl is offline
bsdstudent
 
Join Date: Jan 2012
Location: DaemonLand
Posts: 834
Thanked 0 Times in 0 Posts
Default

that's deep reasoning .. thanks Thirdp ! thanks Ocicat ! we learn from you nice guys ..
I 've got a lot of programming tutorials .. I haven't yet made up my mind .. how ironic it seems to be : for while one tries hard to well choose the right prog-lge to ave time , he wastes more time deciding ..
will a year spent on python be a waste of time for a bsd-oriented newb ? won't it help much as fas as c itself is concerned ? being ditched by the openbsd team, obviously when a nerd informed that another lge came first , alluding to perl ...
Reply With Quote
Old 12th February 2012
thirdm thirdm is offline
Package Pilot
 
Join Date: May 2009
Posts: 180
Thanked 3 Times in 3 Posts
Default

Yeah, it almost feels easier not to have choice. I was probably a no nothing idiot, but it was comfortable for me starting out because my choices were (falsely?) limited. At one point Turbo Pascal was the "obvious" choice among people I chatted with on BBSes. Then Pascal was no good and you had to use C. Then a few years later, if you weren't using C++ and Objected Oriented Programming you must be very small minded (there was a voice or two chiming in that if you really wanted to do OOP you should learn Smalltalk not C++, but that didn't run on PCs back then, I don't think). As simplistic as my way of thinking was it got me somewhere I'm happy with now. I make my living writing mostly C++, quite like using the language (*ducks*), and am excited about where it's going.

Now (I think) I see better that there are many choices with various tradeoffs and no single right path to take. But I feel just as you do the doubt in picking one thing over another. Should I have never looked at Lisp? Should I have stuck with Scheme instead of switching to Common Lisp (and then, which compiler or interpreter should I use). Maybe I should have concentrated on learning C++ better. I may be local guru where I work but I'm novice level compared to real C++ gurus. Or should I spend more of my free time learning things consistent with the new preferences of the company I currently work for rather than learning it piecemeal as I need it? I don't want to spend a lot of my free time learning a proprietary (more or less) language and library set, especially if I can escape it next job, but should a professional not be expert in anything he uses?

I guess you just have to make a choice, go with it a while, then revisit later and potentially switch paths if you have better information then. There's a danger when switching from one thing to another that you never actually write much of anything substantial cause you're always in novice mode or reading books (I'm guilty of this with my recreational programming). To me, if it's something you're doing for enjoyment, that's not that horrible as long as you really do enjoy what you are learning. To others, that may be a serious problem. You might consider asking yourself what programs you want to write and set out goals. Many of the best programmers came at it more that way, I think (maybe minus the goals part -- I guess the best probably just do it without all the deliberation). They wanted to bring something into existence and found the topics they needed to learn.

However you go, though, it's bound to be fun and rewarding, so don't worry too much.
Reply With Quote
Old 12th February 2012
ocicat ocicat is offline
Administrator
 
Join Date: Apr 2008
Posts: 2,834
Thanked 190 Times in 160 Posts
Default

Quote:
Originally Posted by daemonfowl View Post
will a year spent on python be a waste of time for a bsd-oriented newb ?
No.
Quote:
won't it help much as fas as c itself is concerned ?
Bad design can be made in any language.

As someone starting to learn to program, your goal should be learning how to best use the language to solve problems. This comes from lots of reading, lots of experimenting, & lots of reflection on how to do the same work again, only better.
Reply With Quote
Old 12th February 2012
ocicat ocicat is offline
Administrator
 
Join Date: Apr 2008
Posts: 2,834
Thanked 190 Times in 160 Posts
Default

Discussion has been split from its parent thread:

http://www.daemonforums.org/showthread.php?t=543

...as discussion is not on favorite programming languages.
Reply With Quote
Old 12th February 2012
daemonfowl daemonfowl is offline
bsdstudent
 
Join Date: Jan 2012
Location: DaemonLand
Posts: 834
Thanked 0 Times in 0 Posts
Default

Thanks Ocicat , enlightening and zen-short ..
Thanks Thirdm , enlightening and stream-of-counsciousness that reminds of woolf and joyce .. while reading your post I remembered a friend of mine who bitterly had to divorce visual basic as he had to move to unix .. in fact despite being myself a total newbie it was me who introduced him to BSD World the way Enkidu introduced Gilgamesh to the world of Mortality and its Consciousness .. and here is where the shoe pinches , isn't it futile to learn sth you cannot use at a certain point in time .. some of you Nerds might argue that learning *any* prog-lge is advantageous in that it enables one to understand prob-solving dynamics and procedures and syntax and such .. isn't this a relative truth that occurs only in kingdoms like LISP or PROLOG .. while not feasible as far as VB & ASP are concerned ..
as a newly-enamored bsdfan and as a non-programmer , I expect from a prog-lge to open up a door to contribute sth to the ZEN OS and its community ..
.. I voted for c here http://www.daemonforums.org/showthread.php?t=543
still , I am not sure if c is the right for me as a zero-stage-newb ..
I feel I still need clues from the experienced folk .. to start correctly .. and contribute ..

Last edited by daemonfowl; 12th February 2012 at 11:40 PM.
Reply With Quote
Old 13th February 2012
drhowarddrfine drhowarddrfine is offline
VPN Cryptographer
 
Join Date: May 2008
Posts: 358
Thanked 9 Times in 8 Posts
Default

Good stuff in this thread. fwiw, Eric Raymond also recommends Python as a first language.
Reply With Quote
Old 13th February 2012
daemonfowl daemonfowl is offline
bsdstudent
 
Join Date: Jan 2012
Location: DaemonLand
Posts: 834
Thanked 0 Times in 0 Posts
Default

yes , the famous how-to-become-a-hacker article ..
Raymond is a linux man and he is still using python after so many years .. maybe this means that choosing a language influences the future of its user .. so my worrying Q is valid.. will DaemonLand benefit from pythonists at this stage ? will learning python be as beneficial to the BSD community as learning C for instance ? isn't C the gateway to porting ? ..
Reply With Quote
Old 13th February 2012
jggimi's Avatar
jggimi jggimi is offline
More noise than signal
 
Join Date: May 2008
Location: USA
Posts: 3,435
Thanked 214 Times in 189 Posts
Default

Application language choice and your underlying OS and architecture do not necessarily need to have a correlation. You might pick one or the other due to features, capabilities, supporting libraries .... but there may not always be a need to select a particular programming language, or perhaps, a particular OS.
Quote:
isn't C the gateway to porting ?
No. Instead, you would need an understanding of an application's dependencies on other software and its use of APIs, and what is or is not the equivalent in the OS you are porting to. For information on porting applications to OpenBSD, as an example, you might read the OpenBSD Porter's Handbook. Your application's programming language isn't critical to the knowledge you need to have, though of course, being able to understand that language to some extent will likely be necessary.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
TIOBE language index: Python is the programming language of 2010 J65nko News 5 12th January 2011 05:33 PM
Why I can't select language from gdm? fender0107401 OpenBSD General 6 11th May 2010 11:09 PM
C language inventor spurns Google's language exam J65nko News 4 22nd April 2010 09:07 AM
Best Web Application Language JMJ_coder Programming 24 25th November 2008 12:25 PM
The language here scottro Feedback and Suggestions 11 19th May 2008 11:54 PM


All times are GMT. The time now is 05:53 PM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content copyright © 2007-2010, the authors
Daemon image copyright ©1988, Marshall Kirk McKusick