Saturday, February 23, 2013

Quarter III, Week 4: ScreenCasts, SmartNotes and Code oh my!




Quarter III, Week 4: ScreenCasts, SmartNotes and Code oh my! 

Math 4R: preCalculus for Seniors
Math 4H: preCalculus Honors for Juniors
Math 5H: AP Calculus BC
CSH: Computer Science Honors
APCS: AP Computer Science
CIS(theta): Computing Independent Study
PAEMST: Presidential Award of Excellence
Ubuntu: Linux Install Fun and Games

Above you will find links to summaries of all my lessons for the past several weeks. So, this blog post serves as a Table of Contents for all my other blogs from class!

In addition, CIS(theta) is a summary of my Computing Independent Study class that meets after school like a club. 

PAEMST details my trials and tribulations regarding my 2012-2013 application for the Presidential Award of Excellence in Math and Science Teaching. 

Last, but not least, UBUNTU is a collection of blogs about installing, maintaining and teaching with Ubuntu Linux on my desktop and on my students' desktops in class!

Our YouTube Wednesday Guest Speaker this week was William Noels speaking about Archimedes and the origins of Calculus!


Well, that's all folks!
Learning with Technology, 

Teaching Math 4R: Starting Chapter 11 - Systems of Equations and Matrices!




Teaching Math 4R: Starting Chapter 11 - Systems of Equations and Matrices! 

preCalculus for Seniors started Chapter 11 on Matrices! We talked elimination method with 2 and 3 variables!

Here's our ScreenCasts and SmartNotes for this week:







mySlideShare SmartNotes
mySage code for MATH4R2012

Well, that's all folks!
Teaching with Technology, 


Teaching Math 4H: Finishing Chapter 12! 

preCalculus Honors for Juniors finished Chapter 12 this week. This unit is about Sequences and Series. We focused on the Binomial Expansion Theorem as a Series. I never got to record this unit, so these are all new screencasts and smartnotes! We are starting Calculus UNIT2 next week about limits

Here's our ScreenCasts and SmartNotes for this week:






mySlideShare SmartNotes
mySage code for MATH4H2012!

Well, that's all folks!
Teaching with Technology, 

Friday, February 22, 2013

Teaching Math 5HBC: Continuing Unit 8!


Teaching Math 5HBC: Continuing Unit 8! 

AP Calculus BC continued Unit 8 this week. We talked about Differential Equations modeling real world phenomena. We worked on Slope Fields, Euler's Method and Variable Separable. We talked about stable and unstable equilibria. We also discussed Exponential Growth and Decay, Exponential Approach and Logistic curves!

We will have a new MCQ Monday BC Part IA in 2 weeks as we need the time to finish this unit next week! 

Here's our ScreenCasts and SmartNotes for this week:



mySlideShare SmartNotes
mySAGE code for MATH5HBC2012!

Well, that's all folks!
Teaching with Technology, 

Teaching Computer Science Honors: Finishing Chapter 6 - Boolean Logic!

Teaching Computer Science Honors: Finishing Chapter 6 - Boolean Logic!

This week we continued Boolean Logic! We talked more about BIN, TRI, OCT, DEC integers and rationals, truth tables, propositions and predicates!

Here's our ScreenCasts and Code for this week:























mySAGE code for CSH2012!


Well, that's all folks!
Teaching with Technology, 

Teaching AP Computer Science: Continuing CH7+8 Loops and Arrays!


Teaching AP Computer Science: Continuing CH7+8 Loops and Arrays! 

We're finished the Polygon class using the ShowLace algorithm, for loops and ArrayLists to find the area of polygons based on vector cross products. Next, we'll write Chess960.java to generate random chess boards and record chess games with a mix of for each loops, while loops, static arrays and ArrayLists as well a 1D and 2D arrays!


