It’s been almost three years since a wrote a little blurb on an exciting application that allows learners to explore geometry. That application was Dr. Geo and its developers recently, and with much-deserved pride, announced the release of its latest version. With that in mind, I thought that maybe it was time to take an in-depth look at Dr. Geo.
Dr. Geo is an open source application that provides an engaging environment through which school-age learners may explore, and learn about, geometry. So, what can users do with Dr. Geo? Users have the opportunity to work with the building blocks of geometry, including points, line segments and rays. Users can create arcs, circles and polygons. Vectors can be used to accurately assign points. Virtually anything geometric in nature can be created.
What’s even more amazing is that Dr. Geo allows users to bring their creations to life through computer programming. The programming language used in Dr. Geo is the same one used to create Dr. Geo –Smalltalk. Some of my regular readers may remember a blog that I wrote a while back on Pharo, a computer programming environment. Pharo also uses Smalltalk. Smalltalk is an open source object-oriented programming language. This simply means that it focuses on objects and data rather than commands and logic. Portland State University computer science professor Harry H. Porter III (March 24, 2003) describes Smalltalk as “highly efficient, extremely portable, easy to use, and very reliable. But more importantly, Smalltalk is still the most enjoyable language in which to program.” What better tool to employ to introduce learners to computer programming?
As can be seen in the screenshots, Dr. Geo’s interface is very straightforward. All actions can be performed readily via a menu, a toolbar or tabs, all located at the top of the Dr. Geo window. This traditional interface certainly minimizes the learning curve. Even without having used the software, users can jump right in and begin creating. Functionality is also enhanced by tooltips, which provide a quick way to identify tools.
So, what are you waiting for? Your students’ potential as geometricians and computer programmers is waiting to be unleashed.
Dr. Geo is available for Linux, Microsoft Windows and Apple MacOS.
Fernandes. H. (2016). GNU Dr. Geo [computer software]. GNU and MIT General Public Licenses.
Porter III, H.P. (2003). Smalltalk: a white paper overview. Portland OR: Portland State University. Retrieved from http://web.cecs.pdx.edu/~harry/musings/SmalltalkOverview.html#Basic%20OOP%20Concepts%20and%20Terminology.
I usually write about open source technology, but now I’m going to address something that is arguably the future of open source, Linux users groups for school-age children. In this case, the users group is the CSE Asian Penguins, a Linux users group for middle school students at the Community School of Excellence in St. Paul, Minnesota. CSE is a Hmong charter school and the Asian Penguins may well be the only Linux users group based in a Hmong charter school. So, who are the CSE Asian Penguins and what do they do?
First of all, the Asian Penguins are sixth, seventh and eighth grade boys and girls who attend CSE. To quote from their Web site “our membership includes Hmong, Karenni, and other types of students.” The common ground upon which they meet is that of Linux and other open source software. They utilize Linux for schoolwork, entertainment and communication. Their name, Asian Penguins, comes from the fact that most of these students’ families came from Asia and that a penguin is the Linux mascot.
So what does this group of like-minded open source enthusiasts do? One of their primary goals is to become extremely familiar with the Linux operating system. They learn to use Linux for school, productivity and life in general. Better still, these young academicians use this knowledge to educate peers and teachers alike. But these scholars take their knowledge of open source beyond the confines of their school and reach out to the surrounding community by bringing computers running Linux to needy families and organizations in the community. Their most recent endeavor, Operation Upgrade, provided CSE with two computer carts, containing 60 refurbished laptops running the latest version of Ubuntu Linux.
So, why do I refer to a users group like the CSE Asian Penguins as the future of open source? These young men and women are learning the ins and outs of Linux at the perfect age. Their interest will no doubt result in the broadening of their computer frontiers into other areas of open source technology. These students will become the software developers and hardware engineers of tomorrow’s open source products. Because they will be well-versed in the use of open source technology, they will be able to readily collaborate with colleagues in other nations in which open source has already been adopted. They will play a great role in the evolution of open source.
If you’d like to know more about the Asian Penguins or would like to find out how you can help, visit their Web site listed below under Resources.
All information was retrieved from https://sites.google.com/a/csemn.org/asian-penguins/home.
While looking for a blog topic, I came across Colobot, a real-time, 3-D first-person strategy game that teaches users how to write computer programs. The pretense is an engaging one. The user is an astronaut who is equipped with robots. The user must use these robots (called “bots”) to make the planet he or she is currently on safe for human colonization (thus the name (“colony”+”robot”=”Colobot”)). In order to get the bots to accomplish tasks, the user must write the commands in CBOT, Colobot’s programming language, which is similar to the C or Java programming languages in its syntax.
Upon initial launch, the user is prompted to create an user account and character. The next screen presents the user with a switchboard interface that is graphically enhanced to make it appear similar to a control panel for a highly technical piece of equipment. Here users can configure Colobot and choose what kind of scenario they want to play out. The screenshot on the left shows this screen. There is a series of tutorials to help new users get accustomed to Colobot and the CBOT language, so this is what the author chose to do while experimenting with Colobot. The goals of each tutorial vary so the user can get a very clear idea of the missions that lay ahead.
Once the game has begun, the user finds him or herself in the role of the astronaut. A button in the upper left corner allows for users to toggle between being the astronaut and being one of the bots. To command a bot, the user must open the Program editor (shown in the screenshot at right). Here the user instructs the bot on what to do. Commands include movement, rotation, location scanning and object manipulation, among other things. Looking at the simple script that the author created, you can see that the bot has been instructed to turn ninety degrees left (to turn right, -90 would be used) and to fire its flame cannon at the spider. Clicking the Execute/stop button will verify that the code will work. Click on the OK button and the program is executed (see the screenshot below).
One of the great components of this software is the help feature integrated into the Program editor. The help provided includes both general assistance relating to the CBOT language as well as assistance writing a program for the given training scenario. In the first instructional scenario, users are even provided with the complete program to complete the mission. The author called upon this integrated help repeatedly while learning to use Colobot and found it to be very helpful. The screenshot below shows a typical help session.
In closing, I just want to say that this is an engaging and imaginative way to teach young people how write computer programs. This application is greatly enhanced by slick, colorful graphics and fun, realistic sound effects. When users learn to write complete programs (as opposed to doing things one step at a time as the author did) that’s when things really become visually appealing. It’s fun and fascinating to watch a bot complete a task and automatically go on to the next one like a, you guessed it, robot. Colobot is available on Linux and Microsoft Windows platforms.
Colobot [software]. (n.d.). GNU General Public License.
I am currently working on a review of an open source software item that model rocketry people will just love. OpenRocket is an application that allows users to create model rockets. More than just a canvas, OpenRocket allows users to simulate flights, analyze rocket performance and to optimize the design according to the results. Watch this space for more info.
If you haven’t heard of Scratch, then you’ve been missing out and so have your students. Scratch is an open source programming environment, with an integrated programming language also called Scratch, created by MIT with the goal of introducing users, especially young people, to computer programming. Users can create interactive stories, games and graphics. Furthermore, these creations can be shared with others via Scratch’s Web site. This is an excellent way to introduce your students to STEM.
What makes Scratch so special? To begin with, the interface is unlike that of any application of this type that I have seen. A menu bar/toolbar is provided for frequently used tasks, such as opening saved projects and sharing completed projects. From there, the interface goes in its own unique
direction, but still remains very user-friendly. In lieu of the traditional text editor/display pane layout, Scratch utilizes four panes, each with a specific purpose and interface. Operation and manipulation of objects is almost entirely point-and-click. This is arguably from where much of its ease-of-use comes.
One of the biggest differences between Scratch and other applications of this type is how the programs are written. Rather than typing code into a text editor, users are provided with a switchboard at the top of the leftmost pane. The buttons on the switchboard represent eight categories of commands that can be employed. The commands appear below the switchboard and can be added simply by clicking on them and dragging them to the pane on the right. Here the commands can be connected in a fashion that combines a flowchart with puzzle pieces. Programs, called scripts, can be created for any object (sprite) that the user creates. These scripts integrate variables as well, such as waiting times for events or results of interaction with other objects.
Finally, one of the really cool things about Scratch is the integrated graphics system. This includes a versatile drawing tool as well as graphical images included with Scratch. The drawing tool runs in its own window and provides users with everything they need to create colorful, detailed sprites. These sprites can in turn be modified under the Costumes tab in the same pane into which programming commands are placed. Using this feature, animations can be easily created using two or more costumes for a sprite. Users can also create backgrounds or select backgrounds from Scratch’s media library. The author used just such a background for his outer space scene shown in the screenshot above.
I cannot even begin to do this application justice here. Check out the Scratch creations submitted to the Scratch Web site. Try it for yourself. Then introduce your students to Scratch and watch worlds unfold.
Scratch Web site: http://scratch.mit.edu/
Presentation software, such as LibreOffice Impress, a free, open source application, provide a fun and interactive way to introduce young women to STEM (Science, Technology, Engineering and Mathematics). With a little instruction on how to use the software, young women (and young men) can create lively and original presentations the likes of which might just amaze you.
An excellent way to cultivate girls’ (and boys’) interest in technology is to employ stimulating learning aides, such as Kalzium. Kalzium is an open source interactive periodic table of the elements. Clicking on an element opens an overview providing such information as freezing and boiling points, discovery information and an atomic model.
The SD (Software Development) Times re-ran an article that I wrote on the need for young women in STEM (Science, Technology, Engineering and Mathematics) careers. The article, initially entitled Why Does Technology Need Young Women? has been renamed Five things the industry can do to ncourage young girls to code. If you would like to check it out, click here.
Tux Paint is a fun way to introduce young children to the world of technology. This software allows users to create colorful pictures and offers an amazing amount of stamps including such categories as animals, sealife and shapes, among others. This software could very well be the first step towards stimulating young women’s interest in STEM fields of employment.