Mikä on XY-ongelma?

Mikä on XY-ongelma?

Kuinka tiedän kysymyksiä esittäessäni, kun putoan siihen? Kuinka voin välttää sitä?

Palaa usein kysyttyihin kysymyksiin

Kommentit

  • Katso PerlMonks -viesti samasta aiheesta.
  • surullinen esimerkki XY-ongelmasta: stackoverflow.com/questions/2691018/… vastuuvapauslauseke I ’ m puolueellinen siellä väittäen, että X havaitaan Y
  • Venäjänkielinen käännös osoitteelle ru.stackoverflow.com
  • Siellä on ’ myös Japaninkielinen käännös ja.stackoverflow.com-sivustolle
  • Kontrasti ” -kehyshaasteiden ” kanssa. lannistettu tai kielletty useissa SE: ssä sivustot: interpersonal.meta.stackexchange.com/questions/1495/…
  • Asiaankuuluva osa kohdassa ” Kuinka esittää kysymyksiä älykkäästi ”.
  • @ Sridhar-Sarnobat Vastaavasti X → Y-kysymys olisi jotain, ” Kuinka voidaan estää solutyyppien kasvu xyz vähentämällä proteiinitasoja tuv potilaan ’ verenkierrossa? ” koska luulet se on ainoa mahdollinen syöpälääke.
  • Hmmmm, joten ’ sanot, että tämä on liian tarkka kysymys, ja minun on lisättävä, että ” todellinen ” tavoitteena on parantaa syöpää. Jos on, oikeudenmukainen asia. Vaikka päinvastoin ongelma on, että kysymykset suljetaan liian laaja-alaisiksi.
  • Voimmeko myöntää, että tämä on tämän ongelman pahin mahdollinen nimi? Nimellä ei ole kirjaimellisesti mitään tekemistä sen kanssa, mitä se kuvaa. Kuten jos joku sanoo jotain ” laita kärry hevosen eteen ”, vaikka he ’ en ole koskaan kuullut sitä ennen kuin heillä on ainakin vihje siitä, että jokin on taaksepäin (hevoset vetävät, eivät työnnä). Minulla ei kuitenkaan ole hyviä ideoita vaihtoehtoisesta nimestä.
  • Joskus voi olla hyödyllistä tarkastella asioita myös laajemmasta asiayhteydestä ja pohtia, mitä ei.

div id = ”e8547d0ecd”> eteneminen / tuloksena ajaminen on järkevää ratkaisua

vastaus

Mikä se on?

XY -ongelma on kysyt yritetystä ratkaisustasi eikä todellisesta ongelmastasi.

Eli yrität ratkaista ongelman X , ja luulet, että ratkaisu Y toimisi, mutta sen sijaan, että kysyisit X : stä, kun törmäät vaikeuksiin, kysyt kysymyksestä: Y.

Ongelma

Tämä voi aiheuttaa turhautumista ihmisille, jotka yrittävät auttaa sinua ratkaisemaan ongelman, koska siihen mennessä, kun kysyt siitä, ratkaisulla, johon tarvitset apua, ei ehkä ole mitään ilmeisiä yhteyksiä ongelmaan, jonka yrität ratkaista.

Kuinka välttää

Välttääksesi tämän ansaan joutumisen, sisällytä aina tietoa laajemmasta kuvasta yhdessä mahdollisten ratkaisujen kanssa. Jos joku pyytää lisätietoja tai erityisesti tarkempaa kysymystä, anna yksityiskohdat. Jos on olemassa muita ratkaisuja, joita uskot ehdotettaviksi ja jotka olet jo sulkenut pois, älä yritä välttää niiden uudelleen käsittelyä – ilmoita sen sijaan miksi olet sulkenut ne pois, koska tämä antaa lisätietoja vaatimuksistasi ja auttaa muita tarjoamaan parempia vastauksia.

Esimerkki

Viimeaikainen IRC-keskustelu havainnollistamiseksi:

K: Onko funktio palauttaa merkkijono kahden erottimen välillä?

B: En ymmärrä mitä tarkoitat, mutta epäilen, onko siinä jo toiminto

C: Jaa ja leikkaa

D: Myös osio

K: Yritin osiota
K: Yritin käyttää sisäänrakennettuja numeroita jotain tällaista merkkijonossa ” attribute1: 50.223, attribute2: 442.1 ”

D: Miksi ei vain jäsentää merkkijonoa?

K: Luulin, että jäsentämisessä voi olla joitain rakennettuja

D: paria = [x.strip () x: lle s.split-tiedostossa (”, ”)]; attribs = {k: v x: lle pareittain k: lle, v [x.split (”: ”)]}
D: Kirjastoja on vähän, mutta yksinkertaistetut muodot ovat riittävän helppoja – jos et välitä virheistä käsittely
D: Lähteen vaihtaminen käyttämään tunnettua muotoa, esim. json tai yaml, suositellaan aina kun mahdollista

K: Tämä koodi tulee itse asiassa HTML-koodista
K: Mutta en tiedä kuinka jäsentää Javascriptiä HTMLParserilla tai mitä sitä kutsutaan

D: Onko se vain upotettu HTML-koodiin vai johonkin sekoitettuun HTML-versioon?

K: Se on upotettu HTML-koodiin

D: Jos se on JavaScripti (eli lukuun ottamatta puuttuvia ulkotukia), JSON voi todennäköisesti jäsentää sen

