This individual report summarizes the student's contributions to Project 4. The student helped complete tasks like allowing user input and multiple client connections for the chat server. They created a text-based game and helped peers with theirs. Later, the student developed a "4Pics1Word" game in Pygame with different difficulty levels and a hint system, while also assisting with the chat client and server code. The project improved the student's programming and cooperation skills.
در این بخش آنچه که در اندروید برای رابط کاربری تعریف شده است معرفی می گردد.
با مطالعه این بخش متوجه خواهید شد که چه ابزارهایی برای چه کارهایی مفید می باشند.
retention complete dentures/certified fixed orthodontic courses by Indian d...Indian dental academy
The Indian Dental Academy is the Leader in continuing dental education , training dentists in all aspects of dentistry and
offering a wide range of dental certified courses in different formats.for more details please visit
www.indiandentalacademy.com
The Indian Dental Academy is the Leader in continuing dental education , training dentists in all aspects of dentistry and
offering a wide range of dental certified courses in different formats.
The Perfect Site Structure: Inhalte für Besucher und Bot optimal bereitstellenKerstin Reichert
Folien zum Vortrag "The Perfect Site Structure: Inhalte für Besucher und Bot optimal bereitstellen" im Rahmen der Suchmaschinen Konferenz 2016 in Zürich.
Wenn von Suchmaschinen-Optimierung die Rede ist, wird häufig an Keyword-Recherche gedacht, an speziell aufbereitete Textsorten wie Page Title und Meta Description und an übergreifende Themen wie Content-Marketing, um möglichst viel organischen Traffic, Social Shares und Backlinks zu erhalten. Häufig wird dabei jedoch vergessen, dass die eigentliche Optimierung bereits sehr viel früher ansteht. Und zwar beim Aufbau der Website oder des Online-Shops. Die Kunst dabei ist, sich von der Innen-Sicht zu lösen, die Bedürfnisse der Besucher abzudecken und gleichzeitig das eigene Angebot für den Suchmaschinen-Bot sinnvoll strukturiert und maschinenlesbar aufzubereiten. Kerstin bespricht, wie Du den Spagat zwischen Besucher und Bot erfolgreich meisterst.
- Warum eine gute Seiten-Struktur wichtig ist
- Wie Seiten- und Navigations-Hierarchien aufgebaut werden sollten
- Welch enorm wichtige Rolle die interne Verlinkung spielt
- Was es bei der Strukturierung von Inhalten auf einzelnen Seiten zu beachten gilt
در این بخش آنچه که در اندروید برای رابط کاربری تعریف شده است معرفی می گردد.
با مطالعه این بخش متوجه خواهید شد که چه ابزارهایی برای چه کارهایی مفید می باشند.
retention complete dentures/certified fixed orthodontic courses by Indian d...Indian dental academy
The Indian Dental Academy is the Leader in continuing dental education , training dentists in all aspects of dentistry and
offering a wide range of dental certified courses in different formats.for more details please visit
www.indiandentalacademy.com
The Indian Dental Academy is the Leader in continuing dental education , training dentists in all aspects of dentistry and
offering a wide range of dental certified courses in different formats.
The Perfect Site Structure: Inhalte für Besucher und Bot optimal bereitstellenKerstin Reichert
Folien zum Vortrag "The Perfect Site Structure: Inhalte für Besucher und Bot optimal bereitstellen" im Rahmen der Suchmaschinen Konferenz 2016 in Zürich.
Wenn von Suchmaschinen-Optimierung die Rede ist, wird häufig an Keyword-Recherche gedacht, an speziell aufbereitete Textsorten wie Page Title und Meta Description und an übergreifende Themen wie Content-Marketing, um möglichst viel organischen Traffic, Social Shares und Backlinks zu erhalten. Häufig wird dabei jedoch vergessen, dass die eigentliche Optimierung bereits sehr viel früher ansteht. Und zwar beim Aufbau der Website oder des Online-Shops. Die Kunst dabei ist, sich von der Innen-Sicht zu lösen, die Bedürfnisse der Besucher abzudecken und gleichzeitig das eigene Angebot für den Suchmaschinen-Bot sinnvoll strukturiert und maschinenlesbar aufzubereiten. Kerstin bespricht, wie Du den Spagat zwischen Besucher und Bot erfolgreich meisterst.
- Warum eine gute Seiten-Struktur wichtig ist
- Wie Seiten- und Navigations-Hierarchien aufgebaut werden sollten
- Welch enorm wichtige Rolle die interne Verlinkung spielt
- Was es bei der Strukturierung von Inhalten auf einzelnen Seiten zu beachten gilt
Starting With Scratch is a block-based programming course provided by the CodeTigers and STEM Impressionists Program collaboration. Over the course of 10 weeks, students will practice programming on Scratch while simultaneously learning fundamental computer science concepts. Each week will be taught by two student mentors who will walk participants through different lessons that will overtime build their understanding of coding through the Scratch platform. Throughout the course, students will be provided with resources to further their exploration of computer science in addition to preparing them to continue on to other coding platforms such as Python, micro:bit, and HTML/CSS. YouTube class: https://www.youtube.com/watch?
1. Individual Report
P R O J E C T 4
C O M P U T I N G 2 0 1 3 - 2 0 1 4
4 / 2 / 2 0 1 4
Theodoros Charisis
This individual report is about describing this
project 4 and also report my individual
contribution in this project as well as the
difficulties I faced and how I faced them.
2. Theodoros Charisis
1
Contents
Summary of Project 4………………………………………2
Introduction to Sockets and Networking………………………2
Introduction to Games………………………………………………4
Planning and Diagrams……………………………………………..5
Introduction to Pygames and Development…………………..6
More programming. Final week……………………………………….13
Conclusion………………………………………………………………………..15
3. Theodoros Charisis
2
Summary of Project 4
This project was about
creating a network
with our RPi’s that
allows users to chat
with each other and
also create a pygame
and add it into our
program client code so
people can chat and
play at the same time.
This project was very
important to me as I had in mind that I need to become better
in programming and understand better how it works and make
new programs.
Introduction to Sockets and Networking
In the first week of this project 4 we had been working as a
group to develop a simple network with our RPi’s. We started
by agreeing in using Google Drive so every member of our
group could upload his work or even download and share files
that it would be necessary for this project. Then we had to
make a server and a client so we could make our program with
the chat system and also with the games in it. I didn’t know
how to program something like this but we were given an
example with a server code and a client code so we could see
how it works and we could change some bits so we can get
used to it. We used the code provided and we managed to
make it work and then we started talking to each other about
4. Theodoros Charisis
3
this code how it can be
improved and how we are
going to slit the team so
work can be done quickly
and every member have
the same work to do. Then I
told my group members to
do a sequence diagram so it
will help us planning and
explaining the layout of our
system, it was also
mentioned in the week
task. Also I was able to
program some of the extra
Tasks like, allow the user to
input data to send to server and also, provide a
menu system. With the help of one member of our team we
cooperated and we completed another extra task, allow
multiple clients to connect to the server and show theirs data.
In this first week I didn’t faced any difficulty, the only difficulty I
faced was creating the diagram but after I saw one teammate
trying to make it, I understood it better and I was able to help
completing it.
I was able to learn how to make a diagram better and I was a
crucial member in my group as I helped them completes some
extra tasks who some people couldn’t do it.
Sequence diagram
5. Theodoros Charisis
4
Introduction to Games
This new week was very interesting as we were introduced to
games. We were given a piece of code so we can see how this
code works and to become familiar with games. This game was
a text-based game but it was such a fun. At first our lectures
showed us how this example text game is played and then they
told us to work on our own piece of code and everyone should
submit one. I started by testing the example code and saw all
the things you could do in the game, then I went to the code
and I started changing some things in it and see what happens.
After this it
didn’t took me
a lot of time
and I started
creating my
story in
notepad files
and also the
items and
rooms. Then I
changed all the
code and I
modified it as I wanted so my game could
work perfectly. I changed a big part of code with my own code
and my game was working perfectly, it took me 2-3 days to
finish this week’s task but it was a lot of fun and I liked it so
much. I didn’t face any difficulties and I was able to help some
members of my group with their text game and game them
some tips.
My text-based game running
6. Theodoros Charisis
5
Planning and Diagrams
The new tasks were given to us and we had to make a UML
diagram to show the technical executive the layout of our
system
breakdown
of the team
and which
roles will we
have and a
Sequence
diagram to
show how
the user would interact with the
system. Also we prepared some Mock-ups of what our system
will look like and we came up with a logo and a name for our
project idea. We were split into two teams, me with one other
and the other three together. We came up with the name of
our server project idea and a logo, the other team were doing
all the UML and sequence diagrams. After we finished we tried
everyone to make a presentation slide to look very nice and
also include our essential information that the client would like
to hear.
Our Logo
Mock-ups
7. Theodoros Charisis
6
Introduction to Pygames and Development
The new task of the next week was revealed, we were given a
task to create a
pygame within 2
weeks each of our
group should have
made a pygame of his
own and submit it in
the end. At the
beginning we were
given a link to a book
which refers to how to create a
pygame and it taught us step by step
how to create a game and also explain the codes in details. I
started by looking the book from the link and I found some
interesting parts that I might use, then I went to the pygame
official website and searched for simple games so I can
understand its structure. At first I thought it might be very
difficult, as I saw a lot of lines of code in the example Pygames.
But then I tried to think of what game I would like to create
which would be simple, easy to code for our level and also
entertaining. After a couple of days of research and thinking of
a game, I came out with the idea of making my game. My game
name would be 4Pics1Word the idea I had for my game was
RPi picture
8. Theodoros Charisis
7
that it will have main menu and then the main game would be
a couple of stages which you have to take a look to some
pictures that are projected and then find what is keen in this 4
pictures by typing the answer below. I took this idea of game
from a game I
have in my
iPhone, I loved
this game and I
thought it
would be very
nice to program
something
similar like that.
My game has
17 stages, some
stages are easy
and some are not, that’s why I
created the Hint option. This hint
option is similar with the game in
our iPhones, by typing hint it would display some hints for
some seconds, in every stage the hint is different as supposed
to. I created this option as I thought some stages are difficult to
complete without any hint and I made it possible so the game
can be completed. Also when you successfully complete this
game in the end it will show you how many times you used the
hint and how many mistakes you have made in every stage, and
then you can compare it with your friends to see you did it
better. This part of code is projected in the picture above.
Hint code label shown and
how many times you used
hint and how many
mistakes have you made
9. Theodoros Charisis
8
For my game I used some necessary libraries so the pygame
could work. In the picture shown below you could see the
libraries from my code. I also defined some colors so I can use
the in my code
whenever I want.
The next thing I have done was to create the menu for my
game. I searched
the internet to get
some information
on how to create a
menu system for
my pygame then I
modified the code
and I made it work
for my pygame.
The code for my
menu is very long
so I took 2 pictures
of it just to show
the work I have
done. The only
thing that I found
difficult was that I couldn’t
Imported Libraries
Menu code part 1
10. Theodoros Charisis
9
connect the menu code with my pygame code, but after I
experimented on my code I managed to combine my menu
with my pygame as one.
After the
menu code
I had to
create my
own
pygame. I
thought
that it
would be
difficult but
in the end it
was quite
easy and
also
interesting creating the code. After I had made my mind of
what game I want to create it was now only knowledge and skill
to help me complete my game. I had enough knowledge
acquired from this course to complete my game and also in my
country I used to have the best mark in my school. As I had the
experience I started programming, it was very easy, I thought
how my game should work and then I translated it into python
language. Below I provide 2 screenshots from my code, it
shows the main game function.
Menu code part 2
11. Theodoros Charisis
10
This screenshot
shows us that I
made a caption
for my game then
I set the screen
display and also
had some
variables defined.
Then I used a
code that allows
you to type in the
pygame screen
and then I used
another code for
my game stages.
You can see that I have for every stage he same code with
different answers and different hints. I used also a code that
when you have found the correct word you go to the next level
and launch a new picture. You can see also the hint code for
every level, while typing hint it gives you some specific hints for
every level. You can see also another picture below.
Main game Function part 1
12. Theodoros Charisis
11
Main game function part 2
After I made my main game function code, I created a screen
code creation that allowed me to create the screen for my
pygame.
Create Screen
13. Theodoros Charisis
12
As a result of all this code my game was ready after 1 -2 weeks.
And I provide a picture below how my game looks like in the
first stage.
In this
picture of
my pygame
you can see
the image in
the center in
which you
have to
guess what
the keen
object is and
then type it
in the yellow
box provided under
the picture. Furthermore, you can see below the box a hint that
shows you how to get the hints for the pictures. I created this
on purpose as I thought a new user would not know how to
activate the hint option. I used a light blue background as I
thought it would be nice for users to see the background like
this, which is more relaxing for your eyes and makes the game
more lively and fun. It is a very interesting game and also
entertaining, easy to play for all kind of ages. The only thing
that i found difficult at the beginning was how to insert a
picture inside the pygame and also how to make a button when
clicked to do something. Fortunately I managed to insert
pictures but unfortunately I couldn’t make a button work for
How my game looks like in 1st stage
14. Theodoros Charisis
13
hints, that’s why I used the code to type hint and then show
you the hint as it was easier and a different way from other
similar ways.
More programming.Final week
After I completed my pygame I helped some members from my
group as they haven’t completed them and some haven’t even
started it. I helped them however I could, but some of them
haven’t even decided what game to create. Then I started
working on the client and server code with a fellow member in
our group and we cooperated in addition to complete the client
code and the server in time without any problems. We have
being working on both of them at the beginning of this project
and after 3 weeks in this project we managed with the help of
all my team to complete the server and client. Below there are
some pictures of the client GUI menu and some option of our
client like (login menu, change color of background).
Login menu
This is the login menu for our client in project 4. This bit was
made by a member of my group as well as from my help. On
15. Theodoros Charisis
14
the right you can see that you can create a new user so you can
login into the server. Another feature we had in our client was
that we included some cool stuff like changing the background
color or also changing the size of the letter if you want so.
client changing background
client changing background part 2
16. Theodoros Charisis
15
We didn’t have a lot of help from some of our group members,
as they haven’t done theirs pygame and they needed help with
that. But me and another member gave our best to make our
client the best, so they really didn’t help a lot.
Conclusion
This project was very interesting and I liked it very much.
Although sometimes it was difficult to keep up with every work
we had as we didn’t have enough time. Also some students
complained about that and some others that they don’t know
what game to make. Fortunately, I could keep up with the time
and also decided my game and I am very proud about it, I think
it could be one of the best in my class. The only difficulties I
faced were the time as expected and we had a lot of work to do
in sort time. Another difficulty in this project was programming
a pygame, as a lot of people had problem with that and we
haven’t been taught before how to program a pygame and we
had a sort time for that. I managed to solve all my problems
and finish in time my pygame and all of the homework we had.
From this project I learned to cooperate like we used
everyone’s help for the server or for the UML diagrams. I
learned to share ideas and code using Google Drive for sharing
files and Facebook to keep in touch with everyone. This year
was very exciting and I learned a lot of things from my course
and I became better in programming and I also got used to the
English language as it is not my mother language. I needed to
become better and learn some extra things for my future so I
can get a job as a programmer and I think this course will make
my dream come true.