After all that, I think we'll go back to GridWorld Part IV. We'll also do some chapters on inheritance and polymorphism, then recursion, static classes and, finally, searching and sorting. Don't forget, we covered chapters 1-5 thoroughly before even starting GridWorld Parts I-III.

I think it's time to start Take Home Tuesdays again! We are now ready for Take Home #4 as we are good a loops and arrays. 

Here's our ScreenCasts and Code for this last week:










myPasteBin code for APCS2012
myProgramr code for APCS2012

Well, that's all folks!
Teaching with Technology, 

Saturday, February 16, 2013

Quarter III, Week 3: ScreenCasts, SmartNotes and Code oh my!



Quarter III, Week 3: ScreenCasts, SmartNotes and Code oh my! 

Math 4R: preCalculus for Seniors
Math 4H: preCalculus Honors for Juniors
Math 5H: AP Calculus BC
CSH: Computer Science Honors
APCS: AP Computer Science
CIS(theta): Computing Independent Study
PAEMST: Presidential Award of Excellence
Ubuntu: Linux Install Fun and Games

Above you will find links to summaries of all my lessons for the past several weeks. So, this blog post serves as a Table of Contents for all my other blogs from class!

In addition, CIS(theta) is a summary of my Computing Independent Study class that meets after school like a club. 

PAEMST details my trials and tribulations regarding my 2012-2013 application for the Presidential Award of Excellence in Math and Science Teaching. 

Last, but not least, UBUNTU is a collection of blogs about installing, maintaining and teaching with Ubuntu Linux on my desktop and on my students' desktops in class!

Our YouTube Wednesday was another Inspirational Guest Speaker: Steve Jobs!


Well, that's all folks!
Learning with Technology, 

Teaching Math 4R: Continuing Chapter 10 - Conics!



Teaching Math 4R: Continuing Chapter 10 - Conics! 

preCalculus for Seniors continued Chapter 10 on Conic Sections! We talked about parametric mode this week!

Here's our ScreenCasts and SmartNotes for this week:


mySlideShare SmartNotes
mySage code for MATH4R2012

Well, that's all folks!
Teaching with Technology, 

Teaching Math 4H: Continuing Chapter 12!


Teaching Math 4H: Continuing Chapter 12! 

preCalculus Honors for Juniors continued Chapter 12 this week. This unit is about Sequences and Series. We focused on Proof ny Mathematical Induction this week. I never got to record this unit, so these are all new screencasts and smartnotes!

Here's our ScreenCasts and SmartNotes for this week:

mySlideShare SmartNotes
mySage code for MATH4H2012!

Well, that's all folks!
Teaching with Technology, 

Teaching Math 5HBC: Continuing Unit 8!


Teaching Math 5HBC: Continuing Unit 8! 

AP Calculus BC continued Unit 8 this week. We talked about Trig Sub and Partial Fractions. So now we know how to integrate anything that has an algebraic closed form antiderivative! Next we will apply our vast knowledge of integration to solve DiffEqus.

We will have a new MCQ Monday BC Part IA in 2 weeks as we are off this Monday for Presidents' Day! We lost this February Break due to Hurricane Sandy!

Here's our ScreenCasts and SmartNotes for this week:





mySlideShare SmartNotes
mySAGE code for MATH5HBC2012!

Well, that's all folks!
Teaching with Technology, 

Teaching Computer Science Honors: Continuing Chapter 6 - Boolean Logic!


Teaching Computer Science Honors: Starting Chapter 6 - Boolean Logic!

This week we continued Boolean Logic! We talked more about truth tables, propositions and predicates!

Here's our ScreenCasts and Code for this week:






mySAGE code for CSH2012!


Well, that's all folks!
Teaching with Technology, 

Teaching AP Computer Science: Continuing CH7+8 Loops and Arrays!






Teaching AP Computer Science: Continuing CH7+8 Loops and Arrays! 

We're working on the Polygon class using the ShowLace algorithm, for each loops and ArrayLists to find the area of polygons based on vector cross products. Next, we'll write Chess960.java to generate random chess boards and record chess games with a mix of static arrays and ArrayLists as well a 1D and 2D arrays!