Q: Kiitos

D: En sanonut sitä nimenomaisesti: JSON vain jäsentää tietorakenteita, ei JS-koodia

Q: Tarvitaan vain jäsennelty tietorakenne

Ongelma on oikeastaan siitä, miten jäsennetään JavaScript-tietorakenteita, ei löydy ” merkkijonoa kahden erottimen väliltä ”, mutta todelliseen ongelmaan pääseminen vie melko vähän aikaa ja intuitiota.

Tämä on helpompaa tehdä täysin vuorovaikutteisessa chatissa (tilasta riippumatta), mutta SE-sivustolla , jossa kiillotat viestiä hieman, postitat sen ja sinulla on sitten vähintään 5–30 minuuttia tai enemmän ennen palautetta, se todella auttaa pääsemään oikeaan suuntaan alusta alkaen.

Kommentit

  • IMO XY -ongelmat ovat joskus hyödyllisiä, koska vastaukset voivat auttaa kysyjää ymmärtämään, miksi heidän ratkaisunsa ei toimisi ’, ja ymmärtämään paremmin alkuperäistä ongelma.
  • Helpoin tapa päästä todelliseen ongelmaan on yleensä kysyä miksi viisi kertaa.
  • Vaikka aloitat Y: llä X: n sijaan, sinulla saattaa olla kysyä miksi 10 kertaa (tai enemmän, käytä 5 miksi kaikilla tasoilla?). 🙂
  • Miksi Y – että ’ on kysymys, jonka haluat esittää
  • Ollaksemme oikeudenmukaisia, kysyjät kysyvät usein X: stä ja vastaus on ” että ’ on liikaa, jaa se pieneen esimerkkiin ” ja niin juliste eristää yrityksensä Y-ratkaisun ja kaikki menettävät näköpiirinsä alkuperäisen ongelman.
  • Jotkut, joihin olet jumissa Y: n kanssa. Ensimmäisessä työssäni minun piti muokata verkkokauppaa. Koodipohja oli mätä sekoitus html PHP ja js. Ongelmia voitiin korjata kahdella tavalla: Tee koko asia uudelleen (pomo hylkäsi) lisää nauhaa. SO ei oikeastaan auttanut minua siellä. ” Kuinka voit? ” ” Miksi tekisit niin? ” ” Koska minun on ” ” mikä on Kyllä / Älä tee tätä / miksi käytät {antipattern}? ” ” Koska minun on ”
  • @OliverA. Sitten osasta kysymystä tulee selitys sille, miksi sinun on tehtävä Y. ” Minun täytyy tehdä Y, koska legacy / boss / old framework ” silloin kysymykseen on helpompi vastata, ja se on arvokkaampi kaikille.
  • @LegoStormtroopr Paitsi monet ihmiset eivät ymmärrä sitä ’. He eivät ’ ymmärrä, että joskus sinulla ei ole ’ et ole ylellisyyttä valita oikeaa lähestymistapaa ja vain sinulla on tukemaan olemassa olevaa koodia, ja kysymys on suljettu liian kapeaksi tai jotain …
  • Yritin vakaasti yrittää kiehuttaa kaikki kysymykseni yhtä suureksi osaksi ” Y ”. Minulla ei ole kiinnostusta täsmentää kysymykseni koko laajuutta (varsinkin kun työskentelen suljetun lähdekoodin ohjelmistojen parissa omalla työlleni), ja minusta tuntuu (lukuun ottamatta niitä, jotka vaativat ketjun kulkemista ylöspäin ” miksi? miksi? miksi? ”) Voin saada vastauksen nopeammin kapseloimalla kysymykseni pois kaikesta kontekstista.
  • Se riippuu kysyjän ’ ongelmatilasta.Olen samaa mieltä n00n: n kanssa, niille, jotka ovat kokeneet vaihtoehdoista, he ovat jo saattaneet sulkea pois kaikki mahdolliset X ’ s, ja nyt X on vakio, ja he haluavat vain ratkaista Y: lle. Kysymyksestä on vähennettävä, että sinun on mentävä läpi kaikki mahdolliset X ’ s, jotka ’ olet jo sulkenut pois, ja kaivaa toimistopolitiikkaan tai olemassa olevaan järjestelmäarkkitehtuuriin. Joku vähemmän kokenut voi hyötyä siitä, että hänellä on muita ’ -arviointivaihtoehtoja X ’ ja ehdotetaan, että he harkitsevat tätä edellytystä uudelleen.
  • Vasta-esimerkki: Me: Onko olemassa keino muuttaa nykyistä hakemistoa Java-ohjelmassa? Muu: Javassa sinun ei tarvitse tehdä sitä ’. Mitä haluat tehdä? Minä: (huokaus) OK, minulla on suoritettava purkki ohjelmalle, joka kuuntelee porttia ja vaihtaa viestejä. Purkki istuu normaalisti x / bin ja kokoonpano x / conf. Joten, ohjelma lukee kokoonpanonsa osoitteesta ../conf. Haluan nyt suorittaa sen tomcat-palvelimessa kutsumalla ohjelman ’ päämenetelmää itse. Mutta minulla ei ole hallintaa palvelimen ’ kotihakemistossa ja ” ../conf” ei ole hyväksyttävä paikka.
  • (jatkuu) Joten ihmettelen, onko mahdollista muuttaa kotihakemistoa yhdelle säikeelle. Muu: Voi, näen. No, et voi ’ tehdä sitä Javalla. Minä: Miksi et voinut ’ t kertoa minulle sitä aiemmin? – Siinä tapauksessa kysyin kysymykseltä X, ja minulle vastattiin kysymykseen Y (kuinka käyttää tiedostoja Java-sovelluksessa).
  • En yleensä halua ihmisten ratkaisevan ongelmaa, vain vastaan kysymykseeni. Se voi olla melko ärsyttävää, kun ihmiset yrittävät auttaa ensimmäisten sijasta jälkimmäisten kanssa.
  • @NoctisSkytower Mutta useimmiten jokainen vastaus riippuu kontekstista … K: ” Kuinka voin tehdä X: n C: ssä? ” A: ” On olemassa 20 erilaista tapaa, joilla jokaisella on omat sudenkuoppansa ja käyttötarkoituksensa. Voit tutkia niitä itse ja tehdä kaikki muiden tekemät virheet, tai voit kertoa meille, minkä ongelman haluat ratkaista tällä tavalla, ja voimme antaa sinulle parhaan lähestymistavan ! ” Q: ” En halua ’ et halua luento antaa minulle vastauksen, en välitä ’ minusta! ” – A: ” -.- hei. ”
  • Ei-ohjelmoivat SE-sivustot linkittävät tähän vastaukseen selittääkseen XY-ongelman käsitteen. Yleisempi (ei-ohjelmoitava) esimerkki olisi vielä hyödyllisempi.

