The Naked Scientists

The Naked Scientists Forum

Author Topic: How do you make applications for the computer?  (Read 23098 times)

Offline DoctorBeaver

  • Naked Science Forum GOD!
  • *******
  • Posts: 12656
  • Thanked: 3 times
  • A stitch in time would have confused Einstein.
    • View Profile
How do you make applications for the computer?
« Reply #25 on: 30/01/2008 07:55:24 »
Is all of this (however interesting), not too much for a teenager with no experiance of any form of coding or programming?

What's Billy No Mates doing here?
 

Offline DoctorBeaver

  • Naked Science Forum GOD!
  • *******
  • Posts: 12656
  • Thanked: 3 times
  • A stitch in time would have confused Einstein.
    • View Profile
How do you make applications for the computer?
« Reply #26 on: 30/01/2008 07:58:06 »
Quote
I do agree about this, but I suspect in the real world, he will probably have to learn quite a few languages anyway.

I bet he ends up with HTML/CSS, php, JScript & Flash - with, maybe, a bit of VB thrown in for good measure  :D
« Last Edit: 30/01/2008 19:50:10 by DoctorBeaver »
 

another_someone

  • Guest
How do you make applications for the computer?
« Reply #27 on: 30/01/2008 12:34:08 »
Quote
I do agree about this, but I suspect in the real world, he will probably have to learn quite a few languages anyway.

I bet he ends up with HTML/CSS, php, JScript & Flash - with, maybe, a bit of VB thrown in for good neasure  :D

Well, if he is going to end up with VB, we could always start him with ASP.

Ofcouse, we could always start him on Prolog, Lisp and APL (maybe a bit of RPG/400 thrown in - there is a lot of money in RPG/400).

Although to be fair, the first language I learnt (although did not actually use until some years later) was Plan (ICL1900 assembler) - and I've always had a soft spot for assemblers - at least you understand what the machine is doing.  In fact I did teach someone without any programming experience how to program in Intel assembler (only at a very crude level) using the Debug tool - but this was more to give them an understanding of how processors worked than really to teach programming.  To be fair, there were two people I tried teaching this to; one took to it like a fish to water, and the other was left hopelessly lost.
 

Offline DoctorBeaver

  • Naked Science Forum GOD!
  • *******
  • Posts: 12656
  • Thanked: 3 times
  • A stitch in time would have confused Einstein.
    • View Profile
How do you make applications for the computer?
« Reply #28 on: 30/01/2008 15:21:06 »
I've used Debug. What a pain! But you can do a lot of damage with it so I wouldn't advise anyone without good ASM skills to go anywhere near it.

As for assemblers - 6502 (although 90% of that was pure machine language), 8080, MC68000, 80x86, DEC VAX, DG Nova, IBM 360 BAL. I've not done any assembler programming on Pentiums or Athlon processors, though.

