Bakåtsträvare inom systemutveckling

Permalänk

Bakåtsträvare inom systemutveckling

Hej

Är det bara jag som umgås med bakåtsträvare inom programvaruutveckling?
Jag pratar inte om "nya" tekniker/metoder som scrum koda enligt Test driven development etc. Utan att ens utföra vettig versionshantering kod vill vissa ej göra av hur många anledningar som helst. När man gräver i argumenten så kommer man ner till det slutgiltiga att de tycker det är integritetskränkande om andra kan se de ändringar som de har gjort i ett projekt som flera arbetar i. Deras kodversionshantering är att man ska zippa ihop ens projekt en gång per dag och spara det i en mapp med dagens datum.

Vad fan jobbar du med för personer kan man undra. En stor del av svaret nej det handlar inte om en stor websida som alla jobbar i, utan det kan vara operatörspaneler och annat.

Permalänk
Medlem

byt jobb, detta måste ändå tillhöra extremiteten idag.

Visa signatur

en dator

Permalänk
Medlem

Skämtar du? Det där kan inte vara på ett riktigt programmeringsföretag?
Max en gammal IT-avdelning på något större bolag som halkat in på kodning?

Sök nytt jobb

Permalänk
Skrivet av niro:

byt jobb, detta måste ändå tillhöra extremiteten idag.

Problemet är att jag har kontakt med skitmånga företag.
Och inom vissa områden, så ligger de så långt efter så långt efter så det inte är klokt.
Jag visade ett program som man kunde jämföra vad som hade ändras på en operatörspanel före och efter. Jag har frågat typ 5 personer på olika företag och de har sågat programmet direkt enbart på beskrivningen av funktionen.
-Vi jobbar inte på detta sätt är ett vanligt argument. Jag fattar inte ett skit, vadå inte jobba på detta sätt?
Såklart man vill kunna se vad som har ändras i en progamkod, det handlar för mig om grundläggande saker att kunna göra. Det är inte att koda på ett visst sätt.

*edit*
Min gissning är att det handlar om mycket som revirstänkande. Alltså de flesta utvecklare här på sweclockers så är nog versionshantering som Git/TFS något självklart. Många som programmerar PLC, operatörspaneler, andra HMI kommer från en annan bakgrund. Och de vill inte på något sätt släppa in dessa nyamodiga kodare med deras verktyg. Som versionshantering med TFS/Git, det är bara en fluga som internet och det är inget att haka på.

Permalänk
Medlem

Låter som personer som inte gillar att prata med människor, går fortfarande att använda versionshantering utan direkt koppling till skaparen. Visst är det najs att kunna fråga skaparen (git blame <- ganska dåligt namn på funktionen) men funktionen att kunna se historiken är guld värd när man behöver förstå hur utvecklingen har gått eller behöver felsöka.

Jag har då aldrig varit med om att man inte använder versionshantering, mer "varför ligger detta inte i git?".

Visa signatur

Every time I see some piece of medical research saying that caffeine is good for you, I high-five myself. Because I'm going to live forever.
~ Linus Torvalds (2010-08-03)

Permalänk
Skrivet av mechersmith:

Låter som personer som inte gillar att prata med människor, går fortfarande att använda versionshantering utan direkt koppling till skaparen. Visst är det najs att kunna fråga skaparen (git blame <- ganska dåligt namn på funktionen) men funktionen att kunna se historiken är guld värd när man behöver förstå hur utvecklingen har gått eller behöver felsöka.

Jag har då aldrig varit med om att man inte använder versionshantering, mer "varför ligger detta inte i git?".

De är inte osociala och de kommer med giltliga argument emot, dock är vissa argument så dåliga så man undrar vad det är för personer?
Om jag kodar ett PLC program och sedan skickar detta projekt till en annan person som gör något under en viss tid. När jag senare får projektet så har jag inte en susning om vad som är ändrat mer än en kort beskrivning som denna person ger.

