SlideShare a Scribd company logo
1 of 35
Download to read offline
Golang, Python or C/C++,
Who wins?
Hello!
I am Obed N Muñoz
I am here because I love to give presentations.
You can find me at @obedmr
Instructions for use
Open this document in Google Slides (if you are at slidescarnival.com use the button below this
presentation)
You have to be signed in to your Google account
EDIT IN GOOGLE SLIDES
Go to the File menu and select Make a copy.
You will get a copy of this document on your
Google Drive and will be able to edit, add or
delete slides.
EDIT IN POWERPOINT®
Go to the File menu and select Download as
Microsoft PowerPoint. You will get a .pptx file
that you can edit in PowerPoint.
Remember to download and install the fonts
used in this presentation (you’ll find the links to
the font files needed in the Presentation design
slide)
More info on how to use this template at www.slidescarnival.com/help-use-presentation-template
This template is free to use under Creative Commons Attribution license. You can keep the Credits slide or
mention SlidesCarnival and other resources used in a slide footer.
“
What is this talk about?
◇ First things first
◇ The interview question
◇ Overview of C/C++, Python and Golang
◇ So, who wins?
◇ Let's wrap it
◇ Q / A
Wait ...
➔ Which programming
language you like or use
more?
➔ Which one is best? why?
First things first
Please don't blame your Computer
teachers
1
“
A programming language is a formal
language that specifies a set of
instructions that can be used to
produce various kinds of output.
Programming languages generally
consist of instructions for a computer.
Programming languages can be used to
create programs that implement
specific algorithms.
https://en.wikipedia.org/wiki/Programming_language
“
A programming paradigms are a way to
classify programming languages based
on the features of various
programming languages. Languages
can be classified into multiple paradigm.
https://en.wikipedia.org/wiki/Programming_paradigm
“
➔ Imperative
➔ Functional
➔ Declarative
➔ Object-Oriented
➔ Procedural
➔ Logic
➔ Symbolic
“
The interview
question
You have an array and ...
2
“
You have an array of integers, change
its order in reverse. Don't use an extra
array.
Input: [ 34, 6, 5, 6, 5, 56 , 754, 6 ]
Output: [ 6, 754, 56, 5, 6, 5, 6, 34 ]
“
C
“
Python
“
Golang
Software ArchitectureBachelor, Master, Phd
ProgrammerTechnician
Software EngineerBachelor, Master, Phd
Remember
You will be hired as a
Software Engineer
Programmer
vs
Software Engineer
C/C++, Python and
Golang Overview
This is what you "should" now
3
C/C++
◇ I'm sure you learned it at School
◇ Dennis Ritchie ( C )
◇ Bjarne Stroustrup ( C++ )
◇ Best choice for performance
◇ Compiled
◇ Many languages are written on top of it
◇ Commonly used on device drivers
Credits
Special thanks to all the people who made and released
these awesome resources for free:
◇ Presentation template by SlidesCarnival
◇ Photographs by Unsplash
Python
◇ Guido van Rossum (1989)
◇ Written in C
◇ Interpreted
◇ General-purpose language
◇ Very popular on Systems Administration
◇ Getting some fame on Machine Learning
◇ Indentation
◇ Multi-platform
Golang
◇ Created by Google in 2007
◇ Robert Griesemer, Rob Pike, and Ken Thompson
◇ Compiled and statically typed
◇ Designed for concurrency
◇ Tooling
◇ Code Style and Conventions
◇ Gophers
So, who wins?
It's like Vim vs Emacs vs Nano vs
whatever editor
4
Golang
Because Google created it
Python
Because it's for millennials
C/C++
Because they will never die
How to decide the best
one
Questions:
- What do you need?
- Which problem you want to solve?
Performance,
Scalability,
Modularity
Low Level hardware
interaction
Usability
User Experience (UX)
Backend or
Frontend
APIs
Collaboration
School project, please
don't blame your
teachers
Let's wrap it
Did you pay attention?
Wake up ...
5
Don't marry with
any programming language
First things first
Don't blame your teacher, it will be useful at some point
You'll be hired as
Software Engineer
It's not the programming language,
It's the problem you want to solve
You decide ...
C/C++, Python, Golang …?
You will make money with any of them
Questions?
This is your time ...
Thanks!
Any questions?
You can find me at:
◇ @obedmr
◇ obed.n.munoz@gmail.com
◇ obedmr.com

More Related Content

What's hot

PowerPoint: Slides to Hell
PowerPoint: Slides to HellPowerPoint: Slides to Hell
PowerPoint: Slides to HellLawrie Hunter
 
Career Analysis and Strategy
Career Analysis and StrategyCareer Analysis and Strategy
Career Analysis and Strategyjafapatron
 
