What programming language would you recommend to a beginner?

Z

Zarathustra

Guest
The only programming we did when I was at school was using BBC computers and controlling little robots to make them navigate a maze. I first learnt to program using an Amstrad something or other.
 

oldgadge

Old-Salt
The only programming we did when I was at school was using BBC computers and controlling little robots to make them navigate a maze. I first learnt to program using an Amstrad something or other.
LOGO and Dr. Turtle, used in classrooms in the 80s.
 
For those aspiring to writing games, I'd suggest that they learnt 6502 assembler on a VIC-20; to learn how to write tight, functional code to produce addictive games with intense game-play. In 3.5Kb of RAM. Then let em have a C64..
Sorry, reminds me of a joke.
Guy goes into a software shop Looks around and there's loads of off-the-shelf software but in the corner is a load of monkeys. Each has a label hanging on a chain: VisBas 500$, C+ $725, Pascal 225 (discount) and so on. He looks around and there's a monkey with a label on it "$4250". Nothing more.
Intrigued, the guy goes to the shop owner and asks about the monkeys. The shop owner says"Well, it's like this: each monkey has a skill. For instance," he points to the VisBas monkey. "See him there? Absolute the tightest script I have ever seen. goes from alpha to beta to user test without errors. The C+ monkey, OK a bit more complicated but works like a demon, and produces within the life-cycle of the product."
Says the guy "Fascinating, but what about the one in the corner with $4250 round his neck?What does he do?"
Replies the shop owner "Dunno, but it says it's a contractor."
 
Whats wrong with ENGLISH - I cant find much on this thread and even less out in the streets where i live?
It’s always good to find another exponent of the seldom used Engineer’s Next Great Learning Incline Shit Help language, or ENGLISH, as you so cunningly put it. For those that don’t know it, here’s a snippet:

REM Shiny Happy People Holding Hands
REM Sub-routine BAOR Block Bang

Four eyed = 1 to 20 DM
...Go to clinic afterwards
Next I
 
Allow me to demonstrate the concept of inheritance (and plagiarism) with a distinct 80s BASIC flavour:

10 REM Shiny Happy People Holding Hands
20 REM Sub-routine BAOR Block Bang

30 Four eyed = 1 to 20 DM
40 ...Go to clinic afterwards
50 Next I
60 IF INSTR$("MONTH OF YEAR", "R") GOTO 30 ELSE PRINT "**** IT, EXERCISE SEASON"
Forgive me, but my memory’s fading now (seriously, I left the 1K chips on the windowsill on a sunny day and I think they’re buggered), but I think you are using the predecessor YANK, or Your Angry Nipples Kaboom!, with its line numbers, rather than ENGLISH. Here’s the newer code with a few additions:

REM Shiny Happy People Holding Hands
REM Sub-routine BAOR Block Bang

Four eyed = 1 to 20 DM
...Go to clinic afterwards
Next I

While R in Month goto Exercise
If four eyed and I = true
...piss fire
Next day

Goto field medic
...Sub-routine: Get aspirin .and. fight
Get arrested
If OC and I = SAME ROOM then PAY = 0
Accept award
SSM volume = 11
LR LR out SAME ROOM

While delirious
...piss blood
...if blood > 2 pints
......medivac in Bedford, age > 30
...else
......wait blood > 2 pints
End while going good

Return to start of career
 
The Nascom had windows??? I remember it, and remember one turning up at the local computer club. Have ancient issues of PCW, Computing Today, which features it... must go dig them out.
Well, most computers have at least one ... but don't forget that was a Text Only Window in them days! Most of my mainframe graphics was done using characters (even coded my own routines - Bresenham ring a bell with anyone?) never mind the NASCOM. IIRC, the NASCOM 1 used 1 KBi RAM for 'video'; not all of it was used for the display (16 lines of 48 characters?) as the video hardware couldn't scan quickly enough to allow for flyback (or something like that). For some reason that vastly bemused me, the video driver used a block shift to scroll all of the characters, which meant that the 256 'invisible' bytes were effectively unusable (without subtle use of indirection). So I rewrote the scrolling routine to shift smaller blocks and at the same time provided the abililty to define 16 text 'windows' onto the screen - they necessarily shared the same 'space', as 'proper' window handling would have taken more memory than I had! Also, bear in mind that I was a physics undergrad and didn't know about 'windows' - it just seemed like a good idea to help manage my display (which was my B&W TV, in case anybody's getting fancy ideas about HD, DeepColor, touch-sensitive devices, and 'non-volatile mass storage' was my tape-recorder).

I expected nothing less (cards). All programs to be submitted to a data entry operator, for batch processing. Results will be returned with a 48hr turn around. Paper tape may be used for local storage during "off-line" development if a dumb terminal is available.
I signed up for a Pascal class to get access to mainframe (Cyber 72?) through a (dumb) VDU and then managed to find, ahem, 'creative' ways of staying on the system.