After all that, I think we'll go back to GridWorld Part IV. We'll also do some chapters on inheritance and polymorphism, then recursion, static classes and, finally, searching and sorting. Don't forget, we covered chapters 1-5 thoroughly before even starting GridWorld Parts I-III.

I think it's time to start Take Home Tuesdays again! We are now ready for Take Home #4 as we are good a loops and arrays. 

Here's our ScreenCasts and Code for this last week:


















myPasteBin code for APCS2012
myProgramr code for APCS2012

Well, that's all folks!
Teaching with Technology, 

Friday, February 15, 2013

CIS(theta) 2012-2013 February Update #1



Computing Independent Study 2012-2013




FEBRUARY UPDATE #1
We finally got around to writing mandelSeq.py and mandelMPI.py using MPI4PY, mathplotlib() and spectral but only on 3 cores. Our work is based on Lisandro Dalcin's excellent materials listed below. We ran mandelSeq.py as an executable file from the terminal just like any standard python program. To accomplish this we added:
#!/usr/bin/python
as the first line of the file and ran:
chmod 755 mandelSeq.py
to make an executable. mandelMPI.py is executed like helloMPI.py:
mpiexec -n 3 python helloMPI.py





JANUARY UPDATE #3
OOPS, we got our signals crossed and had to postpone this meeting! Next time I think we'll try to render some Mandelbrot Fractals. If we ever get back to our old room, we could make a FractalZoom movie using 100 cores instead of just 3....


JANUARY UPDATE #2
Finally, we got helloMPI.py working today on a single node with 3 cores! We wrote the following code:


1 from mpi4py import MPI
2
3 rank = MPI.COMM_WORLD.Get_rank()
4 size = MPI.COMM_WORLD.Get_size()
5 name = MPI.Get_processor_name()
6
7 print ("Hello, World! "
8 "I am process %d of %d on %s" %
9 (rank, size, name))

We saved this text in the file helloMPI.py in the pelicanHPC home dir. Then, from a shell in the home dirm we executed this code by:
mpiexec -n 3 python helloMPI.py

We downloaded the new ISO with mpi4py from http://www.pelicanhpc.org and followed this tutorial: http://pareto.uab.es/mcreel/PelicanHPC/Tutorial/PelicanTutorial.html and this one too: http://pareto.uab.es/mcreel/PelicanHPC/pelicanhpc.pdf and http://pelicanhpc.788819.n4.nabble.com/How-can-i-find-out-which-are-processes-are-being-sent-to-which-node-td3034955.html and http://www.linuxpromagazine.com/Issues/2009/103/CLUTTER-TO-CLUSTER



JANUARY UPDATE #1
We tried to isolate our LAN from other DHCP servers but could not. So we still only have individual 3-core SMP boxes running at about 1.2 GFLOPs. We also tried our hand at mpi4py, but we have a way to go in that department too!
UPDATE: mpi4py was left out of the current pelicanHPC by mistake! No wonder mpi4py didn't work! Look here:
http://pelicanhpc.788819.n4.nabble.com/pelicanhpc-2-9-amd64-and-mpi4py-td4650446.html



DECEMBER UPDATE
We finally had a chance to meet this month in our new PC Lab! We got pelicanHPC to run 3 cores at about 1.2 GFLOPS. We have AMD Phenom IIs. These CPUs are supposed to be quad-cores. It seems one core is dead. Even so, that's not a bad start. However, we could only run pelican in SMP mode. We could not PXE boot any other nodes. We are also looking into Flame Fractals.
********************

NOVEMBER UPDATE
Sorry to say that we had no meetings this month. I was hoping for 3 meetings, but Hurricane Sandy changed everything! We are in a new room where we may be able to try out liveLinux CD based MPI clusters next month. Stay tuned!
********************

