Gå til hovedindhold
Version2 it for professionelle
Forsiden

Hovedmenu

  • It-nyheder
  • Blogs
  • It-job
  • It-firmaer
  • Whitepapers
  • Opret bruger
  • Log ind
Du kan logge ind med din e-mail-adresse
Der er forskel på store og små bogstaver i adgangskoden.
Glemt adgangskode?
Se kommentarer (13)
Emner

Tanker om Arduino

Af Poul-Henning Kamp 3. januar 2010 kl. 16:01

For de af jer der endnu ikke har opdaget hvad Arduino er, er det på tide at I læser om det.

Jeg venter imens.

Godt så.

Hvis I kigger ovre i PHloggen på ing.dk, vil I se et eksempel på hvad Arduino bliver bliver brugt til:

Lige nu, sidder min 13 årige datter foran iMac'en og jeg citerer ordret: Citat:

Nej hvor er det her fedt mand! ... så skal 3,7 være gul ... og 5,0 være rød...

Arduino har lavet et objektivt set forkvaklet sprog, skrevet compileren i Java og der kan rejses 521 andre faglige kritikpunkter af projektet, langt hen ad vejen de samme kritikpunkter som ramte BASIC, bare opdateret med 30 år.

Men Arduino bliver, ligesom BASIC. brugt.

Hvis I laver en google billedsøgning efter arduino, vil ordet "misbrugt" hurtigt komme på tale.

Folk der ellers "ikke kan programmere" bruger pludselig Arduino til at styre deres spisekammerlamper, vækkeure, robotter og raketter.

Programmering er basalt set ikke vanskeligt: Gør dette, gør hint. Alle der kan følge en opskrift på risengrød har bestået Programmering 101 og alle der kan nedskrive en opskrift har bestået 102 også.

Jep, 99.99% af den kode der bliver skrevet med/i Arduino er ustruktureret klytkode, uden arkitektur, struktur eller blot nogenlunde gennemførte tanker.

Men det er kode der får microcontrollere til at gøre hvad folk vil have dem til, kode der frigør folk fra "fagfolkenes tyrani" i form japanske video/harddisk recordere og andet brugerfjendtligt skrammel.

Eller i min datters tilfælde blot en smiley:

Hvis vores IT uddannelser havde virket, havde Arduino været dansk...

phk

Send Tweet
Udskriv
Billede af Poul-Henning KampOm Poul-Henning Kamp

Selvstændig systemprogrammør, kernekoder, Varnish-forfatter, data-arkæolog og brokkehoved uden særlig portefølje.

Follow @bsdphk

Kommentarer (13)

Opret en konto eller log ind for at følge indhold på Version2 - og bliv opdateret via e-mail eller rss

Følg kommentarer
Flemming Frandsen 3. jan. 2010 - 20.25
 
Arduino er et gatway-drug

Det eneste magiske ved Arduino er en bootloader og børnevenlig indpakning af toolchain'en, selv sproget man bruger er C med støttehjul.

Det er nemt at skifte de børnevenlige komponenter (sprog, IDE, bootloader, hardware) en af gangen efterhånden som man får brug for mere kontrol og før man ved af det har man et professionelt system og en karriere;)

Lad os håbe at der er flere der bliver hooked.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Jacob Christian Munch-Andersen 4. jan. 2010 - 02.56
 
Sprogfinurligheder

Er jeg den eneste der tænker Lego Mindstorms?

Uanset, jeg har tit tænkt over forskellen på de "børnevenlige" og de "rigtige" programmeringsværktøjer. Det er svært at finde noget værktøj som er begge dele, men jeg kan ikke se nogen grund til at det skulle være eksklusive egenskaber.

De børnevenlige værktøjer falder typisk igennem på eksekveringshastighed, hvilket stort set udelukkende skydes compileren eller mangel på samme, og så ting som debugging muligheder, dårlige objekter og manglende variabeltyper.

