Archive for March, 2007

Long walk off a short pier

I was reading The Consumerist today, and saw a couple things of note.

First, Google gives a new meaning to taking a long walk off a short pier. In fact, a 3462 mile walk (see step 18). Courtesy of the Consumerist.

Second, someone at the Consumerist got a copy of the Geek Squad Troubleshooting Manual. When I read that I thought two things: I have less training I need to create now, and most of my staff can go work at Geek Squad.

Shutdown Day… or not

Well, there’s just over 12 hours until the 24 hour “Shutdown Day” begins, and idea promoted by the site http://www.shutdownday.org/. Of course, engadget is attempting a boycott, which is kind of funny.

Personally, I don’t see a point. It’s the weekend, so I technically could, and my wife isn’t working, so we will probably go and take of groceries and everything else that day. However, they are just doing it

…because we were worried about how much time we all spend on computers and how little time is left these days for the other things in life. It has developed into an international event, a global experiment…

Not because they are against some particular issue or event or anything like that; just because they are concerned about all the time we spend on computers. Perhaps if this event was also timed to coincide with “Don’t Watch The Television Day” and “Don’t Go To A Movie Theater Day”, you might have something there. If you could get it to coincide with “Do Something Other Than Sit Around Day” and other such events, you might get somewhere. Technically, one could participate by turning off their computer, after which you could go to bed and when you wake up begin watching the entire extended version of The Lord of the Rings or all the Star Wars movies in order, pausing for meals, and then go to bed. Success!

I thought about it, and it’s not that I’m necessarily addicted to my computer or the Internet, it’s just one of those things I do. I’ve never told my wife that I can’t go for a walk because I’m using the computer, nor done that in regards to other outings, events, or meals. Then again, that could just be that I know where the line is and make sure not to cross it.

At the moment, I probably won’t be home for part most of the day anyway, but I don’t want to take part in either the actual Shutdown Day or the Double Use Day. I may need to check for directions on how to get somewhere, or the time something is open until. It’ unlikely, but I may have to take care of an issue at work via e-mail, or check the location of a particular gathering of my staff. I may also use it to kill time, while waiting for other people to become available before heading somewhere. I have the benefit that I don’t particularly care for television, and I’d rather not sit and watch a movie. I do love reading, as I can control the pace, which may be why I enjoy that and the web, as I can do it at my own pace.

I’m also looking at it as it is “don’t use the web”, but it’s not. That is a key point, as the web is becoming a tool that we use, and saying “don’t use the web” would be the same as saying “don’t use a car” or “don’t use a phone” (cellular or land); some things are just part of our society, and it what does not using it really accomplish anyway? Showing that you can live in a different setting than you’re used to? All that shows is that you are adaptable. Has your quality of life changed? That’s something that can be taken on a per person basis, as it all depends on what you think it means to be human and what you think humans should become. And that, is a totally different discussion.

With that said, I’m not taking part in Shutdown Day, nor am I taking a part against it. If you do, great! If do not, I might see you online… or not.

Blagofaire

Blagofaire

Yeah, that sounds about right; I’m in a balloon right now!

Plausible deniability

This week, something came up at work, and I felt I need to put my opinion out there in a public place without forcing on anyone, such as by e-mail. So here we go.

Plausible deniability is the word of the moment. It’s not the best stance to take on something, but sometimes it is all you have. For example, my employees are college students, so that would but them in the 18 to 23 age bracket, with occasional outliers, which makes them “of age” with regards to voting, serving in the military, and being accountable for their own actions, but still “minors” in regards to their drinking age.

I’m employed at Residential Computing Connection, which is part of the Office of Residence Life at BGSU, and as a result, I’m supposed to make sure that the students on campus abide by the rules and regulations that the university has in place. Fortunately, I’ve never been confronted with an issue such as a fight or other altercation in which, as a member of the university, I need to make sure is resolved, either by contacting campus security or stepping in myself, and with any luck, I never will. If I am ever in a student’s room or walking across campus and witness something, I need to make sure the correct people know about it. While I may sometimes have issues with particular things at BGSU, I have buy-in to the university itself, so it’s what I feel I must do.

This is where the fact that I have student workers comes in. If they happen to be talking about something while at work, while not eavesdropping, I am prone to hear snippets of conversation; it’s just something that happens. The issue is if they happen to say something like “I was in my friend’s dorm room last night…” and the sentence then continues by listing some activity that is in violation of the residential living agreement, or some other federal, state, or local law, I technically must do something about it. While they may have some right about self-incrimination, it puts me in a situation I’d rather not be in. The same thing goes for events that happen off-campus, such as parties. While they may not be violating a residential living agreement, those federal, state, and local laws didn’t stop existing. In fact, their possible to have a harder time off-campus, as there isn’t the benefit of being caught by an RA, but by an officer. That’s not saying you won’t be confronted by an officer on-campus, but the changes come up off-campus.

