allan ebdrup bloghoved ny

Et vemodigt farvel til Windows

Vi har besluttet, at vi ikke vil supportere Windows længere i vores udvikling. Det vil sige, at for at være udvikler på vores applikation debitoor.dk, så kræver det, at du kører en *NIX-variant, som Ubuntu eller OSX.

Som bruger vil du stadig kunne køre Windows

Selve applikationen vil selvfølgelig stadig virke for brugere, der benytter Windows. Vi tester stadig vores applikation i Internet Explorer. Når vi skal teste med Internet Explorer bruger vi browserstack.com, hvilket er en meget bedre løsning end at skulle teste med en lokalt installeret Internet Explorer, eller Internet Explorer installeret på en VM. For med browserstack kan vi teste med nærmest en vilkårlig browser og OS kombination, også Android og iOS devices.

Men det er altså slut med at være udvikler og køre Windows. Medmindre at du udvikler i en VM, der kører en *NIX-variant.

Ikke med vores gode vilje

Hver gang jeg har holdt foredrag om node.js og hvordan vi udvikler, har jeg med stolthed i stemmen kunne sige, at hos os kan alle udviklere selv vælge, hvilket OS og hvilken IDE eller editor de vil bruge. Det kan jeg ikke længere, og det er synd. Nu skal du som udvikler bruge en *NIX-variant. Men der er heldigvis stadig frit valg af IDE eller editor.

For dyrt og besværligt at supportere windows

Belutningen er taget fordi vores udviklingsteams selv ønskede det, og fordi det er en økonomisk sund beslutning.

Alle udviklere pånær tre har over de tre år, vi har udviklet med node.js, af egen drift skiftet fra Windows til OSX eller Ubuntu. De sidste tre har udtrykt ønske om at få en Mac. Nye folk, der starter, er vi begyndt at give OSX-maskiner, og der er ingen udviklere, der bruger et eneste tool, der kun virker på Windows.

Det blev mere og mere synligt, at det koster at supportere Windows. Udviklerne beklager sig over at skulle gøre det, for når der er problemer med Windows, koster det ofte ret mange udviklingstimer at få skidtet til at virke. Et utilfredsstillende arbejde for udvikleren. Windows var begyndt at få tilnavnet mustDieOS i github-kommentarer fra udviklere.

Vi opsummerede, hvad vi har brugt at udviklingstid på at supportere Windows, og kom frem til, at vi har brugt flere mandemåneder på det. Det er udviklingstid, der på ingen måde kommer vores kunder til gode, da produktionsmiljøet kører Ubuntu. Den slags udgifter kan man som forretning ikke acceptere.

Eksempler på problemer med Windows

  • File/directory name casing. Windows er ikke case-sensitiv, men det er *NIX. Det har givet issues, der først blev opdaget, når CI-serveren lyste rødt. (Edit: OSX er også case-insensitiv, men problemet synes forsvundet på Mac. Så det er muligt at vores problemer skyldes kombinationen af case-insensitive og git-implementationen på Windows)
  • Begrænsning i sti-længde. Windows har en begrænsning på hvor lang den samlede sti til en fil må være. Det er er stort problem for node.js udvikling, fordi vi er så glade for små, simple og genbrugelige moduler i node.js. Og når du har et modul, der bruger modul, der bruger et modul osv. bliver den samlede sti-længde nemt over Windows maksimum på 260 tegn.
  • Native moduler. Vi bruger fx bcrypt til salting og hashing af passwords. Bcrypt er et native modul i node.js. At få bcrypt modulet til at kompilere på Windows kræver sort magi og besværgelser og kan kun ske hvis du svinger en hovedløs høne over hovedet ved midnat.
  • Fork (Edit: node.js varianten af fork, kan også være exec osv.). Det at starte/stoppe underprocesser virker markant anderledes på windows. Det har givet en del udfordringer gennem årene.

Det tog tre år

Når jeg kigger tilbage, så undrer det mig egentlig, at vi ikke har taget beslutningen om ikke at supportere Windows noget før. Men det skyldes, at de fleste udviklere, mig selv inklusiv, kom fra mange år kun med Windows og dotNet-udvikling. Jeg købte mig en Mac Air da jeg skulle til nodeconf i San Fransisco for et par år siden. Det blev til et dejligt gensyn med mange af de *NIX kommandolinje-tools, jeg brugte, da jeg studerede datalogi.

Jeg eksperimenterede lidt med forskellige Linux-varianter, men til sidst endte jeg med at køre OSX over hele linjen. OSX er en dejlig kombination af noget, der er nemt at gå til, for os der er skadet af for mange år med Windows, samtidig med at det er en *NIX, der ligger i maven.

Sådan er det gået for alle vores udviklere: en langsom bevægelse væk fra Windows. For til sidst slet ikke at have lyst til at køre Windows. Nu har jeg fundet noget meget bedre.

Farvel Windows

»Farvel Windows.
Vi to har haft et godt forhold i mange år, og vi har grint og grædt sammen.
Du har altid været stædig, og er lidt af en enspænder, der helst ikke vil arbejde sammen med andre.
I lang tid var det nok, at vi bare var os to. Men jeg ville prøve nye ting, og det var ikke helt noget for dig. Vi er langsomt drevet fra hinanden.
Nu har jeg fundet en anden.«

Kommentarer (67)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
#1 Kasper Grubbe

File/directory name casing. Windows er ikke case-sensitiv, men det er *NIX.

