We may earn an affiliate commission when you visit our partners.
Course image
Matt Hogan

This online course from the Raspberry Pi Foundation explores how computers do interesting things with data. You'll discover how to represent and manipulate text, images and sound and compression and other algorithms.

What's inside

Learning objectives

  • Describe how computers represent things in binary
  • Explain common text encoding (ascii and utf-8)
  • Investigate the physics of sound, and how sampling allows computers to represent sounds
  • Compare lossy and lossless compression
  • Evaluate whether to use a bitmap or a vector image
  • Over the following three weeks, you will:

Syllabus

This course will cover:
Units of information
Character encoding
Representing images
Read more
Representing sound
Data compression

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Explores fundamental computing concepts that are used across many industries
Taught by instructors from the Raspberry Pi Foundation, who are established leaders in computer education
Provides a strong foundation for those new to computing and data
Covers core concepts in data representation, manipulation, and compression
Suitable for beginners with little to no prior knowledge in computing
Students should expect to spend time studying and completing assignments outside of class

Save this course

Save Data Representation in Computing: Bring Data to Life to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Data Representation in Computing: Bring Data to Life with these activities:
Review the basics of information theory
Strengthen your grasp of foundational concepts by reviewing information theory, which provides the mathematical framework for data representation and compression.
Browse courses on Information Theory
Show steps
  • Review the concepts of information entropy, mutual information, and channel capacity
  • Understand the theoretical limits of data compression
Review prerequisite computer hardware
Start off on the right foot by recalling foundational knowledge of computer hardware so that you can jump into more complex concepts covered in the course.
Browse courses on Computer Hardware
Show steps
  • Review different types of computer hardware, such as CPUs, RAM, and storage devices.
  • Understand the functions of each hardware component and how they work together.
Glossary of key terms and concepts
Solidify your understanding of key terms and concepts by creating a glossary.
Show steps
  • Identify the most important terms and concepts from the course
  • Write clear and concise definitions for each term or concept
  • Organize your glossary in a logical manner
Ten other activities
Expand to see all activities and additional details
Show all 13 activities
Review binary basics
Enhance your understanding of binary operations and arithmetic, which is fundamental to understanding how data is stored and processed by computers.
Browse courses on Binary Arithmetic
Show steps
  • Revisit the concept of binary numbers and their representation
  • Practice converting between binary and decimal numbers
  • Understand the basic binary arithmetic operations (addition, subtraction, multiplication, division)
Work through practice problems on data representation
Solidify your understanding of how data is represented in computers by working through practice problems.
Browse courses on Data Representation
Show steps
  • Convert numbers from decimal to binary and vice versa.
  • Encode and decode text using ASCII.
  • Perform bitwise operations on binary numbers.
Volunteer as a mentor in the course discussion forums
Enhance your understanding of the course material while helping others by answering questions and providing support in the course discussion forums.
Show steps
  • Volunteer to be a mentor in the course discussion forums
  • Actively participate in discussions, answer questions, and provide guidance to other students
  • Review and reflect on discussions to reinforce your own understanding
Attend coding meetups or join online forums for Raspberry Pi enthusiasts
Connect with other Raspberry Pi users to share knowledge and learn from their experiences.
Browse courses on Raspberry Pi
Show steps
  • Find local coding meetups or online forums dedicated to Raspberry Pi.
  • Attend meetups or participate in discussions on the forums.
  • Share your knowledge and ask questions to learn from others.
Exercise: Text encoding drills
Reinforce your knowledge of text encoding techniques by solving practice problems and exercises.
Show steps
  • Practice encoding and decoding characters using ASCII and UTF-8
  • Understand the limitations and strengths of different text encoding formats
Follow tutorials to create simple audio and image processing programs
Deepen your understanding of audio and image representation by creating your own programs.
Browse courses on Audio Processing
Show steps
  • Find tutorials on creating simple audio processing programs in Python.
  • Follow the tutorials to create your own programs that can perform basic audio processing tasks.
  • Repeat the process for image processing.
Explore sound sampling and compression techniques
Deepen your understanding of how computers represent and manipulate sound by following guided tutorials on sampling and compression.
Browse courses on Audio Compression
Show steps
  • Learn the principles of sound sampling and quantization
  • Explore different audio compression techniques (lossy and lossless)
Review and organize course materials
Improve retention and recall by regularly reviewing and organizing notes, assignments, quizzes, and exams from the course.
Show steps
  • Organize your notes and materials into a system that works for you
  • Review your notes and materials regularly, even after completing the course
Build a simple project that applies data compression techniques
Test your understanding of data compression by applying it to a real-world project.
Browse courses on Data Compression
Show steps
  • Choose a dataset to compress.
  • Implement a data compression algorithm in a programming language.
  • Compress the dataset using your algorithm and evaluate the results.
Develop a data compression algorithm
Solidify your understanding of data compression by creating your own algorithm and experimenting with different techniques.
Show steps
  • Research and select a data compression technique
  • Implement your chosen algorithm in a programming language
  • Test and evaluate the performance of your algorithm

Career center

