De Devschuur Coffee Corner - Iteratie ⓬ Vorige deel Overzicht Laatste deel

Dit topic is onderdeel van een reeks. Ga naar het meest recente topic in deze reeks.

Pagina: 1 ... 38 ... 102 Laatste
Acties:
  • 585.896 views

  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Xantios schreef op donderdag 5 september 2019 @ 00:53:
Momenteel ruzie aan het maken met een project in php 5.5 wat in elkaar gehackt is door diverse studenten en externe bureaus uit lage lonen landen (politiek correct toch? :+ )

Door de ongelofelijke hoeveelheid ellende en meuk gaat dit gekke dier regelmatig op z’n gezicht, maar zit ik ook wel bijna elke dag achter mijn scherm te lachen “Oh wauw, dit is.... creatief”

Uiteraard druk bezig om t opnieuw te bouwen, maar hierdoor komen de fuck ups eigenlijk aan de lopende band naar boven.

Sommige bedrijven zijn duidelijk in 2002 blijven hangen
Doop het om in Kunst en je kunt er nog meer geld voor vragen 8)

  • Xantios
  • Registratie: Maart 2006
  • Laatst online: 17-09 15:29
gekkie schreef op donderdag 5 september 2019 @ 12:23:
[...]

Doop het om in Kunst en je kunt er nog meer geld voor vragen 8)
Met classes van 3000+ regels (meervoud, want dit gebeurt op meerdere plekken) heeft het al genoeg weg van een Rubens :+

Acties:
  • +4 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Hydra schreef op donderdag 5 september 2019 @ 11:11:
[...]


Uitzoomen en een screenshot posten ;)
Zo heb ik hier heel lang geleden al eens eerder een screenshot geplaatst van een gegenereerd DB diagram waar ik tegen aan moest praten :X

Afbeeldingslocatie: https://tweakers.net/ext/f/SBBvEcs9HKh3bm4BAjlB4LP5/full.png

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • +1 Henk 'm!

  • ElkeBxl
  • Registratie: Oktober 2014
  • Laatst online: 02-07 09:03

ElkeBxl

Tassendraagster

Woy schreef op donderdag 5 september 2019 @ 13:19:
[...]

Zo heb ik hier heel lang geleden al eens eerder een screenshot geplaatst van een gegenereerd DB diagram waar ik tegen aan moest praten :X
Heeft het kunstwerk een naam? 8)

Without nipples, boobs are pointless - 365 project - In mijn hoofd is het alle dagen Kerstmis - What type of bees make milk? Boobies! - What type of bees are scary? BoooOOOOOooobeees! - Cactusliefhebster


Acties:
  • +3 Henk 'm!

  • Merethil
  • Registratie: December 2008
  • Laatst online: 09:12
ElkeBxl schreef op donderdag 5 september 2019 @ 13:22:
[...]

Heeft het kunstwerk een naam? 8)
"Pantoffeldiertje in rust"

Afbeeldingslocatie: http://www.beesies.nl/kenmerken/images/eencellige_bouw.gif

[ Voor 16% gewijzigd door Merethil op 05-09-2019 13:24 ]


  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Het ziet er uit als kantklossen voor gevorderden.

Acties:
  • +2 Henk 'm!

  • dasfrikandel
  • Registratie: December 2011
  • Laatst online: 22-07 00:47
Visual studio heeft als ontbijt, lunch en Diner werkgeheugen op het menu staan denk ik

  • bauke1994
  • Registratie: Maart 2011
  • Laatst online: 23:29
Woy schreef op donderdag 5 september 2019 @ 13:19:
[...]

Zo heb ik hier heel lang geleden al eens eerder een screenshot geplaatst van een gegenereerd DB diagram waar ik tegen aan moest praten :X

[Afbeelding]
Zo ziet het er bij ons ook ongeveer uit, echter ontbreken de lijntjes bij ons in veel gevallen.

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09
Woy schreef op donderdag 5 september 2019 @ 13:19:
[...]

Zo heb ik hier heel lang geleden al eens eerder een screenshot geplaatst van een gegenereerd DB diagram waar ik tegen aan moest praten :X

[Afbeelding]
Lijkt een beetje op zo'n dromenvanger maar dan eentje die gemaakt is door iemand die flink aan het trippen is :D

https://niels.nu


  • Douweegbertje
  • Registratie: Mei 2008
  • Laatst online: 24-09 15:26

Douweegbertje

Wat kinderachtig.. godverdomme

-- oeps, bad image :D

[ Voor 87% gewijzigd door Douweegbertje op 06-09-2019 15:02 ]


Acties:
  • +1 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 22-09 16:37

.oisyn

Moderator Devschuur®

Demotivational Speaker

Douweegbertje schreef op donderdag 5 september 2019 @ 21:03:
Kwam laatst ook iemand tegen die een vraagje had over zijn data pipeline..
[Afbeelding]
Ja dat werkt dus niet he, plaatjes linken van Slack.