Screen recorder comparison schillerstrom
Screen recorder comparison schillerstromScreen recorder comparison schillerstrom
Screen recorder comparison schillerstromaschillerstrom
 
The Technique of Solving Html Assignment Questions
The Technique of Solving Html Assignment QuestionsThe Technique of Solving Html Assignment Questions
The Technique of Solving Html Assignment QuestionsLesa Cote
 
Using technology to_assist_ell_s_to_acquire_en
Using technology to_assist_ell_s_to_acquire_enUsing technology to_assist_ell_s_to_acquire_en
Using technology to_assist_ell_s_to_acquire_encarolgaudet
 
Technical lead, the balance between leadership and technical skills
Technical lead, the balance between leadership and technical skillsTechnical lead, the balance between leadership and technical skills
Technical lead, the balance between leadership and technical skillsSoftware Guru
 
0708 Minor User Experience English
0708 Minor User Experience English0708 Minor User Experience English
0708 Minor User Experience EnglishHans Kemp
 
From Concrete to Abstract: Motivating Contexts for Novice Programmers
From Concrete to Abstract: Motivating Contexts for Novice ProgrammersFrom Concrete to Abstract: Motivating Contexts for Novice Programmers
From Concrete to Abstract: Motivating Contexts for Novice ProgrammersPeter Donaldson
 
How to code in the XXI century without losing your head
How to code in the XXI century without losing your headHow to code in the XXI century without losing your head
How to code in the XXI century without losing your headRené Olivo
 
Chapter 2 Benefits of Learning to Code
Chapter 2 Benefits of Learning to CodeChapter 2 Benefits of Learning to Code
Chapter 2 Benefits of Learning to CodePro Guide
 
Presentation georgikirilov
Presentation georgikirilovPresentation georgikirilov
Presentation georgikirilovGKirilov
 
Graphical User Interface
Graphical User InterfaceGraphical User Interface
Graphical User Interfacelistergc
 

What's hot (15)

PowerPoint: Slides to Hell
PowerPoint: Slides to HellPowerPoint: Slides to Hell
PowerPoint: Slides to Hell
 
Career Analysis and Strategy
Career Analysis and StrategyCareer Analysis and Strategy
Career Analysis and Strategy
 
Programming Process
Programming ProcessProgramming Process
Programming Process
 
Screen recorder comparison schillerstrom
Screen recorder comparison schillerstromScreen recorder comparison schillerstrom
Screen recorder comparison schillerstrom
 
Thinking like a Programmer
Thinking like a ProgrammerThinking like a Programmer
Thinking like a Programmer
 
The Technique of Solving Html Assignment Questions
The Technique of Solving Html Assignment QuestionsThe Technique of Solving Html Assignment Questions
The Technique of Solving Html Assignment Questions
 
Using technology to_assist_ell_s_to_acquire_en
Using technology to_assist_ell_s_to_acquire_enUsing technology to_assist_ell_s_to_acquire_en
Using technology to_assist_ell_s_to_acquire_en
 
At a glance
At a glanceAt a glance
At a glance
 
Technical lead, the balance between leadership and technical skills
Technical lead, the balance between leadership and technical skillsTechnical lead, the balance between leadership and technical skills
Technical lead, the balance between leadership and technical skills
 
0708 Minor User Experience English
0708 Minor User Experience English0708 Minor User Experience English
0708 Minor User Experience English
 
From Concrete to Abstract: Motivating Contexts for Novice Programmers
From Concrete to Abstract: Motivating Contexts for Novice ProgrammersFrom Concrete to Abstract: Motivating Contexts for Novice Programmers
From Concrete to Abstract: Motivating Contexts for Novice Programmers
 
How to code in the XXI century without losing your head
How to code in the XXI century without losing your headHow to code in the XXI century without losing your head
How to code in the XXI century without losing your head
 
Chapter 2 Benefits of Learning to Code
Chapter 2 Benefits of Learning to CodeChapter 2 Benefits of Learning to Code
Chapter 2 Benefits of Learning to Code
 
Presentation georgikirilov
Presentation georgikirilovPresentation georgikirilov
Presentation georgikirilov
 
Graphical User Interface
Graphical User InterfaceGraphical User Interface
Graphical User Interface
 

Similar to Golang, Python or C/C++, who wins

Golang (Go Programming Language)
Golang (Go Programming Language)Golang (Go Programming Language)
Golang (Go Programming Language)ShubhamMishra485
 
Pentester++
Pentester++Pentester++
Pentester++CTruncer
 
Introduction to Go
Introduction to GoIntroduction to Go
Introduction to GoSimon Hewitt
 
Creating a compiler for your own language
Creating a compiler for your own languageCreating a compiler for your own language
Creating a compiler for your own languageAndrea Tino
 
Autotools, Design Patterns and more
Autotools, Design Patterns and moreAutotools, Design Patterns and more
Autotools, Design Patterns and moreVicente Bolea
 
Intro to software development
Intro to software developmentIntro to software development
Intro to software developmentHawkman Academy
 
Kickstarting career as an Android developer.pdf
Kickstarting career as an Android developer.pdfKickstarting career as an Android developer.pdf
Kickstarting career as an Android developer.pdfShreyaDhurde
 
What is the best programming language for your web product?
What is the best programming language for your web product?What is the best programming language for your web product?
What is the best programming language for your web product?MobiDev
 
The Ring programming language version 1.10 book - Part 99 of 212
The Ring programming language version 1.10 book - Part 99 of 212The Ring programming language version 1.10 book - Part 99 of 212
The Ring programming language version 1.10 book - Part 99 of 212Mahmoud Samir Fayed
 
Preparing for the WebGeek DevCup
Preparing for the WebGeek DevCupPreparing for the WebGeek DevCup
Preparing for the WebGeek DevCupbryanbibat
 
An introduction to_golang.avi
An introduction to_golang.aviAn introduction to_golang.avi
An introduction to_golang.aviSeongJae Park
 
Introduction to go lang
Introduction to go langIntroduction to go lang
Introduction to go langAmal Mohan N
 
Programming languages and concepts by vivek parihar
Programming languages and concepts by vivek pariharProgramming languages and concepts by vivek parihar
Programming languages and concepts by vivek pariharVivek Parihar
 
You learned JavaScript - now what?
You learned JavaScript - now what?You learned JavaScript - now what?
You learned JavaScript - now what?Christian Heilmann
 
Articulate Studio '09 Presentation
Articulate Studio '09 PresentationArticulate Studio '09 Presentation
Articulate Studio '09 PresentationJenise Cook
 
P2 lecture3 screencasting_design_justification_billboardorposter
P2 lecture3 screencasting_design_justification_billboardorposterP2 lecture3 screencasting_design_justification_billboardorposter
P2 lecture3 screencasting_design_justification_billboardorposterBarbara Ann
 
How does one learn to program?
How does one learn to program?How does one learn to program?
How does one learn to program?Olmo F. Maldonado
 

Similar to Golang, Python or C/C++, who wins (20)

Golang (Go Programming Language)
Golang (Go Programming Language)Golang (Go Programming Language)
Golang (Go Programming Language)
 
Pentester++
Pentester++Pentester++
Pentester++
 
Introduction to Go
Introduction to GoIntroduction to Go
Introduction to Go
 
Creating a compiler for your own language
Creating a compiler for your own languageCreating a compiler for your own language
Creating a compiler for your own language
 
An Introduction to Go
An Introduction to GoAn Introduction to Go
An Introduction to Go
 
Autotools, Design Patterns and more
Autotools, Design Patterns and moreAutotools, Design Patterns and more
Autotools, Design Patterns and more
 
Intro to software development
Intro to software developmentIntro to software development
Intro to software development
 
Kickstarting career as an Android developer.pdf
Kickstarting career as an Android developer.pdfKickstarting career as an Android developer.pdf
Kickstarting career as an Android developer.pdf
 
What is the best programming language for your web product?
What is the best programming language for your web product?What is the best programming language for your web product?
What is the best programming language for your web product?
 
Let's Contribute
Let's ContributeLet's Contribute
Let's Contribute
 
The Ring programming language version 1.10 book - Part 99 of 212
The Ring programming language version 1.10 book - Part 99 of 212The Ring programming language version 1.10 book - Part 99 of 212
The Ring programming language version 1.10 book - Part 99 of 212
 
Preparing for the WebGeek DevCup
Preparing for the WebGeek DevCupPreparing for the WebGeek DevCup
Preparing for the WebGeek DevCup
 
An introduction to_golang.avi
An introduction to_golang.aviAn introduction to_golang.avi
An introduction to_golang.avi
 
Go fundamentals
Go fundamentalsGo fundamentals
Go fundamentals
 
Introduction to go lang
Introduction to go langIntroduction to go lang
Introduction to go lang
 
Programming languages and concepts by vivek parihar
Programming languages and concepts by vivek pariharProgramming languages and concepts by vivek parihar
Programming languages and concepts by vivek parihar
 
You learned JavaScript - now what?
You learned JavaScript - now what?You learned JavaScript - now what?
You learned JavaScript - now what?
 
Articulate Studio '09 Presentation
Articulate Studio '09 PresentationArticulate Studio '09 Presentation
Articulate Studio '09 Presentation
 
P2 lecture3 screencasting_design_justification_billboardorposter
P2 lecture3 screencasting_design_justification_billboardorposterP2 lecture3 screencasting_design_justification_billboardorposter
P2 lecture3 screencasting_design_justification_billboardorposter
 
How does one learn to program?
How does one learn to program?How does one learn to program?
How does one learn to program?
 

Recently uploaded

What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
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
 
"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
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
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
 
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
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 

Recently uploaded (20)

What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
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
 
"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
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
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
 
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!
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 

Golang, Python or C/C++, who wins

  • 1. Golang, Python or C/C++, Who wins?
  • 2. Hello! I am Obed N Muñoz I am here because I love to give presentations. You can find me at @obedmr
  • 3. Instructions for use Open this document in Google Slides (if you are at slidescarnival.com use the button below this presentation) You have to be signed in to your Google account EDIT IN GOOGLE SLIDES Go to the File menu and select Make a copy. You will get a copy of this document on your Google Drive and will be able to edit, add or delete slides. EDIT IN POWERPOINT® Go to the File menu and select Download as Microsoft PowerPoint. You will get a .pptx file that you can edit in PowerPoint. Remember to download and install the fonts used in this presentation (you’ll find the links to the font files needed in the Presentation design slide) More info on how to use this template at www.slidescarnival.com/help-use-presentation-template This template is free to use under Creative Commons Attribution license. You can keep the Credits slide or mention SlidesCarnival and other resources used in a slide footer.
  • 4.
  • 5. What is this talk about? ◇ First things first ◇ The interview question ◇ Overview of C/C++, Python and Golang ◇ So, who wins? ◇ Let's wrap it ◇ Q / A
  • 6. Wait ... ➔ Which programming language you like or use more? ➔ Which one is best? why?
  • 7. First things first Please don't blame your Computer teachers 1
  • 8. “ A programming language is a formal language that specifies a set of instructions that can be used to produce various kinds of output. Programming languages generally consist of instructions for a computer. Programming languages can be used to create programs that implement specific algorithms. https://en.wikipedia.org/wiki/Programming_language
  • 9. “ A programming paradigms are a way to classify programming languages based on the features of various programming languages. Languages can be classified into multiple paradigm. https://en.wikipedia.org/wiki/Programming_paradigm
  • 10. “ ➔ Imperative ➔ Functional ➔ Declarative ➔ Object-Oriented ➔ Procedural ➔ Logic ➔ Symbolic
  • 11.
  • 12.
  • 13. The interview question You have an array and ... 2
  • 14. “ You have an array of integers, change its order in reverse. Don't use an extra array. Input: [ 34, 6, 5, 6, 5, 56 , 754, 6 ] Output: [ 6, 754, 56, 5, 6, 5, 6, 34 ]
  • 15. “ C
  • 18. Software ArchitectureBachelor, Master, Phd ProgrammerTechnician Software EngineerBachelor, Master, Phd
  • 19. Remember You will be hired as a Software Engineer
  • 21. C/C++, Python and Golang Overview This is what you "should" now 3
  • 22. C/C++ ◇ I'm sure you learned it at School ◇ Dennis Ritchie ( C ) ◇ Bjarne Stroustrup ( C++ ) ◇ Best choice for performance ◇ Compiled ◇ Many languages are written on top of it ◇ Commonly used on device drivers
  • 23. Credits Special thanks to all the people who made and released these awesome resources for free: ◇ Presentation template by SlidesCarnival ◇ Photographs by Unsplash
  • 24. Python ◇ Guido van Rossum (1989) ◇ Written in C ◇ Interpreted ◇ General-purpose language ◇ Very popular on Systems Administration ◇ Getting some fame on Machine Learning ◇ Indentation ◇ Multi-platform
  • 25. Golang ◇ Created by Google in 2007 ◇ Robert Griesemer, Rob Pike, and Ken Thompson ◇ Compiled and statically typed ◇ Designed for concurrency ◇ Tooling ◇ Code Style and Conventions ◇ Gophers
  • 26. So, who wins? It's like Vim vs Emacs vs Nano vs whatever editor 4
  • 28. Python Because it's for millennials
  • 30. How to decide the best one Questions: - What do you need? - Which problem you want to solve? Performance, Scalability, Modularity Low Level hardware interaction Usability User Experience (UX) Backend or Frontend APIs Collaboration School project, please don't blame your teachers
  • 31. Let's wrap it Did you pay attention? Wake up ... 5
  • 32. Don't marry with any programming language First things first Don't blame your teacher, it will be useful at some point You'll be hired as Software Engineer
  • 33. It's not the programming language, It's the problem you want to solve You decide ... C/C++, Python, Golang …? You will make money with any of them
  • 35. Thanks! Any questions? You can find me at: ◇ @obedmr ◇ obed.n.munoz@gmail.com ◇ obedmr.com