https://www.ordemengenheiros.pt/pt/a-ordem/colegios-e-especi...
No Portuguese university is allowed to call their computing degrees engineering without their approval, and in certain kinds of state related projects, the one putting their signature into the legal contracts has to have the professional title acknowledged.
Germany and Switzerland have a similar process for those carrying engineering on their title.
Either that or you have done it via a trade school, and people on the job have to have a kind of teaching certification for the school to approve the company as teaching place.
If you happen to be someone like our former prime minister, or being lucky that no one bothers to sue because of how long everything takes.
However, depending on the company, it might be a matter to lose the job.
Where it definitely matters is signing legal binding contracts.
Also not everyone and their dog gets in unless they prove their skills.
Most private university are seen as scams.
You should start by shooting down all the university scams in US to start with.
Yeah and I hope it stays that way. Imagine needing a license to write software. It would mean the end of free and open source software as we know it.
> Does anyone have any information about how effective such training / indoctrination is in preventing bad situations from happening?
It's not about training or indoctrination. It's about legal responsibility and liability. Make professional programmers directly responsible for the code they get paid to write. If society finds they're causing harm, it will hold them accountable for it.
We must increase the risk associated with building unethical technology. Programmers need to think twice before they build the next surveillance capitalism nightmare.
Our society does a really bad job at holding people accountable for the harm they do. What makes you think it would be any different for software?
i don't think so because as you said:
> It's about legal responsibility and liability. Make professional programmers directly responsible for the code they get paid to write.
we urgently need liability for for-profit software in order to stop softwares race to the bottom.
I'm indirectly liable, in that I can lose my job, however.
If I were a contractor, I would also buy liability insurance.
If an engineer negligently (note: not knowingly) signs off on a bridge that collapses, they face fines, expulsion from their profession and jail time. At this point, every developer at Facebook should know the harm they’re causing. The most they face is job loss. That’s the problematic asymmetry.
software quality is not some kind of "force of nature" or "accident" but a direct result of cutting corners/costs.
insurance for beeing lazy will not help.
If we're going to do that, there's no good reason to give a special exclusion for not-for-profit software.
Besides, it's trivial to launder everything if you give such an out. The regulation can apply equally to everyone, or don't expect it to go anywhere at all.
Amateur programmers are not professional engineers. A profession is an activity people are compensated for. If you're not being compensated, it's not professional work. If it's not professional, you should not be held liable for it.
Someone publishing a personal project should not be held liable for anything. A professional software engineer deciding to use that project at work without thoroughly reviewing it and causing a security breach due to vulnerabilities in that software should absolutely be held liable for negligence.
> An engineer designing bridges is liable regardless of his salary, and same must apply to a programmer.
I'm not an engineer but I can draw up a bridge right now. Would it stand or collapse? Who knows. I think it looks nice though so I post it online. Then an actual engineer sees my drawing and makes an actual bridge out of it. The bridge collapses and kills thousands.
Who's liable? Me, a random guy who drew a bridge? The engineer who should have known better?
> Besides, it's trivial to launder everything if you give such an out.
That would require companies to not only refuse to compensate their programmers for their labor but to also open source their source code. Doesn't seem trivial to me.
Right, it's not the publishing but the use which is proscribed - same applies for engineering. But that would apply regardless of whether the software you're using is open-source or not, and regardless of how much you're paid.
A social-media site operated by an amateur in the bedroom being paid nothing and using only open-source software would still be liable under any sensible and realistic regulation.
>>Besides, it's trivial to launder everything if you give such an out. >That would require companies to not only refuse to compensate their programmers for their labor but to also open source their source code. Doesn't seem trivial to me.
You can compensate for code with this regulation, it's not difficult. e.g. create a non-profit, and pay the non-profit which pays the programmer. So long as the programmer is one step removed from you it's fine.
Open source isn't much of an impediment either, just have a suitably restricted licence. Or don't, it's not an impediment for many types of businesses.
Exactly.
I think there should be an exception for free and open source software though. We have lots of free software designed to be used by people. I don't think these programmers should be held liable. Many of them are amateurs and volunteers. The chilling effect would simply be too great.
I'm reminded of Greg Kroah-Hartman's talk about kernel contributors.
https://youtu.be/fMeH7wqOwXA&t=326s
> My goal, of me, as a developer and to make Linux succeed, is to help [amateurs, unknown individuals] out.
> If you're hired to do this stuff, you're on your own and you better know what you're doing.
I think he's right. At the time, roughly 20% of the kernel was done by individuals. That work is extremely valuable yet it is different from professional work. It should be treated differently. with a lot more compassion and understanding. On the other hand, it is fine to expect professionals to be disciplined.
> A social-media site operated by an amateur in the bedroom being paid nothing and using only open-source software would still be liable under any sensible and realistic regulation.
Yeah, I agree. That's not just software anymore, that's a service.
> e.g. create a non-profit, and pay the non-profit which pays the programmer. So long as the programmer is one step removed from you it's fine.
It doesn't matter how indirect it is. The important fact is the programmer is getting paid for their work. That makes it professional work.
Do kernel contributions getting paid by the Linux foundation count? What if the offending company is donating to the Linux foundation?
>I think there should be an exception for free and open source software though. We have lots of free software designed to be used by people... The chilling effect would simply be too great.
I understand distinguishing between publishing and use. But we're talking about use here. The person responsible for the use of the bad program is usually not the contributor. So there's no chilling effect here?
then follow-up with whether they would feel morally/spiritually at peace with their choices and methods after the fact (do your ends justify your means?)
in my experience, the people with the IQ to earn a yacht responsibly end up settling for a speedboat anyway.
A software developer glues together 400 node modules they don't understand and ships to Other People's Computers, then hands them their debit card when the load goes up. A software engineer knows that every line of code is accounted for, because they've actually done the accounting, and knew the scale requirements in advance (with error bars) and provisioned the infrastructure accordingly - with a budget.
I say this as someone who programs, teaches programming/computer science, and has worked professionally as a software development engineer - the comment isn't made to denigrate anyone, but because software "engineering" doesn't have any certification / professional credentialing that "real" engineering (e.g., civil engineering) apparently does have.
Also - I'm curious about how effective it is to tell the engineers to do the right thing (even at the expense of personal gain). It seems like the people most responsible for making decisions that build harmful products aren't the ones who are actually tasked with building the harmful products. Does anyone have any information about how effective such training / indoctrination is in preventing bad situations from happening?