Skip to content

Commit

Permalink
adding second lesson
Browse files Browse the repository at this point in the history
  • Loading branch information
baloola committed Dec 8, 2024
1 parent 13ada8d commit dd8e980
Show file tree
Hide file tree
Showing 9 changed files with 226 additions and 307 deletions.
301 changes: 118 additions & 183 deletions lessons/beginners-en/cmdline/index.md

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion lessons/beginners-en/cmdline/info.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
title: Introduction to command line
title: مقدمة إلى سطر الأوامر (command line)
style: md
attribution:
- Translated & Edited by Mussab Abdalla
Expand Down
80 changes: 44 additions & 36 deletions lessons/beginners-en/first-steps/index.md
Original file line number Diff line number Diff line change
@@ -1,50 +1,53 @@
## First commands in Python
## الأوامر الأولى في بايثون (First commands in Python)

Let's see if we installed `Python` successfully!
دعونا نرى ما إذا قمنا بتثبيت `Python` بنجاح!

First open your terminal and we can now start Python (specifically, the Python console).
To do that, just write `python3` or `py` or `python` into the terminal:
أولاً افتح **المحطة (terminal)** ويمكننا الآن بدء تشغيل بايثون (على وجه التحديد ، وحدة تحكم بايثون -python console-).
لذلك ، ما عليك سوى كتابة `python3` أو `py` أو `python` في **المحطة (terminal)**:

``` plain
$ python3
Python 3.8.1 (default, Dec 24 2019, 17:02:07)
Python 3.8.1 (default, Dec 24 2019, 17:02:07)
[GCC 9.2.1 20191008] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
```

This command will print some information. In the first line, it shows which version of Python you have (you should have Python 3.8+).
## الأوامر الأولى في بايثون (First commands in Python)

The command line starts with a `>>>` symbol. This way Python prompts (asks) you for instructions. This is the same as the standard command line, but instead of commands like `cd` or `mkdir`, you write Python specific commands.
سيقوم هذا الأمر بطباعة بعض المعلومات. في السطر الأول، يُظهر إصدار Python لديك (يجب أن يكون لديك Python 3.8+).

> [warning] What if previous command returns something else?
> If you are on Windows, the command to run is sometimes called `py` or `python` instead of `python3`, try that instead. If that does not work either:
>
> Then most probably the Python installation `was not successful or complete`.
>
> Please go back to [Python Installation]({{ lesson_url('beginners-en/install_vienna') }}) and try installing Python again according to the instructions for your operating system.
>
> If something unexpected happened or you need help, please raise a hand and ask for a mentor support.
يبدأ **سطر الأوامر (Command Line)** برمز `>>>`. بهذه الطريقة ، يطلبك Python (يسألك) للحصول على التعليمات. هذا هو نفسه **سطر الأوامر القياسي (Standard Command Line)** ، ولكن بدلاً من الأوامر مثل `cd` أو `mkdir` ، يمكنك كتابة أوامر بايثون المحددة.

> [warning] ماذا لو أعاد الأمر السابق شيئًا آخر؟
> إذا كنت تستخدم Windows ، فإن الأمر الذي يجب تشغيله يسمى أحيانًا `py` أو `python` بدلاً من `python3` ، جرب ذلك بدلاً من ذلك. إذا لم ينجح ذلك أيضًا:
>
> ثم على الأرجح أن تثبيت Python `لم يكن ناجحًا أو كاملاً`.
>
> يرجى الرجوع إلى [Python (installation) تثبيت]({{ lesson_url('beginners-en/install_vienna') }}) وحاول تثبيت Python مرة أخرى وفقًا لتعليمات نظام التشغيل الخاص بك.
>
> إذا حدث شيء غير متوقع أو كنت بحاجة إلى المساعدة ، يرجى رفع يدك وطلب دعم من أحد الموجهين.
>
> It is very important that this first step works for all of you.
> من المهم جدًا أن تعمل هذه الخطوة الأولى بالنسبة لكم جميعًا.
>
> If you are on `Mac` or `Linux` the `python` command will usually run `python version 2` which is `not` what we want - if `python3` works, perfect, if not, please try reinstalling the newest `python` or ask a mentor for help.
> إذا كنت تستخدم نظام التشغيل `Mac` أو `Linux` ، فإن الأمر `python` عادةً ما يشغل `python version 2` وهو `ليس` ما نريده - إذا كان `python3` يعمل ، ممتاز ، وإلا ، يرجى إعادة تثبيت أحدث إصدار من `python` أو طلب المساعدة من أحد الموجهين.
## Quick task
## مهمة سريعة

If you have the terminal ready don't waste time! Type `print("Hello, world!")` in the Python terminal!
إذا كان لديك **المحطة (terminal)** جاهزًة ، فلا تضيع الوقت! اكتب `print("Hello, world!")` في وحدة تحكم Python!