HFS er også som standard case-insensitive, så jeres ny-installerede Æble-maskiner har samme problem!

Og nogle programmer giver fejl hvis de bliver installeret på en OSX maskine med et case-sensitive filsystem. Så løsningen (hacket) er at mounte en HFS partition der er case-sensitive, og køre boot partitionen på et case-insensitive filsystem.

  • 3
  • 0
#3 Søren Pilgård

Lige så snart du nævnte bcrypt forstod jeg hvorfor ;) Bruger selv python + flask, men at få bcrypt oversat på en windowsmaskine var mere end hvad jeg havde tålmodighed til så nu må folk bruge en virtuel maskine, eller ssh'e ind på en server og arbejde der.

Man har selvfølgelig stadig hele 2 vs 3 konflikten. På Arch linux henviser python til python3 og jeg har ikke haft nogle problemer hvis man blot er explicit omkring at bruge python3 og pip3. På ubuntu maskiner har det derimod vist sig at være noget bøvl da alting antager at man vil køre python2 til tider også selv om man specificerer python3.

  • 2
  • 0
#4 Allan Ebdrup Blogger

HFS er også som standard case-insensitive, så jeres ny-installerede Æble-maskiner har samme problem!

Og nogle programmer giver fejl hvis de bliver installeret på en OSX maskine med et case-sensitive filsystem. Så løsningen (hacket) er at mounte en HFS partition der er case-sensitive, og køre boot partitionen på et case-insensitive filsystem.

Det er muligt, men der må være noget andet der spiller ind. Måske hvordan git fungerer på de to platforme? For problemet er forsvundet. (Eller også har vi bare været heldige?)

Men problemet med casing, var et af de mindre. Det var problemerne med bcrypt og andre native moduler der var værst...

  • 0
  • 0
#5 Frithiof Andreas Jensen

I gamle dage, med OS/2, byggede og installerede jeg masser af Open Source til "mit OS" ... der var mange spændende "quirks" ... efter et stykke tid fandt jeg ud af at det nok var nemmere bare at installere Linux fordi det eneste jeg brugte af OS/2 var REXX, så det gjorde jeg!

Heldigvis fungerer VMware Fusion aldeles udmærket på OSX, så i dag bruger jeg en ægte virtuel Linux box på min mac.

Der findes naturligvis tools til at bygge Linux/BSD software på OSX - men - det er det samme igen: Noget vil ikke bygge fordi nogle libs ikke findes for OSX, noget er underligt (gamle versioner, virker ikke helt), andet skal man hoppe igennem brændende tøndebånd for at bygge, et cetera.

Livet er for kort til at pille med OSX!

  • 4
  • 0
#10 Allan Ebdrup Blogger

Men hvorfor fork()? exec()'er I ikke med det samme alligevel? Jeg har da aldrig før hørt at shared-state multiprogrammering i Javascript skulle være en god idé.

Vi har brugt dem alle sammen tror jeg. På et tidspunkt kørte vi vores testsuite som parallel eksekvering af tests, der legede vi med at sende beskeder frem og tilbage for at synkronisere, child.send(message, [sendHandle]), som fork giver i node.

Læg mærke til hvad der står om fork i node: "These child Nodes are still whole new instances of V8"

Vi endte dog med at droppe det parallele testrun da det gav for meget bøvl.

  • 0
  • 0
#11 Troels Henriksen

Læg mærke til hvad der står om fork i node: "These child Nodes are still whole new instances of V8"

Så har det ikke meget med fork() at gøre, og Windows's CreateProcess (eller hvad den nu hedder) være rigeligt. Eller hvor meget arves der fra forælderprocessen? Jeg synes stadigvæk det er sært at man skulle have brug for fork()-lignende mekanismer i Javascript.

  • 0
  • 0
#12 Allan Ebdrup Blogger

Så har det ikke meget med fork() at gøre, og Windows's CreateProcess (eller hvad den nu hedder) være rigeligt.

Hehe, det kan du mene. Jeg henviser nu til fork() i node.js. Men kan godt se hvordan det kan forvirre.

Alt vores udvikling skulle før vi droppede Windows, køre på både Ubuntu, OSX og Windows. Så vi har ikke selv lavet kode der er platform-native nogle steder. Cross platform er meget meget nemmere når man holder sig til 100% JavaScript i node.js. Så slipper vi også for at rode med compilere og den slags der gør vores build komplekst og langsomt.

Generelt forsøger vi at styre udenom moduler der er native.

  • 4
  • 0
#13 Michael Zedeler

Er det ikke ligemeget om det er fork, exec eller noget helt tredie, der bruges?

Det er da almindelig kendt at Windows er uendeligt meget langsommere til at starte processer, end de to alternativer, der skrives om.

Desuden har de fleste miljøer (som Node.js) det med at antage at det underliggende system understøtter POSIX, hvilket Windows kun gør på papiret, men ikke i praksis.

fork() er nok det bedste eksempel, men der er andre.

  • 4
  • 0
#14 Troels Henriksen

Bevares, jeg kan heller ikke selv udstå Windows i nogen af dets inkarnationer, og manglen på fork() er da et problem når det kommer til lavniveau systemprogrammering. Men Javascript er ikke lavniveau systemprogrammering, og efter at have læst Node.js's dokumentation omkring deres fork(), så forstår jeg ikke hvad det har med POSIX fork() at gøre. Kan man i Windows vitterligt ikke starte en process, som modtager får fildescriptor så man kan kommunikere med den? Det virker helt skørt.

  • 0
  • 0
