Top Banner
Alvar Lumberg 10 years in SW development active Agile proponent for 5 years and XP practitioner Helped start two online communities: minut.ee cafe.ee hiking, bicycle touring, photography
78
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: History of ICT @ DDVE

Alvar Lumberg

10 years in SW developmentactive Agile proponent for 5 years and XP practitioner

Helped start two online communities:

minut.eecafe.ee

hiking, bicycle touring, photography

Page 2: History of ICT @ DDVE

Introduction to Information and

Communication Technology

or actually...

Page 3: History of ICT @ DDVE

Brief history of IT

Software platforms

Hardware platforms

Deployment

Page 4: History of ICT @ DDVE

Software development methodology

... or ...

How to Build Working Software And Keep Your Customers Happy

Page 5: History of ICT @ DDVE

A little bit of programming

Page 6: History of ICT @ DDVE

Software platforms

Hardware platforms

Deployment

Brief history of IT

Page 7: History of ICT @ DDVE

Charles Babbage (1791-1871)

Tried to build the first automated computer - the “difference engine“...

Invented the first programmable computer -the “analytical engine”...

...but neither was built until much laterbecause parts couldn't be manufactured

at that time

Page 8: History of ICT @ DDVE

Herman Hollerith (1860-1929)

In 1889 he developed an electrical machine to quickly tabulate data on punch cards...

...that was successfully used for the 1890 US Census, which was completed in a year (in contrast, 1880 Census took 8 years)

His Tabulating Machine Company merged with 3 others in 1911 to form a company that later became IBM

Page 9: History of ICT @ DDVE

Alan Turing (1912-1954)

Turing is considered to be the first computer scientist

Described an a(utomatic)-machine in 1936 thatis now known as the Turing machine

Page 10: History of ICT @ DDVE

Von Neumann architecture (1945)

still shared by all well-known processors to this date

Page 11: History of ICT @ DDVE

Analog computers

slide rule, astrolabe, rangekeeper, MONIAC, …

Development peaked during WW II (and died after)

Page 12: History of ICT @ DDVE

Rise of The Digital

Atanasoff-Berry Computer (ABC), 1937

Zuse Z3, 1941

ENIAC, 1946

Page 13: History of ICT @ DDVE

Integrated circuits

First successful demo of an IC by Jack Kilby 1958

Made production of digital computers cheaper and more reliable by an order of magnitude

Page 14: History of ICT @ DDVE

Moore'sLaw

Page 15: History of ICT @ DDVE

Mainframes (50s .. )

Big computers (room-size) used in big corporations and government agencies

Initially built from vacuum tubes, quite unreliable

Multi-user, connected to multiple terminals

Have evolved into servers running hundreds of virtual computers

Page 16: History of ICT @ DDVE

Minicomputers (60s .. 90s)

“mini” (fridge-sized) compared to

mainframes

Usually single user, meant for solving

complex problems (early CAD)

Slowly replaced by PCs during the 90s

Page 17: History of ICT @ DDVE

Intel 4004 (1971)

First modern microprocessor

Hard to design, easy & cheap

to produce

Page 18: History of ICT @ DDVE

Xerox Alto (1973)

First computer with a GUI, a mouse and

a “desktop” concept

Not a commercial product but a

proof-of-concept

Inspired Steve Jobs to create Lisa and

Macintosh

Page 19: History of ICT @ DDVE

Altair 8800 (1975)

The true start of home computer

revolution

Had it all – programming environment,

floppy drive onboard memory

Altair BASIC by Micro-Soft

Page 20: History of ICT @ DDVE

IBM PC (1981)

More or less the great grandfather

of the PC we know today

Open platform – peripherals from

other vendors welcome &

encouraged

Design was soon copied by others

Time Magazine named “the computer” its “Man of the Year” a year later

Page 21: History of ICT @ DDVE

Osborne 1 (1981)

First commercially successful

portable (“draggable”) computer

Soon surpassed by portable PC clones and

other competitors with larger screens

Page 22: History of ICT @ DDVE

A really brief history of the Internet

Page 23: History of ICT @ DDVE

1969 ARPANET founded (4 nodes)RFC 1 published (Request for Comment)

Page 24: History of ICT @ DDVE

1971 E-mail invented

Page 25: History of ICT @ DDVE

1973 ARPANET goes internationalEthernet outlined

Page 26: History of ICT @ DDVE