OCTOBER UPDATE #2
That was a great meeting today! We burned 8 CDs of Precise Pangolin and reinstalled the whole back row of our PC LAB/Classroom. Many thanx go to Jeremy for coming to vist today and lending a hand! 
RELATED POST: http://shadowfaxrant.blogspot.com/2012/11/pc-lab-period-of-reconstruction-at.html

Here's the steps we followed for a minimal install of the Student Stations (64bit Athlons):
Step1: 
Reboot each Linux box with the current  CD. Answer some basic questions about time zone, userid, passwd, no login on bootup, etc.
Step2:
Reboot each Linux box without the CD. Make sure to configure the gigE cards and proxy server:
IP: 10.5.129.x
NetMask:255.255.0.0
GateWay: 10.5.0.254
DNS: 10.5.0.254
Proxy: 10.0.0.125
Step3:
Configure System Settings as desired (unit circle trig calculator background, no screensaver, etc).
Step4: 
We had to switch Software Sources in the Ubuntu Software Center (edit/source) to Main before this would work:
sudo apt-get update
sudo apt-get upgrade
Step5:
Now, we could use the Ubuntu Software Center to install WINE.
Step6:
I copied my VTI83 and VTI89 directories from my memory stick to the Desktop. Then, after editing preferences to have VTI open with WINE, I configured each calculator.
Step7:
I will edit my /etc/crontabs tomorrow....
Step8:
We haven't decided what else we may have to install (local SAGE server, JRE, openSSH, openMPI,etc). We'll have to think about that! Here's some info on install fests from prior years:
http://shadowfaxrant.blogspot.com/2011/05/2-so-many-hard-drives-so-little-time.html
http://shadowfaxrant.blogspot.com/2011/01/then-god-mage-midterm-week-and-saw-that.html
http://shadowfaxrant.blogspot.com/2010/06/so-many-linux-distros-so-little-time.html
********************


OCTOBER UPDATE
We decided to try out the new Ubuntu Linux 64bit Desktop 12.04 nicknamed Precise Pangolin. So we surfed on over to http://www.ubuntu.com and downloaded the latest ISO. We burned the CD, rebooted a guinea pig box and reinstalled it. This should be a simple procedure as we no longer use dualboot or dualnic boxes. However, we ran into a SNAFU right away! Intranet gigE works fine, but we can't get on the Internet? OOPs, we forgot the network proxy. If at first you don't succeed, try, try again!

Ubuntu Release History
4.10 Warty Warthog (mammal)
5.04 Hoary Hedgehog (mammal)
5.10 Breezy Badger (mammal)
6.06 Dapper Drake (bird)
6.10 Edgy Eft (amphibian)
7.04 Feisty Faun (mammal)
7.10 Gutsy Gibbon (mammal)
8.04 Hardy Heron (bird)
8.10 Intrepid Ibex (mammal)
9.04 Jaunty Jackalope (mythical beast)
9.10 Karmic Koala (mammal)
10.04 Lucid Lynx (mammal) 
10.10 Maverick Meerkat (mammal) 
11.04 Natty Narwahl (mammal) 
11.10 Oneiric Ocelot (mammal) 
12.04 Precise Pangolin (mammal) 
12.10 Quantal Quetzal (bird) release: 10/18

Guardian, our ssh server, is running 10.04 32bit. Guardian has a dualcore 32bit intel Xeon processor with 2GB RAM and a 512GB RAID drive.

Caprica, our ftp server, is running 10.04 32bit. Caprica has a dualcore 32bit intel Xeon processor with 2GB RAM and a 512GB RAID drive.

Shadowfax, our teacher station, is running 11.10 32bit. Shadowfax has a dualcore 64bit amd Athlon processor with 2GB RAM and a 256GB hdd. We use a 32bit OS here as SmartNotebook doesn't run on 64bit....

