Announcement

Collapse

Forum Rules and Etiquette

Our mission ...

This forum is part of our mission to promote the preservation of vintage computers through education and outreach. (In real life we also run events and have a museum.) We encourage you to join us, participate, share your knowledge, and enjoy.

This forum has been around in this format for over 15 years. These rules and guidelines help us maintain a healthy and active community, and we moderate the forum to keep things on track. Please familiarize yourself with these rules and guidelines.


Rule 1: Remain civil and respectful

There are several hundred people who actively participate here. People come from all different backgrounds and will have different ways of seeing things. You will not agree with everything you read here. Back-and-forth discussions are fine but do not cross the line into rude or disrespectful behavior.

Conduct yourself as you would at any other place where people come together in person to discuss their hobby. If you wouldn't say something to somebody in person, then you probably should not be writing it here.

This should be obvious but, just in case: profanity, threats, slurs against any group (sexual, racial, gender, etc.) will not be tolerated.


Rule 2: Stay close to the original topic being discussed
  • If you are starting a new thread choose a reasonable sub-forum to start your thread. (If you choose incorrectly don't worry, we can fix that.)
  • If you are responding to a thread, stay on topic - the original poster was trying to achieve something. You can always start a new thread instead of potentially "hijacking" an existing thread.



Rule 3: Contribute something meaningful

To put things in engineering terms, we value a high signal to noise ratio. Coming here should not be a waste of time.
  • This is not a chat room. If you are taking less than 30 seconds to make a post then you are probably doing something wrong. A post should be on topic, clear, and contribute something meaningful to the discussion. If people read your posts and feel that their time as been wasted, they will stop reading your posts. Worse yet, they will stop visiting and we'll lose their experience and contributions.
  • Do not bump threads.
  • Do not "necro-post" unless you are following up to a specific person on a specific thread. And even then, that person may have moved on. Just start a new thread for your related topic.
  • Use the Private Message system for posts that are targeted at a specific person.


Rule 4: "PM Sent!" messages (or, how to use the Private Message system)

This forum has a private message feature that we want people to use for messages that are not of general interest to other members.

In short, if you are going to reply to a thread and that reply is targeted to a specific individual and not of interest to anybody else (either now or in the future) then send a private message instead.

Here are some obvious examples of when you should not reply to a thread and use the PM system instead:
  • "PM Sent!": Do not tell the rest of us that you sent a PM ... the forum software will tell the other person that they have a PM waiting.
  • "How much is shipping to ....": This is a very specific and directed question that is not of interest to anybody else.


Why do we have this policy? Sending a "PM Sent!" type message basically wastes everybody else's time by making them having to scroll past a post in a thread that looks to be updated, when the update is not meaningful. And the person you are sending the PM to will be notified by the forum software that they have a message waiting for them. Look up at the top near the right edge where it says 'Notifications' ... if you have a PM waiting, it will tell you there.

Rule 5: Copyright and other legal issues

We are here to discuss vintage computing, so discussing software, books, and other intellectual property that is on-topic is fine. We don't want people using these forums to discuss or enable copyright violations or other things that are against the law; whether you agree with the law or not is irrelevant. Do not use our resources for something that is legally or morally questionable.

Our discussions here generally fall under "fair use." Telling people how to pirate a software title is an example of something that is not allowable here.


Reporting problematic posts

If you see spam, a wildly off-topic post, or something abusive or illegal please report the thread by clicking on the "Report Post" icon. (It looks like an exclamation point in a triangle and it is available under every post.) This send a notification to all of the moderators, so somebody will see it and deal with it.

If you are unsure you may consider sending a private message to a moderator instead.


New user moderation

New users are directly moderated so that we can weed spammers out early. This means that for your first 10 posts you will have some delay before they are seen. We understand this can be disruptive to the flow of conversation and we try to keep up with our new user moderation duties to avoid undue inconvenience. Please do not make duplicate posts, extra posts to bump your post count, or ask the moderators to expedite this process; 10 moderated posts will go by quickly.

New users also have a smaller personal message inbox limit and are rate limited when sending PMs to other users.


Other suggestions
  • Use Google, books, or other definitive sources. There is a lot of information out there.
  • Don't make people guess at what you are trying to say; we are not mind readers. Be clear and concise.
  • Spelling and grammar are not rated, but they do make a post easier to read.
See more
See less

Decided to start learnig C

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #46
    Originally posted by Chuck(G) View Post
    Some of us have spent the better part of our lives coding. In retrospect, that's pretty sad, isn't it?

    Why oh why didn't I go for fast cars, snazzy clothes loose women and a generally debauched lifestyle instead?
    Whoa, back the truck up. Let's not make coding and fast cars a mutually exclusive choice.

    Comment


      #47
      Originally posted by Chuck(G) View Post
      Some of us have spent the better part of our lives coding. In retrospect, that's pretty sad, isn't it?

      Why oh why didn't I go for fast cars, snazzy clothes loose women and a generally debauched lifestyle instead?
      The JavaEE guys get all the fast cars and loose chicks. :3
      -- Lee

      If you get super-bored, try muh crappy Odysee channel: Old Computer Fun!

      Looking For: QBus SCSI Controller, Type 4 HDC for Tandy II/12/16/6000, Mac IIci drive sled, PC-era Tandy stuff, Old Unix Stuff, Serial Terminals (HP and DG in particular)

      Comment


        #48
        We tuba players say that about the trumpet guys...
        Reach me: vcfblackhole _at_ protonmail dot com.

        Comment


          #49
          Originally posted by ibmapc View Post
          It's a pretty good teaching tool. The main reason for going with an online course is that I need some structure and some goals to strive for to try to get a good foundation to build upon. The great thing about the Dartmouth program is that they get the student coding right away and keep building to more advanced programming problems. I don't yet understand enough to play manipulate the code for Soarer's converter, but I think I'm making headway.

          Their problem solving approach probably goes back to when they were creating BASIC.
          Generic and Amstrad CPC based Programs written in Turbo Pascal 3

          Comment


            #50
            no one without extensive programming knowledge would be able to handle much more complexity then simple BASIC programs anyway. You got to start somewhere.

            I will reiterate a formal textbook will give all the structure that's required. And run you through problems to exercise your understanding.

            Comment


              #51
              Originally posted by Chuck(G) View Post
              Some of us have spent the better part of our lives coding. In retrospect, that's pretty sad, isn't it?

              Why oh why didn't I go for fast cars, snazzy clothes loose women and a generally debauched lifestyle instead?
              It didn't work when I moved from computing to the medical field, for the record. :P
              I use my C128 because I am an ornery, stubborn, retro grouch. -- Bob Masse
              Various projects and oddities: http://oldvcr.blogspot.com/
              Machine room: http://www.floodgap.com/etc/machines.html

              Comment


                #52
                Originally posted by Chuckster_in_Jax View Post
                I keep reading in this thread a lot of suggestions to the OP that require hours, days or even months of practicing coding.
                The OP didn't indicate if this is a hobby or if he is trying to break into a job that requires programming.
                OP Here again, Thanks Chuckster, I have been feeling a bit overwhelmed with all of the suggestions for books to read and such. Yup, this is just a hobby for me, not for professional use. I do appreciate EVERYONE'S advice though!

                Originally posted by Chuckster_in_Jax View Post
                Most people don't have the spare time required to become a proficient programmer unless it's their full time job.

                Personally, at my age it's just a hobby. Maybe spending time learning how to create a device driver or modifying boot code. Nothing that required hundreds or thousands of lines of code.
                I'm not trying to learn to build a house. I just want to be able to fix the roof or maybe install a set of french doors someday, if you know what I mean.

                I've tried reading books about programming, but just found it to difficult to stick with it. I really wanted to find a night class at the local community college, but the online course seems to be the next best thing. There's just enough structure to keep me challenged and interested. I do realize this is just a beginning and will have to keep at it, and yes, I agree that there's nothing that can replace actual programming experience. I've seen this many times in my day job as a machinist. I've been at it for nearly 40 years now and when I see a new hire fresh out of school, you can't tell 'em nothin' cause they already learnt it all in school. Then they make a rookie mistake and I think, if they would have listened to me, life would be easy. But, then I realize their just learning the hard way, kind of like I did when I was a green horn!!
                Any suggestions for small projects to attempt would be appreciated. Nothing to complicated for now. Maybe some sort of DOS utility for older PC stuff?

                Thanks again for all the great replies.

                Greg

                Comment


                  #53
                  C is not the language to learn to program with--it's just too quirky. However, back in the day, learning to program started with machine language. I kid you not. Assembly was the next rung up. And I walked 20 miles in a snowstorm to school every day...

                  Start with BASIC. Plenty of that around--and it's very forgiving.
                  Reach me: vcfblackhole _at_ protonmail dot com.

                  Comment


                    #54
                    When I was young and started college we had a class in programming and used BASIC running on some old Sanyo PC systems. For engineering we learned FORTRAN on a terminal connected to a mainframe (mostly to calculate simultaneous chemical reactions that would take all day on a XT).

                    The thing is I was programming before I went to college on my Timex 2068 back in 1983 because it had little software using the built in BASIC. This ended when I got a C64 and had a ton of games.

                    C was something you used to write an operating system, device drivers, or something that needed to get every ounce of power out of the system (and you didn't want to do the whole thing in machine code).

                    I would recommend MS professional BASIC if you want to start programming and then branch of to Visual Basic. You can write bits in C++ and use that inside VB.

                    I don't consider myself a programmer but I had to dabble to get some projects done and you would be surprised the variety of tools out there. You need to have a project in mind or you will never get anything done, and most of your time will be spent on the "boring" user interface and error trapping and not the fun code that actually does stuff.

                    Embedded controllers were fun to work with if you needed A/D and DIO stuff to control other hardware.

                    One of my favorite things to use back in the 90's was a program called Testpoint by Capital Equipment Corp. It was like VB for test and measurement, anybody ever use that?
                    What I collect: 68K/Early PPC Mac, DOS/Win 3.1 era machines, Amiga/ST, C64/128
                    Nubus/ISA/VLB/MCA/EISA cards of all types
                    Boxed apps and games for the above systems
                    Analog video capture cards/software and complete systems

                    Comment


                      #55
                      If you want to get your toes wet, try good old GWBASIC. Runs on a PC on up--maybe even 64 bit W10 with the appropriate emulator.
                      Reach me: vcfblackhole _at_ protonmail dot com.

                      Comment


                        #56
                        Originally posted by Chuck(G) View Post
                        C is not the language to learn to program with--it's just too quirky. However, back in the day, learning to program started with machine language. I kid you not. Assembly was the next rung up. And I walked 20 miles in a snowstorm to school every day...

                        Start with BASIC. Plenty of that around--and it's very forgiving.
                        Originally posted by Chuck(G) View Post
                        If you want to get your toes wet, try good old GWBASIC. Runs on a PC on up--maybe even 64 bit W10 with the appropriate emulator.

                        Evidently, you (Chuck(G)) forgot the very start of this thread.

                        Originally posted by ibmapc View Post
                        I've played around with BASIC since about 1979
                        I've programmed in BASIC on an AppleII, an Imsai 8080 and later on an IBM XT. I later played with Microsoft QuickBASIC. I just decided it's time to learn a little higher level language. So, I chose C. I still play with QuickBASIC and have thought about checking out Visual BASIC. So, My feet have been a little wet for a while now!
                        Last edited by ibmapc; November 9, 2020, 07:49 PM.

                        Comment


                          #57
                          Stick with the C. No sense in having the OP start all over again with a different language. You can write rudimentary "console" apps in C just like any other language, don't worry about a user interface, text based menus and whatnot will do quite nicely. When you start writing a C program, you mostly get right to it, besides some variable declarations. C has that structure, having to declare and even initialize variables before using them, BASIC doesn't. I'm not knocking BASIC. And if the OP wanted to dabble in BASIC, I recommend Quick Basic all the way. I think I may even have version 4.5 for sale.

                          There isn't much you can do with a computer that you can't do with C. Stick with C. If you go through all the courses, and even possibly read a book or whatever, and still don't find yourself with the ability to write stuff, give it time, it just may kick in.

                          When I read a book, anything, even fiction these days, I either use a pdf or I scan the book myself. Then read it on a computer, and extract portions of the text that I figure I'll need to refer to later (hence my notes). You can blow through books pretty quickly that way. I finished 2 books in one week, one was a novel, having completed at least 60% of each book that week. That's pretty fast. I don't keep up that sort of pace all the time. It just shows what you can get done. The old fashioned pen and pencil note taking, I find, is not only unnecessary but a waste of time. Years ago I would do it with a tape recorder. But then you have to go back and write or type what you recorded. People insist you learn something by writing it out. I totally disagree. You have to use something to remember it, and even then you can forget it. Simply writing it out doesn't accomplish much as I see it. Sometimes you can lose contexts by simply copying and pasting portions of a text. But the text doesn't disappear, you can always go back and refer to it (and it's neatly tucked away inside your computer).

                          Comment


                            #58
                            I've taught a few middle and high school students an introduction to programming class. One environment I really like is Processing. It is a self-contained IDE that has lots of tutorials and examples focussing on a visual approach. Although it is Java based, it simplifies most of the Java-ishness out, and you can install a Python environment that I prefer as an introductory programming platform. Processing runs on just about every popular operating system and CPU. Highly recommended.

                            Comment


                              #59
                              Originally posted by ibmapc View Post
                              Maybe some sort of DOS utility for older PC stuff?
                              You can try writing simple games: Blackjack, "Slot machine", Battleship. Simple games. Use some character graphics (pretty sure the PC character set has the 4 suit characters). My teacher wrote a very nice blackjack game on the PET long ago.

                              You can try writing a simple DOS utility. Try to write a crude clone of Midnight Commander. This gets you in to simple DOS calls (scanning the directory, removing files, renaming files), sub directories, things like that. Feel free to mercilessly copy UI examples.

                              Write a SORT program. First you can write one that just loads a text file in to memory, sorts it, and writes it back out. Then you can modify it to define simple fields (i.e. character sort on characters 1-6, or 10-15), add a flag to ignore case. Then change it to work on files that won't fit in memory. This gives you a quick dive in to sorting algorithms.

                              Grab a copy of the book "Software Tools" for Pascal or even the original in RATFOR, and port those to C. It will be easier than it sounds, since they're both, essentially, C and Unix in Pascal and RATFOR, so it's just (mostly) simple translation. When you're done with those, you end up with the basic UNIX utilities including a search utility, a sort utility, an editor, and a document formatter. Non-trivial stuff, but in the end pretty simple. And it's an achievable goal that you can just tick off going through the book.

                              Comment


                                #60
                                Originally posted by ibmapc View Post
                                Evidently, you (Chuck(G)) forgot the very start of this thread.
                                Not at all--"playing around" with is not exactly real programming. You can write a "hello world" program in dozens of langauges; e.g.,

                                'Hello World!'

                                Runs in APL just fine, but doesn't even begin to scratch the surface of the language.

                                It's "playing around".
                                Reach me: vcfblackhole _at_ protonmail dot com.

                                Comment

                                Working...
                                X