{"id":35440,"date":"2019-10-31T22:04:21","date_gmt":"2019-10-31T19:04:21","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kopanie-mogil-sql-server-gody-autsorsa-i-svoj-pervyj-proekt\/"},"modified":"2019-10-31T22:04:21","modified_gmt":"2019-10-31T19:04:21","slug":"kopanie-mogil-sql-server-gody-autsorsa-i-svoj-pervyj-proekt","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kopanie-mogil-sql-server-gody-autsorsa-i-svoj-pervyj-proekt","title":{"rendered":"Grave grave, SQL Server, \u00e5r med outsourcing og sit f\u00f8rste projekt","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Grave grave, SQL Server, \u00e5r med outsourcing og sit f\u00f8rste projekt\" src=\"\/wp-content\/uploads\/2019\/06\/cacbd68cd81662abfa1feaac7c2ac470.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nStort set altid skaber vi vores egne problemer med egne h\u00e6nder\u2026 med vores verdensbillede\u2026 med vores passivitet\u2026 med vores dovenskab\u2026 med vores frygt. Det bliver meget bekvemt at flyde med den offentlige str\u00f8m af kloakske skabeloner\u2026 for det er varmt og sjovt, og resten er ligegyldigt \u2013 vi kan bare tage det ind. Men efter en h\u00e5rd fiasko kommer erkendelsen af en simpel sandhed \u2013 i stedet for at generere en endel\u00f8s str\u00f8m af grunde, selvmedlidenhed og undskyldninger, er det nok bare at tage og g\u00f8re det, du anser for vigtigst for dig. Det vil v\u00e6re udgangspunktet for din nye virkelighed.<\/p>\n<p>For mig er det, der er skrevet nedenfor, netop et s\u00e5dant udgangspunkt. Vejen vil ikke v\u00e6re kort\u2026<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nAlle mennesker er socialt afh\u00e6ngige, og underbevidst \u00f8nsker vi alle at v\u00e6re en del af samfundet, og str\u00e6ber efter at f\u00e5 godkendelse af vores handlinger fra andre. Men sammen med godkendelsen vil vi konstant blive omgivet af samfundets vurdering, som underst\u00f8ttes af indre komplekser og konstante begr\u00e6nsninger.<\/p>\n<p>Ofte er vi bange for at fejle og uds\u00e6tter konstant vigtige ting for os selv, og derefter rationaliserer vi i vores hoveder for at fors\u00f8ge at berolige os selv: \"det blev alligevel ikke til noget\", \"det vil ikke finde godkendelse hos andre\" og \"hvad er i det hele taget form\u00e5let med at g\u00f8re dette?\" Mange ved simpelthen ikke, hvor st\u00e6rke de er, fordi de aldrig har pr\u00f8vet at \u00e6ndre noget i deres liv.<\/p>\n<p>For hvis en person kun g\u00f8r det, han kan \u2013 skaber han automatisk en skabelon i sit sind: \"det kan jeg... det vil jeg g\u00f8re...\". Men der er ikke noget enest\u00e5ende over, n\u00e5r en person kun g\u00f8r det, han kan. Han gjorde det, fordi han kunne, men forblev samtidig inden for det samme spektrum af sine oprindelige evner, som han altid har haft. Men hvis du ikke kunne, og s\u00e5 gjorde det \u2013 s\u00e5 er det her, du er virkelig fantastisk. For kun n\u00e5r vi tr\u00e6der ud af vores komfortzone og arbejder ud over vores evner \u2013 kun da udvikler vi os og bliver bedre.<\/p>\n<p>Mit mit min f\u00f8rste fors\u00f8g p\u00e5 at lave noget meningsfuldt begyndte allerede i mit fjerde studie\u00e5r. Jeg havde allerede grundl\u00e6ggende kendskab til C++, og en mislykket fors\u00f8g p\u00e5 at l\u00e6re alle Richter's b\u00f8ger p\u00e5 det insisterende r\u00e5d fra en potentiel arbejdsgiver. Jeg st\u00f8dte tilf\u00e6ldigt p\u00e5 OpenCV-biblioteket og et par demoer om m\u00f8nstergenkendelse. Overraskende for mig selv begyndte jeg at tilbringe n\u00e6tter med at finde ud af, hvordan jeg kunne forbedre funktionaliteten af dette bibliotek. Mange ting lykkedes ikke, og ved hj\u00e6lp af reverse engineering pr\u00f8vede jeg at se p\u00e5 produkter med samme fokus. Det kom til det punkt, hvor jeg l\u00e6rte at dissekere et kommercielt bibliotek og gradvist trak algoritmer ud derfra, som jeg ikke selv kunne implementere.<\/p>\n<p>Enden af femte studie\u00e5r n\u00e6rmede sig, og jeg begyndte mere og mere at kunne lide det, jeg havde arbejdet med i al denne tid. Da jeg nu skulle til at arbejde fuldt ud, besluttede jeg at skrive til udviklerne af det kommercielle bibliotek, hvorfra jeg havde hentet mine ideer. Jeg troede, de let ville tage mig ind, men efter et par e-mails om min \u00f8nskede stilling f\u00f8rte vores samtale ikke til noget. Der opstod en let skuffelse og en st\u00e6rk motivation til at bevise, at jeg kunne opn\u00e5 noget selv.<\/p>\n<p>I l\u00f8bet af en m\u00e5ned satte jeg en hjemmeside op, uploadede alt p\u00e5 en gratis hosting, forberedte dokumentationen og begyndte at s\u00e6lge. Jeg havde ikke penge til reklame, og for at fors\u00f8ge at tiltr\u00e6kke potentielle kunder begyndte jeg at distribuere mine projekter som open source. Responsen var omkring 70%, men overraskende for mig begyndte de tilbagev\u00e6rende, om end n\u00f8lende, at k\u00f8be. Ingen blev forstyrret af mit klodsede engelsk eller den gratis hosting, hvor hjemmesiden var placeret. Folk var tilfredse med kombinationen af lav pris og grundl\u00e6ggende funktionalitet, der d\u00e6kkede deres prim\u00e6re behov.<\/p>\n<p>Der kom flere faste kunder, der \u00f8nskede at investere i mit projekt som partnere. Pludselig dukkede udviklerne af det bibliotek op, jeg havde hentet meget inspiration fra. De antydede k\u00e6rligt, at deres algoritmer var patenterede, og at man ikke burde komme i konflikt med dem, mens de \u00e5benlyst tog min kundekreds. Vores samtale var langt fra kulturel, og p\u00e5 et givent tidspunkt besluttede jeg at lede dem hen til de tre evige bogstaver i alfabetet. Dagen efter sendte de et officielt brev om, at de var klar til at samarbejde med mig, men jeg afsluttede dialogen med dem p\u00e5 en skarp m\u00e5de. For at v\u00e6re p\u00e5 den sikre side mod fremtidige angreb fra disse fyre begyndte jeg at forberede patentdokumentation og ans\u00f8gning om ophavsret.<\/p>\n<p>Tiden gik, og denne historie blev langsomt glemt. Jeg havde planer om at ans\u00e6tte en mere erfaren person til at hj\u00e6lpe mig, men der var ikke penge til det. Gr\u00e5digheden spillede ind, og jeg \u00f8nskede at snuppe et stort bid. Der var planlagt et m\u00f8de med en ny kunde, som, som det viste sig under vores samtale, boede i samme by som jeg. S\u00f8dmefyldt skildrede han udsigterne til samarbejde og foreslog at m\u00f8des ansigt til ansigt.<\/p>\n<p>Faktisk dukkede der i stedet for ham unge mennesker op med et venligt udseende, og uden at sp\u00f8rge om min mening, foreslog de at tage en tur ud af byen med henvisning til en akut n\u00f8dvendighed for at \"f\u00e5 lidt frisk luft\". Da vi kom derud, blev der udleveret en navnlig spade med det form\u00e5l at teste f\u00e6rdigheder, jeg havde l\u00e6rt som barn p\u00e5 min bedstemors kartoffelmarker. Og i l\u00f8bet af en time forklarede de mig p\u00e5 en letforst\u00e5elig m\u00e5de mine muligheder, foreslog mig at stoppe med at fordele mine kr\u00e6fter, at oph\u00f8re med at lave fjollerier, og vigtigst af alt \u2013 at holde op med at v\u00e6re uh\u00f8flig over for alvorlige mennesker.<\/p>\n<p>P\u00e5 et tidspunkt oph\u00f8rte verden med at v\u00e6re et solrigt og hyggeligt sted. Det er sv\u00e6rt at sige, om jeg handlede rigtigt dengang... men jeg gav op... opgav kampen og gemte mig i et hj\u00f8rne. Og dette definerede i h\u00f8j grad det, der kom senere: latent vrede mod omverdenen p\u00e5 grund af urealiserede muligheder, usikkerhed i mange \u00e5r, apati i forhold til at tr\u00e6ffe vigtige beslutninger for mig selv, og en tendens til at p\u00e5l\u00e6gge ansvaret for mine fejl p\u00e5 andre.<\/p>\n<p>De opsparede penge forsvandt hurtigt, og jeg havde brug for at f\u00e5 styr p\u00e5 mig selv, men alt faldt fra hinanden. P\u00e5 det tidspunkt hjalp min far mig meget, da han gennem bekendte fandt et sted, hvor de ville tage mig ind uden at stille for mange sp\u00f8rgsm\u00e5l. Senere fandt jeg ud af, at han i den forbindelse kom til at st\u00e5 i g\u00e6ld over for nogle ret ubehagelige mennesker, men han gav mig chancen for at vise, hvad jeg kunne.<\/p>\n<p>Forberedte jeg mig til mit nye job, begyndte jeg igen at l\u00e6se Richter og studerede flittigt Schildt. Jeg planlagde, at jeg ville arbejde med udvikling p\u00e5 .NET, men sk\u00e6bnen havde andre planer for mig allerede i den f\u00f8rste m\u00e5ned af min officielle ans\u00e6ttelse. En af medarbejderne forlod pludselig projektet, og der blev kastet friskt mandskab ind i det nyopst\u00e5ede hul.<\/p>\n<p>Mens min kollega pakkede sine ting, havde jeg en ganske episk samtale med finansdirekt\u00f8ren:<\/p>\n<p>\u2014 Kender du databaser?<br \/>\n\u2014 Nej.<br \/>\n\u2014 L\u00e6r det i nat. I morgen vil jeg pr\u00e6sentere dig som en mid-level databaseudvikler for kunden.<\/p>\n<p>Og s\u00e5dan begyndte mit bekendtskab med SQL Server. Alt var nyt, uforst\u00e5eligt, og oftest blev det gjort ved hj\u00e6lp af trial and error. Jeg savnede i h\u00f8j grad en dygtig mentor, som jeg kunne l\u00e6ne mig op ad.<\/p>\n<p>De n\u00e6ste par m\u00e5neder mindede alt om ren kaos. Projekterne var interessante, men blev overladt til sig selv af ledelsen. Der begyndte at komme hektiske perioder, evig overarbejde og opgaver, som ingen engang kunne formulere ordentligt. Min yndlingsbesk\u00e6ftigelse blev konstant at forbedre rapporten om fordeling af f\u00e6rdige kager til simple halvfabrikatvarer. Men da enhver kage kunne v\u00e6re en del af en anden kage, blev min hjerne presset til det yderste af denne barske forretningslogik.<\/p>\n<p>Jeg forstod, at det kun ville blive v\u00e6rre, og besluttede at handle. Jeg friske min hukommelse om teorien og besluttede at pr\u00f8ve lykken andre steder, men til jobsamtalerne manglede jeg erfaring nok til at klare mig som en solid junior. De f\u00f8rste par dage var jeg imponeret over mine fejltagelser og begyndte alvorligt at overveje, om det ikke var for tidligt at skifte job, og at jeg skulle samle mere erfaring.<\/p>\n<p>Jeg begyndte intensivt at studere teknisk materiale om SQL Server og endte med helt at g\u00e5 ind i databasedesign. Jeg vil ikke skjule, at dette arbejde var et rigtigt helvede for mig, hvor, p\u00e5 den ene side, en praktiserende skizofreniker i form af teknisk direkt\u00f8r underholdt mig hver dag, samtidig med at finansdirekt\u00f8ren, der var afghansk, i et f\u00f8lelsesm\u00e6ssigt \u00f8jeblik bed i hovedet af gummibade\u00e6nder i frokostpausen.<\/p>\n<p>P\u00e5 et sk\u00f8nt \u00f8jeblik inds\u00e5 jeg, at jeg var klar. Jeg tog al kritisk arbejde p\u00e5 mig, sikrede en h\u00f8j udgivelsesfrekvens og normaliserede mine relationer til kunderne. Som resultat endte jeg med at stille finansdirekt\u00f8ren i en stilling som en f\u00e6ldet birk. Man kunne godt lave en joke om 23-\u00e5rige seniors, men netop s\u00e5dan fik jeg for\u00f8get min l\u00f8n med fire gange.<\/p>\n<p>Den n\u00e6ste m\u00e5ned var jeg fyldt med stolthed over, hvad jeg havde opn\u00e5et, men hvad var prisen? Arbejdsdagen startede kl. 7.30 om morgenen og varede til kl. 22.00. Mit helbred begyndte at give de f\u00f8rste tegn p\u00e5 svigt, og det skete p\u00e5 baggrund af systematiske antydninger fra ledelsen om, at det ville v\u00e6re bedre, hvis vi bevidst fejlede projektet, end at jeg tjente mere, end hvad der er 'gennemsnitligt i vores hospital'. I det mindste holdt de deres ord i nogetsomhelst, og jeg stod over for dilemmaet om at s\u00f8ge et nyt job.<\/p>\n<p>Efter noget tid blev jeg inviteret til en samtale i et produktfirma. Jeg planlagde at skifte til en lignende stilling inden for .NET, men jeg fejlede desv\u00e6rre p\u00e5 den praktiske opgave. Vi var n\u00e6sten klar til at sige farvel, men det mest interessante skete, da de potentielle arbejdsgivere fandt ud af, at jeg havde erfaring med SQL Server. Jeg havde ikke uddybet det meget i mit CV, da jeg aldrig mente, jeg vidste s\u00e5 meget p\u00e5 dette omr\u00e5de. Men de, der interviewede mig, havde en lidt anderledes opfattelse.<\/p>\n<p>Jeg blev tilbudt at forbedre den eksisterende produktlinje til arbejde med SQL Server. Tidligere havde de ikke haft en s\u00e6rskilt specialist, der arbejdede med denne aktivitet. Alt blev ofte gjort ved fors\u00f8g og fejl. Den nye funktionalitet blev ofte blot kopieret fra konkurrenterne, uden at man dykkede ned i detaljerne. Min opgave var at vise, at man kunne g\u00e5 en anden vej, ved mere kvalitativt at arbejde med foresp\u00f8rgsler til systemvisningerne end konkurrenterne.<\/p>\n<p>De par m\u00e5neder blev en uvurderlig ny erfaring for mig sammenlignet med min tidligere aktivitet med at udvikle kager. Men alt godt slutter f\u00f8r eller siden, og ledelsen \u00e6ndrede pludselig prioriteter. P\u00e5 det tidspunkt var arbejdet udf\u00f8rt, og der blev ikke t\u00e6nkt p\u00e5 noget bedre for mig end at omstille mig til tester, hvilket l\u00e5 lidt i strid med vores aftaler om udvikling af nye produkter. Jeg fik hurtigt en alternativ l\u00f8sning \u2013 \"bare vente lidt\", fors\u00f8ge at engagere mig i social aktivitet og samtidig frivilligt acceptere at forlade udviklingen for manuel testning.<\/p>\n<p>Arbejdet blev en monoton r\u00e6kke regressioner, som ikke motiverede til videreudvikling. For officielt at slippe for regressionerne begyndte jeg at skrive tekniske artikler p\u00e5 Habr, og senere ogs\u00e5 p\u00e5 andre ressourcer. I starten gik det ikke s\u00e5 godt, men vigtigst af alt, jeg begyndte at kunne lide det.<\/p>\n<p>Efter noget tid blev jeg betroet opgaven med at forbedre det officielle selskabsprofil p\u00e5 Stack Overflow. Hver dag stod jeg overfor interessante sager, gennemgik tonsvis af indisk kode, hjalp folk, og vigtigst af alt \u2013 jeg l\u00e6rte og samlede erfaring.<\/p>\n<p>I en tilf\u00e6ldig omst\u00e6ndighed deltog jeg i min f\u00f8rste SQL Saturday, der fandt sted i Kharkiv. Min kollega skulle tale om databaseudvikling med de produkter, vi havde arbejdet med hele tiden. Jeg kan ikke huske hvorfor, men i sidste \u00f8jeblik m\u00e5tte jeg selv lave pr\u00e6sentationen. Denis Reznik, med sit traditionelle venlige smil, giver mikrofonen til mig, og jeg pr\u00f8ver med en stammende stemme at fort\u00e6lle noget til folk. I starten var jeg bange, men s\u00e5 \"blev jeg besat\".<\/p>\n<p>Efter arrangementet kom Denis hen til mig og foreslog, at jeg kunne tale ved et mindre arrangement, som traditionelt fandt sted i KHIRe. Tiden gik, konferencens navne \u00e6ndrede sig, og publikum voksede stille og roligt, hvor jeg holdt meetups. Dengang vidste jeg ikke, hvad jeg tilmeldte mig, men en r\u00e6kke tilf\u00e6ldigheder formede mit livsvalg og det, jeg besluttede at dedikere mig selv til fremover.<\/p>\n<p>Inspireret af specialister som Reznik, Korotkevich, Pilyugin og andre dygtige folk, jeg har haft forn\u00f8jelsen af at m\u00f8de\u2026 forstod jeg, at jeg i mit nuv\u00e6rende arbejde ikke ville have opgaver, der kunne f\u00f8re til hurtig fremgang. Jeg havde en solid teoretisk baggrund, men manglede praktisk erfaring.<\/p>\n<p>Jeg blev tilbudt at opbygge et nyt projekt fra bunden p\u00e5 et nyt sted. Arbejdet var i gang fra f\u00f8rste dag. Alt, hvad jeg tidligere havde \u00f8nsket at f\u00e5 ud af livet, var nu blevet til virkelighed: et interessant projekt, h\u00f8j l\u00f8n, mulighed for at p\u00e5virke produktkvaliteten. Men p\u00e5 et tidspunkt slap jeg mig selv og begik en ret alvorlig fejl lige efter, at vi havde afsluttet udviklingen af et MVP til kunden.<\/p>\n<p>I mit fors\u00f8g p\u00e5 at fokusere p\u00e5 udviklingen og levere en bedre l\u00f8sning fik jeg stadig mindre tid til ledelse og kommunikation med kunden. Til min hj\u00e6lp fik jeg en ny person, der begyndte at overtage dette ansvar for mig. P\u00e5 det tidspunkt var det sv\u00e6rt for mig at forst\u00e5 \u00e5rsagssammenh\u00e6nge, men derefter begyndte vores forhold til kunden at forv\u00e6rres hurtigt, overarbejde steg, og sp\u00e6ndingen i teamet voksede.<\/p>\n<p>Jeg pr\u00f8vede at rette op p\u00e5 situationen i projektet, bringe orden og vende tilbage til en mere rolig udvikling, men det fik jeg ikke lov til. Alle var tilfredse med de konstante brande, der skulle slukkes.<\/p>\n<p>Efter at have analyseret situationen besluttede jeg, at jeg \u00f8nskede at tage en pause fra hele dette cirkus og foreslog CEO'en fra mit tidligere arbejde at vende tilbage til ham med betingelsen om, at vi sammen skulle lave et nyt projekt. Vi diskuterede alle nuancer, og vi planlagde at starte udviklingen om en m\u00e5ned. En m\u00e5ned gik\u2026 s\u00e5 endnu en\u2026 og endnu en. Til alle mine sp\u00f8rgsm\u00e5l var svaret u\u00e6ndret \u2013 vent. Tanken om at lave noget eget forlod mig ikke, men jeg m\u00e5tte alligevel midlertidigt g\u00e5 freelance for at hj\u00e6lpe folk fra Centralasien med at erobre banksektoren i Ukraine.<\/p>\n<p>Lidt over en m\u00e5ned senere fik jeg at vide, at udviklingen af mit projekt stille og roligt var startet af uautoriserede personer med den tidligere ledelses officielle tilladelse. Disse fyre var dygtige .NET udviklere, men havde ingen erfaring med det, de skulle lave. Udefra s\u00e5 det ud som om, jeg stille og roligt blev droslet ud af projektet. Og det var faktisk s\u00e5dan. I et anfald af vrede begyndte jeg at arbejde p\u00e5 dette projekt selv, men motivationen svandt hurtigt.<\/p>\n<p>En tidligere CTO tilb\u00f8d at hj\u00e6lpe ham med de nuv\u00e6rende projekter, og jeg begyndte at g\u00f8re det, jeg gjorde bedst - slukke brande. Igen ramt af workaholism h\u00f8stede jeg konsekvenserne: usund kost, en s\u00f8vnrytme langt fra normal og konstant stress. Det hele kunne forklares med to projekter, som jeg skiftevis trak mod en lysere fremtid. Et projekt bragte gl\u00e6de med 24\/7 arbejdsm\u00f8nstret, mens det andet havde en forvr\u00e6nget forst\u00e5else af ledelse, s\u00e5 teamet arbejdede i evig branddrift. Denne periode i mit liv kan ikke beskrives anderledes end som masochisme, men der var ogs\u00e5 sjove \u00f8jeblikke.<\/p>\n<p>Du graver roer i haven hos dine for\u00e6ldre, mens du lytter til retrowave, og pludselig ringer telefonen: \"Seryoga... hestene stopper med at l\u00f8be...\". Efter et par sekunders overvejelse, st\u00e5ende med spaden og tr\u00e6ner dine gyldne evner fra bedstemor Vanga, dikterer du fra hukommelsen sekventielle kommandoer, s\u00e5 personen kan l\u00f8se problemet p\u00e5 serveren. Jeg ville ikke bytte denne oplevelse for noget \u2013 det var fantastisk!<\/p>\n<p>Men s\u00e5 begynder det mest interessante...<\/p>\n<p>Mit liv blev radikalt \u00e6ndret af et m\u00f8de i slutningen af september 2017.<\/p>\n<p>P\u00e5 det tidspunkt, for at frig\u00f8re mig lidt fra arbejdsrutinen, planlagde jeg at tale p\u00e5 en konference. Under frokosten udvekslede jeg tilf\u00e6ldigt et par ord med en kollega i k\u00f8kkenet. Han sagde kort forbi: \"Det viser sig, at du er en kendt person... folk kender dig ogs\u00e5 i andre byer\". F\u00f8rst forstod jeg ikke, hvad han talte om, men han viste mig en samtale i Telegram. Jeg genkendte straks den pige, der kom til mine opl\u00e6g, da jeg rejste til Dnipro med mine pr\u00e6sentationer. Jeg blev ekstremt glad for, at nogen huskede mig. Uden at t\u00e6nke n\u00e6rmere skrev jeg til hende og inviterede hende til Kharkiv for konferencen, hvor jeg planlagde at holde opl\u00e6g.<\/p>\n<p>Jeg var en af de f\u00f8rste, og s\u00e5 hende straks i anden r\u00e6kke. At hun var kommet, var en uventet og dejlig overraskelse for mig. Vi udvekslede et par s\u00e6tninger, og s\u00e5 begyndte mit lange maraton af sm\u00e5snak, som varede i seks timer. Den dag var en af de mest mindev\u00e6rdige i mit liv: en helt fyldt sal, 5 foredrag i tr\u00e6k og en uforglemmelig f\u00f8lelse af, at folk n\u00f8d at lytte til mig. Det var sv\u00e6rt for mig at fokusere min opm\u00e6rksomhed p\u00e5 hele salen, og mit blik blev instinktivt draget mod hende\u2026 den pige, der var kommet fra en anden by\u2026 som jeg havde kendt i to \u00e5r, men som jeg aldrig rigtig havde talt med\u2026 vi havde bare kendt til hinanden hele tiden.<\/p>\n<p>Efter konferencen var jeg tr\u00e6t og virkelig nedtrykt, men alligevel ville jeg gerne g\u00f8re noget godt for pigen \u2013 ved at invitere hende til middag sammen med folk, som vi begge kendte. For sandheden er, at jeg dengang var en frygtelig samtalepartner, konstant sarkastisk og kr\u00e6vende opm\u00e6rksomhed. Det er sv\u00e6rt at sige, hvad der skete med mig dengang. Vores g\u00e5tur i den nattebelyste by gik heller ikke godt. Jeg t\u00e6nkte, at det ville v\u00e6re bedst at f\u00f8lge pigen til hotellet og s\u00e5 tage hjem for at f\u00e5 noget s\u00f8vn. N\u00e6ste dag tilbragte jeg i sengen, uden kr\u00e6fter til at st\u00e5 op, og f\u00f8rst om aftenen begyndte jeg at t\u00e6nke over hendes ord: \"Seryozha, jeg kom for din skyld...\". Jeg \u00f8nskede oprigtigt at se hende igen, men p\u00e5 det tidspunkt var hun allerede taget af sted.<\/p>\n<p>Vi talte sammen i et par uger, indtil jeg besluttede, at jeg m\u00e5tte tage hen til hende\u2026<\/p>\n<p>Dagen f\u00f8r udgivelsen havde ingen brug for rod til klienten, s\u00e5 jeg udsk\u00f8d deployment og tog til Dnipro. Det er sv\u00e6rt at sige, hvad der foregik i mit hoved, men jeg ville gerne se hende, selv uden at vide, hvad jeg ville sige. Vi havde aftalt at m\u00f8des i parken, men jeg forvekslede episk adressen og gik 5 kilometer den forkerte vej. Da jeg til sidst inds\u00e5 min fejl, skyndte jeg mig tilbage med taxa og nogle blomster, jeg fandt i et eller andet ghettoomr\u00e5de. Og hele tiden havde hun ventet p\u00e5 mig med kakao.<\/p>\n<p>Vi sad p\u00e5 en uafsluttet teaterscene, drak kold kakao og talte om alt, hvad der kom i tankerne. Mens vi sprang fra emne til emne, fortalte hun mig om sin sv\u00e6re fortid, om immutabiliteten af strengtyper i .NET\u2026 jeg fangede hvert eneste ord fra hende. Hun var skarp og intelligent, nogle gange sjov, lidt naiv, men alt hvad hun sagde var oprigtigt. Allerede dengang forstod jeg, at jeg var blevet forelsket i hende.<\/p>\n<p>Da jeg vendte tilbage til arbejdet, fors\u00f8gte jeg i et hektisk tempo at finde et par fridage for at tage hen til hende for anden gang og indr\u00f8mme mine f\u00f8lelser. I virkeligheden gik det hele anderledes...<\/p>\n<p>Min umodenhed, dumhed, gamle komplekser og uvillighed til helt at stole p\u00e5 en anden f\u00f8rte til, at jeg s\u00e5rede en pige, der oprigtigt pr\u00f8vede at g\u00f8re indtryk p\u00e5 mig. Om morgenen inds\u00e5 jeg, hvad jeg havde gjort, og s\u00e5 snart jeg havde muligheden, tog jeg hen for personligt at bede om tilgivelse. Men hun \u00f8nskede ikke at se mig. P\u00e5 vej tilbage fors\u00f8gte jeg at overbevise mig selv om, at hun ikke var n\u00f8dvendig for mig, men var det nu ogs\u00e5 sandt\u2026<\/p>\n<p>En m\u00e5ned var jeg vred p\u00e5 mig selv\u2026 jeg gik ud over dem omkring mig\u2026 sagde nogle ting til en person, jeg oprigtigt kunne lide, som er umulige at tilgive. Det gjorde mig endnu mere syg tilpas, og til sidst endte det med et nerv\u00f8st sammenbrud og en dyb depression.<\/p>\n<p>En tidligere kollega, Dmitrij Skripka, hjalp mig med at finde vejen ud af den onde cirkel af selvbevidsthed og indre komplekser, da han tog mig med i fitnesscentret.<\/p>\n<p>Efter dette \u00e6ndrede mit liv sig betydeligt. Jeg forst\u00e5r virkelig, hvad det vil sige at v\u00e6re svag og usikker. Men da jeg begyndte at tr\u00e6ne, f\u00f8lte jeg det bedste, som fitnesscentret kan give. Det var den f\u00f8lelse af selvsikkerhed og tro p\u00e5 mine egne evner. F\u00f8lelsen af, hvordan andres opfattelse af mig \u00e6ndrer sig. Og i det \u00f8jeblik inds\u00e5 jeg, at jeg ikke ville tilbage til det liv, jeg havde f\u00f8r. Jeg besluttede at dedikere mig til det, jeg hele tiden havde udsat i mit liv.<\/p>\n<p>Men har du lagt m\u00e6rke til, at n\u00e5r en person begynder noget nyt, begynder vedkommende at proklamere sine intentioner til den omgivende verden? De fort\u00e6ller konstant med lysende \u00f8jne om deres planer, men tiden g\u00e5r, og der sker ingenting. S\u00e5danne mennesker taler konstant om fremtiden: \"jeg vil g\u00f8re\", \"jeg vil opn\u00e5\", \"jeg vil \u00e6ndre mig\", og s\u00e5dan lever de \u00e5r efter \u00e5r med deres \u00f8nsker. De er som en fingerbatteri - motivativet r\u00e6kker kun til en enkelt gnist, og s\u00e5 er det slut. Jeg var liges\u00e5dan...<\/p>\n<p>I starten planlagde jeg, at i selskab med motiverede kolleger kunne man flytte bjerge, men ofte falder forventningerne til en lys fremtid sammen med virkeligheden. Da vi begyndte at lave vores projekt, planlagde vi konstant og diskuterede i stedet for blot at tage fat og g\u00f8re. <\/p>\n<p>Ofte vil alle gerne have hurtigt... alle vil have det fra f\u00f8rste fors\u00f8g... alle er sprintere... alle begynder at l\u00f8be, men tiden g\u00e5r... en giver op... den anden giver op. N\u00e5r f\u00e6rdigg\u00f8relseslinjen ikke er i syne, vil f\u00e5 mennesker v\u00e6re villige til at arbejde h\u00e5rdt, blot fordi de skal fuldf\u00f8re distancen til slut... om morgenen, om dagen eller dybt inde om natten... n\u00e5r ingen ser, ingen roser, og ingen v\u00e6rds\u00e6tter det, du g\u00f8r.<\/p>\n<p>Del aldrig dine planer, f\u00f8r du har realiseret dem. Del kun resultaterne, uanset hvor sv\u00e6rt det er at g\u00f8re det hele alene. Ja, i s\u00e5danne tilf\u00e6lde vil den valgte vej ikke altid bringe gl\u00e6de og lyser\u00f8de enhj\u00f8rninger med regnbuer fra din bagende. Lysende motiver vil ikke altid vejlede os i arbejdet med vores prioriteter. Oftest vil livet konstant sende os derhen, hvor vi slet ikke har lyst til at g\u00e5. Men hver gang jeg \u00e5bnede Visual Studio eller gik i fitnesscenteret, huskede jeg, hvordan jeg var, og hvordan jeg kan v\u00e6re. Jeg huskede p\u00e5 m\u00f8det med den pige fra Dnipro, der fik mig til at t\u00e6nke over min livsanskuelse... jeg forstod meget.<\/p>\n<p>Normalt skal afsluttende ord v\u00e6re tilstr\u00e6kkeligt koncentrerede til at forblive i hukommelsen i lang tid. Jeg vil citere ord, som jeg engang h\u00f8rte i salen fra en klog person.<\/p>\n<blockquote><p>Tror du, at du kommer i fitnesscenteret for at k\u00e6mpe med jern? Nej... du k\u00e6mper med dig selv... med dine skabeloner... med din dovenskab... med de rammer, du selv har sat dig i. Vil du konstant fors\u00f8ge at l\u00f8se andres problemer, mens du uds\u00e6tter dine egne? Selv med sm\u00e5 skridt er det n\u00f8dvendigt at g\u00e5 m\u00e5lrettet, s\u00e5 du p\u00e5 et tidspunkt finder din lykke i livet. For lykke er, n\u00e5r principperne og reglerne, som ikke er skabt af dig, ikke h\u00e6nger over dig. Lykke er, n\u00e5r du har en udviklingsretning, og du nyder vejen allerede, og ikke kun den endelige destination. S\u00e5 m\u00e5ske er det virkelig v\u00e6rd at rejse dig og begynde at arbejde p\u00e5 dig selv?<\/p><\/blockquote>\n<p>\n\u00c5h ja, jeg glemte helt... denne artikel var oprindeligt t\u00e6nkt som en introduktion til det projekt, jeg har arbejdet p\u00e5 hele tiden. Men det skete, at fokus under skrivningen skiftede til at beskrive grunden til, at jeg overhovedet begyndte at besk\u00e6ftige mig med denne aktivitet, og hvorfor jeg ikke \u00f8nsker at opgive det fremover. Hvis jeg kort skal n\u00e6vne projektet, s\u00e5...<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/sergeysyrovatchenko\/SQLIndexManager\">SQL Index Manager<\/a><\/noindex> \u2013 er et gratis og mere funktionelt alternativ til kommercielle produkter fra Devart (99$) og RedGate (155$), og er designet til at vedligeholde indeks i SQL Server og Azure. Jeg kan ikke sige, at min applikation er bedre end skripterne fra Ola Hallengren, men gennem den mere optimerede beskrivelse af metadata og forskellige nyttige funktioner, vil dette produkt uden tvivl v\u00e6re til hj\u00e6lp i daglige opgaver for nogen.<\/p>\n<p><img decoding=\"async\" alt=\"Grave grave, SQL Server, \u00e5r med outsourcing og sit f\u00f8rste projekt\" src=\"\/wp-content\/uploads\/2019\/06\/f2e094d4b665d9ae07756fa373709a41.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDen nyeste version af applikationen kan downloades fra <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/sergeysyrovatchenko\/SQLIndexManager\/releases\">GitHub<\/a><\/noindex>. Kildekoderne ligger ogs\u00e5 der.<br \/>\nJeg vil s\u00e6tte pris p\u00e5 kritik og feedback \ud83d\ude42<br \/>\n<br \/>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/455339\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0441\u0432\u043e\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441\u0432\u043e\u0438\u043c\u0438 \u0436\u0435 \u0440\u0443\u043a\u0430\u043c\u0438\u2026 \u0441\u0432\u043e\u0435\u0439 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u0439 \u043c\u0438\u0440\u0430\u2026 \u0441\u0432\u043e\u0438\u043c \u0431\u0435\u0437\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u043c\u2026 \u0441\u0432\u043e\u0435\u0439 \u043b\u0435\u043d\u044c\u044e\u2026 \u0441\u0432\u043e\u0438\u043c\u0438 \u0441\u0442\u0440\u0430\u0445\u0430\u043c\u0438. \u0427\u0442\u043e \u043f\u043e\u0442\u043e\u043c \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0432\u0435\u0441\u044c\u043c\u0430 \u0443\u0434\u043e\u0431\u043d\u043e \u043f\u043b\u044b\u0442\u044c \u0432 \u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u043c \u043f\u043e\u0442\u043e\u043a\u0435 \u043a\u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432\u2026 \u0432\u0435\u0434\u044c \u044d\u0442\u043e \u0442\u0435\u043f\u043b\u043e \u0438 \u0432\u0435\u0441\u0435\u043b\u043e, \u0430 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u0444\u0438\u0433 \u2013 \u043f\u0440\u0438\u043d\u044e\u0445\u0430\u0435\u043c\u0441\u044f. \u041d\u043e \u043f\u043e\u0441\u043b\u0435 \u0436\u0435\u0441\u0442\u043a\u043e\u0433\u043e \u0444\u0435\u0439\u043b\u0430 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u043e\u0441\u043e\u0437\u043d\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0438\u0441\u0442\u0438\u043d\u044b \u2013 \u0432\u043c\u0435\u0441\u0442\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u043f\u0440\u0438\u0447\u0438\u043d, \u0436\u0430\u043b\u043e\u0441\u0442\u0438 \u043a [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":26587,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35440","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0435\u043c.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kopanie-mogil-sql-server-gody-autsorsa-i-svoj-pervyj-proekt\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u043e\u043f\u0430\u043d\u0438\u0435 \u043c\u043e\u0433\u0438\u043b, SQL Server, \u0433\u043e\u0434\u044b \u0430\u0443\u0442\u0441\u043e\u0440\u0441\u0430 \u0438 \u0441\u0432\u043e\u0439 \u043f\u0435\u0440\u0432\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0435\u043c.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kopanie-mogil-sql-server-gody-autsorsa-i-svoj-pervyj-proekt\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:04:21+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:04:21+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Gravning, SQL Server, \u00e5r med outsourcing og mit f\u00f8rste projekt | ProHoster","description":"Vi skaber n\u00e6sten altid.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kopanie-mogil-sql-server-gody-autsorsa-i-svoj-pervyj-proekt","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u043e\u043f\u0430\u043d\u0438\u0435 \u043c\u043e\u0433\u0438\u043b, SQL Server, \u0433\u043e\u0434\u044b \u0430\u0443\u0442\u0441\u043e\u0440\u0441\u0430 \u0438 \u0441\u0432\u043e\u0439 \u043f\u0435\u0440\u0432\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 | ProHoster","og:description":"\u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0435\u043c.","og:url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kopanie-mogil-sql-server-gody-autsorsa-i-svoj-pervyj-proekt","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:04:21+00:00","article:modified_time":"2019-10-31T19:04:21+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35440","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 23:15:59","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:03:21","updated":"2026-01-21 23:15:59","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/35440","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=35440"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/35440\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media\/26587"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=35440"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=35440"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=35440"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}