Call for a Professional Programmers' Association
-
I'm not going to call you a programming snob, but I do think you are biased against VBA programming. It's true that much of the programming in VBA is trivial, but some of it is very complex and supports a multitude of business in their day to day operations. Were it not for VBA these companies would have to pay a fortune for bespoke app's and spend large amounts of time doing things 'manually'.
Did I not make myself clear in my reply to Andrew L. Meador? Please don't try to draw me into a flame war regarding the worth of any or all programming languages. Each has a place. I have used VBA but I caution you, in most of my tasks, VBA would not be the language of choice. Systems, embedded, communications, weapons, medical, etc. software would be, in my opinion, very difficult to implement in VBA. But Excel spreadsheet modules are a different story. And should the organization that I propose come to fruition, VBA programmers would be more than welcome.
Gus Gustafson
-
Your post makes a lot of sense. You may be interested to look at the 'British Computer Society' in the UK. They accept qualified people from around the world into membership. Also, in the USA, there is the 'Association for Computing Machinery'. I enjoy the articles in their journal and they keep me in touch with what is going on in technology. Also, they provide access to online training courses, books and have a comprehensive digital library. Both of the above fulfil the role of learned societies rather than trade unions but I don't believe any competent programmer, software/systems designer, etc., has need of a trade union. Generally, because of their knowledge and experience, they can walk away from bad employers with the knowledge they will be picked up by some other company.
In 1990 I was invited to a membership review committee by the ACM. I had been a critic of the organization for its failure to address the problems facing the production programmer. Yes, the Special Interest Groups had the occasional useful-to-a-production-programmer article (especially the SIGPLAN). But the vast majority of the publications (Journal, Communication, Review, etc.) were aimed at a more academic audience. ACM did not recognize the problem and I discontinued my membership two years later. So although ACM has some useful offerings, they come with a price too high. Thanks for your thoughts.
Gus Gustafson
-
I intended to mention previously that I agree with you on goals, 100%. But these things get out of hand. The next thing you know the guy who barely phones it in is being promoted just because he's been there too long or you're on strike because there isn't enough tartar sauce to cover the mandated 7 fish sticks for lunch in the cafeteria. And who doesn't like a little on their chips as well... I only want to emphasize caution because I was part of a system that was too old and established to be changed or removed. To say that no one worth their salt was for it would be unfair because I worked with some truly exceptional software engineers who thought it was a fine idea. But it left me with the impression that there were limits to where my hard work could take me. To your aside, perhaps I should have use the term "world wide web", but ARPANET, man you are older than me!
I am older than most. My partner says I'm "older than rock". :)
Gus Gustafson
-
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!
Thanks for the translation
Gus Gustafson
-
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. :)
Gus Gustafson
-
Although I agree with your sentiments regarding legislative bodies, a Congressional Charter is mandatory for legal purposes.
Gus Gustafson
-
Engineers cannot be held accountable for their mistakes until they have the power to hold up releases until they are satisfied with the quality. Otherwise you just shift liability off of business and onto people, which is not what any sane person would desire in a professional society. Professional Engineers have the power to withhold certification of a civil engineering project, and thus to demand quality. Imagine what the world would look like if every major project and every web site had an engineer that was professionally liable to the public for the quality of the code. Imagine if this engineer (or these engineers), and not the company, got the last word on whether the project was ready for release. In fact, imagine a world where anybody at all was liable to the public for the quality of software. This is the thing you want in a professional affiliation.
Interesting point. I'd never thought of that aspect. Thanks
Gus Gustafson
-
gggustafson wrote:
I avoided using the word "engineer" for the very reason you provide.
gggustafson wrote:
I firmly believe that programmers should be held accountable for their mistakes
I don't believe you can have one without the other. The best you can do is probably the current situation where a professional engineer creates the specifications for the program, and the programmer must meet the specs. The full blame falls on the professional engineer and the company that checks to make sure their spec was met. If a programmer in the current scenario fails to meet the spec, and the company doesn't catch this, you are advocating for the programmer to be responsible? I doubt it. Some more thought needs to go into your proposal. I am not saying you have to get a full mechanical engineering degree before making them 'professional.' Engineering is one of the few disciplines where if you can pass the test (and in some cases an apprenticeship) they don't care how you get the knowledge. At least it was when I last checked.
Thank you for your thoughts
Gus Gustafson
-
If you made software-engineer wages and didn't put anything away for retirement, that is so totally your fault. A union with a mandatory-participation retirement plan to "protect you from yourself" is the kind of union that union-haters particularly dislike. It's an organization with enough money to make it ripe for abuse and racketeering. This is the wrong model IMHO.
When I started programming for a major software services company in 1973, I was paid $12K per year. I received 10% pay raises every 6 months. Because I was cheap and good, my job was secure. In 1998, I was earning $103K per year. But when I left my then-current employer I also left all of my benefits: six weeks vacation, a retirement account, health benefits for my partner and myself, and most importantly a job. The reason for my departure was the need to reallocate discretionary funds to Bosnia training (I was a contractor for the US Army at the National Training Center). When I landed in a new job, I was paid $25K per year (my choice to get a job). By the time I finally left commercial programming, I was earning about $50K per year. Because of my life style, I didn't need savings: no kids, no college, no weddings, etc. I thought my whole salary was discretionary (with the exception of mortgages, automobile loan, etc.). I am not complaining about my foolishness. I have Social Security, Veterans benefits, an annuity, and a trust fund (the latter two established by my family who recognized my financial planning shortcomings). In a quick search, I turned up an Experian survey that suggests that I was not alone in the manner in which I spent money. The take-away: a professional organization for programmers may well have solved my financial planning problem. Not necessarily, but possibly.
Gus Gustafson
-
Certifications are a scam that only benefits the people that are charging money for them. Anyone can get one. Like a college diploma. Your cited example of the 737 Max problem was NOT the fault of the programmers. They wrote the code to the specs, and Boeing knew IN ADVANCE that there might be a problem with their specs. They even had a workaround for pilots to perform in the event a problem cropped up. Boeing management's fault, not the coders.
".45 ACP - because shooting twice is just silly" - JSOP, 2010
-----
You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
-----
When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013I disagree that programmers are absolved. From a link by another (How the Boeing 737 Max Disaster Looks to a Software Developer - IEEE Spectrum[^] START QUOTE It is astounding that no one who wrote the MCAS software for the 737 Max seems even to have raised the possibility of using multiple inputs, including the opposite angle-of-attack sensor, in the computer’s determination of an impending stall. As a lifetime member of the software development fraternity, I don’t know what toxic combination of inexperience, hubris, or lack of cultural understanding led to this mistake. But I do know that it’s indicative of a much deeper problem. The people who wrote the code for the original MCAS system were obviously terribly far out of their league and did not know it. How can they implement a software fix, much less give us any comfort that the rest of the flight management software is reliable? END QUOTE
Gus Gustafson
-
I disagree that programmers are absolved. From a link by another (How the Boeing 737 Max Disaster Looks to a Software Developer - IEEE Spectrum[^] START QUOTE It is astounding that no one who wrote the MCAS software for the 737 Max seems even to have raised the possibility of using multiple inputs, including the opposite angle-of-attack sensor, in the computer’s determination of an impending stall. As a lifetime member of the software development fraternity, I don’t know what toxic combination of inexperience, hubris, or lack of cultural understanding led to this mistake. But I do know that it’s indicative of a much deeper problem. The people who wrote the code for the original MCAS system were obviously terribly far out of their league and did not know it. How can they implement a software fix, much less give us any comfort that the rest of the flight management software is reliable? END QUOTE
Gus Gustafson
- Most corporate coders are given a task to perform, and that is all they are to do, Many times, they have no contextual basis for the code they write beyond expected paramaters, and expected results. USAA (a big insurance company here in the US) is like this. Because they lack context, they couldn't possibly identify a potential issue. 1) Even if they were more aware, they could have said something to their immediate superior (or logged it in their bug tracking software), but the idea/observation was quashed/ignored somewhere along the management food chain. 2) Problems may have been cited, but management decided not to act due to costs. It's not a big leap to assume that management would scrub evidence that indicates this was the case, so saying it doesn't show up in the bug tracking/source controls logs doesn't mean squat. 3) Ultimately, the system engineer should have been included in the acceptance testing phase, and probably be the one to identify the problem - NOT the coders. 4) Even if the coders were "out of their league", how would the coders test something they don't fully understand? 5) What do you want to bet that it was the *engineers* that wrote this code? I woudln't EVER refer to an engineer as a "programmer". They simply aren't. The "hubris" lies with the engineers, not the programmers. If I was a programmer that had worked on that system, and they were trying to claim I was the reason for the flaw, and further, that I knew the actual truth, I'd be pretty vocal about placing the blame where it rightly belongs. Boeing is looking for scapegoats, and programmers are low man on the totem pole. If they thought they could get away with blaming the janitors, they certainly would try. In the end, the guy in charge of Boeing is ultimately responsible.
".45 ACP - because shooting twice is just silly" - JSOP, 2010
-----
You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
-----
When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013 -
- Most corporate coders are given a task to perform, and that is all they are to do, Many times, they have no contextual basis for the code they write beyond expected paramaters, and expected results. USAA (a big insurance company here in the US) is like this. Because they lack context, they couldn't possibly identify a potential issue. 1) Even if they were more aware, they could have said something to their immediate superior (or logged it in their bug tracking software), but the idea/observation was quashed/ignored somewhere along the management food chain. 2) Problems may have been cited, but management decided not to act due to costs. It's not a big leap to assume that management would scrub evidence that indicates this was the case, so saying it doesn't show up in the bug tracking/source controls logs doesn't mean squat. 3) Ultimately, the system engineer should have been included in the acceptance testing phase, and probably be the one to identify the problem - NOT the coders. 4) Even if the coders were "out of their league", how would the coders test something they don't fully understand? 5) What do you want to bet that it was the *engineers* that wrote this code? I woudln't EVER refer to an engineer as a "programmer". They simply aren't. The "hubris" lies with the engineers, not the programmers. If I was a programmer that had worked on that system, and they were trying to claim I was the reason for the flaw, and further, that I knew the actual truth, I'd be pretty vocal about placing the blame where it rightly belongs. Boeing is looking for scapegoats, and programmers are low man on the totem pole. If they thought they could get away with blaming the janitors, they certainly would try. In the end, the guy in charge of Boeing is ultimately responsible.
".45 ACP - because shooting twice is just silly" - JSOP, 2010
-----
You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
-----
When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013If we are to change the scenario you rightly describe, we cannot justr wait until it happens. We must make it happen. With a strong organization, I think we can define the process by which software is developed. I'm not sure how (my job here is not to direct but rather to propose) but once organized the issues can be addressed. Your points are a sad commentary on today's state of programming. They're more reason to organize.
Gus Gustafson
-
If we are to change the scenario you rightly describe, we cannot justr wait until it happens. We must make it happen. With a strong organization, I think we can define the process by which software is developed. I'm not sure how (my job here is not to direct but rather to propose) but once organized the issues can be addressed. Your points are a sad commentary on today's state of programming. They're more reason to organize.
Gus Gustafson
Organizing programmers is NOT going to fix faulty management.
".45 ACP - because shooting twice is just silly" - JSOP, 2010
-----
You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
-----
When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013 -
Organizing programmers is NOT going to fix faulty management.
".45 ACP - because shooting twice is just silly" - JSOP, 2010
-----
You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
-----
When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013I disagree. Faulty management should be addressed by the organization. Management training should be provided. And sanctions if companies do not cooperate. Remember Congressionally Charted?
Gus Gustafson
-
When I started programming for a major software services company in 1973, I was paid $12K per year. I received 10% pay raises every 6 months. Because I was cheap and good, my job was secure. In 1998, I was earning $103K per year. But when I left my then-current employer I also left all of my benefits: six weeks vacation, a retirement account, health benefits for my partner and myself, and most importantly a job. The reason for my departure was the need to reallocate discretionary funds to Bosnia training (I was a contractor for the US Army at the National Training Center). When I landed in a new job, I was paid $25K per year (my choice to get a job). By the time I finally left commercial programming, I was earning about $50K per year. Because of my life style, I didn't need savings: no kids, no college, no weddings, etc. I thought my whole salary was discretionary (with the exception of mortgages, automobile loan, etc.). I am not complaining about my foolishness. I have Social Security, Veterans benefits, an annuity, and a trust fund (the latter two established by my family who recognized my financial planning shortcomings). In a quick search, I turned up an Experian survey that suggests that I was not alone in the manner in which I spent money. The take-away: a professional organization for programmers may well have solved my financial planning problem. Not necessarily, but possibly.
Gus Gustafson
-
@Raddevus Hi, If there's one thing I am sure of, it's that I'd be proud if you thought I was in your community :omg: I consider some of the Quora groups, like [^], and [^], and various SIG groups at the ACM [^], to be virtual communities where you often find people sharing/discussing topics at higher levels of abstraction than specific OS's, languages, hardware. cheers, Bill
«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
BillWoodruff wrote:
If there's one thing I am sure of, it's that I'd be proud if you thought I was in your community
Well, I feel the same way about you. :-D There are a lot of great people here at CP and they always challenge me to think different. :thumbsup:
-
Only a fool counts on others to protect them against their own foolishness. If a professional society solved your problem, it would be by accident, not by design. It's not a good reason to found a professional society.
I believe you post is approaching incivility. I have so marked it.
Gus Gustafson
-
gggustafson wrote:
. When I was a member of the ANS X3J9 technical committee (Pascal) we were limited to a language update every five years.
And back then that worked because there wasn't as often a change in the industry. Now, this industry moves much faster and needs updates much more often.
Social Media - A platform that makes it easier for the crazies to find each other. Everyone is born right handed. Only the strongest overcome it. Fight for left-handed rights and hand equality.
I disagree that there is any "change" in the industry. Ive lived through wide variety of hardware platforms ranging from mobile devices to mainframe computers to PCs to specialized military hardware and microprocessors and a large number of development platforms. Except for read-in time, I find programming to be the same. By the way, X3's insistence on a five-cycle was to allow programmers to become knowledgeable of the current standard implementation. FYI, during my programming career COBOL was the most stable.
Gus Gustafson
-
I disagree that there is any "change" in the industry. Ive lived through wide variety of hardware platforms ranging from mobile devices to mainframe computers to PCs to specialized military hardware and microprocessors and a large number of development platforms. Except for read-in time, I find programming to be the same. By the way, X3's insistence on a five-cycle was to allow programmers to become knowledgeable of the current standard implementation. FYI, during my programming career COBOL was the most stable.
Gus Gustafson
gggustafson wrote:
I disagree that there is any "change" in the industry.
Computers are everywhere now. :doh:
Social Media - A platform that makes it easier for the crazies to find each other. Everyone is born right handed. Only the strongest overcome it. Fight for left-handed rights and hand equality.
-
gggustafson wrote:
I disagree that there is any "change" in the industry.
Computers are everywhere now. :doh:
Social Media - A platform that makes it easier for the crazies to find each other. Everyone is born right handed. Only the strongest overcome it. Fight for left-handed rights and hand equality.
So? So is programming all of them!
Gus Gustafson