#16 Allan Ebdrup Blogger

Det kan man også sagtens. Man tilknytter blot en read- og en write-pipe til den environment-parameter-blok man afleverer til sit CreateProcess API-kald. Helt elementært.

Ja, udfordringen for os var typisk ikke at få startet underprocesserne, det virker som det skal på alle platforme. Problemet var at få dem lukket ordentligt ned igen. Du kan ikke starte to webservere, begge på port 8080 fx.

Det er muligt at problemerne blev forudsaget af, at Windows bare er så meget langsommere til det, som Michael skriver. Men jeg mener nu også, at vi så orphaned processer, der kørte videre, selvom de burde have lukket ned.

Det skal dog siges, at problemerne virkede til at blive mindre in Node.js version 0.10.

  • 0
  • 0
#17 Frithiof Andreas Jensen

Python har en "subprocess.Popen(...)" som producerer et pipe-like objekt.

""" Execute a child program in a new process. On POSIX, the class uses os.execvp()-like behavior to execute the child program. On Windows, the class uses the Windows CreateProcess() function. The arguments to Popen are as follows. """

Dokumentationen for Popen(...) refererer både til "STARTUPINFO" og CreateProcess(...), som er windows-native, så noget lignende samme burde kunne lade sig gøre på windows i andre sprog (windows bruger "handles" i stedet for pipes/file-descriptors).

Generelt, så kan man "det samme" med windows eller "unix"!

Unix er nemmere at gå til, efter min mening, fordi de fleste funktioner i windows er binære kald inde i et API medens man på Unix som regel kan få fat i funktionerne fra kommandolinien. Hvis man har et MSDN-abonnement, så er windows ganske også tilgængeligt.

  • 1
  • 0
#19 Brian Hansen

Hvor er det i sparer spildtiden? Tester jeres udviklere lokalt? Hvis de fra starten af testede på en server de uploader til, så er det vel underordnet hvilket klient OS de kører? Jeg kunne egentligt godt tænke mig at vide hvilke processer der tager flere måneder ud af arbejdstiden i support på Windows :)

  • 0
  • 0
#20 Allan Ebdrup Blogger

Hvor er det i sparer spildtiden?

Ved at vi ikke skal sørge for at vores applikation og testsuite kan køre på Windows.

Tester jeres udviklere lokalt? Hvis de fra starten af testede på en server de uploader til, så er det vel underordnet hvilket klient OS de kører?

Ja, vi har watchers kørende, så når du retter i koden, er applikationen genstartet automatisk, på et par sekunder. Den hurtige turnaround på ændringer er meget vigtig for at kunne udvikle hurtigt og effektivt.

Nogle bruger også debugging og breakpoints. Andre debugger med console.log.

Når du kører applikationen (og tests) lokalt er alting meget nemmere end at skulle uploade til en server.

Vi uploader selvfølgelig også til en server og kører CI osv. Men det er en noget tungere process end at køre det lokalt.

Jeg kunne egentligt godt tænke mig at vide hvilke processer der tager flere måneder ud af arbejdstiden i support på Windows :)

Det har været at kæmpe med de problemer der er listet i blogindlæget på Windows. Spildtiden er oparbejdet på et par år. Når man har et stort team, der pludselig næsten alle sammen kæmper en dag eller to med bcrypt, så tæller spildtiden hurtigt sammen.

  • 7
  • 0
#21 Rikard Svenningsen

Nu er det ikke fordi jeg i den grad hader Windows, mit liv er bare forkort til at anvende Windows privat. Nu har jeg i mange år supporteret Windows i forskellige varianter og gøre det stadig. Det er verdens mest brugte system, det har en nem og tiltalende bruger flade. Jeg har mange venner der køber en bærebar computer, efter et ½ til 1 år efter, kan de ikke forstå hvorfor den er blevet så langsom. Jeg anbefaler dem derfor at købe en OSX maskine. Windows kræver en ufattelig mangde resource for at holde det tip top kørende, derfor er det en god beslutning. Jeg ved godt at jeres problem var tilpasning og derfor bliver den slags maskiner meget sårbar for den mindste ændring, så holder det op med at virke. Jeg fortrækker selv i prioriteret rækefølge, hvis jeg kun må vælge en :-) Linux OSX iPad Android iPhone Windows (eller slet ingen computer)

Et stor tillykke....

  • 8
  • 1
#24 Martin Jünckow

Vil blot lige række hånden op og sige vi trodsalt er et par professionelle udviklere tilbage som stadig foretrækker Windows både til privat og erhverv.

Men det er rart at se at fordommene stadig trives i bedste vis og at argumenterne stadig er de samme som for 10 år siden, selvom Windows har rykket sig gevaldigt siden - det er sjovt som konvertitter altid beskriver Windows som noget der bedst passede på Windows 98/ME. Der er fordele og ulempler ved alle systemer, Windows har bestemt også sine styrker ligesom Linux og OSX har sine mangler.

Det væsentlige er at vide hvorfor man bruger et givent system.

  • 4
  • 4
#25 Jesper Pedersen

haha, hold kæft en omgang bavl. Velkommen til 2015 Rikard. Jeg kan hilse at sige, at der alligevel er sket en del siden du sidst har haft fingrene i en Windows maskine.

Men fantastisk, at du som "IT supporter", eller hvad vi skal kalde dig, hellere vil have en iPhone, end en maskine der rent faktisk kan bruges til noget. Tillykke med titlen som den ringeste "IT supporter" til dato, Rikard !

  • 1
  • 9
