Python programming

N

ngangsia akumbo

Please i have a silly question to ask.

How long did it take you to learn how to write programs?

What is the best way i can master thinker?
I know the syntax but using it to write a program is a problem
 
C

Chris Angelico

Please i have a silly question to ask.

How long did it take you to learn how to write programs?

Well, let's see. I started programming a quarter of a century ago, and
I'm a lot less than a quarter of the way to knowing everything about
programming, so I'd say it'll take at least a hundred years :)

Seriously, you will spend your whole life learning. Just as a program
is never finished, but at some point you ship it, so also a programmer
has never learned, but at some point you start writing things that are
useful to other people. At what point does that happen? Varies
enormously. Lots of teenagers go through a school or uni course on
programming thinking, "I'm going to write a computer game!". That is,
IMO, a bad start to programming - a truly fun game that can be written
after taking a basic comp sci course is going to be a reimplementation
of one that already exists (maybe Othello - that would be within a uni
graduate's skill, I think), which isn't what most people think of when
talking about "writing a computer game". So what's your goal? Automate
some mundane task that you do every day/week/month? You could master
that fairly readily. Win at Jeopardy using a supercomputer? Try
assembling an IBM-level team of experts. :)
What is the best way i can master thinker?
I know the syntax but using it to write a program is a problem

As Mark says, mastering tkinter means picking up a tutorial and
working through it. More generally, I would recommend learning *any*
skill (programming or not) by having a need, and chipping away at the
problem until you've solved it to your own satisfaction. Don't learn
tkinter just for the sake of learning tkinter; learn it because you
want to make XYZ, for which you want/need a GUI.

(Until you're an expert programmer already. Then you might learn a new
skill just for the sake of learning it, but there's a difference, and
you'll know it when you get to that point. Sometimes it's fun to
create something under stupid restrictions that make absolutely no
sense - that's part of the basis of code golf, for instance.)

ChrisA
 
D

Dennis Lee Bieber

Please i have a silly question to ask.

How long did it take you to learn how to write programs?

Let's see... 6 months in High School to learn the rudiments of K&K
BASIC... 3 months each for Intro to FORTRAN, Intro to COBOL, Advanced
FORTRAN, Advanced COBOL, Assembly... 3 months for Pascal... 3 months for
the System Analysis course, 3 months for the data structures&algorithms...
And that was spread over four years of college, where there were other
classes required (set theory, linear algebra, statistics, graph theory).

C, C++, Ada (80!) were 4-5 day intensive courses that still only gave
one an intro level [32-40 hours just on one language, vs the
13-week@5hours/week => 65 hours college course]

Then add in OO Analysis, OO Design, etc.

Learning the syntax and semantics of a single programming language is
NOT learning to program...
What is the best way i can master thinker?

Uhm... tkinter? That's a framework for a graphical environment; tk is
not Python specific. You need to understand how event driven programs
differ from sequential ones.
 
R

Rustom Mody

Please i have a silly question to ask.


How long did it take you to learn how to write programs?


What is the best way i can master thinker?

I know the syntax but using it to write a program is a problem

It takes 5 years to become a doctor

It takes 10 years to become a musician

At 3 years or thereabouts, (a typical computer science degree), programming
is a bit easier. With some shaving off of fluff one could halve that 3 years.
With even more aggressive shaving off, maybe one more halve. But thats it.

And that implies:
- You are working full (and over) time just to learn
- You have a bunch of intelligent and dedicated teachers calibrating your
progress and your learning-curve
- You have at least normal intelligence
- You dont suffer from excessive delusions
[Just in case you think the last insulting, let me tell you about myself:
When I was doing my first programming class, my 'goal' was to write an Ada
compiler. This is called a delusion]

It may help you to have a look at the area as seen for example here:

http://ai.stanford.edu/users/sahami/CS2013/strawman-draft/cs2013-strawman.pdf
 
R

Roy Smith

ngangsia akumbo said:
Please i have a silly question to ask.

How long did it take you to learn how to write programs?

I've been working on it for 40 years. I'll let you know when I get
there.
 
G

Gene Heskett

I've been working on it for 40 years. I'll let you know when I get
there.

I started, on an RCA 1802 board in '79. I'm damned sure not there yet.

Cheers, Gene
--
"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page <http://geneslinuxbox.net:6309/gene>

NOTICE: Will pay 100 USD for an HP-4815A defective but
complete probe assembly.
 
L

Larry Martell

Please i have a silly question to ask.

How long did it take you to learn how to write programs?

My entire life.

I started in 1975 when I was 16 - taught myself BASIC and wrote a very
crude downhill skiing game. I had dial in access to the mainframe at a
local college (my HS math teacher got that for me). I could only
access it off hours, so I wrote my program to yellow paper tape then
uploaded it over a 110 baud connection. Then taught myself FORTRAN,
then went to college at Rochester Institute of Technology majoring in
Computer Engineering. First class was Pascal, then FORTRAN, which I
tested out of. Then IBM 360 assembly language, then C. After college I
taught myself SQL, shell programming, perl, C++, python, and PHP. And
in just the last 2 years javascript, jQuery, HTML, and CSS. It never
stops.
 
R

Roy Smith

Larry Martell said:
My entire life.

I started in 1975 when I was 16 - taught myself BASIC and wrote a very
crude downhill skiing game. I had dial in access to the mainframe at a
local college (my HS math teacher got that for me).

Wow, sounds exactly like my experience. Probably one of these:

https://en.wikipedia.org/wiki/HP_2000

Lunar lander. Hunt the wumpus. Space War.

Actually, before I was allowed to get access to that, I got some time on
one of these:

http://www.oldcalculatormuseum.com/hp9810a.html
 
T

Tim Delaney

My entire life.

I started in 1975 when I was 16 - taught myself BASIC and wrote a very
crude downhill skiing game.


OK - it's degenerated into one of these threads - I'm going to participate.

I received a copy of "The Beginners Computer Handbook: Understanding &
programming the micro" (Judy Tatchell and Bill Bennet, edited by Lisa Watts
- ISBN 0860206947) for Christmas of 1985 (I think - I would have been 11
years old). As you may be able to tell from that detail, I have it sitting
in front of me right now - other books have come and gone, but I've kept
that one with me. It appears to have been published elsewhere under a
slightly different name with a very different (and much more boring) cover
- I can't find any links to my edition.

