I wouldn’t have picked Delphi, personally, as a language to take up. I like, generally, working with languages that use C style syntax, and every time I jump into Visual Basic, which is fairly comparable with Delphi from what I gather, the IDE and GUI Builders are lovely, but the syntax is nutty and harder to remember. I don’t know other Delphi programmers, so I don’t have friends or co-workers to whom I can ask questions about the language. And then the kicker, learning Delphi is not likely to open doors career-wise, you just don’t see hordes of job listings looking for Pascal/Delphi programmers these days. Getting additional practice or depth in a language that I’d be likely to use professionally would just seem so much more “practical”.
But in a way, working with this code written in Delphi is also very much like the real-world. I’m thrust into a code-base I didn’t write, in a language I’m not an expert at, with a specific goal in mind that requires knowledge I don’t already have. Doing the leg-work of research to invent a solution to a problem, with external constraints, is very much a real-world scenario. It takes the same sort of deciphering other people’s code, coming up with a theory about where you need to modify the code to create the change you need to make, doing research to find all the bits and pieces of knowledge you don’t already have and synthesizing them into a solution unique to the problem at hand.
In the end it’s satisfying though. You put the pieces together and see it come closer and closer to a working solution. And then there it is, solved. And I have to say, as I work with Delphi, and overcome the humps of orienting myself with the language and IDE (like why there’s no toolbar button for viewing the call-stack on the debug toolbar) and so on, it’s not a terrible language to work with. I really enjoy this sort of programming, it’s a night and day contrast compared to writing PHP code, even though I’m primarily self-taught in both areas. I enjoy it, even though there’s certainly things that could be documented better that seem basic but not obvious.
Cool blog!
If I gather this correctly you are using Delphi 7? In that version there is indeed by default no button for the call stack on the tool bar, but you can easily add it yourself:
* right click on the tool bar and select “Customize”
* switch to the “Comands” tab
* select the “Debug” category
* drag the “Call Stack” entry to a tool bar of your choice
done.
Yes, Delphi 7 for now. Thanks for the tip on how to customize the toolbar 🙂