Ok, How do I learn to program?
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    xyphoid
    Posts: 870 from 2008/7/11
    From: Delaware, USA
    It's never too late to learn new things, and since I gave up on flying...How do I break into programming! A novice with a limited background should be able to start out some where.
    I have inquired on this before, but now with a macmini, and 3 months of summer at hand, I'm motivated to accomplish something this year.
    I have yet to upgrade to 2.5. What's the deal with sdk? If i suck so be it but nothing ventured, nothing gained. And yes I do want to do a game.....at some point
    Oh and will we ever be able to write to mac partitions/ formatted drives?

    [ Edited by xyphoid on 2010/6/14 21:50 ]
  • »15.06.10 - 00:48
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    ausPPC
    Posts: 543 from 2007/8/6
    From: Pending...
    It helps if you have a specific and achievable goal re: the program you want to write. It's also good to look into the various language options and try to make an informed choice. I don't want to bias you there but one of the Haiku contributors is currently putting out a C tutorial aimed at beginners - info here and files here.
    PPC assembly ain't so bad... ;)
  • »15.06.10 - 01:02
    Profile Visit Website
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    xyphoid
    Posts: 870 from 2008/7/11
    From: Delaware, USA
    yea C is where I intend to start Thanks ausPPC
  • »15.06.10 - 02:19
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    xyphoid
    Posts: 870 from 2008/7/11
    From: Delaware, USA
    bump!

    [ Edited by xyphoid on 2010/6/15 14:42 ]
  • »15.06.10 - 02:28
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    Yomgui
    Posts: 348 from 2004/8/31
    From: Québec - Canada
    First thing to do for any beginners in computer programming is to choose a language, and if possible the most easier for you!

    Starting directly with C is not the most good choice. Especially if you try with an OS dedicated SDK!
    If you're really sure to use the C, try to perfectly understand and use the C-ANSI before any OS sdk.
    Or use more high level languages likes some Basic(s), Arexx, Python, ...

    After, if C-ANSI is boring for you, try an OS sdk and code for this one simple applications (likes ones in C-ANSI but using OS API), then play with more complicated stuffs like graphics, GUI, sounds, etc.

    Don't forget also that some high level languages are easier to use when high level suffs like GUI-programming are requiered.

    [ Edited by Yomgui on 2010/6/15 17:29 ]
    And now... next project!
  • »15.06.10 - 14:29
    Profile Visit Website
  • Yokemate of Keyboards
    Yokemate of Keyboards
    takemehomegrandma
    Posts: 2720 from 2003/2/24
    @xyphoid

    Exactly my thoughts! I was thinking about learning C programming on MorphOS this summer, and now with the MorphOS 2.5 + SDK released and a long period of no work ahead, it couldn't be a better time! :-)

    Want to do a "self study group" here on MZ? Maybe some more people are thinking the same? :-)
    MorphOS is Amiga done right! :-)
    MorphOS NG will be AROS done right! :-)
  • »15.06.10 - 14:42
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    takemehomegrandma
    Posts: 2720 from 2003/2/24
    Quote:


    ausPPC wrote:
    It helps if you have a specific and achievable goal re: the program you want to write.


    OK, how about a simple "hang man" game?

    :-)
    MorphOS is Amiga done right! :-)
    MorphOS NG will be AROS done right! :-)
  • »15.06.10 - 14:45
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    Posts: 236 from 2003/7/28
    From: Canada
    Best you master C and all the nasty stuff like pointers, then hit the Amiga RKM's and finally MorphOS SDK.

    It's by no means an easy task and programming isn't for everyone. If you are upto it then I look forward to your first software release ;)
    A4000/060/PPC-200MHz, A4000T/060/PPC-233MHz, CD32, MicroA1, Pegasos 2 G4, AMD Phenom Quad Core 2.5GHz, MacMini 1.5GHz/64MB VRam...mwwmwahhh :)
  • »15.06.10 - 16:30
    Profile Visit Website
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    xyphoid
    Posts: 870 from 2008/7/11
    From: Delaware, USA
    So I guess "to C or not to C" first is the question then. I'll get familiar with your suggestions and go from there...Thanks!!

    Hang man get a data base of extensive random words, and add sweet graphics, and fun animation! sounds good!
  • »15.06.10 - 17:51
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    Zylesea
    Posts: 2057 from 2003/6/4
    I started with C++ (yes, *pure* C++, not C first) and I think that was a rather hard bread. You know, I am only an occasional programmer and IMHO C(++) is usually too hard if you don't use it frequently. I am still very bad on C++ and pretty much fail in writing stuff for MorphOS (stone me, but with the MFC it is is easier - due to endless documentaion and tutorials). Stuff like makefiles are still a red rag for me.
    Anyway I would recommend Python. Haven't used it myself yet though but it is said to be rather easy (on my old university department (biological cybernetics) they use it now for the beginners courses) and IIRC there are libs to use MUI. So you can make "real" MorphOS programs, other than with, say, Hollywood (which i also use from time to time for easy stuff and I kind of like it). Having a look on Python is still on my to do list.
    --
    http://via.bckrs.de

    Whenever you're sad just remember the world is 4.543 billion years old and you somehow managed to exist at the same time as David Bowie.
    ...and Matthias , my friend - RIP
  • »15.06.10 - 18:15
    Profile Visit Website
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    ausPPC
    Posts: 543 from 2007/8/6
    From: Pending...
    My own exposure to C started with a dated issue of 'A Book On C' by Ira Pohl. That's ANSI C and I never moved beyond the command line. I could do somewhat interactive programs but I never cracked being able to modify characters at certain screen positions - could only ever bang out a whole newline at a time. So ASCII graphics never happened for me and eventually I dropped it.

    Despite the tutorial I already linked to being focused on Haiku, so far a majority of it applies equally to any platform with a C compiler - C was always supposed to be transportable.

    As far as a command line hangman game goes (or any other program), if you can describe the rules of the game in the syntax of C - which is inputs, outputs, loops, comparison, evaluation etc - then it's as good a learning project as any. If you want something *really* simple, how about a program that asks the user to guess the number it's 'thinking'?
    PPC assembly ain't so bad... ;)
  • »15.06.10 - 22:24
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    Debaser
    Posts: 161 from 2005/7/12
    From: Syracuse, NY, USA
    takemehomegrandma:

    Really cool idea! I was thinking of just fooling with Hollywood and such.. but if I have a support(hehe) er.. study group, I may give it another go.

    [ Edited by Debaser on 2010/6/15 19:31 ]
  • »15.06.10 - 22:30
    Profile
  • Just looking around
    Clearer
    Posts: 12 from 2010/6/15
    You should always pick your programming language to fit the problem. C is a good language for many problems, but for a lot of things, other languages are much better. Just to get you started, the following are (a few) types of programming languages: procedural, functional and logical. C is a procedural language, examples of a functional language could be Lisp or Haskell. Prolog is an example of a logical language (personally I find Prolog confusing and illogical, but that's an entirely different thing).

    If you want to to learn how to develop software (aka how to program), you need to learn how to implement (i.e. program), analyse and design algorithms. I think that's the order to do it in, but given that I have not been able to start the learning process over, I can't really tell.
  • »16.06.10 - 01:08
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    r-tea
    Posts: 306 from 2005/3/27
    From: Poland, Zdzies...
    @ Yomgui
    Don't forget also that some high level languages are easier to use when high level suffs like GUI-programming are requiered.


    Making a MUI GUI with C is really a piece of cake. Belive me. I'm totally a beginner and I can make a MUI GUI with pure C in 15 mins. This is a power of MUI and genius of Stefan Stunz :)

    But my first attempts to program for Amiga and with MUI was AmigaE which was really great experience. PortablE i the succesor of AmigaE.
    Mac mini G4@1,5GHz silent upgrade + Xerox Phaser 3140 + EPSON Perfection 1240U
    Commodore C64C + 2 x 1541II + Datasette + SD-Box

    I miss draggable screens... and do you? I know I'm in a minority unfortunately.
  • »16.06.10 - 07:38
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    takemehomegrandma
    Posts: 2720 from 2003/2/24
    Quote:


    r-tea wrote:

    But my first attempts to program for Amiga and with MUI was AmigaE which was really great experience.


    I fiddled around with E a bit myself back in the days, when I was trying to break out of AMOS make programs with the proper OS look and feel. Liked it a lot, buy I think that while learning C will be more difficult, the reward will also be greater...

    Quote:

    PortablE i the succesor of AmigaE.


    And I thought it was "E Compiler X"?
    MorphOS is Amiga done right! :-)
    MorphOS NG will be AROS done right! :-)
  • »16.06.10 - 08:28
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    r-tea
    Posts: 306 from 2005/3/27
    From: Poland, Zdzies...
    Quote:


    takemehomegrandma wrote:
    Quote:


    r-tea wrote:

    But my first attempts to program for Amiga and with MUI was AmigaE which was really great experience.


    I fiddled around with E a bit myself back in the days, when I was trying to break out of AMOS make programs with the proper OS look and feel. Liked it a lot, buy I think that while learning C will be more difficult, the reward will also be greater...

    Quote:

    PortablE i the succesor of AmigaE.


    And I thought it was "E Compiler X"?


    Yeah, you're right, but they both are :) We've got now two up to date AmigaE compilers, and both are still continued projects.
    Mac mini G4@1,5GHz silent upgrade + Xerox Phaser 3140 + EPSON Perfection 1240U
    Commodore C64C + 2 x 1541II + Datasette + SD-Box

    I miss draggable screens... and do you? I know I'm in a minority unfortunately.
  • »16.06.10 - 10:09
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    xyphoid
    Posts: 870 from 2008/7/11
    From: Delaware, USA
    what is vbcc exactly?
    I also camed across gcc

    [ Edited by xyphoid on 2010/6/16 10:39 ]
  • »16.06.10 - 13:36
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    Samurai_Crow
    Posts: 161 from 2009/12/10
    From: Minnesota, USA
    VBCC stands for Volker Barthelman's C Compiler. It compiles only C and not C++.

    GCC stands for GNU Compiler Collection. It compiles C as well as C++ and a few other programming languages also.
  • »16.06.10 - 14:01
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    amiades
    Posts: 231 from 2005/6/2
    From: Asturies, Spain
    What about Pascal? I see it as a fine thing to learn programming. And we have a morphos pascal compiler... so, what else do you need to begin?

    I learned programming with pascal, and when it became small for me, I just jumped java, and it was feasible... you could jump from pascal to c, which could be easier than bootstrapping from c. Or you could go directly to c++, already having procedural knowledge from pascal...
  • »16.06.10 - 18:06
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    DiskDoctor
    Posts: 306 from 2009/4/17
    From: Rzeszow, place...
    @xyphoid

    You wanna learn how to program? Just stick to python, the easiest language to learn (except for Pascal). You've got the build on MorphOS. Also there's a UI builder - pymui but - technically - all in early beta.

    Anyway stay off C++. This can only scare you away.
    Was: Mac Mini PPC running MorphOS 2.4
    Now: Amiga Forever 2010 with AmiKit and AmigaSYS
    Not used: Icaros Desktop 1.2 (reason: no wifi)
    Planned soon: an OS4 system
    Shortly then: a MOS notebook (wifi is a must-have)
  • »16.06.10 - 18:39
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    xyphoid
    Posts: 870 from 2008/7/11
    From: Delaware, USA
    @diskdoctor
    yomgui mentioned python, but I couldn' t find the link on the homepage
    On another note hope you get the mini fixed
  • »16.06.10 - 21:44
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    osco
    Posts: 680 from 2009/10/21
    From: Boston, USA
    There's a new app! A USB INTEGRATION.. What you do is plug a usb connector into any body orifice, synch it wih OWB and Youtube and you are ready to code...simple :-D :-D :-D
    Mac Mini 1.5GHz, 1G, 250G Drive, Apple Cinema Display, MorphOS 3.1 registered, MacOS 10 PowerBook (5,8) 1.67Hz, 2G, 80G Drive,........Waiting
    PowerBook (5,8) 1.67Hz, 2G, 40G MorphOS 3.1 unregisterd
  • »16.06.10 - 23:13
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    xyphoid
    Posts: 870 from 2008/7/11
    From: Delaware, USA
    Genius :-?
  • »17.06.10 - 02:16
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    DiskDoctor
    Posts: 306 from 2009/4/17
    From: Rzeszow, place...
    Quote:


    xyphoid wrote:
    @diskdoctor
    yomgui mentioned python, but I couldn' t find the link on the homepage



    There:

    http://yellowblue.free.fr/yiki/doku.php/en:dev:python:start

    Go for 2.x version.
    Quote:


    On another note hope you get the mini fixed


    I've got it made already. Hopefully my Mini strikes back on this weekend! But this time w/no disk :-)
    Was: Mac Mini PPC running MorphOS 2.4
    Now: Amiga Forever 2010 with AmiKit and AmigaSYS
    Not used: Icaros Desktop 1.2 (reason: no wifi)
    Planned soon: an OS4 system
    Shortly then: a MOS notebook (wifi is a must-have)
  • »17.06.10 - 07:22
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    xyphoid
    Posts: 870 from 2008/7/11
    From: Delaware, USA
    As stated I have yet to upgrade to 2.5("we'll what are you waiting for?") I need a gcc.. Should I install the SDK 2 since I'm tinkering around? just did the hello world, but have to install the gcc.
  • »17.06.10 - 11:32
    Profile