Cplusplus.nu

Geeks, Snippets and Caffeine

Om WIFI och Internet of Things —

Så som titeln antyder så kan mängden apparater som ska kopplas samman i hemmet vara en grund för mer komplikationer. Om du nu inte använde trådlös teknik. Med t ex. Wifi, så behöver du inte längre dra kablar runtom i hemmet. Sedan så använder ju dagens teknologi sig av trådlösa nätverk, dvs. telefoner, plattor osv.
Och om dessa nu inte kunde utnyttja ett trådlöst nätverk så hade de ju knappt fungerat. Bara tanken av att någon skulle koppla samman en platta med en sladd, för att sedan kunna röra sig runt är ju skrattretande i sig.

 

 

kabelharva
Men tack vare den fantastiska teknologi som är trådlösheten, så har de öppnat portarna till små mobila enheter som förenklar och förbättrar vår vardag. Och ingen av dem hade kunnat vara möjlig om det inte vore för trådlösheten.
Så nu kan du sitta och läsa nyheterna, spela på betser odds, kolla upp en viktigt bit fakta eller uppdatera sin sociala media, vart du vill i hemmet. Samt med andra typer av nätverk så kan du göra det nästan var som helst i landet!
Så med fler apparater i ditt hem, så behöver det inte nödvändigtvis göra det mer komplicerat. Utan du kan till och med ha gäster hemma som lätta kan utnyttja din Wifi-nätverk, så att inte ens de behöver vara frånkopplade från nätet när det behöver det som mest. Jag minns själv när jag hade så kallade LAN-fester hemma där mina vänner kom hem till mig med sina datorer. Det var en mardröm att få till en situation där de alla kunde koppla in sig genom sladdar. Så idag när mina vänner istället kan komma hem till mig och snabbt koppla upp sig till nätet så tackar jag den trådlösa teknologin.


En arbetsplats för en hacker —

hacker

 

 

Är det så här du tänker dig att en hackers arbetsplats ser ut? Tänk om, det där är vad vi ser i filmer och på TV (men säkert varje hackers dröm och verklighet för vissa). Sannolikheten att hackers kontor ser ut som ditt och mitt, eller som våra sovrum, är mycket högre. Vad skulle dock göra den lite bättre än ditt och mitt kontor? Här är tipsen!

Stående skrivbord

Att sitta ner hela dagarna har både dina för- och nackdelar, men mest nackdelar. Att ha ett skrivbord där du måste stå upp är mycket bättre för din hållning och uthållighet. Om det är ett skrivbord som är justerbart, som ibland kan användas sittandes, så är det ännu bättre. Mer effektivt arbete som utförs vid dessa skrivbord!

Belysning

Belysningen är viktig för att kunna fokusera. Finns det möjlighet för naturligt ljus så är det bäst, men tänk annars på att ha annan belysning är den som kommer ifrån skärmarna. Ett tips är att inreda med led-lister, då kommer det tillräckligt med ljus som är fokuserat på den platsen du har valt, utan att det stör din fokus.

Inred med färg

Färg är så underskattat, särskilt inom teknik. Bryt mönstret med allt grått och svart från alla apparater och släng in någon färgglad pryl som piffar upp rummet. Färger påverkar vårt humör, och lite positivitet på arbetsplatsen har aldrig skadat någon.

Bekvämlighet

Kontoret behöver inte alltid vara stelt och obekvämt att vistas på. Det är ändå här som man kommer att spendera flera timmar av sin dag, och ibland även nätter. Få in en loftsäng där det går att ta powernaps istället för att dricka 20 koppar kaffe, eller övernatta ifall det skulle bli en lång arbetsdag. Och för att göra det ännu bekvämare för dig att sitta otaliga timmar framför skärmarna så installera golvvärme. Det går inte att klaga på ett varmt och behagligt golv, istället för att rycka till varje gång fötterna nuddar vid golvet.

Organisation

Hyllor och lådor med plats för alla papper, pärmar och vem vet vad. Att hålla reda på vart allt är, blir mycket lättare efter lite organisering. Tappa inte fokus på arbetet för att du inte kan hitta den där grejen du behövde, lägg allt på sin rätta plats från början. Och glöm inte att även försöka hålla reda på dina egna tankar, då är en whiteboard en bra idé!


Agile Development —

Vad är agil systemutveckling för något? Agil systemutveckling innebär att man bedriver systemutvecklingen inkrementellt under intensiv kunddialog. Det finns flera metoder och tekniker inom agil systemutveckling. Ett exempel på detta är XP (Extrem programmering), Scrum och Kanban (en förenklad version av Lean).

Agil systemutveckling är inte förenlig med vattenfallsmodellen. Det här är för att det finns skillnader i uppfattningen av grundläggande filosofiska begrepp som kausalitet och kvalitet.

Hur kom agil systemutveckling till? Agil systemutveckling har vuxit underifrån bland utvecklare och programmerare, och detta som ett svar på de traditionella systemutvecklingsmetodernas formalism. För en programmerare är det mycket roligare att skriva koder än vad det är att fylla i olika dokument. Avsaknaden av regler och dokumenterad process fick omvärlden att kalla metoderna för hackermetoder som dessutom saknade vetenskaplig legitimitet.

 

agil


Scrum —

Scrum utvecklades av Jeff Sutherland och Ken Schwaber och är en metodik för systemutveckling. Ordet ”scrum” kommer ifrån sporten rugby, och scrum är det moment när bollen sätts i spel. Rugby användes som en liknelse av de japanska managementforskarna Hirotaka Takeuchi och Ikujiro Nonaka för att beskriva en speciell stil av utveckling. I rugbyliknande utveckling så samarbetar ett tvärfunktionellt team för att göra klart produkten på samma sätt som ett rugbylag spelar tillsammans för att föra bollen uppför planen. Den här sortens arbetsform kontrasterade Takeuchi och Nonake med mer stafettliknande processer. I dessa processer färdigställs arbetet i funktionella faser med tydliga överlämningar mellan grupper när arbetet går från en fas till en annan.

Scrum kom tidigt på 1990-talet och formaliserades 1995. Scrum är ett sätt att fördela arbetsuppgifter i tiden med bibehållet fokus på levererad affärsnytta.

Den här metoden omfattar ett antal roller och beståndsdelar i form av obligatoriska möten och dokument.

 

Roller

  • Product owner (produktägare
  • Utvecklingsteam
  • Scrum master

 

Beståndsdelar

  • Product backlog
  • Inkrementet
  • Daily scrum
  • Sprint
  • Sprint review
  • Sprint retrospective
  • Sprint planning
  • Sprint backlog

 

scrum

 


Strukturerad Programmering —

Strukturerad programmering startade från en klassisk artikel från 1968 som skrevs av Edsger Dijkstra, Go to statement considered harmful. I denna artikel hävdade Dijkstra att ett oreglerat användande av hopp-satser i ett program ledde till oöverblickbara och ohanterliga program. Resultatet blev så kallad spagettiprogrammering med hopp fram och tillbaka och fel som var svåra att spåra. Det fanns bara en lösning på detta och lösningen var att använda strukturerade satser som if-then-else och do-while istället för explicita hopp-satser. Det här visade också att det alltid går att omforma ett ostrukturerat program till ett strukturerat program med samma funktion. Idag så är de här idéerna allmänt accepterade och de flesta moderna programspråk saknar till och med explicita hopp-satser. Man kan nog säga att de problem som strukturerad programmering försökte lösa mycket hängde ihop med de tidiga programspråken som Fortran och COBOL och de möjligheter till spagettikodning som fanns i dessa.


Problem kring Programmering —

Det finns många olika idéer och läror om programmering, och det har det funnits ända sedan programmering såg dagens ljus på 1950- och 60-talet. Sida i sida med detta så har hela tiden nya programspråk konstruerats för att ge stöd för dessa olika programmeringsparadigmer. Det finns flera problem med programmering som man har försökt lösa och de problem har bland annat varit:

 

  • Stora program är svåra att förstå och överblicka.
  • ”Hur många fel man än rättar i ett program, så finns det alltid ytterligare fel kvar som man inte upptäckt”.
  • Program som ändrats många gånger blir svårare och svårare att överblicka och förstå.
  • Program gjorda av en person kan vara svåra att förstå för en annan person, eller till och med samma person, en viss tid efteråt.
  • Ändringar i ett program får ibland följder som man inte förutsett eller önskat.
  • Programmering kan ta lång tid. Tillgängliga resurser räcker inte till.
  • För att ändra en funktion i ett existerande program måste man ibland göra ändringar på många ställen i koden, trots att förändringen man vill göra kan tyckas trivial.

 


Kanban!!!!!!!!!! —

Banzai – typ.

Kanban är ett sätt att signalera eller synliggöra materialbehov i industriproduktion. Det här är inte en ny metod, denna metod har funnits i flera århundraden i Japan. Japanska hantverkare har satt kanban, som är små trä- eller metallskyltar, på sina produktioner. Det här är något som idag ofta reducerats till små synliga logotyper.

Taiichi Ohno på Toyota började efter andra världskriget att studera hur man kunde effektivisera produktionen och kom fram till att de skulle sluta med den traditionella centralstyrda produktionen och övergå till ”Just in time”-produktionen. När det blir materialbrist på en arbetsstation så signalerar arbetarna detta genom att skicka ett kanban, som är ett kort eller en tom förpackning eller något annat.

Det går direkt att hitta de flaskhalsar som finns i produktionen genom att titta på var dessa kanban finns i fabriken. Det här används dock idag främst som en del i större förbättringsprojekt och för att underlätta för företag att slippa stora lagerkostnader alternativt leveransförseningar till exempel inom klassisk tillverkningsindustri.

 

kanban

 


Vattenfallsmodellen —

Vad är vattenfallsmodellen för något? Vattenfallmodellen går ut på att man bygger ett datorsystem i strikta steg som vart och ett avslutas innan man börjar med det nästa. Det är vanligt att man börjar med kravinsamling och kravspecifikation och när dessa är på plats så följer implementering av kraven, och det är själva programmeringen. När allting är färdigprogrammerat så genomgår programmet noggranna tester för att sedan paketeras och driftsättas. Den här processen brukar beskrivas som ett vattenfall, och därav kallas det för vattenfallsmodellen. När man tagit sig igenom ett fall, eller ett steg, så är det väldigt svårt att göra om detta om det skulle bli något fel eller liknande. Det kostar väldigt mycket pengar för att rätta till fel i testerna. Om det skulle finnas ett fel i testerna så finns det en stor risk att hela systemet måste skrivas om för att rätta till felet. Förutom detta så är även vattenfallsmodellen okänslig mot förändringar i omvärlden som oundvikligen sker under projektets gång.

 

vattenfall