{% filter solution %}

What happened? Python "printed out" `Hello, world!` for you. It's an old programming tradition, going back to 1970s. It is a traditional first command executed by people who are learning a given programming language, which illustrates the basic syntax of the language.
## ماذا حدث؟

In Python one can simply execute `print("Hello, world!")`. In other programming languages it might not be that simple! Feel free to search for examples of a "Hello world" code in C++, Java, HTML, JavaScript or other languages.
قام Python بـ "طباعة" `Hello, world!` لك. إنه تقليد برمجي قديم يعود إلى سبعينيات القرن الماضي. إنه الأمر الأول التقليدي الذي ينفذه الأشخاص الذين يتعلمون لغة برمجة معينة ، والذي يوضح بناء جملة اللغة الأساسية.

في Python ، يمكن ببساطة تنفيذ `print("Hello, world!")`. قد لا يكون الأمر بهذه البساطة في لغات البرمجة الأخرى! لا تتردد في البحث عن أمثلة على رمز "Hello world" في C ++ أو Java أو HTML أو JavaScript أو لغات أخرى.
{% endfilter %}

## Python basics
## أساسيات بايثون (Python basics)

Python can work as a simple calculator. Try running following commands in your Python and you should see these responses.
يمكن لـ Python العمل كآلة حاسبة بسيطة. حاول تشغيل الأوامر التالية في Python الخاص بك ويجب أن ترى هذه الردود.

```pycon
>>> 1
Expand Down Expand Up @@ -74,12 +77,11 @@ Python can work as a simple calculator. Try running following commands in your P
>>> (2+3) * 4
20
```

> [note]
> Python prints the greater-than signs `>>>` and the answer by itself!
> You just write number and press Enter.
> يقوم Python بطباعة علامات أكبر من `>>>` والإجابة بنفسه!
> ما عليك سوى كتابة الرقم ثم الضغط على Enter.
Notice that commands from the standard command line do not work here, although the window looks similar:
لاحظ أن الأوامر من **سطر الأوامر القياسي (Standard Command Line)** لا تعمل هنا ، على الرغم من أن النافذة تبدو متشابهة:

```pycon
>>> whoami
Expand All @@ -88,28 +90,34 @@ Traceback (most recent call last):
NameError: name 'whoami' is not defined
```

This is an *error message* which appears every time when you do anything wrong. You will see a lot of them during the course. Have a look at it carefully so you can recognise it later.

If you got this far, congratulations! You have installed Python and it works. You can now quit the Python console and close the command prompt.
## رسالة الخطأ (Error message)

هذه هي *رسالة الخطأ (Error message)* التي تظهر في كل مرة تقوم فيها بأي شيء خاطئ. سترى الكثير منها خلال الدورة. ألقِ نظرة فاحصة عليها حتى تتمكن من التعرف عليها لاحقًا.

To quit, just type `exit()` with empty parentheses
إذا وصلت إلى هذه المرحلة ، فتهانينا! لقد قمت بتثبيت Python ويعمل. يمكنك الآن الخروج من وحدة تحكم Python وإغلاق **المحطة (Command Prompt)**.

لإنهاء العملية ، ما عليك سوى كتابة `exit()` مع قوسين فارغين

<div class="highlight"><pre>
<div style=" direction: ltr" class="highlight"><pre>
<span class="gp">&gt;&gt;&gt;</span> exit()
<span class="gp">$</span>
</pre></div>

The greater-than signs `>>>` change back to `$` or `>`. This tells you that you're back on the system prompt. Now commands like `whoami` and `cd` work again, but Python commands like `1 + 2` won't work. You can re-activate the Python prompt anytime you want by simply typing `python3`
تتغير علامات أكبر من `<<<` مرة أخرى إلى `$` أو `<`. هذا يخبرك بأنك عدت إلى موجه النظام. الآن تعمل الأوامر مثل `whoami` و `cd` مرة أخرى ، ولكن أوامر Python مثل `1 + 2` لن تعمل. يمكنك إعادة تنشيط موجه Python في أي وقت تريده ببساطة عن طريق كتابة `python3`

## الخروج

The terminal can be closed by typing `exit` or press `CTRL+D`.
الآن يمكنك تجربة أمر آخر - الأمر الذي يغلق نافذة **المحطة (Command Prompt)** - `exit`.
اختياريًا أيضًا `CTRL+D` يؤدي نفس الشيء.

```console
$ exit
```

As a last exercise, try to run the Python console again
## تمرين أخير

كتمرين أخير ، حاول تشغيل وحدة تحكم Python مرة أخرى

