Monday, September 30, 2013

September YouTube Wednesdays!

September YouTube Wednesdays!
I started the year with the definition of filk:

 /filk/ n.,v. [from SF fandom, where a typo for `folk' was adopted as a new word] A popular or folk songwith lyrics revised or completely new lyrics and/or music, intended for humorous effect when read,and/or to be sung late at night at SF conventions. There is a flourishing subgenre of these called`computer filks', written by hackers and often containing rather sophisticated technical humor. 

Then I proceeded to show some Math Filks! I always start with Mathematicious which is a review of Regents Math. Then I introduce Tom Lehrer!

Regents Math Review!

Base 8 Arithmetic!

Periodic Table of Elements!


Well, that's all folks!


Friday, September 27, 2013

CIS(theta) 2013-2014 September: Administrativa - Meeting I

CIS(theta) 2013-2014
September: Administrativa
Meeting I

(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!

(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: We decided that we have more than enough qualified CIS(theta) members for this year's Geek Squad, so we tabled that topic.

(4) Planning: We have to wait another 2 weeks 10/4 at which point Ubuntu 13.10 Desktop Edition should be available for a mini install fest. After that, we may use bootable cluster Linux CD distros such as BCCD and pelicanHPC to learn MPI using C++ or Python. We also talked about installing an MPI stack on each hdd along with public key authenticated ssh. We would like to make a fractal zoom animation.

(5) Summary: This year's CIS(theta) team is off to a good start. Shadowfax, our 100 core cluster, is in good hands!

What we are researching I (Sept)
(look what this school did in the 80s and 90s): 
Thomas Jefferson High courses
Thomas Jefferson High paper
Thomas Jefferson High ftp
Thomas Jefferson High teacher

Today's Topic:
CIS(theta) 2013-2014 - Administrativa! - Meeting 1

Today's Attendance:
CIS(theta) 2013-2014: 100%

Today's Reading:
Chapter 1: Building Parallel Programs (BPP) using clusters and parallelJava

Membership (alphabetic by first name):

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

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!

Well, that's all folks!

Friday, September 13, 2013

Teaching AP CompSci: Object Based Programming Quarter I Week 3

Teaching AP CompSci: 
Object Based Programming

Quarter I Week 3: 9/23-9/27
This week we started Lab2 based on Chapter 2. In this chapter we discuss constructing objects from existing classes: Rectangle, Color, Random and String. We started talking about Constructors, Accessors and Mutators as well a Private Instance Fields. I'm reworking the ScreenCasts as short summaries after class. I have a new playlist (see below) with only HelloWorld so far.

Quarter I Week 2: 9/16-9/20
We had a good week this week! We finished Lab1 based on Chapter 1 Exercises 1-8 (see Code and ScreenCasts below). We basically covered everything you ever wanted to know about main() methods and println()! We just started talking about Chapter 2 and Lab 2, Object Based Programming (using existing classes, constructors, objects, accessors) at the end of the week.

Our networking and various hardware issues are all corrected now (except the HP Color LaserJet is still down). My networking issues required setting up a static IP on the SmartBoard or Teacher PC. So, I have access to all my sites at school, finally!

proxy: NONE! (was

There's a bit of lag on the LAN. So, I think I'll make Static IPs for the students too as there may be a DHCP conflict. However, the student stations are required to have the proxy.

Also, most students can access the ssh server from home. Some of us have Linux running at home which makes accessing java files the same as in class. Some students are logging in using putty from WIN but cannot use GUI applications from home (WIN graphics engine does not recognize the LIN graphics engine). Some have Mac at home and find that the MAC terminal works just like the Linux terminal at home including GUI ssh tunnels using: "ssh -Y userid@"

Quarter I Week 1: 9/9-9/13
APCS had a slow start this year with a lot of networking and server issues. I think we're up to snuff now. We're in Chapter 1 of Cay Horstmann's fabulous text. All we did was write serveral versions of HelloWorld. This is a fine way to become familiar with our Linux based system. 

We talked about how to use our server from home using putty in Windows or a terminal in Mac and Linux land.

We also talked about CLI vs GUI, ASCII and Unicode, SSH vs FTP, javac vs java, etc. We also talked about the importance of comments and self-documenting code!

What's new this year is that I'm trying to stick to a CLI for coding in java all day every day! All we need is a shell or terminal to run javac, java and a text editor. This way we call login from home and do our work the same way we do in class even from a Mac terminal or by using putty in Windows!

ScreenCasts and SmartNotes and Code, 
oh my:

Below, you will usually find ScreenCasts from this week. We don't have too many SmartNotes in this course. Please see our sample code!

Well, that's all folks!

Teaching Math 5H: UNIT 2 Limits Quarter I Week 3

Teaching Math 5H
UNIT 2 Limits

Quarter I Week 3: 9/23-9/27
We finished UNIT 2 with a test! Our last topic concerned the existence of the derivative. BTW, we start with UNIT 2 since UNIT 1 is just a review of PreCalculus. We did a bit of that in 106 and 107 on Conics and Polar Notation.

Quarter I Week 2: 9/16-9/20
We are almost finished with UNIT 2: Continuity and Differentiablility! We demostrated the Power Rule using the Definition of the Derivative as the limit of the Difference Quotient. We even started the Trig Rules!

Quarter I Week 1: 9/9-9/13
AP Calculus BC started with a preCalc review in the form of the topic of Conic Sections! This is a great topic to review Cartesian and Polar Coordinates, as well as some algebra, trig and TI89 usage!

Our first YouTube Wednesdays this year are filks by Tom Lehrer!

I know Fridays aren't YouTube Wednesdays, but I had to show the following filks about continuity and differentiability!

ScreenCasts and SmartNotes and Code, 
oh my:
Below, you will usually find ScreenCasts from this week. SmartNotes are from a previous year's TI89 based course. We don't code much in this class except for programming the TI89.

Well, that's all folks!

Teaching Math 4R: Chapter 12 Sequences, Quater I Week 3

Teaching Math 4R
Chapter 12 Sequences

Quarter I Week 3:
We finished CH12 this week with a test! Our last topics included Proof By Induction and The Binomial Expansion Theorem!

Quarter I Week 2:
This week we covered Geometric Sequences and Induction! Included below you will find ScreenCasts based on TI83 and SAGE. I also have SmartNotes from the TI83 ScreenCasts as well as SAGE Worksheets for the SAGE ScreenCasts!

Quarter I Week 1:
PreCalculus is all new this year:
(1) My preCalculus for Juniors classes started the school year with Chapter 12 this year! We start with Chapter 12 so we don't waste a lot of time reviewing topics from Chapters 1 and 2 which are about solving Linear Equations and Quadratics! So, when midyear is upon us, we can switch to Calculus without skipping important topics at the end of the preCalculus text. As such, we cover as much preCalculus as we can in the Fall Semester and as much AP Calculus AB material as we can in the Spring in preparation for Calculus next year!

(2) We are using a Computer Algebra System called SAGE instead of the TI83. The grand experiment this year is to see how well students learn the Math while learning to code in python at the same time!

(3) We will be learning a lot of python in class. You can learn some python code on your own too with this online, interactive textbook!

I actually have 2 different preCalculus classes. PreCalculus 4R and preCalculus 4H cover the same material and is comprised mostly of Juniors. The difference between these to groups is that 4R takes AP Calculus AB next year and 4H takes AP Calculus BC. Also, we cover material a little more in-depth for the 4H student and our tests may be a bit more challenging.

ScreenCasts and SmartNotes and Code, 
oh my:

Below, you will find ScreenCasts from this unit. The SmartNotes are from last year's TI83 based course. SAGE code from this week, in the form of worksheets, are also included below so you can see our new approach.

Well, that's all folks!

Sunday, September 1, 2013

Summer Adventures of a Droid Tablet!

Week 1: Adventures of a Droid Tablet
The night before the first class of a Summer Session course I was teaching this past July at the local college, my laptop died with everything setup on it to use a Wacom Tablet, ScreenCast-o-Matic and SmartNoteBook. So, I took the Teacher PC, armed with a PC Projector, in one of the computer rooms and added these 6 components:
(1) USB Mic
(2) USB BlueTooth Dongle
(3) USB Memory Stick with Virtual TI-83
(4) BlueTooth Wacom Graphire 6x8 Tablet
(5) Windows Journal Pen App
Since I was stuck using WimpDoze, I exported Windows Journals to *.tiff and converted these to PDF format using ZamZar or the tiff2pdf commandline tool in an Ubuntu Linux shell. Then I stored all PDFs on SlideShare and all MP4s on YouTube and linked everything to Edmodo.

Week 2: Adventures of a Droid Tablet
This week I tried the following setup instead. Note, Screencast-o-matic would not work online, I had to download a Windows app to my Desktop:
(1) USB Mic
(2) WiFi DROID 8.9" Tablet
(3) Virtual TI-83
(4) Xournal Pen Windows App
So I finally retired the laptop and the Smart Airliner Slate (aka Wacom Graphire 6x8 Art Tablet). Now I don't have to carry around all that bulky stuff. I may still need this old setup as a backup option when I'm speaking at conferences and I have to setup a quick screencast. 

I would love to drop the USB Mic too if I could figure out how to use the Droid's Mic with this configuration. I would then be truly wireless! This new incarnation of the Kindle has an 8.9" HD screen, dual WiFi, dual speakers, dual cores as well as a webcam and mic. I think there's a version of Teamviewer, called Teamviewer for Meetings, that uses VOIP so I wouldn't need a separate Mic. IDK if it's free or cheap. I suppose I could go back to using a wireless lapel mic? Maybe I could use a BlueTooth Headset Mic? You see, my lapel mic disappeared after Hurricane Sandy destroyed the Math Building at my High School....

I am also experimenting with other Remote Desktop Protocol (RDP) apps such as SplashTop. I'm using Splashtop2 for Droid and SplashtopStreamer for Windows. 

I'm focusing on Teamviewer and Splashtop as these Desktop streamers are available for both Windows and Linux and the client app is available for Droid. I usually have to use Windows whenever I'm on the road, say at a conference. However, I usually use Linux all day every day at the High School. Further, all my tablets are now Droids!

Week 3: Adventures of a Droid Tablet
This week I tried the following setup instead. Note, Screencast-o-matic takes a long time to render MP4s (ie: 75 min video takes about 45 min):
(1) USB Mic
(2) WiFi DROID 8.9" Tablet
(3) Virtual TI-83
(4) Xournal Pen Windows App
(6) SplashTop DroidApp/WindowsStreamer
Adding SplashTop to the mix went very smoothly. I find SplashTop more responsive than Teamviewer. Teamviewer has two advantages over Splashtop, however. First, the streamer can run from RAM so you don't have to have admin rights to install it if you're on the road using someone else's PC. Also, using Teamviewer for non-commercial applications is always free. 

SplashTop, on the other hand, had to be installed by the admin. Further, Splashtop requires a $16.99 per year subscription unless both your Tablet and PC are using the same wireless router! Still, I found using a capacitive stylus much easier when using SplashTop in non-trackpad plus smooth mode. Using the stylus takes some getting used to, but there's always a learning curve with any new technology solution. Right now, my Droid is on a WiFi router and my PC is on a wired Ethernet LAN. If both devices were on the same WiFi router, then I think SplashTop would be even more responsive!

Week 4: Adventures of a Droid Tablet
The only thing new this week is my using my finger as the stylus! Actually, the finger works even better than using a capacitive stylus. Before I tried all this, I read everywhere that you need to use a stylus to get the best results, I beg to differ. The stylus worked great on the Wacom Tablet, for instance. 
Also, it seems that the Kindle Fire HD does have BlueTooth, but it's a bit limited. BlueTooth connectivity is limited to input from a headset mic or wireless keyboard and output to external speakers or headphones or car stereo. So, using the Kindle's mic remotely over BlueTooth to record my voice on a PC for a screencast is not in the cards. BTW, I think you can also add an external mouse via BlueTooth or USB.

Week 5: Adventures of a Droid Tablet  
I did everything the same way this week as last. Everyday I'd start by hooking up my USB Memory Stick (to backup my screencast and smartnotes at the end of class) and USB Mic. Then I'd start up Xournal and VTI from my Documents folder. Then I'd start up SplashTop Streamer on the PC and SplashTop2 App on the Kindle. Then I'd play a Youtube or go over the homework for about 45 minutes. Then I'd start up Screencast-o-matic to record new material for about 45-90 minutes. Then I'd do some practice problems from the new homework page while the video rendered. 
After class, I'd upload the mp4 to YouTube and the pdf to slideshare, link these files to edmodo and back them up to my USB drive.

Observations: Adventures of a Droid Tablet 
What's nice about the Droid Tablet (Kindle Fire HD 8.9") is that it's more compact than the laptop and I can see what I write right on its screen unlike the Wacom Tablet!  

I like Xournal since it exports to PDF format directly. Say goodbye to Windows Journal!

The Teamviewer App is very easy to use and connects my Droid to the PC Desktop via RDP over WiFi instead of BlueTooth.

I played with TeamViewer for Meetings's Streamer and App combination. It adds VOIP and Whiteboard mode for free. However, I had a lot of audio feedback using VOIP. I think the problem is that TeamViewer for Meetings does the exact opposite as compared to Teamviewer. Teamviewer allows you to control a PC desktop from a mobile device. Teamviewer for Meetings lets you control several mobile devices from the PC desktop thereby conducting a virtual meeting where several coworkers can connect to the meeting from their tablets or cell phones. The people using mobile devices cannot affect the presentation, but they can hear the presenter via VOIP and the can participate via VOIP. So, when I had the tablet near the PC running Teamviewer for Meetings, I inadvertently setup an audio feedback loop! 

Plain vanilla TeamViewer is still a nice solution if you want to run the Streamer from RAM and you don't want to pay a subscription fee for remote access over the internet.

Teamviewer is very easy to setup and I can set the resolution of the Droid to match that of the PC so I can use the full screen on both devices. However, Splashtop is more responsive when using a capacitive stylus to write notes on Xournal.

There are several Splashtop Droid Apps. Another one, which costs $8.99, is Splashtop Whiteboard. This gives you all the bells and whistles of a SmartNotebook without using SmartNotebook. I think that Splashtop Whiteboard is to the Droid as Doceri is to the iPad. Also, I wouldn't need Xournal if I used this version of SplashTop.

What's interesting about SplashTop is that it's not meant to be used the way I am using it! I'm using SplashTop2. SplashTop WhiteBoard is a relatively new addition. Also, there's SplashTop X Window which gives you a second desktop to extend the size of the display for your PC. There's even SplashTop HD for viewing movies and and playing video games in high resolution remotely from your desktop to your tablet. Not all these apps are free! There's Streamers for Windows, Mac and Linux (beta). Also, there's apps for iOS and anDroid. That's 6 different configurations available to you! 

Beware, Splashtop is only free if both the PC and the mobile device are on the same local WiFi router. Otherwise, I think you need to pay a subscription fee of $16.99 per year or $1.99 per month. Luckily, I have a free account from the college. 

So, if you look at SplashTop marketing and reviews on YouTube, you will see that people are using this setup to watch flash videos on iPads (flash is not available on iPad) or to use productivity apps such as Windows Office on a Droid Tablet (there's no office apps on iOS or anDroid). That's all well and good, but I need to screencast and whiteboard!

BTW, SplashTop recently renamed the app as SplashTop Personal. Now you don't need all the different apps such as SplashTop2, SplashTop HD, SplashTop X Window or SplashTop WhiteBoard. All that functionality is in SplashTop Personal. However, you still have to pay $1.99 per month for remote access over the internet and $1.99 more per month if you want the features of a WhiteBoard app. Now you can choose from SplashTop Personal, SplashTop Business or SplashTop Enterprise! What an embarrassment of riches to choose from!

Conclusions: Adventures of a Droid Tablet
I will use a similar setup in Linux when I go back to my home school:
(1) USB Mic
(2) WiFi DROID 8.9" Tablet
(3) Virtual TI-83 or SAGE
(4) Xournal Pen Windows App
(6) SplashTop DroidApp/LinuxStreamer

I may try a BlueTooth Mic or some sort of VOIP solution that lets me use the Droid's Mic. At present, this does not seem to be an option in SplashTop. SplashTop sends the PC's video and audio output to the Droid and the Droid's Mouse (stylus) and Keyboard output to the PC. I hope they will add an option to reverse the audio in the near future? If I use SplashTop Whiteboard, I could get rid of Xournal too. Also, I use a desktop screencaster in Linux called avconv that renders in realtime so I don't have to waste time rendering after class. So, my Linux setup would be much simpler:
(1) Tablet (remote Mouse, Keyboard and Mic)
(2) Virtual TI-83 or SAGE
(3) avconv screencaster
(4) SplashTop DroidApp/LinuxStreamer

Using a BlueTooth Keyboard and USB Mouse may be an option when using productivity apps remotely via Splashtop. With this setup, I can use the tablet as a full-fledged laptop! If I had my druthers, I'd use a Lenovo IdeaPad 13" Yoga which is a laptop when you want it and a 13" tablet when you don't! However, the Kindle's price point is unresistible! BTW, there's an onscreen keyboard on the Droid, but it takes a lot of screen space.

Stay tuned this Fall, when I teach preCalculus starting from the back of the book with Sequences and Series! Also, I won't use a Graphing Calculator anymore. I with by programming in Python on an online Computer Algebra System (CAS) such as SAGE! ... and don't forget to follow the new paradigm: "Bring Your Own Device" (BYOD) to work!

Finally, did I mention that no SmartTech hardware or software was harmed used during the production of this blog?

A. Jorge Garcia
Applied Math, Physics and CS
Teaching with Technology, 
pastebin youtube slideshare 
mathforum apcommunity
sage ebay