Ik heb me ingeschreven voor het intensieve computer programmeer bootcamp, de Maker Academy, volgende maand. Om een voorsprong te krijgen dacht ik dat ik het boek Learn Ruby the Hard Way van Zed Shaw zou doornemen.
Oefening 25 lijkt mijn probleemoplossend vermogen te testen, dus ik dacht dat ik een bericht zou schrijven waarin ik documenteer hoe ik mijn foutmeldingen heb opgelost. Deze post is gericht op nieuwelingen in de programmeerwereld, omdat ik me kan voorstellen dat het zeer fundamentele dingen zijn die ik fout doe.
Dit was mijn eerste poging om het script van oefening 25 in mijn editor te schrijven:
Toen ik dit in de terminal uitvoerde kreeg ik de volgende foutmelding:
ex25.rb:2:in `<main>': undefined local variable or method `ex25' for main:Object (NameError)
Het eerste wat ik deed was de foutmelding googelen.
De foutmelding oplossen met Google
Ik vond een antwoord op Stackoverflow.
Het vertelde me dat ik per ongeluk Alt + Space typte op mijn Mac, waardoor er een niet-afbrekende spatie ontstond. Dit wordt door Ruby beschouwd als onderdeel van een variabelenaam in tegenstelling tot de witruimte die het zou moeten zijn.
Het gaf twee oplossingen voor dit probleem:
1. 1. Alt + Space omzetten naar spatie om deze typfout te voorkomen.
2. Onzichtbare tekens markeren in de tekstverwerker om de typfouten onmiddellijk te herkennen.
De voorkeur leek uit te gaan naar oplossing 2, dus ik dacht dat ik het eerst op deze manier zou proberen. Het leek me het eenvoudigst en snelst op te lossen. Ik wilde het off-the-shelf probleem van mijn gebroken code uitsluiten.
Highlight onzichtbare tekens in mijn tekst editor – Deel 1
Naar aanleiding van mijn googlede ik hoe ik onzichtbare tekens kan highlighten met mijn tekst editor, Sublime Text editor 2.
Het blijkt dat dit een standaard functie van mijn tekst editor zou moeten zijn.
Telkens als ik tekst markeer, zou ik kleine witte puntjes moeten kunnen zien zoals in de afbeelding hieronder (kijk goed of ze er zijn in de lege ruimtes):
Dus ik markeerde de tekst en er gebeurde niets:
Ik heb besloten om het probleem van de ‘niet-brekende’ spaties voorlopig hier te parkeren en te proberen mijn foutmelding op een eenvoudiger manier op te lossen. Ik ben relatief nieuw met coderen, dus de volgende oplossing voor het vinden van ‘niet-afbrekende’ spaties; het aanpassen van de voorkeuren of standaard toetstoewijzingen in Sublime Text editor, leek niet de makkelijkste manier om mijn probleem op te lossen.
Googlen naar de oefening zelf
Het volgende wat ik deed was googlen op ‘Ex25 learn Ruby the hard way’ om te zien of iemand anders met dezelfde problemen kampte als ik. Ik vond een blog met de oefening uitgetypt. Ik vergeleek onze bestanden woord voor woord op mijn scherm.
Ik kon geen verschil zien tussen onze bestanden (wat aangeeft dat de verborgen niet-brekende spaties misschien de oorzaak zijn van mijn fout).
Hoewel ik het idee moest uitsluiten dat er ergens een typefout was die ik niet kon zien, dus typte ik het hele bestand opnieuw uit. Ik dacht dat dit een snellere manier was om tot de oplossing te komen.
Mijn tweede bestand werkte toen ik het in de terminal uitvoerde. Geen foutmelding.