Archive for the ‘Teaching’ Category

Kids, programming, and doing more

Tuesday, January 8th, 2013

Kids, programming, and doing more by Greg Linden.

From the post:

I built Code Monster and Code Maven to get more kids interested in programming. Why is programming important?

Computers are a powerful tool. They let you do things that would be hard or impossible without them.

Trying to find a name that might be misspelled in a million names would take weeks to do by hand, but takes mere moments with a computer program. Computers can run calculations and transformations of data in seconds that would be impossible to do yourself in any amount of time. People can only keep about seven things in their mind at once; computers excel at looking at millions of pieces of data and discovering correlations in them.

Being able to fully use a computer requires programming. If you can program, you can do things others can’t. You can do things faster, you can do things that otherwise would be impossible. You are more powerful.

A reminder from Greg that our presentation of programming can make it “difficult” or “attractive.”

The latter requires more effort on our part but as he has demonstrated, it is possible.

Children (allegedly) being more flexible than adults, should be good candidates for attractive interfaces that use topic map principles.

So they become conditioned to options such as searching under different names for the same subjects. Or associations using different names appear as one association.

Topic map flexibility becomes their expectation rather than an exception to the rule.

The value of typing code

Tuesday, December 18th, 2012

The value of typing code by John D. Cook.

John points to a blog post by Tommy Nicholas that reads in part:

When Hunter S. Thompson was working as a copy boy at Time Magazine in 1959, he spent his spare time typing out the entire Great Gatsby by F. Scott Fitzgerald and A Farewell to Arms by Ernest Hemingway in order to better understand what it feels like to write a great book. To be able to feel the author’s turns in logic and storytelling weren’t possible from reading the books alone, you had to feel what it feels like to actually create the thing. And so I have found it to be with coding.

Thompson’s first book, Hell’s Angels: a strange and terrible saga was almost a bible to me in middle school, but I don’t know that he ever captured writing “a great book.” There or in subsequent books. Including the scene where he describes himself as clawing at the legs of Edmund Muskie before Muskie breaks down in tears. Funny, amusing, etc. but too period bound to be “great.”

On the other hand, as an instructional technique, what do you think about disabling cut-n-paste in a window so students have to re-type a topic map and perhaps add material to it at the same time?

Something beyond toy examples although with choices so students could pick one with enough interest for them to do the work.

MOOCs have exploded!

Monday, December 17th, 2012

MOOCs have exploded! by John Johnson.

From the post:

About a year and two months ago, Stanford University taught three classes online: Intro to Databases, Machine Learning, and Artificial Intelligence. I took two of those classes (I did not feel I had time to take Artificial Intelligence), and found them very valuable. The success of those programs led to the development of at least two companies in a new area of online education: Coursera and Udacity. In the meantime, other efforts have been started (I’m thinking mainly edX, but there are others as well), and now many universities are scrambling to take advantage of either the framework of these companies or other platforms.

Put simply, if you have not already, then you need to make the time to do some of these classes. Education is the most important investment you can make in yourself, and at this point there are hundreds of free online university-level classes in everything from the arts to statistics. If ever you wanted to expand your horizons, now’s the time.

John mentions that the courses require self-discipline. For enrollment of any size, that would be true of the person offering the course as well.

If you have taken one or more MOOCs, I am interested to hear your thoughts on teaching topic maps via a MOOC.

The syntaxes look amenable to the mini-test with automated grading style of testing. Could subject a topic map to parsing validity.

Would that be enough? As a mini-introduction to topic maps?

Saving in-depth discussion of semantics, identity and such for smaller settings?

Rosalind

Saturday, December 15th, 2012

Rosalind

From the homepage:

Rosalind is a platform for learning bioinformatics through problem solving.

Rather than teaching topic maps from the “basics” forward, what about teaching problems for which topic maps are a likely solution?

And introduce syntax/practices as solutions to particular issues?

Suggestions for problems?

Learn R by trying R

Friday, December 7th, 2012

Learn R by trying R by David Smith.

From the post:

If you are new to R, and want to get an introduction to the R language, in the classic “learning by doing way”, Code school and O’Reilly have put together the Try R interactive tutorial.

This tutorial is a painless introduction to the R programming language. During the course you’ll become familiar with using vectors, matrices, factors, and data frames to manipulate data into powerful visualizations.

How would you translate this concept into a means of teaching topic maps?

As an online and responsive interface?

What would you choose as the domain for the topic map?

