Educational Software: Difference between revisions

From OLPC
Jump to navigation Jump to search
(→‎Ruby: moved to discussion)
m (Walter's rectum 6 moved to Educational Software over redirect: revert)
 
(51 intermediate revisions by 23 users not shown)
Line 1: Line 1:
[[Category:Developers]]


==Introduction==


Much of what passes for educational software in the commercial market is dreadful. Nearly always, it is either boring or uneducational. Often it is both boring and uneducational. We need tools, not just textbooks. There is a great deal of decent [[Linux education packages|educational software in Linux]] distributions which could be [[Sugarizing|Sugarized]].
==Logo==
In the purest sense, [[LOGO]] is a programming language; it is a full-featured computer language derived from LISP, the language of artificial intelligence. More important, however, '''[http://www.terrapinlogo.com/show.cgi?file=educators/why.html Logo] is a language for learning'''. It is the right tool to teach the process of learning and thinking. [[LOGO]] provides an environment where ''students assume the role of teacher''.


==Dictionary software==
==Programming for Kids==
[[Programming for Kids|Programming]] is important for many reasons. It helps kids to learn math and logic. It helps them learn to clearly describe something in a structured and unambiguous way. It helps them to understand their computer, showing them that the XO is a non-magical device that functions according to logic. It provides the opportunity to share code with each other, including buggy or hostile code, making obvious the value of source code availability.

===Software to create Text Adventures===

Also known as [http://en.wikipedia.org/wiki/Interactive_fiction Interactive Fiction]. However, MOOs are a bit more engaging but they need some sort of central server in which to create "the world". A central server might not be available where these laptops will. See [[Talk:Educational_Software#MUSEs_or_MOOs discussion]].

In that discussion it is argued that a MOO environment wouldn't work because it would require a central server to install "the world". Couldn't this obstacle be surmounted by allowing the creation of "personal worlds" or houses, that one child can share and another child can access when both computers are within WiFi reach? It seems that this kind of application is exactly what the OLPC should be focusing on, consider:

http://anarch.ie.utoronto.ca/publications/mie2002-readingcourse.pdf
Constructivist Learning Using Simulation and Programming Environments
MIE2002H Readings in Industrial Engineering I
Calum Tsang
May 5th, 2004
The third, a multiplayer environment called [http://www-static.cc.gatech.edu/fac/Amy.Bruckman/thesis/index.html MOOSE Crossing], touches
on a previously minimized area of constructionism, that of social
relation. Ego syntonicity has already been covered as a required
characteristic, however, the social interaction and structure for
these activities has not.
Papert described the Latin samba school as a constructionist
activity with the added benefit that a social environment was also
present. MOOSE Crossing, a multiuser game similar to a Multi User
Dungeon (MUD) is both programming exercise, creative writing outlet
and social scene. Students are invited as an after school project
to play and build in this virtual space, programming automated
interactions and crafting textual descriptions of people and
objects in this microworld. "Knowledge is not passed from teachers
to students but is developed by everyone through their activities
and interactions with one another" (Resnick et al. 1996b: 48).
The environment is a social place, and there is a desire to share
creations in it. Many aspects of real-life relation are present
in this community context, and manifest themselves as part of
creating projects or experiences in the virtual world. In one case,
the authors noted the students built social capital by creating
objects others liked. Also unique to MOOSE Crossing is its verbal
aspect: While other projects highlighted so far have leaned towards
mathematics and science, this environment encourages writing.
Objects in the virtual world must be described, appealing to
students who have strong verbal skills. The authors also suggest
this as a way to link verbal skills to developing analytical
abilities.
One can draw parallels with other constructionist activities:
The students in MOOSE Crossing work on projects that are very
personal, often driven by personal interests and meanings. At the
same time, this is expanded into a social context that goes beyond
the individual.

==Software to Support Education==
This refers to software that does not teach anything directly but is available to facilitate learning. Examples include wireless chat and dictionaries.

===A Concept Mapping Tool===
http://www.aprendelibre.net/wiki/index.php/Software_Libre_y_Mapas_Conceptuales

Or FreeMind basic MindMapping tool (built in Java) http://freemind.sourceforge.net

===Unit Calculator===
A calculator that takes into account the units of the numbers. Some tool to be able to make calculations like [http://futureboy.homeip.net/frinkdocs/index.html#SampleCalculations these].

===Dictionary software===
synonyms, antonyms, definitions, English/Spanish (or other language) translations, pronunciation
synonyms, antonyms, definitions, English/Spanish (or other language) translations, pronunciation


There are lots of dictionary programs available, defined file formats, and dictionaries. One of the formats is [http://sdict.com/en/format.php SDICT] which is used by various client programs including various types of mobile phone. Because they have already done the work to make a small compressed format we should leverage that and use their dictionary files. [http://swaj.net/sdict/index.html Alexey Semenoff] has a page discussing the work of the sdictionary project.
There are lots of dictionary programs available, defined file formats, and dictionaries. One of the formats is [http://sdict.com/en/format.php SDICT] which is used by various client programs including various types of mobile phone. Because they have already done the work to make a small compressed format we should leverage that and use their dictionary files. [http://swaj.net/sdict/index.html Alexey Semenoff] has a page discussing the work of the sdictionary project.


A Python client for Symbian S60 can be downloaded from [http://www.fir.st/michael/pydict.html this site]. It shows how to read the sdict format (conv.py) and how the dictionary can be further compressed to use on a device like a mobile phone or OLPC (src/pydict.py).
==Software to enable Participatory Simulations==


In summary, Sdictionary is a dictionary that uses its own dictionary format. Unlike ptkdic or gtkdic, MySQL isn't needed; you can work with dictionary files directly. It uses Unicode, meaning that words and articles all are in UTF-8. There are two index levels, compression, and tools to convert from text files to .dct and vice versa.
;Participatory Simulations : http://ccl.northwestern.edu/ps/ps.shtml


Many dictionary databases are already available, some of them in target languages like Hindi, and Brazilian Portuguese. The fact that Python tools are available makes it easier for application and content developers to integrate this into their projects.


===Arithmetic training software===


[http://www.4x4software.nl RekenTest] is a software package to train arithmetic skills, by offering arithmetic problems based on the child's performance, and throws in extra practice if needed. While this is training software, it might be good tool to include, as arithmetic skills are a basic part of a child's education.
==Squeak==
Currently work is done to create a small size, low memory consumption version to run under WINE. Also an attempt is made to build a Linux binary with Kylix. Spanish and English are available, a Portuguese translation will be available soon.
[[Squeak]] is an open source version of the Smalltalk programming language/environment that is already widely used in [[constructionist]] teaching. There is [http://squeakland.org/ a community] already building educational applications that could be used on the OLPC.


[http://tux4kids.alioth.debian.org/tuxmath.php TuxMath], also known as "Tux, Of Math Command", turns flash cards into a game. It is a native Linux program. It has been translated into numerous languages including right-to-left ones.
Scratch is a scripting environment for children being developed at MIT which is built on top of Squeak; http://weblogs.media.mit.edu/llk/scratch/


===Software to enable Participatory Simulations===
==3D Communication==
[http://www.sketchup.com Sketchup] is a very powerful 3D modeling program that is very intuitive and easy to use. After watching me for only an hour, my little 6 year old sister was making some pretty cool looking houses with rooms, stairs and such with absolutely no help. This ability to communicate in 3D is a very useful skill. The creators of the product have shown a deep commitment to helping advance education, (E.G. software is free for students and educators), and might be interested in this project if someone contacted them.


;Participatory Simulations : http://ccl.northwestern.edu/ps/ps.shtml
But is there a Linux version? --[[User:Walter|Walter]]


===Software to create System Dynamics models===
:It is closed software. Sketchup was bought by Google recently. It is unlikely (but not impossible) to have this software under a free license. -- [[User:Mathias Schindler|Mathias Schindler]] 02:30, 4 April 2006 (EDT)


Like predator/prey models, scarce resources, snow ball effect (reinforcing feedback), dynamics of drug addiction, growth of human populations, exponential spreading of deseases, conflict escalation, dynamic equilibrium. These are the current software implementations all of them are non-free software http://sysdyn.clexchange.org/links_software.html
:No Linux version, non-free, we will certainly not ship this. --Ivan Krstic


===Software to create Ecological Simulations===
==Concept Mapping Tools==


I think this is what we want to emulate [http://el.media.mit.edu/Logo-foundation/pubs/papers/ecology_simulation.html Ecological Simulation]. '''Could it be done using [http://patapata.sourceforge.net/ Pata Pata?]? Can Pata-pata run in the OLPC?'''
Something like Inspiration/Kidspiration but with better networkability for collaborative editing. I like the concept of CMapTools, but its a a big java app.


===Software to create Equipment Simulations===
;View Your Mind: (http://www.insilmaril.de/vym/) is an open source Linux mindmapping program which runs in a small memory space.
;Free Mind: (http://freemind.sourceforge.net/wiki/index.php/Main_Page) is another open source mind mapping program; it may have a larger memory footprint, however.


I think this is what we want to emulate: '''Industrial Equipment Simulators''' [http://search.msn.com/results.aspx?q=%22Industrial+Equipment%22+simulator&FORM=MSNH]. '''
The Connectors package in [[Squeak]] allows easy creation of concept maps, flow charts, and directed graphs, with boxes and connecting links.
An example, '''Lathe Simulators''':
[http://search.msn.com/results.aspx?q=Lathe+simulator&mkt=es-US&form=QBRE&go.x=10&go.y=12]
Could it be done using '''open free country tools''':[http://www.thefreecountry.com/sourcecode/games.shtml]? Can these tools run in the OLPC?'''
Truly yours: MEXICO/Ags/--[[User:Dagoflores|Dagoflores]] 22:37, 7 November 2006 (EST)


==Teaching Software==
[[Teaching Software]] refers to applications whose primary goal is to deliver educational content. In the western world this is often very poorly implemented in CBT (Computer Based Training) modules or tedious drill and practice software. These approaches are often shallow and demotivating. When provided with an engaging interface, or when external motivation is supplied, it can work.


===Ebook Reader===
This is teaching software that takes the rich and detailed content of textbooks and encyclopedias into the OLPC. ([[Book reader feature set]]).


===Story Teller===
==The "ready-to-test" concept==
For children who are not advanced enough to make use of the Ebook reader, the computer should be able to read interactive stories out loud.


=== MIT Sketching ===
In February 2002 I wrote the following.
[http://www.youtube.com/watch?v=NZNTgglPbUA Video demo]


===Interactive Assistants===
http://www.users.globalnet.co.uk/~ngo/ast02800.htm
'''Drill software''' is based on the idea that some knowledge simply must be memorized.


On the other end of the spectrum is '''simulation software'''. Here the kids asks the questions and the computer do the computing. Afterwards the kids has to interpret the results. The idea is that computers are computing tools, and kids are researchers. A common problem is that the simulation model is deeply flawed. For example, a [[SimCity]] user learns that disconnected railroad fragments are a superior transportation network and that normal roads are unworkable.
This was one of a series of documents indexed at the following web page, though the others in the series are on different topics, so the above document is complete in itself.


A third model is called '''interactive assistants'''. Interactive assistants is assistants to the teacher, because they ask the kids questions in relation to a subject matter or a process the kids has to master: Like performing an interview: Which type of questions to ask, how to focus the questions etc.
http://www.users.globalnet.co.uk/~ngo/ast00000.htm


In this model the stand alone computers or more often web servers are programmed (preferably by using a user friendly backend, like a [http://en.wikipedia.org/wiki/Content_management_system CMS]) by teachers or text book authors to ask the questions that interactively (hence '''interacive''' assistants) leads the kids through the subject matter process in relation to the specific project they have (for example: To do an interview with a certain person). The model: Computers as structuring the kids' learning process (scaffolding), and the kids as the working and thinking part.
I do not know if the idea would be of any use to the laptop project but I am thinking that it might be, so I thought that I would post the idea here in the hope that it could be assessed by the experts.


==== olpc and interactive assistants ====
William Overington
When teachers and kids around the world have access to computers and (hopefully) to the internet, the vision must be to develop a universal "open source" educational library of interactive assistants to assist kids to develop their competencies.


==== References ====
10 March 2006
[http://www.dialogbox.org.uk/Rupert_Wegerif/rwcolumns/fft%20ict.htm Rupert Wegerif: The value of Artificial Stupidity]

[http://rupertwegerif.name/ Home page of Rupert Wegerif]

[http://www.did2.bundsgaard.net/foersituationen/indholdmetode1/interaktiveassistenter/ Jeppe Bundsgaard: Interactive assistants] (part of PhD-thesis in danish - translation coming up hopefully)


==Virtual Manipulatives (for math learning)==
==Virtual Manipulatives (for math learning)==
Line 70: Line 151:
:Please, let's not forget that the OLPC is for the delivery of content as well as applications. It is not a tech toy. I agree that physical objects that can be manipulated will make it easer to teach maths. But they don't need to be virtual. Include material to teach the children how to make manipulatives out of scrap wood or palm leaves. Include measuring tools so the kids can check their dimensions by holding the objects up to the screen. Integrate the construction of manipulatives into the learning process.
:Please, let's not forget that the OLPC is for the delivery of content as well as applications. It is not a tech toy. I agree that physical objects that can be manipulated will make it easer to teach maths. But they don't need to be virtual. Include material to teach the children how to make manipulatives out of scrap wood or palm leaves. Include measuring tools so the kids can check their dimensions by holding the objects up to the screen. Integrate the construction of manipulatives into the learning process.


==Nelements==
[http://nelements.net Nelements] is a generic 3d knowledge representation system that can be used to represent knowledge in a language of thought.


==Educational Wikis==


[http://www.givethought.com/ GiveThought.com] (GT) is a wiki-based social entrepreneurship concept. GT will gather wiki lesson contributions to form coherent customizable learning curricula to be offered for free around the world to
*Those who are unable to access formal education.
*Those who wish to complement their formal educations
*Those who wish to access information about subjective topics from an organized and coherent source.


If you are interested in learning about or participating in the development of project GT, please contact founder [mailto:jms53@duke.edu Jonathan Schafler]


==Python==
[[Python]] is free, open source, clear, object-oriented, many advantages. Code is very good readable, very short, huge libraries, cross platform, large and growing community. Easy to learn. Programmers find that they tend to write very stable code, which is easy to understand by others. This is why it is included in the [[OLPC Python Environment]].


==Industry and Shop Education==
There has been serious work done on teaching [[Python]] to young people, including [http://www.livewires.org.uk/python/index.html the Livewires program in the UK]


Low cost [[machine tools]] such as the Sieg mini-lathe are readily available, along with instructional materials and a community willing to help.


[[Category:Software ideas]]


{{cleanup}}
==Processing==
I have searched many websites during the last hours. I believe children love quick results and graphical results. I find this one is worth having a look at it. It seems to be free and available for Linux: http://processing.org/

Although it looks complicated. Haven't tried it, just providing the link.

==Nelements==
[http://nelements.net Nelements] is a generic 3d knowledge representation system that can be used to represent knowledge in a language of thought.
----
:I believe children love quick results and graphical results.
This sound to me like [[#Logo]]. Anyway I don't think this should turn into a language-war. I guess the laptops could come bundled with language1 and language2 and language3 if they all fit in. But to be useful, the laptops need come be accompanied with something else. The language interpreter/compiler is, of course, not enough. What do we need to put in there to make the use of the language educational?

Latest revision as of 16:18, 20 December 2009


Introduction

Much of what passes for educational software in the commercial market is dreadful. Nearly always, it is either boring or uneducational. Often it is both boring and uneducational. We need tools, not just textbooks. There is a great deal of decent educational software in Linux distributions which could be Sugarized.

Programming for Kids

Programming is important for many reasons. It helps kids to learn math and logic. It helps them learn to clearly describe something in a structured and unambiguous way. It helps them to understand their computer, showing them that the XO is a non-magical device that functions according to logic. It provides the opportunity to share code with each other, including buggy or hostile code, making obvious the value of source code availability.

Software to create Text Adventures

Also known as Interactive Fiction. However, MOOs are a bit more engaging but they need some sort of central server in which to create "the world". A central server might not be available where these laptops will. See Talk:Educational_Software#MUSEs_or_MOOs discussion.

In that discussion it is argued that a MOO environment wouldn't work because it would require a central server to install "the world". Couldn't this obstacle be surmounted by allowing the creation of "personal worlds" or houses, that one child can share and another child can access when both computers are within WiFi reach? It seems that this kind of application is exactly what the OLPC should be focusing on, consider:

http://anarch.ie.utoronto.ca/publications/mie2002-readingcourse.pdf

Constructivist Learning Using Simulation and Programming Environments
MIE2002H Readings in Industrial Engineering I
Calum Tsang
May 5th, 2004

The third, a multiplayer environment called MOOSE Crossing, touches 
on a previously minimized area of constructionism, that of social   
relation. Ego syntonicity has already been covered as a required    
characteristic, however, the social interaction and structure for   
these activities has not.                                           

Papert described the Latin samba school as a constructionist        
activity with the added benefit that a social environment was also  
present. MOOSE Crossing, a multiuser game similar to a Multi User   
Dungeon (MUD) is both programming exercise, creative writing outlet 
and social scene. Students are invited as an after school project   
to play and build in this virtual space, programming automated      
interactions and crafting textual descriptions of people and        
objects in this microworld. "Knowledge is not passed from teachers  
to students but is developed by everyone through their activities   
and interactions with one another" (Resnick et al. 1996b: 48).      

The environment is a social place, and there is a desire to share   
creations in it. Many aspects of real-life relation are present     
in this community context, and manifest themselves as part of       
creating projects or experiences in the virtual world. In one case, 
the authors noted the students built social capital by creating     
objects others liked. Also unique to MOOSE Crossing is its verbal   
aspect: While other projects highlighted so far have leaned towards 
mathematics and science, this environment encourages writing.       
Objects in the virtual world must be described, appealing to        
students who have strong verbal skills. The authors also suggest    
this as a way to link verbal skills to developing analytical        
abilities.                                                          

One can draw parallels with other constructionist activities:       
The students in MOOSE Crossing work on projects that are very       
personal, often driven by personal interests and meanings. At the   
same time, this is expanded into a social context that goes beyond  
the individual.

Software to Support Education

This refers to software that does not teach anything directly but is available to facilitate learning. Examples include wireless chat and dictionaries.

A Concept Mapping Tool

http://www.aprendelibre.net/wiki/index.php/Software_Libre_y_Mapas_Conceptuales

Or FreeMind basic MindMapping tool (built in Java) http://freemind.sourceforge.net

Unit Calculator

A calculator that takes into account the units of the numbers. Some tool to be able to make calculations like these.

Dictionary software

synonyms, antonyms, definitions, English/Spanish (or other language) translations, pronunciation

There are lots of dictionary programs available, defined file formats, and dictionaries. One of the formats is SDICT which is used by various client programs including various types of mobile phone. Because they have already done the work to make a small compressed format we should leverage that and use their dictionary files. Alexey Semenoff has a page discussing the work of the sdictionary project.

A Python client for Symbian S60 can be downloaded from this site. It shows how to read the sdict format (conv.py) and how the dictionary can be further compressed to use on a device like a mobile phone or OLPC (src/pydict.py).

In summary, Sdictionary is a dictionary that uses its own dictionary format. Unlike ptkdic or gtkdic, MySQL isn't needed; you can work with dictionary files directly. It uses Unicode, meaning that words and articles all are in UTF-8. There are two index levels, compression, and tools to convert from text files to .dct and vice versa.

Many dictionary databases are already available, some of them in target languages like Hindi, and Brazilian Portuguese. The fact that Python tools are available makes it easier for application and content developers to integrate this into their projects.

Arithmetic training software

RekenTest is a software package to train arithmetic skills, by offering arithmetic problems based on the child's performance, and throws in extra practice if needed. While this is training software, it might be good tool to include, as arithmetic skills are a basic part of a child's education. Currently work is done to create a small size, low memory consumption version to run under WINE. Also an attempt is made to build a Linux binary with Kylix. Spanish and English are available, a Portuguese translation will be available soon.

TuxMath, also known as "Tux, Of Math Command", turns flash cards into a game. It is a native Linux program. It has been translated into numerous languages including right-to-left ones.

Software to enable Participatory Simulations

Participatory Simulations
http://ccl.northwestern.edu/ps/ps.shtml

Software to create System Dynamics models

Like predator/prey models, scarce resources, snow ball effect (reinforcing feedback), dynamics of drug addiction, growth of human populations, exponential spreading of deseases, conflict escalation, dynamic equilibrium. These are the current software implementations all of them are non-free software http://sysdyn.clexchange.org/links_software.html

Software to create Ecological Simulations

I think this is what we want to emulate Ecological Simulation. Could it be done using Pata Pata?? Can Pata-pata run in the OLPC?

Software to create Equipment Simulations

I think this is what we want to emulate: Industrial Equipment Simulators [1]. An example, Lathe Simulators: [2] Could it be done using open free country tools:[3]? Can these tools run in the OLPC? Truly yours: MEXICO/Ags/--Dagoflores 22:37, 7 November 2006 (EST)

Teaching Software

Teaching Software refers to applications whose primary goal is to deliver educational content. In the western world this is often very poorly implemented in CBT (Computer Based Training) modules or tedious drill and practice software. These approaches are often shallow and demotivating. When provided with an engaging interface, or when external motivation is supplied, it can work.

Ebook Reader

This is teaching software that takes the rich and detailed content of textbooks and encyclopedias into the OLPC. (Book reader feature set).

Story Teller

For children who are not advanced enough to make use of the Ebook reader, the computer should be able to read interactive stories out loud.

MIT Sketching

Video demo

Interactive Assistants

Drill software is based on the idea that some knowledge simply must be memorized.

On the other end of the spectrum is simulation software. Here the kids asks the questions and the computer do the computing. Afterwards the kids has to interpret the results. The idea is that computers are computing tools, and kids are researchers. A common problem is that the simulation model is deeply flawed. For example, a SimCity user learns that disconnected railroad fragments are a superior transportation network and that normal roads are unworkable.

A third model is called interactive assistants. Interactive assistants is assistants to the teacher, because they ask the kids questions in relation to a subject matter or a process the kids has to master: Like performing an interview: Which type of questions to ask, how to focus the questions etc.

In this model the stand alone computers or more often web servers are programmed (preferably by using a user friendly backend, like a CMS) by teachers or text book authors to ask the questions that interactively (hence interacive assistants) leads the kids through the subject matter process in relation to the specific project they have (for example: To do an interview with a certain person). The model: Computers as structuring the kids' learning process (scaffolding), and the kids as the working and thinking part.

olpc and interactive assistants

When teachers and kids around the world have access to computers and (hopefully) to the internet, the vision must be to develop a universal "open source" educational library of interactive assistants to assist kids to develop their competencies.

References

Rupert Wegerif: The value of Artificial Stupidity

Home page of Rupert Wegerif

Jeppe Bundsgaard: Interactive assistants (part of PhD-thesis in danish - translation coming up hopefully)

Virtual Manipulatives (for math learning)

One argument for the design of virtual manipulatives has been saving money (physical manipulatives can be expensive, can be lost, can come in limited quantities). There is a library of virtual manipulatives available online http://nlvm.usu.edu/en/nav/vlibrary.html that provides a variety of activities and manipulatives for learning different math concepts.

(Shameless plug) I am also working on creating a new kind of virtual manipulative - one that attempts to build a bridge between artistic design efforts and mathematical learning. My desire to do this partially stems form the fact that I think some learners are more comfortable in either art or math, and that through this bridge they can step a little bit outside their comfort zones into the realm with which they are less comfortable (but still in a context they like). So, if you are very excited about art, you can try some math through your design activities, and if you like math but don't feel like you are very good at art, you can create some neat patterns that solve challenges posed from the mathematical perspective. I am interested in working with this laptop project.

I think that whatever (virtual) math manipulatives are available should be considered for this project. I would also like to see more of these virtual manipulatives developed for general use, but it seems like instances where money matters so much, this solution does not add any cost and would be useful.

K.K. Lamberty

5 April 2006

Please, let's not forget that the OLPC is for the delivery of content as well as applications. It is not a tech toy. I agree that physical objects that can be manipulated will make it easer to teach maths. But they don't need to be virtual. Include material to teach the children how to make manipulatives out of scrap wood or palm leaves. Include measuring tools so the kids can check their dimensions by holding the objects up to the screen. Integrate the construction of manipulatives into the learning process.

Nelements

Nelements is a generic 3d knowledge representation system that can be used to represent knowledge in a language of thought.

Educational Wikis

GiveThought.com (GT) is a wiki-based social entrepreneurship concept. GT will gather wiki lesson contributions to form coherent customizable learning curricula to be offered for free around the world to

  • Those who are unable to access formal education.
  • Those who wish to complement their formal educations
  • Those who wish to access information about subjective topics from an organized and coherent source.

If you are interested in learning about or participating in the development of project GT, please contact founder Jonathan Schafler


Industry and Shop Education

Low cost machine tools such as the Sieg mini-lathe are readily available, along with instructional materials and a community willing to help.