Jag tycker detta är riktigt skit att arbeta men får otroligt mycket mothugg. Argument emot finns, som att verktyg för att versionshantera tar tid att underhålla. Men komma med argument som att jag endast ska göra mitt arbete, det arbete som någon annan har gjort ska jag ej bry mig om. Har denna person gjort fel så är det dens problem.

Det fungerar inte riktigt så när man jobbar i en gemensam kodbas där ändringar en person har gjort kan påverka något som jag sysslar med. Och man vill veta vad är det som har ändras om något av ens lösning har slutat att fungera. Ibland kanske ens lösning aldrig har fungerat riktigt, man vet inte. Men genom att versionshantera kod så kan man lista ut detta och man är säker på att ens kod är orörd.

*edit*
Jag pratar om några av sveriges största bolag inom området som jobbar på detta sätt. Dessa bolag har självklart webbutvecklare och annat, men det helt olika personer, man kan se som de jobbar på olika bolag.

Permalänk
Medlem

Jag kan tänka mig att ett stort problem är hur man ska lösa det eller implementera det, och det vill ingen ta tag i samtidigt som man inte ser någon vinst i det.

Jag har erfarenhet av ICS-system (PLC, HMI osv.) och många av verktygen stödjer inte versionshantering mot t.ex. GIT eller andra system alls från början så då måste man ju göra en manuell hantering vid sidan om. Sen är det ofta inte några rena programmeringsspråk som används, utan många jobbar med att sätta samman kodsnuttar av färdig, granskad kod. Då blir det svårt att hantera merges.

Sen ska man ha ett versionshanteringssystem eller sätta upp ett, och det tar tid från någon.

Jag skulle säga att det stora problemet är att motivera nyttan av det. Det finns ganska få ställen där man kan se att det ger en realiserbar vinst.

Visa signatur

"Det här systemet fungerar urkasst." - operatör.
"Hur ska det fungera då?" - jag
"Gör så att det fungerar som jag vill." - operatör.
/facepalm

Permalänk
Skrivet av Otur:

Jag kan tänka mig att ett stort problem är hur man ska lösa det eller implementera det, och det vill ingen ta tag i samtidigt som man inte ser någon vinst i det.

Jag har erfarenhet av ICS-system (PLC, HMI osv.) och många av verktygen stödjer inte versionshantering mot t.ex. GIT eller andra system alls från början så då måste man ju göra en manuell hantering vid sidan om. Sen är det ofta inte några rena programmeringsspråk som används, utan många jobbar med att sätta samman kodsnuttar av färdig, granskad kod. Då blir det svårt att hantera merges.

Sen ska man ha ett versionshanteringssystem eller sätta upp ett, och det tar tid från någon.

Jag skulle säga att det stora problemet är att motivera nyttan av det. Det finns ganska få ställen där man kan se att det ger en realiserbar vinst.

Du är inne på helt rätt spår och pratar om exakt samma mjukvaror. Jag är den som inom detta område försöker versionshantering denna kod och i princip alla är emot mig känns det som. Och när alla är emot en så kan det vara att alla andra har fel, eller att det bara är en själv som har fel.

Permalänk
Medlem
Skrivet av lillaankan_i_dammen:

Du är inne på helt rätt spår och pratar om exakt samma mjukvaror. Jag är den som inom detta område försöker versionshantering denna kod och i princip alla är emot mig känns det som. Och när alla är emot en så kan det vara att alla andra har fel, eller att det bara är en själv som har fel.

Det finns inte andra ställen på bolaget som använder versionshantering? Är det större bolag finns det ju chansen att det redan finns infrastruktur på plats.

Gör det dock inte enklare att hantera merge-konflikter av "anpassade språk", låter dock som ni arbetar en åt gången idag och då är ju merge-konflikter inga problem. Har bara behövt arbeta med xilinx PLC på de senaste åren och då i C variant så merge-konflikter har varit ett icke problem. Däremot har jag haft oturen att köra git med automatgenererad-kod utifrån modellkod, men man lär sig efter ett tag vad som fungerar. Alternativet att inte ha historiken hade 100% förlängt de gånger jag behövde felsöka, bland annat dök sporadiska deadlocks upp "shrug".

