From 11f480751340718894135b2578d24db9ad10b7b2 Mon Sep 17 00:00:00 2001 From: Fredrick Amnehagen Date: Sat, 6 Apr 2024 23:38:29 +0200 Subject: [PATCH] Finished assignment 2. --- public/css/common.css | 167 ++++++++++++--------- public/css/page-ethics.css | 25 +++ public/css/page-internet-history.css | 32 ++++ public/css/page-presentation.css | 90 +++++++++++ public/css/page-wordpress-installation.css | 25 +++ public/ethics.html | 54 +++++++ public/images/messenger.jpg | Bin 0 -> 71539 bytes public/images/terminal.jpg | Bin 0 -> 26158 bytes public/images/wap.jpg | Bin 0 -> 11760 bytes public/index.html | 36 +++-- public/internet-history.html | 85 +++++++++++ public/wordpress-installation.html | 102 +++++++++++++ 12 files changed, 530 insertions(+), 86 deletions(-) create mode 100644 public/css/page-ethics.css create mode 100644 public/css/page-internet-history.css create mode 100644 public/css/page-presentation.css create mode 100644 public/css/page-wordpress-installation.css create mode 100644 public/ethics.html create mode 100644 public/images/messenger.jpg create mode 100644 public/images/terminal.jpg create mode 100644 public/images/wap.jpg create mode 100644 public/internet-history.html create mode 100644 public/wordpress-installation.html diff --git a/public/css/common.css b/public/css/common.css index 617e91f..7c6ad2c 100644 --- a/public/css/common.css +++ b/public/css/common.css @@ -3,7 +3,7 @@ /* Webbfonter */ @font-face { font-family: 'Journal'; - src: url('journal-webfont.woff') format('woff'); + src: url('../fonts/journal-webfont.woff') format('woff'); font-weight: normal; font-style: normal; } @@ -24,7 +24,14 @@ h2 { color: #ffffff; text-shadow: 2px 2px 4px #000000; } - +h3 { + font-family: 'Montserrat', Sans-Serif; + color: #ffffff; + text-shadow: 2px 2px 4px #000000; +} +p, li { + text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.5); +} /* Spacing i listan, mycket jobb för att lösa denna snyggt. */ li:not(:last-child) { margin-bottom: 3px; @@ -36,27 +43,20 @@ a { text-decoration: none; font-weight: bold; } +a:visited { + color: #000044; +} +a:active { + color: #0000cc; +} a:hover { color: #0000cc; } -/* Min stil för bilden. */ -.portrait-image { - box-shadow: none; - border-radius: 3px; - transform: none; -} - -/* Min stil för att rama in texten. */ -.presentation-box { - background-color: #dadada; - border-radius: 3px; - box-shadow: none; -} - -/* Min stil för presentationstexten. */ -.presentation-text { +/* Min stil för navigeringsknappar/länkar för små skärmar. */ +.nav-button { font-family: "Source Sans Pro", sans-serif; + text-align: center; } /* Footer stilen */ @@ -65,6 +65,16 @@ a:hover { text-align: right; } +/* Bildstilar */ +.image-left, .image-right, .image-center { + box-shadow: none; + border-radius: 3px; + transform: none; + + margin-left: auto; + margin-right: auto; +} + /* Definition av mitt rutnät för sidans layout. */ /* Behållaren för cellerna, tabellen. */ .grid-container { @@ -74,6 +84,7 @@ a:hover { max-width: 900px; /* max-width of the layout */ margin: 0 auto; /* center in the viewport */ + padding: 15px; background-color: #dadada; } @@ -87,28 +98,27 @@ a:hover { .header { grid-area: header; } +.navigation { + grid-area: navigation; +} .content { grid-area: content; } -.content2 { - grid-area: content2; -} -.image { - grid-area: image; -} + .footer { grid-area: footer; } -/* Standard layout, för små fönster/skärmar. */ -.grid-container { +/* Navigationsboxen, tilldelning av områdesnamn. */ +.nav-element { + grid-area: nav-element; +} + +/* Navigationsboxens layout, för små skärmar */ +.grid-container-navigation { grid-template-areas: - "header" - "content" - "image" - "content2" - "footer"; - padding: 0px; + "nav-element nav-element nav-element nav-element"; + padding: 10px; box-shadow: none; } @@ -116,59 +126,72 @@ a:hover { @media only screen and (min-width: 850px) { body { /* Gratis bild från pexels, https://www.pexels.com/photo/brown-wooden-panel-347139/ */ - background-image: url("bg.jpg"); + background-image: url("../images/bg.jpg"); background-attachment: fixed; background-position-y: bottom; background-repeat: repeat-x; } - .grid-container { - grid-template-areas: - "header header header" - "content content image" - "content2 content2 content2" - "footer footer footer"; - box-shadow: 10px 10px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); - padding: 15px; - background-image: url("bg-paper-yellowed.jpg"); - background-repeat: none; - background-size: cover; - } - - .image { - position: relative; - top: 40px; - left: -40px; - } - - /* Min coolare stil för bilden. */ - .portrait-image { - box-shadow: 10px 10px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); - border-radius: 3px; - transform: rotate(-5deg); - } - - /* Min coolare stil för att rama in texten. */ - .presentation-box { - background-color: #f3ee9e; + /* Min stil för navigeringsknappar/länkar för större skärmar. */ + .nav-button { + font-family: "Journal", sans-serif; + font-size: 32px; + font-weight: lighter; + text-align: center; + + /*background-color: #f3ee9e;*/ + background-image: linear-gradient(to bottom right, #f3ee9e, #f4f1b9); border-radius: 3px; box-shadow: 10px 10px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + margin: 0px 5px; /* y, x*/ transform: rotate(-1deg); + padding: 5px; + } + .nav-button:hover { + box-shadow: 12px 12px 8px 0 rgba(0, 0, 0, 0.15), 0 6px 20px 0 rgba(0, 0, 0, 0.12); + margin: -2px 5px; /* y, x*/ } - /* Min coolare stil för presentationstexten. */ - .presentation-text { - font-family: "Journal", sans-serif; - font-size: 32px; - color: #212151; - margin: 15px; + /* Bildstilar */ + .image-left, .image-right, .image-center { + box-shadow: 10px 10px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + border-radius: 3px; + + margin: 0px; } - /* Begränsande stil för extra postit lapp. */ - .extra-note { - max-width: 320px; - transform: rotate(3deg); + .image-left { + width: 375px; + transform: rotate(-2deg); + margin-left: -25px; + + float: left; + display: block; + margin-right: 25px; /*auto - if not floating */ + } + .image-right { + transform: rotate(2deg); + margin-right: -75px; + + float: right; + display: block; + margin-left: 25px; /*auto - if not floating */ + } + .image-center { + transform: rotate(-0.5deg); + + display: block; + margin-left: auto; + margin-right: auto; + } + + .paper { + box-shadow: 10px 10px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + padding: 15px; + background-image: url("../images/bg-paper-yellowed.jpg"); + background-repeat: repeat; + background-size: 100%; } } diff --git a/public/css/page-ethics.css b/public/css/page-ethics.css new file mode 100644 index 0000000..98db96e --- /dev/null +++ b/public/css/page-ethics.css @@ -0,0 +1,25 @@ +@charset "UTF-8"; + + +/* Standard layout, för små fönster/skärmar. */ +.grid-container { + grid-template-areas: + "header" + "navigation" + "content" + "footer"; + padding: 0px; + box-shadow: none; +} + +/* Layout som väljs automatisk när det finns plats. */ +@media only screen and (min-width: 850px) { +.grid-container { + grid-template-areas: + "header header header" + "navigation navigation navigation" + "content content image" + "footer footer footer"; + padding: 15px; + } +} \ No newline at end of file diff --git a/public/css/page-internet-history.css b/public/css/page-internet-history.css new file mode 100644 index 0000000..9f1e81f --- /dev/null +++ b/public/css/page-internet-history.css @@ -0,0 +1,32 @@ +@charset "UTF-8"; + + + + + + + + + +/* Standard layout, för små fönster/skärmar. */ +.grid-container { + grid-template-areas: + "header" + "navigation" + "content" + "footer"; + padding: 0px; + box-shadow: none; +} + +/* Layout som väljs automatisk när det finns plats. */ +@media only screen and (min-width: 850px) { +.grid-container { + grid-template-areas: + "header header header" + "navigation navigation navigation" + "content content image" + "footer footer footer"; + padding: 15px; + } +} \ No newline at end of file diff --git a/public/css/page-presentation.css b/public/css/page-presentation.css new file mode 100644 index 0000000..020e698 --- /dev/null +++ b/public/css/page-presentation.css @@ -0,0 +1,90 @@ +@charset "UTF-8"; + +/* Min stil för bilden. */ +.portrait-image { + box-shadow: none; + border-radius: 3px; + transform: none; +} + +/* Min stil för att rama in texten. */ +.presentation-box { + background-color: #dadada; + border-radius: 3px; + box-shadow: none; +} + +/* Min stil för presentationstexten. */ +.presentation-text { + font-family: "Source Sans Pro", sans-serif; +} + +/* Layout, tilldelning av områdesnamn. */ +.content2 { + grid-area: content2; +} +.image { + grid-area: image; +} + +/* Standard layout, för små fönster/skärmar. */ +.grid-container { + grid-template-areas: + "header" + "navigation" + "content" + "image" + "content2" + "footer"; + box-shadow: none; +} + +/* Layout som väljs automatisk när det finns plats. */ +@media only screen and (min-width: 850px) { +.grid-container { + grid-template-areas: + "header header header" + "navigation navigation navigation" + "content content image" + "content2 content2 content2" + "footer footer footer"; + padding: 15px; + } + + .image { + position: relative; + top: 40px; + left: -40px; + } + + /* Min coolare stil för bilden. */ + .portrait-image { + box-shadow: 10px 10px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + border-radius: 3px; + transform: rotate(-5deg); + } + + /* Min coolare stil för att rama in texten. */ + .presentation-box { + /*background-color: #f3ee9e;*/ + background-image: linear-gradient(to bottom right, #f3ee9e, #f4f1b9); + border-radius: 3px; + box-shadow: 10px 10px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + + transform: rotate(-1deg); + } + + /* Min coolare stil för presentationstexten. */ + .presentation-text { + font-family: "Journal", sans-serif; + font-size: 32px; + color: #212151; + margin: 15px; + } + + /* Begränsande stil för extra postit lapp. */ + .extra-note { + max-width: 320px; + transform: rotate(3deg); + } +} \ No newline at end of file diff --git a/public/css/page-wordpress-installation.css b/public/css/page-wordpress-installation.css new file mode 100644 index 0000000..98db96e --- /dev/null +++ b/public/css/page-wordpress-installation.css @@ -0,0 +1,25 @@ +@charset "UTF-8"; + + +/* Standard layout, för små fönster/skärmar. */ +.grid-container { + grid-template-areas: + "header" + "navigation" + "content" + "footer"; + padding: 0px; + box-shadow: none; +} + +/* Layout som väljs automatisk när det finns plats. */ +@media only screen and (min-width: 850px) { +.grid-container { + grid-template-areas: + "header header header" + "navigation navigation navigation" + "content content image" + "footer footer footer"; + padding: 15px; + } +} \ No newline at end of file diff --git a/public/ethics.html b/public/ethics.html new file mode 100644 index 0000000..e6195a7 --- /dev/null +++ b/public/ethics.html @@ -0,0 +1,54 @@ + + + + + Webbutveckling 1 - Etik och integritet på nätet - Fredrick Amnehagen + + + + + + + + + + + + + + + + + + + + + +
+
+

Webbutveckling 1

+
+ + + +
+

Etik och integritet på nätet

+

Unga på internet, fall 1: Att bara våga prata på nätet

+

MSN, det var länge sedan. När jag gick gymnasiet med IT-inriktning 2007-2009, så fick alla elever låna varsin laptop år 2. Klassföreståndaren/mentorn var väldigt inne på att arbeta digitalt med uppgifter och inlämningar. En dag frågade ett par elever om de fick ta sovmorgon och vara med på hans lektion hemifrån via skype (video, ljud och chatt) samt google docs. Detta provades och fungerade bra i ett par veckor. Tills rektorn fick höra detta och genast satte stopp för det. ...nu är det standard.

+

Det påminner lite om Fredrik och Sven. Just i deras fall fungerade det, men detta verkar har utspelat sig under samma tid; eftersom att MSN Messenger var populärt då och inte finns längre. Även om det fungerar i enskilda fall så behövs studier och godkännanden. Det talades ofta på nyheterna om ungdomar som utnyttjats av vuxna på nätet. Nätet var fortfarande nåt nytt, fluffigt och okänt för många. Många hade fortfarande modem och inte uppgraderat till ADSL eller fiber.

+

Att ha kontakt med sina elever via kanaler där eleverna finns tycker jag är helt rimligt. Jag försöker aktivt bjuda in lärare till chattgrupper som är starkt kopplade till skolan. Men det finns ingen förväntan att de ska finnas tillgängliga utanför arbetstider. Sven ändrade sitt beteende innan det stoppades, till att bara vara tillgänglig under arbetstid. Det känns korrekt i dagens samhälle, han tänkte helt rätt.

+

Det framgår inte tydligt i dokumentet, men om man läser mellan raderna så är det direktchatt mellan Sven och Fredrik. Det kan kännas lite känsligt då allt som skrivs är privat. Idag använder många Discord, ett chattsystem där man kan skapa en gruppchatt med flera kanaler. Flera kan läsa vad som skrivs. Många använder detta även i studier. Det går att skapa virtuella grupprum där små grupper chattar. Det går även att låsa de små gruppkanalerna till specifika elever som tillhör den gruppen. På en distanskurs i 3D modellering så använde läraren Discord på detta sätt. Han valde det programmet för att det var troligt att elever som går spelutvecklingskurser troligen använder Discord.

+

En av kommentarerna till fallet beskriver att Fredrik kan tränas i att interagera med sina skolkamrater genom de digitala verktygen. Det låter bra, det kunde göras på den tiden och nuförtiden med liknande verktyg. ...Dock så hade alla inte laptop eller smartphone på den tiden. En datasal skulle bokas, då klassrummen precis fått mer än en dator per rum uppgraderad till Windows XP. Jag tror att det hade släppt lite om han fick sitta i mindre grupp, och prova olika medlemmar för att testa personkemin.

+
+ + +
+ + \ No newline at end of file diff --git a/public/images/messenger.jpg b/public/images/messenger.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5a19accf9d16a7d6fe8f79061d53b4f5cf30c61f GIT binary patch literal 71539 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 ME{q%>SiW=r*+Zs~>i_@% literal 0 HcmV?d00001 diff --git a/public/images/terminal.jpg b/public/images/terminal.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9c85c77b85a6e096f22e8ae19f6b7aa887cc49e7 GIT binary patch literal 26158 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≫Pm9BlT0N=v{LN6sFV)kC^o(p*KXa6Ys|*k#PT5x z>;u2!#Tqsq#3QaG1?tJ5{G|V)N_2}AulQLCE_>pnrPV8$En$rS9K(7n6$Hq;92$#vL)MytT`j`nrC4c(0BYg&bL5w`E8NDExhrEii^!n;2d}i@RTi&5_J>WSm zYjrtXUX=DJ{k!e_V?h+4*M}=Ftu}|!6eLRmSm0c-+X5f(E z_A=PFHYgy3nQKp4oIKtk4({T@nh-Y6VI5{6f={zq$?hU`vk3Mz##jl6Df^5o*Ww-k z5KBfZW={G_szF;h*WuW#hO+2K4BmpCN%Sg$lp{mjI1$-27;$-tpClCtIbk-DS_1&rjuj4M=mTE7`We7@uO0_hewjf(LY^L2W^HMa zFHgcIC~)pqW~S|bjmwLp|Cw;K8uvG|PL%d+-Y=-Z8Tkdh9k=69fxeh}*g$hqEs9Df zmOz>;Bjv$w6BJCE*a?Sr@`d@>&rrTx@#hKZj*;km8f5jYf`;gy)TrBJ+rravVyP4d zxONuR1@ei%-o-^8W)c~ZIUevvS`&W9F$Hb~L^k518*NAcG`pZDLP9Ig!z!AbvI5sA zc0oq#BwtM9iIz4w^P;kSlrOgFPk|WYTuO**CU&{EuES^i#$3k%()SRaq$ssc|wX`2%bm?(CYAtQeg$<$5~6ISJ^_yi137{ZWAn=ooY3xC%w=+=dkt} z*Mv>O%BFcEMay2QI~d{18`qNtrAEZU99tX_|L%LHc9+R!(_LyZv-K~(Q z0@B!exufr^UxWDvB*A&|Vmn5;<(~`G}~tGw&L185y7zk5RpoHDx_B=2tEcDM)avCBT1+jG^{)KXr^x zYAx#iKx>HQ?OZ2O!v>wEF`!TVCQsTYHlW~2cpyJHF@-XS$a)g(9#clvQ?<$}eAtO^ zU{PgO6j#%AGotiobLaBz?xO3154Z(S#O?Q2ii)J$yhU8ZbYLMhmYlIaG#U>VTtY<) z?-AQS7&71dtQ;+jM_)SIL7F+;4+U6_X#5R*Vm7v^VGrcRIL%XxnkY;wIY-_dK=#WI zn6~5|o&%<#e#T_e@A8n%agm zx{%A`*F`dDvxop2bqQzk?r(@NJv`VFS|L9O9H=FpOo6Ms)<@(Mp#q-sCljnXnIB*u z#Far;40UH|i5GI2(r6TA`9v?1n~GmtyLZ^doW@-5z@To1pz!=vL}(J+LKgmIIpm(> z#n1L1?z59H_MNuyan5f^CB-a*m*A1Jr>D$-cD4Lk>?5DUI`eln%`{)FK1F}I;SrYl z%Joe)drhW`Bu8wRTHtk-4PC2FtBb(W?HlE;8lL@SxEbi840JN9IdX!!pX_RjNR0T} zcK}~(f>^SqWkq$Gx;v=r>08`b(twV#P*|Lz?MN~et9k}fC7F!Z49}Jh8cma`c~i3R zvs2T@Ld&J9sl+@ncFXYsALNHCRG>9T#I=cyHUt}MO>}Fv+9Rykb)6c*Rh3>zN-b*2*sU~ zN8l9j&l&bVyOHpedy8U6m%vWvGR|h^d$!JrA8+4_yvh!Cllbxb;MrTZ&UDdxWQ*;w z^?q$y4h2FakK`V|zXVz{oeFfW{Vdd#?J#L9de50m#?aM6;)q0@@-?R6;S<26^L8J(lom_LV zb;TMhdVcquowm7xn|F~gt3~ye25+ugCL+4N$5%!Dc=PMUT zq|P?}VpP54maJn%*B9tovCs3KkSq?hDUAf({l6SL^D)iDt_?x*_#1Ac*&PU&BAGS;8mwgU2&g=G z$Xn!xptnavL#Afu+X*ll)O%4xp<8aqv!%qM+bp!QVY6@T=lo|}>E_&8ho*DMYUIJS z6An_aBY@kse>QIa`ojl=lvxmtK!M9A@?LrwEm7r%GymG1ho1*L7bBl+PTZZblw-Y+ zdzG3XesBqV*>(zlK|@zR-?h1&70lVh@s*fr>;QY9J;z}vmJeGz$UO3?%$hU){;L8V z5A_7PdneQ{=(t&IIz>XrFb}@JG1N_QPR$?5qv3xW$Q2o_Tz_-{3t>h)WgPwfhL_HN ztVKteH>GO(=L@H6^D!$bM~bS=f)+HbccOcVvu9~}#Tes?+FXX*g1NRIIlA{!4Q+U4 z-z-z()p^Q%-6%}IkA5Jl!Hw1e=|bdMVur>qK;=J+y5XUFy_b2D=-vYGkw~A5r5co6tS3PV>ZfAn=Gw@aA4WH;+Y15Kij>~274OO=9Kz(djC^#$b)!r&3H66Hv6N=vym!Jv)k827Du^eeZrg52Mo)~3H zO4zb%#EwM%hr23=s{+B@Y1)`LXW>%bjk(R`jyzjKZ+#%(&s&vnr|GT~%zl5fBH zY8vGef$uWhaZYEv8Osb)geUxg7)w6lLsxC^SH-3JTzrH}b$E0}Gnn%oc@>qqc+~Ss zjzqkT+r&v61ng@oD)e05?CfHe#D`BflcTfs#8@{r<6aUPvENKC>E$7e+t@TOO^mDk zK3^cqs7%)%V^(2C$GjiSE+K2o7Cn)~!o4hy~|Gr-BIVM)%O z-_FP17^6m3=d(y>8WncjvX6Ii`}KJ`i{kM0u%JM zFZn(;b$KvV_sh0-uNy*mxb_=#DVm69J0AS7|7yP9ph8Yx!6bX4vQ8YmY$`huoI zS?QbZy~VE)O8p&gygY|1v*u7ncEvP%63N*QvEgbkmcr*3YNb9_UlNp+72(ALes7;X zqNw81G{^=6{kBajMpIY#NZy*IoK+|M_6#X0DGd^YOz+>}pWksX_?r*mZk((8A(Q?sYr01mP< zPTn6bk3fOP!$1$ma^>M5*jImc`{y5RpofDa1Z_YU2YR@uzgC5>4yC}q3Jhp`OP(Y5 zm;3Q{QYD0AhA}@yxA7jWq|RbobCld-2{_v4h+!FHqqH?lEw1G?v@Kp8DMd0(-KsdP zq*JVqQ(LUP!Krx(V5kb{zTNHUs_i_E3&kH}yl2{R$aF&SE6w+IcfSDua3oCG;zmxVJMN4rq0Qm!t$ggl^+Z~`@{Xi6ftRP8Bb-VN$;r$ zwh}{!Z;2?A{$gTfTMG=N41`;ib_Y%W|m}(MHh_ z!N-Xj=!PJpecfggxr%|)YF&Zp#heA=5Nf=EyjV6OR{A;kQ9&+E0eOB%sVA@F_i%9u z?82M3l&2-=zlG8unNN$TTf}4;$oqT96ULna>6?;~@;NWy-(*s>RvS%wWQy+}YV=)m zVGj3S%UL&4a(+FQXe&(cv=rD zll4++a&FUCIoP~YW8(z9)1THaWX6AZzMXn4BV5*ltTIb^lYjQbEBDtyQlBh6wB@+) z+M*Lg(Re3M@{)yNilphW%p$R~@L2Y?krE*}p08qtBNN@>=4*ka?4P9I3QX75E^tN3 zt`A(tGbvhxxXRE^QK?0yuPHPPb2DS-uf-@TlQE+d%DF`*)YZ6f6J+2|sHiACyG2ch z3b5}s@_@bU_Pvrksm5Ekx=_sBtlApm(ibA1R&jEfe-!(DF}A+Y0Lg+&L`;+DsZ$@7>{v`JTiiV6l$z0pW$=V&y!M9T zxZ`LOaW`f{uQ!RylOv;RbgR5iz5IcI-A=4MLvk{euWQFzpsONz`f6&Z`bD%$QsTTy z<&P>uJm!6PLVZRzC2uR|94>noohN(#tNKiW3<@`9(f;=kkFeY<|w z$c&5=s$lV20DVHo3|CxY1r1etJYUL|-C-J9aV;T{F_DJuW+pYZDJzFQb-QvYKCSX- z?C`6gSMy{kwp69$ zQfNhbs;^V4VDSKp;Sp9w2|kT<*PZN$;Fki}=uL08NL2Tw&o zu%I|N|F~iZ01h_6k){_sDr4plQQk7}bsZ)DuWdSbr2H>|(W;0Q+mg2HA;ce66jT(Y zZZW3Vjkxj#qhB`6D0%n`>r2jKBD@4j0xLuB5ag`Ef5Gmbxbu>ualX8~b8jGD z=B%!Ki*W%Do{6ygTCU!CXkQX$a@`F_vw5sibhVT>CmbIu1b-{>8ZKa5mYU0Fn0yd? zs*tyq{wZyLJf@EE(3QF(>_H3!@8Vhv&t5H)!rBS;qtjK#eo0gL7XpzCQQuq^Dx?Sz z79%@h{6x&RMDPTa?#={%D~TXIn#|g5-dlN+!~#)}MqXF18PSRTe9qYU(QL*1r0Ucx z5Jg3gy~A}j?qis=Oj#R~Qwlk~aT*I-+`?=~knmD>pOGcrPF`?VE19CaPD(?iq>pD!rtXq|{Afo~QR2v$C)rXHt z2Hr_|O9bwE)sXdz@G?=tp5d_N(^tRW(VKc1Ao{B|5Vge6BE)X}>NDQ|71S0h=~JQ` z>nx<9f8V9J*Bb#)rQIx8dh16jN4QxzR8_v`iHabw~xF?3bHr8Abr z^UMkOvvsH1q2Q76ulR2-{%v_gA;7=H^Nw}r9Mdb^wkkx*s`?T==4ZdG4Ves@_J}^7 zm%m3s#ONYQh|D10%3ZGi08*+Dq_`SBk*Y#&+A*Ed_S>Tuq1NUyix(7J)&eQ5RtRd6 z+Xf}HR}%}&eOmo<;L>OhZdU=j8#h#?ozx$B*4=A;BMtf-UYhz`+)ZpSEHbb_8Nzax zADoixu7^wyoIDv)zvh3$oCL$UcZTVZsbv+DI-ao&JySC+`SWl$_l<_ht8mknK^YQbiU^@=#|zG zid;b+giRn$t7qSVfEQCvJuF`%L5y!}5|!X2y@>uPpocnv*GMZUcZM)&dc7rW z+Vjjp8bce(&Lx`@jb-3c3i6Cn6QXopo|^eZ>KS5Q$*)e3@lmi(#Y!cUxDK_WGnf~J zPi>eice{BXHjk5R-W7iGg*UFEEDJYTRO^uJX~{{WE|qf2$GbRFMl6@77| z-HHp&4Pm}zu&{?|pT^>}Q?7@1h$}EmhP{IYy981@&vz_+rKspBFSK3iGQMv_bo@%# z4X$mnY?*K#Q=oIp${`NiF56+7I(eiE=)RJL9b6rvCJ+zN#7I7)& z7t9M7N1(Z0+a#s!pVR@7;HYze`@!NB8)@0IbuB0Wo3j@2pDiXNI!v2i zz`3BMU=5IL=__ViI))dQuDt0k;^n+#J#JY}qz-YBo3BU)00IZmztR$=&1FjZ$a5JH zUm1T=kT3?C5b22GAa+=5p^~>4xEU)hZiclQe1_hvHoAuALBK$u0uAM^fqhqZ3)QmB zLb)N07#^A>MpZR?qzwiYTeNjI8&ZS?65);t8KDP;p05n)oebsI^m1U!< zt_-fw;AkF;pnrM=Yc1H==B~b5K>9Di`fvV5xy^b)HlGWXfmCon8cK;NlE->7eaN~h zQFv%P=w5_3vZJ`wcXJ2@LeaZ_A~=a~81rBTiaoRN#Hq~o`3uc-?HRw5hSTy&u~fil z8h15dVJc)doXSa(`|#q@=znW8YzjUjQy=0rROe4C1Cc)fw%08ON9(T z#co_TLiU2MjWG&9HQEROfPHln{?sFUvWV*C`nnH{P{? zGnaR?#iP~jGDV8Rb|1hB+CxRt-fVlGa$`H=d5@q47-c(s8CFlDDBGmWFfAhEJg{+< zkD(Kc3!vwhRtNzTQo&({btVB3g)bR~QajTx%#IAhgzpvxOVU4NSknjl1b<3U{W!0& ziu-xR=%w0v2p???zgB-rbl$V5K)OB;i~j&uNr|vS(=ajhAq5JWgvK$fPC$@?*MQ=} zuZZ38{h~n&423%dWtvsk9?nWS&rBYKX!aYi_wj}nE`q|-);>eo3bpt;MkEE1S2Spj zB`|4zhnx%~WKtOU$#kBx{*?a!xj*Yp-wnIw@QDLNPSSL~xaqxq)1X(!6PP_Rjvx-l z!>pp{z5XmUD8vXg7J?xS@|+U{ULtvUs8)R!{{SP!(qz9Ght`)K;N%P^xV&6}%q#ci*e5yhWCYZr6Tbop-OY zbsoOR%`B5kX&T7x5ZeZb!nU?T=m9{}`H$ek_^|1EVbS?^mB-=QQIP)tZ*;%!?wwy; zI?!L_PixZ`<0Z{*P`@Z#jGqGnkI0GN?VSX0km81b3hy@m0HO3~g;4IW`qdJq zWvy4+z$HqRE5xZ%rAn15RH;&>O7W>(CWs$Es)#Hl2CN+HDuz$^x=IL}La`lw=!V}! zN83mIY<4{)S{rUcrO!#l_a<77&LK#T3>^ZVlcsu3&!nd+dO~c3Em#%+RfE-xD>OtD zY<;2-P!)u9;h9I;!jC?PCK-uOQky_QA zsd?fNgLH+9cjWCcyC7Yg((ze}=$ru#^|={^rI0OctA;y;x@b)1++(b1kHA}nXfKNY z03f?r*|ArG?RCV?eZjh$%f{ZZj9EpZ)tunQumUS6s4CN)UrAQ2cBtx?o{8)mtRBXy+9Nt(4BSt8}BR5Twk48wqyC9q26! zQa4%NxQ+Coc?-@DFSNJ#CX!gAPZ*k(CwIKHZlpa_;v%`mhjKEv1#lhxe|Uu=rIXOt ztwReyd|f5|D594vO3DCNtN4JmAZp5q{5_)7M!&Ix;_|<6AIkToEc)NPzESAes|P`Y zVrC-j@f04O0WgbERzEVN=@PC18Ko^F)i7kNirxrQG&h!ATp5i}zNmhDhP0uuaMENRRItIY&AiVzccc~u zLo5jUxH40gg58ZekWdSi&|9tahgK0C0HW{HU71ln?GfnwM4*~2HMfhXHX&+QEV1S3 z7T64zVqI(2PzVchz5^pWyUd2}Hfwfu#B~^jC9HntCph&?RcQ}=ivb&h+_?e(-h3gt=#HGTERb#%;P&yy)i#)!ENrgCK6SKYN{D+zr)w+kSCPG}Q z@qN`sgMcpt0=iahSV3AY9~wznj2e0+AC!inq0sRe04Zvk-ht9PwhPE7d{- zYT+oxI?HHKP?&2*2Z^g?HPcgCgp3yjR~3}T7t$LGbSNA(wULfNWtU%BRWj58lvd;c zEfR|aPce^OkkVZuli*CZt(tT*)R-HU3pA~@cn!BOIRX2Ow{D}2^>&40ZMn#LM*-R- zq^?H?9DR}>Sii9ak2c)SIHlOf;&ZKML);#+oDc}M6G5x<_X2_zn~w~>69!agKua23 zH(X{>Vu5!W%b3+~$UjU9wHS82eX1S@fc+e>-qB$chJb3rXR={->*hkw+YTYh4HU`P z#$(>*B8zKa=}__3TT3|#eda3Tol#fOrmzZB8DUv(du{WJXlzDgXhAO&Oc~TH+0rvM zr4%f7ZH2Ovt-)I&oN3gJCcMygt0vHB_EEj~`@=JiyWF{0BZRB)`Hj?7fz-Vs49c2QV z?@lc=tu=!uy*BS+wxNx;%)J?g*HWBT=cG~&ENN@Q)*2EpK^4 z3Y${7%CEgf7lK$e%HqUn1)%F!DYOf~eHRDZFm*8gB{9UcOW$Yp6_@qWIiQV&E56dF zNWY(Wq>E`>uVL#b1#K-_9BFPSg@*#P3-f|4T|H6`l~vJ((_3!l*A5A)8x%*#1f8{8 zh}OnV?Mk)vB_7HlEO8t=@4pjYs!AQE;X9!PjKv7m2(^7EE=pV;2CW&w`M{P7k{}Ye zZH}!W;Q^clfCZv?G*;5=>7)W7G!VC4N?mDFY)ae{1}(;mv~+nu5C>w6Yu+(vm1oe1%|1l!t?f*WE7NR zYsq_I;!)cg6?EV2l&Ge_j3bNR8R-nsvQxf)Fd(4{nw#32Z3+{MCTWzW34lhGlIv6I z^C+Gngweb=<=RnZMD(*6g>EU@v$!YaBSo(Q580OO)`}W4di9BSs=@i*F-*ge=>Gtr z0G)^GTuQ;F5|GyCvHsL$RlOcko6;Q03dG?0rbXuKnZ5gv+kU78DA=i$vhJ$0@aru$ zU2uhJ41!*TO(mh~3M&5qMzVr*ij-J*77Y(y)E9TB%zn@*K>~|zuCy^$?uPP=sMR+E zyl9@MERZzRtnp-cxu!UX8a2q*5t`|ccyTPc<0nl!^XU?yD!sQcMaiB4rw%`))u8KA zCZ-xCS6I(@HYwDED)w|O?4V#XsMUH`ch)sjcXx4D<5ZL|^e=--?M$MHd@8p@`O-fG z+9}gz{iasn@keCiBgu%1y)=V$D=RD_8B%)tu^MqDUqe}bK}cq~O`ecD!C`=0?O4wS zZUX@=YW9~p&KRZ%Rj!!c;7|oDR@xZX7IcQsSmed(%pIT&0=6<+@ff^<#h~M3qhB&$ zI*f!;n+=wFL79lv5e;t#;tCotR3Z-OZk8F-UXs$Z^&?l3`^H!yZUd>9PaCy;M#jXx zrp0>7qB&PQo|43Lw`j0lMQ)3^)qDQAyW7fviU8U-YL@^FsF#jvu?@K_fi1eMAC#^R z!R!Q0`Ry*{$o==^bk30NXfb3Sr(E0ZGf|(gN9)5ClM`sNnJ>m;wcuH0Gzs-0>}ppu z#tgvc%4?Q;!0eV&rT+kvxyUTDUQii_P$*rx^9EUzK24qLXp3t=fVxBm^p_avE?U#d z-oEgJwlFE$s3XN1=|y(Ko9aL!E5I%@es>Wg))eqC(;qc=N`chEpfazo0k{BZK}O7SJ|U7>LR30^AsEyW`ctCs@iApnWzB6n@qVMICK?+H#a+Ui#IC6 z_@>A|nZ6Fhq3Dg+?+06^GTPJ}UeZ$?)|)O013g$XD1l)~(l=09rbeTKsaDN6{KO{2 zEiVC{@YHhD)Ve70YuaDasd6ZkSvh7UK=TEqbd`Bqtrdcxy0O&EJ8$Hb_Gs5D*J-fe zdfW7j>7J41$-v~YbvvNchLuWHOl%-cmP99y+6W*P05 z;8aB|2D-FcB-Ris`u_lJn!!O16u0v=gxWl&yP^AwE1XWn2rP`5C&7Pn=U=&W?uqA! z4WqRwBaX}wfGc2~Po(DiB_HAsgc<%NuSB=;HG3uN2ihqA020@)(sdq^#~y@AvOJ^7 z^n{bv&0x@ZS@0j+d@LBN!VEBLneUf+p^?r}dP}I>!0d|J>niu(c<9UlqG-h#Xq+MS zEAmBWiJuEX?`*x8T0HRu!OC$C=5~TqMxxQzWCOnrBl3f0{{V*2Yl%%*GwQ~$RbXNl z^%a17$)kp3Dd$=xAa2uI{UV9gseiRFd&pX?q0`O`y7eLb3GyhK-11?lH`*Isp%p%f z>kN2bfdsa#@^AGEM76OHEep*RDI>C{+Nl!Ho%f0v^H;o6Usn|O(*FSHiT?m*QFSMI zRjj4-FOvmfyErz9=7Z?pE+JT~wXZ6^$E-SsB1|I3H+v5HpN0YYCH)GB zw_6wjX9OyS$M!2i0CvdzzQ{yFHIDF@G$3fOTKVT1G{0CjGjuPeKQ|D8kZZgW0|iR$ zV$-o-xG2Vwr3!20{Xt8rgsF0<)F7Brx{5|K&J?F|j=gK|j!#(5tZ+XS`z30e1;)lWa zi)-_Dm+q_H3;uraeI>xXWsk%09zV}$kIVRiWPhHJP#=^1O~1SLijJQ%7ufP+{`=li zA`S|FGhO`$Mw2W}ZaN^qXJ}5xwl5!PgtFhpVlKE=lmK7f_Y9{4S%~BRHt;Zlf0Yf5@woP%u!GETZb_wO}aT&=aW&lI7WOy<2`|DRqPJK@Cu<2+F;);32&P zwX73X+j&d3wrJ1WK4Zb<)SXE4lc-8}BVMGTx|HIPduO7YP&6Kdqe}TlZ1N&Xl_uP< zz_c?nUztYnLs>&Gik%0){N9_)%E@9U@ zr*!U})4q33`QPDp&iUOQsP%p0*A>j~o$>3P^S*b^`Q0A5-#e#tUo!IC#q$*tm;hGT z57Q{`4-ncI>TuR(dDU;+cKvjlp0aLBRMmvooqRf=EId5a;HCy5!6nm zb<^g!{Li%cm)d++?H`GPXy;oVY_Y@e{b!`={URpMDMrLYcy|lBM=c*GyrI|9$~ip* z&r9~qtCG@{2r#~6%gY5r!Ir>Dtdpirkvar83DcbzaL$bA!;S&8I3dLjC=ArFs)8zM z9UFlo!Iiz`dIPfeihK{eyW{=ke<$xg6Z@Yr{m+U1=fM8}a{mB}_m0oO>nb$(y2^3! zb(Q1d>nq2_)>n_0tgjz0SSUOq0fx8mzN-f8{Lo$qqZQaSwuKhIC# zC-XD-S;OfkMd>$;!}xEB{-DgQ;AL`IF#a3iB2Url;Tr~UL|;y;#Y}YB{-GhSBXv~IDq0) ziA&M|`h)1HQl(0PDpUv(zwrnKN|h>9uLVl_1$ZmLUqGo+rAn15SI|Sm`cI>1c)EQL U{CE1vx72uT^)c{%hHv5j*$s-b`2YX_ literal 0 HcmV?d00001 diff --git a/public/images/wap.jpg b/public/images/wap.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bd0b576a3633b942d7e49b2ed2e89238b6925a8f GIT binary patch literal 11760 zcmb7q2T)W`v+vnu7nZzB&MX-ug9MSVWRMI3l9#ju$w?3;BROYKqU0o55D^5)NJerJ z5Ks}2B&gig?|<)iU)B3w)tfqd&ab+s=giFMou2OL>-p<-0DebBT?GJP3m=FN0Iq)n z9Tjy=Wo&H#02jL0x_U!U0O0E8tDgh1Xqu zMeNupuo&s^zp%~!!nTfHuGl&^v31z(T-~tkgYW$d+x@|h{$N)ZUu@t0mOmpTvUf8y zz&_crKL$V*PzSUCT>uH#0KR||-~#vn{Me@(mf{WQWBCgIL7wifye?MC1}o(R*kUD= z0C&I@u>LC#{P_mhI@t2>x%I|~iu@&kh!g+-x_W*6odW>y(g5IB^7Zvq(e?GOVgSHd z27qq2f6KcU0)XTxmY)1?8hZf%kVXJNYu~?VHdz4B76kw_3m(>9)_>oFgS~?>7yvjf z2LNId03e?L00Ogr%^Q~YhYyr|0D!yLxzZd1fSg&YZT=s|4Z{lj&%FIV>-;l+ z*GqsRfCC2qxv&L-y`V5C6as+~;NjuIhzN*?2nh%YiAl)d#3Tq3LP9td96?S&Nl8gW zN=-vWK|@ACN%5x<5Dr!b0>y_y@hON2i7EcS%k^6T0R!HGaBx5f0E__PAVAlB*uenU zp8feB{dWQ5KyU#N6c2{w(t&{glZma3?Fbb2dJ!PP!7|}EaI7YO*Ad>e3=u9z*$*f{ zU$!T_B+5phySsrwTPWWx+G;e!PZO8D5s!P_X4pjJUT6h{rK3}*51}!m5a?~TK@RLi z{NRuXK&%vlY@G2k#Dwz2;<2~l@*p#-RqP&RPh zywPFG>$qX!nS2o?A)7sWzmH7{c8k4d_&rWIs(V6Mi@!!u6FT&Y*J9AtML1RT!@l@d znUqiNtLo>VY!#6o7e5yhS1rW&UL*AQ05Oh`ZA@s-3*@|1xyDdYf|Sq5eZ#>WeSk`| zyw)sf_^W}>i}`GsN0yr7@C?OEBYNk6hjxVs3TCn`8WP;15L>ibZSq(&xmpKhOTyre z1wcqVJy$=p`8waY!f|9$gB8)+8b{*FpyBl+k?Gy%jE?HOVl~(Zu2MS~2d}8mW1grq z?LM09y_DPK@K%qIaMm-ghhMgj-*?H`wUayxdN6vznW(Pcc9ea97fl!<$JRW*>tfF$(P2_XK>9K-!{YVLptpF$haco7 z78}wRPo?r=+W_Y#xQ7dj>4|#CjNMomlsqxY*VfBX7v_gpEUCiTCX>5sunlevo zPgS{aFW9SnxtU>9Qnsn9pln1(${rd^19!=qIbsYU;bIiof4h|^@H}w~Q@$wh&g`q_ z@934$fB7ITZ zZ4{G~`)Ad{hPNM$KiUsi4bo2kP5t=s8|Fdn$g|pDYRsP5tq#Y^+L@*1^d5c}p~qh6 znJipXw{tTgJq}o-q}f=cFO+9QqeRTpvHwXZq!ZgT@?(4L=d^j zGv48Pb`J869*k9asX~+KJgPDe&PI>PMSK-*1z!g) z_m&r0LCfo%L!U_Aq}L5w6oeZ8dUj6p_nz-mHWmEce*PpIYLcbB&xmI+3;BH!$w3GKj|J(CP zkDH>XbRdlk?b|u*qLIQ^kuft_DP<%$(QGkVqMC5u%~)f6CGfYo=-T_<$y34`HM~=n zoS7QaNg1DBGq-)eZ65J3y*$;||C1Slo~C=I+fF0gx3j}V@%eqUq8_=6Z0Ojd!Gc>B zmcehhM1z?&W{)S@msUzNYudW;vkcKY4{v-@jp=_^Uzt?u^yy2L>-e4N=x|4xe%z*z z2`_>t&ny}k$(;cmlS@+my}JDieZhxGig~Y&OkXo+Q6*|K#aFF(Gs5zWe!HgK4oD)M zJoY%Le<>dD#()%2$r1ym=^0_iB|=5Bcd)V6Xp!#SS#1c{(&DSRb$8Z6qjc=RB<;=a zqc!@1Nziwykzm`8^gj4r+Z-UF$cY1IiDqgQBeFxogRw?L z2x}ssIAG`>>-UeH0bz{{6pp|pBd0*JicqpC;IZGN;t&&O5mn;Enid$=9)X}>7y+`8 zkR|l!-JHCyzb8^+xvRpnjT3YW9 zXe)ktzizixo|K+B`3EBWNbfA=EGwfkJgP;im|nQDPQ+`LiHApP8tt(&Q6kNzZ{6oQ ze{xdhU2|Zdmcj@VxM#;lnPx*v({S=gMS_d5yQXVv|Kk;xF9pU@r7AvowZ6Qxt)&@x z&=6mEP_7tb;h0WanU@$mX4?*i5IqTu8~hUDUR%~$}NRXTAt(T;0*aafo~g&|B(Tua^uZn&e0$np-^Z_N=kl&iRwz;Pn`jO zQ9=@Cw|co36L{A^Rgkx5`p9nT{Gj5XXJ2gn*%K8Ng)sSS`S|z~t`Z3m0v*p}q4hbu zEBEPHw^`gz9Q-;%`qok{5-i)LdTYThP`VOl@})|fEJR=SpkBnY=*!pzTo`*Bad`L= z2YUu{YCS1tf=$vqjV>JoMvSs#*|27~6) z|6nF3NuJ$qO)IYAGw@~gwdZo*UsU^Lrp{bl$?{rD%Y#d|d!;JfvK{hkD?S_|A_D7o zQ4xWiCG;qXklR6cTjk>;X-wScMz4YU)3cnFVn0liv^$5L?@nsX_*7`lwHOLi$e3o+ z&E34&RAJvBTT9sTX^-9@pfGPCSy-fGxSvc!grN5sdUW45f>SX3B<^Mq-= zwnobuKL$OcWJ`{fG*G=AdSu7BSf7{Luu_ja98mOZ1 zvysdOj6a-Nl|Ut$SH#W`U2G<_)jr&>YlcW=(}<&O8MRmcL=ST%QTI!B_Uz-&AX;KU zCY6W_bz$dgu*m6j4zH-cY+xNhk0rT6m)KksDDTH;t4uHs#A zm2>HNiZNs%!0SS)60g@0I-|#W=n6x-?R!k(^*DLTSDpf?ESk^ik1BsP=9ZULReF7*6Z zzXA-xF7yzrOYtvv0=v*7AY?48!XhX*xjd9YNP!Zmr_UyO^Y1E;^*iK1KeL6g84 zkDf1=-6R6EZFAB%HS-eskI9ebe|gyrrO75AEzIn?OVFOIgwv0rqa+dsbE}_1D`nRo z){vTC1Kln3ak7Q`kBMcvPP~TwH3l5?2a74+1r|`e5|jg|cagf9WFOJIs=exvaeMS-;=qmW9r|#U^$1z+NSX zO(>zv_}ydG$}7T7g(I5rG?NL>Gh>{+&f^^}m@?hM#-VIt`iEOpcPhQo{o*PjH&}=q zhH7?QuL0JruQEej&p)rtg!!I5wenPT?1;v`qqJc;n9*AR<^!o4%u84bmU zzmzRfK9dP8a&ihHlBQ{IPW66DVKhqR&B<+_b$3Z%->>daI&IdXzSAyClmks$?3sQS z9GT3vsP1`WwPB|=9C)ecBVw8C>7&b0nN;Vhq*@H9s7z9rsDl{3v@@ z`*n4h+J{#kadXEyn;2}V+eQ4`n)ip}Yzq(q>}xzW>)NhrV^jXOd_IfrOFS-+6n!M? z<$6A6GBO}PE-60 z)iZWmq#{be`)*Z(m6Uf7S%`;bOnSaQFNDxB-uy{Cb^);!W+G0U=dO7I)7L;f_?g`3 z%Ph>5cxiXJ0RdZs+MH$mn~;~3YF>P8TvnqI@iZsxnX>u=IRtG6?|XvB-Vzcm`N}M7 znmterZ7EM`iEnrtyf6ReK@5rC-6t`9Ryl;TnOQ#6UL32D*FY&<-4n|@k}G`4*TBny z0Ap(%1sM(Hi#PwMItT}Z2LXei|2WQnRGo|k0w+hZ3JJ4`pyWlZp%hAb`slx^4*sL+ z*Fb~+9T!w!VCi9Y*BJ@T-)|)N?9^$R)hjA zNvx#W-O0Bq-0Q_v4JP1kTr zOoDJfE}NR=U$S|{!Z;@<=j|L;MVhEpg>9AhDk+kic9tJ${}LK(mZKNOh)a1XMO^07 zS}T@p100nXIppJm!SCX{*c=!SwE2tPa@?vQ3yA$grQ@Kz=Ns9q_{B_#<}8}UFkH$+ zZ`qda;xHq&BQbqJTZ|y3LWL5+FtVJJ60}bf{hdW^6k7&IU6KdSb^Dawi2XPaE_wiO zUm%B|;}K!PD%_2HZ68+@KG|t$X(@YC*^G!%w?Ea$4~#ZH_EVP1O*xiaA^tc`ZXdrf zGdMeR4TR1NoVikb-w#cH-e51ep`mYy-}v-ZwE6c3%G|38#|E*UGbc86mVt`R(o{t{ zXQq)l6Q#dyH%Gy=?8%)HDTc1p8%Z~o>kjmks4dG&p1K8dC?x8}6PyZ}(@=bj8!qDB z#@Ehinn_TT99;NBr|U#1l$R0Pz9fH8!q2C=?oUtOt_(lle|W2Zdr!w{G|gO{@@8)O z>r&#orOZz1(-}s|pACu^?YZzPZ|cYu9YoX&e0<|MyxphIu&7Cgf5H9yI1211_I{FtTOr&WerKXpXg#2 zNGIpqc3;!2u8^u^J=0_~@${N7Wc@w7Sp1l;R#-=0Oh96_Aj~W|R$0!|Y*F#3=?der zs?yB6r^5aQ_Un0Po;+Dn{u)+)72p6?eIXEhe5?xpU8}Ld90U$_sTL-e*YkwJS%pMU z)?T5a3f?J24UIjMNVc2$VH<}OscFUR1~#_g|LoFn<-k{5UoK8r`l;&J-lM0CQFWmf zWDSTn`3#oQlWeKuqlTZgP^%wUEYmDZB0tD}&Hb=)__*SCw4vn}^t&~pS=01A>aM(8 zfwuQc`;o)zSEywUeP5&Y(68BiBM&L*P}bky=5+RcB5AOW6 zc~r=7p3-Q$95H46)w@)SZfDSIOP=7yOHvd~V#_irlkaS^K>lQh+e zqQvD9-`hQPgcR1tmDXZpvY4*Q*!di1&seSjvKK4NhLNdnn)chpO+!(IhvI_lx@d^H zQN8Ny@Or({S~RaAj@a3juN0-n5G1WRc>DzK;fsC%7P@9s5nxSRVfP?|pYn%O8n79{ z(jA%urJky~$HjUo=3q(v$<7l~b!nB_@=(CeTk(r%XARzchhJ}7A2>f!{5pH`hQs;f zvH5{Hi=Te5GYuySH5n35kgQGn_b^N4ka|f3IO%kY$|Nhb}k62WoAw0%tnYjLNB3 zeBNR?A2wjJnvw=nvbJM$3ih9J%fDy#l{0h}bk91{TDmTr`3k*IP3&2gBdcDn{6=Ux z*HY*{V-4nbBBW`ngc}Wl8e9X|y2dAu)ZF&Z5Dj(Yml>v+S+RHPIxS@hj}k^~ewsbj zIC4D|d`GG;aX*}i>2!PP*VoIc3Hi7A`~#x|^}82Q25esx8b4=B4t`^EYDRZ6Nr`6n zLhl+pr#ZeQF!|Zi>K8%PfUzf~^h9rThl=bQo99qt@eR*yq3x)Ndcoh3Cht&IMscQ- zx>MN+v9*B`DLxhm#C+A~xG3TctEQJ-(!H}6LNwtDw=7|j1#r)!d%5M_1CvfS4VSy! z1}j8Q1zD_qj$I0NIJrNpxbZQ6F0CcNsPM8bSvb-$3TIH>ka*aksxi*nbKEAk-q%*^ zHR}spDh*Z6b>H2uAKw*zv!E&*DWR6wgzeTfR!B;s6YfL-35t2~r}`LeXi7RY?gn^DjH%*0%dzHU zlsbNBo-(t%q<6dogFc0`Zbwc@NK4-$i@M zT~rknb!UE-DPjyAlz9%{5TPia_DJ4mQt8(nP62Eb& z(%zXp;IH)g^@&as^Xp=wkVnfLRuZ{m6}gzJQy}J6n)G+RnGUyG&lH_+?uLsB1~&2D z^iRB%;XpqOeDDsCsC%L{@rFXqkb=;Baps0KUE;4ulo(AgpVg^dG4s7I(kZ8=s?z$l zT9Z*PptuzeToB(;hG>?4c81u;RNJCo2r6(GWO{6*3A!eHv}H@0^5kr$mw(igzMw4V z*uLld`&rkvRYy`OGrsZ|JI&~gwXxXo*Q+PDtDYQv(>Z8cu4NumjGc^Cq@J~BDAwp5_DpUZ3H^68N{+>j222RkOO7U^;h-s0Bq*ZoEf%5K zSO?+Dhpf>O{A^b}`mhxbFd*T`2nYzz4z11TcqhQGw|H&NF(?}jt)~ennP0;YL8Lfa0HA4;tBCrK(pa$Q<}b{ z!n_(bDN=9Z2OEmun(*hGp4g1oZM#&Oj0>dp$L@8)f#t@C7N5r1+^Ful9>&Sxk`8aX zHCFqKEMgf>vO}beC14HnK;~$I75VDO!j9}I2^6l8FustUeppUh?8pydv}tX_3!&t8~dkm2%A25t%%QVL3;2W13@ zD#m5vGcesr3v1~kfIc;P4oiU`K%X-fJ->J^kX?30zxqvpD2|7~kh@4dMS9}}adVi8 z-`!1u8!7oj;f$<(v{5O(YOY8y9FXK($*)Q|kAUzo=Ic+R%LxlLx}2bnIIP>4>GX&% zD0aL`@&)JjirS_sk5;QKM(hJ8f@eTvox;>QiQQIBk-1FQ06T~VBTwlFus8UjaosuKYoRM|1}YN`-w@DE}0R7mmz#HAEQg?4D7;iKVh`)*xRIfPq} z3mm%m(q70hZ7npj?R0_ipkh`k>6ln)AGFI6#U5BZK@SK$!1YD%i85hz4G?3e8Jy! zpac#~3yV^upE`X7Vb8GMk%4DuWo(8o1VG*)Ee>daBqhi66H=SK4f}hfZ zAtn1O)JL%+gHe9uhe;6xiAyD-FjPMTt}MmPzKcxPP41Q}a)wZc$-Gx{Mcrn5kBws9 zGG$R>jy%Vk11kOaD%lB$AuIZ{x=LDm%~_ja7pcl=YJ}!PUnh-q2cZyd76qSO8Y>8a z51K%7IfdA6j94$=TPzG|4~*}>brP87se4JJEg#lsjs795 zb>c@>$cR_tS~5;(sdQQsi+LmWGN8i1)}NIY zllo~UPtNyqCAHB$i%Hb*;?^6lNbU3u7)&5k5hM+wo#bbXBxai(4rWq#|8734Xk@KP z#*oDfF)NrGY$ry@u;cnmKOKn^MaMfG8D>89wuAQz9ny~ua9!|jQ3Wd*-zu69!I5j{ zo%m$UtQ2fq!uDbKCOl*S69v_NT&!IlNPMSAtITe4sD0M^V~)G4bIR89kB6X&z#<-> zo4}N$^O$EZo7T;8!$LaMX&>G%eDbWW7O!fZ0m2x_E|~?2GmGVB19$Qwn%^pjfV2eK zt;^2!ohqzplp2~G8c`Uk09J*(;jVI5uU~Vt3F0SDn7RMjkE_cyN&r4OA9Gy4EMzT2 zL}G8W9XQ45wdGi!9TJ|F&5QAZ#N1xdDyT~*6K5Q>;yS!C(Zg8ku4;UkQHQXozr;_} zc5G3b|N4p_PZG72$2D8xl>?%IsKDNGNbRbJ+-(M7v{8Nzatil2pS+i@e_&$2@{YZ? zeK7LyNnl7bGfoRy6z8DTd&mWqWvtv-DW{7sP~`f1tlN(YOeY{BYt5dT%3;<@f_8pj zk_8^rd(dhZhJdja^LeOFBeezNxRSq%We*CZz{mlc#^kRN8?f(rc3# zm&Xd&yAHwd)}-g<3yW!(g5L->Gn%)9#msBk1*>Rw9SN##!RnPCdDp<&>(0+r2GR?? zIlN9mWaI>Xv)T84Y7h}~^sopf8eZb_s^mZLJBcXYKlCB_-fM8#ex6?Ly67X5L$c6I`H~zyCv0o%BNgqc&$H|Z9 zQ}6OX?ePj^ST_9vs!xL16z|_gtNet$`Ez!~iNGF3VS}0w9Bd-Q-#`y`m%suS7D8gZ zWb2e7R48_n@OO{!Czc7{$SDwv@YmNd5S6Vt9GLE9qDY$=9p~lqZ_*0blDsokz;p}a zkddAv%6nsYnBw+Y^!|7fLzC!;Pi}d@@ZBBte6qB5zC%@`&e7516_)r$y2gPGp-I|n zpgCN!!CJ2UMRtdg%a5F#?ezwdA(^D*XzQz75yT;!sjt2Py~0tmZi&GJxTWNojjzNlt&L^h=;_?v!8qh+-8)|&-u~KzSzP`#u5GL%Dk^=_u_kf9CVavA zB8zc#YQK?WaZ|oP_u1FKjek1X zhW~8R*&tsWZpP@SB^gLR&*amZ(wc9uc^Bt*;m4BG_L-IKNq{=vy?lK1A0n0HgU#*J z!RU?bn4IkOvff0O@6qi0M3-t?aiYTHqQc$SJObiYW^p;8BqI$A`B#eU`6&!37>5rN z8Sgz!tX%btnPp?XvBmbRa8n>>bJ5-p zanb7TLS$+*+Pl(tR7W19I2+~+yF1QzB#IeZ0~1WNv??tLA-)|9TT`hDpuP4)*J;{e zN~Ytsd_)$Vw{ozbV$8Z%lK<>$4r`3#0pdFOCpblXA6qggY&Pyxhhq}H*Xy;|+kV*g2N z2UlW&#jWi4=J3`V>?)lFw<>khk9|(#`^48c9^VLKMfCMqej}6S*bf^CdLd(J_JPyn zy@`DRA-j^&s8z*Bbo|+`cbE51KOC^|)3;}-Fl&gYi`w0WV7W@P=;nv{lbtc5h3N;~ zXCJETv3oJTA@;G9!{x>iB9Re7alTA5X}Q?1G>@CupE47Vnpi(sa-f-?Us)O6D2ec{ zZ?#K{O~AH3cm_U{I>h?!NEZLoC(wxk;j+Q zIFu)71!hG~4Tya1|I|O5>GrXyeJV<*&67`u>ancH@%V@OPy~}&ULdsrkpJ8D5~*t9 z%Y>nR?kNNpNXTh)ow#t=jVTDBA}M1G^Om{u`1cO)=-rol!MFLr_3fFDAz_mU>c!W7KhZ! z4SKgX2#slC)*oc1EFbvU9^Ke}Wzv%-$9D)fvA?2iOMZaQZos*P7d&*M{4?jpy6(^~ z`;VvB04LhA8o7aJ$@$?BCQItsyRvzX4V!)V`I>xD8aNZgyTS(8pNxNwTRjf`wzBVe z?2s8G_m7W;g9FCJ=Aiu(WETd(kpM!7MIQApFYRb@b)Lt`fZH+CNd^m^W3ws%o`i6QTNB(c2!B%~ zL8Q6u0}e9krX-pGwT1Ylxhj($eL$Hx-?C;85y?jBAr}m2Swp~G zhEvU8t9;~~uB7I#iK}XiLDS>|R0xoli~@klUF=P4j4PUChBXZijd1w=0bNk+ubpyaR<`BTO z`vo>5G8K@XsJV01OWst|Pu)A-_2JAS*naN2xi&x`9TE(E_QIV{n}kPAD50OmBmy_$ zisNx=LAEyS`YhixL_jMJ;B$54eldwIiz@6*n5E_jVeWX(O~g=w1Xyi2+p|#+6e*c5 zbn|}lJTNWec02<50o<1KD%xDI=P^Ex3A*by>l{k!*EIz&ifQ<(p>X7_@0vYBN6vVT zP9T`fA_@W1tbw=!n)n*HOB3XPD@F~NnL_JrS@ZyXN7Z;y(EH)cZRr4OI#kfk1Jq3C z7izGq>uTeJ7ZqM&@kv+iIYdAoGMZ80*|+{uCS*^D__Z2ELx6w_u=RX?iKQch*+7 zSv$ZwmQzR{bBE0oMY7Tjgoha7qSgt5l0jqLUYJ|&fGrd*S2xGLNwa1wdigvVv;ZXq zz_2GBOI+Ci0`~!^+jKvvq;tj|Y5>F?d;rJ=;0!|% zdxGfTAmc0{)bFjI(RSlwcTaTXzQG+{gabV4{iLE^y3 zDB!IMN(4keWPSI*V)UMgmeaT%M;gDv6UPjUH)NEw#dm34KcD(AGEphIC+B`BU>vc^ aY6=gHL$Ww)S6L*L$b@&qQC|bs3;zX9Q$ZB~ literal 0 HcmV?d00001 diff --git a/public/index.html b/public/index.html index 770eabc..e897057 100644 --- a/public/index.html +++ b/public/index.html @@ -2,7 +2,7 @@ - Webb1 - Presentation - Fredrick Amnehagen + Webbutveckling 1 - Presentation - Fredrick Amnehagen @@ -12,7 +12,8 @@ - + + @@ -23,10 +24,17 @@ -
+
-

Webb1 - Presentation

+

Webbutveckling 1

+ +

Presentation

@@ -44,7 +52,7 @@
- +
@@ -62,20 +70,20 @@

Arbetsprocessen

    -
  • Arbetade i GNU/Linux, Debian 12 - Bookworm.
  • -
  • Började skriva i emacs.
  • -
  • Utgick från exempel i på w3schools.com.
  • -
  • Installerade eclipse med webbtillägg för att skriva koden med syntax highlighting.
  • -
  • Skapade favikoner i gimp och inkscape.
  • -
  • Skapade porträtt i gimp, plockade bakgrundfärgen med den digitala pupletten.
  • -
  • Öppnade min Forgejo server och skapade git projektet, sedan skickade jag upp projektet här.
  • -
  • Arbetade hård med layouten, provade gammal tabell, float, flexbox och landade på css grid.
  • +
  • Arbetade i GNU/Linux, Debian 12 - Bookworm.
  • +
  • Började skriva i emacs.
  • +
  • Utgick från exempel i på w3schools.com.
  • +
  • Installerade eclipse med webbtillägg för att skriva koden med syntax highlighting.
  • +
  • Skapade favikoner i gimp och inkscape.
  • +
  • Skapade porträtt i gimp, plockade bakgrundfärgen med den digitala pupletten.
  • +
  • Öppnade min Forgejo server och skapade git projektet, sedan skickade jag upp projektet här.
  • +
  • Arbetade hårt med layouten, provade gammal tabell, float, flexbox och landade på css grid.
  • Stajlade texterna med fonter, färger och effekter.
diff --git a/public/internet-history.html b/public/internet-history.html new file mode 100644 index 0000000..e2f3b51 --- /dev/null +++ b/public/internet-history.html @@ -0,0 +1,85 @@ + + + + + Webbutveckling 1 - Internets historia & samhällspåverkan - Fredrick Amnehagen + + + + + + + + + + + + + + + + + + + + + +
+
+

Webbutveckling 1

+
+ + + +
+

Internets historia & samhällspåverkan

+

Från röksignaler högt över träden, till telegrafkablar längs med järnvägen och genom havet atlanten, det första telefonsamtalet, radiosändningar genom fredstider, landar vi nu i tumultet och oron kring krigstiderna i mitten av 1900-talet. Mekaniska miniräknare ersätts av elektronrör och sedan transistorer. Det är här vi finner datorer så pass små att det kan finnas mer än en handfull i världen. Kommunikationsprotokoll och system utvecklas för interkommunikation mellan datorcentralerna, däribland Arpanet vår föregångare till vad vi idag kallar internet.

+

Värt att nämna är att det fanns en arbetsroll som kallades computer, det var duktiga matematiker som arbetade i stora kontorslokaler som fick in information och genomförde beräkningar som de skickade tillbaka till beställarna. Detta användes bl.a av NASA innan digitala varianter ersatte dem.

+

Commodore 64 Vi snabbspolar fram ett par decennier och datorer blev miniatyrer av sina föregångare. De blev så smarta, billiga och lättanvända att gemene man kunde ta ett lån på banken och införskaffa ett paket med en mikrodator med tillbehör såsom manualer, mjukvara och joystick. Vi är nu i 80-talet och musen var inte standardiserad än. Vilket var rimligt då många möttes av en terminal när datorn startat upp, inte ett attraherande grafiskt gränssnitt. Kasettband byttes på skolgårdar, affärsmän bar runt på plastiga disketter i kavajen, personsökare i skärpet och i vissa fall en mobil telefon i bilen. Notera särskrivningen.

+

Under denna tid blev datorn någonting folk kände till och många hade en i hemmet. Marknadsförd som läxhjälp för unga, receptbok för hemmafruar och mannen i huset kunde hämta hem dagens börssiffror eller skriva sin nästa bok. Här började det bli vanligt att de familjer som hade båda dator och telefonabonnemang även införskaffade en liten skrikande låda, vars uppgift var att ringa upp andra datorer eller datorcentraler för att utbyta information. Detta skedde genom telefonlinan via signalmodulering, en samling klick, tjut och brus som datorerna tolkade som ettor och nollor enligt diverse protokoll.

+

Internet under denna tid var utformat som en “hämta-hem”-modell. Om du körde ett program som visade dig de senaste börssiffrorna, så öppnade datorn ett samtal, ofta direkt till en serverdator i andra änden, som i sin tur besvarade förfrågan med blippande och bloppande. Sedan läggs samtalet automatiskt på och siffrorna visas på skärmen. Det fanns även BBS:er, Bulletin Board System. System som påminner om dagens chatsystem eller forum. Där användare kan koppla upp sig och hänga kvar. Detta orsakade enorma telefonräkningar.

+

Många arbeten förändrades. Böcker och nyheter skrevs inte längre i huvudsak på plignande skrivmaskiner, utan nu använder datorterminaler som i vissa fall gav användarna solbränna från strålningen. Ett exempel kan ses i 90-talets Lois and Clark, Stålmannen. Fiktivt, men inspirerat av verkligheten några år tidigare. Information spreds nu även genom datorsystem över hela världen.

+

Genom 90-talet såg vi många innovationer, så som laptops, mobiltelefoner, handdatorer och framförallt relevant för oss, Windows 95 och Internet Explorer. Ja det fanns såklart andra system såsom Netscape, föregångare till Mozilla Firefox, men vi håller och till det allmänna.

+

Nu kunde vanligt folk förstå datorerna, knuffa runt en plastklump innehållande en kula för att förflytta en ikon på skärmen, tryck ner knappen på klumpen för att klicka. Internet gick i folkmun, och Internet Explorer följde med Windows 95. Många som köpte dator med Microsoft Windows 95, köpte även till ett Internet abonnemang med modem. Abonnemaget och modemet var nu anpassat för att minska telefonräkningarna lite grann, då telefonbolaget nu hade en mellanhandsserver för att komma åt resten av världen. Barn och vuxna världen över vande sig vid att läsa nyheter eller söka på bilder efter kl.19 på kvällen, då det var billigare. Internet var inte längre specialanpassade gränssnitt för specifika datorer, nu fanns det HTML, Hypertext Markup Language, ett språk som webbläsaren Internet Explorer, med flera, tolkar om till en layout med text och bild på din skärm. En del element var klickbara och länkade vidare till andra platser på cyberspace, såkallade hyperlänkar.

+

I början av 2000-talet pratar gubbar på TV om det nya webben 2.0, där det inte längre är du som måste anstränga dig för att hitta informationen. Rollerna är ombytta och informationen letar efter dig. Detta handlar till stor del om marknadsföring såklart, men även och hur sökmotorer visar dig relevanta resultat baserat för så många kriterier som möjligt. Cookies, som bl.a kan användas till spårning är nu standard och sökmotorerna älskar att läsa dem och luska ut vad du har för intressen.

+

Den vida ethern används nu för att vara social med sina vänner, lämna in läxor och film börjar spridas. Epost, något som funnits med i flera former sedan internets begynnelse är nu standardsättet vi kommunicerar digitalt i världen. Gränsen mellan handdatorer och telefoner försvinner och de är nu såpass smarta att de kan skicka text, bild och ringa videosamtal.

+

Motorolz Razr WAP web site, google En speciell typ av webben utvecklades för dessa smarta telefoner kallas för WAP, Wireless Application Protocol. Det går nu utan problem att läsa optimerad variant av Expressen.se på bussen med en 3 tum stor färgskärm.

+ Smarta telefoners skärmar blev större, lagringskapacitet ökade, touch system gick från resistiv (nagel/penna) till capacitiv (finger). Tillverkare provade olika nischar för sina telefoner. Nokia gick samman med kamera-tillverkare och skapade bra kameratelefoner samt en speltelefon. Eriksson och Sony gick samman och skapade media-orienterade telefoner. Diverse lösningar för tangentbord provades. En gemensam standard växte fram. En gemensam uppsättning funktioner och egenskaper till grund för kommande telefoner. Program för dessa maskiner kallas nu för appar.

+ Apple låg inte och sov, de såg var marknaden var påväg och skyndade sig att släppa en Ipod touch med modem, telefoni och SMS-funktion. Många funktioner saknades. Enorma belopp spenderades på marknadsföring under flera år, och efter att de kommit ikapp resten av marknaden i funktioner, så blev Apple Iphone 4 en folktelefon och standarden för smarta telefoner.

+

Webben för personen på språng, eller lounge’ande på soffan har för länge sedan glömt WAP och kör nu internet i sin fulla glory. Många hemsidor bråttas med interoperabiliteten mellan olika skärmstorlekar och orienteringar samt inputsystem mellan mobil och desktop. Hipsters försöker använda typsnitt som “ser bra ut på min dator”, men då de fattas i många andra maskiner, ser kontiga ut.

+

Telefonoperatörer säljer tilläggstjänster såsom 30-dagar fria meddelanden i Microsoft’s chatt program, [MSN, Windows Live, Live!] Messenger, inte Meta/Facebook Messenger.

+ Live Messenger på smartphone, symbian eller liknande +

Skolor förbjuder telefoner i klassrummen. Internet, telefoner och den digitala världen blir problem för unga. Nätmobbning blir ett nytt område för oss att hantera.

+

Mot slutet av 2000-talet så ser vi standardiseringen av ett nytt format för att konsumera internet och media, surfplattan. En produkt som långsamt utvecklats i bakgrunden med ånga namn, UMPC, ultra portabel PC, tablet, slate osv. I många fall bantade datorer som kör Unix, Dos, Windows eller liknande för specifika ändamål, en del av dem utan tangentbord.

+

Utvecklingen av denna enhet mellan en desktop/laptop och en smart telefon har landat på en standard. En stor touch-skärm, som imiterar den smarta telefonen’s gränssnitt. Nu släpper Apple sin variant, Apple Ipad och många andra tillverkare har sina varianter som kör ett linux 2.6-baserat system från google som blir allt mer populärt, Android. Inte GNU/Linux, det finns inget eller ytterst lite GNU-mjukvara, Android använder Linux kernel.

+

Webbutvecklare har skäggstubb, pappamage och går med solglasögon inomhus för att dölja sina röda ögon, i kavajen har de burken med magsårspiller och en halvfull fickplunta med vuxensaft. När vi byter decennium så standardiseras nya HTML5. Adobe Flash, tidigare shockwave osv, förklaras som döende och animationer kan nu skrivas direkt i webbkoden. Video skall standardiseras med bara ett fåtal webbläsare stödjer de nya funktionerna. Allt är i luften, skrivbord välts, folk flyr, nu har vi för många hårdvarukrav-, skärm- och input-system (alltså plattformar) att hantera. Responsiv webbdesign växer fram. Vi kan nu i vår CSS-kod skriva olika snuttar för olika plattformar. Utvecklarna får tid att sova, klättra ner från tagreglarna och komma tillbaka från intensivvården.

+

Nu är det 2014. HTML5 är normen. Det är nu vanligare att man har en Iphone 4 eller bättre i i fickan än en egen dator världen över, jag inkluderar såklart Afrika, phone 4 är gammal för västvärlden. Webbutvecklare får fortfarande bråttas med en del undantag i äldre webbläsare, såsom Internet Explorer från 2003, men det är nu hanterbart. Kodramverk såsom Laravel, Bootstrap och diverse javascript system såsom Ajax var nu standard. Webben var multitrådad som standard, om programmerarna tillät det, synkron vs. asynkron programmering i Javascript. Detta gjorde det möjligt att optimera för de nu vanliga multi-kärninga processorerna vars arkitektur nu funnit mobila hem.

+

Sociala medier driver internet. Facebook finns förinstallerat i telefoner, Windows har en inbyggt tangentborsgenväg för LinkedIn. Youtube finns i din smarta TV.

+

Under åren fram till nutid kom det nya webbtekniker som ersatt de gamla, främst uppdateringar och optimeringar inga riktiga vidspridda paradigm-skiften förrän nu, 2024.

+

Det är något nytt på gång. Mänskligheten övervakas konstant av alla system runt oss. Folk köper avlyssningsmaskiner som marknadsförs som enheter som förenklar din vardag. Du ber din digitala röstassistens snällt att släcka ljuset i garaget, din villadörr känner igen ditt ansikte och låser upp. AI tränas på all tillgänglig data, laglig som olaglig. Webbredaktioner använder allt med AI-assistans i sin utveckling och skrivande.

+

Virtual Reality, VR, AR och samlingsnamnet XR finns idag i sladdlösa mobila headset. De är fortfarande lite klumpiga. Många använder dessa dagligen för att logga in i t.ex VR Chat för att besöka sina favoritmiljöer och umgås med vänner. Det finns många initiativ kring XR, det kommer i vågor med några års mellanrum.

+

Bakom kulisserna så växer nya webbtekniker fram, det har tagit många år och kommer att ta många till, men snart landar vi på Web 3.0. Där krypto och blockchain är dagens buzzwords.

+

För att skapa en hemsida på Webben 3.0 så behöver du precis som vanligt, domännamn och hosting.

+

För domännamn har du handshake, HNS. Ett decentraliserat namn och certifikatsystem. Alltså du kan köpa domännamn från dem, verifiera ditt ägarskap av domänen, skapa TLS-certifikat samt använda deras DNS system. Se https://www.hdns.io/ och https://handshake.org/ för mer info.

+

Du behöver såklart ha lagring, där har du IPFS/Filecoin FIL, Skynet SIA samt AIOZ.

+

Filecoin och IPFS är system för decentraliserad lagring av filer av alla storlekar. Många NFT:er och smartkontrakt sparas på IPFS.

+

Skynet är bra för backup, förutsatt att servrarna finns uppe när du behöver hämta backuppen.

+

AIOZ är från början utformat för att verka som ett decentraliserat content-delivery-system, dCDN. Bra för en del filer i webbsidor, vilka filer man lägger på ett CDN borde jag lära mig under kursens gång. Jag har förstått det som bilder, ljud och video, men också i vissa fall javascript och css. I nyare versioner pratar de mycket om AI, men det är bara ett sidospår. Det kommunicerar på liknande sätt som Bittorrent, alla servrar har chinks av filer, och alla hjälps åt att dela. Det finns en youtube-liknande demo, där tittare delar med sig av chunks de redan hämtat hem och ligger kvar i cachen.

+

Redan nu har vi alltså ett system för att öppna filer i Web 3.0, men nu kommer det intressanta. Compute.

+

Akash är en teknik för att använda GPU-resurser och Holo är en decentraliserad teknik för att använda CPU-resurser från flera noder samtidigt. Akash är inte helt anonymt mellan de som säljer och köper resurserna, pga content lagar. En GPU-ägare behöver veta vad som processas enligt någon lag någonstans. Men Holo är anonymt och är ett bra sätt att generera hemsidan som skickas till användaren t.ex.

+

När det kommer till databassystem så blir det aningen knepigare. En del tycker att blockchain-tekniken kan användas som databas, en del tycker att man borde köra en SQL-databasmotor decentraliserat över flera anonyma noder med krypterad data. Här är en artikel som nämner några tekniker: https://www.0xscope.com/blog-posts/web3-data-industry-spotlight-web3-database-companies och https://medium.com/@gelembjuk/oursql-tool-to-replicate-mysql-databases-using-blockchain-5ae509636435.

+

Web 3.0 är den decentraliserade webben. Där datan inte bor på en specifik server, och användaren betalar alla i hela kedjan. Det är moget nog att användas idag, men det krävs en del installation och inställning. T.ex så måste du lägga till handshake’s DNS server i din lista på DNS servrar, i din router eller relevant maskin.

+

Avslutande så vill jag även nämna att vi i vissa fall kallar internet för World Wide Web, WWW.

+
+ + +
+ + \ No newline at end of file diff --git a/public/wordpress-installation.html b/public/wordpress-installation.html new file mode 100644 index 0000000..c4e99f3 --- /dev/null +++ b/public/wordpress-installation.html @@ -0,0 +1,102 @@ + + + + + Webbutveckling 1 - Installation av Wordpress - Fredrick Amnehagen + + + + + + + + + + + + + + + + + + + + + +
+
+

Webbutveckling 1

+
+ + + +
+

Installation av Wordpress

+

Jag ville sätta upp en Wordpress server så korrekt som möjligt. Med TLS-kryptering från Let’s encrypt och automatiska systemuppdateringar, inte automatiska Wordpress-uppdateringar. Linux skulle vara i grunden och MariaDB istället för MySQL för att den är mera öppen och fri.

+

Ett av mina extraknäck är serverunderhåll, så jag har snubblat in på flera områden tidigare och snappat upp lite här och var. Dessutom så går jag Linux Steg 2 på Valla parallelt med denna webbkurs.

+

Efter att ha lagt mycket tid och följt många guider samt fyllt en wiki med anteckningar, så fick jag fram följande arbetsflöde:

+ +

Steg 1, en server

+
    +
  • Installerade Proxmox som är baserat på Debian. Det är en hypervisor för virtuella maskiner med KVM/QEMU och containers med LXC.
  • +
  • Configurerade automatiska säkerhetsuppdateringar och säkrade brandväggen.
  • +
  • Skapade en Debian 12 mall i en LXC.
  • +
  • Klonade mallen och skapade en MariaDB server med åtkomst endast från LAN.
  • +
  • Klonade mallen och skapade en webbserver med Apache2. +
      +
    • Installerade och konfigurerade PHP 8.3 med FPM istället för den gamla modulen för PHP i Apache. FPM är bättre för multitrådade maskiner, alltså alla moderna maskiner.
    • +
    +
  • +
  • Klonade Debian 12 mallen en tredje gång för att skapa en maskin som hanterar TLS certifikaten. +
      +
    • Installerade Certbot och Let’s Encrypt certifikat med automatisk förnyelse.
    • +
    +
  • +
  • Automatiserade backuper enligt veckoshema mot mitt NAS. +
      +
    • Alla tre LXC:er har varsin backup av både hela containern och filerna samt databasen. Gamla backupper rensas automatiskt genom schemalagda bash-script.
    • +
    +
  • +
+ +

Steg 2, domännamn

+
    +
  • Köpte en domän på Loopia.
  • +
  • Pekade om namnservrarna till Cloudflare.
  • +
  • Konfigurerade domänen med DNS i Cloudflare.
  • +
  • Ställde in dynamisk DNS i min router för domännamnet och Cloudflare. DNS får nu automatisk den aktuella IP-adressen enligt schemalagd rutin.
  • +
  • Dagdrömmande om egen SMTP server för att skicka mejl från mina egna system...
  • +
+ +

Steg 3, eget webbhotell

+
    +
  • Pekade om portarna 80 och 443 till min webbserver LXC.
  • +
  • Skapade en Virtual Host i Apache för hemsidan, för både port 80 och 443. Port 80 omdirigerar trafiken till 443 med HTTPS via rewrite.
  • +
  • Körde certbot kommando för att skapa certifikat för domänen. Ett kommando som går via Cloudflare API istället för att använda apache-metoden som annars är vanlig. Det går då att använda certifikatet till mer än bara hemsidan.
  • +
+ +

Steg 4, installera wordpress

+
    +
  • Föjde denna guide och diverseforumposter för att installera Wordpress, https://developer.wordpress.org/advanced-administration/before-install/. Den officiella dokumentationen för att installera Wordpress på egen server.
  • +
  • Skapade databasen med charset utf8mb4 och collation utbmb4_unicode_ci, för att få korrekt sortering på alla språk mot en minimal hit mot prestandan. Om man väljer en collation med sitt språk eller general så kan sortering gå fortare, men jag anser att det är bättre att optimera andra aspekter av applikationen, databasarkitekturen samt konfigurationen av databassystemet.
  • +
  • Skapade en användare med fulla rättigheter för wordpress, men planerar att minsta rättigheterna i framtiden för att bättre på säkerheten. Denna artikel pratar om hur man kan bättra på säkerheten i Wordpress-installationer: https://wordpress.stackexchange.com/a/129489.
  • +
  • Hämtade tar-filen till webbsidans mapp, packade upp.
  • +
  • Kopierade konfigurationsmallen och matade in databasuppgifterna samt secrets avsnittet.
  • +
  • Öppnade wordpress sidan i min webbläsare och följde guiden för att ställa in sidans namn och användaruppgiter.
  • +
+ +

Nu är jag redo att komma vidare. Jag hade helt missat att vi skulle skriva uppsats och inte bara installera Wordpress. ...Mycket att tänka på som småbarnspappa till flera barn och ekonom på ett åkeri.

+
+ + +
+ + \ No newline at end of file