Learners who complete Data Representation in Computing: Bring Data to Life will develop knowledge and skills that may be useful to these careers:
Computer Programmer
Computer Programmers use data representation to bring color and vibrancy to computer systems by instructing machines how to transform data into visuals, music, and more. The work that they complete is often task-based, but the results are often essential for how end-users interact with technology. Given that Computer Programmers deal with so many different types of media, understanding the concepts of data representation is key for success. This course covers the representation of text, sound, and images and will provide a strong foundation for a Computer Programmer's work.
Computer Systems Analyst
A thorough understanding of data representation is essential for the success of a Computer Systems Analyst. They work to transform business processes into computer-based systems and must have the skills to bridge between business teams and programmers. They must also be able to gather diverse requirements and translate them into functional specifications. The representation of data in varying formats and standards plays a significant role in the work of a Computer Systems Analyst.
Data Scientist
A Data Scientist typically possesses a strong understanding of advanced mathematical concepts and a background in data analysis. To discover meaningful insights from the data they analyze, Data Scientists must understand how data is represented and stored. This course covers the fundamentals of how machines represent data, which can help build a solid foundation for work in Data Science.
Software Developer
Software Developers may oversee all aspects of programming a given system. Given this, they will need the ability to work with different data types and understand how their formats impact the functionality of the software. This course covers the representation of both textual and non-textual data, which will be essential to success in Software Development.
Web Developer
Web Developers are tasked with designing, building, and maintaining websites. This requires a strong foundation in how computers represent information, as they work with different data types and formats on a daily basis. This course covers concepts in data compression and the representation of images, sound, and text. This can help a Web Developer understand how to effectively and efficiently serve web content to users.
IT Manager
IT Managers plan, implement, and maintain all aspects of an organization's IT infrastructure. They need to have a strong understanding of data representation and IT management principles. This course covers the fundamentals of data representation and can help build a solid foundation for IT Managers.
Data Analyst
Data Analysts are responsible for collecting, analyzing, and interpreting data to help businesses make informed decisions. They need to have a solid understanding of data representation and data analysis techniques. This course covers the fundamentals of data representation and can help build a strong foundation for Data Analysts.
Software Engineer
Software Engineers apply engineering principles to the design, development, and maintenance of software systems. They need to have a strong understanding of data representation and data structures. This course covers the fundamentals of data representation and can help build a solid foundation for Software Engineers.
Applications Developer
Applications Developers design and develop software applications. They need to have a strong understanding of data representation and software development principles. This course covers the fundamentals of data representation and can help build a solid foundation for Applications Developers.
Database Manager
Database Managers plan, implement, and maintain database systems. They need to have a strong understanding of data representation and database management principles. This course covers the fundamentals of data representation and can help build a solid foundation for Database Managers.
Computer Network Architect
Computer Network Architects design and build computer networks. They need to understand how data is represented and transmitted over networks to do their jobs effectively. This course covers the fundamentals of data representation and can help build a solid foundation for Computer Network Architects.
Database Administrator
A Database Administrator oversees the storage, maintenance, and recovery of data in an organization. To perform this job effectively, a person in this role needs to have an understanding of how database management systems represent and store data. This course covers the fundamentals of data representation and can help build a strong foundation for Database Administrators.
Computer Support Specialist
Computer Support Specialists help users troubleshoot computer problems and provide technical support. They need to understand how data is represented and stored to effectively diagnose and solve issues. This course covers the fundamentals of data representation and can help build a solid foundation for Computer Support Specialists.
Web Designer
Web Designers create and maintain websites. They need to have a strong understanding of data representation and web design principles. This course covers the fundamentals of data representation and can help build a solid foundation for Web Designers.
Information Security Analyst
Information Security Analysts must understand data representation to stay ahead of security threats. They protect an organization's computer systems by designing and implementing security measures. This course will provide an overview of how computers represent data, which will aid in understanding how hackers try to exploit data.

Reading list

We've selected 14 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Data Representation in Computing: Bring Data to Life.
Classic work on computer programming. It covers a wide range of topics, including data structures, algorithms, and programming languages. It valuable resource for those seeking a deep understanding of the art of computer programming.
Collection of essays on programming. It covers a wide range of topics, including data structures, algorithms, and programming techniques. It valuable resource for those seeking to improve their programming skills and learn from one of the masters of the craft.
Provides a comprehensive introduction to algorithms and data structures. It covers topics such as sorting, searching, graph algorithms, and dynamic programming. It valuable resource for those seeking to develop a strong foundation in algorithms and data structures.
Provides a comprehensive overview of computer architecture and organization, covering topics such as binary representation, data representation, and data manipulation. It valuable resource for those seeking a deeper understanding of the underlying principles of computing.
Provides a comprehensive guide to software development. It covers topics such as software design, coding, testing, and debugging. It valuable resource for those seeking to improve their software development skills and become more productive.
Classic work on software development. It covers topics such as software engineering, project management, and team dynamics. It valuable resource for those seeking to improve their software development skills and become more productive.
Classic work on software development. It covers topics such as team dynamics, motivation, and communication. It valuable resource for those seeking to improve their software development skills and become more productive.
Classic work on open source software development. It covers topics such as the history of open source software, the benefits of open source software, and the challenges of open source software development. It valuable resource for those seeking to learn more about open source software development.
Provides a comprehensive guide to using Git for version control. It covers topics such as branching, merging, and resolving conflicts. It valuable resource for those seeking to improve their Git skills and become more productive.
Provides a comprehensive guide to using Git for version control. It covers topics such as branching, merging, and resolving conflicts. It valuable resource for those seeking to improve their Git skills and become more productive.
Provides a comprehensive guide to preparing for programming interviews. It covers topics such as data structures, algorithms, and system design. It valuable resource for those seeking to improve their interview skills and land their dream job.
Provides a comprehensive introduction to data structures and algorithms in Java. It covers topics such as arrays, linked lists, stacks, queues, trees, and graphs. It valuable resource for those seeking to develop a strong foundation in data structures and algorithms.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Data Representation in Computing: Bring Data to Life.
Introduction to NLP for Data Practitioners
Processing and Filtering Text Data with Bash and Z Shell
Building Features from Text Data
Exploratory Data Analysis with Textual Data in R /...
Explore Alteryx Designer Tools: Browse, Input Data,...
More Data Mining with R
Data Manipulation and Business Analysis using Spreadsheets
Data Manipulation with Alteryx
Big data and Language 1
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser