Energize Education through Open Source will be one of the books presented by Lulu Publishing at the Los Angeles Times’ annual Festival of Books at the USC campus on April 18 and 19, 2015. More information will be provided as it becomes available. For more information about the festival, click here.
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 agead.
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.
This is a topic of great importance to anyone who has tried or wishes to try to introduce people to open source. For many computer users the mention of “open source” brings to mind Linux, what they perceive to be a computer geek’s operating system that is just too complex for regular people to use. Writer and technology coach Scott Nesbitt presents in this short video a viable way for people in the know to introduce open source to new users. He makes some damned good points, so you may want to take notes.
For this installment, I’d like to take a look at a piece of open source software (what else?) that allows you to view and modify hard drive partitions. If you have no idea what I’m talking about, please allow me to elucidate.
Modern hard drives offer an enormous amount of storage space. Imagine a massive warehouse in which you can store things. However, what if you need to section off space for certain things, such as office equipment? You might put in a room to house these things so that you can access them more readily. That’s where hard drives are like warehouses. You don’t always need one big space to store your data. You may want to section off, or partition, space on your hard drive for backup or maybe for personal files. If you use a recent version Microsoft Windows, your hard drive is already partitioned (one partition for your use and one partition for system restore files).
So, how do you partition a hard drive? This is usually done using a program called fdisk prior to installing an operating system. The reason for this being that adding or removing hard drive partitions can erase data on the hard drive in question. The only alternative is to use software designed to allow this process to occur while simultaneously protecting your data. This is where GParted comes into play.
Let’s take a look at the GNOME Partition Editor, or GParted, for short. When you start GParted, the program window will open and immediately start looking for hard drives and hard drive-like devices connected to your computer. Once such devices have been identified, GParted is ready to use. The screenshot on the left shows GParted displaying the partition table for the author’s primary hard drive (/dev/sda).
As you can see, GParted provides information regarding partition type, size and usage. In the case of the author’s hard drive, information regarding unallocated space is also included. Right-clicking on a partition will open a menu providing options such as unmounting the partition in question, resizing/moving the partition and even more information about said partition. Unavailable options are grayed out. Here you can also toggle the partitions from which your computer will try to boot, using boot flags. A toolbar provides moderate functionality, however, the menu bar near the top of the window provides the quickest access to features.
To demonstrate how easily partitions can be created, the author chose to create a partition on a 1 TB external hard drive. Simply right-click on unallocated space on your device and choose New from the menu. This will open the Create New Partition dialog box (as shown in the screenshot at right). Here you can enter such information as the size of the new partition, the file system (operating system type) and even a label for the new partition. When ready, click the Add button and GParted will do all the work.
When the process is completed, you’ll be presented with the main GParted window, which will display your newly created partition (see the screenshot to the left). Looking at the top pane in the screenshot, you can see that my new partition occupies the entire hard drive. Below this, a pane provides specific information. You will notice that the aptly named “New Partition #1″ has a fat32 (usually spelled FAT32) file system. I have given it the label “My Passport,” which is the name assigned to this device by the manufacturer. You’ll also notice that its size is 931.48 GB. Used space and unused space are blank and this partition has not been flagged as bootable.
So, what types of partitions does GParted support? The screenshot on the right shows a GParted window displaying compatible file systems. Not all file systems are supported. However there are a few worth noting. The file systems ext2, ext3 and ext4 are the most common Linux/UNIX file systems. You’ll also notice file systems fat16 and fat32, the latter of which I used for my partition on the external hard drive. These file systems were used in DOS and Microsoft Windows 95,98 and ME. Finally, you’ll see ntfs, which was/is used on Microsoft Windows NT, 2000, XP, Vista, 7 and 8.
This leads me to one of GParted’s strongest features -the capacity to possibly restore data from a hard drive. If you’re running GParted in Linux, gpart must be installed. If you’re using a live CD/DVD version of GParted, this shouldn’t be a problem. I used an older EIDE hard drive that had been damaged in a system-wide crash a few years ago. Click on the GParted option on the menu bar, hover over the Devices option and select the desired device from the list that unfurls. GParted will analyze the device and display its report as shown in the screen shot on the left. Clicking the View button next to each file systems found will open a file manager in read-only mode. Here you can peruse the recovered data and even relocate it to a safer place.
The best thing of all is that you don’t need to be using Linux to use GParted. The GParted Web site offers a download for an ISO file that can be burned onto CD/DVD, as mentioned above. Your computer can then boot from this disc into GParted. Once booted up, you can readily partition any hard drives you need to or engage in data recovery in the event of a crash. How cool is that?
GNOME Partition Editor (GParted)
Hakvoort, B., Gedak, C. et al. (2014). GNOME Partition Editor [software]. GNU General Public License.
Season’s Greetings, everyone. The holiday season is upon us, so I thought I’d take a break from my usual blog on open source educational technology and write about a something a little more lighthearted.
If you want to make your Linux desktop look more festive for the holidays, all you need is a little time to do this.
Perhaps one of the easiest ways to do add holiday cheer is to set your screensaver to Fuzzy Flakes. If you go into Settings, you can set the background color to something that might be a little more seasonally festive than the default pink. The screenshot on the left shows the Xscreensaver Settings window.
Next you’ll want to set a holiday-themed background.
Simply search for “linux christmas (or the holiday of your choice) wallpaper” in your favorite search engine and you’ll get plenty of hits. Choose one or several of your liking and download them. Once downloaded, use your desktop environment preferences utility to setup the desktop background of your choice. On a related note, you can also find Christmas/holiday themes for your desktop environment or window manager. Check out the great Window Maker theme that I installed in the screenshot to the right.
The next item you’ll want to obtain to complete that holiday look (at least if you live in the northern hemisphere) is Xsnow.
Xsnow is an application developed by Rick Jansen that generates snowfall on your computer screen. You may already have it installed. Open a terminal and type “xsnow” and it should start right up, if it’s installed. A gentle cascade of snow is not all that Xsnow gives you. You also notice tiny fir trees appear on your screen as well. To add to the fun, Santa can be seen driving his sleigh and reindeer through the snow with Rudolph leading the way. Xsnow can be customized in a number of ways, so I’d suggest you read the Xsnow manual page (type “man xsnow” in a terminal window) to learn more. The screenshot shows my Window Maker session dressed up for the holidays with Xsnow running to enhance the effect.
That’s all for now. Have a safe and happy holiday season.
Dmytro, B. (2004). Fuzzy Flakes [software]. GNU General Public License.
Jansen, R. (2001). Xsnow [software]. GNU General Public License.
Window Maker [software]. GNU General Public License.
Xscreensaver [software]. GNU General Public License.
A person who reviewed Enertgize Education through Open Source felt that the book should have contained lesson plans with open source technology integrated into them. This has inspired me to do just that. Download the compressed file by clicking on the link below. Uncompress or unzip the file and you’ll have a folder containing a lesson plan and packet for a project designed to teach 8th-grade students how to use the periodic table of the elements. All you need to do is download and install Kalzium (Linux) or QPerdiodicTable (Microsoft Windows), both pf which are open source interactive periodic tables of the elements, onto students’ laptops and you’re ready to go.
Periodic Table of the Elements Scavenger Hunt Packet retrieved from here.
OpenRocket is an application for virtually building and launching model rockets. This software was developed by Sampo Niskanen, who was a student at the Helsinki University of Technology when he developed OpenRocket as the focus of his graduate studies on open source software. OpenRocket is fun and easy to use. The online guide, Getting Started with OpenRocket. advises basing your rocket designs on existing products, so I chose to virtually create and launch an Estes Hi-Flier (kit number 2178) as shown in the image below.
OpenRocket launches with a pop-up window asking the user to provide rudimentary information about the rocket he or she plans to design (design name, designer and a field for comments). If desired, this window can be readily closed so that the user can begin working with the application.
The OpenRocket interface is very straightforward. A simple menu bar is at the top of the window, allowing users to perform common tasks (Open, Save, Undo, etc.). Below this are two tabs, Rocket design and Flight simulation. The Rocket design tab employs a kind of switchboard interface that allows users to select which model rocket components they would like to add to their build.The only three options available at start up are Nose cone, Body tube and Transition (a coupler that is tapered at one end). To the left of this switchboard is a window displaying a text-based tree-structure outline of your rocket. The lower half of the screen is the canvas upon which your design appears. The default is Side view, but users can toggle between this are Rear view. This canvas is flanked on top and to the left by rulers measuring centimeters. At the top of the OpenRocket window is a simple menu.
When a new component is added to your rocket, the Component configuration window opens providing information about the component’s shape, composition and mass, as well as offering options to modify the component. Additional tabs are available for configuring such categories as mass override, figure (illustration) style and a field for notes about the model. This feature can also be accessed by clicking on a component and choosing Edit from the switchboard menu just to the right of the outline window.Components in the outline area can be expanded to reveal sub-components or collapsed to hide them. Components can also be moved here by clicking on a component and dragging it to a desired location in the tree-structure. Furthermore, components can be modified using the switchboard immediately to the right of this window. Two really neat features included under the Analyze menu include Component analysis and Rocket optimization. These allow you to tweak your rocket’s performance. Once you’ve added an engine, the fun begins, as the guide Getting Started with OpenRocket states, as you’re ready to enter into the simulation portion of the application. OpenRocket is well integrated with the model rocket industry in regards to measurements and sizes of various components. For example, when you are ready to select a motor, if you have properly configured your engine mount, only motors that will fit the engine mount will be listed. Once you have selected your engine (or engines), we’re ready to run a simulation. Click on the Flight simulations tab. The Flight simulations window has five buttons at the top of the screen allowing users to create, run and modify simulations. Below this is a pane in which are listed user-created simulations. Below this is the canvas showing the user’s rocket. Clicking on New simulation opens the Edit simulation window. Under the Launch conditions tab, you can customize the simulation in terms of engine configuration, wind speed, atmospheric conditions and other launch conditions. When the launch is configured as desired, click the Run simulation button. A window with simulation information will flash on the screen. Click on the Plot/export button and this will open the Edit Simulation window. In this window, users can adjust various criteria relating to the simulation, such as launch conditions, simulation options and what types of data will be plotted. Once this information has been set, simply click the Plot flight button in the lower right corner and a window presenting a graphic representation of the rocket’s flight will open. What’s really fun is to tweak various rocket components and launch conditions to see how they affect a rocket’s trajectory. So, what are the benefits to using OpenRocket? It provides a wonderful opportunity to build and test model rockets prior to launch. What this means to model rocket enthusiasts is that they will have a better opportunity to determine their rockets’ trajectories and, therefore, have a better chance at recovery. Plus, it’s a fun way to experiment with model rockets. Isn’t that really what it’s all about?
OpenRocket is available for Linux, Apple MacOS, Microsoft Windows and Android.
Niskanen, S. (2009). Development of an open source model rocket simulation software. Helsinki: Helsinki University of Technology. Retrieved from: http://openrocket.sourceforge.net/thesis.pdf
Pummill, J. et al. (n.d.). Getting started with OpenRocket. TRF Community. Retrieved from: http://comp.uark.edu/~jpummil/OR-Start.pdf
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’re a Web developer, you probably have invested in Adobe Dreamweaver, which is a powerful, proprietary Web development application. There are open source alternatives that you should consider. Why consider open source? The biggest reason is financial expense. For Dreamweaver alone, without additinal packaged software, the price is $249.00. The software that I address here is free. Another reason to give these programs a try is that each of these develpment tools is full-featured, providing everything you need, plus a few surprises.
Bluefish. Bluefish has been called a developer’s HTML editor. This is because, unlike the other two programs addressed here, users work entirely with code in an environment similar to a text editor. This may seem daunting to new-comers to Web design, but many developers feel that this gives you complete control over every element of your Web pages. Bluefish can be readily customized through several ways. Toolbars are divided by tabs, according to categories (Forms,Frames, CSS, etc.). The Quickbar is an empty toolbar to which users can add frequently used tools offered by other toolbars. A menu bar provides a ready alternative to the toolbars. Bluefish can be easily customized through Preferences, offered under the Edit menu. Customizations can be applied to appearance, default document formatting, output parsers and plugins as well as to many other aspects of Bluefish. The screenshot on the left gives a good look at a typical Bluefish session.
KompoZer. KompoZer is a WYSIWYG (What You See Is What You Get; pronounced whi-zee-wig) Web authoring tool. In layman’s terms, this means that users can create Web pages graphically (typing, dragging and drppping, text formatting, etc.). KopoZer also allows users to work directly with the code. Furthermore, KompZer offers a split screen view that divides the work area into two panes. The top pane displays the current page in WYSIWYG mode, while the bottom pane displays the page in HTML/text mode. In addition to these interesting features, KompoZer offers everything a Web developer needs. Features can be accessed through a toolbar or menus. This includes customization. One neat feature is a tool that allows users to validate their code (HTML/XHTML) through a direct link to the World Wide Web Consortium’s Code Validation Service on the Internet. KompoZer is supported by Mozilla, the people behind such open source programs as the Firefox Web Browser and the Thunderbird email client. Check out the screenshot to the right for a look at KompZer in action.
BlueGriffon. BlueGriffon is a WYSIWYG Web authoring tool that allowing users to work in either a graphical environment or directly with code. This application, like KompoZer, is supported by Mozilla. BlueGriffon utilizes Mozilla’s Gecko rendering engine, which is used by Firefox to display Web pages. This means that Web pages created and viewed in BlueGriffon will appear the same in Mozilla Firefox as they do when previewed in BlueGriffon, regardless of the operating system being used. BlueGriffon has all of the features you would expect to find in a Web authoring program. Customization is easily handled through the Preferences option under the Edit menu. There are also a variety of add-ons offered on the BlueGriffon home page to enhance functionality. These include a user’s manual, a CSS editor and an integrated FTP client. The screenshot at left shows BlueGriffon being used to edit a page in text mode (thanks to the people at BlueGriffon for use of this screenshot).
In closing, I just want to say that technology does not always have to be expensive and that just because you have not heard of an application, doesn’t mean that it won’t work for you. There are other open source Web development programs out there, so if you find that these don’t meet your needs, I encourage you to do a little research and find something that will. A little time and effort can save you money and possibly result in finding an application that will make you wonder how you managed without it.
BlueGriffon [computer software]. (2010). GNU General Public License.
KompoZer [computer software]. (2010). GNU General Public License.
Sessink, O. et al. (2010). Bluefish [computer software]. GNU General Public License.