Vastaa

XY-ongelma, kuten sitä joskus kutsutaan, on henkinen lohko, joka johtaa valtavaan määrään hukkaan menevää aikaa ja energiaa sekä apua pyytävien että avun antajien keskuudessa. Se menee usein näin:

  • Käyttäjä haluaa tehdä X: n.
  • Käyttäjä ei osaa tehdä X: tä, mutta luulee voivansa etsiä ratkaisua, jos he voivat vain hallita Y: n tekemistä.
  • Käyttäjä ei tiedä myöskään Y: n tekemistä.
  • Käyttäjä pyytää apua Y: n suhteen.
  • Muut yrittävät auta käyttäjää Y: n kanssa, mutta ovat hämmentyneitä, koska Y vaikuttaa oudolta ongelmalta, jonka haluat ratkaista.
  • Paljon vuorovaikutusta ja hukkaan käytettyä aikaa käy lopulta selväksi, että käyttäjä todella haluaa apua X: n kanssa ja että Y ei ollut edes sopiva ratkaisu X: lle.

Ongelma ilmenee, kun ihmiset saavat ajattelutapansa kiinni yhdestä lähestymistavasta eivätkä kykene ottamaan askelta taaksepäin. Pysyvät avoimina uuden hankkimiseksi. Katsokaa isompaa kuvaa, nämä ihmiset saattavat löytää tiensä takaisin X: ään ja etsiä vaihtoehtoisia ratkaisuja.

Katso ” XyProblem ” lisätietoja.

