Goritaboon Sunsang Talk @ UWGB CS

Goritaboon Sunsang Talk @ UWGB CS

My job—teaching, research, advising, students, colleagues, university, and everything else

Goritaboon Sunsang Talk @ UWGB CS RSS Feed
 
 
 
 

Bye bye landline~~ Hello VoIP~~

Thanks to Google Voice and VoIP service with Gizmo Project, I’m officially without a landline phone service at my work. I’ll post more updates later, but for now, please forget my old number (920)465-2201, but use my new number (920)403-0326, which is my Google Voice number and will ring my analog telephone(s) in my office, iPod Touch anywhere where there’s an available WiFi. More to come later.

Windows 7 Professional

This semester’s blogging starts with a post about Windows 7 Professional which is already available for download from our MSDN-AA site. Note that it’s neither a beta nor an RC (Release Candidate). The public release is still a few weeks away, so this is definitely a great perk for any COMP SCI course taker.

I installed it on a 4-year old Gateway laptop with 1.5GHz Pentium-M, 512MB main memory, and on a 35GB hard disk partition (I found that Windows 7 installation showed some sort of boot partition just like Linux). By the way, this posting is being made on that very Windows 7 Professional installed machine. Even on such an old machine with just 0.5GB main memory, the OS works pretty well. This machine right now is loaded with the OS, OpenOffice, and Firefox. Compared to my bad experience with Vista, it’s a lot better.

desktop

firefox

openoffice

During and after the installation, all the device drivers were properly installed, so I didn’t have to install any device drivers myself, which is a huge plus compared to XP and seemingly works better than Vista. Currently so far, I downloaded/installed OpenOffice and Firefox, and they work very well. I should try something else like Eclipse and many others.

Just like Vista, Windows 7 is tablet-enabled. I plugged in a Wacom Bamboo USB tablet to this machine and it works flawlessly without any further device driver installation. Hand writing recognition works very fine even on this old small memory machine.

tablet

Keep in mind that Windows 7 comes with Internet Explorer 8, which is known to have some issues with D2L, the course management system that UW uses. Other than that, it seems pretty solid and maybe next summer it’ll be deployed campus-wide.

Drupal Camp Wisconsin and Google Wave

Last Friday and Saturday (6/5~6/6), I attended the Drupal Camp Wisconsin in Madison. Drupal is one of the most widely used CMSs (Content Management Systems) with great flexibility and extensibility. The interest stemmed from my former colleague Bruce LaPlante’s effort on trial to build the web site for our university’s newspaper using a CMS, in Fall 2007. We’ve been planning to integrate this important aspect of Internet technology in our education and research. As popular and easy as they can be or be claimed, they can also be somewhat confusing to learn as a beginner. I think I shouldn’t say I’m a beginner in this, but I am really and I reaffirmed that after the camp. There were quite many sessions for beginners and I attended most of them, but I realized that I wasn’t even a beginner. Because Drupal is so flexible and extensible, the core vanilla Drupal installation (which is very easy to install) is fairly (or too much) limited. I had to figure that out by feeling puzzled with all the more seemingly advanced discussions going on in the beginner track. Feeling frustrated, I had to study those really really basic things myself concurrently in the sessions. And after a while, some of those beginner sessions came to make more sense. Strangely enough, the last session about the theming using CSS hack was most understandable. CMS people claim that web sites can be built without knowing and coding HTML, CSS, PHP, and so on, but it may be true only when there are so many available easily configurable diverse themes and modules. I would have preferred if there were a walkthrough site building tutorial like session, a session recommending very-basic-and-indispensible-but-not-included-in-default-installation modules, a session recommending various themes for various layouts and so on, and something like that, in the camp. However, overall the camp was a great learning experience, not only just about the Drupal topics, but also about how the Internet publishing will be like in the very near future.

About a week or two before the camp, I realized that our program’s web site needs some serious renovation, with better content management. There was an email discussion circulating among our program faculty about the internship requirement and I thought such information and content should be managed and available on our web site. I think a CMS like Drupal or Joomla will play an important role in enabling it. So it is my hope now to find a student who’d like to do an independent study (with credits) for building our program’s web site using a CMS. Since there might not be a programming component, it wouldn’t be a COMP SCI independent study. However, such a project will require learning a very important Internet publishing technology and applying it to a real need, so I believe it can be a great INFO SCI independent study or even a capstone project. From a COMP SCI perspective, I’d be happy if I can find someone who can develop a Drupal module which can perform some internal task like authentication with our Active Directory, which will be very similar to the Wordpress’s Active Directory authentication plugin. I may be ignorant, but I couldn’t find a Drupal module supporting Active Directory authentication and our campus is on Active Directory authentication so we need such a module. If a student of ours could do it (and I believe it is possible), it’d be great.

