Programování

12 etických dilemat hlodajících dnes vývojáře

Svět technologií byl vždy dlouhý a moc nepřemýšlel o důsledcích této síly. Pokud se to podaří postavit, vždy se najde někdo, kdo to postaví, aniž by uvažoval o bezpečnějším a bezpečnějším způsobu, nemluvě o tom, zda by tato technologie měla být vůbec postavena. Software se zapíše. Koho zajímá, kde a jak se používá? To je úkol pro někoho v nějaké rohové kanceláři.

Více znepokojující: I když se kurzy etiky staly základem inženýrských titulů ve fyzickém světě, zůstávají v pedagogice informatiky závratnou anomálií. Přestože software přebírá více než náš život, etické důsledky rozhodnutí učiněných programátory se jen zvětšují. Nyní, když je náš kód v ledničkách, termostatech, kouřových hlásičích a dalších, mohou nesprávné pohyby, nedostatek předvídavosti nebo naprosto pochybné rozhodování pronásledovat lidstvo všude, kam přijde.

[Co je uvnitř a co je v aplikaci dev: 15 horkých programovacích trendů - a 15 chladných. | Ukažte se, kolik toho o vývoji opravdu víte, a to prostřednictvím našeho testu IQ programování, 3. kolo a našeho kvízu programovacích jazyků „Hello, world“. | Pracujte chytřeji, ne tvrději - stáhněte si Průvodce pro přežití vývojářů od, kde najdete všechny tipy a trendy, které programátoři potřebují vědět. | Zůstaňte v kontaktu s nejnovějšími novinkami pro vývojáře pomocí bulletinu Developer World. ]

Následuje několik etických otázek, kterým vývojáři každý den čelí - ať už o tom vědí, nebo ne. Neexistují jednoduché odpovědi, do jisté míry proto, že samotná podstata práce je tak abstraktní. Aby toho nebylo málo, podnikání se stalo tak neoddělitelně spojeno s výpočetní technikou, že je obtížné vyvážit potřeby a motivaci všech investovaných stran ve snaze zabránit tomu, aby se dnešní funkce obchodního případu stala zítřejší orwellovskou noční můrou.

Trik spočívá v přemýšlení nad současným zeitgeistem a předvídání každého budoucího využití toho, co stavíte. Docela jednoduché, hm? Zvažte to méně jako průvodce pro vaše rozhodování a jako výchozí bod pro druh etického rozjímání, který bychom měli dělat jako každodenní součást naší práce.

Etické dilema č. 1: Soubory protokolů - co ukládat a jak s nimi zacházet

Programátoři jsou jako smečky. Vedou záznamy o všem, často proto, že je to jediný způsob, jak ladit systém. Soubory protokolu však také sledují vše, co uživatelé dělají, a ve špatných rukou mohou odhalit fakta, která uživatelé chtějí držet v tajnosti.

Mnoho podniků je založeno na aktivní ochraně souborů protokolu. Některé služby vzdáleného zálohování dokonce slibují, že budou uchovávat další kopie v různých zeměpisných umístěních. Ne každý podnik usiluje o takovou pečlivost. Například Snapchat postavil svoji značku na velmi špatné práci se zálohováním dat, ale její uživatele láká svoboda zapomnětlivého systému.

Pouhá existence souborů protokolu vyvolává několik etických otázek. Jsou dostatečně chráněny? Kdo má přístup? Když řekneme, že zničíme soubory, jsou skutečně zničeny?

Jádro zjišťuje, jaké informace se oplatí uchovávat, vzhledem k rizikům, která z toho plynou, ať už etických nebo jiných. Budoucnost zde komplikuje rovnici. V 60. letech bylo kouření široce přijímáno. Nikdo by si dvakrát nepomyslel na sledování kouření lidí. Dnes však lze znalost něčí kuřácké činnosti využít ke zvýšení sazeb zdravotního pojištění nebo dokonce k popření krytí.

Budoucí obchodní dohody; budoucí vládní nařízení; nepředvídaná, zoufalá potřeba nových toků příjmů - může být nemožné předvídat, jaký zdánlivě nevinný soubor protokolu se v budoucnu stane problematickým, ale je důležité vzít v úvahu etiku toho, jak s protokoly zacházíte.

Etické dilema č. 2: Zda - a jak - přeměnit uživatele na produkty

Je to obnošené rčení startupové éry: Pokud neplatíte za službu, nejste zákazníkem; jsi produkt.

Na internetu existuje „bezplatných“ služeb. Otázka, odkud peníze pocházejí, se ve skutečnosti často odkládá, odkládá se. Prostě budujeme úžasnost, dáváme pozor na metriky přijetí a počítáme s tím, že někdo jiný se postará o špinavou práci při udržování rozsvícených světel serveru. Nejhorší případ, vždy existují reklamy.

Vývojáři musí být předem informováni o tom, kdo bude podporovat jejich práci a odkud budou peníze pocházet. Jakékoli změny by měly být uživatelům sděleny jasným a včasným způsobem, aby nedocházelo k otřesům a zpětnému rázu. Transformace lidí na produkty je etický posun, který nelze brát na lehkou váhu. Temné reklamní dohody, temné reklamní sítě - musíme být opatrní, jak zacházíme s implicitní důvěrou prvních uživatelů.

Etické dilema č. 3: Jak svobodný skutečně chce být obsah?

Řada podniků závisí na poskytování obsahu bez placení těm, kteří jej vytvářejí. Někteří se obracejí a prodávají reklamy nebo dokonce účtují přístup. Tyto podniky často nemohly přežít a nemohly ocenit svůj materiál tak atraktivně, kdyby musely nést svůj spravedlivý podíl na nákladech na vývoj. Vyvíjejí propracované racionalizace týkající se „sdílení“ nebo „spravedlivého využívání“, aby zakryli eticky vratké rozhodnutí.

Vývojáři si musí položit otázku, jak jejich kód podpoří každého v potravinovém řetězci, od tvůrců až po spotřebitele. Chtějí lidé vytvářející obsah distribuovat svou práci tímto způsobem? Jsou rádi, že pracují pouze pro expozici nebo pozornost? Mají spravedlivý podíl na výnosech?

Neuvažování nad těmito otázkami znamená zavírání očí před pirátstvím. Koneckonců, ne všechny informace jen „chtějí být na svobodě“.

Etické dilema č. 4: Jak velká ochrana je dostatečná

Někteří říkají, že vše by mělo být dvakrát šifrováno dvěma různými algoritmy a uzamčeno na pevném disku, který je uložen v trezoru. Bohužel, režie zpomaluje systém na procházení a vývoj 10krát ztěžuje. Aby toho nebylo málo, dojde-li k převrácení jednoho bitu nebo k chybné části algoritmu, dojde ke ztrátě všech dat, protože šifrování nelze vrátit zpět.

Jiní nechtějí kvůli ochraně dat zvednout prst. Další tým může přidat speciální šifrování později, pokud je to nutné, říkají vývojáři. Nebo by mohli namítnout, že na tom není nic citlivého. Týmy, které tyto povinnosti ignorují, jsou obvykle schopné generovat spoustu dalšího kódu a vytvářet hromady úžasných funkcí, po kterých lidé touží. Koho zajímá, jestli jsou v bezpečí?

Neexistuje jednoduchá odpověď na to, kolik ochrany je třeba použít. Jsou jen dohady. Více je vždy lepší - dokud nedojde ke ztrátě dat nebo k odeslání produktu.

Etické dilema č. 5: Opravit chybu nebo neopravit chybu?

Je dost těžké vyjednávat o etických hejnech, když zahrnují aktivní rozhodnutí, ale je to ještě těžší, když lze problém odsunout stranou a označit za chybu, která bude nakonec odstraněna. Jak tvrdě bychom měli pracovat na vyřešení problémů, které nějak vklouzly do běžícího kódu? Vyhodíme všechno? Jak se rozhodneme, zda je chyba dostatečně závažná na to, aby byla opravena?

Isaac Asimov se s tímto problémem setkal už dávno, když napsal své robotické zákony a vložil jeden, který robotovi zakazuje nic nedělat, pokud by jeho nečinností došlo k poškození člověka. Samozřejmě jeho roboti měli pozitronické mozky, které okamžitě viděly všechny aspekty problému a vyřešily je. Otázky pro vývojáře jsou tak komplikované, že mnoho chyb je ignorováno a neopraveno, protože na ně nikdo nechce ani pomyslet.

Může společnost upřednostnit seznam spravedlivě? Jsou někteří zákazníci důležitější než ostatní? Může programátor přehrávat oblíbené položky výběrem jedné chyby před druhou? O tom je ještě obtížnější uvažovat, když si uvědomíte, že je těžké předvídat, kolik škody způsobí nějaká chyba.

Etické dilema č. 6: Kolik kódovat - nebo kompromitovat - aby se zabránilo zneužití

Původní webová kamera Apple přišla s chytrým mechanickým doplňkem, fyzickou závěrkou, která blokovala objektiv, když byl vypnutý. Uzávěr a spínač byly spojeny dohromady; nebylo možné použít fotoaparát, aniž byste sami otevřeli závěrku.

Některé z novějších kamer jsou vybaveny LED, která má svítit, když je kamera aktivována. Obvykle to funguje, ale každý, kdo naprogramoval počítač, ví, že v kódu může být místo, kde lze odpojit kameru a LED. Pokud to lze najít, lze z kamery udělat špionážní zařízení.

