Snake workshop improvements
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
- Loại issue
- Tài liệu
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- python
- Lĩnh vực
- content, documentation
Hướng nghiên cứu
Bắt đầu bằng cách rà soát các TODO của workshop đối chiếu với Django Girls' Intro to Python, tài liệu Pyglet, phần giới thiệu dòng lệnh của khóa học dành cho người mới bắt đầu và issue #667 được liên kết. Issue không cung cấp tên tệp, test, entry point hay một ranh giới hoàn thành duy nhất; để hoàn thành sẽ cần xác định và hoàn tất một tập hợp con có phạm vi giới hạn của các cải tiến workshop này.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Braindump of TODOs after the first iteration of the Snake workshop.
(Checked means solved in my fork, not necessarily merged here)
-
Adapt Django Girls' Intro to Python, extending it to include every language/stdlib feature we'll need (with exceptions below). We need some examples of functionality; let's use stuff that'll make people go oh, I knew this already! afterwards.
- floor division
- list slicing
-
del(instead ofpop()) - tuples
-
inoperator -
list.remove -
zip()(use a more advanced example withzip– item-and-the-next with staggred lists – just before a break, so advanced people can think about it while others just clear their head) -
import-
random.randrange()
-
-
return - Comments
-
class? (Without__init__, but with general methods, this seems doable – and using it could save time refactoring!) - not decorators – those are best explained on Pyglet
- etc.
-
Print out cheatsheets, ideally:
- Keyboard
- Lists
- Dictionaries
- Basic control structures (loops, if/else, functions)?
-
Introduce a simple & consistent poor man's versioning scheme very early after writing the first
.pyfile: copy the file to another name, then clear the current file. -
About the class: explain what a "class" is conceptually (a "blueprint"), show how to write one, but don't go in detail and don't aim for thorough understanding.
-
Don't split the game into two files. That takes too much time and is hard to manage on a projector.
-
Warn about naming a file
pyglet.py,random.py& similar -
Edges of the screen should kill the snake; don't do the toroidal topology. It's exciting for the mathematician, but messes up tile selection which is already more than complicated enough. Move this to a "possible extensions" section at the end
-
Do a "possible extensions" section at the end. There should be proper materials to walk you through:
- Improvements of controls
- Toroidal topology
- Score keeping
- Two-snake multiplayer
- Gradually sSpeeding up
- Split
State, plug it into a provided console or web client - Use pyinstaller to make an `exe file
- etc.
-
Discourage creating the virtualenv on the desktop (actually, just fix #313 and make sure the result is usable for workshops)
-
Skip intro to Pyglet; explain all that on the game itself: draw, move, and resize a green square. Maybe add a simple mouse handler with
print(), which won't be used in the actual game (that makes it possible to ask "what do the arguments mean?" without giving an answer). -
Use one language (Czech/English) consistently.
-
Include answers to the hard problem. With diagrams. (This includes removing the code snippet with
???, which isn't syntax-highlighted nicely.) -
Better time management. Set a fixed schedule. The first workshop wasn't ideal, but its timings were:
- 9-12:30: installation; intro to Python
- (Lunch)
- 13:30-14:00 Intro to Pyglet
- 14:00-15:40 Drawing
- (Break)
- 16:10-18:00 Logic (another 15-30 min would be great to polish the game, but we had to end)
-
Have regular WC breaks.
-
Make a properly dumbed down-version of the intro to command line. Mention ↑ and Tab; avoid
mkdirand other stuff you can click up graphically. Mention how to copy from/to the command line. Merge improvements to the beginners' course intro.
- Ngôn ngữ chính
- Không có dữ liệu ngôn ngữ
- Star
- 335
- Fork
- 119
- Merge trung bình
- 3 giờ 6 phút
- Pull request đã merge (30 ngày)
- 1
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của pyvec/naucse.python.cz
-
Update lxml Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 55/100
pyvec/naucse.python.cz#777 ·
-
Autofile.tmp Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 25/100
pyvec/naucse.python.cz#709 · 4 bình luận ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 35/100
pyvec/naucse.python.cz#683 · 3 bình luận ·
-
bug content MI-PYT
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 45/100
pyvec/naucse.python.cz#673 ·
-
content MI-PYT
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 35/100
pyvec/naucse.python.cz#670 · 1 bình luận ·
Tất cả issue của pyvec/naucse.python.cz
Issue tương tự
-
添加项目:GKmix Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 78/100
1c7/chinese-independent-developer#1404 ·
-
[新文章·Institute] Measurements for understanding the pace of AI development inside frontier labs Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
-
ecosystem wording
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
matrix-org/matrix.org#3649 ·
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 76/100
-
Add theme for krita Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
rose-pine/rose-pine-site#239 ·