Hardware Canada Computing

150 Isabella, Suite 1000

Ottawa, Ontario

Canada K1S 1V7

Ryan's Guide to Happy Co-op Students

Written By:

Ryan Gammon

2A Computer Engineering

University of Waterloo

ID: 97340768

Written For:

Andrew Mileski

Hardware Canada Computing

Written Using:

WordPerfect 8 for Netwinder/Intel

(It works, sort of)

Date:

Sunday April 25, 1999

Executive Summary

My work term experience was filled with its ups and downs, as can be said about most experiences. When it comes down to giving a final rating, however, I've chosen "Excellent" for Andrew, and "Good" for Woody (on the Waterloo scale of Outstanding to Not Satisfactory.) Weighing in on the positive side are the various technologies which I was motivated to learn, and the ability to make a living off linux for a term. The negative side belongs to the CyberPro 2000 and its abysmal documentation, the relative isolation of the first few months, and the quirky rpm.

From my experiences, I've been able to draw several recommendations. Co-op students involved in development should not be placed in the marketing section, but instead closer to engineering. In addition, co-ops should be used as a pooled resource, instead of belonging to any one developer. A reworking of the initial co-op training is also in order.

There are other possibilities worth considering. For instance, free pop is fairly standard co-op bait. A better introduction to the company, its direction, and a sort of "who does what" overview would also have been handy. Finally, those supervising co-op students should look more closely into using co-op students in more team oriented situations.

Table of Contents

Executive Summary	ii

Table of Contents	iii

Introduction	1

1.1: Expectations of the student: The company	2

1.2: Expectations of the student: The supervisor	4

2.1: Expectations of Waterloo	7

3.1: Expectations of the Supervisor:	8

Conclusion	10

Appendix A: Request for Advertisers	11

Introduction

In this mini-report I take a quick look at the expectations and goals of a co-op student, the expectations of Waterloo, and the expectations of the supervisor. I then look at the way things currently stand, and make some possible suggestions to the way they could be improved.

(The format of this report is a little less formal than that of a Waterloo work report, since much of the subject matter deals with my personal experiences. If this is a problem, s/I/the author/g, and there you are!)

1.1: Expectations of the student: The company

Going into interviews, the average Computer Engineering/Science student has several sets of priorities going through his or her mind. First and foremost, get a job. Following this, avoid monkey-work jobs – things like administering Novell networks, tech support, or some of the lesser sorts of web design. With these requirements taken care of, a hazier set of conditions come into effect. The common ones are the "coolness" of the company, the training that the job provides, the location, the salary, and the reputation. The order of these depends highly on the individual applying, and indeed this list is by no means comprehensive.

(Netwinder WordPerfect segfaults here. Par for the course, from my windows experience)

So where does Corel Computer/Hardware Canada Computing fit into these desired characteristics? My experiences here have been positive as far as the quality of the assigned work goes. I've been fortunate to have mostly programming assignments, and this has given me broad experiences with various aspects of linux. I've been able to either learn or refresh my knowledge in vga registers, kernel module programming, ncurses, job control, qt, bsd sockets, flex, bison, perl, C, C++, and gdbm database programming, Add bits of Java, gtk, and Corba stuff I picked up on my own time, and this term has given me a good foundation in unix development for the resume. This is especially exciting given the progress linux seems to have made in the corporate world over the past four months.

Of slightly less interest was the work that went into making rpm's compile. This is monotonous work, but then such activities are one of the typical uses of co-op students. Par for the course, one might say.

As far as "coolness" goes, the vote is split. The Netwinder gets top marks. It's got more gadgets than my intel box, it costs less, it's as cute as a button, and it runs linux. It's made the cover of Linux Journal, and had the high visibility of the Corel name. Needless to say, this job has made me the envy of all my linux friends back home.

Also cool is the engineering environment. Though I didn't really get to know anyone other than Doug during term, I am impressed by the range of talent that the Netwinder team has going for it.

On the negative side, there is a lack of some of the standard goodies. There're no big screen tv's, free pop, or Nortel-style co-op cults which mark some other Ottawa companies. The change-over to HCC has also done little to excite me. The new culture seems to involve more hype, more suits, and less of the novel development which tends to attract co-op students. I've been a little out of the loop, however, so it's difficult to make an accurate judgment.

