Professional Development Activities

Monday, November 10, 2008

Code Camp, 8-9 Nov 2008, Foothill College
http://www.siliconvalley-codecamp.com/
This conference is all free, and organized by volunteers. Foothill does what it can to support it, and Microsoft and LinkedIn buy the pizza for lunch. As much as I hate working weekends, this is just too efficient a way to learn for me to pass up.

A couple of Ajax libraries I need to study: extJs and YUI

“JavaScript: The Good Parts” by Douglas Crockford
JavaScript was introduced in 1995. Crockford says that it is not such a bad language, that the DOM API and its lack of standards is what is bad. He mentioned some interesting style issues, always favoring simplicity and bug-avoidance over clever or efficient coding:
- always use ===
- always use {}
- don’t use ++ nor –
- always use break with switch
He also mentioned two things that I need to study:
- lambda is a big benefit of the JavaScript language
- “global variables are the cause of cross site scripting attacks”
- function closure: a function object contains a function and a reference to the environment in which it was created (its context.)

“Easing Into Agile” by Ted Young
Agile is a fairly new process for software development teams. It is described at:
http://agilemanifesto.org/
With agile, you can see every day what you’re working on and what you’re getting done. You write story cards that each represent a small testable feature or feature piece. He has less then 12 people in a team.

“Test Driven Development” by Mathias Brandewinder
TDD is a development methodology. It is compatible with Agile and many other development processes. A very simple concept, it just says do things in this order:

1) write the test that won’t work because you haven’t written the code it is to test yet.
2) write whatever code you need in order to get the test to work.
3) improve the code you wrote in 2), without breaking the test you wrote in 1).

“0 to 60 with Regular Expressions” by Nima Dilmaghani
This was a great primer that made me wish I had a very clear-cut job writing regular expressions all day. Nima’s blog is Nimad.wordpress.com, and it contains a cheat sheet for regular expressions.

A regular expression gets applied to a file of text, and it picks out just the text in the file that “matches” the regular expression. For example, if you are looking for email addresses in web pages, you can write a regular expression that will “match” any email address and apply it to all the web pages that you can find. This is how spammers get our email addresses, and why we should never put email addresses on web pages.

Nima recommended:
- a tool called “Regex Designer.
- one should never mess with regular expressions without some tool.
- that we write the test cases, both pass and fail, before we write the regex.
- your regular expression should always include the most specific target first, the general second.
- your regular expression should include the most common first, so it is more efficient.
- use IgnoreCharacterWhiteSpace

“The Basics of Threading” by Kim Greenlee
Threads are error-prone, since they are so much about timing. They are also expensive, costing many many machine cycles to setup and take down. Therefore, you should only use them when you have to.

Use a debugging tool like Replay Solutions.
Always name your Threads, it will really help in debugging.
Plan your Thread use from the beginning of development.
Measure performance with and without Threads and keep the Threads only if performance improves.
Test your code both with and without the debugger running. This is because the presence of the debugger in memory will affect the Threads.

“UI Design Fundamentals” by Uday Gajender
In UI, you want a balance between information, interaction and visual.
See Kuler.adobe.com for a tool to choose colors.

29 – 31 October 2008, Washington DC
National Science Foundation Principal Investigators’ Conference

This is the fourth year I have attended, it is for the section of the NSF called Advanced Technological Education, which is mostly community college instructors and administrators who do research into new teaching frameworks and methodologies, together with industry representatives who tell us who they need to hire.

The first keynote address was from an astronaut, Captain Robert “Hoot” Gibson, who started his career in a community college. It reminds us that we never know how far our students will go!

The second keynote was from a journalist, Paul Gillin, who wrote “The New Influencers: the Marketers’ Guide to the New Social Media.” Gillian noted that 20% of American journalists were laid off this year, because information is cheap and plentiful. He says search is the new circulation.

My colleague Michael McKeever from Santa Rosa Junior College gave me some good tips on how to use CCC Confer. When conducting a class on CCC Confer, he receives student questions and comment via chat. He also suggested using VOIP for me to talk and for the students to hear.

Other notes I picked up at the conference:
Workforce development drives economic development
I should give students a career pep talk ASAP

Employers say:
-Give me someone who knows how to learn.
-I will take someone with a strong set of soft skills over someone with a strong set of technical skills.

My colleague Louise Yarnall and I led a workshop on “Envisioning what your students can learn through a project-based task.” This was the first time I had presented anything at a conference, so I was pleased to have 16 people attend. Louise had designed a couple of small group activities which worked great. We got lots of good feedback.

This was the debut for our friends in San Francisco who just got a grant for $3million over 4 years for their Mid-Pacific Information and Communications Technologies Center (MPICT). I will probably be presenting a workshop at their winter conference 8-9 January.

I met some community college instructors who have a thriving computer games development program in Raleigh, NC. They have to turn students away because their classes are so full. Their students can get jobs without transferring to university for a four year degree.
http://raleigh-wake.org/games/
They are more than willing to share their curriculum with us, and they gave me a CD with all their materials on it. I have forwarded all their stuff to John Berry, who teaches games development at Foothill.

The talk that covered a topic so much like ours was called “Photon PBL: Assessment of Student Learning in Problem-Based Learning.” They made the point that we need to assess students on 2 scales, the % of contribution that a student makes to the project and the % contribution that a student makes to the team. Someone at the talk mentioned that he had a method for assessing students that involved a spreadsheet quanitifying these two things, as assessed by the instructor and the rest of the team. I did not get that participant’s name, though.
The talk was by Nicholas Massa form Springfield Technical Community College, and Michele Dischino from Central Connecticut State University