Teppo Risnen Oulun yliopisto Teppo Risnen Teppo raisanenoulu

  • Slides: 30
Download presentation
Teppo Räisänen | Oulun yliopisto Teppo Räisänen Teppo. raisanen@oulu. fi Tietojenkäsittelytieteiden laitos, Oulun yliopisto

Teppo Räisänen | Oulun yliopisto Teppo Räisänen Teppo. raisanen@oulu. fi Tietojenkäsittelytieteiden laitos, Oulun yliopisto Facebook ohjelmointi OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Rakenne § § Taustaa Facebook osuuden rakenne Motivointi Facebook

Teppo Räisänen | Oulun yliopisto Rakenne § § Taustaa Facebook osuuden rakenne Motivointi Facebook ohjelmointi OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Taustaa § Teppo Räisänen, teppo. raisanen@oulu. fi § Projektipäällikkö

Teppo Räisänen | Oulun yliopisto Taustaa § Teppo Räisänen, teppo. raisanen@oulu. fi § Projektipäällikkö Oulun yliopistolla § Tietojenkäsittelytieteiden laitos 20004§ Väitöskirja: All for One, One for All - Knowledge Creation and Utilization in Web-based Communities § OAMK: ssa opettajaopintoja 2007 - § Vieraileva tutkija Stanfordin yliopistossa § Persuasive Technology lab § Tutkimusintresseissä Web 2. 0 ja Facebook OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook osuuden rakenne § Facebook osuus kestää 9 tuntia

Teppo Räisänen | Oulun yliopisto Facebook osuuden rakenne § Facebook osuus kestää 9 tuntia § Tavoitteena on oppia Facebook ohjelmoinnin perusteet § Hyvin pitkälle kurssilla aikaisemmin opitun soveltamista uudessa ympäristössä § Koostuu luennoista, harjoituksista ja harjoitustyöstä § 50% luennot + harjoitukset § 50% harjoitustyö § Harjoitustyö on oma Facebook applikaatio § http: //www. students. oamk. fi/~teraisan/K 1071 TK/ OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook osuuden rakenne Tunti Sisältö 1. ja 2. tunti

Teppo Räisänen | Oulun yliopisto Facebook osuuden rakenne Tunti Sisältö 1. ja 2. tunti Aloitus, Facebook ohjelmoinnin perusteet 3. tunti FBML 4. ja 5. tunti FBJS FQL, feedit, notifikaatiot 6. tunti Harjoitustyö 7. Ja 8. tunti Harjoitustyö 9. tunti Harjoitustöiden viimeistely, esitys, palaute OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook osuuden rakenne § § Tänään tutustutaan Facebook: iin

Teppo Räisänen | Oulun yliopisto Facebook osuuden rakenne § § Tänään tutustutaan Facebook: iin Harjoitellaan Web-hostaus Ensimmäinen Facebook applikaatio Aloitellaan FBML: ään tutustumista OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Motivointi OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Motivointi OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Motivointi § Sosiaalinen yhteisöpalvelu § Facebook, Inc, Palo Alto,

Teppo Räisänen | Oulun yliopisto Motivointi § Sosiaalinen yhteisöpalvelu § Facebook, Inc, Palo Alto, CA § Mark Zuckerberg § Perustettu 2004 § Alunperin Harvardin opiskelijoille § Seuraavaksi Bostonin alueen muut yliopistot, Ivy League, ja Stanfordin yliopisto. § Käyttäjämäärä kasvanut nopeasti § Tammikuu 2009 150 miljoonaa aktiivista käyttäjää § Syyskuu 2009 300 miljoonaa aktiivista käyttäjää OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Motivointi § Yli 300 miljoonaa aktiivista käyttäjää § 50%

Teppo Räisänen | Oulun yliopisto Motivointi § Yli 300 miljoonaa aktiivista käyttäjää § 50% aktiivikäyttäjistä käyttää Facebookia päivittäin § Nopeiten kasvava ikäluokka on 35 vuotiaat ja sitä vanhemmat § Keskivertokäyttäjällä 130 ystävää OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Motivointi § Ominaisuuksi § § § § Lisätä kavereita

Teppo Räisänen | Oulun yliopisto Motivointi § Ominaisuuksi § § § § Lisätä kavereita Lähetellä heille viestejä Päivittää statusta Päivittää profiilia Ladata kuvia Liittyä verkostoihin Lähettää pyyntöjä ja kutsuja § Kun käyttäjät käyttävät Facebookia hänen ystäville tulee tästä tieto OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook § Automated aggregation of information from friends’ interactions

Teppo Räisänen | Oulun yliopisto Facebook § Automated aggregation of information from friends’ interactions § Streams, feeds, stories, invites OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Tutustumistehtävä § Jos sinulla ei ole Facebook tunnusta, rekisteröi

