The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
I actually disagree. I am working as a programmer and just like you, I fancy the intellectual challenge of creating something both functional and maintainable (my main definition of code beauty). But I haven't started this way. I studied physics and my current employer (a co-worker, to be precise) even told me that they were reluctant to hire me but there simply weren't any "real" programmers available. Now, I am actually better in what I'm doing than several people I've worked with who are "proper" programmers. While I agree that there's need for certification in life-threatening situations (Boeing, medical equipment), preventing people from getting into programming in the first place ain't the way to go.
Please note that I am not espousing certification. I am espousing an organization that might espouse certification.
An aside. I too took my undergraduate degree in Physics. I have found that it has given me a significant advantage over graduates with a "programming" degree. Even worse, I taught the core computer science curriculum at Chapman University for five years. Of course by then I had more than 30 years experience in the trenches.
After much reflection, I've come to the conclusion that musicians are the "best" programmers, followed by physics majors.
Ciao a tutti,
Scrivo in italiano per esprimermi meglio, e spero che riusciate a comprendere usando un traduttore.
La parola "programmatore" nel corso del tempo ha subito una trasformazione nel significato.
Quando ho scelto, a 17 anni, che questa passione sarebbe diventato il mio mondo, essere programmatore aveva lo stesso significato di essere "uno scenziato". Ora che ne ho 54, la parola ha subito un deprezzamento. Anche chi sa usare le macro di Excel si propone come programmatore.
Non voglio denigrare coloro che, per diletto o per necessità, si ingegniano nell'accontentare amici o datori di lavoro.
Ma il significato della parola programmatore è un altro. Non è semplicemente la conoscenza di nozioni, saper buttare del codice, farlo funzionare alla meno peggio. E' un arte (perchè di questo si tratta).
Saper scrivere codice di qualità è come la differenza che c'è fra la pizza fatta in qualsiasi paese del mondo con ingredienti locali e quella napoletana fatta con gli ingredienti campani.
Il programmatore "puro" ha una visione d'insieme dell'intero argomento non solo del singolo problema, ha la capacità di essere critico sul suo codice, di esser disposto anche a riscriverlo per raggiungere la perfezione sintattica del linguaggio scelto.
Appartenere a forum o gruppi come questo non fa di per se essere programmatori.
A programmer is ..a artist
I write in Italian to express myself better, and I hope you can understand using a translator.
The word "programmer" over time has undergone a transformation in meaning.
When I chose, at 17, that this passion would become my world, being a programmer had the same meaning as being "a scientist". Now that I'm 54, the word has depreciated. Even those who know how to use Excel macros propose themselves as a programmer.
I do not want to denigrate those who, for pleasure or necessity, try to please friends or employers.
But the meaning of the word programmer is another. It is not simply the knowledge of notions, knowing how to throw out code, making it work at the worst. It is an art (because of this it is).
Knowing how to write quality code is like the difference between pizza made in any country in the world with local ingredients and Neapolitan-made pizza made with Campania ingredients.
The "pure" programmer has an overview of the whole topic not only of the single problem, he has the ability to be critical of his code, to be willing to rewrite it to reach the syntactic perfection of the chosen language.
Belonging to forums or groups like this does not in itself be programmers.
Please, don;t post directly in Italian: Google Translate works pretty well, and it saves a lot of effort if one person translates it rather than many!
I've done it for you this time, but just please think about the audience in future. Thanks!
Sent from my Amstrad PC 1640 Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
An interesting fantasia of a return to some mythical "golden age," where the degree of "value" could have a universal, consistent, metric ... that was never drowned out by the static of the marketplace's relentless uproar.
I shudder to think of the bureaucratic nightmare an entity which could certify certain programmers might take: would it require deep-state surveillance ? Would it require, like sports, regular drug testing ? Surprise exams ?
I've worked alongside brilliant programmers who had no academic degrees, and deadwood programmers with advanced degrees from places like Carnegie Mellon. I was usually the dumbest person in the room, but ... I had a specialty no one else had (for while)
«Where is the Life we have lost in living? Where is the wisdom we have lost in knowledge? Where is the knowledge we have lost in information?» T. S. Elliot
There are membership level minimum requirements and a code of conduct for members.
There is also a guaranteed indemnity for employers/clients if they use the services of such a member up to £2M.
Membership is not limited to UK resident's either it's an internationally recognised body and anyone, anywhere in the world can apply to become a member.
Just thought I would bring this to everyone's attention, as I agree we need standards, responsibilities and accountability for bad programmers and software engineers who can cause mayhem in the world by not being 'professional' ones.
I'm not a professional programmer, but I worked for personal projects starting with assembly in the 90s, then C, more recently Python and Web technologies. This "occupation" helped me in other professional projects (not related to software, I'm a medical doctor) and allowed me (intelectually) to develop a well structured way of thinking. Talking about "professional associations", should a law prevent (or discourage) people from learning how to program or to make their own programs, tailored for their needs?
For me, a computer is a tool and everyone must have the right (== liberty) to use it full-power (meaning programming, that's what it was built for, not just for watching Netflix or Facebook). I've seen very good programs made by passioned self-taught individuals and bad programs made by "professional" programmers.
By the way, what about the Open Source programs? There are a few made by non-professional programmers, but not that bad. How could one "certify" such programs? And what about the use of Open Source in public institutions?
Nothing about a professional society should prevent you from learning to program, just as nothing should prevent you from testing yourself for a fever and taking an aspirin to reduce it. But just as with medicine, there is a point where the public has an interest in certifying the quality of practitioners. That point comes when a practitioner wants to be paid for their expertise, and wants to prescribe the most powerful and problematic treatments, that require experience and knowledge to administer.
I agree with you in that software for critical missions or services should be verified and/or certified by competent developers, but (no offense intended) an aspirin is - compared to the medical arsenal - what a MS-DOS .BAT file is for software development. Are there only small tools to be left to "power users"? A "professional association" model would not push companies to distribute programming tools only to "certified" developers and then, in a positive reaction of some kind, few and few will become computer-programming-literates and the liberty of thinking (and inventing things) will suffer?
Oh, but there's the Open Source ... May I ask what do you think about it? What should be done with the huge code-sharing resources available or, more general, with "the" Open Source? There are, I think, critical applications based upon (sites hosted with Apache Web Server, ...).
Someone working as non-professional developer should not get payed for his/her knowledge/effort (I didn't write "expertise" as I'm talking about a non-professional). Or a model like ActiveState or RedHat - where a community of developers makes software that the company selects and certifies - would be more acceptable?
As you must be well aware, there are a whole range of medical professionals, from medics and paramedics, to nurses, to LNPs, to general practitioners, to specialist medical doctors. There are many spaces between taking an aspirin and performing brain surgery.
I would not be in favor of, nor would it even be possible, to limit the availability of development tools to only the most specialized software developers. People would still be free to learn and to tinker. I think software written by uncertified developers should even be allowed for sale, as long as this was disclosed, though you could make me believe that certain kinds of software should only be produced for sale by certified developers and organizations.
I think liability for defective software should become an important part of this future. But I think that people who give software away for free, and disclose that it was done by uncertified developers could be made immune. Then developers of software for sale and users of free software would have to think clearly about whether open-source code was of good quality. If so, then including it would be OK. If not... maybe they should find the code somewhere else. Hopefully standards of care would become embedded in the liability law, and things wouldn't really be too much different than they are today. One might even make a business around uncertified software as long as the software was given away.
I firmly believe that programmers should be held accountable for their mistakes (witness the Boeing 737 Max disasters).
This sentence speaks volumes and proves that we should NOT follow you. First, it while there were certainly some mistakes, the programmers should NOT be blamed as they had to work with incomplete sensor data.
Second, just how to you hold them responsible?? And if you hold them responsible for major loss of money then they should also reap the reward. Sorry - I don't buy the argument from you any more from "Uncle Bob." I will take the financial risk commensurate with the amount of reward. I am an intelligent programmer.
I continue to be fluent in multiple computer programming languages (e.g., C#, C, Ada, FORTRAN, COBOL, and Pascal). I have programmed within Windows, UNIX, Linux, VxWorks, as well as others too old and long ago to mention.
Yes, you are a legend in your mind. My experience is that polygon programmers drag the crap from each language into the other. They ignore language features and seek to build GOF patterns into what the language already provides.
I believe that it's time to organize a programmers' association that can provide certification and other benefits not available to programmers today. For example: a stable retirement fund, not affected by the continuous movement of programmers from one job to another; job protection from any number of ills that plague our profession; career guidance and referrals; legal assistance in the case it was needed; and any number of other services. Of course, there would be a cost but, hopefully, a well-spent cost.
This sounds like a union called by something else. That you believe that this magical unicorn exists confirms my earlier belief that I wouldn't recommend hiring you. We can ignore just how you certify someone across so many languages used today for a moment and consider how you ensure continuous movement and job protection. There is only one way and that is to force employers to ignore their hiring practices now and accept that daddy union knows best. Unions are fighting for their continued existence as many people realize that a strike will likely cost them more than the difference will ever make up in their life. (This is even true for the youngest.)
I am with Code Project and think this is a bad idea. I don't believe in magical unicorns.
It's an interesting discussion. I believe the industry *could* do a better job policing itself; however the problem domain is so broad and complex that I think it's nigh impossible. That said, the original poster shot his argument in the foot when he cited the Boeing 737 Max issue - this was not a software failure but a systems engineering failure (IMHO - I've not read the IEEE writeup, next on my list).
You do make an excellent point about people who claim to be programmers, and all they know how to do is drive a keyboard. I trace this ROT back to the .COM era when so many people were slamming web sites that anyone who knew html was called a "programmer". I believe this cancer still plagues the industry.
But when you think about how we develop software today, I'm not sure we can really corral the cat herd. How are you going to certify all of the 3rd party software used in today's applications? Open source? I think the system would grind to a halt trying to use the "professional" model across the industry.
The real problem, and some have alluded to it, is cost. A long time ago, I worked as a pure EE designing circuit boards. One of my mentors was an old salt by the name of Frosty - tall gangly guy, very passionate about his work, licensed professional engineer. He had come up with a design and submitted the paperwork to management. They sent it back, as he had not applied his PE stamp on it. He told them to pound sand - that cost money if they were willing to pay. They didn't, so he didn't. It was an interesting standoff (lots of yelling and profanity).
If you want someone to accept risk, it's going to cost you. Boeing accepts this risk and essentially indemnifies its employees. If this were demanded of me, I'd double my rate and purchase a LOT of insurance. Just think about how many times you've been told by management to "ship it, we'll fix it later."
As for pensions, etc, that's easily handled by a simple professional organization. Given your age (and mine), I suggest looking into AARP or Amac (American retirement groups).
<italic>Stuck in a dysfunctional matrix from which I must escape...
"Where liberty dwells, there is my country." B. Franklin, 1783
“They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759
I'm not unsympathetic to the points you've raised, but every time this issue comes up, I see the same two problems with it:
- Outside of safety-critical industries, the market (of companies who hire programmers and/or need custom software created) just doesn't care. In some countries, "software engineer" is a protected title and requires specific education and licensing. The net result? Companies choosing job titles other than "software engineer". Trying to compel all programmers to be part of a professional association would give companies a huge incentive to try to create all of their software using methods that you'd call 'not programming'. We'd end up in a universe where all business software is cobbled together using things like VBA and PowerApps. And I don't mean to knock VBA and PowerApps. Whether or not they count as real programming, they're often the quickest/fastest way to solve a problem, and like it or not, those are the metrics that most businesses care about. Given the old choice of 'fast, cheap, good - pick two', customers overwhelmingly prefer 'done cheap, delivered fast'.
Now, there *are* a subset of companies who care deeply about quality. Why not just try to focus on selling yourself to those companies, since they already understand the value you provide? On the flip side, there are lots of companies for whom the kind of quality you want just wouldn't provide them any competitive advantage. If quality programming is your primary concern, spending too much time worrying about people who don't (and will never) care about it will only cost you your sanity.
I do wish you the best of luck in your endeavour, though.
Last Visit: 16-Sep-19 4:02 Last Update: 16-Sep-19 4:02