My school had a couple of Apple IIe and IIc machines, so I started by
entering the programs in the book. Then I started modifying them. Then I
started writing my own programs from scratch.

A couple of years later my dad had been asked to teach a programming class
and was trying to teach himself Pascal. We had a Mac 512K he was using.
He'd been struggling with it for a few months and getting nowhere. One
weekend I picked up his Pascal manual + a 68K assembler Mac ROM guide,
combined the two and by the end of the weekend had a semi-working graphical
paint program.

A few years after that I went to university (comp sci); blitzed my
computer-related classes; scraped by in my non-computer-related classes;
did some programming work along the way; was recommended to a job by a
lecturer half-way through my third year of uni; spent the next 4 years
working while (slowly) finishing my degree; eventually found my way into an
organisation which treated software development as a discipline and a
craft, stayed there for 10 years learning how to be more than just a
programmer; came out the other end a senior developer/technical lead and
effective communicator.

And that's how I learned to program.

Tim Delaney
 
C

Chris Angelico

I received a copy of "The Beginners Computer Handbook: Understanding &
programming the micro" (Judy Tatchell and Bill Bennet, edited by Lisa Watts
- ISBN 0860206947) for Christmas of 1985 (I think - I would have been 11
years old). As you may be able to tell from that detail, I have it sitting
in front of me right now - other books have come and gone, but I've kept
that one with me. It appears to have been published elsewhere under a
slightly different name with a very different (and much more boring) cover -
I can't find any links to my edition.

Heh. I wonder if I could still find back the copy of "Bible BASIC"
that I learned from.

And yes, I learned BASIC first. Moved on from there to 8086 assembly
language, using DEBUG.EXE as my assembler, and proceeded through a
variety of setups with crazy restrictions on them. Let's see... I
wrote non-TSR interrupt handlers that executed a subprocess and
cleaned up when that process finished; used BASIC with CALL ABSOLUTE
to handle a mouse pointer; got onto OS/2 but didn't have a C compiler,
ergo wrote OS/2 code in Pascal; wanted to write a device driver but
lacked both C compiler and assembler, ergo wrote a two-pass assembler
in REXX that piped everything through DEBUG.EXE running in a virtual
86 session; couldn't get hold of a copy of the no-longer-supported
VX-REXX, and so wielded a demo version with a weird system of creating
executables... you know, getting onto a Linux system with a real
toolchain was quite the luxury. (Okay, okay, I did have some slightly
more normal experiences in amongst the weird ones. But it sounds more
insane to pretend that the above was how _all_ my programming went.)

ChrisA
 
T

Tim Delaney

