Liam, I don't have a CS degree, I learned the hard way. I have contributed to OS (past tense, I don't code much any more). Nevertheless I am a qualified member of BCS. Who's suggesting that BCS membership would be mandatory - where did this red-herring come from? But anyway, you say "professionals will stop it the moment they are going to lose out". Who are these professionals - which public code of ethics do they subscribe to? BCS, IET, IAP? Simply, if they have not subscribed to a professional code of ethics & behaviours from a recognised institution they are not "professionals" being a professional implies and requires membership of a profession. Being a craftsman, artist or tradesman, working full time in a specific occupation, being very, very good at it and pursuing excellence does not of itself make a professional. Being a professional is not mandatory except in regulated occupations; law, medicine etc. Heaven help us if it is ever required in computing and IT, it is probably not possible. There is infinite scope for pursuit of our craft outside the profession, and the majority of major contributions come from outside. The common usage of the term professional is a corruption, a usurping aspiration from those who work hard at their craft and wish to be seen as "professional", make a "professional job" of their work etc. But being a professional means not only excellence at the craft, but subscription to the craft, and that is where organisations such as BCS and IET come in. They allow us to declare our professionalism, to be recognised as professionals, through being accepted as professional members. Joining is optional, it's for those who are so committed to their craft that they wish to participate in its development, subscribe to certain standards, and be recognised as doing so. It's a badge of participation and commitment, nobody has to wear it, some choose to because they think it's worthwhile. Cheers, Steve