Foobar-haaste: Googlen piilotesti kehittäjille

Istut vain työpöydällesi, ajattelet omaa yritystäsi ja yrität saada aikaan töitä. Sitten, kuten väistämättä tapahtuu, törmäät pieneen estoon: koodisi heittää salaisen virhesanoman.

"Ei hätää" luulet. Tämä ei ole ensimmäinen rodeosi. Joten kopioit ja liität virhesanoman sanatarkasti Googleen ja näet, mitä saat.

Ei onnea.

Hakutuloksia on paljon, mutta mikään niistä ei sovi tilanteeseen tarpeeksi tarkkaan tarjoamaan hyödyllistä vastausta.

Ja niin alkaa luova Googling-prosessi. Kokeilet useita virheen yhdistelmiä + kontekstia, jossa käytät sitä. Yrität sisällyttää käyttämäsi kirjaston nimen. Tiedät olevasi lähempänä ...

Kuudennella yritykselläsi yrität toista yhdistelmää hakutermeistä ja painat paluuta. Sivu latautuu ja olet juuri alkanut ohittaa tuloksia, kun yhtäkkiä selainikkuna jakautuu auki ja näet tämän:

"Puhut kieltämme. Kestääkö haaste? ”

"Siis mitä?"

"Mistä tämä tuli?"

"Jonkinlainen haaste Googlelta ... Perustuuko tämä hakuhistoriaani?"

Unohdat koodissasi olevan virheen kokonaan. Olet nyt täysin syventynyt omituiseen tilanteeseen, jossa olet. Ja niin mielenkiintoinen kuin tämä kaikki jo onkin, huomaat jotain, joka vain lisää juonittelua. Viestin rinnalla näet, että ensimmäinen painike sanoo:

"Haluan pelata"

Joten, tämä on peli ? Mielenkiintoista…

Voittaa uteliaisuudella, hyväksyt. Selainikkunan jako kasvaa hitaasti paljastaen suuren mustan ruudun, joka sitten himmenee. Sitten sinut ohjataan osoitteeseen www.google.com/foobar/. Musta näyttö himmenee ja tekstiä tulee näkyviin. Se näyttää Unix-kuorelta.

Sivun esteettisyys (retro-tietokonefontti, piilotettu pääte, modernin käyttöliittymän puuttuminen) yhdistettynä koko tämän kokemuksen tunnelmaan "007 - Sinun tehtäväsi, sinun kannattaa hyväksyä se" saa sinut tuntemaan itsesi on vedetty salaisessa maailmassa. Olet nyt täysin syventynyt.

Ruudun yläosassa on tekstiä:

"Googlella on valmiina koodihaaste sinulle"

Aivan alapuolella on kappale sinertävää tekstiä, joka asettaa sci-fi-seikkailun näyttämön:

"Menestys! Olet onnistunut tunkeutumaan komentaja Lambdan pahan organisaation joukkoon ja ansainnut itsellesi viimeinkin lähtötason aseman Minionina hänen avaruusasemillaan. Täältä saatat vain kumoaa hänen suunnitelmansa käyttää LAMBCHOP tuomiopäivälaitetta Bunny Planetin tuhoamiseksi. Ongelma on, että kätyrit ovat alhaisimpia matalimmista Lambda-hierarkiassa. Parempi pistäytyä ja aloittaa työskentely, muuten et koskaan pääse huipulle ... ”

"Hyvä on sitten. Joten näyttää siltä, ​​että voin joko tutkia terminaalia tai aloittaa haasteen ... "

Uteliaisuutesi voittaa sinut jälleen ja ajattelet "En voi vain aloittaa peliä pelkäämättä vähän". Joten kirjoitat "help" ja painat palata. Näkyviin tulee luettelo komentokomennoista.

"Todella mielenkiintoista. Joten työskentelemme selvästi tiedostojärjestelmän kanssa. Mutta tämä on melko rajoitettu luettelo vaihtoehdoista. "

Päätät nähdä, onko jokin luetteloimattomista tavallisista komennoista käytettävissä, joten kokeile jotain yksinkertaista:

foobar:~/guest$ pwd

Se toimii! Sinä näet:

/home/guest

Mahtava.

”Selvä, katsotaanpa sitä kotihakemistoa. Siellä on varmasti mielenkiintoisempia juttuja ”

Joten yrität:

foobar:~/guest$ cd ..

Ja…

Ei mitään.

