Gå til innhold

Innovativ cutting edge programmering : hvordan ser fremtidens software ut?


Anbefalte innlegg

Hvordan ser fremtidens software ut?

 

Hva kunne være det ultimate programmeringsspråket?

 

Hva med å redefinere informasjon helt ned til minste enhet og deretter bygger opp mye smartere programmer?

 

Bakgrunnen for spørsmålet er at alle datamaskiner har blitt ekstremt mye raskere og kraftigere enn når de første programmene ble utviklet. I tillegg er det utviklet masse hjelpemidler som assisterer softwareutvikleren. Burde ikke det bety at forholdene ligger godt til rette for helt nye paradigmer for å forstå og designe software?

 

Et eksempel er 3D printing. Mye tyder på at 3D printing skaper revolusjonerende muligheter de kommende årene. Hva slags software kan være best egnet for å utvikle 3 dimensjonale strukturer?

 

Hadde vært morro å høre om data geniene her inne har noen interessante tanker om disse tingene :)

Lenke til kommentar
Videoannonse
Annonse

Software kan være så mangt. Med IoT på full fart inn trengs det en haug med gode embedded-programmerere. Disse er i dag i suverent mindretall sammenlignet med de fleste andre programmeringssjangre.

 

Hvordan vil du beskrive forskjellen mellom embedded programmering og klassisk programmering? Og hva kjennetegner en svært god embedded programmerer?

Lenke til kommentar

 

Software kan være så mangt. Med IoT på full fart inn trengs det en haug med gode embedded-programmerere. Disse er i dag i suverent mindretall sammenlignet med de fleste andre programmeringssjangre.

 

Hvordan vil du beskrive forskjellen mellom embedded programmering og klassisk programmering? Og hva kjennetegner en svært god embedded programmerer?

 

 

Hovedforskjellen er vel at man er ekstremt ressurs-begrenset, som gjerne leder til kompilerte i stedet for tolkede/JITede språk (typisk C i stedet for f.eks. python), og at man må være mye mer selektiv i hvilke bibliotek og rammeverk man bruker. Det er vel også mer typisk med cross-kompilering, altså at man ikke kan utvikle og kjøre på samme maskin, og det ofte er en del mekk å få tilbakemeldinger ut av enheten man skriver for.

Endret av Djn
Lenke til kommentar

Det lurte jeg også på. Jeg gjetter:

Embedded programmering er vel gjerne i C, noe som kan være uoverkommelig for folk som kun kan JavaScript, CSS og html. Det kan også kreve mer presisjon fordi debugging kan være mer utfordrende.

 

Burde ikke dette være en god anledning for å utvikle et nytt og enklere og mer funksjonellt programmeringsspråk , for eksempel et visuelt programmeringsspråk , tilpasset tredimensjonal programmering? 

Lenke til kommentar

Tredimensjonal programmering???

 

hahaha...ja jeg var nok ganske uklar der. Jeg tenkte på for eksempel programmering av fysiske tredimensjonale objekter...konstruksjoner som skal bygges opp med 3D printing for eksempel...eller programmering av en maskin til å bevege seg etter et bestemt mønster i et tredimensjonalt rom...sånne typer ting...burde ikke noe sånt kunne gjøres med et språk som man kan se visuelt som en 3D simulasjon for eksempel?

 

Se for eksempel for deg at du flyr gjennom et rom som i et dataspill...et program lager et stilig tredimensjonalt rom som er din "arbeidsplass"...og du flyr i dette rommet mellom forskjellige "planeter" og "solsystemer" som består av koder og tall og symboler og setninger...og disse er forbundet seg i mellom som synapsene i en hjerne eller et nervesystem...og du kan zoome inn etter behov og zoome ut etter behov...og du kan flytte deg dit du trenger og putte inn kode eller gjøre kopier etter behov...og siden alt er i et tredimensjonalt rom så blir det hele mye mere oversiktlig og intuitivt...som igjen betyr at man kan jobbe både raskere og morsommere og enklere med mindre sjanse for å gjøre feil...altså maksimalt flerfunksjonelt og elegant og praktisk...burde ikke noe sånt kunne være mulig?

Lenke til kommentar

 

 

.konstruksjoner som skal bygges opp med 3D printing for eksempel.

Jo, men det har ingenting med embedded programmering å gjøre. Se OpenSCAD.org for et sånt språk.

 

 

 

.og siden alt er i et tredimensjonalt rom så blir det hele mye mere oversiktlig og intuitivt...
Dess færre dimensjoner, dess mer intuitivt.
Lenke til kommentar

Jeg har en del erfaring med å lære bort programmering til folk som ikke kan (med Wiring.co som er det Arduino er basert på), og det hjelper sjeldent å bruke et grafisk grensesnitt for programmering. Til syvende og sist så er det logikken, dataflyten og boolsk algebra som er vanskelig. Dog, visuell programmering kan være lettere helt i begynnelsen for unge eller de som er veldig visuelle i tankemåten.

 

Min spådom er at fremtidens programmeringsspråk fremdeles vil ligne mye på etablerte paradigmer (strukturert, OOP, funksjonelt og logisk) men ha tettere kobling til paralellisering (finnes allerede gode biblioteker for CUDA) også blir det spennende å se om qbits eller kvantemaskiner fører med seg nye språk.

 

Grafisk konfigurasjon gir mening, slik som en ofte ser for FPGA.

 

