Rubber duck debugging

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET developer

Functie Als .NET developer start jij in een development team met één Senior .NET developer en één junior .NET developer. Als team zijn jullie verantwoordelijk voor het schrijven van software voor onze toonaangevende Automatiseringssystemen. Jij gaat aan de slag met de onderhoud van de kernsoftware, ondersteund de software van derden door het gebruik van onze webservices en als team zijn jullie verantwoordelijk voor het ontwikkelen van onze backend oplossingen. Wij maken op dit moment veel gebruik van .NET met ASP.NET. Komend kwartaal gaan wij wel gedeeltelijk overstappen naar .NET Core. Verder werken wij ook met SOAP, REST, JSON, HTML5, CSS3

Bekijk vacature »

Front-end Developer

Dit ga je doen Het onderhouden, ontwikkelen en testen van front-end software van diverse klant- en medewerkersapplicaties; Het ontwikkelen van maatwerk front-end oplossingen in Vue.js en participeren in een scrumteam; Mede-verantwoordelijk voor het begeleiden en coachen van drie junior front-end developers; Verantwoordelijk voor code-reviews en het opstellen van de juiste documentatie zoals userstories en API ontwerp; Participeren in diverse projecten t.b.v. optimalisatie van diverse applicaties; Het opzetten van API koppelingen met externe applicaties. Hier ga je werken Betreffende organisatie is gevestigd in de regio van Swifterbant en is al ruim 20 jaar lang bedreven in het ontwikkelen en aanbieden van

Bekijk vacature »

Senior java ontwikkelaar integratie

Functieomschrijving Voor de gemeente Rotterdam zijn wij op zoek naar een senior java ontwikkelaar integratie. Taken Binnen een zelfsturend Scrumteam voer je geheel zelfstanding je opdrachten uit en levert het eindresultaat op aan het Integratieteam. Jij voelt je net als alle teamleden verantwoordelijk voor alle aspecten, vanaf de vraag tot en met de oplevering in productie. Je bent kritisch, je helpt de klant om zijn wensen helder te krijgen, je schrijft zelfstandig clean code die van hoge kwaliteit is, met bijbehorende unit- en integratietesten, je ondersteunt zo nodig bij deployments naar productie. Het Integratieteam bouwt componenten (Endpoints) op de ESB.

Bekijk vacature »

Belastingdienst - Freelance Applicatieontwikkelaar

Startdatum: 01.06.2023 Richttarief: €65,00 - €75,00 Duur van de opdracht: 6 maanden Uren per week: 36 Taal: Nederlands vereist! Gelieve in het Nederlands te solliciteren. Hybride. Kantoordagen in Utrecht, incidenteel in Apeldoorn Functieomschrijving: De afdeling IV – Generieke Voorzieningen – Interactie Online is onderdeel van de keten Interactie. De missie van de keten is: “het faciliteren van de interactie met alle burgers, bedrijven en hun vertegenwoordigers om hen in staat te stellen aan hun fiscale verplichtingen te voldoen en aanspraak te maken op hun rechten.” De afdeling Interactie Online heeft een belangrijke bijdrage binnen deze keten. Dit door het ontwikkelen

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

.NET developer

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

T-SQL Database developer

Functie omschrijving Ben jij een ETL database specialist? Houd jij ervan om te puzzelen met Databases, Query's & Stored procedures? Zoek jij uitdaging, vrijheid en verantwoordelijkheid? Zoek dan niet verder! Wij zijn per direct op zoek naar medior en senior database developers. Je gaat werken voor een relatief klein softwarebedrijf in omgeving Tilburg. Samen met 12 collega's (allemaal techneuten), ga jij je bezig houden met het bouwen en/of onderhouden van database software. Deze software wordt internationaal ingezet voor het automatiseren van logistieke processen. Jouw werkzaamheden gaan er als volgt uit zien: Je bent in een klein team met developers, verantwoordelijk

Bekijk vacature »

Medior Java developer

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Junior .NET developer

