programming skills: a look back to peer into the future.€¦ · • 1964 – basic • 1964 –...
TRANSCRIPT
![Page 1: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/1.jpg)
Programming Skills:
A look back to peer into the future.
Pete Massiello
iTech Solutions
Twitter: PeteM59
1
![Page 2: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/2.jpg)
Prehistory
• The first Programming languages predate the computer.
• Languages were codes
• 1890 Herman Hollerith – Census data
![Page 3: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/3.jpg)
Early programming
![Page 4: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/4.jpg)
When do we start?
• The Analytical Engine, an important step in the history of
computers, is a design for a mechanical general-purpose
computer first described by English mathematician Charles
Babbage in 1837. It was the successor to Babbage's difference
engine, a design for a mechanical calculator. The Analytical
Engine incorporated an arithmetical unit, control flow in the form
of conditional branching and loops, and integrated memory,
making it the first Turing-complete design for a general-purpose
computer.
• Programming supposed to be by punch cards.
![Page 5: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/5.jpg)
Analytical Engine: Built 63 years later
![Page 6: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/6.jpg)
ENIAC
• Designed in 1942 General-purpose Electronic computer
• Electronic Numerical Integrator and Computer (ENIAC).
• Enormous speed advantage by using digital electronics with no
moving parts.
• Called Project-PX as its code name.
• Started in 1943, completed in 1946 costing $500,000 ( $6,000,000
in 2010 dollars).
• Designed to calculate artillery firing tables for the Army.
• First project was computations for the hydrogen bomb.
• Decimal based.
![Page 7: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/7.jpg)
Programming the ENIAC
![Page 8: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/8.jpg)
Operating ENIACs main control panel
![Page 9: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/9.jpg)
EDVAC
• Electronic Discrete Variable Automatic Computer
• Binary serial computer with automatic addition, subtraction,
multiplication, programmed division and automatic checking with
an ultrasonic serial memory.
• Capacity of 1,000 44-bit words, later set to 1,024 words: 5.5KB
• 6,000 vacuum tubes, 12,000 diodes, consumed 56kW of power,
and covered 490 Sq. Ft. Weighed 17,300 pounds.
• Designed 1946 built and operational 1949.
• Magnetic tape (Wire recorder).
![Page 10: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/10.jpg)
EDVAC
![Page 11: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/11.jpg)
What is a Programming Language
• A programming language is an artificial language designed to
communicate instructions to a machine, particularly a computer.
Programming languages can be used to create programs that
control the behavior of a machine and/or to express algorithms
precisely.
• The earliest programming languages predate the invention of the
computer, and were used to direct the behavior of machines such
as Jacquard looms and player pianos. Thousands of different
programming languages have been created, mainly in the
computer field, with many more being created every year. Most
programming languages describe computation in an imperative
style, i.e., as a sequence of commands, although some languages,
such as those that support functional programming or logic
programming, use alternative forms of description.
![Page 12: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/12.jpg)
Early Languages
• 1837 - Analytical Engine Order Code – Charles Babbage
• 1943 to 1946 - ENIAC coding System
• 1943 – Plankalkul (designed) – First High Level
• 1947 - ARC Assembly
• 1948 – Curry notation system
• 1948 - CPC Coding scheme
• 1949 - C10
![Page 13: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/13.jpg)
Languages of the 1950s
• 1951 - Superplan
• 1951 – ALGAE
• 1952 – Autocode / AUTOCODER
• 1954 – Fortran (Concept)
• 1954 - IPL
• 1955 – PACT I
• 1956 – LISP (Concept)
• 1957 – Fortran
• 1957 – UNICODE
• 1958 – ALGOL 58
• 1959 – COBOL (Concept)
![Page 14: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/14.jpg)
Languages of the 1960s
• 1960 – ALGOL 60
• 1960 - COBOL 61
• 1962 – Fortran IV
• 1962 - SNOBOL
• 1963 – CPL
• 1964 – BASIC
• 1964 – IBM RPG
• 1966 – Fortran 66
• 1967 – APL
• 1968 – DIBOL-8
• 1969 – PL/I
![Page 15: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/15.jpg)
The great debate starts
• Computers
• Programming:
Structured Programming
GOTO
![Page 16: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/16.jpg)
Languages of the 1970s
• 1970 - Pascal
• 1972 – Smalltalk
• 1972 – C
• 1972 – Prolog
• 1972 – SQL
• 1975 - Modula
• 1977 – Bourne Shell (sh)
• 1977 – Commodore BASIC
• 1977 – Green, Red, Blue, Yellow for Dept. of Defense
• 1978 - VisiCalc
![Page 17: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/17.jpg)
My college Final Project
![Page 18: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/18.jpg)
Languages of 1980
• 1980 – Ada
• 1980 - C with classes
• 1982 – PostScript
• 1983 – C++
• 1984 – Korn Shell (ksh)
• 1984 – GOM (Good Old Mad)
• 1985 – PARADOX
• 1987 – Perl
• 1987 – HyperTalk
• 1987 – Turbo Basic
• 1988 – SPARK
• 1989 – FL (Backus)
![Page 19: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/19.jpg)
Languages of 1990s
• 1990 – AMPL
• 1991 – GNU E
• 1991 – Python
• 1991 – Visual Basic
• 1992 – Borland Pascal
• 1992 – Dylan
• 1993 – Self
• 1993 – Applescript
• 1995 – Borland Delphi
• 1995 – ColdFusion
• 1995 – Java
• 1995 – PHP
![Page 20: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/20.jpg)
Languages of 1990s (cont.)
• 1995 – Ruby
• 1996 – JavaScript
• 1996 – Perl Data Language (PDL)
• 1997 - Rebol
• 1998 – Standard C++
• 1998 – Pikt
• 1999 – Game Maker Language (GML)
![Page 21: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/21.jpg)
Languages of 2000s
• 2000 – D
• 2000 – C#
• 2001 – Visual Basic .NET
• 2003 – Scala
• 2003 – Squirrel
• 2004 – Groovy
• 2005 – F#
• 2006 – Cobra
• 2008 – Pure
• 2009 – Go
• 2009 – CoffeeScript
• 2010 - Fancy
![Page 22: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/22.jpg)
Generations
• 1GL – UNIVAC 1 & IBM 701 – Machine language programs
• 2GL – Machine specific but mnemonic
Assembler
• 3GL – More abstract & portable
FORTRAN, LISP, RPG, & COBOL
Continued growth & still in use
• 4GL – domain specific, as SQL
Code generators
![Page 23: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/23.jpg)
Evolution of Computer Programming languages
![Page 24: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/24.jpg)
Typical Programmers?
![Page 25: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/25.jpg)
Does anyone disagree?
The average psychopath is excessively
independent - sometimes to the point of
mild paranoia. He/she is often
egocentric, slightly neurotic, and he/she
borders on a limited schizophrenia.
![Page 26: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/26.jpg)
Occupation or a personality ?
![Page 27: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/27.jpg)
Words to describe a programmer
• Practical
• Introvert
• Alone
• Socially Inept
• Geek
• Nerd
• Logical Thinker
• Analytical
![Page 28: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/28.jpg)
April 1967 – Women are natural Programmers
![Page 29: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/29.jpg)
Perhaps a little more Coffee
![Page 30: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/30.jpg)
Amazing what a few Billion will do
Start young…….
![Page 31: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/31.jpg)
Gateway President Craig Jacquez at an Early Age
![Page 32: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/32.jpg)
How to successfully prepare your students for college?
![Page 33: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/33.jpg)
A recent Dot Net Rocks show…….Teach them early
![Page 34: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/34.jpg)
Remember back 10 to 15 years ago
• Learn Java or Flip Hamburgers
• No need for programmers after Y2K
• Everything will be packages
• COBOL/RPG are dead
• Offshore programmers
• The AS/400 is going away
![Page 35: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/35.jpg)
Job Concerns
• Ability to Change
• Competing against students
• Ability to Change
• Outside or off-shore programmers
• Ability to Change
• More company knowledge than programming knowledge
• Ability to Change
• It’s worked fine for 15 years, why change
• Ability to Change
• We don’t use ILE in this shop
• Under the Radar
![Page 36: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/36.jpg)
Change
• Break from your Comfort Zone
• Coder, Designer, Business Analyst
• Engineer or Artist
• Learn a new Skill
• See what co-workers are doing
• See what other companies are doing
• What if I pick the wrong new Skill?
• Don’t be Afraid
![Page 37: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/37.jpg)
What Shape describes your skills?
----------------------------- Skills ------------------------------------
M
a
s
t
e
r
y
![Page 38: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/38.jpg)
Top 10 reasons you might be a has-been programmer?
• Every program you write uses the RPG Cycle
• You can write that program more efficiently in Assembler
• You know what COBOL stands for
• You boast that you know the IBM SE’s home phone number
• You have the 15 floppy diskettes for Windows 3.1.1.
• You have the yellow trifold EBCIDIC/ASCII Hex sheets
• Your home internet is a dial-up modem
• When you think DDS you think *PF & *LF, not Dentist
• You think RPG stands for Report Program Generator
• You wonder why there are no System/36 jobs on Monster.
![Page 39: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/39.jpg)
Current RPG Programmer needs:
• Get your shop up to IBM i 7.1
• Learn and use SQL, ILE, & RPG-IV
• Learn and use RDp (WDSc, RDi)
• Learn HTML5 & XML
• Create a webpage
• Integrate an RPG program with the web
• Learn and use PHP, DB2/Webquery
• Learn mySQL & .Net
• Learn Java, Javascript Frameworks (JQuery, JQuery
Mobile, Sencha's Ext-Js, iUI, etc)
![Page 40: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/40.jpg)
Other skills
• LINUX & Windows 8
• Business skills
• Mobile Devices & mobile Apps
• Cloud Computing
• Refacing/modernization of the Interface (Open Access)
• In-Memory Computing
• Analytics
• Strategic Big Data
• Games
• Integrated Platforms & Ecosystems
• Explore, investigate, & play
![Page 41: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/41.jpg)
How will we get those skills
• User Groups
• Night Classes
• Networking
• On-Line courses
• On-line discussion forums:
Midrange-L,
RPG400-L
• Books, Podcasts, Blogs
![Page 42: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/42.jpg)
Exact Skills of the Future
![Page 43: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/43.jpg)
Skills are important but the future …….
• Attitude
• Work-Ethic
• Dress for success
• Understanding the business & creating value
• Coder, Designer, Business Analyst
• Know your competition: Computer-Savvy Kids
• Social Media:
LinkedIn …….
• Ability to Change
![Page 44: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/44.jpg)
Who will be the successful programmer of the future?
• Integrator
Understands different Technology
Knows the benefits of each
Knows how to unite them
![Page 45: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/45.jpg)
Investment
• Invest in yourself
• Your compensation package should include:
1 Week of Education per year (COMMON)
Reimbursement to attend monthly user group meeting
• Company purchased training programs
• Don’t make yourself unemployable
• In every failed attempt, you will always learn something.
![Page 46: Programming Skills: A look back to peer into the future.€¦ · • 1964 – BASIC • 1964 – IBM RPG ... • Competing against students • Ability to Change • Outside or off-shore](https://reader033.vdocuments.site/reader033/viewer/2022043005/5f89f3caa9c7455bd5382d20/html5/thumbnails/46.jpg)
Your Career ?