Archive for March, 2006

Runtime Static vs Dynamic Linking

Thursday, March 16th, 2006

So, I use Boost libraries in a Windows unmanaged C++ project.

If I use Dynamic linking and redistribute the executable to another windows system, I would have to provide the Boost dll and lib (import library) files. Either in the same zipped up directory or installed to %PATH%, e.g. system32, using an installer program.

Refer to explanation in Safari in:
C++ Cookbook

Recipe 1.23. Specifying a Runtime Library Variant

Suggestions for Comp Sci at SFSU

Tuesday, March 14th, 2006

Resources:

- Safari online book subscriptions for all students. Hands down the single best, cheapest resource for a comp sci student. Wish I had it. http://safari.oreilly.com

- Subversion Versioning System: Should be available for every project a student and/or team every does.

- Printing: Automate printing of projects from Subversion to the given teachers inbox. Printing is expensive and/or broken in most locations on campus.

- Cheating:  Create or use programs to detect cheating by scanning the subversion system.
-Classes

Enterprise Computing

Learn what you need to know to write scalable applications

Become familiar with some existing Enterprise Apps and Tools. (Oracle, EJB, )

Software Archictecture

Glaring hole in the CS program. Cannot believe it is not offered

Design Patterns

This doesn’t have to be an entire class, but it should make up half of a course easily

Unit Testing/Test First Development

It takes more than lip service to make this happen. Especially for group projects. Force projects to use this from the intro class on up.
-Concepts

Code reviews. This technique would be invaluable to improving students code. Let better students mentor the students in their teams/groups. Should begin immediately in the very first course, and be in effect for every single course that involves group projects. I also think the teacher should anonymously review student projects in every single course.

–  Hardware Architecture Requirement:

Reduce from 9 hours to 6 hours. Hands down, the biggest waste of my time. I use a little of it, but that did not require it to be the single largest core competency of the gradate program. It’s a hold over from days before Comptuer Engineering became a field, and it needs to be changed to make room for smarter courses. See ‘Lack of Software Architecture Course’ above.

–More to come…

TortoiseSVN Tips (including how to skip typing your password a million times)

Tuesday, March 7th, 2006

Here’s the format for the address at SFSU (San Francisco State University). You cannot use the ~username shortcut, like you can in Apache. It must be the full path.
svn+ssh://ed@thecity.sfsu.edu/home/student/ed/projects/svn/hivm

You must use the svn + ssh combo. Just svn or just http will not work.
Also, here’s how you put the password into TortoiseSVN so it doesn’t ask you for it 3 times per update. (thus making you never want to check in). Unfortunately, this isn’t a flexible solution if you login to different SVN servers.

Settings > Network > SSH Client:
C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe -pw mypassword