Jag sitter och läser CS i morgonsolen. Hittar en artikel om Indpro, ett indiskt programmeringsföretag som erbjuder mindre svenska företag programemrare för 150:-/timme. Jag tror inte vi är en utdöende art. Utan att ha torrt på fötterna så misstänker jag att vi har högre omkostnader, skatt, moms osv. till skillnad från Indien, de är några skallar mer än vi dessutom och det finns ett större urval att välja bland. Jag är inte alls imponerad av våra indiska vänner. Tyvärr Roger så har vi (efter normal upphandling) en svensk firma som säger exakt som du skriver. Är det inte det ena så är det andra saker och självklart ingick det inte i ursprungsöverenskommelsen utan skall betraktas som tilläggsuppdrag. Och Nisse som kan koden är pappaledig men nästa vecka då... Nu finns det säkert svenska företag som du säger som också är dåliga. Jag är också osäker mot indier; för det första för att jag har haft med dem att göra irl. Problemet tror jag ligger i hela asiatiska kulturen inom akademiska områden (förstås grovt generaliserat). Barnen drillas stenhårt i skolåldern, vilket ger asiatiska 18-åringar en enorm fördel gentemot västvärldens. Det framgår inte i artikeln om Indpro, men jag har hört från annat håll att det börjar bli brist på IT-folk även i Indien. Många där ser möjligheten att tjäna 10 ggr i mer i USA och Västeuropa och flyttar dit helt enkelt. Deras löner kommer att öka. Kanske inte till vår nivå men till en såpass nivå att det kanske inte är värt riskerna med offshoring (när det gäller kommunikation och språk) för att spara på timpengen. Det är i slutändan resultatet som räknas. De flesta projekt som beställs inom sveriges gränser är inte stora. Det är en eller några utvecklare som tar fram systemen/webbsajterna i många fall. För att det ska bli bra måste de ha en tät och rik kommunikation med beställaren/användaren. Jag har jobbat med ett flertal kunder som arbetar med outsourcing och deras samlade åsikt ligger i linje med att indier är bra att ha att göra med när det gäller väl definerade och isolerade arbetsuppgifter. Typ "bygg en momsberäknare baserade på de här definerade reglerna" men att det är hopplöst att ge dem helhetsansvar för projekt. Jag säger som Patrik m.fl - om det finns en specifikation där man inte kan misslyckas är detta toppen - men som helhetslösning skulle jag aldrig våga detta. Jag har hört att några banker gör såhär, släpper iväg stora delar av programmeringen till andra länder. Vi får se, någon kanske har mer erfarenhet inom bankvärlden. Fast när man säger att det är "slavprogrammeringen", dvs. repetitiva, väl avgränsade uppgifter som man kan outsourca, så tycker jag själv att det är symptom på något annat. Du menar alltså att vi ska automatisera indierna? Nej, jag menar att många (del-)system skulle kunna skrivas lika snabbt som deras kravspecar om vi hade haft lämpliga tekniker för det. Till viss mån funkar ju O/R-mappers; RoR kommer en bra bit, osv. Och sen kan vi ju faktiskt kalla det automatiserade indier om du vill, eller möjligtvis "definitioner för Mac"; http://gigamonkeys.com/book/macros-defining-your-own.html#the-story-of-mac-a-just-so-story. DSL:s är mitt nya hatobjekt :-) <b>>men små klämmiga DSL:er kommer man garanterat att glömma när man inte kollat på dem på ett tag.</b> <b>Min grundpoäng är att om det finns upprepat, enkelt, långtråkigt kodskrivande som man kan sätta vem som helst på bara man specar det ordentligt, så kan man skriva ett program som skriver koden enligt specen istället.</b> <b>>Eller varför inte bara en kompilator för kravspecen</b>En liten utvecklarfråga.
Hur ser ni som utvecklare på detta? Hot? Möjlighet? Hur ser framtiden ut?
jag tror att det är lätt att negligera problemet genom att säga att kompetensen är låg etc men faktum är att jag just nu betalar 850:-/timme för en mycket medioker svensk utvecklarinsats.
Vad tror ni skulle behövas för att möta hotet? Är vi en utdöende sort?
-- OBS detta är en "Hata Pellesoft" fri tråd. --, vänligen respektera detta.
-- OBS 2. I den här tråden är det fullt tillåtet att stava fel, så ni behöver inte kommentera dessa. --Sv: En liten utvecklarfråga.
Vad som skulle behövas är att bromsa allt det här höja priser, hyror osv.
Höjs min hyra mer så får jag och katten flytta ut i bilen och bosätta oss på någon parkering.
A-kassan höjs inte i takt med att matpriser, hyror osv höjs.
Sen tror jag att arbetsgivarna måste ge folk en chans, även om man inte har universitetsutbildning så kan man koda och lära sig. Bara för att folk har en betalningsanmärkning så betyder inte det automatiskt att folk snor pengar så fort de kommer åt. Tyvärr räknas allt i kronor och ören numera, man ser inte till folks vilja att jobba. Sådana som jag med obotlig sjukdom och arbetsskada ratas ändå jobbade jag heltid och har jobbat heltid hela mitt yrkesliv är sällan sjuk när/om jag har råd med medicinen. Sv: En liten utvecklarfråga.
Självklart finns det några som vet vad de gör.
Men jag har själv anlitat outsource indier tidigare och det var bara skit med allt.
De ljög o strulade med allt.
(det handlade om dokumentation och skriva exempel i mitt fall..)
efter en vecka: "yes dear sir we are almost finished now, going very well"
efter två veckor: "apu who is working on your project is sick and will not continue on your work, sorry dear sir and good luck"
De plockar folk från gatan och sätter dem på riktiga uppdrag.
Hela codeproject.com är fullt av indier som skriver inlägg som:
"URGNT PLZ FAST , need help build CAD system, deliver code to me plz.. hurry"
Har du med en svensk firma att göra så kan du iaf åka dit och ta dem i örat.
Indierna skulle bara försvinna under jorden om det blir något strul.Sv:En liten utvecklarfråga.
Som jag skrev i inledningen tror jag att vi gör oss själva en otjänst om vi bara tar för givet att de är dåliga och svenska firmor per automatik förstår detta. En diff på 700 kronor är ett rätt bra argument för vilket litet företag som helst men åter till urspungsfrågan. Hur hanterar vi detta för att inte bli omsprungna? (Jag förutsätter att strutsmetoden inte funkar, dvs stoppa huvudet i sanden och låtsas som ingenting :)
Skall vi bli bättre analytiker och låta själva kodandet lämna landet?
Skall vi sänka timuttaget (och därmed slutpriset) mha mönster, bättre verktyg, färdiga moduler etc?
Skall jag gå och ta en kopp kaffe till (här är dock svaret självklart)
/JonasSv: En liten utvecklarfråga.
Men generellt sett så får man ju en mängd fördelar.
Du kan beskriva vad du vill ha på svenska och slippa många problem pga språkförbistring.
(nu förekommer ju det också, men inte lika mycket som om det ska översättas två ggr innan utvecklarna börjar koda)
Du kan be företaget skicka över folk för att visa dem vad ni gör och hur det gårtill för att de ska få en bättre bild av det hela.
Du kan driva en rättslig process mot svenskar om det strular.
Våra kära indier kommer bara försvinna från jordens yta om samma sak sker där..
Och timpris är dessutom rätt ointressant.
om en svensk gör en sak på 1 timme för 700.-/h och en indier gör det på 7 timmar för 100.-/h blir ju samma prislapp.
Risken att de ska missuppfatta o strula gör ju att tiden gärna drar iväg.
Sedan finns det ju en del problem med att verifiera ursprunget av den kod de levererar.
De har ju en viss förmåga att låna kod både här o var, som kan ligga under massa olika licensmodeller.
Vore ju snopet om applikationen som du betalat massor för består av GPL kod tex.
Driva en process mot en indisk firma som kanske inte ens finns blir nog inte så roligt..Sv:En liten utvecklarfråga.
Närmaste åren efter vänder det dock; västvärldens ungdomar har en mycket högre grad av kreativitet och kritiskt tänkande, och vid doktorandålder ligger i stort sett alla på samma nivå.
Det är det jag tycker mig se hos asiater i såna här sammanhang. En jävla arbetsmoral och ett starkt driv, men i stort sett ingen kreativitet. De har sitt schema på hur man löser uppgifter, och sen följer de det till punkt och pricka. Är det väl avgränsat så funkar det bra, men så fort kreativ utveckling krävs drar grejer ut på tiden och de kommer inte med några förslag.
Ett sätt som kan lösa lite av det Roger pratar om är att ha folk på plats. Vi hade tre indier inne på företaget där jag sitter för portning till Mac och Linux. De arbetade snabbt och effektivt, stannade till sent på kvällen etc. De fick jobbet gjort helt enkelt. Detta är ett typuppdrag där jag tror att en indier är lämpad. Jag hade däremot inte velat att de gick in och fixade en funktion i ett projektplaneringsverktyg, göra en utökning av en fysikmotor, etc.
Detta är förstås vansinnigt förenklat, och har framför allt att göra med språk/kultur, men det är mina erfarenheter.Sv: En liten utvecklarfråga.
Det finns ytterst få kompetenta beställare i Sverige som kan beställa rätt sak från början samt skriva en hyffsat komplett och utförlig kravspecifikation på *engelska* som indiska utvecklare kan använda.. (beställaren behöver en svensk systemutvecklare som stöd..)
Det brukar (och bör) alltid finnas en dialog mellan användare/utvecklare om vad som egentligen ska göras. Om den dialogen ska vara mellan Britt-Marie 55 år i Norrköping och Rashajvanii 23 i Madras, då blir det nog inte lätt att lyckas med det projektet.
Sen tror jag att det kommer att utvecklas fler nya roller som kommer att vara närmare verksamheten, folk som förstår systemutveckling, men inte nödvändigtvis programmerar. T.ex. "IT-ekonom" är ett sånt yrke som har kommit på senare år.Sv: En liten utvecklarfråga.
De jag jobbat med brukar oftast ha ett projektteam med svenska utvecklare för de komplicerade delarna som kravinsamling, arkitetktur, design och konceptskapande medans de skickar repetetiva arbeten som vem som helst kan göra till indien.
Jag får en känsla av att de problem som uppleves baseras på tre delar, Roger nämner den första och det är spårkförbistringar, kommunikation är grundläggande för att få ett projekt att lyckas och den blir svårare när man skall hantera den över halva jordklotet på ett annat språk.
Det andra tror jag är att det finns massor med oseriösa lycksökare i indien. Outsorcing marknaden har exploderat och precis som på 90-talet i Sverige kan vem som helst starta ett konsultbolag utan direkt kompetens. Tricket är att hålla sig undan från dem.
Det tredje beror alldeles säkert på att man inte vill säga nej till uppdrag, säga nej till uppdrag är att säga nej till pengar och det är vad som driver stora delar av deras ekonomi just nu.Sv:En liten utvecklarfråga.
Sv: En liten utvecklarfråga.
De uppgifterna borde med moderna tekniker och språk vara lika enkla att skriva som att skriva själva kravspecen; man använder alltså fel tekniker om man känner att man tjänar på att outsourca det.Sv:En liten utvecklarfråga.
Kanske kan bli en produkt?
AutoIndier
E-Indier
eller apples - IIndierSv: En liten utvecklarfråga.
Slava Akhmechets defmacro.org LISP-system Weblocks är ett bra steg i rätt riktning.
Tillräckligt specialiserade språk för att fortfarande vara en förenkling av originalproblemet, men ändå tillräckligt generella för att lösa alla de vanligaste fallen. Meet problem-specific mini-languages aka domain-specific languages.Sv:En liten utvecklarfråga.
Sv:En liten utvecklarfråga.
(även fast jag gillar att göra egna)
även om man får skriva mer i tex C# , så är det iaf lättare att underhålla.
Man glömmer inte det språk man jobbar mest i.
men små klämmiga DSL:er kommer man garanterat att glömma när man inte kollat på dem på ett tag.Sv: En liten utvecklarfråga.
Det beror ju förstås på kvaliteten hos språken, och det skiljer ju sig inte nämnvärt ifrån att ha skrivit en applikation och gå in och ändra i den. Skillnaden är att du i princip kan göra en mappning från en kravspec till en applikation. Jag tror mycket av all dålig erfarenhet av DSL:er kommer från generella "rapportverktyg" där själva funktionen är i fokus, snarare än syftet. Vänder man på det och har ett, säg, "projektplaneringsspråk", som istället kan arbeta mot ett rapportgenereringsbibliotek så blir det mer logiskt.
Min grundpoäng är att om det finns upprepat, enkelt, långtråkigt kodskrivande som man kan sätta vem som helst på bara man specar det ordentligt, så kan man skriva ett program som skriver koden enligt specen istället.Sv:En liten utvecklarfråga.
Eller varför inte bara en kompilator för kravspecen :-).
//AnnSv: En liten utvecklarfråga.
Ja, det är ju det som är målet.
1. Skriv kravspecar noggrannare och noggrannare. Inom vissa områden är det ganska väl avgränsat vad man kan vilja göra, och man kan enkelt ställa upp en sekvens stenhårda regler för exakt hur kravspecen ska se ut.
2. Med ett klassiskt språk (=imperativt språk här - förstås inte helt kronologiskt rätt) blir det helt enkelt en mappning mellan kravspecen och en klasstruktur, som är det som man kan skicka till indier idag. Alternativt får man göra en egen kompilator som genererar kod i det klassiska språket. Ett jävla jobb och ofta buggigt.
3. Men med ett språk där det går att bygga in DSL:er kan man faktiskt styra kravspecens utseende till format som är direkt körbart; så fort man har en färdig kravspec så har man ett färdigt program. Nyttan med detta är att man dessutom kan bygga ut sitt DSL i den mån det behövs. I praktiken blir detta en kompilator för kravspecen.