[ Voor 4% gewijzigd door .oisyn op 05-09-2019 23:17 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
Van staging naar prod en dan is de webapp down. Code is identiek. Backend ook. What de fuck? Na veel gegraaf bleek het een initialisatie volgorde issue te zijn met een builder die voor een Builder pattern gebruikt wordt en als singleton geistantieerd wordt, maar een van de gebruikers van de builder deze nog iets aanpaste.... In staging werd service A altijd eerst aangeroepen die de builder gebruikte, maar in prod service B die de builder aanpaste waardoor A op z'n bek ging.

En dat was donderdag....

Ik begin de case voor immutability steeds beter te begrijpen.

[ Voor 15% gewijzigd door armageddon_2k1 op 05-09-2019 21:19 ]

Engineering is like Tetris. Succes disappears and errors accumulate.


  • R4gnax
  • Registratie: Maart 2009
  • Laatst online: 06-09 17:51
armageddon_2k1 schreef op donderdag 5 september 2019 @ 21:14:
Van staging naar prod en dan is de webapp down. Code is identiek. Backend ook. What de fuck? Na veel gegraaf bleek het een initialisatie volgorde issue te zijn met een builder die voor een Builder pattern gebruikt wordt en als singleton geistantieerd wordt, maar een van de gebruikers van de builder deze nog iets aanpaste.... In staging werd service A altijd eerst aangeroepen die de builder gebruikte, maar in prod service B die de builder aanpaste waardoor A op z'n bek ging.

En dat was donderdag....

Ik begin de case voor immutability steeds beter te begrijpen.
Ik kwam laatst bijna precies hetzelfde geval tijdens een code review tegen en maakte er een punt van.
Kreeg als antwoord: "Ja, maar voorbeeld XYZ doet het ook zo met deze API en ik zie eerlijk gezegd niemand hier aanpassingen op maken, dus ik hou het gewoon zo."

Soms... |:(

Acties:
  • 0 Henk 'm!

  • Ed Vertijsment
  • Registratie: Juli 2014
  • Laatst online: 07:32
:Z zo, beetje gaar van een dag lang tests schrijven, maar goed was wel nodig. #achterstalligonderhoud.

Acties:
  • +1 Henk 'm!

  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Heb je de tests ook getest, of moet je daar nog tests voor schrijven ? >:)

Acties:
  • +1 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
Mijn tests falen nog wel eens en dan blijkt dat mijn testable code helemaal correct is maar m'n testcode niet....

P.s. Gaan er nog mensen naar Kotlinconf in Kopenhagen?

[ Voor 20% gewijzigd door armageddon_2k1 op 06-09-2019 18:45 ]

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • Matis
  • Registratie: Januari 2007
  • Laatst online: 09:40

Matis

Rubber Rocket

Wij hebben (unit) tests welke falen wanneer de start van de test niet in dezelfde minuut valt als de assertions

If money talks then I'm a mime
If time is money then I'm out of time


Acties:
  • 0 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
Wait what?

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Er zijn weinig dingen kwalijker dan tests die om zo’n suffe reden geregeld falen. :p Is bij mij in ieder geval direct een topturbomegaprio fix.

{signature}


Acties:
  • 0 Henk 'm!

  • Mugwump
  • Registratie: Mei 2017
  • Laatst online: 09:49
Eventual consistency in integratietesten is ook mateloos irritant. Grotendeels af te vangen door te wachten of polling toe te passen, maar het maakt je tests traag en / of niet 100% betrouwbaar.

"The question of whether a computer can think is no more interesting than the question of whether a submarine can swim" - Edsger Dijkstra


Acties:
  • 0 Henk 'm!

  • Matis
  • Registratie: Januari 2007
  • Laatst online: 09:40

Matis

Rubber Rocket

Jups, heeft te maken met onze backup manager. Wij maken een zwik files aan en weten zo, op basis van timestamp, welke er wel en niet in de backup mogen zitten. Als het genereren van de files precies over de "minuut" heen gaat, klopt het aantal bestanden niet meer omdat de backup er meer (of minder, afhankelijk van de criteria) in de zip stopt.

We kunnen de test niet aanpassen zonder onze DUT aan te moeten passen. Dat vinden we sowieso een no-go.

We zouden de test er op aan kunnen passen, maar dan missen we een aantal corner cases.

Duivels dilemma, maar we hebben een weloverwogen beslissing genomen om af en toe de test te laten falen.

If money talks then I'm a mime
If time is money then I'm out of time


Acties:
  • 0 Henk 'm!

  • Antrax
  • Registratie: April 2012
  • Laatst online: 24-09 13:13
R4gnax schreef op donderdag 5 september 2019 @ 21:23:
Ik kwam laatst bijna precies hetzelfde geval tijdens een code review tegen en maakte er een punt van.
Kreeg als antwoord: "Ja, maar voorbeeld XYZ doet het ook zo met deze API en ik zie eerlijk gezegd niemand hier aanpassingen op maken, dus ik hou het gewoon zo."
Dit.

Waarom is dit zo herkenbaar? :7

.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!


Acties:
  • 0 Henk 'm!

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
Woy schreef op donderdag 5 september 2019 @ 13:19:
[...]

Zo heb ik hier heel lang geleden al eens eerder een screenshot geplaatst van een gegenereerd DB diagram waar ik tegen aan moest praten :X

[Afbeelding]
Hmm, dat maakt mij benieuwd hoe ons databeest eruit ziet als ik zo'n plaatje genereer. Welke tool heb je daarvoor gebruikt? (Gebruiken zelf SQL Server, als ik in SSMS alle tabellen wil toevoegen crasht de tool. ))

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


Acties:
  • 0 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
Woy schreef op donderdag 5 september 2019 @ 13:19:
[...]

Zo heb ik hier heel lang geleden al eens eerder een screenshot geplaatst van een gegenereerd DB diagram waar ik tegen aan moest praten :X

[Afbeelding]
Nondeju. Mag ik vragen wat voor soort applicatie dit is?

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Grijze Vos schreef op zaterdag 7 september 2019 @ 17:27:
[...]

Hmm, dat maakt mij benieuwd hoe ons databeest eruit ziet als ik zo'n plaatje genereer. Welke tool heb je daarvoor gebruikt? (Gebruiken zelf SQL Server, als ik in SSMS alle tabellen wil toevoegen crasht de tool. ))
Destijds heb ik volgens mij gebruik gemaakt van de redgate tools. Destijds waren dat ieder geval hele fijne tools, maar het is al weer heel wat jaren geleden dat ik ze gebruikt heb.
armageddon_2k1 schreef op zaterdag 7 september 2019 @ 21:27:
[...]


Nondeju. Mag ik vragen wat voor soort applicatie dit is?
Het was een management applicatie voor melkveehouders.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
@Woy had elke koe z'n eigen tabel?

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • roemerbakker
  • Registratie: Juni 2016
  • Laatst online: 30-12-2024
Goedemiddag Tweakers!

Ik ben nieuw op het forum en dit leek mij wel een leuk topic om te beginnen, aangezien ik programmeur ben. Mijn meest recente side-projectje is tot stand gekomen doordat ik vol in de 'firing line' van de Zwanenburgbaan van Schiphol woon. Het is een Telegram botje geschreven in Go die het baangebruik van Schiphol bijhoudt doormiddel aan de hand van info van de Luchtverkeersleiding Nederland (lvnl.nl). Zo weet ik wanneer die herrie eindelijk eens ophoud. Het werkt momenteel prima, en ik zal wanneer alles uitvoerig getest is hier een post maken met de code op Github.

Vraagje, weet iemand heuul toevallig of het ook via de een of andere API mogelijk is om te achterhalen welke baan opstijgende/landende vliegtuigen (zullen gaan) gebruiken? Dat zou de functionaliteit van dit botje aardig opkrikken, aangezien ik dan bij het openen van een baan kan voorspellen wanneer deze ongeveer zal sluiten...

Mvg,
Roemer

Acties:
  • 0 Henk 'm!

  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Table partitioning d'avant la lettre ?
Nog wat nachtjes slapen en dan lijkt partitioning eindelijk aardig feature complete in postgres 12 *O*

Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Nee, het was verder op zich niet eens een erg verkeerd ontworpen database qua structuur, er was hooguit een beetje overdreven genormaliseerd.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • Mugwump
  • Registratie: Mei 2017
  • Laatst online: 09:49
gekkie schreef op zondag 8 september 2019 @ 18:50:
[...]

Table partitioning d'avant la lettre ?
Nog wat nachtjes slapen en dan lijkt partitioning eindelijk aardig feature complete in postgres 12 *O*
Denk dat een paar collega's van me daar niet op kunnen wachten. Die mochten een mooie desktop app porten naar een web app. Die desktop app deed nog aan ouderwets partitioneren. Gewoon lekker zelf tabellen aanmaken over tijdsperioden en dan parallel queryen op verschillende tabellen. Voor de gebruiker 'lekker snel' want je kunt gewoon de meest recente resultaten eerst tonen.
Dat bleek met Postgres partinioning toch niet helemaal zo te werken. :P
Nou had ik sowieso lekker gekozen voor iets als Elasticsearch aangezien het vrij platte data betreft die eigenlijk volledig doorzocht moet kunnen worden, maar goed.

"The question of whether a computer can think is no more interesting than the question of whether a submarine can swim" - Edsger Dijkstra


Acties:
  • 0 Henk 'm!

  • bwerg
  • Registratie: Januari 2009
  • Niet online

bwerg

Internettrol

armageddon_2k1 schreef op donderdag 5 september 2019 @ 21:14:
Van staging naar prod en dan is de webapp down. Code is identiek. Backend ook. What de fuck? Na veel gegraaf bleek het een initialisatie volgorde issue te zijn met een builder die voor een Builder pattern gebruikt wordt en als singleton geistantieerd wordt, maar een van de gebruikers van de builder deze nog iets aanpaste.... In staging werd service A altijd eerst aangeroepen die de builder gebruikte, maar in prod service B die de builder aanpaste waardoor A op z'n bek ging.

En dat was donderdag....

Ik begin de case voor immutability steeds beter te begrijpen.
Of de case van geen singletons gebruiken voor zaken waarvoor ze niet geschikt zijn... Singetlon builders klinken als een heel slecht idee.

Heeft geen speciale krachten en is daar erg boos over.


Acties:
  • 0 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
bwerg schreef op zondag 8 september 2019 @ 20:27:
[...]

Of de case van geen singletons gebruiken voor zaken waarvoor ze niet geschikt zijn... Singetlon builders klinken als een heel slecht idee.
Ja dat blijkt :) Het probleem ligt iets genuanceerder, maar we proberen sowieso actief singletons te vermijden in een webserver omgeving omdat het voor erg lastig te voorspellen gedrag zorgt.

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Mugwump schreef op zondag 8 september 2019 @ 19:44:
[...]
Denk dat een paar collega's van me daar niet op kunnen wachten. Die mochten een mooie desktop app porten naar een web app. Die desktop app deed nog aan ouderwets partitioneren. Gewoon lekker zelf tabellen aanmaken over tijdsperioden en dan parallel queryen op verschillende tabellen. Voor de gebruiker 'lekker snel' want je kunt gewoon de meest recente resultaten eerst tonen.
Dat bleek met Postgres partinioning toch niet helemaal zo te werken. :P
Nou had ik sowieso lekker gekozen voor iets als Elasticsearch aangezien het vrij platte data betreft die eigenlijk volledig doorzocht moet kunnen worden, maar goed.
Postgres partitioning werkt ansich in de basis al prima in 11, alleen foreign keys was nog de belangrijkste ontbrekende feature wat nu in 12 wel kan. Enige wat ik kan bedenken wat nog echt ontbreekt is een soort eenvoudige trigger om een nieuwe partition aan te maken (bijvb tijdsgebaseerd). Je hebt wel een pg_cron extension, maar echt lekker vond ik dat ook weer niet werken.
Het soms kunnen truncaten van hele partities is ook wel handig ipv moeten deleten van een substantieel deel van de data.

