Saturday, April 28, 2007

Flex Lecture and Yahoo! Wikisearch

Here's what we've covered over the last 3 weeks.

Flex Lecture PPT

Yahoo! Wiki-search Widget

The flex code we did in class:

Google Employees Example (UI Components and XML data)
Dealing with external service
Mashup Paul and I made...code isn't so clean

To get started in Flex, I would reccomend using Flex Builder. You can get all the info here: Download Flex SDK, Builder, etc.... There's also some good tutorials here: Getting started with Flex

One cool website we showed you guys was ProgrammableWeb which lists API's and cool mashups that others have done.

If you want to know some good JavScript or Flex online resources and/or books, let me know, and I'll post some stuff I use.

Tuesday, April 10, 2007

Javascript Libraries Part 2

Sorry I didn't post this earlier but here it is. This is the second half of the lecture on Javascript libraries.

Lecture PPT

The libraries we covered today were:

Open Laszlo
Google Web Toolkit

The second two have extensive examples so I only did an example for Dojo:

Dojo Fisheye

Next few classes

4/11: This week, we're going to move into Flex.

4/18: Despite the fact that next week is right before carnival starts, we are still having class, and because we have a guest lecturer from Yahoo, we are counting next weeks class as 2 classes and hoping everyone comes. Also bring laptops so you can follow along.

4/25: After that, we'll move back into Flex.

5/2: Then, our last class, will be a wrap-up (we might also brush over security), where we present some of the projects that have been completed and announce the winner. We'll also have a pizza party for the class this day.

Wednesday, March 28, 2007

Project Information

Here is the information about the project that we covered in class today. The deadline for the project will be near the end of the semester. The deadline for the proposal is next Thursday April 5, 2007:

1. Team members' names
2. Short description of the project (couple of sentences)
3. Technologies used (HTML, CSS, etc.)
4. Why is it relevant? Why is it Web 2.0?

Deadline for proposal: April 5, 2007

Send an email to and

Javascript Libraries Part 1

Here is this information about the JavaScript libraries. I won't post the lecture yet because we have only done the first part, but its not that complicated.

Libraries covered today:

Yahoo UI

I have also uploaded the examples files we covered in class today. They should work but let me know if they don't.

Old Autocomplete, Corresponding Data File
YUI Autocomplete
YUI Menu
Prototype Examples Drag/Drop

Wednesday, March 21, 2007

Lecture 6,7,8: JavaScript

Been a while since we posted. This lecture covers a lot, from basic JavaScript to DOM to dHTML to Advanced JavaScript with prototype-inheritance and function closures and finally to AJAX.

Lecture PPT

We also went over some examples. I've posted those here:

Table Row Highlighter
Move Element
Drag'n Drop

Sunday, February 25, 2007

Lecture 4/5: Ruby on Rails

Here's lecture 4/5 on Ruby on Rails

Lecture 4/5 (PPT | Code)

Sorry if the code example was a little boring, but important points to take away are that Ruby is a really cool language, and Rails is a great framework that makes a lot of the typical stuff (form abstract, no SQL, database relationships, etc...) much simpler.

Websites mentioned were:
As we start covering JavaScript and DHTML, I recommend you guys fool around creating a basic website and manipulating some CSS styles.

Wednesday, February 21, 2007

Hurray...Class tomorrow

So we're back on schedule. There's class tomorrow (in PH A18A). There's a cool video and website I want to show you guys, and we'll finish up Ruby on Rails with our example joke website.

Wednesday, February 14, 2007

Adobe Flex Internship

My future boss at Adobe wants to start recruiting at CMU (as do I). We'll definitely be back next year with more of a plan, but if you would like to intern at Adobe, specifically the Flex team, let me know and shoot me an email with your resume.

No class today

Because of the weather and some laziness, we've decided to delay Rails part II and cancel class today.

Friday, February 2, 2007

Class in PH A18

Just as a reminder, the next class on 2/7/2007 will be in PH A18 and will be on Ruby on Rails

Lecture 3 Resources

Here are some resources relating to the CSS lecture.

Some References:

These links have information regarding CSS and how to use it.

CSS Standards:

As with HTML, the CSS standards are not always adhered to. This allows for many "hacks" to get around browser compatibility. These are some links that explain what will work and where.

Lecture 3

This is Lecture 3, which is the lecture on CSS. It basically lists a bunch of different property values, but if you weren't in class then you probably didn't hear me go over the important ones. There will be some resources posted that has a link to a CSS reference page, that you can go to if you want to know what a specific property does.

Lecture 3 (PPT)

We also played some Jeopardy and here is the powerpoint for that as well.

Jeopardy (PPT)

Wednesday, January 31, 2007

Good Blogs

Here's a really good blog post by Bruce Eckel (famous for writing Thinking in C/Thinking in Java series) talking about how the web environment is different (and perhaps a biased view of Adobe Flex):

Some blogs that are updated quite frequently that I read are:
- ReadWriteWeb often times has some really insightful comments about the new web - Ryan Stewart talks about Rich Internet Applications and technologies emerging out of it. He's a little biased and doesn't believe in the AJAX as an Rich Internet Application tool - TechCrunch keeps up-to date with news items about companies forming or new products coming out. It's usually not too insightful but still very good to keep up with

Hopefully at some point, I'll post a list of all the blogs I read, but this will be good start for now. I really recommend getting an RSS read and subscribing to these places (you can even subscribe to this blog!).

If you have some good blogs or news sites, post it in the comments.


Friday, January 26, 2007

Updates as of 1/26

I let people in off the waitlist who've been coming to class. If you're still on the waitlist and want to get into the course, please let me know. Also, if you are not planning on attending class, please drop it, so we can have a better idea of how many people we can expect and let others off the waitlist who want to get in.

Next week we are planning on covering CSS (Cascading Style Sheets).

Please note that we will be in DH1112 again this Wednesday 1/31 6:30-7:50 (this will be the last time).

Lecture 2

Here's lecture 2. Topics covered were HTML (yes, a little boring) and HTTP Requests.

Lecture 2 (PPT)

Siva did a really neat demo of how you can just telnet into a webserver and request documents. Just try something, like:

telnet 80

Siva also mentioned a cool firefox extension called firebug (you can get it here: Firebug). The newest version, 1.0, just came out on 1/24/07. To monitor traffic, open up firebug (tools->firebug->open firebug). Then select the net subheader. Now you can monitor traffic on the site you are looking at.

Siva also began a demo for the Carnegie Mellon Delivery Service (CMDS), and the current progress for that page is here: CMDS. We will be using this throughout the course and updates will be posted accordingly. To look at the code, right click in the browser and do view source.

Good websites for help and further info:

Lecture 1 Resources

Here are some of the resources mentioned in lecture 1 as well as some other useful ones.

Defining Terms:
What is Web 2.0, Tim O'Reilly
Wikipedia: Web 2.0
Wikipedia: Rich Internet Applications

Popular/Cool Web 2.0 Sites:
Flickr - Photo Sharing Website - Sharing Bookmarks
Zimbra - Open Source email application/Collaboration Suite
The ESP Game - Really fun game, harnessing the collective intelligence of the people. Made by a professor at CMU. - More complete list of Web 2.0 sites

Good Books to Read about the "Revolution":
The World Is Flat, Thomas Friedman
The Long Tail: Why the Future of Business is Selling Less of More, Chris Anderson (abridged Wired Article)

Some Good Web Development Sites:
JavaScript Kit

Lecture 1

Here's lecture 1. It helps define what the course is and what topics we will go over. It also attempts to define the very ambiguous term, Web 2.0.

Lecture 1 (PPT)