onsdag den 20. april 2016

IT-uge2 Computeren

Computerens Opbygning

Computere er sammesat er en masse forskellige dele, som tilsammen skaber computeren, vil her gå igennem nogle af de vigtigste og nødvendige computer dele.

MotherBoard

Motherboarded er det centrale kort på pcen som alt er koblet til, der kan kobles Grafikkort, Netværkskort, RAM og mange andre forskellige componenter.

CPU (Central Processing Unit)

CPUen er den komponent i computeren der processer alt information, den er opbygget på bitte små binære switches der skifter mellem 1 og 0, dette sker flere millioner gange i sekundet og jo hurtigere din CPU er jo hurtigere er computerens generalle hastighed.

RAM (Random-Access Memory)

RAMen er der hvor alt midlertidigt data bliver gemt, RAMen er specielt vigtig hvis du skal arbejde med grafik (billeder / video) eller kører tunge high end spil.
Så snart computeren bliver slukket vil RAMen blive tømt, da det er midlertidigt.

Grafikkort

Grafikkortet er den del af computeren som beregner grafiske elementer på skærmen i form af billeder, videoer, spil osv. Grafikkortet har en en indbygget GPU (Graphics Processing Unit) der udelukkende beregner de grafiske elementer.
Grafikkortet kan fås i 2 forskellige former, enten som en selvstændig enhed der kobles på motherboarded (se billed) eller som en integreret del af selve motherboardet.

HDD (Hard Disk Drive)

HDDen er der hvor alt vores data bliver gemt fysisk. Både styresystemet, diverse indstallerede programmer og alt vores egen data gemes her.
HDDen virker på den både at en lille pind skriver på en metal plade der er coated med en magnetisk overflade. Hvis pinden bliver beskadet og man kan høre en klikker lyd gentage sig skal man backup sin data med det samme, da det betyder at HDDen er vede at dø.

PSU (Power Supply Unit)

PSUen giver sig selv i sit navn, den giver strøm til computeren. Hvis PSUen ikke virker eller ikke er tilsluttet ordenligt vil computeren aldrig kunne starte.

Blæser

Blæserens arbejde er at holde computeren afkølet da mange komponenter kan bliver meget varme, specielt Grafikkortet og CPUen, dog har CPUen sin egen køler også.

CPU køler

CPU kølerens opgave er udelukket at holde CPUen kølig, hvis køleren er defekt kan CPUen godt komme op på 90+ grader celsius hvilket ikke er noget godt tegn.

DVD-CD Drev

Er hvor computeren læser dvd'er og cd'er, der sidder en lille læser som læser diskens indhold, mens den rotere hurtigt.

Samlet Computer
Nu har vi så fået samlet computeren igen.





tirsdag den 19. april 2016

IT-uge2 internet

Internettet

Internettet er opbygget på tusindevis og atter tusindevis af netværks rundt omkring i verden. Et netværk består af en eller flere servere og/eller en eller flere clienter.
Så når vores hjemmecomputer forbinder til vores hjemmenetværk og gennem routeren til internettet, er vi forbundet til alle disse netværks, som vi kan tilgå via f.eks. hjemmesider.

Når vi tilgår hjemmesider går det gennem en DNS (Domain Name Server) som omskriver hjemmesidens navn til en IP-adresse, så hjemmesiden kan findes på internettet.

Malware er skadelig software, der er lavet specielt til at udføre handlinger på dine vegne som ikke er ønskede. Hvis din computer er inficeret med malware, kan det bruges til at omgå diverse sikkerhedskontroller, som f.eks. Facebooks sikkerhedskontroller og overtage din konto til at udfører handlinger som at sende spam besked med inficerede links til dine venner.

For at undgå malware og andre typer skadelig software, burde du tage forholdsregler når du surfer rundt på nettet. Lad vær med at downloade hvad som helst, da det kan være en hjemmeside hvor de prøver at få dig til at downloade den skadelige software.
Undgå at åbne ukendt links fra din mail, typisk mails der lander i uønsket/spam folder. Undgå også at åbne ukendte links der bliver sendt via chat, f.eks. på facebook, da det kan være sendt fra en malware inficeret konto.