Functie Wij hebben drie scrumteams. Het eerste team focust zich op het stukje hardware wat wij in huis doen. Zij maken als team o.a. gebruik van C++. De andere twee scrumteams zijn allebei bezig met data verwerking en maken hierbij in de backend gebruik van C# .NET / .NET Core. Het verschil tussen deze teams is dat één team de data verwerking doet voor de mobiele applicatie. Zij werken hierbij dus ook met Xamarin. Het andere team focust zich op de webapplicaties en maakt hierbij ook gebruik van ASP.NET MVC. Op basis van jouw ambities en kwaliteiten kijken wij samen

Bekijk vacature »

Software Developer

Dit ga je doen Ontwikkelen aan de software dat beschikbaar is op de substations; Ontwikkelen in C++, C, Python en JavaScript. Daarnaast op een Embedded Linux omgeving, opgebouwd met containers en DevOps; Meewerken aan cyber security (OWASP); Uitvoeren/bouwen van geautomatiseerde testen in samenwerking met de Quality Specialist; Vertalen van wensen van de klanten/business naar werkbare/duurzame oplossingen. Hier ga je werken Als Software Ontwikkelaar kom je te werken bij een organisatie gericht op de (internationale) energiemarkt, waar wordt gewerkt voor het verwerven en verwerken van realtime, high quality data. Er wordt gewerkt vanuit het hart van de substations en direct voor

Bekijk vacature »

Microsoft Acess Developer

Functieomschrijving Wat ga je doen? Heb jij ongeveer 3 jaar ervaring als Software Developer, en komen de volgende kennisgebieden jou niet vreemd voor: MS Acces, C# & SQL? Vind jij het daarnaast leuk om maatwerk software te ontwikkelen voor klanten in een bijzondere branche? Lees dan snel verder! Als developer ben jij samen met een gemotiveerd team van 10 collega’s verantwoordelijk voor het creëren van aangemeten software voor klanten. Je bent klantvriendelijk en oplossingsgericht ingesteld, omdat het essentieel is om de klanten zo goed mogelijk te helpen met hun uitdagingen. Het is mogelijk om vanuit huis je werkzaamheden uit te

Bekijk vacature »

Java Developer

Functieomschrijving Are you an experienced Java Developer who wants to be challenged? Then this is your job! As a Java Developer, you are co-responsible for building custom applications within our extensive IT landscape. Development takes place on both the back-end side (Spring/JEE). Together with the IT department, you are responsible for the daily adjustments and expansions of our IT systems. In addition, you will work in small scrum teams using the Agile methodologies. Besides the realization of our in-house systems, you are responsible for the roll-out of the application (version) as well as the operational support after going live. Team

Bekijk vacature »

Belastingdienst - Freelance Senior Cobol Applicati

Startdatum: 01.06.2023 Richttarief: €65,00 - €75,00 Duur van de opdracht: 7 maanden Uren per week: 36 Taal: Nederlands vereist! Gelieve in het Nederlands te solliciteren. Functieomschrijving: In de applicatie ETM zijn nu de inningsvoorzieningen voor ongeveer 25 aangifte- en aanslagmiddelen opgenomen. ETM is een extern aangeschafte service en het huidige contract met leverancier Oracle loopt af op 31-12-2022. Het programma uitfaseren ETM heeft als doel om vervanging te realiseren waarmee alle nu in gebruik zijnde ETM ondersteuning wordt overgenomen in nieuwe Inningsvoorzieningen om de continuïteit van de inningsprocessen te waarborgen. Eén van de inningsvoorzieningen die voor het einde van 31-12-2022

Bekijk vacature »

.NET developer