I should also stop to say that I think that when college students gather together, they’re up to no good. Far from it, actually, but sometimes things happen. Hell, in my mind, my employees are angels compared to the other students that are out there. Okay, maybe they’re each 99% angel; it’s that 1% of each of them that I’m talking about. That 1% where they end up talking about a party they went to on the weekend and had a couple beers with their friends and everything was cool and then they went to a movie and then played Wii sports or whatever it is those kids do. That 1% where I know that they are 19 going on 20, and they mentioned at work that they partook of libations of which they are technically not supposed to. They weren’t bragging or boasting or anything of that manner, but just talking with a fellow employee about their weekend; that’s the weekend rundown I don’t want to hear.

At the same time, I don’t want a work environment where the employees feel that they need to tight-lipped for fear of getting themselves in trouble. Despite being a supervisor, I’m not trying to get anyone in trouble, but I do have to hold be accountable for their actions. I want my employees to have a sense of camaraderie, as that way, they’ll work better as a team. In fact, I know that many of them do things together on a regular basis, and that makes me happy.

How do I know these things? It’s simple: Facebook. That alone cause an issue, as I’d like for everyone who comes through RCC to add me as a friend, something that none of the students seem to have a problem with. However, what happens if I get invited to an event through Facebook or read something about an event that is similar to the one above? It is quite the conundrum. Personally, I make sure not to go looking for that information, even if they share the information with me via the news feed. The same goes with blogs, which, while not currently prevalent with my staff, will become more common as time goes on. If my staff want to share that information with me, it shows some sort of trust exists between us, which I would not go out of my way to abuse.

While writing that, I realize that it’s quite the opposite stance that I would take while in the office or on campus and heard something that might be questionable. I’m fine with that; as I said, it’s a matter of trust. When I’m in the office working, I’m fulfilling my contractual obligations with the university and due what I must; that’s why it’s my job. However, Facebook is not an extension of my job, but is instead an extension of my personal life, and as such, that’s how I determine what I must do. My website is personal, as are my instant message accounts. My BGSU e-mail is for work. Those are the distinctions I make, and they are mine alone, as there is not set rule regarding them.

In regards to being invited to a party or other event, such as through Facebook, I’ve sometimes wondered if they actually want me to attend, or if they simply invited everyone in their list. My knee-jerk reaction is to decline most invitations that are sent to me through Facebook, especially birthday parties, as I’d rather not put myself in a situation where I would have to be the responsible adult. However, there are those times when those restrictions (self-imposed or otherwise) tend to irritate me more than anything.

I feel that I should include that if I ever hear of anything the is self-destructive or may harm others, I would step in. That’s not an obligation of work or anything; that’s just being human and caring for other human beings.

If I happened to find out about something happening to or with students on campus, especially my students, I’m not saying that in every case it would be something that I would go tattle on to a department; it may be something that simply needs to be talked about in passing. As a supervisor, I feel it’s my responsibility to assist in the education of students who work for me. If that’s as simple as occasionally talking to them about any number of issues they may face as a student, so be it. If it means that they need an “adult” to talk to about something, I’m there.

So, what’s all this mean? Well, it’s something I had to get off my chest as I’ve been mulling it over since I left work. Some of this, especially being more than just a supervisor, I’m considering for the first time, as I realize that this job has the potential to turn into a career field that I enjoy. It’s also to mention that the camaraderie that my employees have is something I personally like to see, and makes me feel that, as a supervisor, I’ve done something right, even if it is to make sure they have a gathering that “is for RCC employees (THIS EVENT IS NOT IN ANY WAY SHAPE OR FORM EXPLICITELY OR IMPLICITELY SANCTIONED BY RCC, BGSU, RESLIFE, OR ANYONE LIVING OR DEAD) and their friends.”

Touché.

VB6 code for setting startup mode of services in XP or Vista

Here is some VB6 code to set the startup mode of a service in either Windows XP or Vista. Here is the code for disabling a service:

