InterStellar SoftWare (ISSW)
ghrussell@yahoo.com
by Gary Russell

PROGRAMMING BY AMATEURS, FOR AMATEURS!

MY PROGRAMS!
Types of programming.
Success in programming.
Don't be mislead.
CGI
GUI (Graphical User Interface) UNDER CONSTRUCTION!


Types of programming.

The type of programming I do is C/C++ in windows and linux. I use Borland C++ Builder 4 pro. and CodeBlock for WINDOWS 98, XP, and Vista. I use Anjuta IDE 1.2.4a in Linux's Fedora 10. I mainly Wright utilities, and small programs, I do not wont to get into BIG projects. I do Wright some bush/sh scripts. Scripts are not compiled, C CGI scripts are the exception, because of the way they are used not created.


I believe the key to success in programming lies in 3 areas.

(1) PERSISTENCE. (2) ORGANIZATION. (3) MAKING EACH PART OF YOUR PROGRAM WORK BEFORE MOVING ON.

(1) PERSISTENCE.
Remember, anyone can be a programmer. But, programming can be frustrating and boring at times. Persistence is the key to success in ALL endeavors.
(2) ORGANIZATION.
Organization needs to begin from the beginning. Small projects and big ones. Start with comments. One at the top of each file (Don't forget the date), before each function, and on any unusual parts. Decide on the format. I start with the top comment, headers, precompiler statements, globes, and so on. Whatever format you use try to stick with it. Keep a record of good functions so you can use them again. I use a program called codebank, print it, and file it. I wrote programs 5 years ago and would not even know I wrote it if not for the comment a the top of the file. Do not take the easy way out. Expand your knowledge and try new things. It is easy to learn a few functions and make a program, only use them. Do not let yourself be dragged into every new philosophy. I have seen programmers spend hours and hours changing their code to fit something new. If you have a good C function, use it, if you need something that C++ has, use it. But do not use C++ just because it's the in thing. Choose a language based on its advantages, not it's popularity. Remember compiler, book and such are products designed to make a profit. I prefer C/C++ because it can do anything and it's fast. But there are some specialty languages like pear, php, and Python that do what they're designed for very well. And obviously if you're into Linux, bash is good too.
(3) MAKING EACH PART OF YOUR PROGRAM WORK BEFORE MOVING ON.
Create a function (modular) to do a certain job and test it before moving on. Do not let a function turn into a program. Learn to pass parameters, function to function. You can receive multiple returns from a single function. Threads memory, or processor threads can be used in C and C++ and are. Blinder (a 3D render) can execute 8 threads and use multiple processors.
Threads are hard for some programmers. Not so much because of the language they use but because they are not linear. I started with gw-basic, qbasic, quickbasic, powerbasic for DOS before I moved onto C/C++. So I programmed in a linear manner for years and still do.
So what are THREADS? (REMEMBER I AM AN AMATEUR, so I will do my best here.)
To talk about threads you need to know about multitasking.
There are two types of multitasking, shared and real. If you have a single processor you can only do one process at a time. If you have 2 processors you can do 2 processes at a time ,IF THE PROGRAM IS DESIGNED FOR MULTIPLE PROCESSORS, MOST ARE NOT OR if there are two programs running at the same time and the memory manager is designed to run multiple processors. Then you can execute simultaneous code. The is real mode multitasking.
If you have a single core processor. Then you can do a single task (process) at a time. So, if two programs are executed at the same time one will be processed for a time and then the other and back and forth. This is shared mode multitasking.
So, that brings us to threads. A processor thread is where more than one processor is being used at the same time. This includes dual-core processors.
Memory threads are where a process is loaded into a memory space and executed. Not just a parameter, a complete process.
An example is in a timer program. If you start a timer and then do some other task (like send a message box with an OK button) the timer will pause while the other task is being executed. But if you create a memory thread and execute the new task in it the timer will not pause. This is a memory thread. In fact in Windows there is a system function called CreateThread().


Don't be mislead.

It is popular today, in programming, to say "what is old is outdated and what is new is good". This is not so. So, why is it so popular? To answer this question we need to ask areself. What is the peruse of business? To make money! In programming languages there is 3 main ways to make money. 1) Sell compilers. 2) To sell library. 3) To sell books.

The C/C++ market is saturated with FREE compilers, very good ones. You can make your own library. Library is where most of the money is made. And there is a ton of C/C++ book out there. Reminder the peruse of bossiness is to make money. If you can get programmers to swatch to a language that can not make it's l library. You can sell then to the programmer. You can sell a new compiler (sparsely if the language is copyrighted). And you can sell new books. You can make a ton of money!!

Anyone can see C/C++ is a very good language. It can be learned as easy as any top rate language. I am not saying it is the only top rate language out there. There is a Lot of good languages Pascal (Delphi), perl, php, etc.

What I am saying is C/C++ is one of the best, you can do anything with it, create your own library, it's fast, versatile, Linux is written in it, windows is written in it, and most of the fastest games are written in it. So do not believe everything you hear.

Sorry about my spelling, all I can say is Sumimasen "Su mi ma sen" (sorry).

CGI



LINKS.

CODEBLOCKS IDE If you have Windows 2000 / XP choose codeblocks-8.02mingw-setup.exe. It has the MinGW C/C++ compiler built into it.
BUT if you have Vista choose codeblocks-8.02-setup.exe and install
mingw MANUALY -> goto the heading "GCC 3.4.5 manual install" and read that paragraph. Install MinGW C/C++ compiler in the root directory of your computer. C:\CodeBlocks C:\MinGW. Here is a how to setup MinGW on Vista MinGW Vista.

Windows
Apache web server. Under the heading "Win32 Binary without crypto" apache_2.2.10-win32-x86-no_ssl.msi .
Linux. Use the one on your Linux install disk.

mc Then enter mc in the search blank.
And choose the one you like. Like --> I would choose Fedora 10 for i386. Midnight Commander (mc) is a File manager. It makes life easier.

SEARCH FOR OTHER SITES?

Thank you for visiting my page at Angelfire. Please come back and visit again!

Gary H. Russell