TL DR og oppsummering: Jeg tror underliggende programmeringsspråk vil ligne på ting vi kjenner, men at man kanskje har verktøy for å jobbe med koden på flere plan både tekstlig og grafisk i flere lag (fra UML varianter til fullstending simulering av f.eks kunstige neural networks, og kanskje man har flere inputmetoder som f.eks diktering med stemme og navigering i kodebasen med stemmen, eyetracking etc).

 

Det er et spennende spørsmål!

Lenke til kommentar

Jeg driver å lærer programmering nå (på universitetet). Det som er vanskelig er ting som arv, generics, og alt som gjøres for å abstrahere konsept fra kode. Dette er jo skapt for å kunne håndtere den økende kompleksiteten i systemer, og jeg tror den kommer til å fortsette å øke. Vi får da behov for enda grovere abstrahering, slik at man får design-input også fra de som kun kan visualisere konsepter uten å ha noe som helst forhold til kode.

 

Vi får sikkert verktøy både innen visualisering og input, samt at man får "AI" som aggregerer dette til kodebasen, men vanskelig å se at vi får noen endrede paradigmer. Kanskje enda høyere grad av generalisering og massiv standardisering på tvers av språk/plattformer?

 

Studerer diskret matte nå, så håper kvantemaskiner er et blaff  :)

Lenke til kommentar

 

 

Software kan være så mangt. Med IoT på full fart inn trengs det en haug med gode embedded-programmerere. Disse er i dag i suverent mindretall sammenlignet med de fleste andre programmeringssjangre.

 

Hvordan vil du beskrive forskjellen mellom embedded programmering og klassisk programmering? Og hva kjennetegner en svært god embedded programmerer?

 

 

Hovedforskjellen er vel at man er ekstremt ressurs-begrenset, som gjerne leder til kompilerte i stedet for tolkede/JITede språk (typisk C i stedet for f.eks. python), og at man må være mye mer selektiv i hvilke bibliotek og rammeverk man bruker. Det er vel også mer typisk med cross-kompilering, altså at man ikke kan utvikle og kjøre på samme maskin, og det ofte er en del mekk å få tilbakemeldinger ut av enheten man skriver for.

 

Alt dette stemmer veldig bra.

I tillegg kommer det mange hardwarenære aspekter. Blant annet chip-konfigurasjon gjennom ymse registre eller leverandørspesifikke verktøy, fysiske grensesnitt med sine buss-protokoller, sensorkommunikasjon, trygg feilhåndtering, sanntidskrav og interrupts. I tillegg er det veldig nyttig å ha grei styring på hvordan den fysiske elektronikken i systemet fungerer.

Lenke til kommentar

 

Tredimensjonal programmering???

 

hahaha...ja jeg var nok ganske uklar der. Jeg tenkte på for eksempel programmering av fysiske tredimensjonale objekter...konstruksjoner som skal bygges opp med 3D printing for eksempel...eller programmering av en maskin til å bevege seg etter et bestemt mønster i et tredimensjonalt rom...sånne typer ting...burde ikke noe sånt kunne gjøres med et språk som man kan se visuelt som en 3D simulasjon for eksempel?

 

 

Det kalles CAD-software og 3d-printing innebærer vel egentlig lite nytt sånn sett. Tidligere har man kunnet styre en svinedyr fresemaskin for å frese ut 3d-modellen i f.eks. metall, nå kan man isteden "printe" den ut vha. en maskin som spytter ut "blekk" i tre dimensjoner istedenfor to. Det nye er at dette begynner å bli tilgjengelig for hvermannsen, og ikke kun for industrielle formål.

Lenke til kommentar

Hvordan ser fremtidens software ut?

 

Hva kunne være det ultimate programmeringsspråket?

 

Hva med å redefinere informasjon helt ned til minste enhet og deretter bygger opp mye smartere programmer?

 

Bakgrunnen for spørsmålet er at alle datamaskiner har blitt ekstremt mye raskere og kraftigere enn når de første programmene ble utviklet. I tillegg er det utviklet masse hjelpemidler som assisterer softwareutvikleren. Burde ikke det bety at forholdene ligger godt til rette for helt nye paradigmer for å forstå og designe software?

 

Et eksempel er 3D printing. Mye tyder på at 3D printing skaper revolusjonerende muligheter de kommende årene. Hva slags software kan være best egnet for å utvikle 3 dimensjonale strukturer?

 

Hadde vært morro å høre om data geniene her inne har noen interessante tanker om disse tingene :)

Vi programmerer vel i ECMAScript 10, 20 år fra nå. :p

Lenke til kommentar

 

Hvordan ser fremtidens software ut?

 

Hva kunne være det ultimate programmeringsspråket?

 

Hva med å redefinere informasjon helt ned til minste enhet og deretter bygger opp mye smartere programmer?

 

Bakgrunnen for spørsmålet er at alle datamaskiner har blitt ekstremt mye raskere og kraftigere enn når de første programmene ble utviklet. I tillegg er det utviklet masse hjelpemidler som assisterer softwareutvikleren. Burde ikke det bety at forholdene ligger godt til rette for helt nye paradigmer for å forstå og designe software?

 

Et eksempel er 3D printing. Mye tyder på at 3D printing skaper revolusjonerende muligheter de kommende årene. Hva slags software kan være best egnet for å utvikle 3 dimensjonale strukturer?

 

Hadde vært morro å høre om data geniene her inne har noen interessante tanker om disse tingene :)

Vi programmerer vel i ECMAScript 10, 20 år fra nå. :p

 

 

Du har sikkert rett, og jeg er ikke sikker på om det er en god ting.

  • Liker 1
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...