RSS

Tag Archives: learning

Bell Ringers

liberty-bell_14540_lgToday, my wife and I toured a school that we are considering for our (present) fourth grader to move into when he starts sixth grade. It was a great little school with a motivated, engaged staff from whom I stole an idea or two that I think I can apply to my own teaching and am eager to start in with.

The first was the idea of starting every class with ‘Bell Ringers’, short worksheets that joggle students’ memories with concepts and simple questions that review prior work and provide a glimpse into future study. I’m not sure exactly how he operates these assignments, i.e. cooperative work vs single-person exercises and whether they are actually graded for a score or not. Regardless, I think they represent a fun way to get into the proper state of mind at the beginning of each class.

An article about these kind of exercises can be found at the Edutopia website.

In the same article, I found another activity that is used to open classes that I may consider using to finish each day. That idea, roundtable review, has students compile a list of idea-statements discussed in that class. I was thinking that this might be a good way to collaboratively compile a list of study notes. Maybe the best, or best-stated, idea can receive extra credit (??).

Both of these techniques echo ideas that I have been trying to come up with a way to actualize for some time. Perhaps this is just the right nudge I need to get started.

 
Leave a comment

Posted by on November 19, 2014 in Uncategorized

 

Tags: , , ,

A Post Across Two Blogs

Image

Where did my mind go?

I admit that I have a problem.

That problem is that I have to try-really try to be organized (if any students are reading this, they won’t believe that I am ever organized, even after trying, but that’s only partly correct). It does not come naturally to me and I tend to add complexity when I should be adding simplicity. The good thing is, at least I recognize this and I have a couple solutions, one of which I’ll fess up to right away: When I get lost in my own web, the best thing I can do is put my problem down and come back after a good night’s sleep.

It’s rare that I actually get a good night’s sleep though, but it often works out that any degree of shut-eye will do. And this is just what neurologists have been telling us for a long time. We don’t fully understand sleep, but we do know that it’s important. Recent data has just come out from the University of Wisconsin-Madison lending further support to the hypothesis that sleep is an organizing tool for our brains.

Image

Really, this is an important part of my work.

 

 Dr. Giulio Tononi, of the UW Center for Sleep and Consciousness. “During wake, learning strengthens the synaptic connections throughout the brain, increasing the need for energy and saturating the brain with new information. Sleep allows the brain to reset, helping integrate newly learned material with consolidated memories, so the brain can begin anew the next day.”

We know that sleep functions in many ways to help out brains. Again, from the UW-M website,Indeed, there is evidence that sleep enhances important features of memory, including acquisition, consolidation, gist extraction, integration and “smart forgetting,” which allows the brain to rid itself of the inevitable accumulation of unimportant details.”

Prior work from Brown University also shows that “sleep is not just a waste of time.” While the data from UW-M suggests that sleep is important in the organization, integration and normalization of new material, Masako Tamaki and co-workers from Brown have shown that sleep is necessary in order to learn new motor tasks. This means, that we need sleep not only to make sense of information, but also to be able to retrieve it more efficiently and tie it to specific musculature functions (e.g. riding a bike, playing an instrument).

The other evening I was lost in the complexity of a new programming project I have been working on. I had an idea of how I wanted to attack the task, but it involved learning a number of new methods for handling and retrieving data. The point of the project was to create an program that was incrementally advancing in the way it was crafted – i.e. it was a learning tool for me. There’s no need for this project, just practice for me. Yet, I was doing something that I’ve learned not to do again and again in science. I was adding more than one variable to an experiment and then being frustrated by my inability to work out the kinks and get any meaning.

I needed sleep and knew it. So, I did the nest I could to make notes about what I was dealing with and closed everything (including myself) down.

The next day, I gave myself permission to re-examine the problem from scratch and figure out if I was going about it in the best way possible. The first thing I did was to ratchet back the number of new methods used and made a larger, more cumbersome program, but one that was functionally simpler. I also permitted myself to ‘cheat’ a couple of aspects of the program in order to get it working and then try to re-introduce the items that I cheated by removing before. An example of this was to just use a simple integer, like ‘5’ where I really wanted to generate a random number based on the size of a container that was holding ‘objects’ I used in the program. This meant that I could focus on the use of the data without needing to feed in the ‘real’ information yet.

Most importantly, I feel better about the project now. I think I can finish it with a couple more hours of work and I don’t think I have to throw my computer out of a high window just yet. Take my advice. When working on something that is giving you trouble, give it a good go, then stop, sleep, regroup, and start fresh the next day. Your time is better spent sleeping than spinning your wheels.

code_cpp

goto the code

In fact, I am still having problems, but they are becoming more well defined and manageable. I’m posting the program itself and some discussion of my problems on my other blog, but I thought I would start with a little Neurobiology here first.

Sarah Allen in the Southern Methodist University explains how this works when learning music…

 
4 Comments

Posted by on May 15, 2014 in Uncategorized

 

Tags: , , , , , , , , , ,

Undead Mathematics

