Curl (datorprogram)

kommandoradsverktyg och programbibliotek för dataöverföring

Curl ("see URL" eller "client for URL"), curl, eller cURL är ett kommandoradsverktyg och programbibliotek för dataöverföring, med stöd för ett tjugotal kommunikationsprotokoll, exempelvis HTTP, FTP, IMAP, POP3 och Telnet. Curl används i kommandoraden eller som skript i till exempel bilar, TV-apparater, routrar, skrivare, ljudutrustning, mobiltelefoner, set-top-boxar och mediaspelare.[1]

Curl är öppen källkod med MIT-licens och består förutom kommandoradsprogrammet curl även av programbibliotek libcurl.[2] Libcurl är skrivet i programspråket C; bindningar till flera språk finns.[3]

Historik redigera

Bakgrund redigera

År 1996 ville den svenska programmeraren Daniel Stenberg kunna realtidskonvertera växelkurser genom sin hobbyprojektutvecklade IRC-bot.[4] Tanken var att växelkursdatan dagligen skulle hämtas över webben via HTTP. Genom att vidareutveckla Rafael Sagulas verktyg httpget kunde Stenberg den 8 april 1997 utge HttpGet 1.0.[4] I augusti 1997 bytte projektet namn till urlget 2.0, då fler protokoll än HTTP införts: Gopher och FTP. När ytterligare funktionalitet tillfogats, bland annat stöd för uppladdning, bytte projektet återigen namn, denna gång till curl 4, den 20 mars 1998, som Stenberg räknar som Curl:s födelse.[4] Namnet cURL går att utläsa som "see-URL".[5]

År 2000 lades libcurl in vilket gjorde att fler program fick fler möjligheter att överföra data, med ett API som kunde byggas in i applikationer. Detta medförde ett betydligt större intresse från omgivningen för cURL. En av de första som byggde in cURL var PHP.[5] Under åren har verktyget kommit att bli en viktig kugge i internets uppbyggnad och tjänster som Youtube, Instagram och Spotify nyttjar programmet. År 2019 uppskattades att cURL användes i någonstans mellan sju och tio miljarder datorer, mobiler, bilar och andra maskiner.[6][5]

Uppmärksammande redigera

I en intervju i samband med open source-konferensen Foss North i Göteborg i maj 2016 påstod Stenberg sig ha lagt cirka 2 timmar om dagen på Curl-utveckling, ungefär 12 000 timmar totalt.[2] Stenberg har hela tiden lett utvecklingen av cURL från sin bostad i Huddinge tillsammans med 10–20 frivilliga programmerare från hela världen.[5]

I egenskap av Curl:s skapare tilldelades Daniel Stenberg i oktober 2017 Polhemspriset.[7] Då hade fler än 1600 personer bidragit till Curl:s kodbas, som var vida spridd och användes av bland andra Facebook, Google och Netflix.[8]

I en intervju från oktober 2019 i Dagens Nyheter nämnde Stenberg att han av ett USA-baserat företag "sedan en tid tillbaka" uppbar heltidslön för vidareutvecklandet av Curl.[9][5]

Protokoll redigera

I oktober 2019 hade Curl stöd för följande protokoll[1]: DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, Telnet och TFTP.

Se även redigera

  • Wget - liknande verktyg skapat omkring samma tid som Curl

Källor redigera

  1. ^ [a b] Daniel Stenberg. ”curl://command line tool and library for transferring data with URLs” (på engelska). Arkiverad från originalet den 13 oktober 2019. https://web.archive.org/web/20191013113600/http://curl.haxx.se/. Läst 14 oktober 2019. 
  2. ^ [a b] Simon Campanello (29 maj 2016). ”Finns i nästan allt uppkopplat – så fick svenska hobbyprojektet Curl miljarder användare”. TechWorld. Arkiverad från originalet den 30 maj 2016. https://web.archive.org/web/20160530133407/http://techworld.idg.se/2.2524/1.659422/svenska-curl-miljarder-anvandare. Läst 14 oktober 2019. 
  3. ^ Daniel Stenberg. ”What does curl do?” (på engelska). Arkiverad från originalet den 3 juni 2019. https://web.archive.org/web/20190603153656/https://ec.haxx.se/curl-does.html. Läst 14 oktober 2019. ”libcurl is written in traditional and conservative C. Where other languages are preferred, people have created libcurl bindings for them.” 
  4. ^ [a b c] Daniel Stenberg. ”How it started” (på engelska). Arkiverad från originalet den 30 december 2015. https://web.archive.org/web/20151230223524/http://ec.haxx.se/curl-started.html. Läst 14 oktober 2019. 
  5. ^ [a b c d e] ”Curl-grundaren Daniel Stenberg skapar internets budbärare”. Internetmuseum. https://www.internetmuseum.se/tidslinjen/curl-grundaren-daniel-stenberg-skapar-internets-budbarare/. Läst 15 juni 2020. 
  6. ^ ”Världens största programmerare du aldrig hört talas om”. DN.SE. 14 oktober 2019. https://www.dn.se/nyheter/sverige/varldens-storsta-programmerare-du-aldrig-hort-talas-om/. Läst 14 oktober 2019. 
  7. ^ Per Westergård (16 oktober 2017). ”Årets Polhemspris till Daniel Stenberg”. Polhemspriset. Arkiverad från originalet den 16 oktober 2017. https://web.archive.org/web/20171016130118/http://www.polhemspriset.se/aktuellt/arets-polhemspris-till-daniel-stenberg/. Läst 14 oktober 2019. 
  8. ^ Kalle Wiklund (17 oktober 2017). ”Daniel Stenberg är årets Polhemsvinnare”. Ny Teknik. Arkiverad från originalet den 17 oktober 2017. https://web.archive.org/web/20171017131144/https://www.nyteknik.se/innovation/daniel-stenberg-ar-arets-polhemsvinnare-6877937. Läst 14 oktober 2019. 
  9. ^ Linus Larsson (14 oktober 2019). ”Världens största programmerare du aldrig hört talas om”. Dagens Nyheter. Arkiverad från originalet den 14 oktober 2019. https://web.archive.org/web/20191014051402/https://www.dn.se/nyheter/sverige/varldens-storsta-programmerare-du-aldrig-hort-talas-om/. Läst 14 oktober 2019. ”Sedan en tid betalar ett USA-baserat företag honom en heltidslön för att utveckla Curl – första gången han kan få betalt för alla timmar. Hur länge det fortsätter får vi se.” 

Externa länkar redigera