Tuesday, January 31, 2017

AP Computer Science 2016-2017: For & While Loops (January)

AP Computer Science 2016-2017:
For & While Loops

Last month we took our time finishing Lab05/Chap06 on Conditional Statements, Boolean Expressions, Truth Tables and Predicate Methods! Then we did a WEEK Of Code devoted to Daniel Shiffman's excellent tutorial on Processing. Now we are in the midst of Lab06/Chap07 about Iteration! We are playing around with for and while loops. In fact, we were just calculating Large Mersenne Primes comparing our outputs using int, long and the java.math.BigInteger class.

YouTube Wednesday: Cliff Stoll on Nova!

Teaching With Technology,

Well, that's all folks,
A. Jorge Garcia

 Applied Math, Physics and CS
2017 NYS Secondary Math PAEMST Nominee

Sage Ebay

Monday, January 30, 2017

AP Calculus BC 2016-2017: Exponential & Logarithmic Derivatives (January)

AP Calculus BC 2016-2017:
Exponential & Logarithmic Derivatives

In this unit, we learned about derivatives and integrals involving e^x and ln(x)! We solved Variable Separable Differential Equations. We calculated Total Work done. We even played around with Logarithmic Differentiation!

YouTube Wednesday: Fractals on Nova!

Teaching With Technology,

Sunday, January 29, 2017

preCalculus 2016-2017: Exponential & Logarithmic Functions (January)

preCalculus 2016-2017:
Exponential & Logarithmic Functions

This chapter was all inverse functions. We focused on Exponential and Logarithmic functions and their properties. We talked about graphing these functions and their transformations. We used inverse functions to solve equations. Then we had Midterm Review and in-class Midterms!

YouTube Wednesday: Fractals on Nova!

Teaching With Technology,

Sunday, January 15, 2017

CIS(theta), 2016-2017 Jan Meeting: openSSH & Public Keys!

CIS(theta), 2016-2017 
Jan Meeting: openSSH & Public Keys!

We decided to install a native openMPI stack over our Ubuntu OS on all the hard drives in our cluster and skip using the pelicanHPC DVD. The idea is to login from home and ssh into any node to login on the cluster as needed! We already covered steps 1-3. We're on step 4, installing Public Key Authenticated SSH!

InstantCluster Step 1: 
Infrastructure - Power, Wiring and AC

InstantCluster Step 2: 
Hardware - PCs

InstantCluster Step 3: 
Firmware - Ubuntu

InstantCluster Step 4: 
Software Stack I - openSSH:

01) Install openSSH-server from USC or 

02) Create a the same new user on every box of the cluster

03) login as the new user, we used 
userid: jaeger, passwd: galaga

04) If you have no .ssh directory in your home directory, ssh to some other machine in the lab; then Ctrl-d to close the connection, creating .ssh and some related files. 

05) From your home directory, make .ssh secure by entering:
chmod 700 .ssh

06) Next, make .ssh your working directory by entering:
cd .ssh

07) To list/view the contents of the directory, enter:
ls -a [we used ls -l]

08) To generate your public and private keys, enter:
ssh-keygen -t rsa

The first prompt is for the name of the file in which your private key will be stored; press Enter to accept the default name (id_rsa).The next two prompts are for the password you want, and since we are trying to avoid entering passwords, just press Enter at both prompts, returning you to the system prompt.

09) To compare the previous output of ls and see what new files have been created, enter:
ls -a [we used ls -l]
You should see id_rsa containing your private key, and id_rsa.pub containing your public key.

10) To make your public key the only thing needed for you to ssh to a different machine, enter:
cat id_rsa.pub >> authorized_keys

NOTE: The Linux boxes on our LAN, soon to be cluster, have IPs ranging from to So, we copied each id_rsa.pub file to temp01-temp24 and uploaded these files via ssh to the teacher station. Then we just ran cat tempnn >> authorized_keys for each temp file to generate one master authorized_keys file for all nodes that we could just download to each node's .ssh dir.

[optional] To make it so that only you can read or write the file containing your private key, enter:
chmod 600 id_rsa 

[optional] To make it so that only you can read or write the file containing your authorized keys, enter: 
chmod 600 authorized_keys

InstantCluster Step 5: 
Software Stack II - openMPI

InstantCluster Step 6: 
Coding I - Quadrature

InstantCluster Step 7: 
Coding II - Mandelbrot

InstantCluster Step 8: 
Coding III - Mandel Zoom

InstantCluster Step 9: 
Coding IV - POVRay

InstantCluster Step 10: 
Coding V - Blender

InstantCluster Step 11: 
Coding VI - 3D Animation

09/14/2016 (organizational meeting)
10/26/2016 (installing Ubuntu 16.10 64bit)
11/09/2016 (installing Ubuntu 16.10 64bit)
12/14/2016 (Pelican HPC DVD)
01/11/2017 (openSSH Public Keys)
02/08/2017 (openMPI Software Stack)
03/08/2017 (Fractal Plots)
03/22/2017 (Fractal Zoom Movie)
(03/29/2017 is a make up day)
04/26/2017 (POVRAY Animation)
05/10/2017 (Blender Animation)
(05/24/2017 is a make up day)

