# Essential Nodes & Concepts

In this section, we introduce the essential Nodes available in the Dynamo Library that will help you create your own visual program like a pro.

* [Geometry for Computational Design](https://primer2.dynamobim.org/5_essential_nodes_and_concepts/5-2_geometry-for-computational-design): How do I work with geometric elements in Dynamo? Explore multiple ways to create simple or complex geometries from primitives.
* [The Building Blocks of Programs:](https://primer2.dynamobim.org/5_essential_nodes_and_concepts/5-3_the-building-blocks-of-programs) What is "Data" and what are some fundamental types I can start using in my programs? Also, learn more about incorporating math and logic operations in your design workflow.
* [Designing with Lists: ](https://primer2.dynamobim.org/5_essential_nodes_and_concepts/5-4_designing-with-lists)How do I manage and coordinate my data structures? Understand more about the concept of List and use it to manage your design data efficiently.
* [Dictionaries in Dynamo: ](https://primer2.dynamobim.org/5_essential_nodes_and_concepts/5-5_dictionaries-in-dynamo)What are Dictionaries? Find out how to use dictionaries to look up specific data and values from existing results.