#27 Jesper Poulsen

Men det er rart at se at fordommene stadig trives i bedste vis og at argumenterne stadig er de samme som for 10 år siden, selvom Windows har rykket sig gevaldigt siden

Men ikke nok. Det sander stadig til hvis det ikke reinstalleres jævnligt. Jeg gamer med en teenager og hans Windows 8.x bliver ringere og ringere til at trække de samme spil. Det er måske hardwaren der er for dårlig eller hvad bliver dit "argument"?

  • 4
  • 1
#28 Martin Jünckow

Så du har en anekdotisk fortælling om en teenager hvis computer bliver langsommere med tiden, derfor bliver Windows langsommere med tiden, javel. Tilmed forventer du at jeg kan fjerndiagnosticere den herfra - jeg takker for tilliden, men jeg tror jeg ville sidde på en fjern tropeø og drikke coctails hvis jeg kunne trylle på den måde.

Men som en der har ufattelig meget software og spil installeret og typisk har gang i 50 applikationer samtidigt, skal jeg godt nok tænke mange år tilbage for at kunne mindes de tider hvor Windows af sig selv blev langsommere.

Der kan være mange årsager til at en computer opfører sig langsom (Malware blandt de mere udbredte), men fælles for dem alle er at det letteste er at give skylden til operativsystemet hvis man ikke helt ved eller forstår hvad der foregår.

  • 1
  • 3
#29 Casper Kvan Clausen

Med mindre altså man programmerer til .NET eller noget andet, der er understøttet af Visual Studio - i så fald findes der ikke et bedre udviklingsværktøj på nogen anden platform. Det kan muligvis komme til at ændre sig efter MS har open-sourcet deres nye compiler (Roslyn), men VS har et stort forspring.

  • 6
  • 1
#30 Rikard Svenningsen

Der er sikkert en god forklaring på hvorfor Windows er det mest udbredet styrresystem til privat og virksomhedsbrug, det skal jeg ikke komme ind på det bliver nok bare for politisk. Men som Windows bruger i arbejdslivet kan det undre at de stadig er de eneste som ikke kan patche uden genstart. Microsoft har nærmest gjort det til en kunstart at genere fredelige folk der bare gerne vil arbejde. Når man lukker ned 5 minutter over lukketid, og computeren fortæller at den lige skal opdater, så man ikke må slukke, så man kan nu ikke nå sit tog hvis man skal have den bærebar med hjem. Det er da også en af de bedst nyheder man kan få hvis man har travlt. Beklager men Windows er kun noget man bruger hvis man er tvunget til det!

  • 3
  • 1
#31 Jesper Louis Andersen

Vil blot lige række hånden op og sige vi trodsalt er et par professionelle udviklere tilbage som stadig foretrækker Windows både til privat og erhverv.

Det er der jo en del der gør. Jeg forstår dog 100% Allan og co. her. Når vi snakker om at vedligeholde et udviklingsmiljø, så deler det sig oftest i Windows og alle-de-andre. Der er meget mindre gnidning mellem FreeBSD, Linux, OpenBSD og OSX end hvis du laver sammenligningen med Windows. At holde sådan et miljø kørende kan være temmeligt dyrt i det lange løb, så det kan undre mig at de ikke har slagtet Windows for længst i det miljø.

Hovedårsagen til at det kan lade sig gøre er at internetapplikationen fjernede magten fra Windows-platformen så du kunne udvikle som du havde lyst til.

  • 0
  • 0
#32 Jesper Louis Andersen

Men som Windows bruger i arbejdslivet kan det undre at de stadig er de eneste som ikke kan patche uden genstart.

Det skyldes deres valg af filsystems-regler. I Windows kan du låse en fil, hvilket formentlig nestammer fra VMS. Når operativsystemet så låser væsentlige filer så skal du genstarte fordi det er den eneste måde systemet kan komme uden om. Filerne bliver så placeret i en "buffer" og bliver kopieret ind i de rigtige lokationer ved genstart. Det løser problemet, der er blevet noget mindre efter at en Windowsmaskine booter på ca. 10 sekunder i dag (Med en god SSD i dyret).

UNIX semantik er at du altid kan overskrive en fil, men gamle programmer vil stadig referere til den gamle udgave af filen, thi den reference-countes af operativsystemet. Fordelen er at det stort set kun er en ny kerne der kræver genstart, men du slipper ikke for at skulle restarte services for at de får fingrene i den nye udgave af filen.

Efter min mening, så har tiden vist at UNIX-måden er den mest fordelagtige på lang sigt, da den er langt simplere at håndtere. Men windows er låst fast i den metodik og det at lave det om nu har meget meget lange udsigter.

  • 4
  • 0
#33 Jesper Pedersen

Så vil jeg da godt komme med en anden lille historie, hvis det er det som tæller ? En af mine venner havde en bærbar med Windows for nogle år tilbage (Nok ca. 4 år siden), og jeps, den blev sindssygt langsom, og jeg prøvede at fixe den. Det kunne jeg ikke rigtigt, da den var gammel og elendig på det tidspunkt (Jo, han havde nok brugt hvad der ligner 4.000 kr. på). Han ville så have en ny computer, og jeg sagde, at jeg nok skulle sætte mig ned og finde en god en til ham, hvis det var. Men nej, en af mine andre venner havde fortalt ham, at Macs bare var super gode, og aldrig gik ned eller blev langsomme. Så det endte med, at han købte en Macbook Pro.

Ca. 1 år efter han havde haft den, jamen, jeg lyver ikke når jeg siger, at den var langsommere end den tudsegamle PC han havde tidligere. Den tager 100 år om ALT, crasher hele tiden, eller bare stopper med at virke. Og nej, jeg lyver ikke ! Og han ved det godt selv, og alle os, som ikke bruger Macs, som nogle gange låner den når vi besøger ham, siger præcis det samme. Han bliver næsten spyttet i hovedet fordi den er så elendig.

Sååå, er Macs nu det mest elendige der findes i verden, eller kunne man forestille sig, at vedkommende som benytter en PC eller Mac eller Linux, har rimelig meget at gøre med, hvordan den maskine kommer til at opføre sig i fremtiden ?

Igen. Jeg påpejer blot, hvor dumt et udsagn det er at komme med, når det passer ligeså meget på alle andre maskiner i verden. Men det er man jo ved at være så vant til fra folk der ikke aner hvad de snakker om - og igen, tillykke med det !

  • 0
  • 5
#39 Christian Nobel

Linux og OSX bliver også langsomt...

Aha, har du nogen praktisk erfaring med Linux - det lyder ikke sådan.

Nu har jeg altså brugt Linux i 10-15 år, og jeg kan på ingen måde genkalde mig at Linux bliver langsommere - det er klart at distroerne bliver større og større, i takt med der ønskes flere faciliteter, og dermed stiller større hardware krav, men der er intet der indikerer at en Linux maskine sander til.

Og hvis vi så lige kommer tilbage til sporet, så tror jeg seriøst ikke at jeg kunne holde ud at arbejde på en Windows maskine, da alting er så farligt omstændeligt og musecentreret.

Bla. er det at have mange skriveborde et absolut must - jeg har typisk to browsere, med hver mange faner åbne, 2-3 udviklingside'er (Lazarus), 2-3 SQL administratorer, 3-4 terminalvinduer (ssh til andre maskiner), diverse editorer, samt mail åben samtidig, fordelt på 8 skriveborde, så jeg stadig kan bevare overblikket.

Og det at have et cli, hvor man kan klippe/klistre er utroligt værdifuldt.

  • 1
  • 0
#40 Jesper Ravn

Og hvis vi så lige kommer tilbage til sporet, så tror jeg seriøst ikke at jeg kunne holde ud at arbejde på en Windows maskine, da alting er så farligt omstændeligt og musecentreret.

Nu handler det vel ikke så meget om, hvad du mener er bedst for lige netop dig, men mere om du opfylder company policy.

I de fleste virksomheder, jeg kender, ville det at implementere Linux desktop være tæt på umuligt, da det ikke snakker sammen med Microsoft backend systemer på nogen nem og fleksibel måde. Her tænker jeg f.eks. på:

Active Directory – (Kerberos authentication) Image og Software deployment Single Sign-on til diverse interne web systemer (intranet, helpdesk, medarbejder og projekt portaler etc.) Remote/VPN/DirectAccess udefra Software til kontorplatform – Office- Lync – kalender deling – delte mailboxes, mailgrupper.. Standard mapning af drev, printere og policies Deling af information og udviklingsprojekter via centrale hubs

Jeg går ikke ud fra, at dine drift og support kollegaer lige frem står i kø, for at hjælpe dig, med at fixe ovenstående problemer med integration til din Linux desktop.

  • 0
  • 1
#41 Jesper Pedersen

Aha, har du nogen praktisk erfaring med Linux - det lyder ikke sådan.

Nu har jeg altså brugt Linux i 10-15 år, og jeg kan på ingen måde genkalde mig at Linux bliver langsommere - det er klart at distroerne bliver større og større, i takt med der ønskes flere faciliteter, og dermed stiller større hardware krav, men der er intet der indikerer at en Linux maskine sander til.

Og hvis vi så lige kommer tilbage til sporet, så tror jeg seriøst ikke at jeg kunne holde ud at arbejde på en Windows maskine, da alting er så farligt omstændeligt og musecentreret.

Bla. er det at have mange skriveborde et absolut must - jeg har typisk to browsere, med hver mange faner åbne, 2-3 udviklingside'er (Lazarus), 2-3 SQL administratorer, 3-4 terminalvinduer (ssh til andre maskiner), diverse editorer, samt mail åben samtidig, fordelt på 8 skriveborde, så jeg stadig kan bevare overblikket.

Og det at have et cli, hvor man kan klippe/klistre er utroligt værdifuldt.

Nope, har ingen erfaring selv. Men jeg går på et studie, hvor nogle folk bruger det, og de fortæller mig det. Så det er vel fair, at jeg antager det er korrekt ?

Derudover, så har jeg samme erfaring med Windows som du har med Linux (I hvert fald siden Win 7). Jeg passer på min maskine, og mine maskiner er more og less ligeså gode, som de var dengang. Naturligt nok, er der nyere programmer der ikke kører så godt, men det er jo ikke Windows' skyld.

Derudover, flere desktops, det er smart - for nogen. Vitterligt ikke alle. Men heldigvis, så kommer det i Win 10, så der forsvandt den undskyldning i hvert fald.

Og til sidst, Windows, farligt ? Hahaha, nu må det holde. Medmindre du bevæger dig på de farligste hjemmesider i verden og downloader alle .exe filer du kommer i nærheden af, så tror jeg du kan være helt rolig. Og musecentreret ? Du kan touch (Det funger nok næppe lige så godt på Linux), og så er der da et hav af keyboard shortcuts. Ved ikke lige hvad du har, som jeg mangler ?

  • 0
  • 5
