More Related Content
Similar to CS Workshop Learn Programming
Similar to CS Workshop Learn Programming (20)
CS Workshop Learn Programming
- 1. Computer Science Workshop
What's up with that?
Our Mission
In a world where automation no longer competes with physical labor
but the mental ingenuity if the human brain, computers are now able to
manage warehouses, drive cars, and even write newspaper articles. As
society is on its way to a possible postscarcity economic model, it is
imperative that students are equipped with procedural and functional
intuition that can aid them, not only in all STEM, but in making sound
judgements and analyses in the humanities.
Our workshop aims to provide interactive, professionally quirky content
aiding in the production and development of selfmotivated, potent,
lifelong learners who can critically analyze the world around them for
pleasure and to solve problems via Computer Science and technology.
What Exactly We Are Doing
Our agenda is organized to be adaptable to the needs of the
students, with separate, more independent, labs for students who have may
have much more experience. In order to appropriately cover material and
have the students actually understand it at a semiintuitive level, we
will have skits and interactive demos to introduce the topics and group
activities, and labs to let them explore the topics on their own. Labs
will be conducted with the Python programming language and are initially
guided with web tools like codecademy and code.org; however, as the
course goes on we will have them move to an IDE to do independent work.
With that said, we are prepared to cover the following topics:
COMPUTER SCIENCE, WHAT?
We want to ask some fundamental questions about what computer
science is, how we can participate in it, whether or not it is an actual
science, what kinds of jobs are available in the computer science field,
and how computer science concepts can aid in other studies (e.g., maths,
bioinformatics, economics, etc.)
- 2.
INTRO TO COMPUTER PROGRAMMING TOOLS
Throughout the workshop we would like to introduce and discuss the
common kinds of tools that people in the computer science field use: the
terminal, text editors, IDE's, etc. During the workshop we will be
working primarily in the Processing Development Environment for Python
and ILDE (i.e., the development environment packaged with python).
FUNDAMENTALS OF PROGRAMMING
The bulk of our workshop will focus on the fundamental parts of a
procedural program. We will cover variables, data types, statements,
ifstatements and conditionals,subroutines, functions, and loops. We make
an effort to teach the concepts independent of any language and then show
them how the concepts can be put to action in Python. If a student is
well versed in programming and is familiar with another language we may
be able to make accommodations for them for our advanced programming
track where we will have them solve more complex problems with the skills
they already have.
ADVANCED PROGRAMMING CONCEPTS
Dependent upon the pace comfortable with the students, we will
briefly discuss more advanced programming concepts such as object
oriented programming and it’s associated parts, the differences between
functional and procedural programming, differences between scripting and
compiled languages, and good programming practices (e.g., variable
naming, flow charting, code documentation (i.e., COMMENTS EVERYWHERE)).
WEB DEVELOPMENT
Also brief, we will have an overview of networks and web
technologies. This will cover the ways we store, transmit, and display
data. As a part of this, we will discuss the role of the browser, HTML,
CSS, Javascript, and the various backend programming languages that are
popular today as well as the different tasks that each process is
designed to carry out when looking at a contemporary AJAX web
application. Hacking, pentesting, and security will also be covered given
available time.
- 3. Take Home Workspace MakerSpace
What is referred to as the makerspace on the flier will be a
toolkit that we will prepare on a flash drive for all attending students.
This toolkit will be composed of reference guides, portable workspaces
and tools, web resources, and resources that we compile to give students
a path to take after the workshop that can satisfy their CS curiosity far
into the future. Such a package surely would have saved me hours of
researching, installing, and
whatexactlyisthisandwhyisn’titworking that no doubt scares people
from learning fascinating things.
Who We Are and Why We are Qualified to Give
Instruction
I am Benjamin Kissinger, a recent high school graduate and the
President and founder of Pickerington North’s Computer Science Club. Last
year, my cronies and I held a 2 day Computer Science seminar organized
and run entirely by us students with little more help from the
administration than a “Yes you can use rooms X and Y”. Over half of the
school showed up for our presentation and labs. Its large success
produced a club that learns about Computer Science concepts together, and
takes on small projects.
I have been programming since I was 8 years old and have learned a
multitude of languages, programming styles, etc. I have several
semilarge projects under my belt, and I am currently working on a
crowdsourced search engine.
Our whole team is composed of A students who have plenty of experience in
tutoring and volunteer work (e.g., team physics, COSI, etc.) that has
given us the tools to carefully conduct things we have learned in an
empathetic and intuitive way, and several of us have acting experience
that allows us to sprinkle our skits overthetop with cheese.