Klaar voor een nieuwe uitdaging? Welke technologieën gaan schuil achter de dagelijkse energievoorziening? Als senior .NET developer bij Kenter maak jij samen met je team het verschil, zowel voor de interne organisatie als voor eindklanten. Samen bouwen jullie aan innovatieve dienstverlening met behulp van de nieuwste technologieën en tools. Het is een functie met veel vrijheid, goede arbeidsvoorwaarden én je draagt jouw steentje bij aan de energietransitie. Klinkt dit als iets voor jou? Lees dan verder of solliciteer direct! Wat ga je doen als senior .NET developer? Als senior .NET developer bij Kenter (onderdeel van Alliander) ben je van onschatbare

Bekijk vacature »

Dynamics Ontwikkelaar

Dit ga je doen Ontwikkelen van Dynamics 365 voor de interne uitrol; Samen met de consultants sparren met klanten over de wensen en eisen; Ontwikkelen van Dynamics 365 voor verschillende grote klanten; Technische analyse en testen; Meedenken over het gebruik en de richting van Dynamics binnen de organisatie. Hier ga je werken Onze opdrachtgever, gevestigd in regio Eindhoven, levert een compleet dienstenpakket op het gebied van IT. Zij pakken verschillende (complexe) vraagstukken van grote organisaties op. De sfeer intern is gezellig en informeel. Men houdt van hard werken maar gezelligheid door middel van een borrel of gezamenlijke lunch komt er

Bekijk vacature »
- Raoul -

- Raoul -

30/08/2012 22:38:53
Quote Anchor link
Hallo allemaal,

Heeft iemand al deze manier van debuggen geprobeerd?

Lijkt me wel een grappige manier van debuggen :-))
 
PHP hulp

PHP hulp

28/11/2024 04:57:39
 
- Ariën  -
Beheerder

- Ariën -

30/08/2012 22:41:50
Quote Anchor link
Rubber eendjes horen in het bad ;-)
 
Write Down

Write Down

30/08/2012 22:42:08
Quote Anchor link
Ja; eigenlijk wel :-) Als ik echt niet vind wat er misloopt probeer ik perfect te zeggen wat doet deze regel nu, en dan een echo/print_r erbij :-) Daarmee kom je vaak ver.
 
Wouter J

Wouter J

30/08/2012 22:45:00
Quote Anchor link
Nee, met goed TDD heb je al voordat je een method schrijft door wat een method hoort te doen en wat een method doet. Dit hou je tijdens de hele bouw in de gaten, waardoor dit bijna onmogelijk is.
 
- Ariën  -
Beheerder

- Ariën -

30/08/2012 22:47:10
Quote Anchor link
Leuk dat je tegen een rubber eend staat te praten, maar moet dit nou het schaamtegevoel opvangen die je krijgt als je in jezelf zit te praten, waar het feitelijk gewoon weer op neerkomt ;-)?
 
- Raoul -

- Raoul -

30/08/2012 22:47:22
Quote Anchor link
Wouter J op 30/08/2012 22:45:00:
Nee, met goed TDD heb je al voordat je een method schrijft door wat een method hoort te doen en wat een method doet. Dit hou je tijdens de hele bouw in de gaten, waardoor dit bijna onmogelijk is.


TDD?

Toevoeging op 30/08/2012 22:49:11:

- Aar - op 30/08/2012 22:47:10:
Leuk dat je tegen een rubber eend staat te praten, maar moet dit nou het schaamtegevoel opvangen die je krijgt als je in jezelf zit te praten, waar het feitelijk gewoon weer op neerkomt ;-)?


Aar, mag ik vragen hoe jij dan debugged? :-)
Mijn manier althans is om iedere lijn te overlopen (of lijnen die bij de fout in de buurt komen) en dan kijken of het wel correct is.
Soms praat ik ook tegen mijzelf als ik dit doe, maar IK ben het maar, niemand zit erbij dus /care
 
- Ariën  -
Beheerder

- Ariën -

30/08/2012 22:51:25
Quote Anchor link
http://acronyms.thefreedictionary.com/TDD

Test Driven Development denk ik.

Toevoeging op 30/08/2012 22:52:57:

