
It's quite simple, if they don't know what a regexp is, they AREN'T a professional software engineer. Ditto if they're keen to excessively abstract, or if they dive into implementation without properly analysing and planning.
The notion of choosing a platform is ludicrous, there might be some hyper-elegant syntax for doing something in matlab or PERL, but if you can't purchase a license, or if the management won't have it because there's no-one else to support it, then you're out of luck.
As for the "back alley" of reflection in Java, the feature was introduced specifically so that Java could host it's own debugging tools, and other uses are firmly discouraged in the API documentaion. Production functionality that depends on reflection will be the first things to break during the legacy phase, and will be difficult to understand and fix.
These guidelines might be good for getting something working now, but they'll contribute to a mass of short sighted, unmaintainable and ultimately doomed legacy applications. And I for one hope I never have to maintain or port any of this guy's code.