Výzvou pro inženýra je předvídat zneužití a navrhnout, aby se tomu zabránilo. Uzávěr Apple je jedním ze zřejmých a účinných příkladů toho, jak to lze elegantně provést. Když jsem pracoval na knize o podvádění na SAT, potkal jsem jednoho hackera, který do své kalkulačky přidával síťový software. Po nějaké úvaze se rozhodl podporovat pouze kabelové protokoly, protože se bál, že děti do zkoušky vklouznou kalkulačku s Wi-Fi. Tím, že podporoval pouze kabelové protokoly, zajistil, aby kdokoli v testu musel běžet kabelem ke stroji svého souseda. Nenáviděl přeskakování bezdrátových protokolů, ale cítil, že riziko zneužití je příliš vysoké.

Etické dilema č. 7: Jak daleko bránit zákazníky před požadavky na data

Pokud shromažďujete data, je to sázka na jistotu, že vaše organizace bude jednou chycena mezi obsluhou vašich zákazníků a obsluhou vlády. Žádosti o dodání údajů právnickým osobám jsou stále častější a stále více organizací pro software a služby nechává uvažovat o tom, do jaké míry před zákonem zradí soukromí svých zákazníků. Tyto žádosti můžete prozkoumat a dokonce si najmout vlastní právníky, kteří budou zpochybňovat, zda jsou skutečně zákonní, ale realita je taková, že soudy budou o zákonnosti diskutovat dlouho poté, co dojde vaše financování.

Neexistují žádná snadná řešení. Některé společnosti se rozhodnou spíše opustit podnikání, než lhát svým zákazníkům. Jiní se snaží být otevřenější ohledně požadavků, které se vláda často snaží zakázat.

Etické dilema č. 8: Jak se vypořádat s mezinárodní povahou internetu

Internet funguje všude a vyhýbá se mnoha tradičním překážkám na hranicích. To může být recept na legální bolesti hlavy, když jsou zákazníci A a B v různých zemích. To je jen začátek, protože servery C a D jsou často také ve zcela odlišných zemích.

To vede ke zjevným etickým problémům. Například Evropa má přísné zákony o uchovávání osobních údajů a považuje porušení soukromí za etická selhání. Jiné země trvají na tom, aby společnosti vedly bohaté záznamy o jednáních. Čí zákony by měla společnost dodržovat, když jsou zákazníci v různých zemích? Když jsou data v různých krajích? Když jsou data přenášena přes mezinárodní linky?

Držet krok s každou legální událostí může být Herculean, takže mnoho organizací jistě láká pohřbívat hlavy do písku.

Etické dilema č. 9: Kolik vrátit open source

Každý ví, že open source je zdarma. Neplatíte nic a díky tomu je to tak úžasné a složité. Ale ne každý uvažuje o etických problémech, které s používáním tohoto bezplatného kódu přicházejí. Všechny balíčky open source přicházejí s licencemi a musíte je dodržovat.

Některé licence nevyžadují mnoho obětí. Licence, jako je licence Apache nebo MIT, vyžadují potvrzení a to je vše. Jiné licence, například GNU General Public License, vás však požádají o sdílení všech svých vylepšení.

Analýza licencí na otevřené zdroje může představovat etické výzvy. Jeden manažer z velké veřejné společnosti mi řekl: „My nedistribuujeme MySQL, takže nikomu nic nedlužíme.“ Klíčoval k klauzuli, která byla napsána před desítkami let a která vázala povinnosti licence na akt přerozdělování softwaru. Společnost pro své webové aplikace používala MySQL, takže měl pocit, že to může trvat i bez vrácení peněz.

Neexistují jednoduché způsoby, jak měřit etické závazky, a mnoho programátorů promarnilo mnoho stisků kláves tím, že myslí, co to znamená. Celé úsilí se přesto zastaví, pokud lidé přestanou dávat. Dobrou zprávou je, že je v nejlepším zájmu každého přispět, protože každý chce, aby software zůstal kompatibilní s jeho používáním.

Etické dilema č. 10: Kolik monitorování je skutečně zaručeno

Možná se váš šéf chce ujistit, že zákazníci neodtrhnou společnost. Možná se chcete ujistit, že za vaši práci dostanete zaplaceno. Možná nějaký strašidelný člověk z vlády říká, že musíte chytit zadní vrátka, abyste chytili padouchy. V každém případě je argument plný ujištění, že zadní vrátka budou použita, stejně jako Supermanovy síly, pouze k podpoře pravdy a spravedlnosti. Nebude použit proti politickým nepřátelům nebo těm méně šťastným. Nebude se prodávat despotickým režimům.

Ale co když padouchy objeví skryté dveře a přijdou na to, jak je použít sami? Co když jsou vaše zadní vrátka používána k podpoře nepravd a nespravedlností? Váš kodex nemůže sám o sobě činit etická rozhodnutí. To je vaše práce.

Etické dilema č. 11: Jak by měl kód skutečně fungovat

Jistě, minimální výpočet, jednoduchá datová struktura a přístup hrubou silou fungují dobře v ukázce, když jsou problémy malé. Uživatelé vyzkouší kód a řeknou: „Bože, toto funguje rychle.“ O několik měsíců později, když bylo do systému načteno dostatek dat, se objeví slabé stránky levného algoritmu a kód zpomalí procházení.