#46 Christian Nobel

Nope, har ingen erfaring selv. Men jeg går på et studie, hvor nogle folk bruger det, og de fortæller mig det. Så det er vel fair, at jeg antager det er korrekt ?

Du må gøre alle de antagelser du vil - de er bare ikke korrekte.

Derudover, så har jeg samme erfaring med Windows som du har med Linux (I hvert fald siden Win 7).

Se nu er det jo meget sjældent sådan at fordi man har stor erfaring med Linux, at man ikke har erfaring med Windows, som regel nok nærmere omvendt.

Derudover, flere desktops, det er smart - for nogen. Vitterligt ikke alle. Men heldigvis, så kommer det i Win 10, så der forsvandt den undskyldning i hvert fald.

Det har ikke noget med undskyldning at gøre, men bare at det er en meget nyttig facilitet der har eksisteret i de fleste distroes i mange, mange år.

Og til sidst, Windows, farligt ?

Øh, har jeg sagt noget om det?

Og musecentreret ? Du kan touch (Det funger nok næppe lige så godt på Linux), og så er der da et hav af keyboard shortcuts. Ved ikke lige hvad du har, som jeg mangler ?

Nej det er jeg helt klar over du ikke ved!

  • 5
  • 0
#47 Christian Nobel

Er udviklere specielle i forhold til company policy?

Må spørge en gang til - har du overhovedet læst Allans blogindlæg, eller er det bare en automatreaktion fordi du føler dig stødt over at man anfægter Windows?

Windows er da sikkert udmærket (når jeg siger sikkert, så er det ikke fordi jeg ikke ved hvordan Windows fungerer, men fordi det for hovedparten af de fleste brugere er et OS, som dybest set ikke interesserer dem en hattenål, der er underlag for de programmer de skal benytte) for rigtig mange, men det er ikke det samme som at det er specielt anvendeligt til programudvikling.

Og taler vi programudvikling, så er det tåbeligt at tale om company policies, og hvad ved jeg - det ville svare til at bogholderen i en vognmandsforretning skulle diktere at kørsel med grus skulle foretages i Fiat 500 pga. politikker.

  • 3
  • 0
#48 Jesper Ravn

Og taler vi programudvikling, så er det tåbeligt at tale om company policies, og hvad ved jeg

Nope, company policy betyder alt i en effektiv og dynamisk virksomhed, som ingen bør været hævet over. Ellers bliver næste logiske step, at salg og marketing ønsker sidste skrig af MacBook Pro. Sidste step bliver så, at vi havner i et BYOD kaos.

  • 0
  • 6
#49 Troels Henriksen

Ellers bliver næste logiske step, at salg og marketing ønsker sidste skrig af MacBook Pro. Sidste step bliver så, at vi havner i et BYOD kaos.

Det kan jeg ikke se. Og jeg forstår heller ikke hvorfor webapplikationer skulle bruge Kerberos, eller hvorfor det skulle være et problem, da Kerberos jo oven i købet er en åben specifikation der ikke engang stammer fra Windows-univereset.

Jeg har ikke prøvet at arbejde i en af disse famøse større virksomheder, men jeg arbejder på Københavns Universitet, som da er en rimeligt stor organisation. Og bevares: Vi nyder da også godt af alt hvad Microsoft producerer, hvadend det er i form af Office-formater (som Google Docs og LibreOffice heldigvis godt kan kapere), eller tunge og langsomme webapplikationer baseret på Sharepoint. Disse webapplikationer brugte ingen anden autenticeringsmekanisme end hvad der understøttes (portabelt) i en browser, og jeg kan ikke se hvorfor andet skulle være tilfældet.

I tilfælde af at Københavns Universitet ikke håndterer oplysninger der er helt vigtige nok til Rigtig Sikkerhed, så kan jeg som andet anekdotisk datapunkt nævne sikkerhedsmekanismen for adgang til interne systemer på et amerikansk laboratorium jeg har været i praktik på (LLNL - der står for vedligeholdelse af det amerikanske atomvåbenarsenal). Her var sikkerheden baseret på et separat netværk (naturligvis), hvor adgang udefra skete via VPN, hvor login var via almindeligt brugernavn+løsen i kombination med en RSA SecurID hardware-nøgle.

Nutildags virker det altså ganske plausibelt at lave systemer, hvor adgangsmekanismerne ikke er platformsspecifikke.

  • 5
  • 0
#50 Christian Nobel

Nope, company policy betyder alt i en effektiv og dynamisk virksomhed, som ingen bør været hævet over.

Det var da det mest mageløse vrøvl.

Det kan godt være at store virksomheder som Novo Nordisk er godt tjent med deres mange BRUGERE er underkastet company policies, men hvis en mindre, agil udviklingsvirksomhed skal slæbe rundt med samme møllesten om halsen, så dør den før den får sit første produkt på gaden.

Ellers bliver næste logiske step, at salg og marketing ønsker sidste skrig af MacBook Pro. Sidste step bliver så, at vi havner i et BYOD kaos.

Suk.

  • 5
  • 0
#51 Michael Zedeler

Active Directory – (Kerberos authentication) Image og Software deployment Single Sign-on til diverse interne web systemer (intranet, helpdesk, medarbejder og projekt portaler etc.) Remote/VPN/DirectAccess udefra Software til kontorplatform – Office- Lync – kalender deling – delte mailboxes, mailgrupper.. Standard mapning af drev, printere og policies Deling af information og udviklingsprojekter via centrale hubs

