SlideShare a Scribd company logo
1 of 12
Eric Weddington
Marketing Manager,
Open Source & Community
Atmel
@eric_weddington
Board Building
Firmware: Prototype to Product
Eric Weddington
Marketing Manager, Open Source & Community
Complementary Disciplines
Prototype Stage
“Premature optimization is the root of all evil.”
– Donald Knuth, Professor Emeritus of the Art of Computer Programming at Stanford
University
When should I optimize my code?
• To meet system requirements and constraints…
–Time
–Space
–Quality
• Or, for a possible economic benefit…
Think Scale
Why think about Scale? Do the math…
• Spend $100,000 on engineers and tools…
• To save 100 bytes of code space…
• To go to a smaller chip, with less memory…
• That costs 10 cents less.
• But, if you sell 10 million units…
• You just saved $1,000,000…
• Minus engineering/tool costs: $900,000.
Know Your Tools
• Compiler toolchain is very good, but not perfect…
• Learn to inspect the assembly code
• Compiler switches
• Coding tips and tricks
• Knowing your computer language
• Knowing data structures / algorithms
• White papers available
• User forums available
Open Source Software Licensing
• Using Open Source Software in commercial products
• Do I want my code to be open to every one?
• Can I use this code without burdens on myself, or
customer, when I distribute my product?
• Answers depends on intent of project / product.
Firmware: Prototype to Product
1. Don’t optimize too soon
2. Optimize when needed
– To meet system requirements
– Possible economic benefits
1. Know your tools
2. Software licenses matter

More Related Content

Viewers also liked

What Do Libyan Health Care Professionals Want?
What Do Libyan Health Care Professionals Want?What Do Libyan Health Care Professionals Want?
What Do Libyan Health Care Professionals Want?Mutaz Shegewi
 
Tina Aspiala - New Things
Tina Aspiala -  New ThingsTina Aspiala -  New Things
Tina Aspiala - New ThingsThingsCon Ams
 
Emerging Trends in Travel and Hospitality Industry
Emerging Trends in Travel and Hospitality IndustryEmerging Trends in Travel and Hospitality Industry
Emerging Trends in Travel and Hospitality IndustryNearsoft
 
Risk-Based Contracting: Background, Assessment, and Implementation
Risk-Based Contracting: Background, Assessment, and ImplementationRisk-Based Contracting: Background, Assessment, and Implementation
Risk-Based Contracting: Background, Assessment, and ImplementationPYA, P.C.
 
Síntesis de hormonas ováricas
Síntesis de hormonas ováricasSíntesis de hormonas ováricas
Síntesis de hormonas ováricasBlanca Tapia
 

Viewers also liked (10)

What Do Libyan Health Care Professionals Want?
What Do Libyan Health Care Professionals Want?What Do Libyan Health Care Professionals Want?
What Do Libyan Health Care Professionals Want?
 
Tina Aspiala - New Things
Tina Aspiala -  New ThingsTina Aspiala -  New Things
Tina Aspiala - New Things
 
Report Continuity Document
Report Continuity DocumentReport Continuity Document
Report Continuity Document
 
Laboratorio I qfb 2009 mum
Laboratorio I qfb 2009 mumLaboratorio I qfb 2009 mum
Laboratorio I qfb 2009 mum
 
Emerging Trends in Travel and Hospitality Industry
Emerging Trends in Travel and Hospitality IndustryEmerging Trends in Travel and Hospitality Industry
Emerging Trends in Travel and Hospitality Industry
 
4D
4D4D
4D
 
Risk-Based Contracting: Background, Assessment, and Implementation
Risk-Based Contracting: Background, Assessment, and ImplementationRisk-Based Contracting: Background, Assessment, and Implementation
Risk-Based Contracting: Background, Assessment, and Implementation
 
Water microbiology
Water microbiologyWater microbiology
Water microbiology
 
