Linkit
- Ohjelmistoja
- WWW-selaimia
- Oppaita
- Muita WWW-ohjelmointikursseja
- Python
- Kirjoja
- Ajax ja Javascript
- XHTML-sivuja
- CSS-sivuja
- Mobiili
- Suunnittelu
- Unix
- Perl
- DOM
- MVC (Model-View-Controller) design pattern
- Kurssilinkit
- Luennot
- Demot
Täältä löydät linkkejä mielenkiintoisiin lisämateriaaleihin ja tarvittaviin ohjelmistoihin.
Ohjelmistoja
- Eclipse PDT
- HTML-Kit - HTML-editori Windowsille
- SSH-ohjelmia
Firefox-laajennuksia
WWW-selaimia
Oppaita
Ohjeita ja oppaita eri tekniikoihin ja ohjelmointikieliin:
Muita WWW-ohjelmointikursseja
- Hypermedian ohjelmointi - Tampereen teknillinen yliopisto
- WWW-sovelluskehitys 2 - Jyväskylän ammattikorkeakoulu
- WWW vuorovaikutteisten hajautettujen ohjelmistojen toteutusalustana - seminaari teknillisessä korkeakoulussa
- WWW Applications
Python
- Python course in Bioinformatics
- Python 2.3 quick reference
- wsgi
- Web Python tutorial
- Werkzeug
- Web development with Python
Kirjoja
- Software Engineering for Internet Applications
- SQL for Web Nerds
- Apple Human Interface Guidelines
- Philip and Alex's Guide to Web Publishing
Ajax ja Javascript
- JavaScript Libraries and Patterns: Yahoo! Does AJAX
- Two kinds of AJAX: HTML++ vs Client / SOA
- The Future of JavaScript: an Update from Brendan Eich
- Javascript-kirjastoja
- All Aboard AJAX, HTML Canvas, and the Supertrain
- MVC and web apps: oil and water
- Slide Shows
- Yahoo! User Interface Library
- JavaScript ja DHTML
- JavaScript-opas
XHTML-sivuja
CSS-sivuja
- WDG:n CSS1-referenssi - selkeä lista CSS1:n tukemista ominaisuuksista ja mahdollisista arvoista
- W3C:n CSS-sivut - mm. spesifikaatitot ja listaa toteuksista
- CSS Zen Garden - yksi dokumentti, useita hienoja css-tyylejä
- CSS / edge - CSS-kikkoja
- PVII CSS <LAB>
- CSS1 and CSS2 browser support info - taulukot selaintuelle (IE6, NS7, Op7), ei selityksiä
- RichInStyle.com bug guide- vanhemmat selaimet
- CSS Bugs and Workarounds - vanhemmat selaimet
- Printing a Book with CSS: Boom!
Mobiili
- Mobile Web Best Practices
- Nokia Guidelines for XHTML-MP on Series 60 (PDF)
- Browsing on Mobile Phones (PDF)
- Openwave Phone Simulator
- XHTML-MP Style Guide
- Best Practices in XHTML Design
- XHTML Tutorial
Suunnittelu
Unix
Perl
- A Perl Course
- Introduction to Perl 5
- The Idiot's Guide to Solving Perl CGI Problems
- Picking Up Perl
- Beginner's Guide to CGI Scripting with Perl
- Perl
- CGI Programming 101
- CGI security
DOM
MVC (Model-View-Controller) design pattern
- The Model-View-Controller (MVC) Design Pattern for PHP
- php.MVC
- PHP MVC Frameworks
- The no-framework PHP MVC framework
- Mojavi
Kurssilinkit
Linkit päivittyvät sitä mukaa kun luentosivut ovat kunnossa.
Luennot
- XHTML-elementit, CSS-perusteet ja kurssin järjestelyt - Luento 1
- CSS (Cascading Style Sheets) - Luento 2
- Python ja CGI-ohjelmointi - Luento 3
-
Python ja CGI-ohjelmointi jatkuu ja 1. viikkotehtävä - Luento 4
- Malliratkaisu
- GET- tai POST-metodilla
- HTTP (HyperText Transfer Protocol)
- GET
- Connection
- Accept
- Accept-Charset
- Accept-Encoding
- Accept-Language
- Host
- Referer
- User-Agent
- Statuskoodi
- Date
- Accept-Ranges
- ETag
- Server
- Vary
- Content-Length
- Content-Type
- Last-Modified
- Web-Sniffer
- HTTP Made Really Easy
- How the web works
- HTTP trace
- cgi-kirjasto
- lomake.cgi
- lomake.py
- cgi.escape
- xml.sax.saxutils.quoteattr
- urllib.quote
- Sanakirja (dict)
- Monikot (tuple)
- Joukko (set)
-
mod_python - Luento 5
- mod_pythonin
- Apache
- .htaccess
- autentikointi
- Server Side Includes (SSI)
- CGI
- Suodattimet
- Käsittelijät
- Automaattinen sisällön valinta
- Oletusmerkistö ja -mediatyyppi
- Omat virheilmoitukset
- Edelleenohjaus
- mod_rewrite
- content negotiation
- http://www.apache.org/docs/mod/mod_include.html
- http://www.mit.jyu.fi/opiskelu/seminaarit/ohjelmistotekniikka/cgi/#Heading13
- HTTP:n location
- Monimutkaisemmat edelleenohjaukset
- virhemalli
- lähdekoodi
- Apache 2.2 moduulit
- mod_python
- mod_python Apache Configuration Directives
- http://users.jyu.fi/~tjlahton/python/testi.py
- lomake.html
- Request
- FieldStorage
- psp - Python Server Pages
- HTTP-virheen
- apache
- Request
- esimerkki
- lähdekoodi
- Validointi ja dynaamiset lomakkeet - Luento 6
-
Evästeet, sessiot ja tiedostot - Luento 9
- Cookie
- open()
- fcntl.lockf
- templateja
- http://users.jyu.fi/~tjlahton/python/luento7/cookie.psp
- Lähdekoodi
- http://users.jyu.fi/~tjlahton/python/luento7/tiedosto.psp
- Lähdekoodi
- http://users.jyu.fi/~tjlahton/python/luento7/tiedosto2.psp
- Lähdekoodi
- http://users.jyu.fi/~tjlahton/python/luento7/_sessions.txt
-
Evästeet, sessiot ja tiedostot sekä kolmas viikkotehtävä - Luento 8
- Mallivastaus v1
- Mallivastaus v2
- http://users.jyu.fi/~tjlahton/python/luento8/htaccess
- http://users.jyu.fi/~tjlahton/python/luento8/basic_auth.py
- Lähdekoodi
- http://users.jyu.fi/~tjlahton/python/luento8/sessions.py
- Lähdekoodi
- http://users.jyu.fi/~tjlahton/python/luento8/autentikointi.py
- Lähdekoodi
- http://users.jyu.fi/~tjlahton/python/luento8/ohjaus.py
- Lähdekoodi
- http://users.jyu.fi/~tjlahton/python/luento8/pickle_malli1.py
- Lähdekoodi
- http://users.jyu.fi/~tjlahton/python/luento8/pickle_lataus.py
- Lähdekoodi
- http://users.jyu.fi/~tjlahton/python/luento8/tiedosto.py
- Lähdekoodi
- the md5 module
- MD5 Passwords
-
Tietokannat ja Python - Luento 9
- Tietokannat ja tiedonhallinnan perusteet
- Python Database API Specification v2.0 (PEP249)
- sqlite3
- sqlite3
- PySqlite
- PyGreSQL
- MySQLdb
- cx_Oracle
- pymssql
- pyodbc
- con.text_factory
- con.row_factory
- valmisteltuja kyselyjä
- execute
- fetchone
- fetchmany
- fetchall
- SQL As Understood By SQLite
- ROWIDs and the INTEGER PRIMARY KEY
- Controlling Transactions in SQLite
- Connection pool
- SQLAlchemy
- SQL Relay
- What is the best way to make persistent connections to a database?
- testi.py
- lähdekoodi
- .htaccess
- pysqlite usage guide
- Web development tips: Use antipool.py for threaded Python database access
- The Process/Interpreter Model
- Modpython articles
- Python ja tietokannat sekä 4. viikkotehtävä - Luento 10
-
JavaScript ja DOM - Luento 13
- ATF
- JSEclipse
- Firebug
- console.log(message)
- ECMAScript
- Javascript 1.5
- Javascript 1.6
- Javascript 1.7
- Javascript 1.8
- Javascript-yhteensopivuus
- JavaScript - Mozilla Developer Center
- A re-introduction to JavaScript
- Core JavaScript Guide
- JavaScript syntax - Wikipedia
- Three common mistakes in JavaScript
- Math
- Merkkijonot
- length
- charAt(index)
- indexOf(char)
- substr(start, length)
- parseInt
- parseFloat
- prototyyppi
- Private-attribuutteja ja -metodeja
- setInterval
- setTimeout
- Operaattorit: typeof
- addEventListener
- Javascript tutorial - DOM Events
- DOM Level 3 Event flow
- AddEvent() - Follow Up
- Flexible Javascript Events
- Advanced event registration models
- Node
- getElementById
- documentElement
- body
- getElementsByTagName
- parentNode
- firstChild
- lastChild
- childNodes
- nextSibling
- createElement
- createTextNode
- appendChild
- insertBefore
- removeChild
- replaceChild
- innerHTML
- nodeValue
- value
- value
- selectedIndex
- textContent
- nodeName
- setAttribute
- getAttribute
- className
- style
- DOM CSS Properties
- CSS Property Index
- getComputedStyle
- Gecko DOM Reference
- DOM Tool
- W3C DOM
- DOM HTML
- Viikkotehtävä 6 ja DOM - Luento 14
-
Ajax (Asynchronous JavaScript and XML) - Luento 13
- Google Maps
- Gmail
- Google Docs
- Jyväskylän karttapalvelu
- XMLHTTPRequest
- Working Draft
- jQuery
- Comparison of layout engines - Wikipedia
- Scriptaculous
- Ajax-operaatioille
- Tapahtumien rekisteröinti
- http://www.prototypejs.org/
- Making Ajax Work with Screen Readers
- Accessible Web 2.0 Applications with WAI-ARIA
- MochiKit
- Open Rico
- Dojo Toolkit
- Yahoo! UI Library
- Google Web Toolkit
- DWR
- mootools
- Javascript Toolkit Comparison
- Exploring Ajax Runtime Offerings
- Ajax Libraries
- Ajax Frameworks
- Mastering Ajax, Part 1: Introduction to Ajax
- Mastering Ajax, Part2
- Dynamic HTML and XML: The XMLHttpRequest Object
- Ajax Matters
- Ajax: A New Approach to Web Applications
- Ajax (programming)
- Ajaxian
- Ajax Patterns
- SAJAX
- Ajax Mistakes
- XMLHTTPRequest & Ajax Working examples
- Very Dynamic Web Interfaces
- AJAX and Accessibility
- Why Ajax Sucks (Most of the Time)
- Basic AJAX examples
- Ajax Tutoria: Ajax What Is It Good For?
- Introducing JSON
- A Simpler Ajax Path
- Getting Started with Ajax
- Rasmus' 30 second AJAX Tutorial
- Rich Ajax slide shows with DHTML and XML
- AJAX Applications vs Server Load?
- AJAX/DHTML Tutorial: Should I Render My UI On The Server or the Client
- 10 Places You Must Use Ajax
- The SVG Terminal
- Suckerfish HoverLightbox
- Document Object Model (DOM) Level 3 Load and Save Specification
- Viikkotehtävä 6 ja Ajax - Luento 14
- Python DOM ja Templatet - Luento 15
- Viikkotehtävä 7 ja välimuistit - Luento 16
- Viikkotehtävä 8 palautus - Luento 17
Demot
- Lomakkeet ja CSS - Demo 1
- Python perusteet - Demo 2
- Apache ja mod_python - Demo 3
- Sessiot, evästeet, autentikointi ja tiedostot - Demo 4
- Tietokannat - Demo 5
- Javascript ja DOM - Demo 6
- Ajax - Demo 7
-
Tietojen hakeminen muilta sivuilta ja palveluista - Demo 8
- A List Apart
- http://www.alistapart.com/site/rss
- xml.dom.minidom
- urllib
- ongelmia myös entiteettien kanssa
- luentoesimerkistä
- tiedeuutisten pääsivulta
- tagsoup...
- HTML tidy
- Tidy your HTML
- Google Maps API
- Googlen API-dokumentaation
- Lisää karttaan navigointikontrolleri, zoomausvalinta ja karttatyyppivalinta
- Lisää kartalle marker-kuvake
- raahattava (draggable)
- Kokeile löytääkö Google käyttämäsi koneen sijainnin
- geokoodata
- reverse geocoding
- Google Static Maps API
- Google Charts
- Getting Started With Charts Overview
Käyttäjien kommentit