Oja en het indien mogelijk (en niet expliciet gewenst) niet gelijk materialiseren van CTE's is ook wel fijn voor de leesbaarheid, kunnen al te lelijke sub-sub-subqueries die er nog waren ivm performance ook in een CTE geduwd worden.

[ Voor 8% gewijzigd door gekkie op 08-09-2019 22:00 ]


Acties:
  • 0 Henk 'm!

  • Koenvh
  • Registratie: December 2011
  • Laatst online: 23-09 16:35

Koenvh

Hier tekenen: ______

Woy schreef op zondag 8 september 2019 @ 19:19:
[...]

Nee, het was verder op zich niet eens een erg verkeerd ontworpen database qua structuur, er was hooguit een beetje overdreven genormaliseerd.
Alles in de zesde normaalvorm? :+

🠕 This side up


Acties:
  • 0 Henk 'm!

  • ThomasG
  • Registratie: Juni 2006
  • Laatst online: 23-09 14:00
Koenvh schreef op maandag 9 september 2019 @ 11:33:
[...]

Alles in de zesde normaalvorm? :+
Tabellen voor alle datums e.d. voor het geval ze meer dan eens voorkomen, want niets dubbel opslaan :+

Acties:
  • 0 Henk 'm!

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
Als ik die van onze db genereer kom ik op iets soortgelijks uit. Is ook een db met 992 tabellen, dus dat wil wel.

Als ik echter de 4 meest gebruikte tabellen eruit haal (gebruikers, werkgever, werknemer en nog eentje), wordt het al een stuk overzichtelijker.

Ben nu bezig met het verder proberen af te splitsen van losse services in hun eigen schema's, dus dat wordt in de toekomst wat cleaner hoop ik. :)

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


Acties:
  • +1 Henk 'm!

  • ThomasG
  • Registratie: Juni 2006
  • Laatst online: 23-09 14:00
Grijze Vos schreef op maandag 9 september 2019 @ 12:07:
*knip*

Ben nu bezig met het verder proberen af te splitsen van losse services in hun eigen schema's, dus dat wordt in de toekomst wat cleaner hoop ik. :)
En wat makkelijker/efficiënter schaalbaar :)

Acties:
  • 0 Henk 'm!

  • Antrax
  • Registratie: April 2012
  • Laatst online: 24-09 13:13
Je kunt het beste een aparte topic in Programming openen. :Y)

.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!


Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09
Woy schreef op zondag 8 september 2019 @ 19:19:
Nee, het was verder op zich niet eens een erg verkeerd ontworpen database qua structuur, er was hooguit een beetje overdreven genormaliseerd.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
koe_table:
- id: INT
- naam: INT

naam_table:
- id: INT

letter_table:
- id: INT
- karakter: CHAR(1)

naam_letter_table:
- id: INT
- naam_id: INT
- letter_id: INT
- order: INT


Zo iets? :P

Ook belangrijk is het om goed de uiers (1 op 1) en aantal tepels per uier (1 op meer met constraints zo tussen de 1 en 8 gok ik, je weet maar nooit) te modelleren d:)b

https://niels.nu


Acties:
  • 0 Henk 'm!

  • plofkip
  • Registratie: Oktober 2002
  • Laatst online: 23-09 22:42
= spoke too soon =