Or perhaps better, what trend indicators would you watch so you could pick something of broad current interest?

Would you change it seasonally?

Code Maven and programming for teens [TMs for pre-teens/teens?]

Sunday, November 25th, 2012

Code Maven and programming for teens by Greg Linden.

From the post:

I recently launched Code Maven from Crunchzilla. It helps teens learn a little about what they can do if they learn more about programming.

A lot of teens are curious about programming these days, but don’t end up doing any. And, it’s true, if you are a teen who wants to learn programming, you either have to use tutorials, books, and classes made for adults (which have a heavy focus on syntax and are slow to let you do anything) or high level tools that let you build games but teach a specialized programming language you can’t use anywhere else. Maybe something else might be useful to help more teens get started and get interested.

Code Maven lets teens learn a little about how to program, starting with basic concepts such as loops then rapidly getting into fractals, animation, physics, and games. In every lesson, all the code is there — in some cases, a complete physics engine with gravity, frame rate, friction, and other code you can modify — and it is all live Javascript, so the impact of any change is immediate. It’s a fun way to explore what programming can do.

Code Maven is a curious blend of a game and a tutorial. Like a tutorial, it’s step-by-step, and there’s not-too-big, not-too-small challenges at each step. Like a game, it’s fun, addictive, and experimentation can yield exciting (and often very cool) results. I hope you and your friends like it. Please try Code Maven, tell your friends about it, and, if you have suggestions or feedback, please e-mail me at maven@crunchzilla.com

Greg is also responsible for Code Monster, appropriate for introducing programming to kids 9-14. Code Maven, teens, 13-18 plus adults.

Curious if you know of other projects of this type?

Suspect it is effective in part because of the immediate feedback. Not to mention effective authoring/creation of the interface!

Something you should share with others.

Reminds me of the reason OS vendors almost give away academic software. If a student knows “your” system and not another, which one has the easier learning curve when they leave school?

What does that suggest to you about promoting a semantic technology like topic maps?

Experiential Learning: Context and Connections for Legal Research

Friday, November 16th, 2012

Experiential Learning: Context and Connections for Legal Research – A Case Study by Cindy Guyer.

Abstract:

The ABA requires that all law students receive “substantial instruction” in legal research. This article discusses a unique legal research program that meets this requirement by focusing on experiential learning. Two components of experiential learning, context and connections, are explained pedagogically and specifically as to legal research curriculum.

Not a case study about teaching topic maps but at least one that I can relate to from being taught legal research, albeit before the WWW. ;-)

The challenges faced by the author and her colleagues will ring true for anyone teaching at university level.

I suspect the lessons learned here are applicable more generally to teaching graduate students. Or at least that is my working premise. I am going to construct a course outline on topic maps with these and other lessons in mind.

I first saw this at Legal Informatics.

Hash Tables: Introduction

Saturday, July 7th, 2012

Hash Tables: Introduction

Randy Gaul has written a nice introduction to hash tables, in part to learn about hash tables.

In the next iteration of the topic maps course, I should have only a topic map (no papers) as the main project. Require draft maps to be posted on a weekly basis.

So that design choices can be made, discussed and debated as the map develop.

So that the students are teaching each other about the domains they have chosen as they are constructing their maps.

Printable, Math and Physics Flash Cards

Wednesday, May 30th, 2012

Printable, Math and Physics Flash Cards by Jason Underdown.

From the introduction:

Click on the links below to download PDF files containing double-sided flash cards suitable for printing on common business card printer paper. If you don’t have or don’t want to buy special business card paper, I have also included versions which include a grid. You can use scissors or a paper cutter to create your cards.

The definitions and theorems of mathematics constitute the body of the discipline. To become conversant in mathematics, you simply must become so familiar with certain concepts and facts that you can recall them without thought. Making these flash cards has been a great help in getting me closer to that point. I hope they help you too. If you find any errors please contact me at the email address below.

Some of the decks are works in progress and thus incomplete, but if you know how to use LaTeX, the source files are also provided, so you can add your own flash cards. If you do create new flash cards, please share them back with me. You can contact me at the address below. Special thanks to Andrew Budge who created the “flashcards” LaTeX class which handles the formatting details.

Quite delightful!

What areas do you think are missing for IR, statistics, search?

As a markup hand, XML, XSLT, XPath 2.0 spring to mind.

I suspect you would learn as much about an area authoring cards as you will from using them.

If you make a set, please post and send a note.