(Netwinder WordPerfect runs out of memory, and goes into an infinite loop twice trying to copy and paste. I've retyped the last two paragraphs enough, so I'm switching to wp for Linux/Intel. Lets see how this goes...)

1.2: Expectations of the student: The supervisor

To take things down a notch, from the macroscopic to the more microscopic: What is expected of the supervisor by the student, and how do I rate my term rate here?

Traditional supervisor reviews focus on things like ethical treatment, ability to motivate, quality of feedback provided, leadership shown, ability to coordinate, etc, etc, etc. To rate on these characteristics, Andrew gets a good, and Woody gets a satisfactory. Feedback wasn't terribly useful, leadership was pretty loose, and the main source of motivation was more the nature of the work than the type of supervision.

Personally speaking, however, these general characteristics don't define the perfect supervisor for every situation. Co-op jobs, in particular, don't tend to be critical to the profitability and survival of the company, which makes an ultra- supervisor model an inappropriate use of resources. In addition, co-op supervisors generally aren't full-time management, but engineers, and thus don't fit into the management mold. These factors shift the expectations imposed anyone involved in managing students.

From a co-op supervisor, I expect scaled down supervision. Feedback should be provided in cases where things are not progressing as they should be, but otherwise is not expected. Management style tends to be relaxed. Leadership should informal due to the small groups involved. Looking at my supervision in this light, I can't come up with any big short-comings, and thus I'd bump Andrew up to excellent, and Woody to a good. Sure, Andrew didn't say how well I build foo.rpm, but it would be silly to do otherwise, and a general waste of time.

Various things were done well. In particular, there was no one on the team who seemed unapproachable. I was also pleasantly surprised with the degree of freedom provided in the development I did this term -- hopefully I came up with reasonable designs. Finally, Andrew's criticisms of rpmbuild were relevant and useful. A good job here was done in this department. Next time I design a protocol, I'll be sure to give it a bit more thought!