Som kuriosa gjorde min sambo exjobb (ca 5år sen) om arbetssätt på olika mjukvaruföretag, de som höll på med embedded utveckling arbetade då till stor del utan versionshantering och enligt vattenfall.

Visa signatur

Every time I see some piece of medical research saying that caffeine is good for you, I high-five myself. Because I'm going to live forever.
~ Linus Torvalds (2010-08-03)

Permalänk
Medlem

Sjukaste jag hört och jag hade bytt jobb direkt.

Visa signatur

"Happiness is only real when shared"

Permalänk
Hedersmedlem

Helt sjukt!

Vad du själv kan göra däremot är att skapa ett eget lokalt git-repo, och checka in version för version, varje versionsnummer som en egen commit. Då har du i alla fall någon slags grov versionshistorik, och möjlighet att se vad som ändrades i vilken version, givet källkoden.

Permalänk
Skrivet av pv2b:

Helt sjukt!

Vad du själv kan göra däremot är att skapa ett eget lokalt git-repo, och checka in version för version, varje versionsnummer som en egen commit. Då har du i alla fall någon slags grov versionshistorik, och möjlighet att se vad som ändrades i vilken version, givet källkoden.

Jag jobbar med "allt" och versionshanterar kod för fullt Problemet är som någon sa att verktygen inte är skapade för versionshantering från första början.. Många inställningar blir sparade i binärfiler som visserligen datan ofta lätt går att extrahera ifrån, men enbart jämföra innehåller i 2st binärfiler ger dåligt resultat.
Nå jag jobbar på, men jag blir den där knepiga personen som sysslar med detta. Och när jag skickar projektjämförelsedata till utvecklaren innan och frågar du har ändrat här i koden, jag undrar varför då det även påverkar min lösning. Så känner jag en viss tendens i svaret tillbaka att nu har den där varit inne och snokat i min kod och det ska du ge f-n i. Jag får mycket bättre respons om jag bara låtsats att jag av en slump såg ändringen, än att jag ser precis varenda ändring som personen har gjort.
-Vilket typ alla webbutvecklare idag ser som självklart att man skulle vilja göra.

Skrivet av sebbeharry:

Sjukaste jag hört och jag hade bytt jobb direkt.

Som jag tidigare skrev så är detta mer bransch standard hur man ska arbeta inom områden.
Jag arbetar som mer vanlig utvecklare och sedan dessa områden får problem när de områdena plc/hmi etc ligger så otroligt långt efter. Diskuterar jag versionshanteringen med 10 st random plc utvecklare, så blir jag den där udda typen. Tänk om man istället kunde hålla denna diskussion med dem mer offentligt..

Inte för att diskutera politik. Men jag är uppvuxen på landet. Diskussioner där är helt annorlunda än i Göteborg.
Exakt samma sak känner jag när jag sitter bland 10st generella plc kodare och 10st webbutvecklare. Och om man inte vill framstå som konstig så måste man typ anpassa sig efter vilka man umgås med.

Permalänk
Medlem

När det kommer till embedded så är många av utvecklingsverktygen på efterkälken och har nästintill obefintliga stöd för versionshantering. Para detta sedan med en kompilator och miljö där källkoden ibland inte går att kompilera från en version till en annan så då måste även hela workspace med SDK och programfiler från tillverkaren av MCU och tillhörande verktyg in i github (tittar på bland annat Renesas HEW!). Det är ett hejdundrande jobb och jag förstår motargumenten. Kikade lite snabbt på ett projekt vi har av äldre modell och ligger där nästan 7GB i github just för att vi måste spara hela skiten från tillverkaren för varje betydande uppdatering.
På den andra sidan myntet finns projekt där vi har en skyldighet mot kund att kunna redovisa exakt, rad för rad, vilka ändringar som gjorts, något vårt företag i princip alltid har mot mildef.
En ljusning är väl att mer och mer av dessa IDE's använder Eclipse eller NetBeans och då ökar chansen att få till en bra integrering mot github...även om SDK'n inte finns där (Silicon Labs t.ex. tog bort sin från github av någon anledning).