Private Function DisableService(strServiceName)
  Dim ErrorArray(24)
  Dim strComputer As String
  Dim oInstance

  ErrorArray(1) = "The request is not supported."
  ErrorArray(2) = "The user did not have the necessary access."
  ErrorArray(3) = "The service cannot be stopped because other services that are running are dependent on it."
  ErrorArray(4) = "The requested control code is not valid, or it is unacceptable to the service."
  ErrorArray(5) = "The requested control code cannot be sent to the service because the state of the service."
  ErrorArray(6) = "The service has not been started."
  ErrorArray(7) = "The service did not respond to the stop request in a timely fashion."
  ErrorArray(8) = "Unknown failure when stopping the service."
  ErrorArray(9) = "The directory path to the service executable was not found."
  ErrorArray(10) = "The service is already stopped"
  ErrorArray(11) = "The service database is locked."
  ErrorArray(12) = "A dependency which this service relies on has been removed from the system."
  ErrorArray(13) = "The service failed to find the service needed from a dependent service."
  ErrorArray(14) = "The service has been disabled from the system."
  ErrorArray(15) = "The service does not have the correct authentication to run on the system."
  ErrorArray(16) = "This service is being removed from the system."
  ErrorArray(17) = "There is no execution thread for the service."
  ErrorArray(18) = "There are circular dependencies when stopping the service."
  ErrorArray(19) = "There is a service running under the same name."
  ErrorArray(20) = "There are invalid characters in the name of the service."
  ErrorArray(21) = "Invalid parameters have been passed to the service."
  ErrorArray(22) = "The account, which this service is to run under is either invalid or lacks the permissions to run the service."
  ErrorArray(23) = "The service exists in the database of services available from the system."
  ErrorArray(24) = "The service is currently paused in the system."

  strComputer = "."
  Set oInstance = GetObject("winmgmts:{impersonationLevel=impersonate}!" & strComputer & "rootcimv2:Win32_Service.Name=" & Chr(34) & strServiceName & Chr(34))
  Set oMethod = oInstance.Methods_("ChangeStartMode")
  Set oInParam = oMethod.inParameters.SpawnInstance_()
  oInParam.StartMode = "Disabled"
  Set oOutParam = oInstance.ExecMethod_("ChangeStartMode", oInParam)
  If oOutParam.returnValue <> 0 Then
    MsgBox "Change of startup mode of " & oInstance.DisplayName & " to disable failed.  Reason: " & ErrorArray(oOutParam.returnValue)
  End If
End Function

Currently, the code is written as two different functions, DisableService and ManualService, with the code only being different on two lines, one functional and one for a message box, so technically it could be combined into one function, which accepts two strings: the service name and what to do. However, on my installation of VB6, it doesn’t want to call the function with parenthesis, which looks wrong and, well, I don’t trust it as a result. This could technically be a standard for VB6, but I’ve seen plenty of other code samples online that use parenthesis around functions accepting multiple parameters, so it could just be an issue with my machine, or me just not understanding VB6. Anyway, the chunk of code that would change would be:

  oInParam.StartMode = strSomeValue

and

  MsgBox "Change of startup mode of " & oInstance.DisplayName & " to " & strSomeValue & " failed.  Reason: " & ErrorArray(oOutParam.returnValue)

The value of strSomeValue could be any of the following:

  • Boot
  • System
  • Automatic
  • Manual
  • Disabled

With that said, if you had two functions, DisableService and ManualService, one way to call them could be:

Private Sub SetServices()
    On Error Resume Next
    ' Computer Browser
    DisableService ("Browser")

    ' Messenger
    DisableService ("Messenger")

    ' NetMeeting Remote Desktop Sharing
    DisableService ("mnmsrvc")

    ' Remote Access Auto Connection Manager"
    DisableService ("RasAuto")

    ' Remote Desktop Help Session Manager
    DisableService ("RDSessMgr")

    ' Remote Registry
    DisableService ("RemoteRegistry")

    ' Server
    DisableService ("lanmanserver")

    ' SSDP Discovery
    DisableService ("SSDPSRV")

    ' Telnet
    DisableService ("TlntSvr")

    ' Universal Plug and Play Device Host
    DisableService ("upnphost")

    ' Volume Shadow Copy
    ManualService ("VSS")

    ' Windows Image Acquisiton
    ManualService ("stisvc")

    MsgBox "Computer services have been analyzed and configured."
End Sub

To find out how to call a service, just open the Services window, my personal favorite method is Start->Run->services.msc, and just double-click on a given service. You’ll want to call a service via its service name, which, in Windows XP, is the first item on the General tab. At the moment, I’m not sure what the display looks like on Windows Vista, but I believe it to be very close to the same. If all else fails, you can also easily find a list of Windows services by searching the web, and the site will typically have suggested settings for each one and common uses.




Bad Behavior has blocked 304 access attempts in the last 7 days.