Det er nødvendigt at have sikre protocoller da hacker kan overvåge dit netværk, du burde som forhåndsregel ikke oplyse person følsomme data på hjemmesider / netværks der ikke er beskyttede (kan typisk se ved at der står https i andresse linjen).
Indtaster du data i en ikke sikret forbindelse kan du risikere at hackere kan opfange dataen når den er på vej gennem netværket, som f.eks. Packet Capture kan opfange pakker der bliver sendt på nettet.

fredag den 29. januar 2016

Webtypologi


Touch

Touch

  • Swipe, er når man placere fingeren på skærmen og kører den henover skærmen.
  • Tryk, er når du trykker på skærmen uden at bevæge fingeren under berøringen(swipe).
  • 3 fingers swipe, samme som swipe, men med flere fingere (det er forskelligt fra touch til touch hvor mange berøringer der maks kan udføres.
  • Zoom, der kan zoomes på langt de fleste touch skærme ved at sætte 2 fingrer på skærmen også enten køres fingrene væk fra hinanden(zoom ind) eller køres tættere sammen (zoom ud).


Burger menuen er den menu som du typisk finder på hjemme sider der er optimeret til smartphone brug.
Menuen er formet som 3 linjer oven på hinanden (ses til venstre). Meningen i den er at nå du trykker på 'burgeren' vil du kunne se indholdet af 'burgeren' som typisk vil være en liste af menu punkter som kommer frem som et slags overlay.

Burger menuen er dog begyndt at blive brugt mindre og mindre nu til dags da folk er mere kreative med deres menu designs.

torsdag den 28. januar 2016

Selvstudie

Video Tag

autoplay: gør at videoen automatisk begynder at spille når siden har loaded
loop: gør at videoen starter forfra og spiller igen, efter den er slut
width: sætter bredden på video tagget, width="400" vil automatisk default til 400px
height: sætter højden på video tagget, height="400" vil automatisk default til 400px


Jeg synes Firefox har den flotteste kontrolbar

















Canvas Tag

Chrome, Firefox og Tor viser alle sammen canvas elementet helt ens

onsdag den 27. januar 2016

Interaktion

Oculus Rift

Oculus Rift introducere Virtual Reality, some indtil videre kun har været en del af spil, film, tegneserier osv. Oculus Rift som nu har en udgivelses dato her i marts 2016, kan påvirke fremtidens måde at spille, se film og mange andre ting.
Den indflydelse som Oculus Rift får på fremtiden vil være meget afhængig af hvordan verden tager dens release når den bliver tilgængelig for alle.
Oculus Rift vil også komme til at påvirke den måde youtubers laver deres videoer, da det ikke vil være muligt at sætte cam op og interagere med deres subscribers på samme måde, efter som de ikke kan ha øjenkontakt og følelsen af nærhed.

Alt i alt tror jeg ikke det får den store indflydelse til at starte med, men efter teknologien udvikler sig kommer den til at fylde mere og mere.

Til at starte med kommer den ikke til at ha den store indflydelse eftersom det ville være for besværligt at interagere med hjemmesider i forhold til den traditionelle måde.
Men muligvis, flere årtier frem, kan det være alt foregår via Virtual Reality.

Google Glasses

Google Glasses kommer til at påvirke fremtiden, hvis det reelt bliver til noget, på en måde der kommer til at blande virkeligheden med interaktioner gennem Google Glasses.
Gennem Google Glasses ville du direkte kunne se ting som fx. normalt tog din smartphone op af lommen for at se, dermed afvige opmærksomheden fra ting foran dig.
Et godt eksempel kunne være klokken, du har en bus du skal nå og skal måske løbe lidt, og i stedet for at kigge på telefonen eller armbånds ur konstant ville du kunne se det gennem Google Glasses.
Lige i øjeblikket tror jeg ikke det bliver den store success, da de fleste nok ikke ville bryde sig om at gå rundt med briller når de ikke har brug dem.

Jeg tror ikke interaktionen rammer så godt, det bliver for besværligt at fokusere på det der bliver vist på Google Glasses med en konstant bevægende baggrund, hvis man er udendørs og også omvendt på hvor man går.

Google Glasses vil ikke være beregnet så meget til hjemmeside brug, men mere brug til Apps på samme måde som smartphones, så jeg tror ikke at der vil være indflydelse.

tirsdag den 26. januar 2016

PHP Database Class

PHP DB CLASS

Det første vi gør er at lave vores Class, efter vi har lavet vores Class includer vi den der hvor vi vil bruge den.
Efter den er blevet included defineres Classen med $varname = new classname();
Men videre til at lave vores Class.

class dbModel{ }




Det første vi gør inde i vores dbModel class er at sætte vores globale variabler.
Vi bruger metoden "private" så variablerne kun kan ses inde i vores class.
Som vi bruger i vores funktioner, default værdien i connObj vil os kunne blive sat via vores contruct.


__construct bliver automatisk kørt når du kalder din class $varname = new classname($var);
Når der blir kaldt til globale variable eller funktioner bruger man $this->variable / $this->function() for at bruge variable eller kører funktion.



__destruct bliver kørt automatisk når php færdiggør loading af siden, dvs at som i dette tilfælde vil vi
sætte vores connection close() funktion ind eftersom det er det allersidste der skal ske.



Her ses funktionen newConnection, dette er en public function så den kan kaldes udfra classen.
$dbmodel = new dbModel();
$dbmodel->newConnection();
I selve functionen bliver der oprettet forbindelse til databasen og vores globale variable conn blir sat.



Her bliver der brugt public functions til at sætte private variables og til sidst har vi en clear funktion
som automatisk kan tømme conditions og order variablen eller andre variabler når funktionen bliver kaldt.



Her har vi 2 funktioner findFirst og findAll hvor du automatisk vil hente fra databasen, på samme måde
som vi gjorde i SQL tutorialen. Der vil være eksempler i bunden, hvordan man bruger funktionerne.



Vores insert der sørger for at vi kan sætte noget ind i vores database tabel, vi bruger fields og values variabler som
er blevet sendt med i funktionen.



Vores update der sørger for at vi kan opdatere vores database tabel, vi bruger fields_values variable som
er blevet sendt med i funktionen, som er en string.



Vores delete der sørger for at vi kan slette fra vores database tabel, vi bruger id som condition,
men man kan sagtens lave den til andet.



Til sidst har vi execute, som kan kører hvilke som helst query, men den kan ikke hente noget!
Også vores error funktion så vi kan tjekke hvis der har været fejl.

Her er exempler, på engelsk:

the connection this can be called by $model = new dbModel(obj); its recommended to include at least the table variable as show below.
but variables that can be used is 'server','user','pw','db','charset' & 'table' if you have not defined it when making the new class
the default connection values will be set (there is no default table!)
$model = new dbModel(array('table'=>'questions','charset'=>'utf8'));

setting global variable definations
$model->setOrder(field,type); if type is not set it will default to DESC
$model->setOrder('id','asc'); this will set the order to order by id and the type will be ASC

the condition for when using findFirst, findAll & update. where should not be set!
$model->setConditions(condition);
this will make the query find all records where name starts with N but is not Nikolaj
$model->setConditions('name like "N%" and name!="Nikolaj"');

the table to be used in the next functions you'll use
$model->setTable(table);
this will set the table for the next functions to the 'newsletter' table
$model->setTable('newsletter');

findAll() can be customized to findAll(fields,limit)
if no variables are in the function fields will default to * and there will be no limit
findAll('id,name',4) this function will find columns id and name, and limit the records found to the first 4
$records = $model->findAll();
foreach ($records as $k => $v) {
  echo $v['id'] . "/" . $v['name'] . "break tag";
}

findFirst(fields) is almost the same as findAll but this will only return the very first record the database finds
$record = $model->findFirst();
echo $record[0]['id'] . "/" . $record[0]['name'] . "break tag";

insert(fields,values) fields and values must be defined in 2 arrays
$model->insert(array('name','msg','time'),array('MyName','some message',date("Y-m-d H:i:s")));

update(fields_values) fields_values must be defined and is defined by a string with the column=value format split by a ',' as shown below
$model->update("name='new name',msg='new message',time=date("Y-m-d H:i:s")");

del(id) deletes a record where id is your defined id as condition as shown below, that will delete the record where id=2
$model->del(2);

execute(query) executes any query, but will not fetch any results (primary to update/insert/delete/other)
$model->execute('delete from mytable where mycondition=1');

newConnection(obj) same as when you first call the class, this can be used to open a new connection if needed
$model->newConnection(array('table'=>'questions','charset'=>'utf8'));

used to check for errors
echo $model->error();