Men ja, jag förstår båda sidor av myntet. Själv försöker jag så långt det går att få till en vettig versionshantering och har flertalet gånger aktivt valt bort programmerbar hårdvara när det saknas en vettig lösning mot github.

Edit: Glömde ju även bort att viss kod faktiskt inte får lämna huset och där har vi tyvärr en lokal enkel modell av versionshantering men ingen historik att tala på förutom att manuellt jämföra rad för rad.

Visa signatur

MSI K9N SLI Diamond | MSI Diamond HDMI 7600GT | AMD X2 4200+ | 1GB Kingston HyperX| 32" LG 5000:1 screen | Asus EeePC 701

Permalänk
Medlem

Klart folk som gör ett dåligt jobb inte vill att det ska vara spårbart..., de är åtminstone medvetna om att de är under medel som programmerare, du får vara glad för att de åtminstone har självinsikt TS.

Visa signatur

Amd o Apple

Permalänk
Medlem

Du kan inte jämföra PLC/HMI programmering med vanlig datorprogrammering och dess versionshantering - där programmeringen är textbaserad.
PLC/HMI är ofta(st) programmerade i ett grafiskt språk, skulle versionshanteringen bestå i bilder?

Ja, PLC/HMI programmering är en konservativ branch. Men tänkt på att när ett styrsystem väl har installerats och drifttagits så snurrar de ofta i 20+ år med obefintliga eller minimala förändringar av orignalprogrammet. Jag har sett styrsystem som installerats i början av 80-talet som bara har snurrat på utan modifikationer. Tänk dig hur många datorer/operativsystem/versionshanteringssystem dessa har överlevt.
Dessa system är oftast också menade att kunna underhållas av tekniker/elektriker och inte ingenjörer/programmerare.

Men - är ni flera som arbetar i samma projekt så är det självklart viktigt med överlämningar och att man dokumenterar sitt arbete så att ni vet vad alla gör och ändrar.
Att dina kollegor skulle skylla på integritetskäl eller motsvarande är bara löjligt och möjligen ren lathet.

Permalänk
Hedersmedlem
Skrivet av lillaankan_i_dammen:

Många inställningar blir sparade i binärfiler som visserligen datan ofta lätt går att extrahera ifrån, men enbart jämföra innehåller i 2st binärfiler ger dåligt resultat.

Om du har ett kommandoradsverktyg som kan göra om binärfilen till text så kan du säga åt git att använda detta verktyg när man kör en git diff.

https://superuser.com/questions/706042/how-can-i-diff-binary-...

Skrivet av lillaankan_i_dammen:

Nå jag jobbar på, men jag blir den där knepiga personen som sysslar med detta. Och när jag skickar projektjämförelsedata till utvecklaren innan och frågar du har ändrat här i koden, jag undrar varför då det även påverkar min lösning. Så känner jag en viss tendens i svaret tillbaka att nu har den där varit inne och snokat i min kod och det ska du ge f-n i. Jag får mycket bättre respons om jag bara låtsats att jag av en slump såg ändringen, än att jag ser precis varenda ändring som personen har gjort.

Gör inte det då. Säg att "hej, min lösning gick sönder p.g.a. XYZ, har du ändrat detta"?

Du behöver ju inte visa honom att du ser allt han gjort. Det är inte relevant heller.

Byt kollegor annars, det är direkt brist på kunnigt folk och därmed ingen brist på arbetsplatser.

Permalänk
Skrivet av ojz0r:

Du kan inte jämföra PLC/HMI programmering med vanlig datorprogrammering och dess versionshantering - där programmeringen är textbaserad.
PLC/HMI är ofta(st) programmerade i ett grafiskt språk, skulle versionshanteringen bestå i bilder?

