Twaalf jaar geleden, toen ik de eerste artikelen schreef voor "Cracking the Code:Breaking Down the Software Development Roles", nam ik een bewuste en misschien controversiële beslissing om de databasebeheerder of een databasearchitect niet op te nemen in de rollen. De beslissing werd genomen omdat er maar weinig organisaties waren die te maken hadden met de omvang van de gegevens die deze toegewijde rol in het softwareontwikkelingsproces vereisten. De oplossingsarchitect zou kunnen zorgen voor de behoefte van de organisatie om de gegevensstructuur te ontwerpen als onderdeel van hun algemene rol. De wereld van data is sindsdien echter groter geworden.
Big data
Tegenwoordig worden we geconfronteerd met meer volume, grotere snelheid en dynamische verscheidenheid van de gegevensbronnen die we verwerken. We hebben het niet over de typische relationele databases die al tientallen jaren populair zijn. De uitbreiding van gegevens vereist een reeks technieken en vaardigheden die anders zijn dan de historische benaderingen van gegevens die we hebben gebruikt.
Multithreading van onze gegevensverwerking is een verbetering van de single-threadingbenaderingen van gegevensverwerking die de gegevensverwerking in de jaren tachtig populair maakten; zelfs deze benaderingen, die afhankelijk zijn van een enkele computer met meerdere uitvoeringsdraden, gaan echter stuk wanneer de hoeveelheid verwerking die nodig is om betekenis te extraheren de capaciteit van een enkele machine overschrijdt.
De opkomst van servicegebaseerd computergebruik
In 1999 konden gebruikers thuis hun vrije computercycli op hun computers doneren aan het doel van het vinden van buitenaardse intelligentie via het project [email protected] dat wordt uitgevoerd door UC Berkeley. Dit was niet het eerste gebruik van wijdverbreide computing of grid computing, maar het is het project dat tot de verbeelding van internetgebruikers overal sprak. Plots hadden ze de mogelijkheid om degenen te zijn die "ET" vonden. Tijdens de bouw distribueerde het project enorme hoeveelheden gegevens voor verwerking naar veel computers, die berekeningen op de gegevens uitvoerden om te zien of er interessante bits waren die waarschijnlijk niet alleen achtergrondruis waren. [email protected] was slechts een van de gedistribueerde computerprojecten die het bewustzijn van het soort problemen brachten waarbij een enkele computer niet genoeg zou zijn.
IBM, Microsoft en anderen bieden nu computer- en machine learning-services aan om organisaties te helpen omgaan met de gegevens die ze vastleggen en deze te begrijpen, zodat ze geen leger toegewijde vrijwilligers hoeven te mobiliseren. De platforms zijn bedoeld om de rekenkracht en machine learning te bieden die nodig zijn om de informatie te extraheren die verborgen is in de hoeveelheden gegevens. In plaats van dat organisaties hun eigen datacenters moeten bouwen en implementeren met speciale computerresources, zijn de middelen om data om te zetten in informatie en betekenis te huur beschikbaar.
Het gaat niet om de gegevens, het gaat om de inzichten
Hoewel de hoeveelheid gegevens die we vastleggen enorm is, zijn het niet de gegevens die interessant zijn. Wat interessant is, is wat de gegevens u kunnen vertellen - als u deze kunt analyseren. De individuele metingen van de prestaties van een motor zijn niet belangrijk, maar het vermogen om te voorspellen wanneer de motor onderhoud nodig heeft of waarschijnlijk defect zal raken—dat is belangrijk.
Gegevenswetenschappers zijn niet gericht op gegevensopslag zoals de gegevensarchitecten en databasebeheerders waren. In plaats daarvan zijn ze gericht op het omzetten van gegevens in informatie en uiteindelijk op inzichten die het bedrijf kan gebruiken om betere beslissingen te nemen. Dit betekent dat we moeten zoeken naar nieuwe benaderingen om de gegevens te analyseren op manieren die interessante inzichten opleveren die het bedrijf in zijn voordeel kan gebruiken.
Op sets en statistieken staan
De traditionele processie voor softwareontwikkeling is bekend met een procedurele benadering van het oplossen van problemen. Ontwikkelaars, leads en architecten zijn goed geschoold in de methoden en voordelen van procedurele constructie. Procedurele benaderingen zijn als de automatisering van een ongelooflijk plichtsgetrouwe maar niet originele werknemer. De computer krijgt te horen welke stappen (procedure) hij moet uitvoeren in welke volgorde en onder welke voorwaarden hij de handeling moet herhalen of over meerdere paden moet verdelen. Datawetenschappers werken echter niet alleen met procedurele benaderingen, maar ook met set-gebaseerde logica. De denkstijl verschilt, omdat er wordt gezocht naar hiaten en kruispunten. Het functioneert op basis van gelijkheid en ongelijkheid tussen verschillende soorten informatie.
Hoewel sommige ontwikkelaars in hun werk op set-gebaseerde logica zijn tegengekomen, moeten datawetenschappers vertrouwd zijn met en vloeiend zijn in hun vermogen om sets met informatie te manipuleren.
Bovendien heeft de datawetenschapper, in tegenstelling tot andere rollen in de levenscyclus van softwareontwikkeling, een gespecialiseerde vaardigheid nodig buiten het domein van softwareontwikkeling. Omdat datawetenschappers op zoek zijn naar inzichten over relaties tussen verschillende stukjes data, hebben ze een solide basis in statistieken nodig om statistische waarden zoals correlatie te kunnen zoeken en genereren om de vragen die ze stellen te beantwoorden en onnauwkeurige relaties tussen verschillende datasets te vinden.
Waar is de koers eigenlijk?
De groei van data heeft het omslagpunt bereikt. Of het nu gaat om analyse van sociale netwerken, klikgeschiedenis of aankoopgegevens, organisaties zien echte zakelijke waarde in de gegevens die in hun databases zijn opgesloten, en datawetenschappers zijn de sleutel tot het ontsluiten van het potentieel van die gegevens.
Het vastleggen van die waarde betekent het inhuren van de mensen die de vaardigheden hebben om de verwerkingsalgoritmen aan de gegevens te koppelen en de rekenkracht aan te wenden om die resultaten te creëren.
Het goede, het slechte en het lelijke
Datawetenschap explodeert nu met de komst van Internet of Things-apparaten die allerlei soorten gegevens van allerlei plaatsen opnemen. Dat betekent geweldige kansen - en meer dan een paar uitdagingen. Hier zijn slechts een paar van die uitdagingen:
- Goed: Er is een geweldige kans om nieuwe manieren te vinden om inzichten uit gegevens te halen.
- Goed: Computer- en opslagbronnen kunnen in grote hoeveelheden worden gekocht.
- Goed: Er is veel vraag naar datawetenschappers en dat zal waarschijnlijk nog wel een tijdje zo blijven.
- Slecht: Naarmate algoritmen en benaderingen evolueren, zult u zich altijd verouderd voelen.
- Slecht: Alle gegevens moeten worden opgeschoond en een aanzienlijk deel van de tijd zal aan dit werk worden besteed.
- Lelijk: Trial and error betekent veel "mislukkingen" en weinig triomfen.
Tot slot
De rol van Data Scientist heeft een snel groeiende behoefte en een andere reeks vaardigheden. Als je van je lessen statistiek hield en ervan houdt om patronen te vinden die andere mensen niet kunnen zien, dan is dit misschien iets voor jou.