First seen in Christophe Lalanne’s Bag of Tweets for May 2012.

The Best Way to Learn – The Worst Way to Teach

Thursday, March 29th, 2012

The Best Way to LearnThe Worst Way to Teach are a pair of columns by David Bressoud (DeWitt Wallace Professor of Mathematics at Macalester College in St. Paul, Minnesota, and Past-President of the Mathematical Association of America).

I discovered the references to these columns at the Mathematics for Computer Science page, listed under further readings.

Bressoud advocates use of IBL (Inquiry Based Learning), quoting the following definition for it:

Boiled down to its essence IBL is a teaching method that engages students in sense-making activities. Students are given tasks requiring them to solve problems, conjecture, experiment, explore, create, and communicate… all those wonderful skills and habits of mind that Mathematicians engage in regularly. Rather than showing facts or a clear, smooth path to a solution, the instructor guides students via well-crafted problems through an adventure in mathematical discovery.

I want to draw you attention to: “…the instructor guides students via well-crafted problems through an adventure….

I “get” the adventure part and agree the “well-crafted problems” would be the key to using this method to teach topic maps.

But, the creation of “well-crafted problems,” I could use some suggestions. I have fallen out of the practice of asking questions about some of the resources, but those aren’t really “well-crafted problems.” I think those would be more along the lines of having one or more plausible topic map solutions. That students could discover for themselves.

The Academy if Inquiry Based Learning has a number of resources, including: What is IBL?, the source of the quote on IBL.

Looking forward to your suggestions and comments on using IBL for the teaching of topic maps!

Instruction Delivery

Tuesday, February 28th, 2012

It may just the materials I have encountered but here is how I would rate (highest to lowest) instruction delivery using the following methods:

  1. Interactive lecture/presentation
  2. Non-interactive lecture/presentation (think recorded CS lectures)
  3. Short non-interactive lectures plus online quizzes
  4. Webinars

I am not sure where pod/screencasts would fit into that ranking, probably between #2 and #3.

I suspect my feelings about webinars are colored by the appearance of corporate apparatchiks and fairly shallow technical content of those I have encountered.

Not all, some are quite good but that is like observing that PBS has good programming in apology for the 500 channels of trash on the local cable TV.

So it isn’t too narrow a question, what stands out for you as the most successful learning experiences you have had? What components or techniques seemed to make it so?

Can’t promise I will have the skill or talent to follow some or all of your suggestions but I am truly interested in what might make a successful learning experience. It will be for a fairly unique audience but every audience is unique in some way.

Any and all suggestions are deeply appreciated!

PS: And yes, to narrow the question or present the opportunity for more criticism, I will be venturing into the video realm in the near future.

Teaching is about conveying a way of thinking

Monday, January 2nd, 2012

Teaching is about conveying a way of thinking by Jon Udell.

From the post:

As I build out the elmcity network, launching calendar hubs in towns and cities around the country, I’ve been gathering examples of excellent web thinking. In Ann Arbor’s public schools are thinking like the web I noted that the schools in that town — and most particularly the Slauson Middle School — are Doing It Right with respect to online calendars. How, I wondered, does that happen? How does a middle school figure out a solution that eludes most universities, theaters, city governments, nightclubs, museums, and other organizations with calendars of interest to the public?

[The Slauson Middle School principal, Chris Curtis, replied to Udell.]

I agree with the notion that the basic principles of computer science should be generalized more broadly across the curriculum. In many ways, teaching computer and technology skills courses absent a meaningful application of them is ineffective and silly. We wouldn’t teach driver’s education and not let students drive. We don’t teach a “pencil skills class” in which we learn the skills for using this technology tool without an immediate opportunity to apply the skills and then begin to consider and explore the many ways that the pencil and writing change how we organize, perceive, and interact with our world.

I really like the “pencils skills class” example, even though I can think of several readers who may say it applies to some of my writing. ;-) And they are probably right, at least in part. I have a definite preference for the theoretical side of things.

To usefully combine theory with praxis is the act of teaching.

Computer Science Teachers Association

Sunday, October 30th, 2011

Computer Science Teachers Association

From the website:

The Computer Science Teachers Association is a membership organization that supports and promotes the teaching of computer science and other computing disciplines. CSTA provides opportunities for K-12 teachers and students to better understand the computing disciplines and to more successfully prepare themselves to teach and learn.