Ja, PLC/HMI programmering är en konservativ branch. Men tänkt på att när ett styrsystem väl har installerats och drifttagits så snurrar de ofta i 20+ år med obefintliga eller minimala förändringar av orignalprogrammet. Jag har sett styrsystem som installerats i början av 80-talet som bara har snurrat på utan modifikationer. Tänk dig hur många datorer/operativsystem/versionshanteringssystem dessa har överlevt.
Dessa system är oftast också menade att kunna underhållas av tekniker/elektriker och inte ingenjörer/programmerare.

Men - är ni flera som arbetar i samma projekt så är det självklart viktigt med överlämningar och att man dokumenterar sitt arbete så att ni vet vad alla gör och ändrar.
Att dina kollegor skulle skylla på integritetskäl eller motsvarande är bara löjligt och möjligen ren lathet.

Du har mycket poäng i det du skriver speciellt raden.
Dessa system är oftast också menade att kunna underhållas av tekniker/elektriker och inte ingenjörer/programmerare. En vanlig webbutvecklare är kass på det de håller med när det gäller styrenheter. De vill inte få lösningar som främst är anpassade åt mer moderna utvecklare, men lösningen ställer till problem för de som är elektriker.

Angående versionshantera plc/Hmi så går det alldeles utmärkt på flera sätt. Vissa har från grunden bra stöd för detta, andra kan man extrahera information. Bara en sådan sak som att ha koll på tagglistan borde vara självklart.

Skrivet av pv2b:

Om du har ett kommandoradsverktyg som kan göra om binärfilen till text så kan du säga åt git att använda detta verktyg när man kör en git diff.

https://superuser.com/questions/706042/how-can-i-diff-binary-...

Gör inte det då. Säg att "hej, min lösning gick sönder p.g.a. XYZ, har du ändrat detta"?

Du behöver ju inte visa honom att du ser allt han gjort. Det är inte relevant heller.

Byt kollegor annars, det är direkt brist på kunnigt folk och därmed ingen brist på arbetsplatser.

Tackar för tipset. Jag har vissa binärfiler som man med typ 10 rader powershell kan extrahera ut all data ifrån. Men typ bara en programmerare i världen gör detta för att jämföra dessa binärfiler får jag känslan av när jag pratar med folk som jobbar med programmet.

Permalänk
Medlem

Haha, har aldrig hört nåt liknande. Hur skulle det ens funka? Finns det en master-zipfil och en develop-zipfil, kanske en hotfix-zipfil som ni skapar ibland?

Permalänk
Medlem

När jag började jobba med utveckling hade vi ingen versionshantering, dock en massa zipfiler på nätverksdiskar!! Så inget konstigt..

Fast vänta nu, det var för 22 år sedan!

Permalänk
Medlem

Jag behövde inte ens läsa klart inlägget innan jag förstod att det var automation det handlade om. Är inne och jobbar en del i ett scada-system med bland annat 200k rader i csv-format, massvis med json-filer och annat lämpligt. Versionshanteras det? Nej, givetvis inte

Skrivet av sebbeharry:

Sjukaste jag hört och jag hade bytt jobb direkt.

Jobbar man inom automation och det är ens kompetens kommer ett byte av jobb högst troligt inte hjälpa alls. I stort sett alla "versionshanterar" med zip-filer.

Visa signatur

-= Svettig dator och en hårig mobiltelefon =-

Permalänk

Tråden har uppfyllt sitt syfte. Jag mår så mycket bättre nu. Jag vet att just denna fråga så handla det om att vissa har en väldigt gammal syn på projektutveckling.

Skrivet av NiV3Rt:

Jag behövde inte ens läsa klart inlägget innan jag förstod att det var automation det handlade om. Är inne och jobbar en del i ett scada-system med bland annat 200k rader i csv-format, massvis med json-filer och annat lämpligt. Versionshanteras det? Nej, givetvis inte

