Incidentally, if HN allowed it, I would have linked the above text to:
https://en.wikipedia.org/wiki/Rickrolling
...in order to be a little meta.
The middleman isn't checking availability every time because there's a cost to ask the carrier. And if you ask too much they will rate limit or deny you which means you get no availability.
The middleman is a price aggregation person, and tries to find rates and routes using all the rules the carriers specify.
Sure you can buy tickets directly from AA or UA. But what if you want to fly a connection that has both. Do you think AA wants to sell seats on someone's else plane?
Talk about fake it ‘til you make it.
Worked out for me once during a trip to NYC where my hotel was full, but they sent me to a nicer hotel right over Times Square.
I don't think keeping unbooked rooms "just in case" is economical so if this sort of thing happens you may well need to be moved out to a nearby hotel at their expense.
It's rare that it's developers who actually come up with these ideas, they're usually just employees implementing someone else's plan.
Unless we're talking early startups--then there's a good chance the developer is responsible.
It's probably not a coincidence that engineers and doctors are professionals well known to place their own ethical standards above their customers. It is expected that a doctor refuse to carry out a procedure that puts innocent people at harm.
These professions have codified standards, licensing, and membership requirements for practitioners. There is a real incentive to conform and maintain your license because otherwise you cannot work. In these professions you know the standard of ethical behavior and you can reasonable expect your fellow professionals to also refuse questionable requests. An unethical client is going to have a hard time going down the street to find someone else who is willing to do what you won't.
I'm not trying to excuse the bad behavior of some software developers. My point is that the software industry and profession lacks much of what other professions have established in order to maintain high standards.
The point is that accountants are professionals and have professional standards that they adhere to. Software devs are not and do not.
One often overlooked relationship I find to this sort of argument is that economic harm is somehow independent of physical harm.
While in the purest theoretical sense, its obviously clear/true, the more we abstract parts of life away to monetary valuation and control, the more economic effects have real serious indirect physical consequences.
So someone lost a few bucks due to a manipulative ad? Most the time this has no serious consequences as devious as it may be. However, when lost assets become more significant or lead to serious economic distress, it can and does directly result in health effects that have physical consequence.
Obvious extreme examples include cases of financial ruin that lead to mental health distress leading to suicides. Small repeated loss could also lead to unhealthy lifestyles over time coupled with poor financial choices resulting in limited to no access to preventative healthcare... directly leading to a cause of death (say heart disease from poor dieting).
Practices of advertising from the tobacco industry in the past provide a good model for how these can effect peoples choices which over time had serious physical consequences--the main difference being the tobacco industry actually provided a dangerous product that their behaviours pushed. Arguably consumers have to actively make a choice to follow through but with enough data, people are tending to be more and more easily manipulated.
Nope
> To everyone else, putting it as nicely as possible, it's very off.
As one of the other people, I disagree.
Also note that a lot of the trade regulation groups like the bar associations also ensure a good standing in the "community", so they would sanction whatever equivalent lawyers have to dark patterns, if they were frequent enough/egregious enough.
* No professional code of ethics.
* No professional body that oversees the profession and sets standards.
* No licensing or certification (except maybe in Canada).
I'm sure I'll get a bunch of flack for this, but it's well past time developers stopped indulging in classist self-flattery pretending they're the peers of doctors, lawyers, or accountants.
Medical doctors work for an industry that bankrupts sick people for being sick and and a huge number (if not a majority) of practicing doctors can be implicated in the opioid epidemic that has killed thousands and ruined countless lives.
Ethical contracts usually just lead to more politics imo. At the end of the day, we all bow to money in one way or another (some are just willing to bow lower than others).
Maybe we should stop pretending a profession can somehow make a person better than someone else in some sort of meta/ethical way.
Addendum: Personally I wish the law were more open to allowing people to defend themselves. A few years ago I went to court to defend myself in what I was sure was a simple misunderstanding in traffic court. Halfway through my second sentence (not in the legal sense), the judge interrupted me. Then the police officer tried to explain what he put in the ticket may not have been comprehensive. The judge cut him off too and decided it was in my best interest to "learn a lesson" and found me guilty of a violation I was not guilty of. The lesson I learned was if I had paid a lawyer $500 I would have gotten an honest hearing. I don't see the ethics or standards in that.
A programmer is still more like a lawyer in almost every conceivable way than they are like a bricklayer: level of education, social circles, work environment, pay, cultural values, etc.
(This has nothing to do with "self-flattery" unless you think I'm making some sort of value judgment about these different classes, as opposed to just describing them).
In contrast, most software devs will code up whatever evil garbage features their bosses tell them to. They don't even have a concept of malpractice. Very rarely, one might quit, but they have no standing to say "no" to their employers and remain employed.
And that's only the named people. I don't know how many people you know in medicine or in law.
If you're unfamiliar with things being upcoded or out of network doctors substituting in late and then having patients incur massive fees, then maybe it's best to familiarize oneself.
And there are lawyers who specialize in getting the right rich guilty people out. The Razor didn't get the name by chance.
https://www.nytimes.com/interactive/2015/business/internatio...
From a few days back:
>Back in Web 1.0 (1999 or so) I worked for what was then a large Social Network. There was no security. Any engineer could look at anything.
I'm assuming you weren't using the word engineer there to refer to Professional Engineers?
It is first found in English in 1380, when I doubt any professional certification bodies existed.
Eventually it evolved to mean what you got your license in, and then evolved further to include things like "software engineers".
Unless you build engines, the word engineer to describe what you do is etymologically inaccurate. So why is your particular stage on the path of organic evolution of this word more valid than anyone else's?
I understand the other argument that the job title "Engineer" is being diluted, but that ship sailed a long time ago. There are way more people with engineer in their title than there are PEs so I doubt any widespread legislative attempt to change this would be successful. And it's not just software engineers. Plenty of people working as engineers with ABET accredited engineering degrees haven't passed the PE exam either.
https://ncees.org/ncees-discontinuing-pe-software-engineerin...
It was only ever administered 6 times.
I've spent all of 30 minutes studying this, so, hardly an expert. But it seems like the genesis and ongoing purpose of P.E. accreditation is to protect the health and safety of the public. There have certainly been some high profile examples of poor software engineering affecting health and safety - thinking about the Toyota acceleration issue and the VW emissions scandal - but I am wondering if people really think an accreditation body would prevent this sort of thing from happening. What would a Professional Software Engineer be, and why would they be inherently better or more qualified than what we have today?
There's no demand because they made the process more or less impossible for developers to ever get to to the point where they take the PE exam.
First, the candidate has to pass one of the Fundamentals of Engineering exam to become an engineer-in-training. Except, whoops, there isn't a software specific FE; the most relevant one is the EE/Comp. E. exam. Take a look at the list of topics: https://ncees.org/wp-content/uploads/FE-Ele-CBT-specs.pdf Most developers aren't going to pass that even with a CS degree.
Secondly, you need 4-8 years of supervision by a licensed engineer. Again, whoops, there are barely any software developers with a PE license, so who would they get to supervise them?
Frankly, the situation was so absurd that one has to suspect that NCEES didn't want to certify software developers as PEs.
Provably correct software development is too slow and specialized to be economically feasible. Even formal correctness is not enough, you also need to defend against unpredictable hardware faults. No traditional engineering discipline needs to do this.
I do have to ask why all the self hate here why would a rational person what to degrade there profession do you want to be working in a blue collar job with worse working conditions?
Whilst both types how workers have problems at work - they express themselves quite differently.
In the case of something more complex, developers don't have the leverage of established regulatory bodies and guilds.
I was once asked to finish and deploy code that the previous dev had stolen from his old employer. I said no because the code was paid for by someone else and belonged to them. It wasn't a big deal -- my career didn't suffer.
If i had been assigned to work on that project I would have resigned.
"As a user, if I arrive on a booking page and the live API data shows our cached pricing data is stale, I expect the difference to be acknowledged."
Developer implements animation callout and an approximate, non-technical explanation
Cached pricing data continues to often be stale
I don’t like user stories that are anti-customer and in the developer’s favor unless it’s clear that there’s a path to fairness.
The motivation to a system should be to have as current as possible pricing, not some nightly batch that shows cheaper, unavailable prices and pisses off people when the real price is actually checked.
To your point specifically how many low level German laborers were prosecuted for following orders to build a prison camp or lay railroad track?
Part of the legal definition of a salaried professional is that the job entails the use of judgment.
I've walked away from job offers where I found at interview I really didn't like the smell from how they were making money. I also recognise a 25 year old me might not have had the financial luxury to do so, or to just say no to a boss asking.
Were software a regulated profession like medicine or legal with an ethics body I'd be inclined to agree. Maybe it's time it was, but I suspect stronger consumer protection and treating dark patterns and policies as fraud would be a vastly cheaper route for all concerned.
How would one know one is meeting ethical obligations if they havn't been educated. Password storage, for instance, it's not obvious to many people why plain-text password storage is bad -- it _still_ happens at companies to this very day.
I'm all for people being able to code and do their own work, just like you should be able to build your own shed or house as long as it meets building codes. Maybe we need the equivalent of building codes (except not proprietary). The GDPR and the California Consumer Privacy Act are sort-of the start of that, I think.
I probably wasn't clear. Ethics courses should probably be more common (and embedded in engineering curricula more) although they are certainly available.
My comment about the PE is that it typically requires, for example, a four-year bachelors degree in engineering in addition to other requirements. [1] Thus, moving to a more formal professional structure in this manner would basically exclude career shifters, boot camp grads, self-taught programmers, etc.
I may not have been clear; how do you know you've built a building that fulfills your ethical obligations if you don't know how to determine so? i.e. you're ethically obligated as an engineer to not build something you know (have determined to the best of your knowledge) is unsafe to use, but how do you do that if you don't know how to? (Especially when there are _many_ people who could.)
Basically I'm saying that you can't have (professionally required) ethical obligations without also having the knowledge and ability to fulfill said obligations.
For issues that aren't a matter of life-or-death, like the vast majority of software, yeah, strict licensure is probably overkill and against the spirit hacking.
However, that people aren't licensed EEs doesn't prevent them from tinkering with arduinos or SDRs; they simply can't sell their skills specifically as an electrical engineer.
I think there is some sensible ground between where we are now and not being able to program without a license (which would be a dystopian nightmare). As I mentioned, clear "building codes", better and more comprehensive best practices (e.g. OWASP), and having said things built into contracts or projects designs from the start, not as afterthoughts (i.e. having business take said best practices seriously).
But to the greater point, I guess the ethical principle is don't do things that can put people at risk if you know you don't know what you're doing--much less put people at risk because you just don't care or want to take shortcuts.
If you think you know what you're doing but don't? I'm not sure how an ethics course or even a license is going to help there. Because you think you're doing things safely. Arguably, you're not even being unethical, just incompetent.
Now, a license is supposed to be something of a guarantee of a minimum level of competency. But it's pretty minimal. After all, it basically just means you do have an appropriate degree, have worked in the field under someone for a few years, and have passed some standardized test. All that suggests you know (or once knew) something about the basics, but not a lot more.
ADDED:
>However, that people aren't licensed EEs doesn't prevent them from tinkering with arduinos or SDRs; they simply can't sell their skills specifically as an electrical engineer.
In at least most states in the US, sure they can. (And in the ones that theoretically prohibit you from calling yourself an engineer if unlicensed, that's almost universally ignored.) I've known tons of people who have worked or work as electrical engineers and I'm sure few of them have PEs. You don't need a PE for most jobs. Though it's probably more common with civil engineering.
Programming seems like a job particularly suited for professionalization, simply because programmers have to constantly be learning new things, and that's a thing your local org could provide to keep the lights on rather than relying completely on dues payments. If they were a blanket organization, they could even control supply through raising standards, and could certainly detect wage-fixing collusion easier than individuals.
Having clear guidelines and a place to find instruction that supports those guidelines makes "If you think you know what you're doing but don't?" a pure ethical problem. You either checked or you didn't.
Maybe look to the National Association of Realtors for a framework.
This would require self-reflection by a community who constantly denigrates Facebook and the like for their issues, but happily punch the clock and collect RSUs from the same companies. It's easier to simply blame your superiors.
I think you ended that sentence prematurely.... "..after their boss, marketing team, etc., told them to." I don't think I've ever met a dev who implements these things because they think it's a good idea.
Also, what leverage do you think a developer has in these sorts of situations? Should the developer say they're not willing to write the feature because it's possible customers could exploit it?
Or perhaps it’s clearer if we talk about Jewish people not self-policing Jewish bankers committing fraud, or Catholics with their child abuse, or perhaps Muslims with their bombing? Surely I’ve definitely opposed scamming just as much those people have.
It was a pretty hellish experience trying to get them to change the dates, but in the end, they knew that I had a confirmation with my dates and I had paid, so it really would be fraud to not give me the room. Priceline: only once.
Nothing changed, except the customer perspective.
Communicate that everything worked in a better way.
It makes trip planning (especially internationally) extremely frustrating.
It's shitty but it's not evil.
Of course, I then got the "you left something in your cart" email.
Kind of like how hotels have had to add 'resort fees' to obscure the real price of a hotel room.
If you want to avoid this nonsense, try Daysoft in the UK. Great prices, no prescription needed, and fast shipping to the US.
This is infuriating.
I think I would call them and wait on hold just to give tell them how I'll never shop there again.
It should definitely be illegal.
I just assume any time I'm dealing with a corporation, I'm getting fucked over. That's why I feel no remorse for fucking them over any chance I get.
This is a really interesting point. Even though we should test our assumptions about the reasons for the price increase here against Hanlon's razor [1], it's very easy to _feel_ that we're being taken advantage of, and emotions matter a lot in purchasing decisions.
A savvy competitor might be able to take advantage of this kind of pricing clumsiness. (For example, I recently bought a new car from a "no haggle" dealer for pretty similar reasons... Working with traditional dealers in the U.S. is a very painful experience for many.)
I don't think corporations are stupid at all, they're the collected intelligence of thousands of people being used with the moral and ethical consequences abstracted away to where they can act in horrifying ways and not feel any remorse. This is why probably the hundred or so people involved in denying a cancer patient's claim for insurance payment don't feel bad; none of them made the decision, it's just a process.
So, with that in mind, I don't think Hanlon applies here, if you want a razor, use Occam's. And the theory here that requires the least assumptions is that corporations would sell their own mother if it made them one red cent, so when I hear "priceline changed it from $129 to $149" my prevailing assumption is the low price was to get you in the door, and they've found that a price increase of $20 at the point of sale isn't enough to deter customers. They're probably A/B testing a number of increases to see just how much they can squeeze from people.
So I think that it's obvious that the sort of behavior people are wont to declare is the norm these days has a large cyclical element, and perhaps a secular one as well, but it's not as simple as a universal race to the bottom or we never would have developed the society we have in the first place.
There is a long and disgraceful history of corporations opposing damn near everything and anything that would even remotely upset the status quo that they're used to. Everything from women's rights to equal wages among races to ending child labor to the right to unionize, all the way to health and safety laws, the 40 hour work week, and even basic labor rights like whistle-blowing all receive the same frantic and "THIS IS THE END TIMES IF THIS HAPPENS!" treatment from the corporations and their lobbies.
And it's been wrong every. Single. Time. Somehow, some way, the businesses adapted to giving their workers basic human decency, fair wages, etc. and it was never once at the behest of benevolent corporate overlords but in fact was always at the direct demand of regulatory oversight.
If anything, society has developed by fighting, tooth and nail, at every turn, the wailing and howling corporate opposition to anything even remotely not immediately profitable.
So, I think you have a rather facile understanding of what you are talking about.
I like how you couldn't even attempt to define what I was talking about so you could condescend to me about not understanding it without basically restating the exact way I was using the word. Well done.
When people think "corporation" they think exactly that, large for profit stock corporations. Yes, credit unions are technically corporations. Hell, even LLC is a kind of corporation. You're arguing dictionary versus contextual usage, for reasons I can't quite put together.
And "typically demonized?" How much of modern colonialism and the exploitation of the developing world can be laid directly, unambiguously, at the feet of corporations?
And if something is linked to power and wealth, it's linked to everything bad that people can do with power and wealth, which is everything.
You casually use the term "developing world", but I think that term implies those countries have the goal of becoming more like the US and Europe, and that that's a good thing. Do they need more wealthy and powerful corporations of their own, or is there another path?
Since a person has a body and an intelligence it's also a non-natural aka "artificial" intelligence.
This is not true.
And FYI big corporations are also stupid in many ways.
I'd argue they've operationalized some core things, everything else is wishy washy at best.
The most glaring example is their complicity in hiding "resort fees" for some properties by moving notice from the room selection page (which is misleading to start with) to the summary page under an opaque "mandatory fees" line item.
Regarding car dealers, consider "doc fees" and "destination charges". It's not about feeling we're being taken advantage of - it's about an obvious attempt to mislead.
I don't think that's different from saying "most Elbonians are crooks, therefore I feel no remorse for fucking over Elbonians". Collective punishment isn't a good thing.
"Collective punishment" applied to a corporation is called a boycott and I see zero problem with consumers expressing their preference in this way. Zero.
I think that's not the usual meaning of 'collective punishment'. I believe that term is usually applied when many people are subjected to punishment in retaliation for the deeds of one person (or of only a few), not when one person (or corporation) is subjected to punishment by many people.
I now go directly to the airline website.
But there's also issues where the carriers play games by reserving flights for specific customers. By customer I mean the travel agent or website.
This seems so unnatural to me, programming is not as close to something like law as people make out. If a company decides to implement fraudulent process, it is the responsibility of the company. Whether that is via software or calling people over the phone or speaking to people in person.
If you want to argue that every person involved in implementing "something" should answer to an ethics board, then your argument goes way way beyond programming. Law is a special case, and they use "legal ethics" which do not attempt to encapsulate some universal ethical code for reality, they are to prevent abuse of the imperfect system that is "the law", the closest thing to that in programming is linting or compiler warnings.
Another comment here also mentioned that consequential actions are abstracted in large companies; group diffusion of responsibility gently removes most bad decisions that would normally make a person think remorsefully about what they’ve done.
Having an ethics board would be a top-down solution. The bottom-up, which I’m more fond of, is releasing literature and material to anyone working in tech about how their work could actually affect their end users; we need to help each other develop more self-awareness of the results of our work instead of the breadth of material about the work itself.
Some people think that Google is evil. Others think that Facebook is evil. Yet thousands of programmers and non-programmers work there, many from HN.
Some think all ads are evil. Others think ads are good because they pay for freely accessible content online.
It's complicated.
Individual actions, not so much. Using a user's 2FA phone number as a way to send menial account notifications or as a means for your profile to be found is evil. Scraping all data on public wireless networks when you're photographing the streets is evil. Sending unsolicited messages to all your contacts without telling you is evil. Making it as hard as technically possible to cancel a membership is evil. Tricking users into upgrading their license using blatantly false information (see Turbotax) is evil. That's not at all complicated.
Gross.
You can also have people who are “I dont want to lose my job by making a big a stink.”
I am not sure people would risk their fincial stability over lying unless said lying would also affect them in other ways
This has been going on forever, though. So I doubt we'll do anything about it. And should we?
I mean, how is it really different than saying something is 50% off and leaving the price the same, but just jacking up the list price 100%?
In France, for example: “Le vendeur doit clairement signaler les rabais proposés par rapport à un prix de référence réel. Il est ainsi interdit d'augmenter le prix d'un produit avant la période des soldes, dans le but de faire croire à une offre promotionnelle plus importante qu'elle ne l'est réellement.”[0]
My translation: “The vendor must clearly indicate the discounts offered relative to a real reference price. It is thus forbidden to increase the price of a product before the sales period, with the goal of making people believe that a promotional offer is more significant than it actually is.”
This sort of practice shouldn’t be considered normal. It’s one of the many ways in which low-level corruption is widely legal and accepted in the US.
[0]: French government website explaining sales regulations. https://www.service-public.fr/professionnels-entreprises/vos...
I can't let this stand. Actions were right or wrong before the first regulation was written and before the first judge banged his gavel under an acacia tree. Wrong actions continue to be wrong no matter what laws and judges say.
Lying to make a sale is fraud, whether it's regulated and prosecuted or not.
disable javascript.
Curious, I clicked on it and went to the Priceline site, and watched as a JavaScript animation “rolled” the price from $129 to $149 and alerted me that someone just got the last room. Obviously the whole thing was fake. (Why would they implement such an animation, and how likely is it that someone got the room in those two seconds?)
At this point, it’s not even nudging or dark patterns but just straight out fraud.