My Exasperating Experience Debugging A Newbie Dev's Code
I told myself I wasn't going to talk about this issue, however, 48 hours after it's occurrence I now find it amusing rather than exasperating. Seeing I set up this blog to help absolute beginners I feel it's important to share my experience. Two days ago, a software engineering enthusiast requested my help with HTML code, I thought I'd have it done quickly because I consider HTML to be a no-brainer for me, I didn't bother asking for the code snippet. I told her to describe the problem and I'll recommend a solution (in hindsight that was a big mistake because newbies make the most basic mistakes). Software engineering really has a way of kicking you when you forget due process.
INTELLISENSE CAN SOMETIMES BE CLUE TO DEBUGGING
Fours hours later, I had suggested all my extensions, run through every option in my head and the code still wasn't running. Typically, when coding, we have code suggestions (which we call intellisense) that help guide developers, just think of it as a prediction keyboard. Developers know enough to be wary when there is no intellisense. It means you're doing everything wrong or what you're doing isn't understood by the computer, either way, developers know that the absence of intellisense is bad news.
BASIC MISTAKES ARE SOMETIMES THE MOST EXASPERATING
It turns out nothing worked because the software engineering enthusiast forgot to name the file properly, instead of naming the HTML file "index.html", she named it "index.", it was exasperating for me because I previously asked if the file was named properly and she told me it was. A lot of software engineering enthusiast have issues with coming to terms with the strictness of the machine when it comes to code. There's no room for mistakes as even the littlest mistakes will prevent the programme from running.
UNDERSTANDING HOW CODE EDITORS WORK
The way code editors (think of it as Microsoft Word for developers) work is that it looks for the suffix in a file in order to identify the programming language that the code within the file is written in; ".html" tells the code editor that you intend to write HTML code in the file, ".cs" tells the code editor that you want to write C# code in the file, the code editor uses this knowledge to render intellisense that is specific to that programming language. If the suffix is absent the code editor assumes you're not writing any code and there will be no intellisense. If you write code that isn't related to the programming language associated with the suffix declared in the name of the file, there will be no intellisense for the divergent code.