1976 Queen Elizabeth sends an e-mail

Page 27: History of ICT @ DDVE

1982 internet defined as networks connected using TCP/IP and Internet as connected internets

Page 28: History of ICT @ DDVE

1983 Name server developed

Page 29: History of ICT @ DDVE

1984 Number of hosts breaks 1 000

Page 30: History of ICT @ DDVE

1988 “The” Internet worm is born, affecting 6 000 of 60 000 active hosts

Page 31: History of ICT @ DDVE

1989 Number of hosts goes from 80 000 to 160 000 in less than a year

Page 32: History of ICT @ DDVE

1990 ARPANET ceases to existFirst commercial dial-up provider The World(world.std.com, still alive)

Page 33: History of ICT @ DDVE

1990 ARPANET ceases to existFirst commercial dial-up provider The World(world.std.com, still alive)

Page 34: History of ICT @ DDVE

1991 Wide Area Information Servers (WAIS)Large bodies of knowledge, first indexing and search tools

Page 35: History of ICT @ DDVE

1991 WWW released

Page 36: History of ICT @ DDVE

1993 2 million hosts, 600 WWW sitesMosaic – first browser with a GUI

Page 37: History of ICT @ DDVE

1994 3 million hosts, 10 000 WWW sitesMosaic – first browser with a GUIYou can order pizza from Pizza Hut on-lineFirst internet bank goes on-lineJeff Bezos writes the business plan for amazon

Page 38: History of ICT @ DDVE

1995 6.5 million hosts, 100 000 WWW sitesWWW becomes service with greatest traffic

Page 39: History of ICT @ DDVE

1996 tv.com sold for $15000Browser wars begin (Netscape vs Microsoft)

Page 40: History of ICT @ DDVE

1999 Peter Merholz coins the word blog, although what we call blogs had been around since 1994

Page 41: History of ICT @ DDVE

2000 DOS attack on Yahoo! and eBay

Page 42: History of ICT @ DDVE

2001 Court shuts down NapsterForwarding email becomes illegal in Australia – personal copyright infringement

Page 43: History of ICT @ DDVE

http://www.stedmundsbury.gov.uk/sebc/live/egov.cfm

Internet bench launched 10:43am 6 August 2001

Page 44: History of ICT @ DDVE

2002 Having a blog becomes hip

Page 45: History of ICT @ DDVE

2003 RIAA sues ~250 people for distributing music

Page 46: History of ICT @ DDVE

2005 Estonia offers Internet voting for local elections

Page 47: History of ICT @ DDVE

2006 Youtube.com launches

Page 48: History of ICT @ DDVE

2006 Estimated 92 million websites online

Page 49: History of ICT @ DDVE

2007 1.114 billion people use the InternetGoogle becomes the most valuable global brandEstonia offers online parliament elections

Page 50: History of ICT @ DDVE

2009 US Government asks Twitter to postponeplanned maintenance as Iranian protestors are using it to communicate

Page 51: History of ICT @ DDVE

2010 First live Internet link to low orbit – ISS astronaut T.J. Creamer updates his Twitter account

Page 52: History of ICT @ DDVE

2012 First projects founded by DDVE students go live, taking the world by storm

Page 53: History of ICT @ DDVE

Brief history of IT

Software platforms Deployment

Hardware platforms

Page 54: History of ICT @ DDVE

Blurring lines between device categories – a device for every need and taste

Page 55: History of ICT @ DDVE

PCs, laptops, netbooks

+ Most powerful (games, CAD)+ Lots of screen estate (productivity & office tools,

specialized software)

- Not really portable (no use for location-based and always-on stuff)- Different OSs

http://en.wikipedia.org/wiki/Usage_share_of_operating_systems#Desktop_and_laptop_computers

Windows MacOS + iOS Linux + Android Other (Symbian, Blackberry etc)0

10

20

30

40

50

60

70

80

90

% of web clients

Page 56: History of ICT @ DDVE

Smartphones (& tablets)

iPhone/Android made mobile phones a serious platform

Even graphics performance almost on par with prev gen game consoles

+ Tends to be with you + Good battery life compared to netbooks/notebooks

- Different OSs- Different hardware capabilities even on the same platform

Page 57: History of ICT @ DDVE

Cool stuff

Kinect

Flex screens (Samsung AMOLED)

...

Page 58: History of ICT @ DDVE

