Introduction to Python

Python is a powerful open-source programming language and one of the most popular worldwide. Its ecosystem is vast, with libraries and frameworks available for virtually every need, and is supported by a large user community. In this course, we will explore how Python can be leveraged to tackle complex challenges. With the Capstone Project, you will learn to manage big data by analyzing a large dataset of parametrized hull geometries. Completing this course will give you the knowledge and skills to understand and write Python code.

Early Access!

During the Early Access, you can enroll in the course at a reduced price and get early access to the course content (videos, documents, quizzes, etc.) as they are created and to the finished course the instant it’s ready.

If you plan to take this course, this is the moment at which you can enroll at a price discount. Do not miss it!

Welcome!

Welcome to the Introduction to Python course!

In this course, we will explore how Python can be leveraged to tackle the unique and complex challenges Yacht Designers, Naval Architects, and Engineers face. From data analysis and simulation to automation and system integration, Python offers a comprehensive and efficient solution that outperforms traditional languages like C or C++ in versatility, ease of use, and speed of development. Whether you are analyzing the structural integrity of a vessel, optimizing the design of a new marine structure, or conducting environmental impact assessments, Python will empower you to achieve your goals with greater efficiency and innovation.

This course is suitable for a broad audience and includes a project and a final assignment related to Yacht Design and Naval Architecture. The instructors are also currently developing a course series dedicated to Machine Learning (ML), in which the programming language will be Python. If you plan to pursue the ML courses, you may want to take this course!

Please login for access. Login

Why Python?

Python is a powerful, efficient, reliable, and versatile programming language that consistently ranks as one of the most popular programming languages in the world. It has gained widespread use in many fields, such as Machine Learning.

  • Easy to learn and reliable: Unlike other programming languages such as Java, C, or C++, Python syntax closely resembles natural languages, making it easier to learn and read. That means we can spend less time coding and more time solving complex engineering problems.
  • Versatile application: Python’s versatility is unmatched. It is used not only in software development but also extensively in data analysis, simulation, and numerical computation, which are crucial, for example, in performance analysis, structural integrity assessment, and environmental studies.
  • Rich ecosystem and community support: The Python ecosystem is vast. Libraries and frameworks exist for virtually every need. Libraries like Pandas for data manipulation, PyTorch for machine learning, and OpenCV for image processing can significantly enhance the analysis and interpretation of complex data, from material stress tests to hydrodynamic simulations. You won’t need to develop tools for exploring data or simulation since most of them are already available. Furthermore, Python’s large and active community means you’ll find extensive resources and tons of people ready to help you overcome technical challenges and stay updated on the latest developments.
  • Interdisciplinary integration: projects often require collaboration from various disciplines, including mechanics, electronics, aerodynamics, and environmental science. Python’s ability to seamlessly integrate with other languages and technologies means you can efficiently work within interdisciplinary teams, using Python’s capabilities to, for example, analyze data, automate tasks, and develop systems that are at the heart of engineering advancement.
  • Open source advantage: Python is open source, meaning it is freely available and continually improved by a global community of developers. This not only reduces software costs but also ensures that Python is at the cutting edge of technology, security, and performance. This means access to the latest tools and innovations without the constraint of licensing fees and proprietary software limitations.
  • Object-Oriented Programming (OOP): Python’s object-oriented programming capability is one of its main features and provides several advantages over other programming languages, especially regarding code organization, reusability, and scalability. While many modern programming languages support OOP, Python’s implementation is notable for its clarity and simplicity, making it accessible to beginners while still being powerful enough for advanced programming tasks.
Introduction to Python course
Python is a powerful and versatile open-source programming language and one of the most popular worldwide. Its ecosystem is vast, with libraries and frameworks available for virtually every need.
SHIPGEN is a Diffusion Model for Parametric Ship Hull Generation created at MIT’s Design Computation and Digital Engineering Lab that we will use in the Course’s Capstone Project.

What will you learn?

Completing this course will give you the knowledge and skills to understand and write Python code. More specifically, you will:

1- Understand the basics of Python programming:

  • Introduction to Google Colab, including how to set it up and how to run Python code.
  • Learn why Python is widely used in various fields and explore real-world applications of Python in Naval Engineering.
  • Understand the fundamental concepts behind Python programming, from understanding what a program or a script is to learning about object-oriented programming.

2- Understand Python Syntax and Data Structures:

  • Write and execute basic Python scripts.
  • Understand Python’s syntax rules and conventions.
  • Use lists, tuples, dictionaries, and sets effectively.
  • Understand the properties and use cases of each data structure.

3- Develop Control Flow Skills:

  • Implement conditional statements in Python.
  • Use loops to iterate over data.

4- Create and Use Functions:

  • Define and call functions to organize code.
  • Understand the scope, parameters, and return values.

5- Handle Files and Data:

  • Read from and write to files using Python.

6- Understand Object-Oriented Programming:

  • Define and instantiate classes to create objects.
  • Understand class attributes and methods.

7- Create and Use Modules:

  • Import and use Python’s built-in and external modules.
  • Organize code into modules for better maintainability.
  • Learn about popular Python modules such as NumPy, Pandas, Matplotlib, SciPy, SymPy, and PyTorch.

8- Apply All the Concepts to an Extensive Dataset:

  • Work with an extensive dataset of parametrized hull geometries.
  • Compute quantities of interest systematically from big data.
  • Analyze the data and draw conclusions.

Capstone Project

The MIT Dataset provides a large amount of information to create a data-driven approach to hull design. It uses diffusion models (DDPMs), a type of generative artificial intelligence, to generate parametric ship hull designs.

The course’s Capstone Project aims to apply Python programming concepts to analyze the MIT Dataset, focusing on hull geometry coefficients and the Froude number. You will learn to manage big data and compute various quantities of interest, applying stability theory and fluid dynamics.

Course Organization

The course is video-based and on-demand, allowing you to learn at your own pace, wherever and whenever you want.

It includes videos, quizzes, and downloadable documents, and provides access to the course’s virtual private classroom, where you can interact with the instructor and other students.

Upon completion of the course, you will receive a Course Certificate. To obtain the Course Certificate, you must complete all lessons, pass the quizzes, and have your Course Assignment approved.

Resources:

  • Video lessons.
  • English captions.
  • Written materials.
  • Quizzes.
  • Final Assignment.
  • Virtual Private Classroom.
  • Course Certificate.

Course Content

The Course

Introduction
Important Concepts
Lesson Content
Basic Syntax
Basic Data Structure
Control Flow
Functions
Basic File Handling
Classes
Packages and Modules
Final Assignment - Capstone Project
Course Materials
Course Survey
Summary
Not Enrolled
Early Access!
Regular Price: EUR 60

PRO member: EUR 48
ADVANCED member: EUR 54
SUBSCRIBER member: EUR 60

Prices are without taxes. Taxes may not apply in your country

Course Includes

  • 81 Lessons
  • Video captions in English
  • Written documentation (PDF)
  • 19 Quizzes
  • Final Assignment
  • Course Evaluation Survey
  • Virtual Private Classroom
  • Course Certificate