[ Voor 82% gewijzigd door plofkip op 10-09-2019 11:46 ]


Acties:
  • 0 Henk 'm!

  • Lethalis
  • Registratie: April 2002
  • Niet online
Hydra schreef op dinsdag 10 september 2019 @ 11:25:
[...]


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
koe_table:
- id: INT
- naam: INT

naam_table:
- id: INT

letter_table:
- id: INT
- karakter: CHAR(1)

naam_letter_table:
- id: INT
- naam_id: INT
- letter_id: INT
- order: INT


Zo iets? :P

Ook belangrijk is het om goed de uiers (1 op 1) en aantal tepels per uier (1 op meer met constraints zo tussen de 1 en 8 gok ik, je weet maar nooit) te modelleren d:)b
Als we dan toch al bezig zijn, vergeet de privacywetgeving niet.

Koeien hebben ook behoefte aan privacy! Niet eens een UUID gebruikt om een koe te identificeren :/

Sowieso moeten gegevens over de uiers en tepels in een aparte database staan en niet direct herleidbaar zijn naar de koe.

Ask yourself if you are happy and then you cease to be.


Acties:
  • +1 Henk 'm!

  • ThomasG
  • Registratie: Juni 2006
  • Laatst online: 23-09 14:00
Lethalis schreef op dinsdag 10 september 2019 @ 12:13:
[...]

Als we dan toch al bezig zijn, vergeet de privacywetgeving niet.

Koeien hebben ook behoefte aan privacy! Niet eens een UUID gebruikt om een koe te identificeren :/

Sowieso moeten gegevens over de uiers en tepels in een aparte database staan en niet direct herleidbaar zijn naar de koe.
Gelukkig leven koeien nog niet in een politiestaat O-)
spoiler:
Afbeeldingslocatie: https://upload.wikimedia.org/wikipedia/commons/b/b2/Oeremaerke.jpg

Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09
Lethalis schreef op dinsdag 10 september 2019 @ 12:13:
Sowieso moeten gegevens over de uiers en tepels in een aparte database staan en niet direct herleidbaar zijn naar de koe.
Da's wel een punt ja. Valt volgens Domain Driven Design de tepel onder de root-aggregate Koe of is het een eigen root-aggregate? Je weet nooit of je nog eens je domain gaat verbreden om ook de boerin erin te vangen...

Ik zat overigens verkeerd met m'n koe-uier 1:1, het is 1:0-1 natuurlijk...

https://niels.nu


Acties:
  • 0 Henk 'm!

  • ThomasG
  • Registratie: Juni 2006
  • Laatst online: 23-09 14:00
Hydra schreef op dinsdag 10 september 2019 @ 13:17:
[...]

Ik zat overigens verkeerd met m'n koe-uier 1:1, het is 1:0-1 natuurlijk...
Nee, 1:0-1 is fout; 1:1 was goed. Alle koeien hebben uiers, want een koe is namelijk vrouwelijk rund. Een stier is geen koe.

Acties:
  • +1 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
Koenvh schreef op zaterdag 31 augustus 2019 @ 12:33:
@CurlyMo Rust is altijd het beste gereedschap :+
Ik gebruik nu Rust al anderhalf jaar fulltime als game developer, en ik heb iig de neiging zo ver mogelijk van C++ vandaan te blijven ontwikkeld. Wat een verademing.

Acties:
  • 0 Henk 'm!

  • Gropah
  • Registratie: December 2007
  • Niet online

Gropah

Admin Softe Goederen

Oompa-Loompa 💩

Das allemaal heel leuk, die uier database. Maar hebben jullie er al over nagedacht dat er ook bijgehouden moet worden hoeveel melk een koe produceert? Wat het vetpercentage per unit melk is? En dat de melk van een koe die recent medicijnen heeft gehad, niet in de verkoop mag? }:O

Acties:
  • +4 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09
Gropah schreef op dinsdag 10 september 2019 @ 13:47:
Das allemaal heel leuk, die uier database. Maar hebben jullie er al over nagedacht dat er ook bijgehouden moet worden hoeveel melk een koe produceert? Wat het vetpercentage per unit melk is? En dat de melk van een koe die recent medicijnen heeft gehad, niet in de verkoop mag? }:O
We developen dit agile he, we zijn de komende 6 springs met tepels bezig. Dan komt je melk aan de beurt, da's niet onderdeel van het MVP.

https://niels.nu


Acties:
  • 0 Henk 'm!

  • Gropah
  • Registratie: December 2007
  • Niet online

Gropah

Admin Softe Goederen

Oompa-Loompa 💩

Hydra schreef op dinsdag 10 september 2019 @ 13:52:
[...]


We developen dit agile he, we zijn de komende 6 springs met tepels bezig. Dan komt je melk aan de beurt, da's niet onderdeel van het MVP.
Maar jongens, wie is de product owner? Want het kan toch niet dat het verkoopbare deel van deze koeien pas over 6 sprints, misschien eens behandeld gaat worden?!?!?!

Acties:
  • +4 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09
Gropah schreef op dinsdag 10 september 2019 @ 13:55:
Maar jongens, wie is de product owner? Want het kan toch niet dat het verkoopbare deel van deze koeien pas over 6 sprints, misschien eens behandeld gaat worden?!?!?!
Berta. Ze is domein expert. De laatste keer dat ik haar naar de prio's vroeg stond ze me blanco aan te staren en bleef ze d'r lunch herkauwen.

https://niels.nu


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Hydra schreef op dinsdag 10 september 2019 @ 13:17:
[...]
Da's wel een punt ja. Valt volgens Domain Driven Design de tepel onder de root-aggregate Koe of is het een eigen root-aggregate?
Sowieso zit je al verkeerd dat Koe een root-aggregate was, dat was namelijk Dier ;)
Gropah schreef op dinsdag 10 september 2019 @ 13:47:
Das allemaal heel leuk, die uier database. Maar hebben jullie er al over nagedacht dat er ook bijgehouden moet worden hoeveel melk een koe produceert? Wat het vetpercentage per unit melk is? En dat de melk van een koe die recent medicijnen heeft gehad, niet in de verkoop mag? }:O
Die gegevens zaten inderdaad allemaal in die database ;)

[ Voor 40% gewijzigd door Woy op 10-09-2019 14:18 ]

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
PrisonerOfPain schreef op dinsdag 10 september 2019 @ 13:33:
[...]


Ik gebruik nu Rust al anderhalf jaar fulltime als game developer, en ik heb iig de neiging zo ver mogelijk van C++ vandaan te blijven ontwikkeld. Wat een verademing.
Interessant. Wat voor soort 'dingen' ontwikkel je dan? Ik weet dat jij ooit aan de Frostbite engine hebt gewerkt. Dus wat is de schaal waarop je het gebruikt (fulltime impliceert fors) en wat ben je zoal tegengekomen?

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 22-09 16:37

