• Quick note - the problem with Youtube videos not embedding on the forum appears to have been fixed, thanks to ZiprHead. If you do still see problems let me know.

I need help creating a computer program

Dustin Kesselberg

Illuminator
Joined
Nov 30, 2004
Messages
4,669
I am totally new to creating computer programs and I wanted to know where I could start to learn about them. I want to create a Windows program that can work with an online website. How would I go about creating such a program? Remember, I am totally new to creating programs and have no idea where to start. What programs are good for this? What computer languages are best to use for such things?

Also please post other threads from this forum that explain similar things to this. I would search but I think that I would get better results this way.

Thanks.
 
If you want to create a program that both runs under Windows, and uses Windows-style elements (windows, dialog boxes, buttons, menus and so on), then I imagine the best bet would be MS's VisualBasic, or whatever their latest version of it is called.

ETA1: looks like the latest version is 'VB.NET' except that they're going to ditch the .NET in future releases and get back to just 'Visual Basic x.y' (I think they're up to 8.0 or something now)

ETA2: VB is a language with lots of types, objects, classes, inheritance, blah blah. If you're totally new to programming and don't know what those mean (and I barely know what some of them mean), the upshot is you may have to write a lot of opaque introductory ******** in your code before getting down to the bits that actually do things. So it would be a good idea to practice first on a really simple dialect of basic. I use Yabasic. Don't think you can make pretty dialog boxes with it. But you CAN make programs to analyse years worth of stock price data for several hundred stocks, in barely a screenful of code. Says I from personal experience.
 
Last edited:
Visual Basic? I've heard that before. Is there a good freeware alternative to VB? Do you need to know a lot of programing language to operate VB or similar programs?
 
Wow - that's a tall order. There are many computer languages that you can use to create computer programs. Different people will suggest different languages based on what they like and how easy it is to learn. I'll cover a few basics to paint an overview for you that may hopefully get you started.

Computers generally don't directly "understand" the computer language that people program in (C++, C#, Java, Python, Basic, etc.), they understand machine code, which is difficult (but possible) for humans to program in, so generally you need what is called a compiler that can "translate" the human friendly language (C++, etc.) into machine code. Some of the newer languages like C# compile to an intermediate language that can then be compiled to machine code later. The intermediate code is hardware independent so this is done for portability reasons. Sorry, I don't think I'm being very noobie friendly so far - stay with me.

