Sadly enough i've met and had to work with people like this. It's your classic old vb programmer, no formal education in programming at all and got into it about twenty years ago, and stopped learning anything new about ten years ago. Usually these guys have code that is little more than a bunch of cut, pasted adn hacked together code snippets. One guy i had to work with was showing me his solution one day and it was as follows, this is true, happened in 2006 and was for a commercial product.
The application needed the user to enter newline delimited data into a textbox.
in vb the default for textboxes is that they don't accept new lines, so rather than find out how to do it he figured he'd hack the following solution together out of existing bits of code he already had thus avoiding the need to actually learn anything new(this guy had an absolute fear of learning anything new)
On the text field when a user right clicks a messagebox appears informing them that notepad is about to open, they should type the newline delimited list in notepad then cut and paste it into the textfield and then close notepad without saving.
The sad thing was this guy was actually proud of it and thought it was a good solution, i almost blew his mind when i showed him the multiline property, the irony is he has 20 years more programming experience than me and i've never written anything in vb but about 15 seconds on google and i had him the answer. These sorts of guys can't tell the difference between something that works and something that works well.
Also in his list of annoying habits was printing out source code, a lot of source code, and then sitting there with a highlighter looking at it for hours?WTF!?!1 And i don't think i ever saw him find out anything for himself, he'd ALWAYS post in a forum and he'd be totally stuck until someone answered his question and posted the code to solve it, when it was the kind of question google would tell you in the first three hits, and always using stuff from ten years ago like really old cumbersome interfaces for talking to databases when there were a myriad of better, newer easier to use ones around.
One more quick example before this turns into a huge rant is i was helping him do some interaction with a db, he'd never really seen this "new fangled SQL thing" and didn't really want to but he did master the "SELECT * from <tablename>" but unfortunately never got the concept of a where clause(despite me repeatedly showing him) and Joins? Forget it. So everywhere he would select * from the table and then iterate through it in a loop with if stements to build up an array of the results he wanted. When i pulled him up on it he got really defensive and said this was the way he knew how to do it and it worked so he wouldn't change it, and even tried to argue it was better than using a where clause.
Shit and the time i had to help him with parsing and writing an xml file, shit i reckon that needs a whole thread of its own