31 skills found · Page 1 of 2
uccser / Cs UnpluggedA collection of free teaching material that teaches Computer Science through engaging games and puzzles that use cards, string, crayons and lots of running around.
dccuchile / CC6104Teaching material of the course "Statistical Thinking" of the Department of Computer Science at the University of Chile.
Chinmay2660 / DSA By Abdul BariThis repository contains implementations of popular data structures and algorithms in C++ based on the teachings of Abdul Bari, an expert in the field of computer science and engineering. The implementations are meant to serve as a reference for those looking to improve their understanding of data structures and algorithms.
sanusanth / Python Basic ProgramsWhat is Python? Executive Summary Python is an interpreted, object-oriented, high-level programming language with dynamic semantics. Its high-level built in data structures, combined with dynamic typing and dynamic binding, make it very attractive for Rapid Application Development, as well as for use as a scripting or glue language to connect existing components together. Python's simple, easy to learn syntax emphasizes readability and therefore reduces the cost of program maintenance. Python supports modules and packages, which encourages program modularity and code reuse. The Python interpreter and the extensive standard library are available in source or binary form without charge for all major platforms, and can be freely distributed. Often, programmers fall in love with Python because of the increased productivity it provides. Since there is no compilation step, the edit-test-debug cycle is incredibly fast. Debugging Python programs is easy: a bug or bad input will never cause a segmentation fault. Instead, when the interpreter discovers an error, it raises an exception. When the program doesn't catch the exception, the interpreter prints a stack trace. A source level debugger allows inspection of local and global variables, evaluation of arbitrary expressions, setting breakpoints, stepping through the code a line at a time, and so on. The debugger is written in Python itself, testifying to Python's introspective power. On the other hand, often the quickest way to debug a program is to add a few print statements to the source: the fast edit-test-debug cycle makes this simple approach very effective. What is Python? Python is a popular programming language. It was created by Guido van Rossum, and released in 1991. It is used for: web development (server-side), software development, mathematics, system scripting. What can Python do? Python can be used on a server to create web applications. Python can be used alongside software to create workflows. Python can connect to database systems. It can also read and modify files. Python can be used to handle big data and perform complex mathematics. Python can be used for rapid prototyping, or for production-ready software development. Why Python? Python works on different platforms (Windows, Mac, Linux, Raspberry Pi, etc). Python has a simple syntax similar to the English language. Python has syntax that allows developers to write programs with fewer lines than some other programming languages. Python runs on an interpreter system, meaning that code can be executed as soon as it is written. This means that prototyping can be very quick. Python can be treated in a procedural way, an object-oriented way or a functional way. Good to know The most recent major version of Python is Python 3, which we shall be using in this tutorial. However, Python 2, although not being updated with anything other than security updates, is still quite popular. In this tutorial Python will be written in a text editor. It is possible to write Python in an Integrated Development Environment, such as Thonny, Pycharm, Netbeans or Eclipse which are particularly useful when managing larger collections of Python files. Python Syntax compared to other programming languages Python was designed for readability, and has some similarities to the English language with influence from mathematics. Python uses new lines to complete a command, as opposed to other programming languages which often use semicolons or parentheses. Python relies on indentation, using whitespace, to define scope; such as the scope of loops, functions and classes. Other programming languages often use curly-brackets for this purpose. Applications for Python Python is used in many application domains. Here's a sampling. The Python Package Index lists thousands of third party modules for Python. Web and Internet Development Python offers many choices for web development: Frameworks such as Django and Pyramid. Micro-frameworks such as Flask and Bottle. Advanced content management systems such as Plone and django CMS. Python's standard library supports many Internet protocols: HTML and XML JSON E-mail processing. Support for FTP, IMAP, and other Internet protocols. Easy-to-use socket interface. And the Package Index has yet more libraries: Requests, a powerful HTTP client library. Beautiful Soup, an HTML parser that can handle all sorts of oddball HTML. Feedparser for parsing RSS/Atom feeds. Paramiko, implementing the SSH2 protocol. Twisted Python, a framework for asynchronous network programming. Scientific and Numeric Python is widely used in scientific and numeric computing: SciPy is a collection of packages for mathematics, science, and engineering. Pandas is a data analysis and modeling library. IPython is a powerful interactive shell that features easy editing and recording of a work session, and supports visualizations and parallel computing. The Software Carpentry Course teaches basic skills for scientific computing, running bootcamps and providing open-access teaching materials. Education Python is a superb language for teaching programming, both at the introductory level and in more advanced courses. Books such as How to Think Like a Computer Scientist, Python Programming: An Introduction to Computer Science, and Practical Programming. The Education Special Interest Group is a good place to discuss teaching issues. Desktop GUIs The Tk GUI library is included with most binary distributions of Python. Some toolkits that are usable on several platforms are available separately: wxWidgets Kivy, for writing multitouch applications. Qt via pyqt or pyside Platform-specific toolkits are also available: GTK+ Microsoft Foundation Classes through the win32 extensions Software Development Python is often used as a support language for software developers, for build control and management, testing, and in many other ways. SCons for build control. Buildbot and Apache Gump for automated continuous compilation and testing. Roundup or Trac for bug tracking and project management. Business Applications Python is also used to build ERP and e-commerce systems: Odoo is an all-in-one management software that offers a range of business applications that form a complete suite of enterprise management applications. Try ton is a three-tier high-level general purpose application platform.
christinac / TeachapcsTeaching materials for an AP Computer Science course
Maples7 / Cs RoadmapMy personal learning roadmap on Computer Science. A.k.a teaching myself Computer Science.
codeoverdoze / Cs Web Tech LegonThis repo contains the teaching and study material for the CSCD311 (Web Design and Development) course at the University of Ghana, Legon - Department of Computer Science
qixuanHou / Mapping My BreakPlease Read Me First. This is a set of java file of my final version of electronic artifacts. This is a game to map my experience in Disney World, in Orlando during this spring break. However, because of my limited skills in computer science, I really have no idea how to simplify the process to run the game. Sorry for the inconvenience. In order to run the game, you may need to install JAVA. I hope the following links will help you. http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html#javasejdk http://www.cc.gatech.edu/~simpkins/teaching/gatech/cs1331/guides/install-java.html My main file is called Disney. You can call Disney in console to start the game. However, I failed to putting all the things inside Disney file. Therefore, you may also need to call AdventureLand, MainStreet, and FrontierLand to start other three games. I hope this will help you. Sorry again for the inconvenience. 1. the structure of my project My project only focused on my trip in Magic Kingdom, one part of Disney world in Orlando. It is a game which guides players to choose from six sub-games, which match six sections of the park, Main Street U.S.A, Tomorrowland, Adventureland, Frontierland, Fantasyland and Liberty Square. I chose one of the rides I took in each section which, from my perspective, shows what I found interesting in Disney world. I changed what I experienced in the park into a small computer game. I want to share my experience with others while they play my games. In the following part of self reflection, I explain the background, rules and other things about each game. For convenience of matching them, I use different color to mark different parts. I hope it will help readers a little bit when they are lost in my disordered reflections. 1. the hall of presidents - Liberty Square 2. Festivall parade - Fantasyland (I explain this one in the part of technology skill limitations) 3. Big Thunder Mountain Railroad - Frontierland 4.talking with Woody- Adventureland 5. Stitch Store - Tomorrowland 6. lunch time - Main Street USA 3. my reflection of the trip in Disney World from dream to reality When I exited Disney resort, I found a sign along the street welcomed people back to real world. Actually, when I was in Orlando, I couldn't believe as an adult, people can mess up fantasy world in the theme parks and the real world. Nevertheless, I felt I was still in fantasy world, when I dreamed twice that I fought for the key to open the door of future. As is known to all, while sleeping, people always dream about what people thinks in the daytime. Therefore, my dream shows that my mind still stayed in the world with Mickey and Donald. I believe that it is experiencing fantasy world which is the source of the greatest happiness people get from theme park. On the one hand, everybody has pressure in real life especially for adults. They can get out of pressure for a day trip in theme park. They can experience different lives here with cartoon characters. On the other hand, sometimes, it is a really hard task to fulfill some dreams, such as being a princess. However, in Disney world, you can dress up the same as Snow White, waiting for your prince; you can go to space by rocket; you can also travel all over the world in one day and enjoy the food of each country. These are all the magic of theme parks. Therefore, in my game, I learnt the way which Disney design their rides to focus on the background story of the game instead of the game itself. For example, there is a ride called Big Thunder Mountain Railroad, which streaks through a haunted gold-mining town aboard a rollicking runaway mine train. The views around the ride were like a gold mining town. There were tools for gold-mining around the railroad and the railroad looked like very old. In order to show riders that it was a haunted gold-mining town, the train always took a sudden turn or speed up quickly to scare people. I decided to name one of my game, which was inspired by this ride, the same name, Big Thunder Mountain Railroad. Instead of sitting inside the mine train to travel around the haunted town, mine was for users to use keyboard to control the train to travel around the gridding railroad. I place traps inside several parts of gridding to "scare" players, who cannot know where traps are until they get into them. If I know how to use animation, I will show scary pictures when players drive their train to the traps. Unlike the ride in Disney, my players can no longer travel once they encounter a trap because their train may have some problems to keep moving. Also, the main goal in the game is to find the gold. However, as we know, finding gold is really hard. Therefore, players must go to find Aladdin's Wonderful lamp where also places inside the gridding while players cannot see its exact place until they happen to drive inside the part where lamp is. Aladdin's Wonderful lamp will show players the map of the gold and when people get to the gold mine, they win. However, there is another limitation of the game. Haunted town is so dangerous during the night. Therefore, players only have 12 hours to finish the task. Train can drive one square in 20 min. Therefore, train can only move 36 times or they will also be caught by traps. In this game, I want to show audiences I have a background story like rides in Disney World. Players need to find the gold in a haunted gold-mining town. Also, in order to show the relationship with Disney, I use Aladdin's Wonderful Lamp as the guide for the players, which is a well known characters in Disney cartoon. I created another game, called talking with Woody to show the magic power of Disney characters. There are a lot of chances to meet Disney characters in Disney world. On the one hand, travelers, especially small kids, are really excited to meet the characters they watched on TV. I think some kids may believe they take pictures with real Mickey Mouse. On the hand, staffs in Disney who wear the costumes are really tired. It was hot in Orlando last week, but all costumes were very heavy. I was moved by the staffs inside Mickey. They also need to mimic the actions of characters and also need to show kindness and warmness to children. It seems like a really hard job. Therefore, I decide to show this part of Disney in my project as well. I decided to use Woody, a toy all the toys look up to. He is smart, kind and brave like a cowboy should be. He is more than a top, he is friend to everyone enjoying the movie Toy. In order to create an interactive game, I planned to ask players to guide Woody. Players need to call Woody before their instructions. For instance, if players say (actually players are typing) "Woody, please sit down", Woody will sit down (actually, there will be another line on the screen showing the same as players import). However, if players are rude and just say "sit down" without calling Woody, Woody won't act (actually there is just nothing showing up on the screen). great facilities to provide convenience to everyone The facilities to satisfy needs for special groups of people, like small kids or disabled people, are well developed. In the past in China, it seemed impossible for parents to take infants and small kids to travel. The road is not flat or wide enough for strollers or wheelchairs. However, in Disney world, everything seemed like well prepared for everyone to use. There are strollers rentals, and electric conveyance vehicles rentals, which are available to rent throughout Disney world. There are baby care center for mothers to feed, change and nurse little ones. There are locker rentals for storing personal items. There are also hearing disability services which have sign language interpretation to help disabled people to enjoy fantasy world. There are still a lot other convenient services in Disney world. I think the purpose of these services show the pursue of equality among everyone in the world. On the one hand, I am really touched by the availability of these services here. It seems Disney try its best to service everyone who have desire to experience fantasy land. On the other hand, in this way, Disney can attract more travelers in order to make more money in some ways. Also, in Disney, it seems like a tradition that there are stores at the exit of the famous rides. Somebody may think it is just a strategy to make people shopping a lot. However, I think it also provides some convenience that travelers can buy souvenirs where is memorable. For example, when I finished my trip in Escape Stitch, I entered a store with a lot of kinds of Stitch, like Stitch pillow, Stitch key chain and so on. I really want to buy something in order to remind me the wonderful feelings. Therefore, I showed my opinion inside my game as well. I wrote one part is for shopping. The items are different kinds of Stitch. My codes can act as a robot to help customers to shop in the store. There are a lot of restaurants in Disney. Maps of Disney are full of restaurants' name. The greatest things about the food are in Epcot, I experienced different counties in one day. I felt like I was in fast travel in different parts of the world and tasted their special food and snacks while I was on the way. I remembered I was still eating Japanese food when I was in "Mexico". It was a great experience. However, there were always a long waiting lines for the all restaurants. People needed to reserve a table a day before their trip and even they had the reservation, they still needed to wait for a long time. I think Disney may need some good ways to fix the problems of waiting for a long time. I have no idea of changing the situation of restaurants, but I think if there are robots to customers to order in fast food restaurant, it may help a lot. Thus, I have another code to customers to order in Plaza Restaurant. If this kind of robots can work in the real life, people can order by themselves and there will be more staffs available to prepare food. theme park uses interesting ways to teach knowledge of boring topics Theme part is also a great source of learning knowledge, especially for kids. They use Disney characters, interesting shows, or even games to teach useful things. The ways change the boring knowledge to interesting things, which always attract children's attention. The most amazing one was an interactive game in Epcot's Innoventions, called "where's the fire?", which teaches adults and children basic fire safety in a fun and entertaining way. About every five minutes, the players waiting in line are divided into two groups and move into the home's entry. Here, a host will explain the object of the game and lay out the rules. The scenario is this: you are on a mission to discover a number of fire hazards commonly found around the house. To do this, you move from room to room, looking for potential risks. To help in the task, each player is given a special "safely light" to help uncover lurking dangers. The rooms are large projection screens. When a hazard is discovered, all persons in the room must shine their safety light on the same spot. when they do, the hazard is rendered harmless and points are assigned. After playing in the game to find the hazardous things in the house, I learned a lot of safety tips. It is much easier to remember the tips I learned during the game than those I learned on textbook or internet. I believe kids will enjoy the games and learn from them as well. I also tried to show this reflection in my project. Thus, I planned to make a game, called the hall of presidents, which test people's knowledge of presidents in USA. However, I failed to achieve the goal of making it an entertaining game instead of a quiz. My game was still like a quiz. However, because it is the only code which can work well inside my big game. I decide to still hold the game for my projects in order to what my original ideas are. 4. technology skill limitations I feel terribly sorry for my limited skills in CS. It is my first time to learn JAVA this semester. I just begin to learn the core concepts of JAVA this month. When I choose to use java code for this project, I know I will face plentiful limitations and problems. Here I want to express my gratitude to Dr. Johnson, who encouraged me not to give up my ideas. To be honest, I have no idea of how to change a java code into a real game with animations. I know the background story of the game is more important for English course and pictures are the best way to show the background, but I have no idea to show all these things by JAVA coding. Therefore, I choose to use videos for my presentation. In this way, I can show my animation inside the videos while the code clue of my game is still composed by JAVA coding. Also, video gives me a lot of freedom when choose my contents for presentation. I can explain a lot details of my project clearly through videos. For example, I found the festival parade in the magic kingdom was great and I wanted to share the experience in my project by showing the pictures or videos. However, because of the technology limitations, I can only show the videos in my presentations. Also, I mistakenly deleted my videos which I shot on my trip Orlando, I can only share others' parade show...... Also, I want to apologize for the incompleteness of my game. I only dedicated to writing codes for Magic Kingdom, a part of my trip during spring break. Writing codes is a really time consuming task for me. In general, I need to spend more than eight hours to finish one project for my CS assignment this semester. While for this project, the final artifacts are composed of several parts of codes and in the end I need to write the father code in order to take care of my code family for spring break. Due to my limitation in writing codes, I can only finish one part of Disney world. However, I think my code shows all my reflections and perspectives during my trip, even though it looks like it only shows one part of my trip. The terrible mistake I made is that I found out the most of my codes I wrote had significant errors on Tuesday. I went to CS TA office for help, while the errors were still impossible to fix in order to achieve the goal I planned to get. Consequently, my game have to be separated into several parts. Instead of a big game having others as sub-games inside the big one, my final artifacts are composed by several small games. I need to start them one by one. It may cause some inconvenience for players to map their trip in Disney world.
laszlokorte / Tams ToolsA set of tools for teaching and learning computer science built with cycle.js
arm-education / RPi Pico Projects For SchoolsProject-based book for teaching AI, IoT, and computer science with Raspberry Pi Pico in Python to ages 16-18. (educational)
teaching-lab / Stack Cs ActivitiesA stack of activities to teach advanced computer science (developed by the Teaching Lab community at the Faculty of Informatics, Masaryk University)
KartikKarakoti / CS50x2025 Introduction To Computer ScienceCS50x, Harvard’s intro to computer science, is for all skill levels, teaching algorithmic thinking, problem-solving, and coding. Topics include algorithms, data structures, security, and web development, with languages like C, Python, and JavaScript. Complete 9 problem sets and a final project to earn a certificate in this self-paced course.
FoothillCSClub / CSModulesAn index for Michael Loceff's computer science teaching modules 📖
marrov / Self Taught Computer ScienceThis repository will host my journey into self-teaching myself a computer science degree.
jskripchuk / Music AnalysisTeaching basic computer science principles and concepts through the lens of music. Hooktheory music analysis toolkit for MUSC106: Computational Thinking in Music.
thebillington / Tphysicstphysics is a zero dependency, single file Python game engine designed for use in the classroom. tphysics renders using Turtle graphics, which is highly accessible to learners.
UniversityOfPlymouthComputing / SoftwareEngineeringTaught content to support teaching and learning in Computer Science
Daniel555AS / The Python PathThe Python Path is a web-based resource focused on teaching the Python programming language, aimed at anyone interested in programming, technology, and computer science. It is a platform with a dynamic approach, where knowledge is delivered through a structured and guided Learning Plan, designed to make learning Python feel like a true adventure
shaleenx / High Performance ComputingThis repository is dedicated to my course work on the DA-IICT course CS301: High Performance Computing. This repository contains three directories, namely Lab\ Work/ which is my collection of Lab Submissions undertaken as part of the course; 'High-Dimensional-Data-Clustering_HiPC_Parallel_Programming_Challenge_2015', which contains my team's submission in the Intel-Nvidia Parallel Programming Challenge as part of the High Performance Computing Conference Conference, Bangalore 2015, where my team comprised of myself, S. Chaitanya Prasad (@chaitanya94) and Visharad Bansal (@visharad-05); and my project submission for the course which was also on the same topic as the parallel programming challenge but this folder contains a much more detailed analysis. Today, nearly all computing systems including mobile phones, laptops, desktops, supercomputers, and large-scale data centers are being built using multiple-cors processors. Unlike the past, today almost all increases in system performance come from increased parallelism rather than increase in clock frequency. This shift to multi-core chips affects all segments of the IT industry and all areas of Computer Science. To efficiently work with these multi-core processors the users should acquire parallel programming and High Performance Computing (HPC) skills. HPC is also a key driver in the field of data science. This course was an introduction to parallel computing and aims at teaching basic models of parallel programming including the principles of parallel algorithm design, parallel computer architectures, programming models for shared and distributed-memory systems, message passing programming models used for cluster computing along with some important algorithms for parallel systems. Feel free to browse the repository. For any clarification, the author of the repo may be contacted at shaleen.k.gupta@gmail.com.
ept / CompsciComputer Science exercises and teaching materials