Síntesis de hormonas ováricas
Síntesis de hormonas ováricasSíntesis de hormonas ováricas
Síntesis de hormonas ováricas
 
Gestao de Mudanças
Gestao de MudançasGestao de Mudanças
Gestao de Mudanças
 

Similar to Firmware Prototyping and Optimization Tips

Long Life Software
Long Life SoftwareLong Life Software
Long Life SoftwareMike Long
 
UI Beyond the Browser - Software for Hardware Projects
UI Beyond the Browser - Software for Hardware ProjectsUI Beyond the Browser - Software for Hardware Projects
UI Beyond the Browser - Software for Hardware Projectspchristensen
 
Artificial Intelligence in practice - Gerbert Kaandorp - Codemotion Amsterdam...
Artificial Intelligence in practice - Gerbert Kaandorp - Codemotion Amsterdam...Artificial Intelligence in practice - Gerbert Kaandorp - Codemotion Amsterdam...
Artificial Intelligence in practice - Gerbert Kaandorp - Codemotion Amsterdam...Codemotion
 
How to hire and keep engineers happy public
How to hire and keep engineers happy publicHow to hire and keep engineers happy public
How to hire and keep engineers happy publicPiaw Na
 
Low Cost Assistive Technology Solutions
Low Cost Assistive Technology SolutionsLow Cost Assistive Technology Solutions
Low Cost Assistive Technology Solutionswill wade
 
NetWork - 15.10.2011 - Applied code generation in .NET
NetWork - 15.10.2011 - Applied code generation in .NET NetWork - 15.10.2011 - Applied code generation in .NET
NetWork - 15.10.2011 - Applied code generation in .NET Dmytro Mindra
 
Arduino, Open Source and The Internet of Things Landscape
Arduino, Open Source and The Internet of Things LandscapeArduino, Open Source and The Internet of Things Landscape
Arduino, Open Source and The Internet of Things LandscapeJustin Grammens
 
Ray speerchipsensorsei letterkenny
Ray speerchipsensorsei letterkennyRay speerchipsensorsei letterkenny
Ray speerchipsensorsei letterkennythreesixty
 
GenerativeAI and Automation - IEEE ACSOS 2023.pptx
GenerativeAI and Automation - IEEE ACSOS 2023.pptxGenerativeAI and Automation - IEEE ACSOS 2023.pptx
GenerativeAI and Automation - IEEE ACSOS 2023.pptxAllen Chan
 
Implementing AI: Running AI at the Edge
Implementing AI: Running AI at the EdgeImplementing AI: Running AI at the Edge
Implementing AI: Running AI at the EdgeKTN
 
Software Security : From school to reality and back!
Software Security : From school to reality and back!Software Security : From school to reality and back!
Software Security : From school to reality and back!Peter Hlavaty
 
Lec0.ppt
Lec0.pptLec0.ppt
Lec0.pptputmy
 
Internet of Things, TYBSC IT, Semester 5, Unit II
Internet of Things, TYBSC IT, Semester 5, Unit IIInternet of Things, TYBSC IT, Semester 5, Unit II
Internet of Things, TYBSC IT, Semester 5, Unit IIArti Parab Academics
 
Algorithm Marketplace and the new "Algorithm Economy"
Algorithm Marketplace and the new "Algorithm Economy"Algorithm Marketplace and the new "Algorithm Economy"
Algorithm Marketplace and the new "Algorithm Economy"Diego Oppenheimer
 
Raspberry Pi, Arduino and the Maker Movement
Raspberry Pi, Arduino and the Maker MovementRaspberry Pi, Arduino and the Maker Movement
Raspberry Pi, Arduino and the Maker Movementsrmonk
 
Rettig.Interaction Design History.V1.5
Rettig.Interaction Design History.V1.5Rettig.Interaction Design History.V1.5
Rettig.Interaction Design History.V1.5pemi hua
 
You and your code.pdf
You and your code.pdfYou and your code.pdf
You and your code.pdfTony Khánh
 