Jobbar man inom automation och det är ens kompetens kommer ett byte av jobb högst troligt inte hjälpa alls. I stort sett alla "versionshanterar" med zip-filer.

Exakt. Och detta är ett problem. Av olika anledningar så har jag kontakt med ca 15 st företag på olika sätt, vissa av dem är gigantiska. Och alla dessa företag jobbar med dessa zipfiler inom automation vad jag vet. (plc, scada, hmi)
Självklart finns det helt vettiga argument emot olika verktyg som leder till bättre versionskontroll. Som att man inte vill använda exekveringsbara filer från ej pålitliga ställen, man vill ej låsa in sig på olika sätt att jobba. Metoden kan leda till mer overheadtid etc, det skapar även nya risker. Listan går göra lång.

Men börjar listan innehålla argument som att versionshanterings är integrationskränkande emot utvecklaren. Ja lycka till för denna person om den drar upp samma argument om den söker jobb som webb/spelutvecklare.
Där personen säger nej jag använder inte GIT, jag zippar ihop mina projekt och sparar dem med en mapp med dagens datum. Det där Git är kränker min integritet.

*edit*
När jag för många år sedan började som utvecklare direkt från skolan så kändes det inte alls roligt att checka in sitt arbete och genast få ett argt svar tillbaka från någon utvecklare över ens kod. Så jag förstår argumentet integritetskränkande. Men man får jobba med väldigt begränsade saker om alla inte ska kunna se vad alla gör.

*edit*
Inom scada så är ofta folks lösningar begränsade. Man har igång ett stort hmi system. Folk gör lite olika saker här och där och behöver inte veta vad alla andra gör. Men utan versionshantering så blir det ändå superlätt att någon gör en ändring som påverkar en annan.

Permalänk
Medlem

Undrar om byggjobbarna tycker att besiktning av bygget de jobbat på är integritetskränkande...

Permalänk
Skrivet av dlq84:

Undrar om byggjobbarna tycker att besiktning av bygget de jobbat på är integritetskränkande...

Jag känner att min lärare när den rättade mina tentor kränkte min integritet.
Nå man måste ta sedan dit man kommer i livet. Jag tänker vara mer passiv i att informera folk som att när de lämnar in ett projekt till mig så har jag stenkoll på vad de har ändrat sedan de fick denna.
Eller stenkoll, likabra koll som vilken normal utvecklare idag skulle ha där de kan kolla igenom koden och se ändringarna.
Det innebär inte att jag kommer gå igenom precis alla ändringar, men bara att jag kan.

Permalänk
Medlem
Skrivet av lillaankan_i_dammen:

Problemet är att jag har kontakt med skitmånga företag.
Och inom vissa områden, så ligger de så långt efter så långt efter så det inte är klokt.
Jag visade ett program som man kunde jämföra vad som hade ändras på en operatörspanel före och efter. Jag har frågat typ 5 personer på olika företag och de har sågat programmet direkt enbart på beskrivningen av funktionen.
-Vi jobbar inte på detta sätt är ett vanligt argument. Jag fattar inte ett skit, vadå inte jobba på detta sätt?
Såklart man vill kunna se vad som har ändras i en progamkod, det handlar för mig om grundläggande saker att kunna göra. Det är inte att koda på ett visst sätt.

*edit*
Min gissning är att det handlar om mycket som revirstänkande. Alltså de flesta utvecklare här på sweclockers så är nog versionshantering som Git/TFS något självklart. Många som programmerar PLC, operatörspaneler, andra HMI kommer från en annan bakgrund. Och de vill inte på något sätt släppa in dessa nyamodiga kodare med deras verktyg. Som versionshantering med TFS/Git, det är bara en fluga som internet och det är inget att haka på.

Jag har ett PLC utvecklingssystem på jobbet som sparar hela miljön i en enda databasfil och då är det helt värdelöst med versionshantering. Bara att spara som ny version, ingen möjlighet till diffar eller så heller...