NO WAY! A !!!FEMALE!!!
If word of that had ever got out ... :twisted:
 
Not strictly a programming language, but a self taught knowledge of Interel SQL made my life easier when using CEDRIC back in the 90s. The windows patch or conversion was pretty hopeless.
 
Well, most computers have at least one ... but don't forget that was a Text Only Window in them days!
Most? All? of them were. The CBM's "video display" was simply 1024 memory locations that were directly displayed. Screen manipulation was nothing more than changing the contents of a given location.

the NASCOM 1 used 1 KBi RAM for 'video'; not all of it was used for the display (16 lines of 48 characters?) as the video hardware couldn't scan quickly enough to allow for flyback (or something like that).
The bane of just about every 8-bit machine - certainly those that only offered text-mode display. The TRS-80 was similar, 16x64, and a "graphics" mode that simply treated each character as a 2x4 cell, iirc. But the slow scan limitation was often used to good effect on the PET and TRS 80 to "flash" the screen.

For some reason that vastly bemused me... 'proper' window handling would have taken more memory than
Love a good hack :-D At RECIS we had an HEO whose role was to QA all work (SSADM and programs). Most of the 'programming' was turnkey application, e.g written in Supercal macros or DBASE/Paradox. His pet response when faced with "press any key to continue" was to press the CTRL, SHIFT, ESC, FUNCTION keys, which of course did nothing, then fail the program with a cutting remark. Even the SNCOs didn't like submitting work. So I wrote a TSR to scan the keyboard interrupt, then launch a DOS pop-up with "**** off, Speed" if any of those keys were pressed. Took a Supercalc 'program' in, after 'sabotaging' his PC... and waited. He loved it, thought it was very amusing, and I never had to submit to QA again.

...which was my B&W TV, in case anybody's getting fancy ideas about HD, DeepColor, touch-sensitive devices, and 'non-volatile mass storage' was my tape-recorder).
Ahhhh, ditto. After getting used to "monitors" at SCBM (local business shop where I helped out), my mum bought me a Video Genie. My display was a white portable B&W TV, sat on a chair, whilst I sat on the bed with my VG perched on my knees... and played Galaxy Invasion for hours. Still have it, and the TRS-80 I picked up years later (with real Tandy monitor), and a load of tapes.

I signed up for a Pascal class to get access to mainframe (Cyber 72?) through a (dumb) VDU and then managed to find, ahem, 'creative' ways of staying on the system.
You had a VDU? At school, we had a remote teletype terminal that was fuckin HUGE. Even know I reckon it wasn't much smaller than a 28" CRT TV, with an awful keyboard; the keys were cyclindrical in appearance, and needed to forcefully pressed down. The "display" was a roll of paper, and I still have a SNOOPY printout from it. Local storage was paper tape. Connected to the local college ICL2903 by acoustic coupler. Although it didn't take Dave G and I long to 'hack' it - probably because there was no real security other obscurity - and gain sysadmin privs. First experience of a VDU was a PET 2001 (original model with mickey mouse chicklet keyboard and white VDU) in town, playing "star trek" and scrolling the screen faster than one could read when LISTing a program.... the scroll speed is tame now... but I was start struck.. and have one in the loft.
 
There is only one program to write - "How to shoot yourself in the foot"

And here is the answers

SS > jokes > How to Shoot Yourself In the Foot


Algol
You shoot yourself in the foot with a musket. The musket is aesthetically fascinating and the wound baffles the adolescent medic in the emergency room.

Ada
If you are dumb enough to actually use this language, the United States Department of Defense will kidnap you, stand you up in front of a firing squad and tell the soldiers, "Shoot at the feet."

Assembly Language
You crash the OS and overwrite the root disk. The system administrator arrives and shoots you in the foot. After a moment of contemplation, the administrator shoots himself in the foot and then hops around the room rabidly shooting at everyone in sight.
 
Will there ever be artificial intelligence? Machines that can think and write their own language? Let's have that one eh...:) Perhaps they will collect all the data available and work in government...cool. Mmmm...I wonder if there is there a finite amount of information in the universe ?

I'll get back to my simple Excel formulas now... I'm a Procurement Consultant not a bloody geek!
 
Just for excognito, I have dug out some old Computing Today and Micro Computer Printout mags from Oct-Dec 1981...
 