- open the command prompt (the terminal)
- run Python
- افتح **المحطة (Command Prompt)**
- قم بتشغيل Python
3 changes: 2 additions & 1 deletion lessons/beginners-en/first-steps/info.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
title: First steps
title: الخطوات الأولى
style: md
attribution:
- Translated & Edited by Mussab Abdalla
- Translated by Marketa Muzikova, edits by Mateusz Krainski
- |
Originally written by Petr Viktorin, 2014-2017 for [PyLadies CZ].
Expand Down
89 changes: 29 additions & 60 deletions lessons/beginners-en/introduction2/index.md
Original file line number Diff line number Diff line change
@@ -1,78 +1,47 @@
# Who are PyLadies?
## ماذا ستتعلم هنا؟

An international group of people trying to involve women in the Python programming community.
سنركز على أساسيات البرمجة. نعدك بتوفير فهم أفضل لمفاهيم مثل المتغيرات وأنواع البيانات والظروف والحلقات والوظائف والاستثناءات والوحدات (Modules).

## Why?
## ماذا لا تتوقع؟

About 28% of programmers are women, while in the European Union, it is only 19%. That's very very little. It's not that women are stupid or
awkward or have no logical thinking. They are discouraged by other things;
a lots of small details that create a not very friendly environment.
PyLadies are trying to solve this problem, for example by creating an environment
that is more enjoyable for new programmers.
لن تكون هذه دورة مكثفة في تكنولوجيا المعلومات. لن نتعمق في تفاصيل البرمجة أو النظريات المعقدة. نحن هنا من أجل المتعة، ونأمل أن تكون أنت أيضًا موجودًا من أجل المتعة. لا تهدف هذه الدورة إلى التركيز على أي جانب معين من البرمجة مثل تطوير تطبيقات الويب أو معالجة البيانات. إذا كان هناك اهتمام من المجموعة، يمكننا التعمق في موضوعات أو جوانب معينة من البرمجة، ولكن هذا ليس الهدف الرئيسي.

## PyLadies in Vienna
## المدربون

* 2013 - PyLadies meetup group is founded and first one-day workshops are organized
* 2015 - PyLadies Vienna become dormant for some time
* 2019 - PyLadies in Vienna re-started as half-day workshops on various topics
* February 2021 - First PyLadies Vienna beginners course
* 2022 - First PyLadies Vienna PyData course
* 2023 - Mentorship programme launched
* Many more activities in the future!

## What will you learn here?
نحن هنا لمساعدتك في حل المشكلات. المهم ملاحظة أن المدربين يجب ألا يلمسوا لوحة المفاتيح الخاصة بك (حتى افتراضيًا).

We will focus on the basics of programming. We promise to give you a better understanding of concepts such as variables, data types, conditions, loops, functions, exceptions, modules, and more.
إذا كان لديك أي أسئلة حول الدورة، أو لديك تعليقات أو اقتراحات أو مشاعر صعبة أو كنت ترغب فقط في مشاركة شيء ما، فلا تتردد في الاتصال بنا على [email protected] أو عبر Discord.

## What shouldn't you expect?
### مشكلة؟

This is not going to be an intense IT course. We are not going to dwell into the details of programming or into complex theories. We're here for fun, we hope you will be there for fun as well. This course does not aim to focus on any specific aspect of programming such as web application development or data processing. If there will be some interest from the group we can get deeper into certain topics or aspects of programming, but that is not the primary intent.
عندما تواجه مشكلات، هناك طريقتان للتعامل معها:

## Coaches
* إذا كنت تعتقد أن مشكلتك عامة وأن حلها قد يساعد الآخرين، فما عليك سوى النقر فوق رمز رفع اليد واسأل مباشرة.
* إذا كنت تعتقد أن المشكلة تتعلق فقط بإعدادك الشخصي أو لا تشعر بالراحة في مشاركة الشاشة مع الجميع، فقم برفع يدك وسننقلك إلى غرفة منفصلة مع مرشد جانبي لمساعدتك.

We are here to help you with problems. The important thing to note is that coaches should not touch your keyboard (even virtually). Finally - we are here in our free time. Please respect that.
## متطلبات الإكمال

If you have any questions about the course, if you have comments, suggestions, hard feelings or you just want to share something - feel free to contact us at [email protected] or via discord.
لإنهاء الدورة بنجاح والحصول على شهادة إتمام، هناك عدة شروط:

### Trouble?
* تقديم جميع الواجبات المنزلية (لا يلزم أن تكون صحيحة 100٪! ، ولكن يجب تقديمها)
* تقديم مشروعين: مشروع واحد خلال الدورة ومشروع نهائي واحد
* تقديم ملاحظات على الدورة النهائية
* الحضور في 70٪ من جميع المحاضرات (لا تقلق، نحن مرنون في هذه النقطة)