.oisyn

Moderator Devschuur®

Demotivational Speaker

Oh god ze zijn hier ook al besmet met het Rust virus.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • +1 Henk 'm!

  • Mugwump
  • Registratie: Mei 2017
  • Laatst online: 09:49
.oisyn schreef op dinsdag 10 september 2019 @ 14:44:
Oh god ze zijn hier ook al besmet met het Rust virus.
Het wordt tijd dat iemand Cola ontwikkelt. Dat schijnt te helpen tegen Rust.

"The question of whether a computer can think is no more interesting than the question of whether a submarine can swim" - Edsger Dijkstra


Acties:
  • 0 Henk 'm!

  • Jegorex
  • Registratie: April 2004
  • Laatst online: 03-09 23:24
Mugwump schreef op dinsdag 10 september 2019 @ 14:54:
[...]


Het wordt tijd dat iemand Cola ontwikkelt. Dat schijnt te helpen tegen Rust.
En daarna een Cola++?

Acties:
  • 0 Henk 'm!

  • Tjolk
  • Registratie: Juni 2007
  • Nu online
ObjectiveCoke FTW

Tjolk is lekker. overal en altijd.


Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09
.oisyn schreef op dinsdag 10 september 2019 @ 14:44:
Oh god ze zijn hier ook al besmet met het Rust virus.
Go is niet hip meer ;)

Heb zelf onlangs de C++ primer aangeschaft. *flex*

En alles beter dan PHP

[ Voor 8% gewijzigd door Hydra op 10-09-2019 16:19 ]

https://niels.nu


Acties:
  • +1 Henk 'm!

  • Koenvh
  • Registratie: December 2011
  • Laatst online: 23-09 16:35

Koenvh

Hier tekenen: ______

.oisyn schreef op dinsdag 10 september 2019 @ 14:44:
Oh god ze zijn hier ook al besmet met het Rust virus.
Mijn fiets in ieder geval wel. Begonnen met Metal, maar toen toch maar overgegaan op Rust :P

🠕 This side up


Acties:
  • +3 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
In Rust heb je de hele koe discussie niet nodig van hierboven je hebt gewoon een type daarvoor:
Cow

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • Mugwump
  • Registratie: Mei 2017
  • Laatst online: 09:49
armageddon_2k1 schreef op dinsdag 10 september 2019 @ 17:44:
In Rust heb je de hele koe discussie niet nodig van hierboven je hebt gewoon een type daarvoor:
Cow
Je kunt nog een koe maken van plakjes ook zo te lezen, omgekeerde wereld.

"The question of whether a computer can think is no more interesting than the question of whether a submarine can swim" - Edsger Dijkstra


Acties:
  • +1 Henk 'm!

  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Mugwump schreef op dinsdag 10 september 2019 @ 14:54:
[...]
Het wordt tijd dat iemand Cola ontwikkelt. Dat schijnt te helpen tegen Rust.
Zou het inderdaad maar niet inchecken met git-cola :o

Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
armageddon_2k1 schreef op dinsdag 10 september 2019 @ 14:18:
[...]


Interessant. Wat voor soort 'dingen' ontwikkel je dan? Ik weet dat jij ooit aan de Frostbite engine hebt gewerkt. Dus wat is de schaal waarop je het gebruikt (fulltime impliceert fors) en wat ben je zoal tegengekomen?
Vooral als research project word het gebruikt, we hebben er van alles mee proberen uit te zoeken maar hoofdzakelijk als graphics framework om sneller te kunnen itereren dan in de grote engine. Het is relatief snel om wat dingen aan elkaar te maken, uit te testen / te bewijzen en dan over te zetten naar Frostbite. We hebben naast graphics ook entity component systems en asset build systemen (als micro services) ontwikkeld.

  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Urghh je kunt python irritant vinden met z'n geforceerde whitespace meuk, maar ik krijg nu toch behoorlijk de schijt van golang wat forceert dat je niets "unused" kunt laten. Ik wil even snel een paar dingen uitcommenten, maar nee .. ga maar lekker alles lang en comment ALLES uit wat er ook maar remote mee te maken heeft.
So much voor de "introduction to go ...." wat voelt als "go away ...".

  • ThomasG
  • Registratie: Juni 2006
  • Laatst online: 23-09 14:00
gekkie schreef op woensdag 11 september 2019 @ 14:50:
Urghh je kunt python irritant vinden met z'n geforceerde whitespace meuk, maar ik krijg nu toch behoorlijk de schijt van golang wat forceert dat je niets "unused" kunt laten. Ik wil even snel een paar dingen uitcommenten, maar nee .. ga maar lekker alles lang en comment ALLES uit wat er ook maar remote mee te maken heeft.
So much voor de "introduction to go ...." wat voelt als "go away ...".
blank idenfitier (_) _O-

  • Gropah
  • Registratie: December 2007
  • Niet online

Gropah

Admin Softe Goederen

Oompa-Loompa 💩

Of een propere IDE gebruiken die herkent dat iets niet meer gebruikt om hem vervolgens automagisch uit de import lijst te halen (en weer toe te voegen wanneer je de regels uncomment)

  • ThomasG
  • Registratie: Juni 2006
  • Laatst online: 23-09 14:00
Gropah schreef op woensdag 11 september 2019 @ 14:56:
[...]


Of een propere IDE gebruiken die herkent dat iets niet meer gebruikt om hem vervolgens automagisch uit de import lijst te halen (en weer toe te voegen wanneer je de regels uncomment)
Dat hangt er maar net vanaf. Soms wil je gewoon even een regel uit commentariëren, bijvoorbeeld tijdens het debuggen. Dan is het niet altijd wenselijk als het vervolgens de rest ook gaat aanpassen, omdat het anders unused is.

Acties:
  • +1 Henk 'm!

  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Gropah schreef op woensdag 11 september 2019 @ 14:56:
[...]


Of een propere IDE gebruiken die herkent dat iets niet meer gebruikt om hem vervolgens automagisch uit de import lijst te halen (en weer toe te voegen wanneer je de regels uncomment)
Mjah maar even 1 regel outcommenten zit er dan weer niet in .. want ja die variabele een stuk daar boven is nu useless .. en zo cascade dat lekker door. Tot je inderdaad bij je niet gebruikte imports uit komt.
Mooi getest .. kun je daarna alles weer aanmikken.

Ohhhhh i'm so grumpy dat zelfs sommige cat-pics dat niet kunnen evenaren.

  • bwerg
  • Registratie: Januari 2009
  • Niet online

bwerg

Internettrol

Ja, daar zijn dus warnings voor uitgevonden... Iets met wielen uitvinden.

Heeft geen speciale krachten en is daar erg boos over.


Acties:
  • +1 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 22-09 16:37