Jeg går ikke ud fra, at dine drift og support kollegaer lige frem står i kø, for at hjælpe dig, med at fixe ovenstående problemer med integration til din Linux desktop.

Jeg kører Linux i en meget Microsoft-domineret organisation, der kører det meste fra din liste. Følgende ting virker out of the box på min Ubuntu 14-maskine:

Active Directory VPN Drev Printere

Disse ting kan jeg ikke få adgang til: Exchange Single Sign On (men det gør ikke noget, for der er en fallback) Office (ja, vi er i 2015 og man kan stadigvæk ikke åbne deres #¤%! dokumenter)

Jeg ved ikke hvad du mener med "Image og Software deployment". Hvis du mener de udviklingsprojekter, jeg selv sidder med, så kan jeg sige at det virker fint. Jeg ved heller ikke hvad du mener med "Deling af information og udviklingsprojekter via centrale hubs". Vi han en wiki. Dokuwiki. Og en hub. Github. Begge dele virker fint over det hele.

For at summere op: at organisationen bruger en masse Microsoft-halløj betyder ikke at udviklerne er tvunget til det samme. Det kommer selvfølgelig an på hvilke teknologier, man skal arbejde med (nej - jeg vil f. eks. aldrig prøve at skrive udvikle .NET på Linux), men i det store hele virker det uden bøvl.

Samtidig kan jeg notere mig at der hvor de store problemer opstår, er der to områder hvor Microsoft med fuldt overlæg har valgt at hindre interoperabilitet: Microsoft Office og Exchange (hvor svært er det lige at understøtte IMAP?!?).

Når jeg får forklaret hvordan man i Visual Studio 2012 bare lige skal klikke 3-4 niveauer ned igennem forskellige vinduer for at få den til holde op med at brokke sig over den manglende DLL, du ellers har fortalt den om så mange gange før, så bliver jeg igen bekræftet i at det værktøj ikke er for mig.

At folk gider at støtte den slags er over min forstand.

  • 4
  • 0
#52 Jesper Ravn

Det kan jeg ikke se. Og jeg forstår heller ikke hvorfor webapplikationer skulle bruge Kerberos, eller hvorfor det skulle være et problem, da Kerberos jo oven i købet er en åben specifikation der ikke engang stammer fra Windows-univereset.

Jeg mener standard SSO i forhold til Active Directory. Se nedenstående links for mere info.

Understanding Enterprise Single Sign-On Windows Integrated Single Sign-On: http://msdn.microsoft.com/en-us/library/aa745042(v=bts.10).aspx

Single-sign-on between on-premise apps, Windows Azure apps and Office 365 services. http://blogs.msdn.com/b/plankytronixx/archive/2010/11/27/single-sign-on-...

Jeg må hellere stoppe den her inden vi ryger helt ud over kanten :-).

  • 0
  • 6
#53 Jesper Ravn

Jeg kører Linux i en meget Microsoft-domineret organisation, der kører det meste fra din liste. Følgende ting virker out of the box på min Ubuntu 14-maskine:

Ok, jeg var måske også mere interesseret i at høre om hvordan jeres Linux setup kan fungere i en virksomhed, med Microsoft teknologi. Men godt at høre, at det fungerer for dig og tak for info.

Kom måske lidt skævt ind i debatten med mit første indlæg. Men jeg kunne dog ikke lade være, at drille Christian lidt, da han normalt heller ikke plejer at holde sig tilbage, når vi andre roser Microsoft lidt for meget.

  • 0
  • 4
#54 Esben Nielsen

(et tråden ved at blive lidt off-topic? Skidt jeg fortsætter :-)

Disse ting kan jeg ikke få adgang til: Exchange

Jeg kan godt forbinde med Evolution på Ubuntu 14. Men det er ikke verdens mest stabile program. Så jeg bruger blot webinterfacet, som godt kan køre i en firefox. Det er måske det din IT afdeling mangler at slå til?

Når det virkeligt kniber, må jeg fyre op under en virtuel Windows; men det er ikke hver dag, jeg behøver det.

  • 2
  • 0
#55 Jesper Pedersen

Du må gøre alle de antagelser du vil - de er bare ikke korrekte.

De er åbenbart ligeså korrekte som dine.

Se nu er det jo meget sjældent sådan at fordi man har stor erfaring med Linux, at man ikke har erfaring med Windows, som regel nok nærmere omvendt.

Så vil du også vide, at det du siger er forkert.

Det har ikke noget med undskyldning at gøre, men bare at det er en meget nyttig facilitet der har eksisteret i de fleste distroes i mange, mange år.

Jeps, og nu kommer det til Windows langt om længe, derfor kan man ikke bruge det som argument for, at Linux skulle være "bedre". Medmindre det naturligvis er vildt elendigt (Jeg har endnu ikke prøvet det på Win 10).

Øh, har jeg sagt noget om det?

Fair. Jeg læste for hurtigt, og misforstod det der stod.

Nej det er jeg helt klar over du ikke ved!

Det er så heldigt, at Wiki ved det: http://en.wikipedia.org/wiki/Table_of_keyboard_shortcuts

Der er vist ikke den store forskel, sååå...

  • 0
  • 5
#56 Michael Rasmussen

Disse ting kan jeg ikke få adgang til: Exchange Single Sign On (men det gør ikke noget, for der er en fallback)