... it would depend on what their ultimate goals in programming were...
Too true. You can write sh!te software in any language, just like you can write decent software in most of them (I'll grant you that ML is a sod). The indicator is whether the person who takes over maintenance of your code can understand, trust, and modify it; or whether they rewrite it at the first opportunity. Do you want to be a programmer, or a software engineer? There's a difference...

My first program was written on an HP-59 calculator; my next few on a Casio FX-501P. At school, it was BASIC. At University, the CS Dept had us using Pascal, VMS Macro, Prolog, Standard ML, OCCAM - while the EE Dept had us using C (early adopters; this was 1984). My first job involved a custom VLIW assembler written by Swedes for a SIMD system; then C for a MIMD system; then UML and C++ for a COTS demo. Most of this was done without benefit of OS, for hard-real-time systems (fighter radar signal processors).

I've been using C++ for about 14 years; although I'll admit that I was basically writing C for the first few of those, before I "got it". I've been object-oriented since I can remember (yes, you can write vaguely object-oriented assembler, having language support for the concepts just makes it a lot easier). These days, it's a multi-platform GUI tool using Qt4 with a C++ back-end, and some legacy Java in the mix - along with Tcl to handle some of the interfacing, and some csh and Perl scripts just to annoy me. I work for a firm that pays me rather well for this, on the basis that ten cheap-enthusiastic-but-inexperienced engineers are more expensive and less productive than three experienced ones.

For the C++ enthusiasts out there - Herb Sutter is worth reading, and RAII is the way ahead :)

PS Pity the poor hardware designers - VHDL and Verilog are like a trip back to the 1980s, poor sods (and I will confess to having dabbled in bits of VHDL as part of my current job).

ScouseD said:
Goto field medic
...Sub-routine: Get aspirin .and. fight
Get arrested
Living proof of "GOTO considered harmful" :)
 
Will there ever be artificial intelligence? Machines that can think and write their own language? Let's have that one eh...:)
Sure. Start your own thread. There's potentially enough milage in the current subject for a bit a straight and level before manoeuvring into that big a meander - the first half of such a thread would be devoted to determining what you mean by 'think'.

Perhaps they will collect all the data available and work in government...cool.
Been done. Skynet is an early example.

Mmmm...I wonder if there is there a finite amount of information in the universe ?
Again, separate thread stuff. Ask an adult to show you how if you can't work it out.

The question itself is an old one and there is much literature on it. The Berkenstein Bound is one place to start thinking.

I'll get back to my simple Excel formulas now... I'm a Procurement Consultant
A Consultant? Ah. That explains much ... not everything, but much. I refer to an earlier message in this thread.

... 'Procurement Consultant'? Well, I suppose it looks better than 'Pimp' on your passport. ^^

(... and there's me thinking you liked to call a spade a spade)

not a bloody geek!
But you're happy enough to insult us on the equipment we provide! :evil:

Your anti-intellectual slip is showing again.
 
Just for excognito, I have dug out some old Computing Today and Micro Computer Printout mags from Oct-Dec 1981...
I vaguely remember those. When did Personal Computer World first appear ... just a minute, I must say the magic mantra ...

Google is My Friend, Google is My Friend :meditate:

Feb 78. That's the one that rings more bells in the empty attic of my mind.

My first foray into computing was with something I built from Wireless World or Practical Electronics(??) - an Analog Computer. Luckily, we'd just started calculus at school, so at least I had a vague idea what a 'differentiator' and 'integrator' were supposed to do. :)

I'll leave it for the philosophers to discuss whether my scribbles of resistor and capacitor networks constituted a programming language.
 
I'd suggest that they learnt 6502 assembler on a VIC-20;
<embed src="DvorakNewWorldSymphonyHovisAd.wav" autostart=true loop=true>

VIC-20? Sheer bloooody looxury.

When I were a lad, working 18 hour shifts at 't code face, all we had was one of these:-



It were a 'ard life then. Writing naughty words on a 7 segment LED display using only the letters A to F took some doing, especially when you're coding with hex. No fancy, la-de-da assemblers in those days.

Of course, the real hard core coders moved on to Portsmouth to code for the computers used in Leander frigates. They didn't even have hex. Just 128 K of transistor memory in a cabinet the size of the Tardis and sixteen switches that you used to set individual bits in the memory.

Those were the days when PC meant program counter rather than personal computer.

The programming language was so fiendishly complex that it didn't even have a name but it hung around long enough for Johnny Cash to write a song about it:-

I coded one bit at a time
And it never cost me a dime
....

Few people know that the song is actually about his time as a LMEM(L) at HMS Centurion rather than his time nicking a limmo from the Cadillac factory in Detroit.

Eeeee, those were the days.
 
I vaguely remember those. When did Personal Computer World first appear ... just a minute, I must say the magic mantra ...

Feb 78. That's the one that rings more bells in the empty attic of my mind.

My first foray into computing was with something I built from Wireless World or Practical Electronics(??) - an Analog Computer. Luckily, we'd just started calculus at school, so at least I had a vague idea what a 'differentiator' and 'integrator' were supposed to do. :)
I have a copy of PCW from 1979 still... but my fave is the August 1985 copy, in which Guy Kewney (RIP) reviewed the C= Amiga, and I learned what true love really was... hook, line, sinker. I think I might have PE from the late 70s or early 80s somewhere, and some Military Modelling and Angling Times (when AT was a real paper). Whoops, off-topic and venturing into sad anorak territory ;-)
 

New Posts

Latest Threads

Top