.oisyn

Moderator Devschuur®

Demotivational Speaker

bwerg schreef op woensdag 11 september 2019 @ 15:41:
Ja, daar zijn dus warnings voor uitgevonden... Iets met wielen uitvinden.
Some have asked for a compiler option to turn those checks off or at least reduce them to warnings. Such an option has not been added, though, because compiler options should not affect the semantics of the language and because the Go compiler does not report warnings, only errors that prevent compilation.

There are two reasons for having no warnings. First, if it's worth complaining about, it's worth fixing in the code. (And if it's not worth fixing, it's not worth mentioning.) Second, having the compiler generate warnings encourages the implementation to warn about weak cases that can make compilation noisy, masking real errors that should be fixed.
Waanzin.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • bwerg
  • Registratie: Januari 2009
  • Niet online

bwerg

Internettrol

Pfff, mooi theoretisch onzinnig geneuzel.

Niks tegen theoretisch geneuzel, hoor. Ik ben een groot liefhebber van theoretisch geneuzel. Maar dan wel zinnig, graag.
Go schreef:
The presence of an unused variable may indicate a bug, while unused imports just slow down compilation, an effect that can become substantial as a program accumulates code and programmers over time. For these reasons, Go refuses to compile programs with unused variables or imports, trading short-term convenience for long-term build speed and program clarity.
En daarvoor heb je dus -Werror.

[ Voor 42% gewijzigd door bwerg op 11-09-2019 16:32 ]

Heeft geen speciale krachten en is daar erg boos over.


  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Valt me nog mee dat ze nog niet beredeneerd hebben dat een "rm -rf /" nuttig zou zijn .. voldoet in iedergeval ook aan de "prevents further compilation" :+.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 22-09 16:37

.oisyn

Moderator Devschuur®

Demotivational Speaker

Of gewoon golint, waar dit soort checks gewoon in thuishoren |:(

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • kenneth
  • Registratie: September 2001
  • Niet online

kenneth

achter de duinen

Rob fucking Pike die weet wat goed voor je is |:(

Look, runners deal in discomfort. After you get past a certain point, that’s all there really is. There is no finesse here.


  • Koenvh
  • Registratie: December 2011
  • Laatst online: 23-09 16:35

Koenvh

Hier tekenen: ______

Een error zou echt moeten betekenen dat er iets staat wat echt niet compileert, niet iets wat niet zo mooi is, daar gooi je maar een warning voor. Maar mijn filosofie en de belerende filosofie van Go staan sowieso ver uit elkaar. Ik wil gewoon een hakmes waar ik ook m'n eigen benen mee af kan hakken, niet een plastic mesje waar je nauwelijks een boterham mee doormidden krijgt.

[ Voor 24% gewijzigd door Koenvh op 11-09-2019 18:01 ]

🠕 This side up


  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
Ben ik even blij dat ik die taal compleet links heb laten liggen...

  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Naja wel een mea culpa .. op zich staat het gedrag netjes in de documentatie op why-golang-sucks :+
So I should have known ...

  • Koenvh
  • Registratie: December 2011
  • Laatst online: 23-09 16:35

Koenvh

Hier tekenen: ______

Overigens kun je wel smerige dingen doen in Go als je echt wilt :P
https://codegolf.stackexc...uage-unusable/95061#95061

🠕 This side up


  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
De workaround is dus gewoon in een if false {} wrappen ... zolang het maar geused wordt in dead code is alles pico bello in orde.

Acties:
  • +1 Henk 'm!

  • ThomasG
  • Registratie: Juni 2006
  • Laatst online: 23-09 14:00
gekkie schreef op woensdag 11 september 2019 @ 19:24:
De workaround is dus gewoon in een if false {} wrappen ... zolang het maar geused wordt in dead code is alles pico bello in orde.
Beetje raar van go dat ze wel een error hebben op unused variables, maar niet op dead code.. 8)7

  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 08:22

RayNbow

Kirika <3

inb4 dead code = error? :p

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


Acties:
  • +1 Henk 'm!

  • Kalentum
  • Registratie: Juni 2004
  • Laatst online: 10:32

  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Op zich wel mooi dat je dan in een hoop bedrijven middels prachtige proza een volledig functionele rant kunt maken .. :9B

  • Douweegbertje
  • Registratie: Mei 2008
  • Laatst online: 24-09 15:26

Douweegbertje

Wat kinderachtig.. godverdomme

Ik zit weer te kloten met data zeg. Een JSON dataset die soms velden wel/niet heeft en velden die soms null zijn. Ik wil dat weer in een in strictere taal/format hebben (avro). Gaat het natuurlijk weer helemaal mis met die nullable fields. Met avro kan ik dan nog wel een soort union type map doen, alleen dan moet ik als eerste entry een null "datatype" meegeven en bijv. een string als tweede. Als mijn data geen null is, dan expliciet in de json iets doen als "foo" : { "string" : "bar" }. Onder de noemer dat hij anders niet weet dat het een string is.

Ik snap gewoon niet dat een "leeg" c.q. null veld niet iets is wat "logisch" zou zijn. Er zijn toch prima use-cases te beschrijven waarbij een result bepaalde data niet heeft. Dat het dan gewoon lekker null is. Of ben ik nu fout aan het redeneren.

  • bwerg
  • Registratie: Januari 2009
  • Niet online

bwerg

Internettrol

Er zijn ook prima use-cases te bedenken waarin iemands auto stuk is en hij dus vandaag met de fiets gaat maar dan is het nog niet handig om een fiets in te vullen in een veld waar je een auto verwacht. :P

Heeft geen speciale krachten en is daar erg boos over.


  • Matis
  • Registratie: Januari 2007
  • Laatst online: 09:40

Matis

Rubber Rocket

Pff, ik ben vandaag weer met een stukje monnikenwerk bezig.

We hebben de afgelopen weken gewerkt aan een nieuwe importer om productfeeds van een nieuwe supplier aan te sluiten. Op dit moment is alles qua ontwikkeling klaar en zijn we in de functionele / integratie-test gekomen.

Dit houdt in dat we alle files met producten van de supplier gaan inlezen. In totaal 175 files met een slordige 200.000 producten.

Nu moet ik iedere keer handmatig het commando starten om een nieuwe file in te lezen. Mocht de importer ergens crashen dan moet ik de foutmelding opschrijven en de bijbehorende filename welke stuk ging.
Daarna kan ik bovenstaande herhalen totdat all 175 files zijn afgewerkt. Gelukkig gaat de importer wel automatisch verder wanneer er een bestand volledig succesvol is verwerkt, maar toch. Op dit moment al 37 foutmeldingen :/ Nog 60 files te gaan...


Edit; ik heb het overwogen om te scripten, maar dat zou me uiteindelijk meer tijd kosten (denk ik) dan op deze manier. Hopelijk hoeven we maar 1 iteratie te doen en kunnen we aan het einde van de dag alle bugs inventariseren, zo snel mogelijk fixen en hopelijk zijn dan alle kinken uit de kabel.

[ Voor 14% gewijzigd door Matis op 12-09-2019 11:56 ]

If money talks then I'm a mime
If time is money then I'm out of time


  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Matis schreef op donderdag 12 september 2019 @ 11:55:
Edit; ik heb het overwogen om te scripten, maar dat zou me uiteindelijk meer tijd kosten (denk ik) dan op deze manier. Hopelijk hoeven we maar 1 iteratie te doen en kunnen we aan het einde van de dag alle bugs inventariseren, zo snel mogelijk fixen en hopelijk zijn dan alle kinken uit de kabel.
Gaan jullie dat in productie ook elke keer handmatig doen? ;)

  • Matis
  • Registratie: Januari 2007
  • Laatst online: 09:40

