Introduction to Information Technology
...history, trends, basics, paradigms, business.
Course code: ITX0025
Teacher: Endre Domiczi
Contact: emddom@gmail.com Subject should contain the string "itx0025"
Tel: 53485178 (SMS preferred)
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
Link to other course kept by EDo http://www.lambda.ee/index.php/Itx8065 i.e. http://www.lambda.ee/index.php/Software_Development_and_System_Programming
Latest News
- 5.11.2010 & 12.11.2010: :
Siyi Ma
Study Consultant
Dean’s office, room 247
School of Economics and Business Administration
Tallinn University of Technology
Akadeemia tee 3, Tallinn 12618, Estonia
Email: siyi.ma@tseba.ttu.ee
Tel: +372- 620 3940
Fax: +372- 620 3946
TSEBA home page: http://www.ttu.ee/tallinn-school-of-economics-and-business-administration
will be present.
She will also bring Evaluation sheets so that it will be possible to give feedback about the course now.
It will be also done at the end of the semester.
- 17.09.2010: Homework:
- check out the homework at the other part of the class webpage [Homework assignments]
- 10.09.2010: Homework:
- solve the problem found at the bottom of [Lesson 6: Making a turn]
- 03.09.2010: Homework:
- read the PPT or PDF presentation at Introduction : Basics of Computers and Programming.
Sometimes the download doesn't succeed (see also lecture day) then please retry after a while. - From section (N)obligatory textbooks
- find and install the DIY Calculator
- download the Official DIY Calculator Data Book (PDF file)
- read the PPT or PDF presentation at Introduction : Basics of Computers and Programming.
- You can give suggestions for the course by clicking "here" (you need a Google Account/gmail address)
27.08.2010:
- Construction work started on the new web page
Lecture: Amount, Time and Location, Scores
Lecture: Friday 8.00 - 9.30 at V-301 on week: odd
Lab: Friday 8.00 - 9.30 at IT-213D on week: even | Groups: TVTB11, TVTB12
The course ends with an EXAM. The Exam is in writing, two or more hours.
There will be an Evaluation/Exam in December (if allowed) and one or two in January.
(the exact dates will be announced later)
Exam, Preparation, Evaluation, Results
Course description taken from OIS
- One part of the exam is to "analyze" programs like Simple DIY Calc asm programs from the presentations
- and the LAB exercises
- Another part of the exam will be about logical functions and how they can be implemented with simple logic gates.
- To prepare please practice on the site of Christian Gottschall:
- Another part of the exam will be based on Logic circuits by D.Eck
- The "fairy tale", i.e. the part about possible history questions can be found here:
Student Presentations & Rewards
- 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, max. 15 minutes (maybe 20).
- topics can be selected from materials on this page that are prefixed with "Additionally:" or you can come up with your own, but then you should agree on it in advance with me
- choose a topic that you understand; you should be able to answer some questions related to the presentation
- do not read only, but present
- Valuable comments during lectures will also be rewarded
- E.g. <Solution of Robot-problem>: by <X Y> (5 points)
- Student presentations
- E.g. <PQ> & <R S>: <Presentation Title> (both of them receive 20 points)
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.
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.
Introduction : Basics of Computers and Programming.
- Lecture material: Intro2it_1_edo.PPT, Intro2it_1_edo.pdf.
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:
- Computer History - lecture by Prof. Dr. Miroslaw Malek
- read and also play with the : Data Representations Applet (originally written by David Eck).
- Computer Origins and the Defense of the Faith by John Warwick Montgomery
"Medieval" history : from WWII till beginning of the 60's. Computers and programming. Languages and architectures. Integrated 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
"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
"Medieval" history (continued): 70ś . MicroComputers, Personal Computers.
- Lecture material: Intro2it_5_edo.pdf.
- Additionally:
- Colossal Cave (adventure) textual adventure game
- Magnavox odyssey
Recent history: 80's till today. IBM PC, Macintosh, new and old operating systems. Special computers, workstations, essential software. Saga summary
- Lecture material: intro2it_6_edo.PPT.
- Additionally: Apple Macintoshi reklaamfilm:
Basic principles of computers, programming languages.
- Lecture material: Intro2it_7_edo.ppt.
- Additionally:
- Get a bit acquainted with the following sites:
- D.Eck, parts of this: Eck labs (can take from here as separate applications). NB! Read on your own, try and do 1-2 exercises from each part
Programming languages continued. Operating Systems.
- Lecture material: Intro2it_8_edo.ppt.
- Additionally: Eck labs cont'd: Read on your own, try and do 1-2 exercises from each part:
- Obligatory reading (
- Obligatory is the first 1/4 of article In the Beginning was the Command Line
- Suggested reading:
Information Systems
- Based on:
- Bennett, McRobb and Farmer:
- Object Oriented Systems Analysis and Design Using UML, (3rd Edition), McGraw Hill, 2005.
- Chapters 1-3
Object-Orientation, Modeling in UML
- Based on:
- Bennett, McRobb and Farmer:
- Object Oriented Systems Analysis and Design Using UML, (3rd Edition), McGraw Hill, 2005.
- Chapters 4-5
Software architecture and paradigms.
- Lecture material: SW Arch & Paradigms.
- Additionally: Become acquainted with:
Examples of exams from previous year (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
(N)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
- DIY material (obligatory)
- The Definitive Guide to How Computers Do Math: Featuring the Virtual DIY Calculator by Clive Maxfield and Alvin Brown

- "DIY Calculator site"
- On the DIY downloadpage you will find the DIY Calculator's installer
- The Official DIY Calculator Data Booka 202 page (starting from 1 :-) PDF file
- Instructions for various Labs
- Workbench Lab instructions
- The Definitive Guide to How Computers Do Math: Featuring the Virtual DIY Calculator by Clive Maxfield and Alvin Brown
- Reeborg the robot as Lab exercise
(André Roberge, © 2004, 2005, 2006)
- History from the Beginnings - 1981 (worth a look, compulsory material: lecture): Bebop BYTES Back
- History 1945-1990 (worth a look, compulsory material: lecture): The Computer Museum.
- History 1947-1999 (it's not directly obligatory): author Ken Polsson.
- About Operating Systems in a broader context: The first 1/4 of the article is obligatory In the Beginning was the Command Line
- Obligatory articles from IT business and management. Not necessary to "learn" them, enough to have a fast read through:
- Paul Graham: How to start a startup?
- Paul Graham: Great hackers
- Paul Graham: Why smart people have bad ideas
- Joel Spolsky: Cover: http://www.joelonsoftware.com/
- Joel Spolsky: Strategy: http://www.joelonsoftware.com/articles/fog0000000074.html
- Joel Spolsky: Functional spec:Painless Functional Specifications (1. part): 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: Read only the Table of Contents, not needed to read the complete book!: http://philip.greenspun.com/panda/
- Greenspun: Future Chapter: 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:
- Read most of Paul Graham's essays.
- Read the book of Steven Raymondi (NB! difficult for beginners :-) The Art of Unix Programming
- Read through, very funny and educative book: Philip Greenspuni Guide to Web Publishing. If you feel like, find out what else Greenspun does (can read another book) and how this famous company was born and disappeared.
- Watch, what you can get from the net (hopefully): Semantic Web
- Read carefully (not at all obligatory and doesn't suit beginners) and also do the exercises: Computer Systems: a programmers perspective draft version.
- Read essays by Daniel Dennett
- Try to install Gandalf,an automated theorem proving, artificial intelligence system Gandalf (Unix or Windows+cygwin) and play around with it. Try also Otter (easier, but more classic system). How, read from here and from here and from here.
- Tee omal käel ette läbi terve Programmeerimise põhikursus (peaasi: tee kõik harjutustööd: programmeerimise õppimiseks ainus viis on palju programmeerida :-)
- Learn to program in assembler (fairly unpractical skill, but pretty educative :-)