ImageMultiple Zombies, the second installment of the undead mathematics series is now available at the iTunes Book store. Get this book and the first installment, In Parts:Fractional Zombies, free for a limited time.

Both books are written for an audience of about 2-3rd grade. Multiple Zombies is specifically for those learning multiplication of numbers 0-10. As such, it introduces the concept of multiplication as addition of sets and includes practice problems tied to the evolving story. Each book requires an iOS or Mac device running iBooks to read and follows the story of two friends as they battle their way through a town suffering from a nasty case of zombies.

 

 

 
Leave a comment

Posted by on March 9, 2014 in Uncategorized

 

Tags: , , , , , , , , ,

Fun with Arrays

In Codecademy this week I’m studying Arrays in Javascript. Arrays were introduced much earlier in this track, but in this unit the subject is expanded to include Multi-dimensional Arrays, how to create them, add to them, splice out of them and loop through them.

Amazingly, this is not my first experience with Multi-dimensional Arrays – but it is the first time that I meant to do so. I had a lot of trouble with an outside project I was working on early in the ‘course’ and determined that I could solve my problem by creating one of these cool Array things I had just learned about. I don’t know how I did it, but I somehow kept creating a Multi-dimensional Array by accident. 

So – this is not my first time working with these constructs, but it is the first time I’ve known what I’m doing. Well, sort of. I find the most difficult thing to come to terms with is the syntax, not the concept. I would like to come up with another outside project dealing with these kind of Arrays and I would love some input. 

Requirements:

1. Simple concept, nothing mind-bending to comprehend

2. Something hard enough that it requires making and handling one or more Multi-Dimensional Array to Solve

3. Something that requires interesting enough manipulation of the arrays that solving the problem will leave me feeling confident in dealing with all aspects of the topic

Suggestions???

Image

One Kind of Array

 
Leave a comment

Posted by on September 1, 2012 in Uncategorized

 

Tags: , , , ,

Codecademy Problem

I’m stuck. In working on a section in codecademy’s JavaScript class relating to methods and objects that inherit these methods, I’ve become a bit confused. The problem that I’m on involves an original Object that is a Car that contains the method ‘accelerate.’ – I’m OK with this:

Objects are things within a class, i.e. they are all contain similar property. In this example our Objects are Cars. There can be many different kinds of cars, each with different property such as (different colors, makes, speed, etc). But they are all in the same ‘class’ (i.e. same kind of thing: cars)

Methods are Functions that manipulate Objects. In this example, if we have made a Car Object that has the property Blue and Ford and 10 mph, we can now do something with this object using a method. The codecademy project has us write an ‘accelerate’ Method that adds 10 to the speed. OK – so every time we send our car object to that method, it looks for the speed property and increases it by 10.

Inheritance is a way of making subsets of an Object so that they automatically get the properties that the ‘parent’ Object has, but can also be given new properties that the ‘parent’ Object does not have. In the present codecademy example, we are making an ElectricCar Object that inherits from the Car Object. No problem, this is a good example because we can easily see that it is still a kind of car and that means it makes sense that it should have all the same properties as other cars (color, make, speed – perhaps Blue, Chevy Volt, 20Mph) But we also want to give it properties that other cars do not have, like ‘electricity’ (meaning battery charge).

 

OK, here’s what I have with some notes to follow along an to indicate where I am having problems. Help is greatly appreciated.

 

function Car( listedPrice ) {
var price = listedPrice;
this.speed = 0;
this.numWheels = 4;

this.getPrice = function() {
return price;
};
}

Car.prototype.accelerate = function() {
this.speed += 10;
};

function ElectricCar( listedPrice ) {
var price = listedPrice;
this.electricity = 100;
}
ElectricCar.prototype = new Car();

// Write the accelerate method for ElectricCar here
myElectricCar.accelerate = function() {
this.speed += 20;
};

// Write the decelerate method for ElectricCar here
myElectricCar.decelerate = function(secondsStepped) {
this.speed -= (5*secondsStepped);
};

myElectricCar = new ElectricCar(500);

myElectricCar.accelerate();
console.log(“myElectricCar has speed ” + myElectricCar.speed);
myElectricCar.decelerate(3);
console.log(“myElectricCar has speed ” + myElectricCar.speed);

 

 

 
Leave a comment

Posted by on August 7, 2012 in Uncategorized

 

Tags: , , , , , , ,

Finishing Touches

Step 6: You get a hand, Determining scores and judging winner

Here are the last touches that make this code into the bare-bones structure of the game. Cards are dealt out to two hands (myHand and yourHand), each card is given a suit and a value and the two hands are compared to determine a winner. (I haven’t added anything about ‘Hitting’ or ‘Holding’, and since you start with only two cards, you can’t go over 21. I’m assuming that these things are all part of the final project).

//Hand Constructor

var Hand = function(){

this.card1 = deal();

//console.log(“card1 is “+this.card1.number+” of ” + this.card1.suit);

this.card2 = deal();

//console.log(“card2 is “+this.card2.number+” of ” + this.card2.suit);

};

//Card Constructor