Matis

Rubber Rocket

Olaf van der Spek schreef op donderdag 12 september 2019 @ 12:05:
Gaan jullie dat in productie ook elke keer handmatig doen? ;)
Ja, feitelijk gebeurt dat op deze manier ook al op productie.

Wanneer er een importer stuk loopt, wordt er via Slack een berichtje gestuurd. Hierin wordt dan aangegeven welke importer voor welke supplier vast is gelopen. Dan kunnen we, desgewenst, het probleembestand lokaal downloaden en dan lokaal testen / fixen, valideren, deployen en het bestand opnieuw aanbieden voor de importer.

Maar door dit nu de eerste keren handmatig te doen op mijn lokale omgeving, schiften we al heel veel problemen op ACC en daarna PROD.

If money talks then I'm a mime
If time is money then I'm out of time


Acties:
  • +1 Henk 'm!

  • dovo
  • Registratie: November 2015
  • Laatst online: 07-08 12:23
Op het werk ben ik een parel van een vendor tegengekomen. Weer zo een casus van _extreme agile containerized cloud native digital application_ buzzword facade, terwijl de achterkant een complete puinhoop is.

Zo goed als alles waar cloud native voor staat doen ze volledig het tegenovergestelde. Niet echt een idee waarom, maar ze pakken heel de tijd uit dat hun python2.6 code in docker steken alles heeft opgelost en dat het de geweldigste architecturele vooruitgang is. Echter draaien alle dockertjes met host networking, gebruiken ze vaak 1000+ lijnen entypoint bash scripts en installeren ze een kernelmodule vanuit docker - want docker is het ultieme product. Resultaat: applicatie is super bagger, debugging is een hel, ligt er constant uit ...

Bugs oplossen duurt 3-6 maanden ( tot zover extreme agile ), en vereist vaak escalaties tot departement manager zodat vendor ons serieus neemt.

Ik krijg het echt van al die mensen die cloud native schreeuwen van de daken, maar niet doorhebben dat hun python2 code migreren en tal van deze "los dat eerst op" zaken belangrijker zijn. Heel die zooi draait op 3 * dual xeon gold met 360ish Gb ram etc. en wanneer ik meer dan twee api calls per seconde doe flapt het systeem eruit, durft de vendor nog te zeggen dat ik zo snel hun api niet mag aanspreken, want als je de uberslome gui gebruikt heb je deze problemen niet.

Momenteel in Go een library aan het schrijven die hun onstabiele API wrapped. Eens zien wat dat zal opleveren, en of dit het product bruikbaar kan maken.

  • Mugwump
  • Registratie: Mei 2017
  • Laatst online: 09:49
Gelukkig is Python 2 eind dit jaar EOL. Niet dat men zich daar wat van aan zal trekken. :P

"The question of whether a computer can think is no more interesting than the question of whether a submarine can swim" - Edsger Dijkstra


Acties:
  • +1 Henk 'm!

  • Sandor_Clegane
  • Registratie: Januari 2012
  • Niet online

Sandor_Clegane

Fancy plans and pants to match

dovo schreef op donderdag 12 september 2019 @ 16:32:
Op het werk ben ik een parel van een vendor tegengekomen. Weer zo een casus van _extreme agile containerized cloud native digital application_ buzzword facade, terwijl de achterkant een complete puinhoop is.

Zo goed als alles waar cloud native voor staat doen ze volledig het tegenovergestelde. Niet echt een idee waarom, maar ze pakken heel de tijd uit dat hun python2.6 code in docker steken alles heeft opgelost en dat het de geweldigste architecturele vooruitgang is. Echter draaien alle dockertjes met host networking, gebruiken ze vaak 1000+ lijnen entypoint bash scripts en installeren ze een kernelmodule vanuit docker - want docker is het ultieme product. Resultaat: applicatie is super bagger, debugging is een hel, ligt er constant uit ...

Bugs oplossen duurt 3-6 maanden ( tot zover extreme agile ), en vereist vaak escalaties tot departement manager zodat vendor ons serieus neemt.

Ik krijg het echt van al die mensen die cloud native schreeuwen van de daken, maar niet doorhebben dat hun python2 code migreren en tal van deze "los dat eerst op" zaken belangrijker zijn. Heel die zooi draait op 3 * dual xeon gold met 360ish Gb ram etc. en wanneer ik meer dan twee api calls per seconde doe flapt het systeem eruit, durft de vendor nog te zeggen dat ik zo snel hun api niet mag aanspreken, want als je de uberslome gui gebruikt heb je deze problemen niet.

Momenteel in Go een library aan het schrijven die hun onstabiele API wrapped. Eens zien wat dat zal opleveren, en of dit het product bruikbaar kan maken.
In dit geval slaat Agile op de klant. :)

Less alienation, more cooperation.


  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Mugwump schreef op donderdag 12 september 2019 @ 18:32:
Gelukkig is Python 2 eind dit jaar EOL. Niet dat men zich daar wat van aan zal trekken. :P
Nah het beestje is gewrapped in go en contained in docker 8).
Als je :)B bent kun je er altijd nog 10 wietplantjes mee bewaken :+

Acties:
  • +1 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
PHP internals is weer smullen vandaag. :P

Het stemmen op RFC https://wiki.php.net/rfc/engine_warnings is net begonnen. En oudgediende Zeev moet in dictator-toon melden dat dit niet met een RFC kan. :'D https://externals.io/message/106963

Zorg dan gewoon met argumenten dat 1/3e tegen is. :D

{signature}


  • dovo
  • Registratie: November 2015
  • Laatst online: 07-08 12:23
