British by birth, I am now an American citizen. I have worked on IBM mainframes for almost forty years now. I started out as an operator, moved into application programming and later into systems programming, mostly CICS and MVS (as it was back then, z/OS these days) along with some IMS DB and DC.
Later on I moved into software development which is where I spend my life now.
My passion is assembler. With assembler you get to play with all sort of cool system services, write SVCs and subsystem code and generally muck around with software at the operating system level.
For a long time I was not a fan of ‘C’, mainly because so far as I could see (pun intended!) C looks like a high level language but it’s really a low level language and you need all the same skills that an assembler programmer needs to really get the best from it. However I have started using it more an more recently and it’s not as bad as I thought although you still need to be careful with it. The one main advantage I can see is that because the language is so pervasive across a great many platforms you have the ability to quickly create working code on an alien platform. The down side to assembler of course is that it is machine specific so there are pluses and minuses to both I guess.
All that said, I just do NOT do Java!