De rigtige værktøjer fejler typisk i dokumentationen, den basale introduktion er der ikke, eller der er et stykke kvalmende markedsføringsmateriale som fortæller hvor godt produktet er, og den faktiske info drukner i information som en nybegynder alligevel ikke har mulighed for at tage stilling til. En computerspilsagtig tutorial fulgt op med eksempelrig dokumentation kunne virkelig gøre en forskel for mange udviklingsmiljøer. Der kan også være problemer med krav om eksplicitte deklarationer af alt muligt, for os andre er det bare irriterende at skulle skrive offentlig-statisk-intethed-hoved (eller hvad det nu måtte hedde på dansk), men for en nybegynder kan for meget af den slags volapyk være forvirrende, og det øger mulighederne for syntaksfejl, og så kan kryptiske fejlmeddelelser fra compileren ellers sørge for at det kan tage lang tid at finde små syntaksfejl.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Martin Juhl Jørgensen 4. jan. 2010 - 08.19
 
Processing

Et andet ret så udbredt "fordummende" "sprog" er Processing. Min opfattelse er at det mest bliver brugt af folk med hang til at lave udstillinger og visuelle eksperimenter, men også lidt til undervisning.

http://processing.org/

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Martin Bøgelund 4. jan. 2010 - 10.32
 
Re: Sprogfinurligheder
Uanset, jeg har tit tænkt over forskellen på de "børnevenlige" og de "rigtige" programmeringsværktøjer. Det er svært at finde noget værktøj som er begge dele, men jeg kan ikke se nogen grund til at det skulle være eksklusive egenskaber.

Ikke direkte. Men hvis du ruller ressource-dimensionen hen over, så kan tiden og pengene kun anvendes én gang, og optimering af det ene vil tage ressourcer fra optimering af det andet.

Læg dertil at jo mere "rigtige" tingene skal være, des mere kompleksitet vil der tilføjes - flere muligheder indebærer at der også er flere muligheder for at ryge ud i hegnet - og det er ikke "børnevenligt".

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Henrik Kramshøjs billede
Henrik Kramshøj 4. jan. 2010 - 12.44
 
Arudino er sjovt

Jeg har selv introduceret Arduino hjemme, sammen med et par byggesæt fra Brinck. Det har resulteret i en elektronikkasse og der kommer til at være mange sjove timer med det - sammen med sønnen på 10 år.

Og så kom jeg også til at købe en Xilinx spartan 3AN FPGA til mig selv i julegave, så det bliver et nørdet år i 2010.

Husk også Labitat.dk hackerspace der er på vej!

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Poul-Henning Kamps billede
Poul-Henning Kamp 4. jan. 2010 - 13.12
 
Labitat.dk
Husk også Labitat.dk hackerspace der er på vej!

Jeg meldte mig ind i december for at støtte det gode initiativ.

Poul-Henning

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Theodor Norup 4. jan. 2010 - 13.25
 
Re: Sprogfinurligheder
Er jeg den eneste der tænker Lego Mindstorms?

Nej!

En lille smule off-topic anbefales også Scratch (se http://scratch.mit.edu), som er et Mindstorms-inspireret miljø med erklæret fokus dels at lære børn den konstruktionsorienterede side af komputter-brug og dels at fremme en sharing-orienteret kultur.

Citat fra datteren på 9½ efter at have kigget mig over skulderen i 3-4 minutter: "Ejjjj, sejt! Flyt dig, jeg vil også prøve!". Så var hun hooked.

Scratch's målsætning og foreløbige resultater er beskrevet i CACM vol.52 issue 11, findes i ACM dig. lib. her: http://portal.acm.org/citation.cfm?id=1592761.1592779&coll=portal&dl=ACM... (kræver ACM-medlemskab samt adgang til digital library).

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Jacob Christian Munch-Andersen 4. jan. 2010 - 17.03
 
Re: Sprogfinurligheder
Ikke direkte. Men hvis du ruller ressource-dimensionen hen over, så kan tiden og pengene kun anvendes én gang, og optimering af det ene vil tage ressourcer fra optimering af det andet.

Det er selvfølgelig en grund, jeg synes bare at der burde være merværdi nok i et sprog som falder i begge kategorier til at nogen skulle kunne finde ressourcer til begge dele.

Læg dertil at jo mere "rigtige" tingene skal være, des mere kompleksitet vil der tilføjes - flere muligheder indebærer at der også er flere muligheder for at ryge ud i hegnet - og det er ikke "børnevenligt".

Nu er det selvfølgelig lidt bredt generelt vi diskuterer, så det kommer nok lidt an på tilfældet, men behøver den kompleksitet at være der? Og kan det ikke være valgfrit om man vil bruge den kompleksitet?

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Carsten Sonne 4. jan. 2010 - 17.16
 
Noget for pengene

Pris 199,-

http://www.let-elektronik.dk/

Jeg har kigget en del efter diverse IO produkter.

Dem jeg har fundet, er væsentlig dyre og har lang færre features. Specielt produkter rettet mod alarm markedet og mod home automation markedet.

Sådan et par Arduino ligger snart i min indkøbskurv !

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Thomas Kjeldsen 4. jan. 2010 - 19.41
 
Hvis vores IT uddannelser havde virket, havde Arduino været ...

phk: Kan du løfte sløret for hvilke førstehåndserfaringer du har med de danske IT-uddannelser?

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Henning Makholm 4. jan. 2010 - 22.04
 
Re: Sprogfinurligheder
Uanset, jeg har tit tænkt over forskellen på de "børnevenlige" og de "rigtige" programmeringsværktøjer. Det er svært at finde noget værktøj som er begge dele, men jeg kan ikke se nogen grund til at det skulle være eksklusive egenskaber.

Jeg tror ikke "børnevenligt" versus "rigtigt" er en god modstilling her. Men der er en ægte modstilling mellem "komme hurtigt i gang" og "bygge store komplekse systemer". Det ene kan næppe siges at være rigtigere end det andet, men jeg tror det er indbyrdes modstridende mål.

Et sprog til at komme hurtigt i gang med er et der underforstår en masse. Idet mange valg er taget for programmøren på forhånd, kan man nøjes med at skrive temmelig lidt for at få noget interessant til at ske. Dette er en God Ting, så længe ens ønsker kan rummes indenfor standardvalgene.

Sproget kan naturligvis sagtens give mulighed for at overstyre standardvalgene -- men det indebærer i sagens natur at man må bruge en mere kompleks grænseflade end den lette hvor valgene var truffet på forhånd.

Når man bygger større og mere komplekse systemer, begynder den nemme syntaks til standardtilfældene (eller globale defaults så man ikke skal specificere alting hver gang man gør noget, eller lignende komme-let-igang features) til at være en dødvægt i stedet for en lettelse. I store systemer støder man (fordi de er store!) på langt flere abstraktioner som er programmørskabte, end det endelige antal primitive abstraktioner sproget giver en speciel let understøttelse for. Så er de "nemme" tilfælde efterhånden blevet irriterende særtilfælde som man ikke kan behandle på samme måde som hele resten af systemet.

For den enkelte programmør er dette måske ligegyldigt. Man kan jo bare lade være med at bruge de simple (men ikke-ortogonale) muligheder. Men implementører af udviklingsværktøjer har ikke den frihed, og jo flere særtilfælde sproget har for at gøre det let at komme i gang, desto mere komplekst bliver det at skrive værktøjer til sproget.

Alt andet lige vil et sprog der er tynget af færre børnevenlige særtilfælde, have bedre chance for at få: Mere end én implementation. Plugins til dit yndlings-IDE. Gode debuggere og profilere. Værktøjer til statisk analyse. Flere tredjepartsbiblioteker. Altsammen væsentlige parametre når man vil bygge noget stort, men nærmest ligegyldigt når man bare skal have et lille program til at køre i en fart.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Jacob Christian Munch-Andersen 6. jan. 2010 - 16.41
 
Re: Sprogfinurligheder

Jeg føler mig nu stadigvæk ikke overbevist om at det ikke kan lade sig gøre.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Kim Michelsen 13. mar. 2010 - 16.24
 
Re: Hvis vores IT uddannelser havde virket, havde Arduino væ ...

Jeg tror der er mange der har lavet sprog til alverdens formål, fordi de lige havde et problem de skulle løse eller ville se om det kunne lade sig gøre. Jeg har i studietiden lavet en rimelig avanceret pl0 oversætter til z80 (rcursive descent), udvidet en standard prommed BASIC fortolker med Semaforer for udførelse a co-rutiner, samt lavet et sprog til generering af sql-baserede testdatabaser af en hver størrelse med alle slags relationer (Gnu, Bison), fortolkning af skriftligt sprog, awk baseret sprog til mønsteranalyse af store datasæt, mmm.

Problemet er ikke at lave de specielle ting, problemet er at finde nogen det kan se mulighederne i det og sælge det.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer

Tilføj kommentar

Opret en konto eller log ind for at følge indhold på Version2 - og bliv opdateret via e-mail eller rss

Følg kommentarer
Log ind herunder eller opret en bruger for at skrive kommentarer
Du kan logge ind med din e-mail-adresse
Der er forskel på store og små bogstaver i adgangskoden.
Glemt adgangskode?

Seneste nyt

EMC: Derfor skal du undgå både public og private cloud

Udgivet 23. maj 6.59Opdateret 23. maj 6.59

GOTO Copenhagen dag 2 i billeder: Op med hænderne!

Udgivet 22. maj 16.02Opdateret 22. maj 17.02

Staten køber hardware for 1,2 milliarder - her er de syv heldige

Udgivet 22. maj 15.37Opdateret 22. maj 15.37

Firmaer leder efter ’ninjaer’ - men skriv det ikke på CV’et

Udgivet 22. maj 14.54Opdateret 22. maj 15.48

Ny Linux-kerne giver højere sikkerhed og bedre grafikkort-understøttelse

Udgivet 22. maj 14.13Opdateret 22. maj 14.13

Flere it-nyheder »

Tilmeld dig Version2's it-nyhedsbrev og vind den nye iPad.

Seneste debat

  1. Microsoft fjerner umoderne bling-effekter i Windows 8

    36 comments.
    Last update 3 minutter 13 sekunder
    Skrevet af Lars Bjerregaard
  2. Cisco kan være en dyr netværksreligion

    14 comments.
    Last update 6 timer 37 minutter
    Skrevet af Jens Jönsson
  3. Finansminister afliver teori om NemID som spionsoftware

    22 comments.
    Last update 7 timer 25 minutter
    Skrevet af Niels Elgaard Larsen
  4. Datamatikere i Skive får gratis smartphone til .Net-udvikling

    3 comments.
    Last update 7 timer 38 minutter
    Skrevet af Martin Slot
  5. Dart: Dynamisk Statisk Programmering

    11 comments.
    Last update 8 timer 8 minutter
    Skrevet af Casper Bang
  6. Partner solgte Netgroups 'test-platform' med overskriften 'fuld redundans'

    16 comments.
    Last update 8 timer 30 minutter
    Skrevet af Jacob Bach Pedersen
  7. To psykologiske årsager til at IT-projekter går galt

    15 comments.
    Last update 8 timer 37 minutter
    Skrevet af Robert Voje
  8. Staten køber hardware for 1,2 milliarder - her er de syv heldige

    4 comments.
    Last update 9 timer 21 minutter
    Skrevet af Thomas Hansen

Mere debat »

Information

  • Kontakt redaktionen
  • Job- og annoncesalg
  • Teknisk support
  • Om Version2
  • Brugerbetingelser
  • Privatlivspolitik

Aktuelle emner

  • Agil udvikling
  • Android
  • Bruttolønsordning
  • Business Intelligence
  • Cloud computing
  • Download Windows 8
  • HTML5
  • Harddisk-priser
  • IE9
  • Intranet
  • It-sikkerhed
  • Kindle Fire
  • Multimedieskat
  • NemID
  • OS X Mountain Lion
  • Open source CMS
  • Projektledelse
  • Scrum
  • Sharepoint intranet
  • Storage
  • Ubuntu 11.10
  • Virtualisering
  • Windows 8
  • Windows Phone 7
  • iOS 5
  • iPhone 4S

Tjenester

  • Android-app
  • iPhone-app
  • RSS-feeds
Følg @version2dk
Tilmeld dig Version2's it-nyhedsbrev og vind den nye iPad.

Version2 udgives af

  • Mediehuset Ingeniøren A/S work Skelbækgade 4 1717 København V
  • Tlf. work 33265300