When you have troubles, there are two ways how to proceed.
## الواجبات المنزلية

If you think that your trouble is general and solving it might help others, simply click on raised hand symbol and ask directly.
نفضل أن يتم تنفيذ جميع الواجبات المنزلية عبر Google Collab، وهي واجهة دفتر ملاحظات برمجة Python عبر الإنترنت مع خيارات المشاركة.

If you think, the issue is related just to your personal setup or you do not feel comfortable sharing the screen with everyone, raise your hand and we will move you to a breakout room with a side mentor to help you.
يمكنك العثور على البرنامج التعليمي الخاص بنا هنا: [برنامج Google Colab التعليمي](//drive.google.com/file/d/1KPlvbwGpIe8HQVkancKk6wuTwhV5VkRc/view).

## Requirements for completion
ستسمح هذه الأداة للموجهين بتقديم ملاحظات أفضل.

To successfully finish the course and acquire a completion certificate, there are several conditions:
## ماذا تفعل بعد هذه الدورة؟

- Submit all homeworks (do not need to be 100% correct!, but have to be submitted)
- Submit two projects: one during the course and one final project
- Submit final course feedback
- Attendance on 70% of all lectures (don't worry, we are flexible on this point)


## Homeworks

It is preferred by us that all homeworks are done via Google Collab, an online Python coding notebook interface with sharing options.

You can find our tutorial here: [Google Colab Tutorial](//drive.google.com/file/d/1KPlvbwGpIe8HQVkancKk6wuTwhV5VkRc/view).
This tool will allow the mentors to provide a better feedback.

## What to do after this course?

* You will need to practice a lot so you don't forget everything.
* You can also practice and learn some advanced stuff (e. g. algorithms, data structures)
at [Hackerrank](https://www.hackerrank.com/dashboard)
* There are also a lot of games where you practice by "coding" a game or playing a game by coding (the beginnings are
not really hard, they will give you a foundation) - e.g. [Coding game](https://www.codingame.com/start), [Code combat](https://codecombat.com/), [Checkio](https://checkio.org/), [Cyber Dojo](http://www.cyber-dojo.org/), [Code Wars](https://www.codewars.com/).
* You can join our meetups, where we focus on different topics or simply work there on your project.
* If you have a project in mind, you can go to our facebook page, slack channel or meetup event and there will surely be soneone to help you.
* We recommend to follow [Humble Bundle](https://www.humblebundle.com/) where they once offered a large bundle with books, videos, and some software for Python development, or books about how to develop games with Python.
* We have good feedback on the book [Automate the boring stuff with Python](https://automatetheboringstuff.com/).
<br>
<hr>
And now, the mentors will introduce themselves.

Once they finish, it will be your turn, so think about what you want to say -
your name, why you want to learn python, where are you located and tell us something surprising about yourself!)
* ستحتاج إلى ممارسة الكثير حتى لا تنسى كل شيء.
* يمكنك أيضًا ممارسة وتعلم بعض الأشياء المتقدمة (مثل خوارزميات ، وبنى البيانات) في [Hackerrank](https://www.hackerrank.com/dashboard)
* توجد أيضًا العديد من الألعاب التي تتيح لك الممارسة عن طريق "ترميز" لعبة أو لعب لعبة بالترميز (البدايات ليست صعبة حقًا ، وستمنحك الأساس) - على سبيل المثال [Coding game](https://www.codingame.com/start) ، [Code combat](https://codecombat.com/), [Checkio](https://checkio.org/), [Cyber Dojo](http://www.cyber-dojo.org/), [Code Wars](https://www.codewars.com/).
* يمكنك الانضمام إلى اجتماعاتنا ، حيث نركز على مواضيع مختلفة أو نعمل ببساطة على مشروعك هناك.
* إذا كان لديك مشروع في ذهنك ، يمكنك الانتقال إلى صفحة Facebook أو قناة Slack أو حدث اللقاء وهناك بالتأكيد من سيساعدك.
* نوصي بمتابعة [Humble Bundle](https://www.humblebundle.com/) حيث عرضوا مرة حزمة كبيرة بالكتب ومقاطع الفيديو وبعض البرامج لتطوير Python ، أو كتب حول كيفية تطوير الألعاب باستخدام Python.
* لدينا ردود فعل جيدة على كتاب [Automate the boring stuff with Python](https://automatetheboringstuff.com/).
4 changes: 2 additions & 2 deletions lessons/beginners-en/introduction2/info.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
title: Introduction
title: مقدمة
style: md
attribution:
- Edited by Mussab Abdalla
- Translated & Edited by Mussab Abdalla
- Marketa Muzikova
- Mateusz Krainski
- Tyna Dolezalova
Expand Down
Loading

0 comments on commit dd8e980

Please sign in to comment.