Teppo Räisänen | Oulun yliopisto Tutustumistehtävä § Jos sinulla ei ole Facebook tunnusta, rekisteröi itsesi Facebook: iin § Tunnusta tarvitaan applikaatioiden tekemiseen § http: //www. facebook. com § Jos sinulla on jo Facebook tunnus, mieti mikä on oma suosikki-applikaatiosi. 1. Miksi pidät siitä? 2. Mitä Facebook ominaisuuksia siinä on? 3. Miksi aloit käyttämään sitä? OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Motivointi § Kun mietitään Facebook: ia ohjelmistokehittäjän näkökulmasta §

Teppo Räisänen | Oulun yliopisto Motivointi § Kun mietitään Facebook: ia ohjelmistokehittäjän näkökulmasta § Facebook on hyvä jakelukanava (300 miljoonaa aktiivista käyttäjää) § Käyttäjät tekevät jakelun kehittäjän puolesta § Invitet ja requestit § Facebook platform § Avoin ohjelmointirajapinta § Mahdollistaa nopean ja helpon ohjelmistokehityksen § Facebook: ssa voi myös tehdä rahaa § Mainoksilla, mikromaksut, tilaukset OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Motivointi Miksi Facebook toimii? Vastavuoroisuus (reciprocation) Ihmiset tekevät vastapalveluksia

Teppo Räisänen | Oulun yliopisto Motivointi Miksi Facebook toimii? Vastavuoroisuus (reciprocation) Ihmiset tekevät vastapalveluksia Sosiaalinen todiste (social proof) Ihmiset tekevät asioita mitä muutkin tekevät Tykkääminen (Liking) Ihmiset uskovat ihmisiä joista he tykkäävät OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Motivointi § Facebook platform § Julkaistiin 24, 2007 §

Teppo Räisänen | Oulun yliopisto Motivointi § Facebook platform § Julkaistiin 24, 2007 § Mahdollistaa sen, että ohjelmistokehittäjät voivat hyödyntää Facebookin toiminnallisuuksia § Avoin ohjelmointirajapinta: PHP, Java, Flash § Yli 350 000 aktiivista applikaatiota § Yli 250 applikaatiolla on yli miljoona kuukautista käyttäjää § Kehittäjä voi tienata jopa $50 000+ kuussa. OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Motivointi § Facebookissa voi käyttää eri mainosverkostojen mainoksia §

Teppo Räisänen | Oulun yliopisto Motivointi § Facebookissa voi käyttää eri mainosverkostojen mainoksia § Google Ad. Sense, Rock. You, Video. Egg § CPM – cost per mille § CPM = $0. 10 § Esim: sivulla on 1500 päivittäistä kävijää, joista jokainen katsoo 10 sivua => 15000 näyttöä päivässä § Tulot päivässä $1. 5, kuukaudessa $45 § 15 000 => $450, 150 000 => $4500, 1. 5 M => $45 000 § CPC – cost per click § Hinta määräytyy sen mukaan kuinka moni käyttäjä klikkaa mainosta § Voi olla kymmeniä dollareita / klikkaus OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitys § Facebook API: n käyttö § Nopeaa

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitys § Facebook API: n käyttö § Nopeaa ja helppoa § Helppo hyödyntää Facebook: in ominaisuuksia § Applikaation pystyy tekemään viikonlopun aikana § Mahdollisuus käyttäjämäärän todella nopeaan kasvuun § Muutamassa viikossa miljoonia käyttäjiä § Metriikoiden hyväksikäyttö § Kuinka monta päivittäistä installia, kuinka monta kutsua lähetetty, montako minuuttia kävijät viipyvät sivulla, moniko poistuu suoraan eka sivulta § Kehityksessä käytetään metriikkatietoa § Kokeillaan erilaisia variaatioita ja katsotaan mikä variaatio parantaa metriikoita eniten OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitys § Facebook API § Facebook: ssa on

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitys § Facebook API § Facebook: ssa on käytössä hivenen muokatut versiot HTML: stä and JS: stä § FB-Javascript (FBJS) ja FB-markup language (FBML) § Pieniä muutoksia Javascriptiin ja uusia tageja HTML: ään FBML: <fb: name uid="12345" /> <fb: wallpost uid=” 12345">Hei!</fb: wallpost> </fb: wall> OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitys OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitys OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitys <fb: fbml> <fb: request-form action="index. php" method="POST"

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitys <fb: fbml> <fb: request-form action="index. php" method="POST" invite="true" type="YOUR APP NAME" content="Your text goes here. <? php print htmlentities("<fb: req-choice url=”URL" label="Authorize My Application"") ? >" > <fb: multi-friend-selector showborder="false" actiontext="Invite your friends to use YOUR APP NAME. "> </fb: request-form> </fb: fbml> OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitys § Ohjelmistokehitys edellyttää: 1. PHP: n, Ruby

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitys § Ohjelmistokehitys edellyttää: 1. PHP: n, Ruby on Rails: in tai vastaavan hallintaa Tällä kurssilla käytetään PHP: tä 2. Osata käyttää HTML: ää ja Java. Scriptiä 3. Lisäksi on syytä ymmärtää Web-hostauksen perusteet, ja olla joku Web-host omille applikaatioille. Tällä kurssilla käytetään students-palvelinta § My. SQL, CSS, Photo Shop / PSP, Java, Flash… OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitysprosessi § Facebook applikaation tekemisen vaiheet: 1. 2.

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitysprosessi § Facebook applikaation tekemisen vaiheet: 1. 2. 3. 4. Hommaa Facebook tunnus Hommaa Web-hostaus palvelu Asenna Facebook Kehittäjä -applikaatio Rekisteröi uusi applikaatio Kehittäjä-applikaation avulla 5. Ohjelmoi applikaatio 6. Julkaise applikaatio Facebook: ssa § Ensimmäisen kerran jälkeen riittää, että toistaa vaiheet 4 -6 § Yksinkertaisimmillaan Facebook applikaatiot ovat vain Web-sivuja, jotka näytetään Facebook: ssa OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitysprosessi § Facebook applikaation tekemisen vaiheet: 1. 2.

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitysprosessi § Facebook applikaation tekemisen vaiheet: 1. 2. 3. 4. Hommaa Facebook tunnus Hommaa Web-hostaus palvelu Asenna Facebook Kehittäjä -applikaatio Rekisteröi uusi applikaatio Kehittäjä-applikaation avulla 5. Ohjelmoi applikaatio 6. Julkaise applikaatio Facebook: ssa OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Web-hostaus § § § Käytetään Students-palvelinta Web-hostaukseen Studentsille pitää

Teppo Räisänen | Oulun yliopisto Web-hostaus § § § Käytetään Students-palvelinta Web-hostaukseen Studentsille pitää luoda public_html kansio ja antaa käyttäjille oikeus lukea kansion sisältöä Kansion sisältö näkyy osoitteessa: § http: //www. students. oamk. fi/~tunnus/ OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Web-hostaus § Tarvitaan seuraavia ohjelmia/komentoja § § § SSH

Teppo Räisänen | Oulun yliopisto Web-hostaus § Tarvitaan seuraavia ohjelmia/komentoja § § § SSH Secure Shell Client SSH Secure File Transfer Client § Käyttöoikeudet = 755 Programmer’s Notepad OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Web-hostaus 1. SSH yhteys osoitteeseen student. oamk. fi §

Teppo Räisänen | Oulun yliopisto Web-hostaus 1. SSH yhteys osoitteeseen student. oamk. fi § § Secure Shell Client Loggaudu sisään omilla tunniksilla 2. Luo kansio ”public_html” § Kirjoita komentoriville mkdir public_html 3. Anna käyttöoikeudet public_html kansioon § chmod 755 public_html OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Harjoitus 1 § § § Tehkää students: lle kotihakemistonne

Teppo Räisänen | Oulun yliopisto Harjoitus 1 § § § Tehkää students: lle kotihakemistonne alle kansio nimeltä “harjoitus 1” Tee php-tiedosto, joka tulostaa oman nimesi ja siirrä se ”harjoitus 1” kansioon Anna käyttöoikeudet ja tarkista että näet tiedoston sisällön Web-selaimella § http: //www. students. oamk. fi/~tunnus/harjoitus 1/ OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitysprosessi § Facebook applikaation tekemisen vaiheet: 1. 2.

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitysprosessi § Facebook applikaation tekemisen vaiheet: 1. 2. 3. 4. Hommaa Facebook tunnus Hommaa Web-hostaus palvelu Asenna Facebook Kehittäjä -applikaatio Rekisteröi uusi applikaatio Kehittäjä-applikaation avulla 5. Ohjelmoi applikaatio 6. Julkaise applikaatio Facebook: ssa OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook Kehittäjä-applikaatio § Kehittäjä-applikaation asennus: § http: //www. facebook.

Teppo Räisänen | Oulun yliopisto Facebook Kehittäjä-applikaatio § Kehittäjä-applikaation asennus: § http: //www. facebook. com/developers/ OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitysprosessi § Facebook applikaation tekemisen vaiheet: 1. 2.

Teppo Räisänen | Oulun yliopisto Facebook ohjelmistokehitysprosessi § Facebook applikaation tekemisen vaiheet: 1. 2. 3. 4. Hommaa Facebook tunnus Hommaa Web-hostaus palvelu Asenna Facebook Kehittäjä -applikaatio Rekisteröi uusi applikaatio Kehittäjä-applikaation avulla 5. Ohjelmoi applikaatio 6. Julkaise applikaatio Facebook: ssa § Kun Kehittäjä-applikaation kerran asentaa, se löytyy Facebook: in Sovellukset-linkin takaa (vasen alalaita) OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS