Programlus i W10 for venstre museknapp

Hvis du en dag erfarer at venstre museknapp plutselig slutter å fungere når du har Windows 10 vil kanskje dette blogginnleget løse problemet for deg.

Kort historikk: Jeg hadde akkurat installert Malwarebytes og skulle kjøre programmet, men så klikka musa. Venstre museknapp sluttet helt å fungere. Og jeg fikk ikke liv i den igjen uansett hva jeg prøvde. Selv ikke brukeravlogging, omstart av datamaskin eller fjerning (også tillegging) av museenhet via Enhetsbehandling fungerte.

Helt tilfeldig snublet jeg over en YouTube-video som viste bytte av primærknapp for mus, altså fra venstre til høyre. Jeg tenkte derfor at jeg kunne prøve å bytte til høyre, vente litt, også bytte tilbake igjen, og at dette kanskje ville fungere .. Noe det gjorde!

Så om du selv erfarer dette problemet:

  1. Gå til museinnstillinger og bytt primærknapp.

2. Bruk høyreknappen litt slik du ville brukt den venstre. Høyreklikk f.eks. på Start for å åpne Start-menyen.

3. Sett primærknapp til venstre igjen (i museinnstillinger avbildet over).

4. Om venstre museknapp ikke fungerer øyeblikkelig så trykk intenst igjen og igjen helt til den fungerer. For meg gikk det ca 5 sekunder før den begynte å reagere igjen ..

Good luck.

Jobbeskrivelse: Regnskapsmedarbeider i regnskapsførerselskap

Det kan være vanskelig å vite hva man egentlig går til når man får jobb som regnskapsmedarbeider i et regnskapsførerselskap.

Er man uten utdanning har man kanskje fått foten i døra fordi man allerede har noe erfaring som er relevant. Men hvis man kommer fra skolebenken er det mye som vil bli annerledes fra det man har trodd.

Bokføring

Før man utarbeider årsregnskap og (eller kun) skatteregnskap for et regnskapspliktig selskap må man gjennom hele året ha bokført alle transaksjoner som er relevante for det aktuelle selskapet. Hvis dette ikke gjøres automatisk blir det i stedet tidkrevende manuelt arbeid gjennom hele året som kunden selvsagt må betale for.

For at det skal gjøres automatisk må kunden bevisst ha valgt systemer som støtter automatisering, i tillegg må disse være satt opp riktig.

Her er noen muligheter – med dagens moderne datasystemer:

  • Kassaapparat kan konfigureres til å kommunisere med regnskapssystemet og fortelle hvilke kontoer som skal få nye poster hver gang man tar kassaoppgjøret.
  • Med hjelp av OCR og ML kan klienten scanne inn eller ta bilde av fysiske kvitteringer og fakturaer. Disse sendes så inn og bilagføres automatisk, slik som digitale kvitteringer og fakturaer.

Hvordan bokføring gjøres i praksis, hvilke systemer som finnes, og hvilken plass automatisering har, hopper man gjerne helt over på skolebenken. I stedet gis man en innføring i balanse og resultat samt standardkontoplanen. Også bruker man det dobbelte bokholderis prinsipp og gir studentene litt mengdetrening i å løse teoretiske bokføringsoppgaver ..

Det betyr at overgangen og lærekurven blir stor, og mye større enn mange tror.

Oppgaver

Det finnes flere typer bokføringsoppgaver man kanskje ikke har hørt så mye om på skolebenken, her tenker jeg å liste opp flest mulig av disse.

Avstemming

Når man gjør en avstemming undersøker man om en bestemt del av regnskapet for en bestemt periode stemmer overens med det tilgjengelig regnskapsdokumentasjon sier er riktig.

Dette vil man f.eks. måtte gjøre minst hver måned for bankkontoer som har mye trafikk, sånn som 1920. Bankkontoutskriften for den bestemte perioden vil her bli "fasiten" som man sammenligner opp mot.

Som regel finner man transaksjoner som mangler. Da må man bruke tilgjengelig regnskapsdokumentasjon og bokføre de. Har man likevel avvik til slutt må disse forklares så man ikke har reelle ukjente differanser.

Åpne poster

Alle firmaer har kunder og leverandører. Og siden det er vanlig å handle på kreditt sendes det mye fakturaer. Så lenge en faktura er ubetalt vil den utgjøre en åpen post i regnskapssystemet. Disse rapporteres gjerne til klienten med jevne mellomrom.

Rent praktisk genererer man lister i regnskapssystemet som viser alle åpne poster også sender man disse til klienten, f.eks. via e-post.

MEN før man gjør dette må de kontoer som brukes til sending eller mottak av betalinger avstemmes. Ellers risikerer man å sende lister med åpne poster som faktisk er lukket. Klienten vil da purre på kundefordringer som allerede er betalt og eller i verste tilfelle dobbeltbetale til leverandører. Simpelthen fordi regnskapet ikke var helt oppdatert.

Dokumentasjon

Når man sitter på skolebenken og tar et regnskapsstudie får man stadig høre at ting må dokumenteres, at dokumentasjon er viktig o.s.v. Jeg så alltid for meg at ting ble registrert automatisk fordi man idag bruker databaserte regnskapssystemer som det stilles strenge krav til. Men dette stemmer bare delvis.

Det er fortsatt mye som må gjøres manuelt for å dokumentere at en arbeidsoppgave er utført. Og dette er tidkrevende. Noen ganger bruker man kanskje mer tid på dokumentasjonen enn selve oppgaven.

En utført arbeidsoppgave må dokumenteres så omfattende at andre personer som ikke nødvendigvis kjenner kunden (eller din arbeidsmoral) skal kunne gå inn i systemene og enkelt se at den faktisk er gjort. I praksis er regelen slik at det som ikke er dokumentert skikkelig det er ikke gjort.

I tillegg til å dokumentere f.eks. helt konkrete planlagte bokføringsoppgaver hvor det er satt frister, må man også dokumentere kundekontakt, kontakt med det offentlige på vegne av kunden, o.s.v.

Om man legger til seg gode vaner kommer man heldigvis fort inn i det. Og det finnes programvare som tilrettelegger for dokumentasjon i forskjellige former, og hvor alle ved behov kan gå inn og se historikken.

Kunden

På skolebenken gis man oppgaver som har alle nødvendige opplysninger.

I virkeligheten derimot må man forholde seg til kunden som gjerne har andre ting å bruke tiden på. Vedkommende har i tillegg ikke den samme sterke interessen for regnskap som man selv har. Dette kan fort gå utover ryddighet og punktlighet for videresending av regnskapsdokumentasjon til regnskapsfører, regnskapsmedarbeider eller regnskapssystemet.

Noen ganger må man også etterspørre regnskapsdokumentasjon fra kundens leverandører når kunden har mistet noe av den.

Oppsummering: Å være avhengig av informasjon fra kunden betyr at ting tar mer tid.

Et annet problem er at kunden noen ganger kan være sine egen verste fiende:

  1. Vedkommende kan ønske å ta mest mulig av regnskapet selv, for å spare penger når det er dårlige tider. Men hvis regnskapsfører eller en medarbeider må jobbe ekstra for å sjekke eller rette opp gjør dette bare vondt verre.
  2. Kunden kan ha kortvarige kreative (og kanskje ulovlige) løsninger på problemer som ikke egentlig lar seg løse veldig lett. Er det f.eks. dårlig likviditet så er det fristende å låne skattetrekkspenger og eller utsette lønnsutbetaling. Altså låner man penger selv om man ikke egentlig har anledning til det. Kunden kan også velge å delbetale på fakturaer eller utsette all betaling. Dessverre glemmer vedkommende da forsinkelsesrentene og gebyrene som gjør dette "lånet" dyrt.

Ulik praksis

I tillegg til bokføring, dokumentasjon og samarbeid med kunden for å få gjort jobben sin har man også det problemet at ting kan gjøres på flere måter: Hvordan og hva som skal rapporteres, hvilke kommunikasjonskanaler man skal bruke, hvilke kontoer (i regnskapet) som skal brukes og til hva, o.s.v.

Dette er som regel forskjellig fra kunde til kunde fordi ingen kunder er like. Samme gjelder regnskapsførerne når de skal sette opp kontoplan og utarbeider rutiner.

For en regnskapsmedarbeider med bokføringsoppgaver på flere ukjente kunder er det derfor fort gjort å surre litt. F.eks. er det lett å bruke feil kostnadskontoer. Man må da undersøke hvordan ting er gjort tidligere også kopiere etter beste evne.