I’d like to thank all the volunteers and participants of the camp. I got the info about the event from the NEWLUG mailing list. The reason why I added Google Wave in the title of this post is that the NEWLUG member who sent out an email about the camp sent another email about Google Wave. It’s a pretty long video (80 minutes), but I took the time and watched it. I have to say the technology and the direction presented there are really really revolutionary and there’ll be great demand about easily usable Drupal modules for Google Wave, I suppose. So anyway, it was a great learning experience from Drupal to Google Wave, thanks to the great members of NEWLUG and I hope to attend the meeting once my babysitting duty on Thursday evenings is over pretty soon. Meanwhile, here’s the Youtube video presenting Google Video. I strongly recommend that any IT person should watch it and remember the direction.

State of Authentication - 2

It’s happening again—dormant for really a long while and then suddenly hyperactive. Anyway, there has been quite much happenings regarding authentication on my blog:

  • OpenID: Fully working, but still no easy icons. Users still need to remember their OpenID URLs.
  • Facebook Connect: Fully working, even coexists well with OpenID authentication. I somehow tried various versions of this plugin and seems like I stumbled upon one which can coexist well with the OpenID plugin. Probably most people can use this method.
  • Active Directory (UWGB.EDU): Now, you can log in to my blog with your UWGB account and password. Just simply enter your email ID without @uwgb.edu as the user name and the password. This is thanks to the Active Directory authentication Wordpress plugin.

In the meantime, I tried RPX Wordpress plugin which provides nice icons for OpenID providers and other non-OpenID providers (like Facebook and MySpace) all together, but for some reason, it didn’t work well. I suspect some version problem and reported it to the author.

For now, I think this is it. So no more spam comments, I hope. I do hope, however, many comments from real visitors like you!

-H.

State of Authentication

It’s been a really long while since my last post. The academic year 2008-2009 is over, so I may be able to write more.

In this post, I’d like to address the issue of authentication for my blog and the related technologies. So far, anyone could leave comments without registration and login, so I’ve been receiving very many spam comments. To rectify this, I changed the blog setting so that only registered and logged on users can leave comments.

This leads to another interesting problem: I don’t want any commenter to wait for my approval for registration. So I wanted to give it a try to allow OpenID authentication. In a previous post, I mentioned that readers can leave comments with their Facebook ID. OpenID is similar but it’s simply more open than Facebook Connect. You might already have an OpenID, like Yahoo, AOL, or Google. The not-so-great part is that the ID is rather complicated URL based. For example, my AOL OpenID is http://openid.aol.com/hosungs. OpenID allows visitors to authenticate themselves without separate/additional registration, but it seems their choice of identifiers is not very good.

Anyway, I wanted to allow both OpenID and Facebook Connect authentication methods, but it seems like the two plugins don’t coexist very well. For example, when I activate OpenID plugin, the Facebook Connect button no longer shows up. I searched a little further and found that there’s an integrated plugin from Gigya, but when I tried it, it wasn’t very stable. That is, after I tried to log on with my OpenID or Facebook ID, it simply hung. It did, however, provide a nice set of icons for various popular authentication providers (like Facebook, Google, AOL, Yahoo, …). The OpenID plugin currently installed doesn’t show such a set of icons for those popular providers, so visitors/commenters need to remember their OpenID identifiers and manually enter them. I wonder how many people would do that…

So, I’ll probably have to search a little further to make this process easier as I hope. I suppose the JanRain framework may be great, but I’m not sure if it’s well integrated with WordPress or if I need to do that job myself. All in all, this will be an interesting starting point for another research project of mine, which I’ll be doing over this summer. Hope to have some meaningful outcome and report the result before the beginning of the next semester. Thanks.

-H.

Various Screencasts (Eclipse Java Debugger, CDT, Qt Installation, Tutorials)

Preparing for the new semester, I created a few screencast videos for various tutorials:

1. Eclipse Java Debugger tutorial (about 60 minutes): Students in COMP SCI 257 Software Design II should start using Eclipse Debugger, and this video explains how to use it, with the syllable counter example in Horstmann’s Chapter 6.

2. Installations of JDK, Eclipse, CDT, MinGW, Qt (about 30 minutes): This video can be useful for students in both Java-based courses and C++-based courses. Intially, it explains how to install Eclipse (JDK first). Software Design students can stop there. Then, it continues on installing C++ development environment on Eclipse. MinGW is used as the compiler and Qt is used for GUI and other programming framework.

