[openbeos] So you want to be a BeOS programmer...
- From: "Ryan Leavengood" <mrcode@xxxxxxxxx>
- To: openbeos@xxxxxxxxxxxxx
- Date: Sat, 25 May 2002 12:26:07 EDT
Helmar Rudolph wrote:
>This question surely has been asked before, but is there
>really a good manual/tutorial for people wanting to get into
>BeOS coding.
>
>/me is no C++ coder (as you all know ;-)) ), but I am open
>to it and would appreciate any help that lets me mess
>around with BeOS and learn more about it.
For my recent "reintroduction" into BeOS coding for this project, I
began by reading through almost all of the hard-copy of the Be
Developer's Guide (aka BeBook) that I have, even though it is a bit out
of date. This gave me a good overview of the various APIs that I read
about, so that when I need to do "Task X", I have a better idea of
where I need to start looking. This process didn't actually take that
long because I skipped the biggest part, the Interface Kit (which has
all the GUI stuff), and just focused on the fundamentals, such as the
Application Kit and Storage Kit. Right now I'm trying to put use to
this new knowledge by writing little test apps and playing around with
the API, such as the NetPositive scripting application that I
mentioned.
At the same time I'm reading through some C and C++ books, improving my
skill with those as a go. It is sort of a trial and error approach.
This methodology probably wouldn't work for most people, and I will
probably slow down a bit and improve my knowledge in C and C++ before
going too much further in my fervent BeOS coding.
But I have learned a bit from this that I could use to give some advice
to others who want to start coding on BeOS. Therefore, here is my 7
step list on how to become a BeOS programmer:
1. Install BeOS and start using it! You can't be a BeOS programmer if
you aren't a BeOS user. Read through BeTips.net and other sites and
maybe get a copy of Scot Hacker's BeOS Bible (he is the one who did/
does BeTips.net.)
2. Start learning C and C++. I say both because of their similarities
AND differences. Sometimes you may need to decide when which language
is appropriate for the task at hand (command-line app and kernel stuff:
C, GUI or other BeAPI stuff: C++, etc.) There are tons of books on
both of these and I would recommend getting one for C and one for C++.
3. While learning C and C++, you could also consider messing around
with a scripting language like Ruby or Python, especially if there are
bindings for the Be API (I know Python has them and I may write the
Ruby ones :) This is especially true if you are fairly new to
programming since starting programming with C and C++ is like diving
into the deep end of the pool with a cement block tied to your leg ;)
But in the long run, I think it is important to learn C and C++ for
BeOS programming, since any major app will need to be written in them.
4. Start learning the Be API. The place to do this is the BeBook. If
you happen to have a hard copy version like I have, great, but if not
reading the HTML version on the computer shouldn't be too bad. The
first thing you should read after the Introduction is the Application
Kit section, because that covers the fundamentals for BeOS messaging,
which is what the GUI and application scripting are based upon. Then
go to the Support Kit, then the Storage Kit, and then the Kernel Kit.
5. Learn Jam! It is the designated build tool for OpenBeOS and build
tools are your friends! I'll be writing some newsletter articles on
Jam, so that should help everyone get going on it.
6. At this point should try writing some little test apps (command-line
only, no GUI), and then you can move on to the Interface Kit. There
are several programs in /bin that still need to be implemented that
would be great starter programs. Again, that list is here (look for
ones marked native):
http://clapcrest.free.fr/revol/beos/openbeos_bin_commands.html
7. After you have had some experience with some smaller applications,
now it is time to learn the Interface Kit (IK) and write some GUIs. I
would recommend just reading the IK introduction and then scanning
through the rest of it to just get an idea of what kind of widgets are
available. At this point, lots of example code would be helpful. Be
provided a lot of sample applications that you should be able to find
on the various Be FTP server mirrors that are around. Here is one
example: ftp://ftp.gbnet.net/pub/be/samples/ Other mirrors can be
found on this BeTips tip page:
http://www.betips.net/chunga.php?ID=718
So that is it! After you have written your first GUI (no matter how
simple), you are a BeOS Programmer! Now pat yourself on the back :)
One last thing: regarding tutorials, I agree they would be very
helpful, and as far as I know there aren't many around at the moment.
I think that a series of BeOS programming tutorials would be
appropriate for the OpenBeOS newsletter. I may see about writing some
and some of you other more experienced Be programmers should as well!
Ryan Leavengood
OpenBeOS Preferences Team
Other related posts: