New OOTS products from CafePress
New OOTS t-shirts, ornaments, mugs, bags, and more
Results 1 to 14 of 14
  1. - Top - End - #1
    Ogre in the Playground
    Join Date
    Dec 2005
    Location
    Bergen

    Default Creating programs from scratch

    I was wondering if anyone here had any experience creating programs from scratch. That is, not some fancy special help programs where you drag and drop features, but actually making it from the beginning with just a notepad++, or whichever other program that helps with making the program from scratch. I want to try my hand at something like this... but I have absolutely no idea where to even start. So 'f anyone could offer a starting point for someone who wants to try and make things, I'd be quite grateful.

  2. - Top - End - #2
    Bugbear in the Playground
    Join Date
    Feb 2013
    Location
    Prime Material Plane
    Gender
    Male

    Default Re: Creating programs from scratch

    Sure! I've made lots of programs from scratch (albeit small ones) and here's my advice:
    1. Think about what you want the most basic functionality of your program to be,
    2. Translate your idea into a programming language,
    3. Run it, and notice that there are many, many bugs. That's okay -- nobody ever gets a program to work completely on their first try.
    4. Fix the bugs, and keep on testing until all bugs are fixed,
    5. And then do the same thing for any additionally functionality that you want to add.


    If you want a good programming language to start out with, try Python. It has a very English-like syntax and is very easy to pick up, yet powerful. There are a bunch of tutorials to get you started with Python. Good luck on your foray into the world of programming!

  3. - Top - End - #3
    Troll in the Playground
    Join Date
    Jan 2012

    Default Re: Creating programs from scratch

    • If you end up going with Python, be sure to set up the environmental variables, if you're using a Windows computer. This is critical yet easily missed.
    • On that note, find a basic set of tutorials to start with. The language documentation will do you no good here.
    • Once you have an idea of what you want your program to do, try to think about how the program will go about doing that. Think about what individual pieces of code you'll need. Make some sketches, perhaps a flowchart, on a piece of paper. Obviously, it helps if you actually know a language first.
    • Get comfortable with Googling "<enter subject here> python tutorial".


    Edit: By the way, what sort of program did you have in mind? And do you have prior experience?
    Last edited by Grinner; 2014-10-22 at 04:46 PM.

  4. - Top - End - #4
    Surgebinder in the Playground Moderator
     
    Douglas's Avatar

    Join Date
    Aug 2005
    Location
    Mountain View, CA
    Gender
    Male

    Default Re: Creating programs from scratch

    Plenty, I do it professionally as part of my job.

    I recommend against actually going all the way down to the notepad++ level, as you lose a ton of basic helpful features that go alongside coding rather than substituting for it. Syntax highlighting and as-you-type error checking, code auto-completion, automatic indenting, context sensitive suggestion information, and all sorts of other stuff that would be rather aggravating to me to go without, yet still require me to actually write code first for them to do anything.

    I would suggest picking an IDE for your chosen language (for Java I recommend IntelliJ, for other languages I might have to research), starting it up, and telling it to create the most minimal bare bones project it has an option for. The result should typically compile and technically run, but do either nothing or something similar to outputting "Hello World". As far as I'm concerned, starting from that counts as "from scratch".

    If you want to make your program do anything meaningfully nontrivial, you will almost certainly have to use some libraries in addition to the base language features, the specifics of which depend on the language and what you're trying to do.
    Last edited by Douglas; 2014-10-22 at 08:33 PM.
    Like 4X (aka Civilization-like) gaming? Know programming? Interested in game development? Take a look.

    Avatar by Ceika.

    Archives:
    Spoiler
    Show
    Saberhagen's Twelve Swords, some homebrew artifacts for 3.5 (please comment)
    Isstinen Tonche for ECL 74 playtesting.
    Team Solars: Powergaming beyond your wildest imagining, without infinite loops or epic. Yes, the DM asked for it.
    Arcane Swordsage: Making it actually work (homebrew)

  5. - Top - End - #5
    Retired Mod in the Playground Retired Moderator
    Join Date
    Jul 2005
    Location
    South Korea
    Gender
    Male

    Default Re: Creating programs from scratch

    The Red Towel: Moved to Mad Science and Grumpy Technology.
    “Sometimes, immersed in his books, there would come to him
    the awareness of all that he did not know, of all that he had not read;
    and the serenity for which he labored was shattered as he realized the
    little time he had in life to read so much, to learn what he had to know.”
    ~Stoner, John Williams~
    My Homebrew (Most Recent) | Forum Rules
    /veɪnoɚ/

  6. - Top - End - #6
    Barbarian in the Playground
     
    BarbarianGuy

    Join Date
    Feb 2010
    Location
    Calgary
    Gender
    Male

    Default Re: Creating programs from scratch

    I would say don't use an IDE to learn a programming language. Yes it can make it easier, but I think you learn more when hunting for errors in a simple text editor.

    This reminds me of my first assembly course. last week or so we did a bit of programming using machine code....nothing hard just adding two numbers together sort of thing. Talk about programming from scratch lol

  7. - Top - End - #7
    Titan in the Playground
     
    Heliomance's Avatar

    Join Date
    Jan 2007
    Gender
    Female

    Default Re: Creating programs from scratch

    Quote Originally Posted by jhunter_d View Post
    • Run it, and notice that there are many, many bugs. That's okay -- nobody ever gets a program to work completely on their first try.
    Corollary: If your program works completely on your first try, it's probably possessed. Salt it, burn it, and scatter the ashes over as wide an area as possible.

    Quote Originally Posted by Douglas View Post
    Plenty, I do it professionally as part of my job.

    I recommend against actually going all the way down to the notepad++ level, as you lose a ton of basic helpful features that go alongside coding rather than substituting for it. Syntax highlighting and as-you-type error checking, code auto-completion, automatic indenting, context sensitive suggestion information, and all sorts of other stuff that would be rather aggravating to me to go without, yet still require me to actually write code first for them to do anything.
    Notepad++ has, at least, syntax highlighting and automatic indentation for a whole bunch of different languages.

    Python actually comes with its own basic-but-functional IDE, IDLE. Or if you get the very useful PythonWin32 module, that has a slightly fuller-featured IDE.
    Quotebox
    Spoiler
    Show
    Quote Originally Posted by Kalirren View Post
    The only person in the past two pages who has known what (s)he has been talking about is Heliomance.
    Quote Originally Posted by golentan View Post
    I just don't want to have long romantic conversations or any sort of drama with my computer, okay? It knows what kind of porn I watch. I don't want to mess that up by allowing it to judge any of my choices in romance.

    Avatar by Rain Dragon

    Wish building characters for D&D 3.5 was simpler? Try HeroForge Anew! An Excel-based, highly automated character builder. v7.4 now out!

  8. - Top - End - #8
    Ogre in the Playground
    Join Date
    Dec 2005
    Location
    Bergen

    Default Re: Creating programs from scratch

    I've worked a bit with Java, PHP and HTML in the past. This is mostly to teach myself some new skills to make myself more useful. The exact programs is mostly gonna be small things to make me more confident in coding. So small things, like a program that starts up all the other programs I use during my work-day, or move a sprite around on the desktop, or just making my own calculator.

    Any programs that help with syntax, but as the purpose is to teach myself coding, I'd want to avoid anything that codes automatically for me. But if it can help me highlight mistakes, then that's perfect.

    Thanks for all the answers thus far though.
    Last edited by Maryring; 2014-10-23 at 10:53 AM.

  9. - Top - End - #9
    Firbolg in the Playground
     
    noparlpf's Avatar

    Join Date
    Mar 2011
    Gender
    Male

    Default Re: Creating programs from scratch

    I took a semester of Java freshman year of college. I don't remember anything, but I liked Notepad++. Just Google something about how to compile and execute those through command prompt.
    Jude P.

  10. - Top - End - #10
    Troll in the Playground
    Join Date
    Jan 2012

    Default Re: Creating programs from scratch

    Quote Originally Posted by noparlpf View Post
    I took a semester of Java freshman year of college. I don't remember anything, but I liked Notepad++. Just Google something about how to compile and execute those through command prompt.
    These ought to be put into a batchfile or something similar in order to automate the process.

  11. - Top - End - #11
    Ogre in the Playground
    Join Date
    Aug 2012
    Gender
    Male

    Default Re: Creating programs from scratch

    First you create a requirements document...

  12. - Top - End - #12
    Ogre in the Playground
    Join Date
    Nov 2012

    Default Re: Creating programs from scratch

    Quote Originally Posted by jhunter_d View Post
    Sure! I've made lots of programs from scratch (albeit small ones) and here's my advice:
    1. Think about what you want the most basic functionality of your program to be,
    2. Translate your idea into a programming language,
    3. Run it, and notice that there are many, many bugs. That's okay -- nobody ever gets a program to work completely on their first try.
    4. Fix the bugs, and keep on testing until all bugs are fixed,
    5. And then do the same thing for any additionally functionality that you want to add.


    If you want a good programming language to start out with, try Python. It has a very English-like syntax and is very easy to pick up, yet powerful. There are a bunch of tutorials to get you started with Python. Good luck on your foray into the world of programming!
    I think I actually managed to program something in MATLAB without any errors one time. I guess using MATLAB in the first place probably counts as an error, though.

  13. - Top - End - #13
    Titan in the Playground
     
    Planetar

    Join Date
    Dec 2006
    Location
    Raleigh NC
    Gender
    Male

    Default Re: Creating programs from scratch

    Quote Originally Posted by Maryring View Post
    I was wondering if anyone here had any experience creating programs from scratch. That is, not some fancy special help programs where you drag and drop features, but actually making it from the beginning with just a notepad++, or whichever other program that helps with making the program from scratch. I want to try my hand at something like this... but I have absolutely no idea where to even start. So 'f anyone could offer a starting point for someone who wants to try and make things, I'd be quite grateful.
    It's what I do for a living.

    I would start off with a Tutorial . Follow the steps and write sample programs. Get comfortable with compiling programs and running them. Learn about debugging and troubleshooting. Once you've been able to follow the cookbook a few times -- google "python cookbook" -- you can start making your own programs for your own tasks. Try to think of something that is similar to the tutorials you've already built. After you've built a few original programs that are very much like the tutorials, you can start diverging from them as you build your skills.

    I would also be very patient. Computers are finicky and it takes a lot of work to learn, especially at the beginning. I would suggest also finding an online forum such as stackoverflow or javamoose , so you can ask questions of knowledgeable people. Look around for forums specifically intended for newbies.

    Here's something to look at . Nothing more fun than games, and copying them should give you a feel for writing programs. That's how I got my start back in the day.

    Respectfully,

    Brian P.
    "Every lie we tell incurs a debt to the truth. Sooner or later, that debt is paid."

    -Valery Legasov in Chernobyl

  14. - Top - End - #14
    Titan in the Playground
     
    Knaight's Avatar

    Join Date
    Aug 2008

    Default Re: Creating programs from scratch

    Quote Originally Posted by Zrak View Post
    I think I actually managed to program something in MATLAB without any errors one time. I guess using MATLAB in the first place probably counts as an error, though.
    Sometimes you have to use it. Sometimes you end up fighting with their bizarre surface function for hours on end, because the way it works is completely ridiculous.
    I would really like to see a game made by Obryn, Kurald Galain, and Knaight from these forums.

    I'm not joking one bit. I would buy the hell out of that.
    -- ChubbyRain

    Current Design Project: Legacy, a game of masters and apprentices for two players and a GM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •