Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Fundamentals for Self-Taught Programmers

You're reading from   Fundamentals for Self-Taught Programmers Embark on your software engineering journey without exhaustive courses and bulky tutorials

Arrow left icon
Product type Paperback
Published in Apr 2023
Publisher Packt
ISBN-13 9781801812115
Length 254 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Jasmine Greenaway Jasmine Greenaway
Author Profile Icon Jasmine Greenaway
Jasmine Greenaway
Arrow right icon
View More author details
Toc

Table of Contents (20) Chapters Close

Preface 1. Part 1: Software Engineering Basics
2. Chapter 1: Defining Software Engineering FREE CHAPTER 3. Chapter 2: The Software Engineering Life Cycle 4. Chapter 3: Roles in Software Engineering 5. Part 2: Introduction to Programming
6. Chapter 4: Programming Languages and Introduction to C# 7. Chapter 5: Writing Your First C# Program 8. Chapter 6: Data Types in C# 9. Chapter 7: Flow Control in C# 10. Chapter 8: Introduction to Data Structures, Algorithms, and Pseudocode 11. Chapter 9: Applying Algorithms in C# 12. Chapter 10: Object-Oriented Programming 13. Part 3: Software Engineering – the Profession
14. Chapter 11: Stories from Prominent Job Roles in Software Development 15. Chapter 12: Coding Best Practices 16. Chapter 13: Tips and Tricks to Kickstart Your Software Engineering Career 17. Assessments 18. Index 19. Other Books You May Enjoy

What is computer science?

Computer science is the study of computational problem solving, where computation refers to systems built for the purpose of making a calculation to some effect. These systems could be computers, their internal and/or external hardware that interacts with them, the operating system and software that runs on them, the programming languages used to build them, and the mathematical equations and proofs used to make them efficient.

While computer science is a broad topic that mostly refers to theory, it also serves as an umbrella term for a vast number of practices that require computation, including the practice of writing code, also known as programming. One such practice is data science, which happens to branch out into multiple practices as well. Data science involves the use of scientific methods, such as statistics, to extract knowledge from and understand the hidden relationships within a given set of data. This practice includes building a model, which is a system typically comprised of mathematical computations that will take data as an input and produce a result as an output. This is usually an algorithm, which is a special set of instructions that achieves a certain goal and is typically a computer program that the data scientist may create or use. The output of a model is used to gain actionable insights from the data and is often used to “teach” the model how to produce a more precise output.

The use of models feeds into another practice called machine learning, which focuses on creating models to uncover meaningful information and patterns from data to support rational decisions. Machine learning is a subset of artificial intelligence, where acquired knowledge, such as data, is applied and used to make rational decisions without human interaction. A common example of this is using applications that adopt speech-to-text, where the application will improve and become accustomed to a voice over time, making the conversion to text even more accurate. Artificial intelligence converts your spoken words into text, whereas machine learning uses a model to confirm and improve on words it may have gotten wrong, and data science uses your voice as the data to make sense of.

As you can see, practices within computer science can produce their own set of specialized terms. It’s common for professionals in the computer science field to have breadth in some of these areas and depth in others. For example, a data scientist may have experience building models and building AI applications. Computer science is a vast field of varied specializations but each path leads to computation for solving problems.

You have been reading a chapter from
Fundamentals for Self-Taught Programmers
Published in: Apr 2023
Publisher: Packt
ISBN-13: 9781801812115
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image