I can, however, come up with some areas where improvements can be made. My issue with Woody is the fact that he more or less left me to fight with the CyberPro tv registers with only basic kernel module hacking under my belt, and with a buggy chip with significant, necessary information missing (the register definitions for the wrong version of the chip didn't help much...) When it became evident that progress was extremely slow, I should have either been given a new assignment, additional help, or access to someone at IGS.

In a similar "assignment" vein, it's always nice to have three to four things on the go at once. This provides some room to jump around when things get boring, and was probably the best part of my first co-op term at Corel. This term, I never made it above two different jobs at the same time. I bugged Woody, in particular, about this, but nothing much came of it, which was unfortunate. The best way to solve this problem is to share co-op students with all the developers, ensuring that there's always a variety of available work to be done. It would also help if co-ops are located in the engineering section, as this makes project coordination easier.

Another suggestion is to rework the initial "this is how you log in" training session. Everyone would do better with an introduction to HCC's upcoming product line and current strategy. Also, an introduction to the members of the Netwinder team and their projects would have really clarified things. For those unfamiliar with linux, the training program needs some beefing up. Hitting the high points of the dos to linux howto would be a start, since everyone knows dos (well, almost everyone). It would also help newbies to have access to a list of resources to skim through – pointers to howto's, dejanews, (slashdot), and so on.

Finally, my friends ridicule me for not having access to perks like free pop. Free pop is really a cheap way to buy morale, and it wouldn't hurt to give it a try.

2.1: Expectations of Waterloo

First and foremost, Waterloo wants to maintain its reputation, and wants companies who've hired co-op students to hire more. This much has been accomplished – Andrew, at least, is willing to keep a few students around for building rpm's and other miscellaneous tasks.

Secondly, based on the student evaluation forms, Waterloo expects an outstanding co-op to become a major team contributor in ideas and leadership. In these areas, my opportunities were a little limited, though I contributed where invited.

In addition, Waterloo wants its students to be presented with a constant stream of new concepts and ideas. In this area, my supervisors have done considerably better. As mentioned previously, I've learned a great deal.

With these factors taken into account, I feel that it could be argued that Waterloo would rate Andrew and Woody at around the same level as I would: excellent and good respectively. The only problem here was the lack of opportunity to show much in the way of leadership, which is understandable. To correct this, co-ops should be used more in team situations for complex tasks. This puts more knowledge to work on a given problem, meaning that it will be finished sooner and better. It also builds that management-coveted sense of "team work" that's been all the rage in recent times.

3.1: Expectations of the Supervisor:

This is perhaps the most important rating of all. How does a supervisor determine whether or not his supervision has allowed him to get the most out of the co-op term? Several variables come into play in this decision.

In the ideal situation, the supervisor is able to maximize the work done by his underlings, while sacrificing as little of his own time as possible. The sort of work that the supervisor is able to assign is also a factor. The more that trivial or time-consuming work can be delegated, the more productive the supervisor can be with his own work.

In addition to this, it is a goal of the supervisor to encourage a student to return for a second term. This goes a long way toward minimizing future training time.

Rating on these criteria, both supervisors have done fairly well. Neither Woody nor Andrew has sacrificed a large amount of time, and both Doug and I produced a good flow of output. As far as encouraging co-ops to return, Woody came though during the Corel changeover, allowing us to return, and Andrew has stated that he's willing to have us back. Indeed, Doug is quite willing to come back. I'm being non-committal until I have a better idea where things are going. Corel's wacky linux plans (Debian?), and HCC's stripping down of the Netwinder makes me nervous. Still, this is not really something that is under the control at the engineering level, and thus does not factor into evaluations. Therefore, both Woody and Andrew get an excellent.

Conclusion

Working conditions for co-op students are already good, and a free Netwinder can pull a red blooded Waterloo student through any sort of term. Still, if the reader's a perfectionist, there're a couple of small improvements that can be made.

For instance, a change in the organization of the co-op students would help. This includes ensuring that engineering students are located in the engineering department, and officially opening up the co-op pool to all developers. A new training program should also be developed, with the focus on finding information, and the direction of HCC.

Finally, a few perks tend to lure students. I've made out extraordinarily well with the free Netwinder, but since this is not typical, things like free pop pay for themselves in increased morale. Plus, those doughnuts on Fridays always made my week.

In any case, these are all nit-picking things. All told, it's been a great term. Thanks, guys!

(WordPerfect on Linux/Intel's holding up pretty impressively. It hasn't crashed yet. The Netwinder version running remotely needs a bit of work...)

Appendix A: Request for Advertisers

(If you want to go trolling for co-ops)

Hi [employer], (HCC)

The editor of our student newspaper forwarded me this letter and asked me

to send it to you. It sounds like a good idea. Just wondering if you were

interested.

>Dear [recipient], (Andrew)

>

>The Iron Warrior is the University of Waterloo's engineering student

>newspaper. It's distributed free of charge to students and faculty

>five times a term (May 21, June 4, June 18, July 9, July 23) and

>focuses on events and opinions related to the engineering program at

>our university.

>

>The Iron Warrior is an easy, economical way to get the attention of

>Waterloo grads and co-op students.

>

>The paper is put together by a volunteer staff and the advertising

>rates are low:

> 1/8 Page $60

> 1/4 Page $90

> 1/3 Page $120

> 1/2 Page $150

> Full page $250

>

>There's a 20% discount available, if you'd like to advertise in all 5 issues.

>We can produce your ad from a hardcopy, a fax (received in an enlarged

>format), or from a black and white TIF file sent by email (150 dpi or

better).

>

>We can also produce customize advertisements mentioning co-op or full

>time positions available at your company.

>

>Cheques can be made payable to: University of Waterloo Engineering

>Society. For more information, or to place an ad, please write

>to itien@engmail.uwaterloo.ca.

>

>If you would like your advertisement to appear in all five editions,

>we need to receive your artwork and copy by Thursday May 13.

>

>To see an on-line edition of our paper, please visit

>http://www.eng.uwaterloo.ca/groups/iwarrior/.

>

>Thanks very much,

>

>Ian Tien

>Editor-In-Chief

>IRON WARRIOR

>Spring 1999

>