Professional Development

In a sweeping move of policy, the priority of our professional development has taken three T-Rex sized footsteps forward.

If in the eventuality that we don’t end up having a staff meeting (for 1 of X reasons) we are to use that time, 930-11am thursday mornings, for professional development.

Public response: Positive.

You ever said “I’ll do that when I get around to it…”. Yeah. Well this lovely new idea allows (nay, requires, nay – empowers) us to utilize time that has already been hacked from our schedules like thick jungle grass cut with a dull machete.

So for all those projects that we’ve been putting off and putting off, and well avoiding or trying to forget (or just putting off) – mostly cuz we have too many ‘fires to put out’ – now we can use some pre-dedicated time to get those done. But now! It doesn’t stop there… we should also being learning new things that many of us don’t feel the freedom to “stop” and take the time to do. Like learning something new (heaven forbid).

Anyway, the 2nd SUPER reason for this is that other people are ALSO free, and so cross-training can happen, as well as learning from folks that know a bunch but are usually to busy/whatever to be able to teach (like Travis). I think this is the best idea yet since the pool table and Joe’s blendmaster Fridays.

Decode( );

Well I feel that I’ve been very accomodating to the technically-impaired (so far as my past blogs are concerned). Time to brake the mold.

I spent the last 2-3 days fighting with the SQL function DECODE();

It’s a jolly old boy with lots o’ potential.

The thing that I love about PL/SQL is that I can use the power and flexiblity of the procedural language (such as control structures [i.e. if, else, end if, for loop …] and compilation) while still having EASY and quick access to the Database.

Now although I can embed SQL & HTML into the PL/SQL (and Javascript into the HTML), the SQL itself has it’s own set of rules. For instance, you can’t say “if this, then that, else if this, then that, else if this, then that, etc….”. So sometimes you have to make really long loopy code or multiple procedures to make up for this limitation.

Well today I have gained some most-excellent experience with the SQL function DECODE(); Decode() is the closest thing we have to ‘if’ logic, so it CAN be very powerful.

Decode looks like this:

DECODE ( [variable],
[possibility #1], ‘return value for #1’,
[possibility #2]’, ‘return value for #2’,
[possibility #3]’, ‘return value for #3’,
[possibility #4]’, ‘return value for #4’,
[default if none of the above is found]
)

Do take care to substitute appropriate values and remove all: [ ] ‘

Nerdy, eh?

Anyway, so the cool thing about this is that we USED to make multiple procedures/duplicate LOTS of code if we wanted to … let’s say … order the results on different stuff (and we use a passed in variable to tell us what).

So, instead of two procedures like:

procedure print1 is
begin
for a in (select * from boots order by color) loop
htp.print(a.boot||’\n’);
end loop;
end print1;

procedure print2 is
begin
for a in (select * from boots order by size) loop
htp.print(a.boot||’\n’);
end loop;
end print2;

… now we can make one procedure:

procedure print (porder varchar2) is
begin
for a in (select * from boots
order by decode(porder,
color, boot_color,
size, boot_size,
price
)
) loop
htp.print(a.boot||’\n’);
end loop;
end print;

[I indented it, but HTML isn’t that smart, so it looks ugly, sorry.]

So, you pass porder into the procedure. It the value is ‘color’, then decode() returns boot_color and the list gets sorted by that. If the value is ‘size’, then book_size is returned and used for the order by. However, if porder is neither color, nor size, then decode() returns price and the data is ordered by that. Clean, reasonably easy, fact.

This is obviously a dumb example because of the many technical issues – however I hope you understand the point. Basically this code gives us the ability to order the same cursor by whatever the heck you want to order by.

I’ve utilized this ability in RW2 (Redwolf v2). On the large reports, you have the ability to sort by firstname, lastname or location (ascending or descending). This ‘dynamic order by’ also allowed me to consolidate 2-5 reporting procedures down to 1 or 2 – thereby simplifying the maintenance of my code, and standardizing the report format(s).

There are some darn tricky things about the decode statement, and you can utilize multiple ordered decode’s for some interesting and useful results. Please come ask if you have questions about DECODE(); It can be used in a WHERE clause and therefore it’s relevance to SQL is hugely increased.

PL/SQL – it’s code! Hurray code!

IT’S DONE!

Stage 1 of the new WOU Online Housing Application is working.

It still needs a bit of tidying up, but all of the functionality is working. That means a lot to me. My deadline for this project is October 1st, and as it is currently Sept 30, I am a very VERY happy guy.

We implemented the anonymous registration but we were getting errors when the system was attempting to email registrants their login info. After many calls to many locations, we finally got a functional, but buggy solution. After a bit of luck (or divine inspiration) we added a line of code that solved everything else.

So, a bit of testing added to some minor changes, gives the University it’s first online Housing Application – and it’ll go live less than 5 days late! That’s progress as far as I’m concerned.

On a side note, I’ve been updating security cameras lately as well. It’s a painful, irritating process (especially when it rains), but things are in much better shape now that I’ve had time to dedicated to them again. NSW (new student week) took so much time to prep for, some things got neglected (such as security cameras).

Well it’s been a succesful week, and thank goodness for that!

Fall Move-In

Anti-climactic.

That’s all I have to say. You build and build something for weeks – even months; you’re all prepared, fully staffed, and things look good.

Then you wait for it like the tide of darkness unleashed by Sauron in the Lord of the Rings. But instead of being overwhelmed by evil hordes and being rescued at the last moment by a great hero (or heros as Aragorn, Legolas and Gimley often traveled together) – the rush never comes. It swells and comes right up to the brim, but never overflows.

It appears that our long hard efforts were all worth it. Students have only been on campus for about 11 days, and already we have more registered devices than at our maximum last year.

Sophos is being complicated here and their, but seems like a dream next the last-years’ High-Maintenance Command Antivirus, installed by the notorius (notoriously irritating) Patchlink. But those days have passed. When you install ANY program on 1000 machines, your bound to find some problems (some are with the software – others with the machines…. most are in fact problems with the machine in my experience).

So, long story short, Sophos seems to be the king, and life is running relatively smoothly compared to where we have been at this time in years’ past. John Rushing has gotten right into the swing of things, and is heading up the Landers Computer Lab portion of Residential Computing with great skill and enthusiasm. He has already made this process go much smoother than usual and I am expecting great things from him.

More to come later on RW2 & the Online Housing Application…

Training

August 2-5, 2005 : CBORD Training in Ithaca, NY

CBORD UGC 2005

I attended a variety of courses/workshops varying in a broad range of topics all centered around the CBORD Housing Management Software.

No certifications received.

I was able to meet the support personnel I work with routinely, face-to-face. This allows me to more closely work with them and get support from them.

With more intricate knowledge of the CBORD system, I was able to come back to WOU with the ability to automate more processes, and streamline some of our existing processes. One of the largest classes was about the WEB API, which we opted not to use in the end. It is a very powerful and flexible interface, but we decided we did not have enough time to both learn and implement the Online Housing Application (use the WEB API) before it’s October 1, 2005 deadline.

I also learned some of the PCS features, and learned to integrate the two systems a little more closely.

In the end, we learned about their ‘packaged’ online housing application which will be rolled out in a basic form October 1, 2005.

—-

June 22-29, 2005 : ResNet Symposium Conference 2005 in Atlanta, GA

2005 ResNet Symposium

I attended a variety of courses/workshops varying in a broad range of topics all centered around Residential Networking Issues (we call ours ResComp – Residential Computing).

No certifications received.

Utilizing the knowledge from this conference, we were able to more effectively plan for Student Move-In (happening now), Student CD creation, Powerpoint Education, and much more.

Much of the Redwolf v2.0 design was inspired by thoughts and systems seen at this conference. Much of the talk of a NetReg system was drawn from this conference. I took a class on becoming a new manager, which has helped me as my position has recently become a supervisory position. I learned other skills and made friendships that I have already utilized to increase our productivity and enhance the services we offer to students.

—-

We have had at least one Third-Party software trainer come, but it was very specific training for that application alone (and little was pertinent for me).

Move-In Day Approacheth

Well ladies & gentleman – we have come to that place. It’s like when you getting married. You plan and plan (and scheme) and plan more and yell and cry and laugh (and maybe giggle), but then when the time comes, you just say “if it ain’t done yet, oh well”. You can only be so prepared – eventually you have to jump off the roof with you woobie tied to you like a parachute and hope to heck you fly.

I think we’ll do slightly better than a 6 year-old with a woobie for a parachute, but you understand the point.

Redwolf is working. It needs some more reports, but what doesn’t?

The lab got mostly ghosted, and is now being prepared for sunday by my staff. Training is tonight, so we’ll be well prepared for Sunday.

The Online Housing Application has 2 weeks of slack (until the 10/1/06) deadline, so I’m feeling confident there too as most of the critical parts are coming together.

I’m still pretty stressed, but that will pass. Last year we sat around on Sunday, because things were smooth. I pray it is that way this year too. It’ll get busy, don’t get me wrong – but we’d like to get most of the students in without too many issues.

Well I have one actually critical thing left to do today (which is sync-ing the HMS & PCS patron DBs), and after that I’ll be feeling much better.

Signing off till after the craziness – Michael

Stay in Bed

Ever have a day where you decide it would have been better had you stayed in bed all day? Today is that day for me. Working hard all day for a small amount of accomplishment, a longer list and more frustration, is not my ideal work environment.

However, this day shall pass. More things got figured out, and with a bit of fresh perspective from tomorrow, it’ll all be OK.

Redwolf2 is coming along. Only 1-2 more seriously technical things to work out. Then the resident registration system has to be finished tomorrow. Another long, hard coding project. Oh well.

Finally, the Housing Application is moving, but still slowly. Good meetings should be good, but this morning’s put me behind and I’m still there.

Like I said, tomorrow will be another day. 🙂

Comings and Goings

Well today we conclude another fine week. Unfortunately for us, next week is the last week before New Student Week (September 18th- …).

With only 5 days of work for John, and 6 for me (as I’ll probably come in on Saturday to make some finishing touches, etc… – we really have to prioritize our projects. The Computer Lab will be finished, and the staff should be tranined and all of that should go well.

Redwolf’s Critical Areas will be done, and are ahead of schedule. We already have 80 registred devices which is a great number. Today we found a switch with a disfunctional blade. John and I probably spent about 5 hours trying to get this guy online, and it turned out to be the switch! Oh well, better to find out now with one guy, instead of later with 8 people. 🙂

The Online Housing Application is, as usual, behind and of considerable debate as to wether or not it will be done by it’s October 1 deadline. I am confident of this – we will have it ‘working’ in some state or another. I may not be 100% pleased (along with others) but at least it will have been launched, and we can build from there.

Well enough yak, back to gettin’ it done.

Online Housing Application – Progress

Today I worked with support for quite a bit, and was able to get the first version of the New Online Housing Application off the ground. It took 3 versions of the pages, as well as multiple configuration changes to finally get everything to connect and sync up.

Interestingly enough, the pages are dynamically built from preferences built in the UI for our Housing Management System. I’m not totally sold on the language they are written in, but I’m feeling confident that they can make them work.

Now that Judicial is up (and hopefully stable – we’ll find out tonight @ training), getting ANYTHING up for the Online App is great news. Many of my other projects are ahead of schedule (miraculous, I know) so I can really focus on this application for the next 3-4 days. After that we’ll do the finishing touches for Move-In and get everyone connected.

Then I’ll have just a couple more days to put the finishing touches on the Online App, and I just pray that it will all work appropriately. May I be greatly blessed in my work and may it not die a flaming death like that one of Bill Gates’ presentations. Bleah.