Skip to main content

Home/ Teaching of Programming/ Group items tagged software development

Rss Feed Group items tagged

Manuel Menezes de Sequeira

What Should We Teach New Software Developers? Why? | January 2010 | Communications of t... - 1 views

  •  
    Article by Bjarne Stroustrup on teaching software developers.
Manuel Menezes de Sequeira

CS0: The Beauty, Joy and Awe of Computing - 0 views

  •  
    We propose to develop Computer Science 0 (CS0): a new introductory general service course, available to students across the university, to share the beauty, joy and awe of computing (Mcgettrick et al., 2008; Garcia et al., 2009). This course has the potential to serve as a model for a new CollegeBoard Advanced Placement course in the works (Astrachan et al., 2009), which could have national impact. Students will be gently introduced to programming and computational thinking using a new graphical programming language called Scratch (Maloney et al., 2004), with the emphasis on problems relevance to themselves and society. In addition to allowing more opportunities for creativity in the first computer science course, the language has been designed to make learning to program easier by preventing a common frustration for novices, syntax errors. It also supports a computer science "big idea", which is software reuse - it allows students to upload their finished graphical programs to the web which can then be run online in a web browser, downloaded, modified (or, "re-mixed") and re-uploaded. These "Web 2.0" features are the first to be integrated seamlessly into a programming environment, and we are encouraged by the existing active community of worldwide student developers. Finally, the new course will provide the opportunity to broaden participation in computing, a critical component to addressing the current computing enrollment crisis.
Manuel Menezes de Sequeira

BlueJ - Teaching Java - 1 views

  • The BlueJ environment was developed as part of a university research project about teaching object-orientation to beginners. The system is being developed and maintained by a joint research group at Deakin University, Melbourne, Australia, and the University of Kent in Canterbury, UK. The project is supported by Sun Microsystems. The aim of BlueJ is to provide an easy-to-use teaching environment for the Java language that facilitates the teaching of Java to first year students. Special emphasis has been placed on visualisation and interaction techniques to create a highly interactive environment that encourages experimentation and exploration. BlueJ is based on the Blue system. Blue is an integrated teaching environment and language, developed at the University of Sydney and Monash University, Australia. BlueJ provides a Blue-like environment for the Java language.
  •  
    An IDE which makes programing in Java much more attractive and intuitive for beginners than the use of other, professional IDEs.
Manuel Menezes de Sequeira

greenfoot.org - 0 views

  • Consider greenfoot as a combination between a framework for creating two-dimensional grid assignments in Java and an integrated development environment (class browser, editor, compiler, execution, etc.) suitable for novice programmers. While greenfoot supports the full Java language, it is especially useful for programming exercises that have a visual element. In greenfoot object visualisation and object interaction are the key elements. If you know BlueJ and a microworld framework (like Karel the Robot or the AP Marine Biology Case Study) consider greenfoot as the best from both: object interaction (BlueJ) and object visualisation (microworlds).
  •  
    An alternative to BlueJ with a much more visual bend that makes it somewhat similar to Scratch.
Manuel Menezes de Sequeira

visual-tracer - Project Hosting on Google Code - 0 views

  • Visual Tracer allows the user to watch and explore the trace of an executing application. It shows information about the main events as they occur, as well as about the existing instances and their historical values. Visual Tracer has a nice GUI that allows the user to set the status and the speed of the application execution. Visual Tracer handles both single- and multithreading applications.
  •  
    This is, as yet, a proof-of-concept AspectJ library that allows the programmer to watch and navigate a complete record of a program's execution. The next step of this project is to use all the gathered information for building dynamic UML diagrams.
Manuel Menezes de Sequeira

CS 202 - Introduction to Computation - 0 views

  • Designed for a diverse audience, this course examines some of the fundamental ideas behind the science of computing. This course, like the field of Computer Science in general, is more than just the study of how to use computers. At the highest level, this course focuses on studying algorithms which are step-by-step methods for accomplishing a complex task. Algorithms are useful in more places than you might imagine. Algorithms specify the work that must be done for large, complex tasks like sequencing the human genome and indexing and searching for web pages. But, algorithms can also describe how people can approach problems like finding a path out of a maze or solving a rubix cube. Understanding how to solve problems in a step-by-step fashion is useful for more than just computer scientists. In this course, we will investigate the types of problems we currently know how to solve with computation. We will compare different algorithms that solve the same problem and determine which are the most efficient. We will learn how modern computers perform computation by covering hardware and software topics on how data is stored and how instructions are executed. We will also survey the wide range of areas within computer science, including robotics, human-computer interaction, and artificial intelligence. To obtain hands-on experience with algorithms, we will be using a new programming environment called Scratch. Scratch enables beginners to create sophisticated programs by simply dragging and dropping predefined instruction blocks. Thus, we will acquire experience decomposing problems into well-defined steps without the fear of frustrating ``syntax'' errors. CS 202 can be used to satisfy the Quantitative Reasoning A (QR-A) and Natural Sciences requirements. CS 202 can also be used as part of a certificate in Computer Sciences.
1 - 6 of 6
Showing 20 items per page