Introduction to Information Technology: erinevus redaktsioonide vahel
| 74. rida: | 74. rida: | ||
:* [http://www.maxmon.com/history.htm A history of computers] from the beginnings - ~1945: | :* [http://www.maxmon.com/history.htm A history of computers] from the beginnings - ~1945: | ||
; 3. "Medieval" history : from WWII till beginning of the 60's. Computers and programming. | ; 3. "Medieval" history : from WWII till beginning of the 60's. Computers and programming. Languages and architectures. Integratec circuits. | ||
:Lecture material: [http://www.cs.hut.fi/~domiczi/itx0025/intro2it_3_edo.ppt intro2it_3_edo.ppt], [[Media:Intro2it_3_edo.pdf|Intro2it_3_edo.pdf]]. | :Lecture material: [http://www.cs.hut.fi/~domiczi/itx0025/intro2it_3_edo.ppt intro2it_3_edo.ppt], [[Media:Intro2it_3_edo.pdf|Intro2it_3_edo.pdf]]. | ||
:Additionally: | :Additionally: | ||
:* Paul Graham: [http://www.paulgraham.com/college.html Undergraduation] | :* Paul Graham: [http://www.paulgraham.com/college.html Undergraduation] plus: [http://www.paulgraham.com/undergrad2.html more advice for undergrads] | ||
:* Eck intro lab: [http://math.hws.edu/TMCM/java/labs/DataRepsLab.html data reps]. | :* Eck intro lab: [http://math.hws.edu/TMCM/java/labs/DataRepsLab.html data reps]. | ||
:* Eck lab: [http://math.hws.edu/TMCM/java/labs/xTuringMachineLab.html Turing machines]. | :* Eck lab: [http://math.hws.edu/TMCM/java/labs/xTuringMachineLab.html Turing machines]. | ||
:* Earlier machines: | :* Earlier machines: | ||
:** Example of an important analog computer: [http://en.wikipedia.org/wiki/Norden_bombsight Norden bombsight] | :** Example of an important analog computer: [http://en.wikipedia.org/wiki/Norden_bombsight Norden bombsight] | ||
:** English cryptography saga: [http://en.wikipedia.org/wiki/Colossus_computer Colossus], [http://en.wikipedia.org/wiki/Alan_Turing Turing], | :** English cryptography saga: [http://en.wikipedia.org/wiki/Colossus_computer Colossus], [http://en.wikipedia.org/wiki/Alan_Turing Turing], Germans' [http://en.wikipedia.org/wiki/Enigma_machine Enigma] and [http://en.wikipedia.org/wiki/Lorenz_SZ_40/42 Lorenz SZ 40] | ||
:** First digital computers working with electricity: | :** First digital computers working with electricity: | ||
:*** [http://www.epemag.com/zuse/ Zuse electro-mechanical computer], compare with [http://www.zib.de/zuse/English_Version/index.html this site]. | :*** [http://www.epemag.com/zuse/ Zuse electro-mechanical computer], compare with [http://www.zib.de/zuse/English_Version/index.html this site]. | ||
| 89. rida: | 89. rida: | ||
:* Read also: [http://www.islandnet.com/~kpolsson/comphist/ Chronology of Personal Computers] by Ken Polsson | :* Read also: [http://www.islandnet.com/~kpolsson/comphist/ Chronology of Personal Computers] by Ken Polsson | ||
; 4. "Medieval" history (continued): 60's, beginning of the 70's. | ; 4. "Medieval" history (continued): 60's, beginning of the 70's. Minicomputers and microprocessors. | ||
:Lecture material: [ | :Lecture material: [http://www.cs.hut.fi/~domiczi/itx0025/intro2it_4_edo.ppt intro2it_4_edo.ppt], [[Media:Intro2it_4_edo.pdf|Intro2it_4_edo.pdf]]. | ||
:Additionally: | :Additionally: | ||
:* | :* Continuation to question "what to do in high school?". Joel Spolsky: [http://www.joelonsoftware.com/articles/CollegeAdvice.html Advice for Computer Science College Students] | ||
:* [http://pdp-1.org/ PDP-1 restoration project] | :* [http://pdp-1.org/ PDP-1 restoration project] | ||
:* [http://pdp-1.org/Wiki/Spacewar Spacewar: first graphical computer game] | :* [http://pdp-1.org/Wiki/Spacewar Spacewar: first graphical computer game] | ||
:* [http://www.atarimuseum.com/ Atari muuseum] | :* [http://www.atarimuseum.com/ Atari muuseum] | ||
:* [http://www.cyberniklas.de/pongmechanik/indexen.html | :* [http://www.cyberniklas.de/pongmechanik/indexen.html mechanical pong] | ||
:* [http://en.wikipedia.org/wiki/SRI_International SRI international] | :* [http://en.wikipedia.org/wiki/SRI_International SRI international] | ||
:* [http://en.wikipedia.org/wiki/Bell_Labs Bell labs] | :* [http://en.wikipedia.org/wiki/Bell_Labs Bell labs] | ||
Redaktsioon: 17. oktoober 2006, kell 17:44
...history, trends, basics, paradigms, business.
Course code: ITX0025
Teacher: Endre Domiczi
Contact: edo@iki.fi
Link: http://www.lambda.ee/index/Introduction_to_Information_Technology or http://www.lambda.ee/index/itx0025
Link to last year Estonian version http://www.lambda.ee/index/Sissejuhatus_informaatikasse or http://www.lambda.ee/index/itv0010
Exam, Presentation, Evaluation, Results
Student groups for presentation: please click here for signing up.
The email should contain for each group member the name, student number and email-address. Please don't touch the subject line (or only add to it)
Group size is 1-3 persons, presentation time is min. 10 minutes, 15 if the group size is 3.
Topics can be selected from materials on this page that are prefixed with "Additionally:"
Lecture: Amount, Time and Location, Scores
Lectures per week: 2 hours. Unless otherwise marked the schedule is as follows:
- at ITK the following times.
- Tuesday 17.45-19.15, IT-140 (lecturing endre)
Exercises at ITK: independent reading and (sometimes) problem solving, with guidance
ITK: course ends with EVALUATION. The Evaluation is in writing, two or more hours.
ITK: kursus lõpeb ARVESTUSEGA. Arvestus on kirjalik, kaks või enam tundi. Semestri poole peal (täpne kuupäev ilmub hiljem) toimub lisaks kontrolltöö ajaloo-osa kohta. Arvestuse saamiseks peab edukalt tegema nii kontrolltöö kui arvestustöö.
Course goals
- Give a compact overview of informatics as a whole.
- Give a historical overview of IT theory, technology and business development.
- Introduce future courses for further studies.
NB! the course DOES NOT TEACH elementary computer usage skills. Neither does it teach programming, although it gives a gentle introduction to programming.
Summary
Historical and conceptual overview of informatics as a domain of business, science and engineering. Early history of the domain, scientific and technical development at the beginning of the last century, the rapid development during the mid-century and the even faster paved changes in the scientific-, business and technological aspects during the last decades.
Main programming paradigms (imperative, logical, functional, object-oriented) as well as paradigms in system architecture (mainframes, personal computers, client-server systems, distributed and multi-layer systems).
The birth and disappearance of technologies, companies; trends, principles, specific events.
Please also see Course Register.
Lecture plan and materials
The course DOESN’T HAVE a single course-book. As follows, material for each lecture is given separately.
NB! Materials for not-yet-delivered lectures are preliminary: they are changed, supplemented during the course.
- 1. Introduction
- Basics of Computers and Programming.
- Lecture material: Intro2it_1_edo.PPT, Intro2it_1_edo.pdf.
- Additionally:
- read and also play with the : Data Representations Applet (originally written by David Eck).
- read: Paul Graham: Why nerds are unpopular?
- 2. Early History
- Industrialization. Theoretical foundations. Logic.
- Lecture material: intro2it_2_edo.ppt, Intro2it_2_edo.pdf.
- Additionally:
- Paul Graham: What you'll wish you'd known
- A collection of web-based logic programs offering a number of logical functions by Christian Gottschall :
- A history of computers from the beginnings - ~1945:
- 3. "Medieval" history
- from WWII till beginning of the 60's. Computers and programming. Languages and architectures. Integratec circuits.
- Lecture material: intro2it_3_edo.ppt, Intro2it_3_edo.pdf.
- Additionally:
- Paul Graham: Undergraduation plus: more advice for undergrads
- Eck intro lab: data reps.
- Eck lab: Turing machines.
- Earlier machines:
- Example of an important analog computer: Norden bombsight
- English cryptography saga: Colossus, Turing, Germans' Enigma and Lorenz SZ 40
- First digital computers working with electricity:
- Zuse electro-mechanical computer, compare with this site.
- Atanasoff's electronic computer
- Mark I: first programmable electro-mechanical computer.
- Read also: Chronology of Personal Computers by Ken Polsson
- 4. "Medieval" history (continued)
- 60's, beginning of the 70's. Minicomputers and microprocessors.
- Lecture material: intro2it_4_edo.ppt, Intro2it_4_edo.pdf.
- Additionally:
- Continuation to question "what to do in high school?". Joel Spolsky: Advice for Computer Science College Students
- PDP-1 restoration project
- Spacewar: first graphical computer game
- Atari muuseum
- mechanical pong
- SRI international
- Bell labs
- 5. Keskajalugu jätkub
- 70ś . MicroComputers, Personal Computers.
- Lecture material: itsissejuhatus5o.PPT, itsissejuhatus5o.pdf.
- Additionally:
- Colossal Cave (adventure) textual adventure game
- Magnavox odyssey
- 6. Lähiajalugu
- 80's. IBM PC, Macintosh, uued vanad opsüsteemid. Spetsiaalarvutid, workstationid, oluline soft.
- Lecture material: itsissejuhatus6o.PPT, itsissejuhatus6o.pdf.
- Additionally: Apple Macintoshi reklaamfilm:
- 7. Lähiajalugu
- 90's till today. Kokkuvõtted saagadest.
- Lecture material: itsissejuhatus_ajaloolopp.PPT, itsissejuhatus_ajaloolopp.pdf.
- Additionally:
- Alustada: "Teejuht võrgumeediasse" toorik.
- Tutvu: [http:/materjalid/itsissejuhatus/itsissejuhatus_eestiajalugu.ppt J.Penjami lühiülevaade Eestis tehtud ja olnud varastest arvutitest]
- 8. Arvuti tööpõhimõtted, programmeerimiskeeled.
- Lecture material: itsissejuhatus7o.PPT, itsissejuhatus7o.pdf.
- Additionally:
- Veidi tutvuda nende saitidega:
- D.Eck, osad siit: Eck laborid (siit saad võtta eraldi rakendusena). NB! Loe ise läbi, proovi ja tee igast osast üks-kaks harjutust:
- 9. Progr. keeled jätkuvad. Operatsioonisüsteemid.
- Lecture material: itsissejuhatus8o.PPT, itsissejuhatus8o.pdf.
- Additionally: Eck laborid jätk: loe ise läbi, proovi ja tee igast osast üks-kaks harjutust:
- Kohustuslikku lugemist (
- Kohustuslik on esimene 1/4 pikast artiklist In the Beginning was the Command Line
- Soovitavat lugemist:
- üldse mitte kohustuslik (algajatel raske mõista :-) The Art of Unix Programming
- Computer languages history
- About 2500 Computer Languages, Past and Present
- Computer language shootout
- Minix: Linuxi inspiratsiooniks olnud mini-UNIX
- Unix history
- 10. Tarkvara arhitektuur ja paradigmad.
- Lecture material: itsissejuhatus9o.PPT, itsissejuhatus9o.pdf.
- Additionally: Tutvuda:
- 11. Võrgutarkvara paradigma. Interneti baastehnoloogia.
- Lecture material: Itsissejuhatus10o.PPT, Itsissejuhatus10o.pdf.
- Additionally: Tutvuda:
- 12. Võrgutarkvara paradigma. Interneti rakenduste tehnoloogia.
- Lecture material: itsissejuhatus11o.PPT, itsissejuhatus11o.pdf.
- Additionally: Tutvuda lühidalt:
- Loengunäite variant: http://java.sun.com/docs/books/tutorial/networking/urls/readingURL.html
- http://www.w3schools.com/.
- http://www.w3c.org/.
- XMLHttpRequest Demo (async javascript)
- Loengunäide: Tiny www server
- Greenspuni vana kuulus Panda book
- Apache
- veel näiteid: kalkulaator, css, javascript, XML ja XSL näited
- 13. Rekursioon. Funktsionaalne ja loogiline programmeerimine.
- Lecture material: itsissejuhatus12o.PPT, itsissejuhatus12o.pdf.
- Additionally: Vaata ja proovi näiteid modifitseerida:
- Huvi korral installeeri ja proovi Prologi: SWI Prolog.
- 14. Algoritmid. Keerukus ja lahenduvus.
- Lecture material: itsissejuhatus13o.PPT, itsissejuhatus13o.pdf.
- Additionally: Huvi korral vaata TSP programmi Java lähtekoodi
- 15. Tehisintellekt.
- Lecture material: itsissejuhatus14o.PPT, itsissejuhatus14o.pdf.
- Huvi korral loe Matrix, Skynet ja sõda teispoolsusega, klassiku ülevaadet tehisintellektindusest, Dennetti artikleid, tuntud õpikut, ajakirja JAIR.
- 16. IT äri, IT projektid.
- Lecture material: itsissejuhatus15o.PPT, itsissejuhatus15o.pdf.
- Lisaks: mitmed kohustuslikud artiklid, vt kas powerpointist või sellel lehel allpool, :kohustuslike lugemismaterjalide peatüki allosas.
- 17. Varu.
Examples of previous exams (to practice)
NB!
- The questions will be different
- More difficult tasks give you more points than the easy ones:: most difficult 10-15 points, easy ones: 6-9 points. Altogether 100 points
Obligatory textbooks
To pass the course one must read the the following material. NB! The amount of obligatory material may be increased : follow the list
- History from the Beginnings - 1981 (piisab kiirest läbivaatamisest, vajalik materjal loengutes): Bebop BYTES Back
- History 1945-1990 (piisab kiirest läbivaatamisest, vajalik materjal loengutes): The Computer Museum.
- History 1947-1999 (see ei ole otseselt kohustuslik): autor Ken Polsson.
- Vana jutt infoühiskonnast: T.Tammet 1995-1996: "Teejuht võrgumeediasse" toorik.
- About Electronic Democray and State:
- T.Tammet, 2001: E-valimiste analüüs
- Loogika ainest ja ajaloost: T.Tammet: Loogika aine ja ajalugu: sissejuhatus T.Tamme, T.Tammeti ja R.Prangi loogikaõpikule "Mõtlemisest tõestamiseni".
- Opsüsteemidest laiemas kontekstis: Kohustuslik on algusosa (esimene 1/4) pikast artiklist In the Beginning was the Command Line
- Kohustuslikud artiklid IT äri ja juhtimise teemal on järgmised. Neid "ära õppida" vms pole vaja, piisab lihtsast mõnusast kiirest läbilugemisest:
- Paul Graham: How to start a startup?
- Paul Graham: Great hackers
- Paul Graham: Why smart people have bad ideas
- Joel Spolsky: Esileht: http://www.joelonsoftware.com/
- Joel Spolsky: Strateegia: http://www.joelonsoftware.com/articles/fog0000000074.html
- Joel Spolsky: Funktsionaalsuse spec:Painless Functional Specifications (1 osa): http://www.joelonsoftware.com/articles/fog0000000036.html
- Joel Spolsky: IT Work Arrangements : 12 steps: http://www.joelonsoftware.com/articles/fog0000000043.html
- Joel Spolsky: Project Planning: Painless Software Schedules: http://www.joelonsoftware.com/articles/fog0000000245.html
- Greenspun: Lihtsalt loe sisukorda, tervet raamatut pole vaja!: http://philip.greenspun.com/panda/
- Greenspun: Future peatükk: http://philip.greenspun.com/panda/future
- Greenspun: Humor: http://philip.greenspun.com/careers/
Very useful material: read it!
- Read Daily: http://www.news.com
- Read Daily: http://www.slashdot.org
- Software management, about twice a month: http://www.joelonsoftware.com
- Paul Grahami essays, new ones less often.
- Jargon lexikon and the New Hacker's Dictionary.
- The cathedral and Bazaar
- Gnu manifests
- David Eck: Labs and Applets for "The Most Complex Machine".
If it all seems too easy, then:
- Loe läbi enamus Paul Grahami esseid.
- Loe läbi Steven Raymondi raamat (NB! algajatel raske õieti mõista :-) The Art of Unix Programming
- Loe läbi väga lõbus ja hariv raamat: Philip Greenspuni Guide to Web Publishing. Kui meeldis, uuri järgi, mida Greenspun veel teeb (sh loe teisi raamatuid ka) ja kuidas sündis ja suri tema kuulus firma.
- Vaata, mis võrgust (loodetavasti) edaspidi saab: Semantic Web
- Loe hoolega läbi (ei ole üldse kohustuslik ja algajatele mittesoovitav) ja tee harjutusi ka: Computer Systems: a programmers perspective toorikvariant.
- Loe läbi hulga Daniel Dennetti esseid
- Proovi õppejõu tehisintellektisüsteem Gandalf installeerida (Unix või Windows+cygwin) ja mängi sellega. Proovi ka Otterit (lihtsam, aga nõrgem klassikaline süsteem). Kuidas, loe siit ja siit ja siit.
- Tee omal käel ette läbi terve Programmeerimise põhikursus (peaasi: tee kõik harjutustööd: programmeerimise õppimiseks ainus viis on palju programmeerida :-)
- Õpi assembleris programmeerima (üpris ebapraktiline oskus, aga hästi hariv :-)