var Card = function(s,n){

this.number = n;

this.suit = s;

this.getSuit = function(s){

//console.log(“I’m here in getSuit”);

switch(this.suit){

case 1:

this.suit = “clubs”;

break;

case 2:

this.suit = “diamonds”;

break;

case 3:

this.suit = “hearts”;

break;

case 4:

this.suit = “spades”;

break;

}

};

this.getValue = function(n){

// console.log(“I’m here in getValue”);

if (n === 1){

this.value = 11;

}

else if (n >= 11){

this.value = 10;

}

else{

this.value = n;

}

};

};

//Deal function

var deal = function(){

var suit = Math.floor(Math.random()*4)+1;

//console.log(“deal function suit: “+suit);

var number = Math.floor(Math.random()*13)+1;

//console.log(“deal function number: “+number);

return new Card(suit,number);

};

//Score function

var score = function(one, two){

return one+two;

};

//comparison of hands

var judgement = function(mine,yours){

if (mine>yours){

console.log(“I win “+mine+ ” vs “+yours);

}

else if (yours>mine){

console.log(“You win “+mine+ ” vs “+yours);

}

else{

console.log(“We tied “+mine+ ” vs “+yours);

}

};

//Main Function

var myHand = new Hand();

myHand.card1.getSuit(myHand.card1.suit);

myHand.card1.getValue(myHand.card1.number);

console.log(“my card1 is a “+myHand.card1.suit+” of value “+myHand.card1.value);

myHand.card2.getSuit(myHand.card2.suit);

myHand.card2.getValue(myHand.card2.number);

console.log(“my card2 is a “+myHand.card2.suit+ ” of value “+myHand.card2.value);

var yourHand = new Hand();

yourHand.card1.getSuit(yourHand.card1.suit);

yourHand.card1.getValue(yourHand.card1.number);

console.log(“your card1 is a “+yourHand.card1.suit+” of value “+yourHand.card1.value);

yourHand.card2.getSuit(yourHand.card2.suit);

yourHand.card2.getValue(yourHand.card2.number);

console.log(“your card2 is a “+yourHand.card2.suit+ ” of value “+yourHand.card2.value);

var myScore = score(myHand.card1.value,myHand.card2.value);

var yourScore = score(yourHand.card1.value,yourHand.card2.value);

judgement(myScore,yourScore);

 

Tags: , , , ,

MasterMind

This weekend I spent some time online looking for some good suggestions on practicing to write code. I’m still all ears if there are any good practice exercises out there that you might recommend, but I came across someone’s practice problem of making a version of the game master mind.

I used to love this game as a kid because it felt like being a code breaker – I guess it WAS being a code breaker, but I mean that it felt like it mattered to break the code. Anyway, at first glance, I thought this would make for a good project. Something to slow me down from gobbling up codecademy – because I’m getting to the point where the lessons are not so easy and straight forward and I may need time to digest some more.

This brings me to my design. I don’t know if I have a design yet. But what’s the design going to be? I feel like it’s a super easy game and should be super easy to code, but the more I think about it, the harder it gets. I worry that I may be making it harder than it needs to be too… but that will come out when I get to the coding.

So, here’s the basic outline… what happens in a game of mastermind?

(I’m designing it so that the computer makes the code and the player tries to crack it)

1. Computer asks for two pieces of input.

a. how many places / digits will the code be?

b. how many colors (I’m actually going to use numbers) should be available?

2. Computer makes up a secret code based on that input

3. computer asks you to guess a code

4. computer checks your code for right number/right space or right number/wrong space and gives feedback

5.computer calculates how many tries you take to get a correct answer and (perhaps) keeps a leader board.

Now there also has to be some verifications put in place to make sure you choose a valid guess and that you’re not repeating yourself.

The fist hurdle I see if how does it not duplicate itself. (i.e. if position1 of a four digit secret code is ‘1’ and your guess is 1123, how to make sure that it calls position #1 as right number/right position and not give a second credit of right number/wrong position to digit2 of the guess?

I’m sure that there is some proper ordering of the if/then/else look to do that, but I’m a serious noobie and that’s exactly the kind of thing I need to learn.

When I do solve this project, I would like to take the next step and translate my Javascript mastermind into something in Xcode and use a graphic interface.It would even be nice to put this game up for DHS if I could – because I’m going to start making business rules for success here.

#1 is going to be take your job seriously.

#2 make the most of every exercise

I really do take this seriously. I know it’s a small thing, but I am trying my best to make this company work and if that means putting serious effort into making computer exercises, then so be it.

To make the most of every exercise, I am going to hold my feet to the fire and really make this game and get it through the Apple store. I could do this exercise and kind of throw away the result, but if I’m going to make the most of it, that means doing a good job, making a complete product that looks good and going through the steps with Apple, because, frankly, that’s not easy either and it’s another place that practice can pay off.

OK. program, expand the program and compile and start following some rules to keep me on track.Image

 
Leave a comment

Posted by on June 25, 2012 in Codecademy, Coding

 

Tags: , , , , , , , , ,