Similar to Firmware Prototyping and Optimization Tips (20)

Long Life Software
Long Life SoftwareLong Life Software
Long Life Software
 
UI Beyond the Browser - Software for Hardware Projects
UI Beyond the Browser - Software for Hardware ProjectsUI Beyond the Browser - Software for Hardware Projects
UI Beyond the Browser - Software for Hardware Projects
 
Artificial Intelligence in practice - Gerbert Kaandorp - Codemotion Amsterdam...
Artificial Intelligence in practice - Gerbert Kaandorp - Codemotion Amsterdam...Artificial Intelligence in practice - Gerbert Kaandorp - Codemotion Amsterdam...
Artificial Intelligence in practice - Gerbert Kaandorp - Codemotion Amsterdam...
 
How to hire and keep engineers happy public
How to hire and keep engineers happy publicHow to hire and keep engineers happy public
How to hire and keep engineers happy public
 
Low Cost Assistive Technology Solutions
Low Cost Assistive Technology SolutionsLow Cost Assistive Technology Solutions
Low Cost Assistive Technology Solutions
 
NetWork - 15.10.2011 - Applied code generation in .NET
NetWork - 15.10.2011 - Applied code generation in .NET NetWork - 15.10.2011 - Applied code generation in .NET
NetWork - 15.10.2011 - Applied code generation in .NET
 
Arduino, Open Source and The Internet of Things Landscape
Arduino, Open Source and The Internet of Things LandscapeArduino, Open Source and The Internet of Things Landscape
Arduino, Open Source and The Internet of Things Landscape
 
Infinite uptime berkeley 2015
Infinite uptime berkeley 2015Infinite uptime berkeley 2015
Infinite uptime berkeley 2015
 
Ray speerchipsensorsei letterkenny
Ray speerchipsensorsei letterkennyRay speerchipsensorsei letterkenny
Ray speerchipsensorsei letterkenny
 
GenerativeAI and Automation - IEEE ACSOS 2023.pptx
GenerativeAI and Automation - IEEE ACSOS 2023.pptxGenerativeAI and Automation - IEEE ACSOS 2023.pptx
GenerativeAI and Automation - IEEE ACSOS 2023.pptx
 
Implementing AI: Running AI at the Edge
Implementing AI: Running AI at the EdgeImplementing AI: Running AI at the Edge
Implementing AI: Running AI at the Edge
 
Copy and Paste Hardware
Copy and Paste Hardware Copy and Paste Hardware
Copy and Paste Hardware
 
Traits of a Good Engineer
Traits of a Good EngineerTraits of a Good Engineer
Traits of a Good Engineer
 
Software Security : From school to reality and back!
Software Security : From school to reality and back!Software Security : From school to reality and back!
Software Security : From school to reality and back!
 
Lec0.ppt
Lec0.pptLec0.ppt
Lec0.ppt
 
Internet of Things, TYBSC IT, Semester 5, Unit II
Internet of Things, TYBSC IT, Semester 5, Unit IIInternet of Things, TYBSC IT, Semester 5, Unit II
Internet of Things, TYBSC IT, Semester 5, Unit II
 
Algorithm Marketplace and the new "Algorithm Economy"
Algorithm Marketplace and the new "Algorithm Economy"Algorithm Marketplace and the new "Algorithm Economy"
Algorithm Marketplace and the new "Algorithm Economy"
 
Raspberry Pi, Arduino and the Maker Movement
Raspberry Pi, Arduino and the Maker MovementRaspberry Pi, Arduino and the Maker Movement
Raspberry Pi, Arduino and the Maker Movement
 
Rettig.Interaction Design History.V1.5
Rettig.Interaction Design History.V1.5Rettig.Interaction Design History.V1.5
Rettig.Interaction Design History.V1.5
 
You and your code.pdf
You and your code.pdfYou and your code.pdf
You and your code.pdf
 

More from makezine

Ben Kaufman, founder and CEO, Quirky
Ben Kaufman, founder and CEO, QuirkyBen Kaufman, founder and CEO, Quirky
Ben Kaufman, founder and CEO, Quirkymakezine
 
Robert Faludi, collaborative strategy leader, Digi International
Robert Faludi, collaborative strategy leader, Digi InternationalRobert Faludi, collaborative strategy leader, Digi International
Robert Faludi, collaborative strategy leader, Digi Internationalmakezine
 
Dave Merrill, co-founder and president, Sifteo
Dave Merrill, co-founder and president, SifteoDave Merrill, co-founder and president, Sifteo
Dave Merrill, co-founder and president, Sifteomakezine
 
Zak homuth at Hardware Innovation Summit 2013
Zak homuth at Hardware Innovation Summit 2013Zak homuth at Hardware Innovation Summit 2013
Zak homuth at Hardware Innovation Summit 2013makezine
 
Zach hoeken smith at Hardware Innovation Summit 2013
Zach hoeken smith at Hardware Innovation Summit 2013Zach hoeken smith at Hardware Innovation Summit 2013
Zach hoeken smith at Hardware Innovation Summit 2013makezine
 
Wayne losey at Hardware Innovation Summit 2013
Wayne losey at Hardware Innovation Summit 2013Wayne losey at Hardware Innovation Summit 2013
Wayne losey at Hardware Innovation Summit 2013makezine
 
Ted hall at Hardware Innovation Summit 2013
Ted hall at Hardware Innovation Summit 2013Ted hall at Hardware Innovation Summit 2013
Ted hall at Hardware Innovation Summit 2013makezine
 
Scott N. Miller at Hardware Innovation Summit 2013
Scott N. Miller at Hardware Innovation Summit 2013Scott N. Miller at Hardware Innovation Summit 2013
Scott N. Miller at Hardware Innovation Summit 2013makezine
 
Robert Stephens at Hardware Innovation Summit 2013
Robert Stephens at Hardware Innovation Summit 2013Robert Stephens at Hardware Innovation Summit 2013
Robert Stephens at Hardware Innovation Summit 2013makezine
 
Rachel Kalmar at Hardware Innovation Summit 2013
Rachel Kalmar at Hardware Innovation Summit 2013Rachel Kalmar at Hardware Innovation Summit 2013
Rachel Kalmar at Hardware Innovation Summit 2013makezine
 
Peter Platzer at Hardware Innovation Summit 2013
Peter Platzer at Hardware Innovation Summit 2013Peter Platzer at Hardware Innovation Summit 2013
Peter Platzer at Hardware Innovation Summit 2013makezine
 
Lisa Qiu Fetterman at Hardware Innovation Summit 2013
Lisa Qiu Fetterman at Hardware Innovation Summit 2013Lisa Qiu Fetterman at Hardware Innovation Summit 2013
Lisa Qiu Fetterman at Hardware Innovation Summit 2013makezine
 
Kate Drane at Hardware Innovation Summit 2013
Kate Drane at Hardware Innovation Summit 2013Kate Drane at Hardware Innovation Summit 2013
Kate Drane at Hardware Innovation Summit 2013makezine
 
John Park at Hardware Innovation Summit 2013
John Park at Hardware Innovation Summit 2013John Park at Hardware Innovation Summit 2013
John Park at Hardware Innovation Summit 2013makezine
 
Jeremy Conrad at Hardware Innovation Summit 2013
Jeremy Conrad at Hardware Innovation Summit 2013Jeremy Conrad at Hardware Innovation Summit 2013
Jeremy Conrad at Hardware Innovation Summit 2013makezine
 
Eric Jennings & Sally Carson at Hardware Innovation Summit 2013
Eric Jennings & Sally Carson at Hardware Innovation Summit 2013Eric Jennings & Sally Carson at Hardware Innovation Summit 2013
Eric Jennings & Sally Carson at Hardware Innovation Summit 2013makezine
 
Chris Anderson at Hardware Innovation Summit 2013
Chris Anderson at Hardware Innovation Summit 2013Chris Anderson at Hardware Innovation Summit 2013
Chris Anderson at Hardware Innovation Summit 2013makezine
 
Cheryl Kellond at Hardware Innovation Summit 2013
Cheryl Kellond at Hardware Innovation Summit 2013Cheryl Kellond at Hardware Innovation Summit 2013
Cheryl Kellond at Hardware Innovation Summit 2013makezine
 
Bunnie Huang at Hardware Innovation Summit 2013
Bunnie Huang at Hardware Innovation Summit 2013Bunnie Huang at Hardware Innovation Summit 2013
Bunnie Huang at Hardware Innovation Summit 2013makezine
 
Brent Polishak at Hardware Innovation Summit 2013
Brent Polishak at Hardware Innovation Summit 2013Brent Polishak at Hardware Innovation Summit 2013
Brent Polishak at Hardware Innovation Summit 2013makezine
 

More from makezine (20)

Ben Kaufman, founder and CEO, Quirky
Ben Kaufman, founder and CEO, QuirkyBen Kaufman, founder and CEO, Quirky
Ben Kaufman, founder and CEO, Quirky
 
Robert Faludi, collaborative strategy leader, Digi International
Robert Faludi, collaborative strategy leader, Digi InternationalRobert Faludi, collaborative strategy leader, Digi International
Robert Faludi, collaborative strategy leader, Digi International
 
Dave Merrill, co-founder and president, Sifteo
Dave Merrill, co-founder and president, SifteoDave Merrill, co-founder and president, Sifteo
Dave Merrill, co-founder and president, Sifteo
 
Zak homuth at Hardware Innovation Summit 2013
Zak homuth at Hardware Innovation Summit 2013Zak homuth at Hardware Innovation Summit 2013
Zak homuth at Hardware Innovation Summit 2013
 
Zach hoeken smith at Hardware Innovation Summit 2013
Zach hoeken smith at Hardware Innovation Summit 2013Zach hoeken smith at Hardware Innovation Summit 2013
Zach hoeken smith at Hardware Innovation Summit 2013
 
Wayne losey at Hardware Innovation Summit 2013
Wayne losey at Hardware Innovation Summit 2013Wayne losey at Hardware Innovation Summit 2013
Wayne losey at Hardware Innovation Summit 2013
 
Ted hall at Hardware Innovation Summit 2013
Ted hall at Hardware Innovation Summit 2013Ted hall at Hardware Innovation Summit 2013
Ted hall at Hardware Innovation Summit 2013
 
Scott N. Miller at Hardware Innovation Summit 2013
Scott N. Miller at Hardware Innovation Summit 2013Scott N. Miller at Hardware Innovation Summit 2013
Scott N. Miller at Hardware Innovation Summit 2013
 
Robert Stephens at Hardware Innovation Summit 2013
Robert Stephens at Hardware Innovation Summit 2013Robert Stephens at Hardware Innovation Summit 2013
Robert Stephens at Hardware Innovation Summit 2013
 
Rachel Kalmar at Hardware Innovation Summit 2013
Rachel Kalmar at Hardware Innovation Summit 2013Rachel Kalmar at Hardware Innovation Summit 2013
Rachel Kalmar at Hardware Innovation Summit 2013
 
Peter Platzer at Hardware Innovation Summit 2013
Peter Platzer at Hardware Innovation Summit 2013Peter Platzer at Hardware Innovation Summit 2013
Peter Platzer at Hardware Innovation Summit 2013
 
Lisa Qiu Fetterman at Hardware Innovation Summit 2013
Lisa Qiu Fetterman at Hardware Innovation Summit 2013Lisa Qiu Fetterman at Hardware Innovation Summit 2013
Lisa Qiu Fetterman at Hardware Innovation Summit 2013
 
Kate Drane at Hardware Innovation Summit 2013
Kate Drane at Hardware Innovation Summit 2013Kate Drane at Hardware Innovation Summit 2013
Kate Drane at Hardware Innovation Summit 2013
 
John Park at Hardware Innovation Summit 2013
John Park at Hardware Innovation Summit 2013John Park at Hardware Innovation Summit 2013
John Park at Hardware Innovation Summit 2013
 
Jeremy Conrad at Hardware Innovation Summit 2013
Jeremy Conrad at Hardware Innovation Summit 2013Jeremy Conrad at Hardware Innovation Summit 2013
Jeremy Conrad at Hardware Innovation Summit 2013
 
Eric Jennings & Sally Carson at Hardware Innovation Summit 2013
Eric Jennings & Sally Carson at Hardware Innovation Summit 2013Eric Jennings & Sally Carson at Hardware Innovation Summit 2013
Eric Jennings & Sally Carson at Hardware Innovation Summit 2013
 
Chris Anderson at Hardware Innovation Summit 2013
Chris Anderson at Hardware Innovation Summit 2013Chris Anderson at Hardware Innovation Summit 2013
Chris Anderson at Hardware Innovation Summit 2013
 
Cheryl Kellond at Hardware Innovation Summit 2013
Cheryl Kellond at Hardware Innovation Summit 2013Cheryl Kellond at Hardware Innovation Summit 2013
Cheryl Kellond at Hardware Innovation Summit 2013
 
Bunnie Huang at Hardware Innovation Summit 2013
Bunnie Huang at Hardware Innovation Summit 2013Bunnie Huang at Hardware Innovation Summit 2013
Bunnie Huang at Hardware Innovation Summit 2013
 
Brent Polishak at Hardware Innovation Summit 2013
Brent Polishak at Hardware Innovation Summit 2013Brent Polishak at Hardware Innovation Summit 2013
Brent Polishak at Hardware Innovation Summit 2013
 

Recently uploaded

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 

Firmware Prototyping and Optimization Tips

  • 1. Eric Weddington Marketing Manager, Open Source & Community Atmel @eric_weddington Board Building
  • 2. Firmware: Prototype to Product Eric Weddington Marketing Manager, Open Source & Community
  • 3.
  • 4.
  • 6. Prototype Stage “Premature optimization is the root of all evil.” – Donald Knuth, Professor Emeritus of the Art of Computer Programming at Stanford University
  • 7. When should I optimize my code? • To meet system requirements and constraints… –Time –Space –Quality • Or, for a possible economic benefit…
  • 9. Why think about Scale? Do the math… • Spend $100,000 on engineers and tools… • To save 100 bytes of code space… • To go to a smaller chip, with less memory… • That costs 10 cents less. • But, if you sell 10 million units… • You just saved $1,000,000… • Minus engineering/tool costs: $900,000.
  • 10. Know Your Tools • Compiler toolchain is very good, but not perfect… • Learn to inspect the assembly code • Compiler switches • Coding tips and tricks • Knowing your computer language • Knowing data structures / algorithms • White papers available • User forums available
  • 11. Open Source Software Licensing • Using Open Source Software in commercial products • Do I want my code to be open to every one? • Can I use this code without burdens on myself, or customer, when I distribute my product? • Answers depends on intent of project / product.
  • 12. Firmware: Prototype to Product 1. Don’t optimize too soon 2. Optimize when needed – To meet system requirements – Possible economic benefits 1. Know your tools 2. Software licenses matter

Editor's Notes

  1. Introduction Confession / secret
  2. Story about Embedded Systems Meetup group in Colorado Springs: Making a camera trigger to photograph lightning.
  3. Compiler switches: GCC has switches to control just about everything Coding tips and tricks: Examples, counting down in a for loop, switch statements Computer language & data structures: coding up a menu on a display will make you learn to code an array of structures with pointers to functions. Or how to use the bitwise operators in C to efficiently set up registers.
  4. Obligatory disclaimer: IANAL
  5. General guidelines.