The 1st language I learned was BASIC on a Commodore PET, migrating shortly after to an Apple II. Then I "upgraded" my skills to COBOL (that was soooo long ago & now I'm back to divs with HTML!  :D ). My COBOL came in very handy in 1999 when there was the Y2K problem. Anyone with good COBOL could name their own price.

We didn't have CRTs when I worked on the 1st IBM 360. It was all punch cards & tape.

The DG Novas that I worked on had to have the bootstrap routine keyed in using toggle switches - 1 set for the address, another for the instruction. Talk about crude!

I can't remember if I did Pascal or Fortran after that.

Subsequently I've dabbled with APL, Forth, Lisp, C, C++, K-Man, Ada, RPG, Delphi, Python, Java, Javascript, PERL, and php.
 

another_someone

  • Guest
How do you make applications for the computer?
« Reply #29 on: 30/01/2008 18:41:35 »
Assemblers:

  • ICL1900 PLAN
  • Intel 8080
  • Zilog Z80 (essentially a superset of of the 8080)
  • Macro-11
  • IBM 370 core dumps, but never really programmed it.
  • Intel 8086 (did some on the 80386, but that was really just 8086 assembly running in a 80386 environment - never actually dealt with the paging, etc. that differentiated the 80386 from the 8086; and have never done the SSE and stuff that differentiates the Pentium from its precursors).

High level languages (of what I can recall):

  • BASIC (a number of different dialects, including VB and VBA).
  • Fortran
  • Algol-68
  • PL/1
  • Databus
  • C and C++
  • Java (just very cursory dabbling)
  • HTML/CSS/Javascript
  • PHP
  • PERL
 

Offline DoctorBeaver

  • Naked Science Forum GOD!
  • *******
  • Posts: 12656
  • Thanked: 3 times
  • A stitch in time would have confused Einstein.
    • View Profile
How do you make applications for the computer?
« Reply #30 on: 30/01/2008 19:56:46 »
I forgot about the Z80. What jolly fun that was!  :D And I've used more dialects of BASIC than you could shake a stick at. I think every home machine produced in the late 70s/early 80s had its own dialect and implementation.

I must admit a certain fondness for QBASIC - still very simple but with calls & variable scope. And it came with its own IDE!

I've looked at Algol & PL/1 but never really done anything much more with them than the ubiquitous "Hello World" bit.

This is fast turning into a nostalgia thread!  ;D
« Last Edit: 30/01/2008 20:00:13 by DoctorBeaver »
 

Offline Simulated

  • Neilep Level Member
  • ******
  • Posts: 7188
  • Thanked: 1 times
  • Simulated..What more do you needa know :P
    • View Profile
    • Facebook
How do you make applications for the computer?
« Reply #31 on: 31/01/2008 01:52:52 »
This is a bunch of stuff.

Can you simplify it for me please guys?
 

Offline DoctorBeaver

  • Naked Science Forum GOD!
  • *******
  • Posts: 12656
  • Thanked: 3 times
  • A stitch in time would have confused Einstein.
    • View Profile
How do you make applications for the computer?
« Reply #32 on: 31/01/2008 13:06:40 »
This is a bunch of stuff.

Can you simplify it for me please guys?

Go away... I'm talking to George!  :P
 

paul.fr

  • Guest
How do you make applications for the computer?
« Reply #33 on: 31/01/2008 13:08:43 »


Go away... I'm talking to George!  :P

Sim, this post should be reported to the monopolies commission!
 

Offline DoctorBeaver

  • Naked Science Forum GOD!
  • *******
  • Posts: 12656
  • Thanked: 3 times
  • A stitch in time would have confused Einstein.
    • View Profile
How do you make applications for the computer?
« Reply #34 on: 31/01/2008 13:17:20 »
This is a bunch of stuff.

Can you simplify it for me please guys?

Different languages are better suited to different applications. For instance, COBOL is (was) brilliant for financial applications, scientific stuff would have been coded in Fortran, etc.

These days, though, most common languages can be used in a wide variety of applications (although I wouldn't want to attempt a fluid dynamics problem in Delphi. You still get the specialised languages that are used for, say, AI research, physics problems, pattern-matching, and so forth. C and C++ are very good for writing Operating Systems, interpreters, compilers, and the like; but are also good for general applications.

George & I have been around for so long that we've used lots of different languages for many diverse applications. We have just been waxing nostalgic  :D

Prior to that, we were discussing which language(s) may be best for you to start with.

 

Offline Simulated

  • Neilep Level Member
  • ******
  • Posts: 7188
  • Thanked: 1 times
  • Simulated..What more do you needa know :P
    • View Profile
    • Facebook
How do you make applications for the computer?
« Reply #35 on: 31/01/2008 19:16:46 »
Um. I'm still lost. Do you know a of site that shows you how to do it step by step for even a really usless program or any kinds of links that i could understand.
 

Offline DoctorBeaver

  • Naked Science Forum GOD!
  • *******
  • Posts: 12656
  • Thanked: 3 times
  • A stitch in time would have confused Einstein.
    • View Profile
 

Offline Simulated

  • Neilep Level Member
  • ******
  • Posts: 7188
  • Thanked: 1 times
  • Simulated..What more do you needa know :P
    • View Profile
    • Facebook
How do you make applications for the computer?
« Reply #37 on: 31/01/2008 22:39:40 »
Getting right on that
 

Offline Simulated

  • Neilep Level Member
  • ******
  • Posts: 7188
  • Thanked: 1 times
  • Simulated..What more do you needa know :P
    • View Profile
    • Facebook
How do you make applications for the computer?
« Reply #38 on: 31/01/2008 22:41:23 »
The C or the C++ ones sound good for a guy like me.

Now what? (thanks doc)
 

Offline DoctorBeaver

  • Naked Science Forum GOD!
  • *******
  • Posts: 12656
  • Thanked: 3 times
  • A stitch in time would have confused Einstein.
    • View Profile
How do you make applications for the computer?
« Reply #39 on: 01/02/2008 08:11:17 »
It would be advisable to learn C before attempting C++ or C#. So now you have to get a C compiler, some C libraries, an editor, and find a tutorial like this 1... http://members.tripod.com/johnt/c.html

Or you could wade your way through this site http://www.programmingtutorials.com/ which will allow you to look at a variety of languages.
« Last Edit: 01/02/2008 08:17:02 by DoctorBeaver »
 

Offline Simulated

  • Neilep Level Member
  • ******
  • Posts: 7188
  • Thanked: 1 times
  • Simulated..What more do you needa know :P
    • View Profile
    • Facebook
How do you make applications for the computer?
« Reply #40 on: 01/02/2008 12:40:10 »
This above can be shown as printf("I am %d years old",12) which will result in the following result:I am 12 years old


So where do you put that?
 

Offline DoctorBeaver

  • Naked Science Forum GOD!
  • *******
  • Posts: 12656
  • Thanked: 3 times
  • A stitch in time would have confused Einstein.
    • View Profile
How do you make applications for the computer?
« Reply #41 on: 01/02/2008 12:56:20 »
C programs must start with a main() function. If all you want to do is print "I am 12 years old", you put it in there.

But you may want to do something like

Input your year of birth.
Calculate how many years ago that was.
Display the difference (i.e. the person's age).

Because I don't like putting I/O (input/output) stuff in with the program logic, I would write 3 functions to handle that, and main would call them in sequence.

In pseudo-code, my program would be...

Code: [Select]
function main
{
 birth_year = get_year()
 difference = calc_years_diff(birth_year, this_year)
 display_value(difference)
}

function get_year(year)
{
 input year from keyboard
 return year
}

function calc_years_diff(birth_year, this_year)
{
 years_diff = this_year - birth_year
 return years_diff
}

function display_value(value)
{
 print value
 return
}

 

another_someone

  • Guest
How do you make applications for the computer?
« Reply #42 on: 01/02/2008 18:56:56 »
Various C compilers can be found at http://www.thefreecountry.com/compilers/cpp.shtml and at http://parinyasoft.com/resources.html

My own preference is for the GCC compiler, which has a windows port that is known as MinGW (other windows ports also exist); but it is probably easier for you to start with a full IDE (Integrated Development Environment), so you could do worse than downloading the one from http://parinyasoft.com/download.html (which you can download complete with the MinGW compiler).
 

another_someone

  • Guest
How do you make applications for the computer?
« Reply #43 on: 01/02/2008 19:04:14 »
I note that the site that Eth suggested prefers the Borland compiler.  Each to their own (some consider that Borland are not as up to date as the GCC compiler, but will that really matter at this point?).

If you follow the links from the page Eth suggested (http://www.learn-programming.za.net/programming_c_learn01.html), it does take you through writing simple programs.  If you are using an IDE, then the differences between one compiler and another should not be noticeable until you get to quite advanced stuff.
 


another_someone

  • Guest
How do you make applications for the computer?
« Reply #45 on: 01/02/2008 20:57:20 »
One thing that is totally deceptive in the web page Eth was pointing to (not for one moment suggesting that Eth agrees with everything on the page) is where it says:

http://www.learn-programming.za.net/articles_howtolearnprogramming.html
Quote
Scripting Languages(Python, Perl) - Easier to program in than compiled languages but not always as useful

Yes, it is true that they are not always as useful, but sometimes they are far more useful.  There are things I would never dream of using PERL or Python for, and other tasks where they would be my language of choice.

There are some programmers who see languages like PERL and Python as not 'real' or 'professional' programming languages.  I have seen some very professional applications written in them (particularly in Python), whereas PERL is extremely useful for short little utilities that would be a pain to write if you had to code everything in C or C++.  Certainly, I agree that PERL can be a pain for larger projects, but not every program is part of a larger project (or, even if it forms a part of a project, it may be a unit that comfortably stands apart from the rest of the project).  One thing I often do is to write PERL programs to generate C code where there is a lot of repetitive C code to be written that would be tedious to write by hand - so both languages work together to achieve the desired result.
 

Offline DoctorBeaver

  • Naked Science Forum GOD!
  • *******
  • Posts: 12656
  • Thanked: 3 times
  • A stitch in time would have confused Einstein.
    • View Profile
How do you make applications for the computer?
« Reply #46 on: 01/02/2008 21:12:31 »
I note that the site that Eth suggested prefers the Borland compiler.  Each to their own (some consider that Borland are not as up to date as the GCC compiler, but will that really matter at this point?).

I didn't take a lot of notice of which compiler it was preferring. I just glanced at it quickly & thought it looked a reasonably good tutorial.

Quote
Yes, it is true that they are not always as useful, but sometimes they are far more useful.  There are things I would never dream of using PERL or Python for, and other tasks where they would be my language of choice.

Good point & I totally concur.
 

Offline Atomic-S

  • Hero Member
  • *****
  • Posts: 928
  • Thanked: 18 times
    • View Profile
How do you make applications for the computer?
« Reply #47 on: 04/03/2008 05:45:55 »
I have used various forms of BASIC in recent years. Mainly because they came with the computers, except the most recent, which did not. For it, I got Liberty Basic off of its web site.  Of these languages, it must be said that they are generally very straightforward and user friendly. Some of them have brilliant features.  However, most of them have certain significant weaknesses, that would become more apparent as one tried to do things that were more than quite simple. Visual Basic I found a bit difficult to use, Liberty Basic not so much so (and it also can handle large files and blocks of data) but it suffers from a number of inadequacies.
 

another_someone

  • Guest
How do you make applications for the computer?
« Reply #48 on: 04/03/2008 12:42:37 »
I have used various forms of BASIC in recent years. Mainly because they came with the computers, except the most recent, which did not. For it, I got Liberty Basic off of its web site.  Of these languages, it must be said that they are generally very straightforward and user friendly. Some of them have brilliant features.  However, most of them have certain significant weaknesses, that would become more apparent as one tried to do things that were more than quite simple. Visual Basic I found a bit difficult to use, Liberty Basic not so much so (and it also can handle large files and blocks of data) but it suffers from a number of inadequacies.

As I hinted above, all languages have, in their own way, limitations.

BASIC was designed as a teaching language (as was Pascal).  C was designed as a language for writing operating systems and low level software.  PHP was designed as a web language.   PERL was designed as a tool for handling text files, and as a very sophisticated system control language (for executing system commands, parsing their output (which is human readable text) and doing some other processing.  PERL also was the first widely used web programming language because the web is also text based, and PERL was already there to do the job.

The problem is that while BASIC was a good teaching language, it no longer really suites that role because most dialects of BASIC (any I have come across) do not support a lot of modern programming paradigms.
 

Offline Gabe2k2

  • Jr. Member
  • **
  • Posts: 32
    • View Profile
How do you make applications for the computer?
« Reply #49 on: 11/09/2008 22:56:41 »
Dark Basic  I would recomend it to a begginer designing applications !
 

The Naked Scientists Forum

How do you make applications for the computer?
« Reply #49 on: 11/09/2008 22:56:41 »

 

SMF 2.0.10 | SMF © 2015, Simple Machines
SMFAds for Free Forums
 
Login
Login with username, password and session length