So, you need to figure out which language you want to learn (C++, C#, Basic, Java, etc.) and then find some tutorials online about that language. There are a lot of tutorials out there for free, just Google around. You will then need to get a compiler for that language. Many are commercially available and there are also many free ones out there. Again, Google can be helpful here.

Now, above and beyond the language you use, there are design concepts that are important to learn if you want to be more than just a quick and dirty hacker. Anyone can hack out code and get something that generally works, but it takes years of experience (and many times schooling) to become a really good programmer that can fully utilize object oriented design concepts (for example) and good software configuration management practices, but you can Google those terms later on and learn more about them. There are also some good ideas like unit tests and refactoring that can be very useful to help you make good code that is easy to maintain and extend or add features to. Again, these things take years of experience to nail down. I've been programming for almost 30 years now and I've just been getting into the higher levels of these design concepts and software configuration management in the past 5 or 10 years or so. Of course, you really don't need to worry too much about these advanced topics when you're starting out, I'm just trying to help you understand that if you're going to make something big, you'll benefit greatly from these advanced concepts. But you're not going to get them by googling around for a few weeks. You either need to go to school or work as a programmer for years.

I've worked on bad code and good code and there's a world of difference. It's really like comparing a baby who's just learning how to say "wa wa" to get some water to a shakespeare play. They both use English, but one is structured elegantly and it takes years to go from "wa wa" to Shakespeare. If you really want to go this route, go for it. Putting together a windows application that "works with an online website" is not going to happen in an afternoon or even in a few weeks or months. It's going to take some time and patience. You also might be able to find such a program already made that you can tweak for your needs.

Sorry if I didn't post a very helpful post here - I'm trying to cram 30 years into 5 paragraphs. It's harder than I thought. Anyway, go look for some beginning programming tutorials and jump in. All computer languages have similar concepts, just like human languages, since they're all trying to solve similar problems.

Someone else might have a better suggestion on which language to start out with based on ease of learning the language and based on availability of compilers and tools for free.

Here's a good general starting point for you that I found by googling: http://cplus.about.com/od/introductiontoprogramming/Never_Programmed_Before_Start_Here.htm
 
Last edited:
upshot is you may have to write a lot of opaque introductory ******** in your code before getting down to the bits that actually do things.

RANT! Oh, come ON. I can understand blanking out '****', but 'bull'? You've got to be ********ting me.
 
Last edited:
I've been learning a bit of "JavaScript" but I don't believe that this would be suitable for windows based programs, just website interaction. I have read that Javascript is different from "Java", is this correct?

Also, In your personal experience, What programing language would be best for a Windows program that works with an online website? Meaning that it can make changes to an online website and can receive information updates from that online website through some various feeds, etc. What language would be most suitable for this in your personal experience?

Also, What about books? Are books usually the way to go when learning these things or should I stick to online websites since they are updated more often? Would books maybe 3-6 years old still be relevant for today?
 
Java is different from javascript in a number of ways, although the syntax of the statements is very similar.

If those are the languages you are most familiar with then I'd recommend Java, C, C++, C# or something along those lines. Similar syntax to what you already know.

So what language do you know the most about?
 
Fortunately Microsoft have been learning from the Jesuits/drug dealers, and now have a policy of "Give me a programmer till he's 17 and I'll show you the man."

So the first hit of Visual Whatever is now completely free:
http://msdn2.microsoft.com/en-us/express/default.aspx

And it now does web programming...
Have fun.

I'm sorry, but I didn't understand a single thing you just said. :confused:
 
Java is different from javascript in a number of ways, although the syntax of the statements is very similar.

If those are the languages you are most familiar with then I'd recommend Java, C, C++, C# or something along those lines. Similar syntax to what you already know.

So what language do you know the most about?


I'm a beginner at Javascript. A very new beginner.
 
Download Visual Basic/C++/what ever from the website I linked you to.
It's free and Microsoft want you to take it.

It now does website programming too apparently.

That is "Visual Studio 2008 Express Editions Beta 2", Is that what I would need for creating what I want to create?

Also, is it a trial version for 30 days or is it free period?
 
That is "Visual Studio 2008 Express Editions Beta 2", Is that what I would need for creating what I want to create?

Also, is it a trial version for 30 days or is it free period?

I don't know what you want to create. But yes, it let's you make windows GUIs very easily.

Free period I think, the 2005 edition certainly was.

Edit: If you click on the download links it takes you to the 2005 edition, I'd take that and ignore the 2008 beta.
 
Last edited:
Do I understand that you want to write a windows GUI style program that runs on your computer and interacts with a web site? So you're trying to automate your interaction with a web site?

If so, Visual Studio 2008 Express Editions Beta 2 is one of the ways to do that. You'll want to look for phrases like "consuming web resources", "interacting with web services" and ".NET" in any tutorial books or websites.
 
Do I understand that you want to write a windows GUI style program that runs on your computer and interacts with a web site? So you're trying to automate your interaction with a web site?

If so, Visual Studio 2008 Express Editions Beta 2 is one of the ways to do that. You'll want to look for phrases like "consuming web resources", "interacting with web services" and ".NET" in any tutorial books or websites.


Does Visual Studio 2008 come with the ability to create C++, Java and VB or does it just work for VB?

Also, Would it be advisable to learn about VB (or whatever language is best) before even downloading Visual studio 2008 or can I create a program with VS 2008 without knowing the language in question?
 
Does Visual Studio 2008 come with the ability to create C++, Java and VB or does it just work for VB?
Visual Studio works with all those languages. It is packaged in a variety of ways though at different prices and some version don't include all languages.
Also, Would it be advisable to learn about VB (or whatever language is best) before even downloading Visual studio 2008 or can I create a program with VS 2008 without knowing the language in question?
You can't create a serious program without knowing the language no matter what you use. There are some tutorials that will have you cut and paste a program together, but IMO they teach how to use the editor but not how to program.

Do you know what an IDE (Integrated Development Environment) is? Visual Studio is an IDE that attempts to help you program in several different languages. The IDE itself is a program itself and completely separate from the language. Think of it as a complicated editor.

Do you have enough experience to know if you like IDEs or do you prefer a more nuts and bolts approach such as editing with notepad?

It's a matter of taste and preference but I think beginners should begin writing programs in notepad (or other simple editor) to learn the language. I think big IDEs can be overwhelming to newcomers.
 
I would reiterate the idea of download Visual Studio Express editions.

The currently supported edition is Visual Studio 2005: http://msdn2.microsoft.com/en-us/express/aa718406.aspx
(There are links at the top of the page to download VB, C#, or J# (near-Java). I would recommend one of those three languages. VC++ could be too chewy for noobies.)

The 2008 edition is "only" in Beta, at the time I am writing this. It is very nice, anyway. But, but is not officially supported, yet. You'll have to wait a few more months for that. Not sure if that really matters to you, though.

Both Express editions are free. The 2005 edition does not have a time limit. I do not recall if the 2008 one does.

All those languages use the .NET Framework for programming Windows apps., Web apps., and things that combine both. The Framework organizes it tools and functions into "Namespaces".

For your example:
If you want a Windows app. that can interact with websites, you could build the actual application with "System.Windows.Forms" namespace, and then call various function in "System.Web" namespace, if you wanted to interact with things on the Internet.

I recommend getting a good beginner's book for the language of your choice.

Of course the Express editions of Visual Studio do not quite have all the professional tools and freatures of the highly priced editions. But, it should be plenty good for the beginner and hobbyist. That is what they are there for.
 
Ohh, I almost forgot another bit of advice I've historically given to people who wish to begin learning programming: If you have any of the major Microsoft Office applications: Word, Excel, Powerpoint, Access, etc.; you already have access to a version of Visual Basic, called VBA (Visual Basic for Applications)!

Granted, it's and older, pre-.NET version (.NET is sooo much cooler!), but it could get you started on basic programming concepts! And, if you already have it, then you might as well try toying with it a little. Alt-F11 will usually bring up the programming window. You still need a good book on beginning VBA to learn it, though.

One of the reasons I don't mention VBA as much, anymore, was the introduction of the free VS Express editions I posted about, before. VS Express is better. But, if you don't want to download it, you can resort to VBA, assuming you have it, if you wanted to.
 
Not sure what you want to do. Try looking up mysql and php -- they are both free. If you are aiming for webapps take the time to learn plain vanilla HTML also.

Eventually you may want to learn Apache also.
 
If you want to learn programming take the time to learn C++. If you just want the simplest and easiest to learn programming language for windows (95 and newer) go with AutoIt. It even has user defined functions (UDFs) included to manipulate web pages.

[Pluses]
*Free
*Very powerful.
*Very easy to learn.
*Compilable as standalone EXEs. No DLLs required.
*Script you own GUIs (Graphical User Interfaces).
*Simulate keystrokes and mouse movements.
*Manipulate windows and processes.
*Interact with all standard windows controls.
*With SciTE it will autocomplete keywords etc. like VB used to.
*Directly call external DLL and Windows API functions.
*Very rich set of logical constructs, arrays, network functions, etc.
*Included and extensible UDFs (User Defined Functions).
*Very good context sensitive helpfile.
*Regular expressions
*COM support
*Unicode support.

[Minuses]
*247 KB overhead. That's less that the DLL overhead of VB.
*Interpreted script even in compiled form (speed).
*Fairly easy for someone to get your source code from the compiled script. Can be made difficult but far from impossible.
*All variables are variants. Allows very sloppy coding.

Even if you program with more advanced languages AutoIt will often be the best choice in many circumstances.

http://www.autoitscript.com/autoit3/
Be sure and get the full installation that includes SciTE for an excellent IDE.
 

Back
Top Bottom