Mugwump schreef op donderdag 12 september 2019 @ 18:32:
Gelukkig is Python 2 eind dit jaar EOL. Niet dat men zich daar wat van aan zal trekken. :P
Er zal geen migratie naar python3 gebeuren is hun antwoord, ze beweren naar Go te migreren, maar hun experimentele repo waar dit in zit is een boeltje, en de main dev die commits deed is een half jaar geleden naar google vertrokken. Omdat ze gebaseerd zijn op zo een van die kei vage enterprise XML schema architecturen hebben ze ergens in 2012 generateDS.py geforked en nooit geupdatet naar de python3 compatible versie. Hun hele architectuur is dus zo brak tot wortel en een rewrite is de enige oplossing. Maar dat brengt natuurlijk geen bonus in het laatje bij management, dus blijven ze maar alle problemen met hun product naar ons - de kant - doorschuiven. Ik denk dat zij ervan uitgaan dat zolang ze centos7 blijven gebruiken ze nog 5 jaar safe zijn met python2.

Ze gebruiken bijvoorbeeld ook Cassandra om alle data bij te houden, niet omdat Cassandra de juiste database was, de data vereist een ACID compliant database. Ik vermoed dat ze voor Cassandra kozen omdat een of andere zelfverklaarde expert daar een veto heeft getrokken. Als je dus queries op de API loslaat krijg je meestal errors omdat er concurrency/race conditions ontstaan. Door de loadbalancer te skippen, en een van de backend servers direct aan te spreken, kan je alvast een lagere error rate krijgen.

Ik snap gewoon niet hoe dit allemaal kan, in mijn eerste jaar bachelor heb ik professionelere php5 projecten gezien door klasgenoten en die gebruikten nergens input sanitation.

Leuk om deze topic te lezen. Ik dacht dat ik de enige was die niet geobsedeerd is van Dockerize everything en dat Docker vreselijke en obsolete software architecturen maar zal oplossen.

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
@dovo Ik snap echt niet hoe je conclusie kan zijn dat Docker het probleem is hier?

Je noemt een lijst met enorme faals op van de externe partij en dan gaat je laatste alinea over dat je niet onder de indruk bent van Docker.

Right tools for the job enzo en shit in equals shit out. Docker en Kubernetes werkt bij ons geniaal.

[ Voor 59% gewijzigd door armageddon_2k1 op 12-09-2019 21:35 ]

Engineering is like Tetris. Succes disappears and errors accumulate.


  • dovo
  • Registratie: November 2015
  • Laatst online: 07-08 12:23
armageddon_2k1 schreef op donderdag 12 september 2019 @ 21:33:
@dovo Ik snap echt niet hoe je conclusie kan zijn dat Docker het probleem is hier?
Docker is niet het probleem, het probleem is dat mensen denken dat Docker de oplossing voor alle andere problemen is door enkel Docker toe te voegen aan het probleem.

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
Prima, maar dat geldt voor letterlijke elke techniek die je tegen die shitpile die jij zojuist beschreven hebt gooit.

Engineering is like Tetris. Succes disappears and errors accumulate.


  • Alex)
  • Registratie: Juni 2003
  • Laatst online: 21-08 11:20
Het enige wat Docker hier 'toevoegt' is dat je een image deployt (of een docker-compose.yml) en dat je niet direct ziet wat er allemaal achter de schermen gebeurt om het überhaupt werkend te krijgen.

Als je een zooitje .py-files had gekregen en een installatiehandleiding van 5 kantjes had je waarschijnlijk gezegd "dit is te complex". Nu heb je dat niet. :P

We are shaping the future


  • gekkie
  • Registratie: April 2000
  • Laatst online: 24-09 21:06
Voutloos schreef op donderdag 12 september 2019 @ 20:54:
PHP internals is weer smullen vandaag. :P

Het stemmen op RFC https://wiki.php.net/rfc/engine_warnings is net begonnen. En oudgediende Zeev moet in dictator-toon melden dat dit niet met een RFC kan. :'D https://externals.io/message/106963

Zorg dan gewoon met argumenten dat 1/3e tegen is. :D
Een not so benevolent dictator for life :Y).

Aan de andere kant een potentiele python2/3 in the making. Hoeft op zich niet verkeerd te zijn, maar als je het doet is het wel verstandig om te kijken of je dan niet in één keer een aantal van je zwakheden kunt opruimen ipv maar eentje.

  • dovo
  • Registratie: November 2015
  • Laatst online: 07-08 12:23
armageddon_2k1 schreef op donderdag 12 september 2019 @ 21:33:
Je noemt een lijst met enorme faals op van de externe partij en dan gaat je laatste alinea over dat je niet onder de indruk bent van Docker.

Right tools for the job enzo en shit in equals shit out. Docker en Kubernetes werkt bij ons geniaal.
Van Docker zelf ben ik tamelijk tevreden. De hele doe alles in docker hype echter niet. Mijn wordpress blog staat gewoon op een shared hosting server, dat werkt prima en ik zie ook geen reden om dat in Docker of Kubernetes te steken. Mijn plex op mijn nas thuis draait tevens ook gewoon als binary en niet in Docker. Voor mij valt dit onder the right tool for the job.

Wanneer je echter een product/software/saas ontwikkeld dat aan een CI/CD pipeline hangt, en changes binnen de twee dagen naar productie wil kunnen sturen in een consistente manier of snel moet kunnen scalen, dan is kubernetes interessant. Kubernetes heeft nog wel serieuze tekortkomingen zoals zeer gelimiteerde ipv6 support, maar door middel van een CDN of loadbalancer als in GCP kan je dat vandaag opvangen.

Zelf gebruiken wij docker runners gekoppeld aan gitlab voor test automation en building, en dat werkt fantastisch. Docker draait hier gewoon ipv6 dual stack zonder problemen (1 lijn code in router, 2 in /etc/docker/daemon.json).

Acties:
  • +1 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
Maar echt niemand forceert je toch om je WP site in Docker te hangen? Heeft dat gesprek überhaupt plaatsgevonden?

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • kenneth
  • Registratie: September 2001
  • Niet online

kenneth

achter de duinen

armageddon_2k1 schreef op donderdag 12 september 2019 @ 21:33:
@dovo Ik snap echt niet hoe je conclusie kan zijn dat Docker het probleem is hier?
Ik snap niet hoe jouw conclusie kan zijn dat zijn conclusie is dat Docker het probleem is :p

Toegegeven, het is niet de mooiste zin die in ons taalgebied is geproduceerd maar hij bekritiseert Docker niet, alleen hoe Docker wordt gebruikt om brakke producten mee op te kalefateren (wat, verbazingwekkend, niet werkt).

Look, runners deal in discomfort. After you get past a certain point, that’s all there really is. There is no finesse here.

Pagina: 1 ... 38 ... 102 Laatste

Dit topic is gesloten.

Let op:
Dit topic is niet de plaats om te lopen helpdesken. De Coffee Corner is primair bedoeld als uitlaatklep voor iedereen in de Devschuur® en niet als vraagbaak.