3. Eclipse CDT/Qt tutorial (about 75 minutes): After the installation above, students can try to build their first C++ applications (both in command-line interface and in GUI) using Eclipse CDT/Qt. This video explains that. Note that there’s some glitch in debugging demonstration. At the time of recording, I didn’t have a solution. After the recording, I searched the web and found the following solution:

Therefore, when you debug a C++ application with Eclipse CDT/Qt on Windows (this issue is not present on Linux), make sure to configure the debugger as stated in the above link.

http://dev.eclipse.org/newslists/news.eclipse.tools.cdt/msg14140.html

If you have any questions, do not hesitate asking me.

-H.

P.S. For those who don’t like screencast for a simple installation, here’s verbal instruction for step 2:

1. Install Eclipse. If you have already installed it, jump to step 2.

- Install JDK first. The link is https://fpsb.uwgb.edu/compsci/IDEs/Eclipse/
(you need to authenticate yourself with your UWGB email address and password)
and click jdk-... .exe. Save it in your folder (I'll assume C:\download) and execute it.
Follow the default suggestions.

- Install Eclipse. From the same site, click eclipse... .zip. Extract it to C:\
and after the extraction, you should have C:\eclipse filled with Eclipse installation.

2. Install Eclipse CDT (C Development Tools) plugin.

- Start Eclipse: Browse to C:\eclipse and double-click eclipse.exe.
You may want to create a desktop shortcut to this file.

- Install CDT plugin by following: Click Help-Software Updates,
click Available Software tab (assuming Eclipse Ganymede. If your Eclipse is older,
the layout may be slightly different). Expand Ganymede branch. Check "C
and C++ Development" checkbox and click Install. Accept the terms and
default suggestions.

3. Install GNU C/C++ compilers.

- From the site (https://fpsb.uwgb.edu/compsci/IDEs/Eclipse/),
download MinGW-Downloaded.zip and save it in C:\download. Unzip it there.
Browse to C:\download\MinGW-Downloaded.

- Double-click MinGW-... .exe installer. Accept all the default suggestions,
except this: When you are asked to choose what kinds of compilers are
to be installed, make sure to check "C++ compiler" (or "g++ compiler")
checkbox. The default suggestion only includes C compiler, not C++ compiler.

- After the installer is over, you need to install GDB (debugger). It's already
in your C:\download\MinGW-Download\gdb-6... .exe. Double-click it and accept
all the default configurations.

4. Install Qt.

- From the repository site (https://fpsb.uwgb.edu/compsci/IDEs/Eclipse/),
download qt-win-opensource-4.4.3-mingw.exe and run it. Accept all the
default suggestions. You may encounter a dialog indicating a problem with
MinGW installation saying the version mismatch. You can just click Yes and
proceed. We installed a newer version of MinGW and Qt expects an earlier
version of MinGW. The newer version of MinGW works fine with the Qt version.

5. Install Qt-Eclipse integration.

- From the repository site (https://fpsb.uwgb.edu/compsci/IDEs/Eclipse/),
download qt-eclipse-integration-win32-1.4.3.exe and run it. Accept all the
default suggestions.

You are now done, but keep in mind that for C++ development, you may
have to start Eclipse not by double-clicking the Eclipse shortcut created
earlier, but by clicking Start-Programs-Qt Eclipse Integration v.1.4.3
-Start Eclipse by MinGW. You may want to create a desktop shortcut
to this Start menu item.

Couldn’t skip this…

Another interesting article on Slashdot today.

http://entertainment.slashdot.org/article.pl?sid=09/01/15/158216

You may find the comments more interesting, but there areĀ  a lot.

-H.

Facebook Connect: Leave comments with your Facebook identity

I’m trying to test Facebook Connect on my blog. This lets readers to leave comments with their Facebook accounts. I will try to leave a comment myself using my Facebook account.

-H.

P.S. Facebook Connect is a lot more than just leaving blog comments with commenter’s Facebook identity.

Why Don’t We Read So Well on Screen

An interesting article about the title, delivered today through ACM Technews:

Click here.

I’m in a bit sorry that I suggested e-book options in my courses this semester, but I also think we can’t ignore the economy factor… I’ll probably not recommend e-book options in my future courses. That’s not entirely due to this article, but also due mainly to some feedback I heard. Thanks for sharing.

-H.

Interesting articles from Slashdot about CS education

Today, two articles from Slashdot caught my eyes:

Best Paradigm For a First Programming Course?

Bjarne Stroustrup On Educating Software Developers

What do you think?

-H.