Saat uuden rivin ilman virheitä, mutta kun jatkat pwduudelleen, vain tarkistaa, näet edelleen /home/guest. Okei, joten tämä asia ei todennäköisesti ole avoimen maailman unix-kuori tukossa täynnä pääsiäismunia, joita olisit toivonut olevan. Joten päätät vain vastata haasteeseen.

Kirjoitat sanan "pyyntö" ja painat palata.

Näyttöön tulee kehote, joka varoittaa, että tämä on ajastettu haaste, ja sinulla on 48 tuntia aikaa suorittaa se.

"Vau. Ok, joten se on ajoitettu… "

Hyväksyt ja jatkat.

Lisää sci-fi kerrontaa, ja sitten näet, että jotain kutsuttua solar_doomsdaylisättiin kotikansioon. Joten navigoit kansioon, avaat sen ja löydät neljä tiedostoa:

constraints.txtreadme.txtsolution.javasolution.py

Readme näyttää olevan ilmeinen paikka aloittaa. Avaat readme-tiedoston ja näet seuraavat:

"Ok" luulet "kun poistat kertomuksen, he haluavat minun kirjoittavan funktion, joka palauttaa lajitellun taulukon kaikista neliönumeroista (mukaan lukien 1), jotka muodostavat tietyn luvun, alkaen suurimmasta." Aika siistiä.

"Joten tämä on sellainen haaste, jolla Google testaa ongelmanratkaisukykyä?"

”No, olen jo mennyt niin pitkälle. Voi myös antaa sille kuvan! "

Tietoja Foobar-haasteesta

Edellä on kuvaus Googlen Foobar-haasteesta: eräänlainen pääsiäismuna Chromessa, jota näennäisesti käytetään uusien kykyjen hankkimiseen Googlen suunnittelutiimille; vaikka Google ei tunnu tunnustaneen Foobaria merkityksellisellä tavalla (ainakaan enkä löytänyt). Kehittäjät, jotka ovat käyneet läpi prosessin, ovat kuitenkin paljon ensikäden tilejä, jotka tekevät selväksi, että tässä on kyse.

Foobar-haasteen ainutlaatuinen asia on se, että se löytää sinut . Eikä tavalla, jolla ei-toivotut rekrytointisähköpostit tai myydyt tekstiviestit “löytävät sinut”. Se löytää sinut seuraamalla hakutoimintaasi ja (näennäisesti) sovittamalla sen Googlen suunnittelun osastojen tunnettujen tarpeiden mukaan. Lisäksi äkillinen visuaalinen häiriö, joka on muuten niin vakaa ja muuttumaton, Google-hakutulossivu, on tarpeeksi pirteä vetämään sinut sisään - varmasti erittäin älykäs Google-resurssien käyttö.

Koska Googlella on pääsy (1) henkilökohtaiseen selaamiseen ja (2) alustaan, jolla selaat Internetiä, heillä on todella täydellinen mahdollisuus tarttua lahjakkaisiin ihmisiin riippumatta siitä, missä he ovat, todella suoralla ja kiinnostavalla tavalla. He näyttävät yrittävän selvittää perustaitotasosi ja osaamisalueesi (alueesi) hakuhistoriasi perusteella ja yrittää sitten houkutella sinua tulemaan heidän lahjakkuussuppiloonsa tällä "pelillä", joka onnistuneesti suoritettuna saattaa tai saattaa ei johda haastattelukutsuun.

Foobar-haasteen ensimmäinen maininta näyttää olleen tämä viesti HackerNewsissa vuodesta 2014 lähtien.

Lisähuomautus: withgoogle.com

Kun olet Foobar-haastesivulla, jos avaat devtoolit ja katsot DOM: ää, huomaat, että koko sivu on iFrame-kehyksessä, jonka lähde on: //foobar.withgoogle.com/?eid = ... Kun näin tämän ensimmäisen kerran, ajattelin ”Withgoogle.com? Mitä maan päällä se on? "

Jälleen, tämä on täysin syrjässä koko Foobar-haasteen aihe, mutta käy ilmi, että haaste itsessään elää Googlen "sivuprojektialueella" nimeltä "withgoogle.com". Jos syvennät tätä vähän, löydät joitain muita melko mielenkiintoisia projekteja. Tässä on vain muutama tapaamani:

Paperisignaalit, Quickdraw, CSFirst, QiblaFinder, AIYProjects, ScienceJournal