Permalänk
Medlem
Skrivet av ehsnils:

Jag har ett PLC utvecklingssystem på jobbet som sparar hela miljön i en enda databasfil och då är det helt värdelöst med versionshantering. Bara att spara som ny version, ingen möjlighet till diffar eller så heller...
https://www.bedug.com/pics/smiley/facepalm.jpg

Låter ju rätt ohållbart (både detta specifikt och hela situationen som tråden handlar om).

Tanken som åtminstone jag får direkt: går det att importera/exportera saker? Kan man konstruera ett arbetsflöde som inte är centrerat kring den där databasfilen utan bara bara skapar den utifrån en versionshanterad kodbas?

I något läge känns det som att även utvecklingsprojekt i den branschen också kommer bli tvingade att mogna.

Visa signatur

Desktop spel m.m.: Ryzen 9800X3D || MSI X870 Tomahawk Wifi || MSI Ventus 3x 5080 || Gskill FlareX 6000 64GB || Kingston KC3000 2TB || Samsung 970 EVO Plus 2TB || Samsung 960 Pro 1TB || Fractal Torrent || Asus PG42UQ 4K OLED
Arbetsstation: Ryzen 7945HX || Minisforum BD790i || Asus Proart 4070 Ti Super || Kingston Fury Impact 5600 65 GB || WD SN850 2TB || Samsung 990 Pro 2TB || Fractal Ridge
Proxmox server: Ryzen 5900X || Asrock Rack X570D4I-2T || Kingston 64GB ECC || WD Red SN700 1TB || Blandning av WD Red / Seagate Ironwolf för lagring || Fractal Node 304

Permalänk
Skrivet av ehsnils:

Jag har ett PLC utvecklingssystem på jobbet som sparar hela miljön i en enda databasfil och då är det helt värdelöst med versionshantering. Bara att spara som ny version, ingen möjlighet till diffar eller så heller...
https://www.bedug.com/pics/smiley/facepalm.jpg

Såna system finns. Då kan man ändå versionshantera de olika versioerna men ej se skillnaden. Ofta kan man på olika sätt ändå bryta ut information. Jag har gjort detta från flera olika produkter.
Inte för att outa vem jag är. Så jag tar exempel på produkter där jag inte alls har versionshanterat enligt beskrivningen.

Inom AutocadCad så sparas filerna som .dwg filer. En binärfil som kan kännas meningslös att versionshantera. Men det finns hur många olika sätt som helst att ändå extrahera information. Samma sak gäller photoshop filer, där det säkerligen finns något inbyggt bra. Jag, vet ingen om denna. Det jag dock vet är att det går extrahera ut information som man kan versionshantera.
Och lyckas man så bra med sin extrahering så typ 99% av alla ändringar som någon har gjort syns supertydligt och det inte är några frågetecken om vad som är ändrat så har man lyckas bra.

Det man helst skulle vilja göra är att gå in och undo en liten ändring, men det är mer komplicerat.
Så autocad exemplet. Man ser direkt att dessa nya linjer är dragna, denna text är ändrad osv. Vill man enbart ändra tillbaka en text, ja då får man göra det manuellt i programmet. Men man har in sin diff all information om vad för ändringar det är.
-I nya autocad så är det inbyggt en funktion för att jämföra cadfiler, superbra och jag använder den ofta. Samma sak med nya Office.

Permalänk
Medlem
Skrivet av evil penguin:

Låter ju rätt ohållbart (både detta specifikt och hela situationen som tråden handlar om).

Tanken som åtminstone jag får direkt: går det att importera/exportera saker? Kan man konstruera ett arbetsflöde som inte är centrerat kring den där databasfilen utan bara bara skapar den utifrån en versionshanterad kodbas?

I något läge känns det som att även utvecklingsprojekt i den branschen också kommer bli tvingade att mogna.