- Raoul - op 30/08/2012 22:47:22:
Aar, mag ik vragen hoe jij dan debugged? :-)
Mijn manier althans is om iedere lijn te overlopen (of lijnen die bij de fout in de buurt komen) en dan kijken of het wel correct is.
Soms praat ik ook tegen mijzelf als ik dit doe, maar IK ben het maar, niemand zit erbij dus /care

Ik heb geen schaamte, ik lul gewoon in mijzelf. In een groep (op kantoor bijv.) dan is het meer gefluister van me. Als er niemand om me heen is denk ik dus hardop.

Je praat dus in jezelf... ;-)
 
- Raoul -

- Raoul -

30/08/2012 22:55:44
Quote Anchor link
Hardop denken doe ik dan weer minder, maar goed iedereen zijn eigen manier hé :-)
Gewijzigd op 30/08/2012 22:56:38 door - Raoul -
 
Wouter J

Wouter J

30/08/2012 23:08:27
Quote Anchor link
Hoe ik debug op errors: Ik kijk eerst naar de error, deze geeft al zoveel informatie. Vervolgens kan ik bijna altijd al gericht gaan zoeken in de code. Ik ga dan eerst die regel af en dan ga ik regel voor regel, ergens binnen 5 regels bereik van de errorregel kijken of ik iets vreemds kan vinden. Nog steeds niks? Dan locate ik de error, ik comment elke regel totdat de error verdwenen is. Die regel isoleer ik dan weer om te zien of er nog steeds een error is en dan heb ik de error vaak wel gevonden, met eventueel wat Googlen erbij.

En TDD is Test Driven Development. Je schrijft eerst een test waarin je opschrijft wat je verwacht dat er gaat gebeuren:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
class CalculatorTest extends \PHPUnit_Framework_TestCase
{
    public function testSum()
    {

        $calculator = new Calculator();

        $this->assertEquals(12, $calculator->sum(10, 2));
    }
}

?>


Deze test faalt natuurlijk, dan maak je die specifieke functie en voer je de test weer uit, dan wordt het een succes. Dan ga je hem wat moeilijker maken, door bijv. $this->assertEquals(12, $calculator->sum(3, 6, 3)); te doen.

Hierdoor weet je precies welke functie voor wat dient en je hebt geen functie die onnodig is, je script immers alleen waarvoor je tests schrijft.

Dit principe hoeft natuurlijk niet alleen op OO/klassen toegepast te worden, maar ook op functies of gewone variabelen.
 
Write Down

Write Down

31/08/2012 00:12:30
Quote Anchor link
Wouter, als het effectief gaat om een error, dan is het inderdaad niet extreem moeilijk om deze op te lossen. Ik hanteer dezelfde methode als jou.

TDD binnen PHP heb ik nog nooit gedaan, in Java wel (met JUnit). Alleen, vind ik die tests soms wel erg arbeidsintensief. Want je moet in principe alle cases uitproberen.
 
Eddy E

Eddy E

31/08/2012 08:36:53
Quote Anchor link
Ik sla het bestand op, open het op de server en kijk of hij doet wat ie moet doen.
Bij errors deze uiteraard eerst oplossen (reden staat in de error).
Geeft hij onverwachte errors (of doet het wat anders dan ik dacht), dan gewoon stukje voor stukje controleren op de logica.

Zo was ik gisteren ergens een $i++; vergeten.... en maar raar vinden dat er 1 resultaat getoond werd, terwijl een print_r($result); wel gewoon alle resultaten gaf...
 
Vincent Huisman

Vincent Huisman

31/08/2012 09:46:46
Quote Anchor link
in php doe ik dit wat minder, maar bij bijvoorbeeld het scripten van games debug ik bijna alleen maar op deze manier
 
Write Down

Write Down

31/08/2012 12:17:25
Quote Anchor link
Ja, inderdaad, ik vind dit absoluut geen slechte methode. Ik bedoel dan, niet letterlijk genomen hé. Ik ga geen eendje op mijn bureau plaatsen. Maar in het algemeen, kijken wat elke regel zou moeten doen en wat hij effectief doet.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.