For exchange kan du installere dette plugin in Mozilla Thunderbird: https://github.com/Ericsson/exchangecalendar/releases Giver fuld adgang til kalender, også planlægningskalender hvor du kan se om de personer, du vil invitere, er optaget på et pågældende tidspunkt. Fuld adgang til GAL (Global Address List) via Thunderbirds addressebog. Fuld adgang til exchange indstillinger og out-of-office besked. Hvad angår kerberos og single sign on via samme, tager de 5 minutter at melde en Redhat, CentOS, Scientific Linux ind i domænet, og herefter logge på via kerberos og have single sign on. Se følgende: https://access.redhat.com/sites/default/files/attachments/rhel-ad-integr... http://www.chriscowley.me.uk/blog/2013/12/16/integrating-rhel-with-activ...

  • 2
  • 0
#62 Rune Larsen

Og til sidst, Windows, farligt ? Hahaha, nu må det holde. Medmindre du bevæger dig på de farligste hjemmesider i verden og downloader alle .exe filer du kommer i nærheden af, så tror jeg du kan være helt rolig.

Sålænge Windows/AD gemmer passwords usaltede og bruger MD4 som hashfunktion, bør man kun bruge Windows til leg og samtidigt antage, at alle passwords på en Windows-maskine er offentligt kendte. Så lad være med at genbruge et Windows-password i et sikkert system. http://technet.microsoft.com/en-us/library/hh994558%28v=ws.10%29.aspx

  • 3
  • 1
#63 Rikard Svenningsen

Kære alle. Ud fra det her så forstår jeg godt hvorfor religionskrige ikke kan standses. Det her forklare også hvorfor folk, der tror på Islam kan tippe over og gå amok, her tænker jeg ikke på så amok at det bliver til terror, for det kan nok ikke forklares. Jeg er blevet kaldt den dårligst "IT supporter", ok det kan jeg da godt leve med, personen kender mig jo ikke, så ok med det. I sidste ende er pointen ikke hvilket OS man bruger men hvorfor. Jeg bifalder deres beslutning fordi jeg ikke synes Windows er værd at spilde tid på. Det er naturligvis urealistisk og helt unødvendigt at ønske Windows der hen hvor pebber groer. En virksomhed i dag er stadig bundet til hvad deres vigtigste samarbejdes partner bruger, hvis det kun kan funger på Windows, så er det sådan det er!, jeg har prøvet på at lave et om, det kan man ikke!. Mac iOS og OSX har truet Microsoft så meget, at det kunne ses på deres salgs tal.

De nu har fået ny direktør, han har opdaget, at man ikke kan styrre folk mere, derfor har de drejet deres udvikling sådan at det skal som minimum virke på Windows og Apples produkter. Da det meste flytter ud på nettet så skal det altså virke i en browser. Skal det virke på Apples produker som for det meste er baseret på NIX*, så kommer det også til at virke på Linux. Det bedset eksemple på det er Office 365. Første version prøvede jeg på Windows IE browser, så fint ud. På en Windows med Firefox, så gik den gode oplevelse i stykker. Det er ændret nu. Nu virker det på ALLE platforme lige godt, Windows/MAC/Linux. så længe vi taler om browser løsningen. OneDrive virker kun på Windows / MAC.

Fremtidens computer og andre device kræver at der er kongurence, og det er det vi ser i dag. I gamle dage var det IBM der sad på IT platformen, Så lod vi Microsoft tage over og "udlukkede" eller de glemte at tage kampen op, jeg ved ikke. Det bedste der kan ske er at der ikke længer er monopol (Google, Microsoft, Apple) det skal kunne funger eller laves til alle uden at det koster kassen, det er forbrugerne bedst tjent med. Det var altså ikke for at starte en relegionskrig :-)

  • 2
  • 0
#64 Troels Henriksen

Det kan i øvrigt nævnes at man sagtens kan sige farvel til Windows flere gange!

Første gang jeg selv gjorde det var i 2003 - omend jeg havde en tiltagende elendig XP-installation til lejlighedsvise spil.

Anden gang var i 2006, da jeg blev færdig med gymnasiet, og skulle levere den af skolen udleverede ThinkPad tilbage.

Tredje (og sidste) gang var i 2014, hvor jeg købte en stationær til at spille spil, og valgte at installere Ubuntu på den. Der findes allerede flere Linux-spil end jeg har tid til at spille, så det fungerer fint.

Nu er jeg til gengæld også helt Windows-fri! Altså, udover en installation der stadigvæk huserer som sekundært styresystem på min mappedatamat, men det er nok over et år siden den har været startet op.

  • 3
  • 0
#68 Sune Marcher

Men ikke nok. Det sander stadig til hvis det ikke reinstalleres jævnligt. Jeg gamer med en teenager og hans Windows 8.x bliver ringere og ringere til at trække de samme spil. Det er måske hardwaren der er for dårlig eller hvad bliver dit "argument"?

Jeg har haft en del af de NT-baserede Windows versioner (2k, XP, XP64, Vista SP1, Win7, Win8) kørende i op til flere år uden geninstalleringer, uden at de er "sandet til" - spil, udvikling, internet, you name it.

Jeg har til gengæld også en række brødre i (og over) teenage alderen. Jeg er stoppet med at rense deres tilsandede maskiner - hvis man ikke kan dyrke sikker porno-surfing, må man lære konsekvensen.

...og nu har vi så to styks anekdotiske udsagn :)

  • 0
  • 0
Log ind eller Opret konto for at kommentere