Det är väl lite där skon klämmer. En utvecklingsmiljö för hårdvarunära programmering byggs ofta med "senaste" accepterade tekniken... som idag var för 20 år sedan. Dvs systemen är ofta igång så länge att övriga världen hinner ändra sig båda upp och ner innan det blir dags för utbyte eller uppgradering. Om man tar Renesas mcu:er specifikt för automotive var deras miljö ca 15år gammal innan den pensionerades och deras nya miljö var certifierad och godkänd. Under den tiden har det gått ett par trender i varv runt "IT".
Som exempel fick jag förra månaden en förfrågan om att uppdatera ett system (som jag var med och tog fram) med en relativt enkel funktion. Detta har varit i drift utan behov av fixar eller handpåläggning sedan 2008. Så att nu försöka sätta upp en fungerade miljö på Win10 kommer bli knivigt (tror jag får skaka fram en WinXp eller rent av Win2000) trots att systemet jag ska uppdatera bara kommit halvvägs i sin livslängd. Antar att när det systemet pensioneras så har nog något annat ersatt GitHub och frågeställningen kommer igen

Visa signatur

MSI K9N SLI Diamond | MSI Diamond HDMI 7600GT | AMD X2 4200+ | 1GB Kingston HyperX| 32" LG 5000:1 screen | Asus EeePC 701

Permalänk
Medlem

Jag kan hålla med trådskaparen om att det är väldigt få som vill använda någon form av modern versionshantering i automations branschen.
Jobbar själv med primärt PLC programmering, HMI och Scada system och vet att många använder sig fortfarande av den beprövade metoden av att spara dagens version i en mapp med dagens datum och möjligtvis ett revisions nummer.
Min favorit än så länge är "20210305_HarFixatSensorKodenIFC36_DennaVersionenFungerar"

Har själv under den senaste tiden jobbat med att ta fram ett nytt arbetssätt på min arbetsplats där vi ska använda oss av git verktyg för versionshantering samt jobba mer åt Scrum hållet.

Tyvärr så finns det ingen Git plattform som kan se koden i PLC projekt och tror det inte lär dyka upp någon heller.
Hade ju behövts mer grafiska verktyg för att kunna visa till exempel ladder, graph och FBD programmering. Och även om detta fanns så är jag rätt säker på att filerna är gjorda på ett sånt sätt att se få fram koden kan bli rätt knepigt. Sen så är det ju så att även om du skriver i samma språk i olika verktyg så har varje verktyg ett eget filformat och sätt att spara projekten. Så ett git system som ska kunna visa koden måste då anpassas efter varje aktör på marknaden.

Däremot så är det sjukt användbart att ha git för att bara spara undan versioner och kunna kommentera dessa.
Även om man inte kan gå in och se koden så kommer detta till nytta om någon ska ta över ett projekt eller göra någon ändring längre fram och måste få tillgång till senaste versionen.
Många av mina kunder har frågat efter just hur vi använder oss av versionshanterings verktyg och det är lite olika respons från olika kunder.
Något vi måste göra enligt våra avtal är att skriftligt ansöka om att få lagra projekt filerna på en servern eftersom i många fall är det känslig data och kundens egna maskiner vi jobbar med.

Sen som många säger så är ju PLC marknaden oftast lite efter då verktygen och systemen har tagits fram för många år sen. Om man kollar på Siemens TIA Portal vilket kan kännas väldigt modernt så är det fortfarande Step7 i grunden och har därför lite begränsningar.

Kan avslöja att en stor aktör inom PLC marknaden håller på att kolla på att integrera Git i den nya versionen av deras verktyg.

EDIT:
Nu när jag kollade runt så fick jag upp reklam på mitt LinkedIN flöde om en git plattform för just PLC kod.
Slängde ihop lite kod i TIA Portal 16 för att se om det funkade. Utöver att vara lite segt i det grafiska så funkar det väldigt bra.

Lite begränsat med vad för verktyg den har stöd för men kan vara värt att hålla ögonen öppna framöver.

Visa signatur

Never throw away a VGA cable. It might not be 1999 right now, but who knows what tomorrow will bring?