Av kollegaer med humor kan man få betegnelsen ‘apekatt’ når man "kopierer" tidligere bokføring. Fordi man aper etter det som er gjort tidligere. Men dette er ikke for å gjøre narr. Vanligvis vil de være sympatiske med deg fordi det er ukomfortabelt å ikke kjenne kunden.

For når du ikke kjenner kunden føler du ikke at du er i kontroll. (Dermed blir du en stressa apekatt og hvem ønsker vel å være det?)

Jobbeskrivelse: Kundekonsulent på ringesenter

For noen år siden fikk jeg sommerjobb som kundekonsulent. Dvs. å hjelpe kunder som har problemer. Lite visste jeg da hva jobben egentlig ville innebære. Jeg tror derfor dette innlegget kan hjelpe alle som selv vurderer å søke på en slik jobb.

Der jeg fikk jobb ble det brukt brevpost, telefon, e-post og chat som kommunikasjonskanaler med kundene. Dette var på et ringesenter, altså «call center» på engelsk, med flere titalls andre kundekonsulenter.

Alle som jobbet med kundeservice ble sittende i et felles kontorlandskap ved sin egen arbeidsstasjon, fremfor sin egen dataskjerm. Her foregikk all kundekontakt og problemløsing.

De første dagene var det opplæring som tok for seg alt fra firmakultur til riktig bruk av datasystemene. Deretter begynte ‘medlytt’ hvor nyansatte lyttet til telefonsamtaler med kunder, for å få innblikk i hvordan man jobbet for å hjelpe de.

Etter to uker hjalp alle nyansatte kunder på egenhånd, etter beste evne.

Først løste vi saker som kom på e-post. Deretter begynte vi også på telefon. Det ble omtrent samme prosess for hver kunde som tok kontakt:

  1. Kunden tar kontakt og forklarer problemet (mer eller mindre). Ved uklarheter stiller man oppfølgingsspørsmål.
  2. Man søker opp kunden i datasystemet (som var en CRM der jeg jobbet).
  3. Man forsøker å løse problemet til kunden + forklare underveis. Det kan være så enkelt som å fikse feil navn, adresse, etc. Eller godskrive et beløp for feil eller mangler ved produktet. Eventuelt sjekke status på noe, purre på noe, bestille på nytt, etc. Systemet hadde funksjonalitet for alt og gjorde jobben med å varsle de som var ansvarlige for hver type oppgave en annen plass.
  4. Prøve å finne alternative løsninger hvis man ikke får gjort det kunden ber om. Her er det greit å være en kreativ type og løsningsorientert. Bare ytterst sjelden videformidles saken til noen lengre opp i systemet. Da må det være nødvendig og viktig.

Dessverre var det mye kjeft å få fra de fleste privatkunder som tok kontakt. Noen ganger ble det også rent verbalt misbruk.

Det saklige i mange negative tilbakemeldinger var ofte fortjent fordi kunden ikke hadde fått det som var blitt avtalt, og var derfor frustrert. Ekstra ille ble det visst dette var et evigvarende problem. Men en del negative tilbakemeldinger kom også med altmulig av dyre krav som jeg overhodet ikke hadde anledning til å innfri.

Noen av disse personene med ekstreme krav ble smårabiate. Hadde det vært i butikk ville de nok klart å oppføre seg. Men når det ikke lenger er ansikt til ansikt er det mange som mister all folkeskikk og blir ganske så utrivelige.

Jeg ble aldri komfortabel med all den negative kundekontakten. Etter hver eneste arbeidsdag følte jeg meg kokt i hjernen. At mange sluttet etter å ha jobbet der bare en kort periode er ingen hemmelighet. Og det er synd fordi arbeidsplassen var grei ellers, med hyggelige kollegaer og sjefer.

Stekende sol og feriemodus kan kanskje forklare noe av folks oppførsel denne sommeren. Forhåpentligvis er jobben greiere ellers i året.

Det er også viktig hvilket firma man skal yte kundeservice for. Jobber man for et firma som ikke behandler kundene pent er det DU som kundekonsulent som får skyllebøttene. Hele dagen lang, dag etter dag ..

For å like denne jobben må man elske å prate med folk og i tillegg ha tykk hud.

Prinsippet om avhengighetsomvending

Et viktig utviklingsprinsipp er prinsippet om avhengighetsomvending [«Dependency inversion principle» (DIP) på engelsk] som gir dekobling av viktige programvarekomponenter, såkalte høynivåkomponenter.