I suspect that the issues that face teachers in more formal classroom settings are largely the same ones that face us when we try to teach topic maps to users. As a matter of fact, other than being age/gender/culture adaptations, I would venture to say that the basic teaching techniques remain largely the same over a lifetime.

I can remember very enthusiastic teachers who had great examples that got kids (myself included) interested in literature, math, science, etc., and I can remember those who were putting in the hours until the end of the school day. I saw the same techniques, with some dressing up because we become more “serious” the older we get (allegedly) in college and a couple of rounds of graduate school.

Not that we have to make silly techniques to teach topic maps but having a few of those isn’t going to hurt anyone or detract from the “gravitas” of the paradigm.

BTW, the price is right for the Computer Science Teachers Association, it’s free! Who knows? You might learn something and perhaps get better at learning with others (what else would teaching be?).

Easy as Pie? – Teaching Code Literacy

Sunday, October 30th, 2011

Easy as Pie? – Teaching Code Literacy by Sarah Allen.

A very entertaining presentation on teaching programming to children.

One of its key points was the need for immediate gratification. (Suspect that is probably the case for adults as well but don’t tell anyone.)

The presentation made me think that one of the barriers to teaching topic maps (under whatever guise or name) is its delayed gratification.

That is it is all fine and good to talk about the issues that interest us as topic map specialists but users are really more interested in results that are of interest to them.

I don’t have a specific game or scenario in mind but wanted to point out this presentation as a starting point for discussion of subject-centric gaming.

Your suggestions and comments are always welcome but especially here. I don’t know what interests/motivates other adults, much less children.

PS: Sarah mentions that the “computer science” classes in SF are teaching Word and PowerPoint. Says “…having a class in Word is like having a class in pencil.” Thought you would appreciate that. ;-)

From the description:

Sarah Allen talks on how to introduce children to the basics of programming, presenting a new related language called “Pie” along with lessons learned from creating a DSL in Ruby.

Basic interface to Apache Solr (Python recipe)

Tuesday, October 18th, 2011

Basic interface to Apache Solr (Python recipe) by Graham Poulter.

From the post:

A basic model class representing Apache Solr. Abstracts the select, delete, update, and commit operations.

Select operation returns Python object parsed from a JSON-formatted response.

(code omitted)

There are several full-fledged Python libraries for interfacing to Apache Solr.

But sometimes all you need is a little code to build an appropriate HTTP request and parse the response. In that case, using this class could save you some time.

I think recipes are a good thing. What I have found in cooking is that at first I follow them closely until I gain confidence with the techniques and the likely result. The longer I use them the more I am likely to depart from them. So I get, usually, an edible result and learn something in the bargain.

I think there is a lesson here for teaching people about semantic and data mining techniques in general and topic maps in particular.

Introduction to Artificial Intelligence – Stanford Class Update

Tuesday, October 11th, 2011

The “Introduction to Artificial Intelligence” class at Stanford has begun with over 145,000 students. I remember lecture classes being large but not quite this large. ;-)

The first class lecture is up and I am impressed with the delivery mechanisms chosen for the class.

For example, I have seen graphic tablets used in math videos to draw equations, examples and lecture note type materials. I checked the pricing on such tablets.

Guess what they are using in the Stanford classes? Paper and different colored pens. Well, and printed materials, maps and such, that they can draw upon with the pens.

It doesn’t hurt that both of the presenters are world class lecturers but it also validates the notion that very simple tools can be used very effectively.

Not to mention that the longest each segment has been so far is about 3 minutes or so.

Can say a lot in 3 minutes (or less) if: 1) You know what you want to say, and, 2) You say it clearly.

Another nice aspect is that they are using what appear to be cgi-based graphics to embed quizzes (another low tech solution) at the end of videos.

Points for me to remember: Creating educational materials need not wait for equipment that I then have to master (though I will have to practice using a pen) in order to be productive. (It will be nice to have a pack of pens in different colors, cheaper than a graphics tablet too.)

What resources & practices (teaching Haskell) [or learning n]

Monday, October 3rd, 2011

What resources & practices (teaching Haskell)

Clifford Beshers answers (in part, the most important part):

I have two recommendations: teach them the simplest definitions of the fundamentals; read programs with them, out loud, like children’s books, skipping nothing.

The second one, reading aloud, is one that I have advocated for standards editors. Mostly because it helps you slow down and not “skim” text that you already “know.”

And the same technique can be applied for self-study of any subject, whether it is Haskell, some other programming language, mathematics, or some other domain.