So, what's all this good for aside from making a Fractal Zoom or Shrek Movie?

SETI Search
Protein Folding
Beal Conjecture
Scientific Computing
Computational Physics
Mersenne Prime Search
Computational Chemistry
Computational Astronomy
Computer Aided Design (CAD)
Computer Algebra Systems (CAS)

These are but a few examples of using Computer Science to solve problems in Mathematics and the Sciences (STEAM). In fact, many of these applications fall under the heading of Cluster Programming or Super Computing. These problems typically take too long to process on a single PC, so we need a lot more horse power. Next time, maybe we'll just use Titan!


Membership (alphabetic by first name):
CIS(theta) 2016-2017: 
DanielD(12), JevanyI(12), JuliaL(12), MichaelC(12) , MichaelS(12), YaminiN(12)

CIS(theta) 2015-2016: 
BenR(11), BrandonL(12), DavidZ(12), GabeT(12), HarrisonD(11), HunterS(12), JacksonC(11), SafirT(12), TimL(12)

CIS(theta) 2014-2015: 
BryceB(12), CheyenneC(12), CliffordD(12), DanielP(12), DavidZ(12), GabeT(11), KeyhanV(11), NoelS(12), SafirT(11)

CIS(theta) 2013-2014: 
BryanS(12), CheyenneC(11), DanielG(12), HarineeN(12), RichardH(12), RyanW(12), TatianaR(12), TylerK(12)

CIS(theta) 2012-2013: 
Kyle Seipp(12)

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

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

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

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

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

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

Well, that's all folks,
A. Jorge Garcia

 Applied Math, Physics and CS
2017 NYS Secondary Math PAEMST Nominee

Sage Ebay

Sunday, January 1, 2017

Happy New Year 2017!

Happy New Year 2017!
Now that it's 2017, I suppose it's time for a New Year's Resolution: 

"I resolve not to get upset every time I see a blatant disregard for the proper use of units or a lack of number sense!" 

This problem shows up everywhere. I think you'd be very surprised by just how ubiquitous this issue actually is. Take a look at just a few examples below.

Verizon To The Rescue!
This audio clip, turned YouTube video, is one of the most infamous examples of this complete disregard for number sense and dimensional analysis. Suffice it to say that an approximate 36000 KB data overage times 0.002 cents per KB is billed at approximately $72???

Potato Farmer
Me: My dear sir, that's quite a sign you have!
Farmer: Why, yes, we are having a big sale.
Me: I can see that! This sale is amazing!
Farmer: May I interest you in some potatoes?
Me: Certainly, I'll take 100lbs.
Farmer: Dear me, how wonderful...
Farmer: Just a minute while I fetch 100 bags!
Me: Thank you, take your time, no hurry...
Farmer: There you go, done loading your car.
Me: Here you are, my good man...
Me: You get a nice new crisp $1 bill...
Farmer: What's the meaning of this?
Me: You did such a fine job, keep the change!
Me: I know, it's way too generous,
Me: but I think you've earned it!
Farmer: This is an outrage!
Me: No, no, you can keep the change. 
Me: After all, with the extra penny,
Me: you can get a whole pound for yourself
Me: with change to spare, no less!
(above: similar problem at my supermarket)

Library Matron
Clearly, the Librarian meant 10 cents per page printed from the PC Lab. However, under the unwritten rules of "Truth In Advertising" I would be fully within my rights to demand 10 printed pages for a single penny, no?

Local Deli
The Deli Guy is guilty of the same gross negligence of proper units usage. Did he mean 50 cents per sandwich? Shall we just give him a pass? No, say I, no more Mr Nice Guy! We can't let this slide anymore. Keep this up and it will soon be the end of civilization as we know it! How about 50 cents for 100 sandwiches?

Tile Store
Is the Tile clerk guilty of this mortal sin as well? So, shall we pay our 69 cents per tile and meekly walk away shaking our collective heads without uttering so much as a single cough in derision? No, I will make my order and pay 69 cents for 100 tiles! Maybe I'll take 1000 tiles off the clerk's hands for a measly $6.90! Why stop there, how about 10000.... OK, ok, now this is getting out of hand!

Parting Blow
Sorry, I have no further commentary. This last example just takes the cake!

Wait, just when you thought it could not get any worse, there's more:

OK, just one more: 
This one opens up a whole other can of worms! My neighbor's mailbox is supposed to have a street address of 226 Such-And-Such Lane. Did he mix up his Roman Numerals with his Arabic Number System?

Well, that's all folks,
A. Jorge Garcia

 Applied Math, Physics and CS
2017 NYS Secondary Math PAEMST Nominee

Sage Ebay