I stedet for at disse skal konsumere mange små "arbeidskomponenter" (dvs. lavnivåkomponenter) direkte, for å fungere, velger man å heller gjøre seg avhengig av abstraksjoner. Dette gjelder begge typer komponenter, både lavnivå og høynivå. I praksis vil man da gjerne benytte grensesnitt.

DIP er det siste viktige designmønsteret i SOLID.

Prinsipp for grensesnittoppdeling

Et veldig fornuftig designmønster er prinsippet for grensesnittoppdeling [«Interface segregation principle» (ISP) på engelsk] som enkelt og greit sier at en klient/bruker ikke skal måtte være avhengig av metoder som ikke brukes.

For å løse dette problemet forholder man seg til oppdelte spesialiserte grensesnitt så vedkommende ikke påvirkes når annen funksjonalitet skal defineres og utvikles.

ISP er det fjerde viktige designmønsteret i SOLID.

Liskovs substitusjonsprinsipp

Et prinsipp som kan minne om Åpen/lukket-prinsippet er Liskovs substitusjonsprinsipp [«Liskov substitution principle» (LSP) på engelsk], men dette prinsippet handler egentlig mer om hva instanser av underklasser skal kunne gjøre.

Helt konkret sier prinsippet at hvis klasse B arver fra klasse A, så skal instanser av B kunne erstatte instanser av A, uten at dette byr på problemer.

Et mye brukt eksempel:

Hvis en klasse for (geometrisk) kvadrat arver fra en klasse for rektangel må man forholde seg til bredde og lengde selv om alle sider i et kvadrat er like lange. Dette blir litt kleint fordi det er sidelengde som burde vært brukt.

Hvis bredde og lengde likevel brukes er det naturlig at begge settes til samme verdi, men da kan ikke en kvadratinstans lenger erstatte en rektangelinstans. Og dette bryter da med Liskovs substitusjonsprinsipp.

LSP er det tredje viktige designmønsteret i SOLID.

Ettansvars-prinsippet

Ettansvars-prinsippet [som er «Single responsibility principle» (SRP) på engelsk] setter visse krav til enhver modul, klasse, funksjon, o.s.v. som har ansvar for hvordan noe skal fungere:

  1. Når modulen, klassen, funksjonen o.s.v. endres skal det bare være èn grunn til dette.
  2. Man har 100% ansvar for å få jobben gjort, derfor skal man "pakke inn" (dvs. enkapsulere) all funksjonalitet. Direkte hjelp fra utsiden skal ikke være nødvendig.

Hvis disse kravene innfris vil den aktuelle programkoden bli mer robust og lettforståelig.

SRP er det første viktige designmønsteret i SOLID.

Åpen/lukket-prinsippet

Åpen/lukket-prinsippet [som er «Open/closed principle» (OCP) på engelsk] sier at ferdige moduler, klasser, funksjoner o.s.v. bør være stengt for endringer, men åpen for utvidelser.

Forklaringen er enkel: Hvis en bestemt funksjonalitet er brukt mange ganger og den endres må man refaktorere all gammel kode som er avhengig av den, dette blir en (enorm) tidstyv. Man bør i stedet utvide med ekstra funksjonalitet.

OCP er det andre viktige designmønsteret i SOLID.

EtherChannel

Hva kan man gjøre hvis man sliter med treg overføringshastighet internt i et datanettverk uten å bruke mye penger på å oppgradere?

Vel, hvis man har nyere Cisco-utstyr kan man benytte en kjekk funksjonalitet som heter EtherChannel. Da øker man båndbredden ved å kombinere flere porter.

De nødvendige forutsetningene er som følger:

  • To stk. Cisco-bokser som begge støtter EtherChannel.
  • Ledige porter på begge bokser.
  • Tilgjengelig kabel eller anledning til å strekke ny(e).

Siden nettverkskabel ikke er dyrt eller vanskelig å terminere kan man fikse dette selv.

Unicast vs. multicast vs. broadcast

På et datanettverk kan man ha flere former for kringkasting:

  • Unicast – når man kontakter kun èn mottaker.
  • Multicast – for å kontakte flere/mange.
  • Broadcast – i de tilfeller når man trenger å kontakte absolutt alle.

I utgangspunktet vil en svitsj (dvs. «switch» på engelsk) tillate alle former for kringkasting, mens en ruter kun tillater unicast og multicast.

Det finnes også en fjerde type – «anycast». Her tar man kontakt med nærmeste node.