Hardware platformsBrief history of IT

DeploymentSoftware platforms

Page 59: History of ICT @ DDVE

Front-end

Back-end

Page 60: History of ICT @ DDVE

Web

+++ Very common standard (PC, tablets, phones, STB+TV)+ Very low barrier for entry (text editor + browser)

- Differences in browsers- Visual hard to do well (skills and experience needed)

Google Apps, Facebook

Page 61: History of ICT @ DDVE

RIA (Flash, Silverlight)

+ Easy to do web/desktop apps+ Good UI design tools+ Identical picture in every browser

--- Users really don't like RIA on desktop (Evernote, TweetDeck)- Proprietary tech & tools- Users must install extra browser plugins

TweetDeck, SlideRocket

Page 62: History of ICT @ DDVE

Native

+ Best desktop integration+ Fast, lightweight

- Many platforms to support (however, situation is improving)- Deployment complicated (environment not under your control)- Hard to distribute new versions

Dropbox, EverNote

Page 63: History of ICT @ DDVE

Front-end

Back-end

Page 64: History of ICT @ DDVE

Server platforms 2011

Two Unix servers per 1 MS server, most of it Linux distros

Language/platform usage:

PHPASP.NETJavaColdFusionPerlRubyPython

Page 65: History of ICT @ DDVE

PHP

+ Quick to start with+ Multitude of ready components (blog engines, wikis, forums)

+/- Language and a framework at the same time

- scaling up needs skills and experience- no support for Unicode- development stalling

Wordpress, Facebook

Page 66: History of ICT @ DDVE

ASP.NET

+ Good tooling support

+/- Lack of choice (the MS way of web programming)

- very proprietary difficult to run on non-MS servertools inevitably cost money

- not open source, development depends on vendor

Page 67: History of ICT @ DDVE

Java

+ VERY mature, supported on all platforms, loads of re-usable libraries

+ very scalable+ very good IDEs available

- a bit heavyweight & verbose, has an “enterprise” feel to it- out of fashion (community support possibly dropping)- doesn't develop very fast

Google Apps, oprah.com, Sony Ericsson,Swedbank, Elion, Eesti Energia

Page 68: History of ICT @ DDVE

Adobe ColdFusion

+ good tools+ language easy to learn+ rapid development

- very expensive - not open source, development depends on vendor- heavyweight, resource-hungry

MySpace, eBay, HP

Page 69: History of ICT @ DDVE

Perl

+ very powerful language

- very complicated language

Slashdot

Page 70: History of ICT @ DDVE

Python

+ language reasonably easy to learn+ robust, scalable, used in big projects

- smaller ecosystem than Java, PHP, Ruby

OpenERP, Trac, many Estonian government sites

Page 71: History of ICT @ DDVE

Ruby

+ enables you to get going very quickly+ “new” kid on the block+ less code, more functionality

- power makes it easy to mess up badly- hard to maintain big projects- good extension possibilities need a specific mindset

Twitter, Basecamp, Geni

Page 72: History of ICT @ DDVE

Software platforms

Hardware platformsBrief history of IT

Deployment

Page 73: History of ICT @ DDVE

Getting a native app to your customers

For mobile:- iTunes App Store, Android Market

For desktop:- good old installer model, downloaded or hard media

Either way modern apps can self-update over the net, decreasingversion rollout issues

However, no way to force users to upgrade – need to supportold client versions

Page 74: History of ICT @ DDVE

Getting a web app to your customers

Server in the corner

+ full control (security, maintainability)+ cheaper on large scale

- full control (handling backups, hardware issues)- high up-front cost- more difficult to scale

Page 75: History of ICT @ DDVE

Getting a web app to your customers

Deployed to the cloud

+ easy to scale incrementally+ mundane maintenance tasks offloaded

- sensitive data sometimes cannot be trusted outside- more expensive for long-term large scale solutions

Amazon EC2 & S3, multitude of other VPS providers (zone.ee)

Page 76: History of ICT @ DDVE

Logical building blocks of a web app (3-tier)

Back-end (business logic)

Database

Front-end (GUI)

Page 77: History of ICT @ DDVE

Deployment model of a web app

Databaseserver

the Net

server

Page 78: History of ICT @ DDVE

Deployment model of a web app

Databaseserver

Databaseserver

Databaseserver

the Net

serverserver server

Server cluster

Database cluster

Load balancer