I received a copy of "The Beginners Computer Handbook: Understanding &
programming the micro" (Judy Tatchell and Bill Bennet, edited by Lisa Watts
- ISBN 0860206947)

I should have noted that the examples were all BASIC (with details for how
to modify for various BASIC implementations on various platforms).

Tim Delaney
 
D

Dennis Lee Bieber


My college digital electronics course never did get up to a working bit
of hardware, though all of us had sent off for Intel's $20 package... I had
that box at work last week, where the chips in it were older than some of
the programmers.

* Intel 8080
* 5 8212 8-bit buffers (most needed to create the "system controller" as
the 8080 used the 8 data pins for the half the address -- it presented the
address which had to be latched, THEN set the data pins for I/O).
* 8 2102 static RAM (1kB)
* 4 1702 UV EPROM (1kB)
* 8224 clock chip
And the 8080 series reference manual.

I added an 8228 system controller, a UART chip, a 20-key decoder, a
2-digit LED controller, and some more efficient memory (some 4-bitx1k
static RAM and an 8bitx1k UV EPROM).

An S-100 wire-wrap board.

I hand assembled a monitor program with, as I recall, 0..F, High, Low,
Store, Go functions for the keyboard/display.
 
D

Dennis Lee Bieber

I think it was a Xerox Sigma:

WHERE?!!!

The only places I know of that had Sigma's were NASA, Missile Systems
Division of Lockheed Missiles & Space (Sunnyvale, 1981 -- they were
drafting a set of requirements to replace the Sigma. I looked at those
requirement and concluded there was only one viable alternative -- a
Honeywell DPS-8 running CP/6; the requirements specified the CP/V
In/Out/Update/Scratch file modes, and I've never seen any other system that
had Update/Scratch*... Also specified the equivalent of consecutive, keyed,
and random file organization), McDonnell-Douglas "McAuto", and... Wayne
State, Hope College, and Grand Valley (all three in Michigan... GV was
mine)


* For the bystanders: Update and Scratch maintained separate read/write
file positions. An Update file required one to read one or more records
before writing, the write position trailed the read position. Scratch was
the opposite; one wrote data and then could read it back later -- the write
position had to be ahead of the read position.

Oh, consecutive was equivalent to a UNIX stream file; no structure.
Keyed was ISAM (and even the text editor used this -- the line numbers were
ISAM keys). Random... Was a preallocated /contiguous/ block of disk -- the
OS did nothing for structure.
 
G

Grant Edwards

An S-100 wire-wrap board.

Yup, been there done that!

I had a second-hand, off-the-shelf S-100 Z80 CPU board, a second-hand
S-100 memory board with 4KB of DRAM (eight 4Kx1 chips) and 2KB of ROM
(eight 256x8 Intel 1702A EPROMS), a home made backplace PCB with 5 or
6 slots, a home-made S-100 wire-wrapped board with two UARTs and some
other miscellaneous stuff. I shoved it all into rack-mount Motorola
Exorciser chassis I pulled out of a dumpster.
I hand assembled a monitor program with, as I recall, 0..F, High,
Low, Store, Go functions for the keyboard/display.

I was living large: I had access to an Intel MDS-800 "blue box" system
in one of the University's labs. It ran CPM with dual 8" floppies and
an EPROM programmer. [I think it also may have run some proprietary
Intel OS, but I was a CP/M man.] I typed in an assembly language
monitor program out of some book or other, assembled it on the
MDS-800, burned the ROMs, hooked up a borrowed Lear-Siegler ADM3A
terminal to my wire-wrapped serial board, and it actually worked for a
little while before something failed. Building reliable wire-wrap
stuff is a real art -- unfortunately one I never learned. It also
could have been the backplane that failed: the S-100 bus connecters
never _quite_ lined up preciesly with the card cage's guides, so there
were probably mechanical stress issues.
 
R

Roy Smith

Grant Edwards said:
Yup, been there done that!

Never did S-100, but I did do a custom Unibus card (wirewrap).

You know you're working with a Real Computer (tm) when the +5V power
supply can deliver as much current as an arc welder.
 
C

Chris Angelico

You know you're working with a Real Computer (tm) when the +5V power
supply can deliver as much current as an arc welder.

That'd run a reasonable number of devices.....

ChrisA
 
G

Grant Edwards

That'd run a reasonable number of devices.....

That depends. Back in the days of bipolar glue logic and NMOS
microprocessors and peripherals, an Amp didn't get you very much. :)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
474,077
Messages
2,570,567
Members
47,204
Latest member
abhinav72673

Latest Threads

Top