Alpha-Omega, our student stations, are running 11.04 64bit. These Linux boxes, like Shadowfax, have dualcore 64bit amd Athlon processors with 2GB RAM and a 256GB hdd.

We are only upgrading Alpha-Omega to 12.04 (or 12.10 if it's available when we upgrade in a couple of weeks). We are also waiting for a hardware upgrade for Alpha-Omega to amd quadcore Phenoms!
********************

SEPTEMBER UPDATE
We had our traditional first organizational meeting:

(1) Wreath of the Unknown Server: 
We visited our first ssh server, Colossus, which is still in the switch room though dormant. I set it up for the first time in 1995 running Slackware Linux. Colossus ran for 12 years straight, 24x7 never having to shut down, reboot or even have anything re-installed! Colossus would not die. We finally just replaced Colossus with a dual-core Intel Xeon box complete with a RAID drive running 1TB. Old Linux boxes never die, they just fade away...


(2) Display Case Unveiled: 
We took down a ton of fractal prints and ray tracings from Room 429 to the 2 cases on the 1st floor near the art wing. We decorated both cases as best we could and left before anyone saw us. Must have been gremlins.

(3) Recruiting 2012: 
We decided that we did not have a good pool of candidates to recruit more CIS(theta) members for this year's Geek Squad, so we tabled that topic.

(4) Planing 2012: 
Next meeting would have been 9/28 but that's Yum Kipur. So, we have to wait another 2 weeks after that for 10/10 at which point Ubuntu Precise Pangolin 64bit release 12.10 Desktop Edition should be available for a mini install fest. After that, we may use bootable cluster Linux CD distros to learn MPI.
==================================
What we are researching I (Sept)
(look what this school did in the 80s): 
Thomas Jefferson High courses
http://academics.tjhsst.edu/compsci/parallel/
Thomas Jefferson High paper
http://www.tjhsst.edu/~rlatimer/techlab07/BWardPaperQ3-07.pdf
Thomas Jefferson High ftp
http://www.tjhsst.edu/~rlatimer/techlab07/
Thomas Jefferson High teacher
http://www.tjhsst.edu/~rlatimer/


What we are researching II (Oct)
(clustering environments): 
Parallel Virtual Machine
http://www.csm.ornl.gov/pvm/
openMOSIX
http://openmosix.sourceforge.net/instant_openmosix_clusters.html
Message Passing Interface
http://www.open-mpi.org/


What we are researching III (Dec)
(instant MPI clusters via liveCDs): 
Cluster By Night
BCCD
pelicanHPC
Flame Fractals
http://en.wikipedia.org/wiki/Fractal_flame


What we are researching IV (Jan)
mpi4py
http://mpi4py.scipy.org/


What we are researching V (Feb)
mandelSeq.py and mandelMPI.py


==================================
Today's Topic:
CIS(theta) 2012-2013 - mandelMPI.py


Today's Attendance:
CIS(theta) 2012-2013: Kyle Seipp


Today's Reading:
Chapter 5: Building Parallel Programs (BPP) using clusters and parallelJava
==================================
Membership (alphabetic by first name):
CIS(theta) 2012-2013: 
Kyle Seipp

CIS(theta) 2011-2012: 
Graham Smith, George Abreu, Kenny Krug, LucasEager-Leavitt

CIS(theta) 2010-2011: 
David Gonzalez, Herbert Kwok, Jay Wong, Josh Granoff, Ryan Hothan

CIS(theta) 2009-2010: 
Arthur Dysart*, Devin Bramble, Jeremy Agostino, Steve Beller

CIS(theta) 2008-2009: 
Marc Aldorasi, Mitchel Wong*

CIS(theta) 2007-2008: 
Chris Rai, Frank Kotarski, Nathaniel Roman

CIS(theta) 1988-2007: 
A. Jorge Garcia, Gabriel Garcia, James McLurkin, Joe Bernstein, ... too many to mention here!

*nonFB
==================================
Well, that's all folks, enjoy!
Happy Clustering,