kommentit

  • mielestäni tätä vastausta tarvitaan lisäys selitykseen. Luin yllä mainitun, yritin miettiä nykyistä ongelmaa (onko kyseessä X- tai Y-kysymys), ja kun luin tätä kommenttia, sain ” aha ” hetki ymmärtääkseni, että jos olisin lähettänyt kysymykseni, olisin kysynyt Y: stä X: stä. Tilanteeni toistaminen voisi olla henkinen lohko, joka keskittyy siihen, miten ratkaisen ongelma pikemminkin kuin selvän ongelman ilmoittaminen, jonka haluan ratkaista, on erittäin hyödyllinen.
  • Mielestäni se on käyttäjien ’ vastuulla. Olen ’ tavannut monta kertaa ongelman, että halusin ratkaista ongelman X, ja kaikki ehdottivat Y: tä ja Z: tä. Mutta jos olisin halunnut ratkaisun Y: lle tai Z: lle, tämä on mitä olin pyytänyt. Minusta tämä on hieman kiusallista, ei vain siksi, että saamani vastaukset eivät kuulu kysymykseeni, vaan myös siksi, että tunnen itseni aliarvioiduksi.Sen vuoksi minulta puuttuu tietoisesti kaikki yksityiskohdat, jotka voisivat johtaa harhaan vastaajiani tähän huonoon tapaan.
  • Tämä vastaus muistuttaa minua Maslowin ’ vasarasta. li> En ole samaa mieltä vastauksesta. Jos sinulla on ongelma X ja ilmoitat ratkaisuksi Y ja pyydät apua Y: lle, se, mitä ’ teet, on (todennäköisesti virheellisen) ymmärryksesi ongelmasta. Kun haluan auttaa jotakuta, haluan tietää paitsi hänen X-kysymyksensä myös sen, miten he ajattelevat (Y). Joskus ’ on tärkeämpää opettaa miten ajattelemaan kuin opettaa mitä ajattelemaan. Ja XY-ongelma antaa minulle tärkeitä vihjeitä siitä, miten lähestyä juuri tätä.
  • Itse asiassa XY-ongelmien varoittaminen on erityisen epäystävällistä. Ja (valita, oi, yksi): pinonsiirto on ollut tältä osin kauhistuttavaa viime vuosina. Olen ’ pidän kiinni siitä, että muut ohjelmoijakeskeiset SE-sivustot eivät ole niin korjaamattomia kuin he tekivät.
  • @ tgm1024 En ymmärrä kommenttisi aivan oikein ’. XY-ongelma ei ole, kun käyttäjä sisällyttää ajatteluprosessin antamalla kysymykseen sekä X että Y, se ’ s, kun käyttäjä ei ’ t sisältävät heidän ajatteluprosessinsa ja antaa vain Y , koska varsinkin siinä tapauksessa ’ on vaikea opettaa heitä ajattelemaan .
  • @JiK, joko tunnistat sen XY-ongelmaksi tai et ’ t. Jos teet niin, ’ tiedät hyvin X: n. Jos et ’ t, niin ’ älä parempi olettaa, mikä X on, koska esitetty Y voi itse asiassa olla pätevästi muodostettu kysymys .
  • Käyttäjä ei ’ ei tiedä miten tehdä X, mutta luulee voivansa etsiä tiensä ratkaisuun, jos he vain onnistuvat tekemään Y: n. Kuulostaa siltä, miten kaikki ongelmat ratkaistaan minulle: P Kaikkien äärimmäisissä asioissa jokaisen tulisi aloittaa kysymyksensä sanalla ”. Haluan parantaa elämääni / maailmaa jollakin tavalla. Olen syntynyt 19: ssä … ”
  • Joskus tämä ’ on melkein oikeassa. Monta vuotta sitten, kun Oracle DBA -yritykseni kääntyi minuun (hänen sysadminiinsa) ja sanoi väsyneesti ” Jotenkin jonnekin jokin on mennyt pieleen ” Tein itselleni t-paidan. Se on monin tavoin täydellinen virheraportti koska se ei tee ’ mitään oletuksia , jotka minun on sitten kumottava: se alkaa hänen ongelman ja antaa minun tarkastella hänen havaintojaan ja hänen odotuksiaan nähdäksesi, missä todellinen ristiriita todellisuuden kanssa voi olla.
  • @ tgm1024 Se ’ s siitä, kuinka vältetään tuhlaamasta paljon aikaa sekä kysyjälle että vastaajalle. Jos tiedät mahdollisesti voimassa olevan Y: n varoituksista, sinun tulisi sisällyttää nämä tiedot kysymykseesi. X: n lisäpyyntöä vältetään. Jos et ’ tiedä, varoitukset, jotka pyytävät X: tä, ovat todennäköisesti juuri sitä mitä tarvitset, koska ratkaisu Y: lle ei auta sinua kovin paljon. Ei olisi epäystävällistä, jos ei osoittaisi heitä oikeaan ratkaisuun ja jätettäisiin heikko ratkaisu.
  • @trixn, en ’ en ole varma, mihin olemme olla eri mieltä. — > Jos sinulla on kuitenkin ongelma X ja ilmoitat ratkaisuksi Y ja pyydät apua Y: lle, mitä ’ uudelleen tekeminen on sinun (todennäköisesti virheellisen) ymmärryksesi ongelmasta. Kun haluan auttaa jotakuta, haluan tietää paitsi hänen X-kysymyksensä, mutta kuinka he ajattelevat tällä hetkellä (Y). Joskus ’ on tärkeämpää opettaa ajattelemista kuin opettaa mitä ajatella. Ja heidän sopiva ja arvokas XY -ongelmansa antaa minulle tärkeitä vihjeitä siitä, miten suhtautua juuri siihen.
  • @ tgm1024 Se on kirjaimellisesti se, mitä jo sanoitte ennen. Huomautukseni koski lausuntoa, jonka mukaan XY-ongelmien varoittaminen on erityisen epäystävällistä. Tietysti ’ on myös kysymys siitä, miten ilmaisette epäilynne siitä, että kysymys saattaa olla XY-ongelma. Mutta yleisesti ottaen en ole ’ samaa mieltä siitä, että osoittaminen kysyjälle kohti ei ole epäystävällistä, koska se voi itse asiassa olla sitä, mitä hän todella tarvitsee. Siksi ’ syy, miksi yleensä kysyn lisätietoja käyttötapauksesta. Jos Y on helposti vastattava kysymys, vastaan siihen joka tapauksessa huomautuksella, että se ei välttämättä ole toivottu ratkaisu.
  • @trixn, tietysti voit osoittaa jonkun oikeaan suuntaan, ja tietysti voit ohjata jotakuta kohti uutta tapaa tarkastella jotain.Aloitan kuitenkin käsityksestä, että kysymyksenmuodostus itse on jotenkin väärä, mihin olen ’ m vahvasti ristiriidassa. Katso esimerkiksi hyperbolinen lainaus Jonathan Bennin 71: ssä äänestämässä vastauksessa: ” Erityisesti Q & A: lle, XY-ongelma johtuu siitä, että se on turhauttavaa kaikille osapuolille. ” Se on yksinkertaisesti hölynpölyä. XY-kysymys on arvokas. Se ’ on turhauttavaa vain ihmisille, jotka haluavat sen olevan niin.
  • Suuri selitys. RE: ” ja että Y ei ollut ’ edes sopivaa ratkaisua X ”, Uskon, että joskus Y voi olla ratkaisu X: lle. Mutta se ei ole luonnollinen tai käytännöllinen ratkaisu.
  • Imo tämän pitäisi olla ylhäällä. Ei ylimmässä vastauksessa loukkaavaa, mutta ensin luin sen ja se sai minut raaputtamaan päätäni ja sitten tulin alas katsomaan tätä, ja vastaus tuli minulle kristallinkirkkaaksi.

Vastaus

XY-ongelma näyttää olevan Einstellung-efektin osajoukko, jossa ongelmanratkaisija jumittuu tiettyyn ratkaisuun eikä pysty palata henkisesti nähdäksesi ylivoimaiset ratkaisut. Tämä psykologinen ilmiö vaikuttaa kaikkiin, sekä aloittelijoihin että asiantuntijoihin.

Miksi ensimmäinen ideasi voi sokeuttaa sinut paremmaksi ”, selitetään esimerkki shakista, jossa henkilö voittaa viiden siirron tukahdutetun kaverin kanssa yhdessä pelissä. Seuraavassa pelissä sama pelaaja ei näe nopeampaa 3-siirrosta kaveria, koska he ovat jumissa 5-liikkeen perämiehen ajatuksen kanssa.

Erityisesti Q & A, XY-ongelman tuhoisuus johtuu siitä, että se on turhauttavaa kaikille asianosaisille:

  1. Kysyjä esittää väärän kysymyksen (mikä liittyy heidän yritettyyn ratkaisuun eikä alkuperäiseen ongelmaan), ja sen jälkeen on vaikea selvittää kysymystä, koska he ovat jumissa omassa ratkaisussaan. Ehdotetut vastaukset eivät ole tyydyttäviä, koska ne eivät käsittele, miten kirjoittajan ratkaisu toteutetaan.
  2. Kysymykseen vastaavien ihmisten mielestä se on turhauttavaa, koska ehdotetulla ratkaisulla ei ole heille järkeä, koska he lähestyvät ongelma uudesta näkökulmasta, eikä Einstellung-vaikutus vaikuta niihin (oletettavasti), ja heidän on vaikea saada alkuperäinen julistaja selvittämään kysymystään.

Kommentit

  • Mielenkiintoista, miten Einstellung effect kuvaus perustuu ilmeiseen virheeseen. Luchin kokeili, kuinka ihmiset päättelivät ongelman hänen epätäydellisestä ja epäselvästä kuvauksestaan (oliko hän kysyy optimointia viiveelle tai optimointia läpivirtaukselle?). Hän kuitenkin petteli itsensä harhauttamalla, että hän väitti silti kokeilevan ” miten ihmiset löytävät ratkaisuja ”. Se on ehkä viitteellinen asia. Luchin oli niin keskittynyt kiinnostukseensa, että hän ei huomannut, kun hän käänsi hyvin erilaisen ongelman.
  • Lähteeni oli Scientific American, jos vastustat, voit ottaa sen mukaan heidän kanssaan;)
  • Mielestäni parempi esimerkki shakista olisi jotain sellaista, että pelaaja keskittyy yrittämään saavuttaa monimutkaisen maton riittämättömällä materiaalilla, unohtamatta sitä tosiasiaa, että heillä on sotilas, joka voisi kuningata.

Vastaus

Puuttuva neliöpalapeli -ongelma on hyvä esimerkki. Se kuvaa yksinkertaista ja yleismaailmallista ongelmaa / kysymystä / ratkaisuprosessia, jossa ”jokin illuusio” aiheuttaa komplikaatioita.

On itsestään selvää ongelmaa — 1 × Yksi reikä syntyy toisesta kuvasta —, mutta ratkaisu on ilmeinen vasta sen jälkeen kun tiedämme (kuten Kolumbuksen muna) … Kaikki ihmiset, asiantuntijat ja muut kuin asiantuntijat, hyväksy ongelman esiintyminen.

kirjoita kuvan kuvaus tähän

  • tavallinen käyttäjä : ajattelee, että ”on olemassa kaksi vastaavaa lukua,” kokonaiskolmiot ”täydellisessä 13 × 5-ruudukossa .. . ”, seuraa kysymystä:

    • ongelma Y : ”Miksi toisessa vastaavassa kolmiossa on reikä?” .
  • asiantuntijakäyttäjä : ajattele jotain ”hups” , ne ovat samankaltaisia , mutta eivät ”täysin vastaavia” lukuja, jotka seuraavat kysymystä:

    • ongelma X : ”Kuinka osoittaa, etteivät ne ole täydellisiä vastaavia?” .

Taitava geometria-asiantuntija ajattelee ”samankaltaisia geometrioita, jotka eivät ole täydellisiä vastaavia”.

Tavallinen käyttäjä ajattelee virheellisesti täsmällisen kongruenssin suhteen. Joten väärän hypoteesin , tuota huonoja Y kysymyksiä.


” XY-ongelma ”erikoistumisena” väärään hypoteesikäyttäytymiseen ”

Haluat ratkaista todellisen kysymyksen- X ja ajattelet Y -kontekstissa ja yrität käyttää kysymystä- Y. Kysymyksen sijaan kontekstista X kysyt asiayhteydestä Y.
(kuten @Gnome huomasi yllä , mutta toisin sanoen)

Joten, ”XY-ongelma” on vain toinen (erikoistuneempi) termi väärän työhypoteesin käyttö .

Kommentit

  • Tarkista aliarvostukseni. muokatin erottaakseni henkilökohtaisen mielipiteeni tästä yleisemmästä ja kenties mielenkiintoisemmasta lomakkeesta div id = ”f779161cb9”>

mikä on ”.

  • saan vastauksestasi merkityksen ja sinä ’ uudelleen se, joka vastaa kysymykseen animoidulla kuvituksella. Jos maineeni (tässä meta-yhteisössä) sallii minun äänestää, äänestän tämän.
  • Tämä vastaus kuvaa tyypillistä käyttötapaus , kun ” ajattelu-pakollinen ohjelmoija ” kysyy toiminnallisesta kielestä … Ehdotettu ratkaisu : kysy ylätasolla.
  • anteeksi, miksi toisessa vastaavassa kolmiossa on reikä?
  • Hei @KorayTugay, kysymyksesi ei kuulu soveltamisalaan (se on klassinen ongelma, joten voit käyttää klassisia selityksiä, katso Wikipedia-linkkini!). PS: Haluan nähdä reiän olevan erona , koska kolmiot ovat samanlaisia ja niillä on lähes sama alue, mutta ei aivan sama alue, joten voit rakentaa reikä geometrisen eron pienestä kaistalesta.
  • @koraytugay tarkastele kohtaa, jossa punaiset ja siniset kolmiot koskettavat, kun animaatio nollataan. käy selväksi, että sininen kolmio on ” jyrkempi ” kuin punainen, joten kun sininen kolmio on alareunassa, hypotenuus on ” kupera ” ja kun yläosassa se on ” kovera ”. Tämä ” hypotenuusan taipuminen ” aiheuttaa yhden neliön ’ eron arvon alueella
  • vastaus

    XY-ongelman välttäminen

    Väitän, että et voi välttää sitä. Ei vain heittämällä ohjelmavaatimuksiasi SO: lle ja pyytämällä heitä tekemään suunnittelusi puolestasi ( ei suositella) .

    Väitän tämän, koska kaikkien ohjelmistojen suunnitteluprosessi perustuu aloitusvaatimuksiin ”A”. Sieltä sanot ”Voin saavuttaa A, jos teen B ja C ”. Sieltä sanot” Voin saavuttaa B: n, jos teen D ja E, ja voin saavuttaa C, jos teen F ja G ”. Ja se jatkuu siihen pisteeseen, että sanomme, että” Voin saavuttaa X, jos teen Y ”. Teemme tämän yleensä niin nopeasti, ettemme edes ajattele prosessia.

    Joten XY-ongelman suurin ongelma on, että Y ei ole mahdollinen, mutta et tiedä kuinka paljon suunnittelu rentoutua g et takaisin X: ään, mikä on mahdollista. Et yleensä edes tiedä, että Y on mahdoton kyselemättä. Et tiedä mitä et tiedä. Siksi se on väistämätöntä


    Kysymysten esittäminen, jos saatat joutua XY-ryhmään

    Parasta, mitä voit tehdä XY-ongelman suhteen, on vartiointi sitä vastaan kysyttäessä. Kysy silti sama kysymys, mutta anna mahdollisimman paljon asiaankuuluvia tietoja:

    • Ilmoita ongelmasi
    • Ilmoita mitä haluat yrität saavuttaa
    • Ilmoita, kuinka se sopii laajempaan suunnitteluun

    Tämä auttaa ihmisiä tunnistamaan XY: n ja auttaa sinua paljon nopeammin.


    TÄRKEÄÄ: Vastauksia XY-ongelmiin

    Mielestäni suurin ongelma XY-kysymykset ovat (usein) hyödyttömiä vastauksia. ja tehokkaasti.

    Ironista kyllä, monet näistä huonoista vastauksista ja vastauksista antavat ne, jotka haluavat olla eniten hyötyä, ja jotkut arvostetuimmista ihmisistä foorumissa / SO: ssa.

    Olen löytänyt menetelmän vastaamaan näihin kysymyksiin, mikä näyttää auttavan kiertämään XY-ongelmiin liittyvää psykologiaa ja johtamaan kysymyksen OP-ratkaisun toimivaan ratkaisuun. Menetelmän vastaaminen vie vähän kauemmin ensimmäinen instanssi, mutta sulkee Q / A-silmukan paljon nopeammin.

    Ehdotan, että vastaat kysymykseen kolmessa osassa ja annat ne seuraavassa järjestyksessä.

    1. Vastaa OP: n kysymykseen . Vaikka toimenpideohjelma todennäköisesti tarvitsee jotain muuta, älä koskaan unohda vastata kysymykseen, jonka he ovat todella esittäneet ensin, eikä kysymykseen, johon luulet haluavansa vastauksen. Joissakin tapauksissa vastaus voi olla ”Y ei ole mahdollista” . Liian usein näen vastauksia (kommentteja), joissa kysytään ”miksi tarvitset sitä?” . Tämä ei anna OP: lle mitään. Jos sanot ”Se tulee olemaan todella vaikeaa. Selitä miksi tarvitset sitä, voimme ehkä auttaa ”, niin monissa tapauksissa OP yksinkertaisesti ottaa ” Y on todella kova ” ja palaa piirtotaululle. . Se on hieno, koska olet vastannut heidän kysymykseensä ja he saattavat palata kysymykseen X itse.

    2. Keskustele OP: n yritetty ratkaisu . Tämä bitti on hankala ja vie jonkin verran miettiä. Mutta en voi korostaa, kuinka tärkeää se on. Jos OP on pyytänyt Y: tä ja luulet heidän haluavan X: tä, jatka vastaamisen jälkeen heidän kysymykseensä (1) puhumalla Y: stä (EI X). Mihin Y: tä on tarkoitus käyttää? Kuinka sitä ei voida soveltaa X: ään? Keskeistä on jatkaa kysymyksestä puhumista, mutta siirtyä vastaamisesta hyödyllisen tiedon tarjoamiseen. Koska kaiken tämän jälkeen luulet OP tarvitsevan. Hyödyllistä tietoa eikä vastausta heidän kysymykseensä.

    3. Ratkaise X Tämä on mitä sinulla on ollut kutina tehdä, ja se on loppujen lopuksi vastauksesi koko kohta. Olet tavannut OP: n heidän ehdoillaan ja vastannut heidän kysymykseensä. Olet auttanut heitä ymmärtämään kysymyksensä epäonnistumiset ja miksi Y: n ratkaiseminen ei ole asia … joten nyt olet täysin oikeutettu selittämään ratkaisua X: ään.

    Useimmat ihmiset ovat täällä oppimassa, joten tämän vastauksen osat 1 ja 2 ovat yhtä tärkeitä kuin osa 3. Mutta liian usein siihen annetaan osa 3 oma, ja se on erittäin turhauttavaa ja holhoavaa toimenpideohjelmalle, puhumattakaan siitä, että monet toimenpideohjelmat eivät hyväksy vastausta.

    Tämän vastauksen antaminen välttää myös hämmennystä, kun luulet, että OP: lla on XY-ongelma, vaikka itse asiassa he älä t. Kaikki, mitä olet tehnyt, on antaa vähän lisätietoja. Pelkästään osan 3 antaminen saattaa näyttää siltä, ettei ole lukenut kysymystä.


    Muuten. Lue kysymys uudelleen ja lue tämä vastaus … huomaa kolme osaa?

    Kommentit

    • Kuten ” XY Ongelma ” on eräänlainen ” vääränlainen käyttö hypoteesi ” , Stackoverflow-yhteisön on autettava osoittamaan oikea hypoteesi … Tämä on painopiste ” Vastauksia XY-ongelmiin ”?
    • @PeterKrauss Tavallaan. Se on enemmän oletus (olen samaa mieltä yhteisön kanssa) . Oletan, että joku, joka vastaa kysymykseen, haluaa antaa osan 3 – oikean hypoteesin. XY-ongelman ongelma on tuhlattu aika. Joten tämän vastauksen painopiste on korostaa, että ajan viettäminen antamalla osille 1 ja 2 eteenpäin ei ole hukkaan menevää aikaa, vaan säästää aikaa pitkällä aikavälillä. Olet oikeassa, että tämä vastaus on yleistettävissä väärän hypoteesin käyttöön .
    • Liian usein OP vie vastauksen Y: lle ja juoksee lukematta tai tajuamatta, että Y oli väärä ratkaisu X: lle. Tämän vuoksi ’ en mieluummin antanut heille vastausta, jota käytetään väärin. ’ Haluan pikemminkin loukata heitä saadaksesi oikean ratkaisun kuin edistäen edelleen sekä huonoa koodia että virheellistä logiikkaa.
    • @Tom That ’ on hieno, näissä tapauksissa ” pyydät jotain todella kovaa ” tai ” sinun ei pitäisi tehdä ’ tätä, se ’ ei voi olla todella huono idea ” -tyyppinen osa (1) ovat täysin sopivia.
    • Nauroin ääneen lukemisen jälkeen ja tarkistin sen uudelleen. Erinomainen vastaus, erinomaiset havainnot, erinomainen johtamiskohtainen esimerkki.
    • Lisään, että tämän sivuston tarkoituksena ei ole vain auttaa alun perin kysymystä tekevää henkilöä, vaan myös luoda arkisto muille kuka löytää kysymyksen myöhemmin. Vaikka Y ei ole oikea tapa tehdä X, se voi silti olla hyödyllinen itsessään muissa yhteyksissä, joten vastaaminen Y voi olla arvokasta.
    • Tämä vastaa todelliseen kysymykseen oikein, kun taas toiset vain totesivat tosiasiat

    vastaus

    (erotettu toisesta vastauksestani, koska tällä on enemmän mielipidettä kuin selitystä)

    Jos hyväksyt, että ”XY-ongelma” on vain toinen (erikoistuneempi) termi ”väärän työhypoteesin käytöstä”, kuten havainnollistettu ja selitetty täällä ja samanlainen kuin ”Einstellung-tehoste” , jonka @Jonathan Benn

    Voimme ajatella joitain päätilanteita:

    • Rush -tilanne: väärä hypoteesi on vain kielen tai yksinkertaistamisen sivuvaikutus, jonka käyttäjä voi korjata hieman enemmän huomiota kiinnittäen enemmän aikaa kysymyksen muokkaamiseen.

    • Normaali tilanne: kuten kuvannut Missi Neliön palapeli, et tiedä, että hypoteesi on väärä. Tämä on päätilanne, josta keskustellaan täällä (!).

    Keskitykäämme siis normaaliin tilanteeseen.


    RATKAISUT / ATTENUAATTORIT

    ”XY-ongelma” on kelvollinen ongelma!

    Stack Exchange -kysymyksen on tarkoitus näyttää ongelma. Jos kysymykseni auttaa osoittamaan, että todellinen ongelma on väärä hypoteesi , se on OK! Se on ensimmäinen vaihe , ja ehkä en tarvitse muita kysymyksiä saatuani oikea hypoteesi (ja yritän ratkaista itse).

    Esimerkki. Katso ” XPath for xml: lang? Attribuutin oma-akselin testaus epäonnistuu ”; todellinen ongelma on, että @attribute::self ei ole olemassa, joten kysymyksen otsikossa oli virheellinen hypoteesi.

    Ratkaisulla help/mcve on rajoituksia

    pinon ylivuoto ”s help/mcve perustelut : ”Kuinka luoda M inimaalinen, C täysi ja V määritettävä E xample ”, voidaan käyttää välttämään XY-ongelma.

    Mutta muokkauskustannukset (aika ja huomio ovat kalliita) ja käsitys, että se on eräänlainen saastuminen tekstissäsi (kysymyksen ”huono markkinointi”), ovat haittapuolia.

    On oikein myös yksinkertaistaa ongelmaa ja selitä keskittymällä enemmän asiaan.


    Paras käytäntö

    Kouluta pinon ylivuoto -käyttäjiä tarkistamaan, onko yksinkertaistuksella järkevää. Hyvän kysymyksen algoritmi:

    1. Yritä luoda MCVE.

    2. Jos MCVE ei ole pr kokeile ainakin yksinkertaistaa.

      2.1. Testaa, tarkista epäjohdonmukaisuudet, simuloi lukijaa … ja tarkista. Tuottaako yksinkertaistuksesi jotain outoa, muuttaa kontekstia? Tarkista virheiden välttämiseksi.

    3. Kuuntele kysymyksesi kommentteja ja yritä selventää, yritä työskennellä muokkaamalla kysymystä tarvittaessa: jos kommentteja on ihmisiä, se on huomaa että voit sijoittaa enemmän aikaa kysymykseesi.

    Väärä hypoteesi ei ole itsestään selvä, mutta kun yksinkertaistamme, vahvistamme väärät vaikutukset, ja se tulee selvemmäksi.


    PS: Toisaalta, kun selitämme ja näytämme kaikki yksityiskohdat, kaikki asiayhteydet ja tarkistamme ongelman todellisen tilanteen, kokoonpanon (kuten käytettäessä mcve), epäjohdonmukaisuudet osoittavat myös enemmän todisteita.

    Kommentit

    • Se ’ kokeneeni, että MCVE luo enemmän XY-ongelmia eikä vähemmän. Se tekee puhtaammasta abstraktiosta poistamalla alkuperäisen kysymyksen kontekstin. Eli X voi sisältyä alkuperäisen kysymyksen yhteyteen, mutta MCVE rakennetaan yksinomaan ilmaisemaan Y.
    • Kiitos @couling (!). Kyllä, koska metodologia MCVE ei ehkä ole ” paras käytäntö ”, mutta on tapa valvoa ” … selitä ja näytä kaikki yksityiskohdat … ”. Aivomme toimivat paremmin tällaisen itsetarkastelun jälkeen … Voit muokata ja korjata tekstiä, se on Wiki.

    Vastaa

    Liittosopimuksen neuvotteleminen …

    XY-ongelma on merkityksellinen ”korkoihin perustuvien neuvottelujen (X) ja” positioihin perustuvien neuvottelujen ”(Y) eron suhteen.

    X = työntekijän yleinen kotipalkka on ollut pysähtynyt useiden viime vuosien aikana, kun taas heidän elinkustannuksensa kasvavat jatkuvasti; työntekijä tarvitsee enemmän kotipalkkaa.

    Y = valitset ”et nosta pysäköintimaksuja” kukkulana kuolla / ainoa ”ratkaisu” X: lle, jonka työntekijä on valmis hyväksymään.

    Y: n tavoitteleminen (kannan ottaminen) tähtää hyvin spesifiseen ja rajoitettuun ratkaisuun ongelmaan (X). Se sulkee työntekijän pois ongelmanratkaisun universumista (X) vaatimalla, että se ratkaistaan vain yhdellä hyvin erityisellä ja rajoitetulla tavalla. Jos tämä tapa (Y) on jostain syystä työnantajalle vastenmielinen, tapahtuu umpikuja – aika, jolloin X: lle ei ole ratkaisua, jolloin ratkaisun on oltava molempien osapuolten hyväksyttävä.

    Jos työntekijä voi kohdistaa X: ään Y: n sijasta, ratkaisujen universumi pysyy avoimena / rajoittamattomana, ja työnantaja voidaan rekrytoida auttamaan löytämään mahdollisia ratkaisuja X: lle. (Ehkä se osoittautuu OK: lle työntekijä nosta pysäköintimaksuja vastineeksi elinkustannusten korotukselle …)

    Tämä kiinnostuksen / aseman paradigma näyttää olevan merkityksellinen SO: n kysymyksille, kun OP pyytää apua asemansa toimivaksi. Joskus voit leikata X: ään yksinkertaisesti kysymällä: ”Miksi yrität tehdä tämän?”; Mutta ihmettelen, joskus Y: n tavoittaminen ei ole yhtä arvokasta. Kuinka moni meistä on koskaan yrittänyt tehdä jotain, vain nähdäksemme, pystyisimmekö? Kuka tahansa täällä omalla DNS-palvelimellaan tietyn tyyppisellä ohjelmistolla juuri tähän syy? 🙂 Ei ehkä ole paras ratkaisu X: lle, mutta se on silti mielenkiintoinen …

    Vastaa

    Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *