Plus it shows that the interviewer has some knowledge of the topic in question, especially if you get in and discuss the reasoning behind the answers. In an interview, I want to get an estimate of how much the other employees know as well... will I be a "guru" simply because I can answer a few questions the interviewer looked up in a book? Or am I going to be in a level playing field with other strong programmers?
And more importantly, it lets you see how they think, and opens a dialog to find out about their personality. Many techies will be on edge if you just ask the "HR" types of questions. But if you open up some good tech questions, they open up and actually talk to you, so you can find out if they are a good fit personality-wise in addition to technology-wise.
But there is a point to the original quote: if it's a full press, nonstop grilling of obscure facts, you may alienate the interviewee. Especially if you focus on the things that aren't relavant to day-to-day coding, and you expect them to know it instead of knowing where to look it up. (When was the last time you had to sort out an obscure C precedence problem without a copy of K&R handy?)
That buying a Mac at CompUSA and Sears et al. is an exercise in futility and frustration. If you go to a car dealership, they don't steer you away from the model you ask for to show you another brand and try to bullshit you while they do it.
Actually, I just recently picked up one of the new iMacs at a CompUSA. While it was frustrating, it was not for the reason you gave...
In my experience CompUSA has very few Mac people. So I was free to wander in, put an iMac box in my cart and wander up to the cash register without being bothered by a single sales person. But my problem was that I had to find the model I wanted in a huge stack of boxes with mixed colors and models.
I'm actually suprised no one approached me when I started shifting their tower of iMac boxes across the showroom floor to dig the one I wanted out!
The classifieds get a quick scan, but most of the ads are so unspecific they get skipped. I may send a few resumes if they provide an email address.
Dice.com, monster.com, hotjobs.com. They all get a quick perusal, but I won't put my resume up or I get tons of email from companies that don't match at all. If I can't find a nice filter on the site to cut out the crap, I quit using that site.
Headhunters can be useful, but again they tend to hit you with as much stuff as they can, even if it isn't right for you, cause they get the commission. Many don't care, and just try to hustle you into a job. Ask for references from people they've placed before listing your jobs, or you might get a bad reputation from chosing a bad headhunter.
My number one resource has been networking with friends and people I've worked with before. If someone like working with you enough, and likes what they do enough to suggest you come work with them, you can be sure it's a good recommendation.
I agree that the documentation that DDTS adds is valuable, but the process we got stuck with for using DDTS was bad.
We had some horrible policy along the lines of "A developer can create an entry. A manager must then assign that entry to the developer who entered it." And so on... whoever configured the system required a manager's approval to do almost everything.
The one hole they left was that the developer could change the person who received all the checkin/checkout email for the clearcase branch. So you wait till someone takes a day off, and bombard them with a checkout/cancel of the entire source tree...;->
I think that another slice of the mac community has been left out by the above generalizations... Those of us who currently run MacOS 9 and LinuxPPC on the same box, who will probably upgrade to MacOS X and LinuxPPC on the same box. It's just like the x86 world... unless you're a diehard linux zealot, you probably dual boot so you can do your linux thing and still run games and Photoshop.
Having a linux box has been a huge benefit to me as I am a programmer by trade, and have been working on a graduate computer science degree. Neither Windows or MacOS really helps when you need to write linux/unix code. After starting with MkLinux and migrating to LinuxPPC, I don't think I'll give linux up. Even though the Darwin core has BSD in it, for me it just becomes another tool to make my code portable.
Perhaps if MacOS X starts supporting a free X server, and it gets to the point where it's almost the same as just having a different window manager (that lets me run mac apps) I'll stop dual booting. But I think I'll be running both OSs for quite a while.
I used clearcase about 2 years ago in a large software project, 50+ developers, and it worked really well most of the time. The big problem is that you must have a trained clearcase admin that knows what they are doing. If they don't, it will break badly and often. (The worst mistake I've seen was when the VOBs were served off the same machine serving up user accounts. When the VOBs crashed the machine, all of/home went away...)
Clearcase's graphical tools, like the graphical merging tool, and the ability to see and compare branches and versions from within their gui is definitely a bonus.
The ability to merge clearcase with DDTS bug tracking was a definite pain in the ass. At least the way our CM management set it up. ("You mean I have to register and be assigned a software defect just to add a new feature???")
Managing labels can be a pain, especially when the nightly build breaks, and you need a new feature that was introduced in that build... Again, make sure your clearcase admin knows what they are doing or you could have a nightmare with the precedence that labels are searched to find "your" version)
I've just recently used CVS on a couple of small projects with just a handful (5) developers. The definite advantages are that almost anyone can maintain a CVS repository, and you still get some of the branching and merging features, but they seem to be a bit more crude than clearcase features. (Though clearcase can be pretty dumb with the auto merge. Have two developers add identical versions of the same function in two different locations in the same file, and it's happy to merge them both in without a peep.)
I've hit some weird snags with things like scripts that worked on Solaris, but broke on cygwin/NT because the binary flag didn't get set in CVS. I've also had directories that I couldn't remove from the CVS repository, and kept reappearing with every checkout. Probably just due to limited exposure to CVS so far...
Anyway, CVS's main advantages are the price, and its ease of maintainence. On the down side, support for gui interfaces to it don't seem to be standard across platforms. What gui you really like for linux probably doesn't exist for NT.
If you have the monetary and support resources to handle clearcase, it may be worth it. But if the price is just too scary, or your project just doesn't seem big enough to warrant it, then CVS is a good tool that should help meet your needs with a much smaller price tag.
And for the most part, all the denver numbers I dial are still 303's, with just a few of the new prefixes thrown in.
10 digit dialing by itself isn't really a hardship at all. Especially since I primarily use autodial or look up phone numbers in an addressbook anyway.
Actually, this won't bee all that far off in the future.
One of the projects I've recently worked on was developing a system that utilized one phone number for voicemail, email and faxes. You could then fetch them via the web, or get voicemail and email via WAP phone, and use either web or WAP to forward faxes to a fax device for printing.
I think we should see commercial services offering this in the next year or so...
You can inherit from two classes defining the same method in C++.
It's only a mess if they either aren't both virtual, in which case you really have both methods, or if the syntax matches, but the intent of the methods varies. (If that's the case, then it's probably a result of a bad design.)
You can arrive at the same situations in Java. You can get the mismatched intents, because bad designs exist in Java too.
And the "non virtual" problem is equivalent to overriding an inherited method that matches a implemented method. You can still access the parent class method explicitly, but any other access through the derived or interface class gets the derived version. The only difference is that in C++, accessing it from a parent reference will give you the parent method, and Java will give you the child method. Which is "correct"? Both are.
Just be aware of how the language behaves, and you can use "interfaces" in both Java and C++ without problems.
I've worked in both a very large company, and a very small company, both of which used flex time. An important aspect to keep things working smoothly, and yet accomodate various people's schedules is to maintain some "core hours" where everyone is expected to be in for meetings and such. For example, 10-3 are core hours, with people coming in early and leaving at 3, or coming in at 10 and leaving late. It just takes the effort of letting your manager and team know when you expect your regular hours to be, so that they can know when to start knocking on your office door.
Of course there is always the chance that someone will abuse the core hours, coming in at 3pm, but even this can work as long as they make a point of coming in during the core hours for scheduled meetings. (Unscheduled meetings are a problem though...) The 3pm'er on one of my teams actually worked out well, because I could identify bugs all morning, and he'd fix them after I went home. And you just didn't schedule meetings until 1pm if you could avoid it. (Which coincidentally made the rest of us happy as well. There's nothing like a bad morning meeting to ruin the whole day.)
Whether or not this will work depends upon the type of work you're doing. If people can be primarily self motivated, you don't depend on constant face-to-face team interactions, little "on-call" customer support is required, and status meetings etc can be scheduled in advance, this should work fine. Otherwise, your mileage may vary.
The best arguments for this are a relaxed atmosphere and employee satisfaction. You aren't worried when you are running a little late due to traffic, in fact you can work your hours to avoid bad traffic. You are free to take care of errands or medical appointments in the mornings or afternoons.
Flextime has been one of the big requirements for me as I've looked for jobs, and I expect you're not the only one at your company that values your flextime. Let your managers know just how big an issue it is for you and your coworkers. If they value their employees, and it is desired by enough of them, they may change their minds about taking it away.
Anyone remember "Toys"?
on
Trigger Happy
·
· Score: 1
Video games are becoming one of the world's most popular entertainment forms, affecting TV, education, Hollywood, even the Pentagon and the way we view and conduct high-tech, game-like, remote-control military conflicts.
The first thing this made me thing of was the movie Toys with Robin Williams. Remember when the evil military uncle is training hordes of elementary school kids to play war video games, which will be really controlling robot weapons on a real field of battle?
Even the thought of something like this puts a chill down my spine. (And I even happen to fall into the archetype of the "average" video game player...)
I guess the real question is, would something like this be worth the opportunity to prevent the loss of lives in military conflicts, or will it dehumanize war so much that we have no ethical or moral opposition to it? Food for thought...
With either credit or debit cards, I do review my monthly statement; many people don't and this is where they fall into trouble.
Precisely. I fell out of this habit for a while and ran into a nightmare with an ISP that "forgot" to bill every month, and then would bill for 3-4 months at a time. And they won't accept checks unless you pay a 10% service charge. I have a low limit credit card that I use for the internet, so I'm not as worried about my number being scammed. But it's low enough that if I ever charged a bit of stuff right before the ISP whacked me with a four month debit, they wouldn't get authorization...
Then about a week later, I'd get my access cut off without warning until I called and complained about it. Their standard response was "didn't you get the monthly email reminder about your payment? Didn't you get the warning email that your access was being cut off?" At which point I would have to tell them I'd never gotten one of these reminder emails... and if I lost access to my account, I couldn't read their warning...
But they never changed the way they did billing, and they never sent the "reminder" email... just continued to lump bills together and then cut you off if you missed a mass payment. Needless to say, I found another ISP very quickly, one that takes checks and has a reliable billing department.
Another "historical" hacker text
on
Hackers
·
· Score: 1
When I read Hackers a few years ago, I happened to find a similar book that also touches on the now "historical" aspects of hacking in the early 80s. Look for Masters of Deception: The Gang that Ruled Cyberspace by Michelle Slatalla and Joshua Quittner. It covers the exploits of the "Masters of Deception" and the "Legion of Doom" hacker "gangs".
You can find affordable links to it at www.abebooks.com from anywhere between $7-$25.
Oh yeah, I've got a couple of these laying around in my attic somewhere. Great machines.
Especially with the Speech Synthesizer module that plugged in the side for games like "Parsec". I was blown away by the fact that a computer could say "Entering Asteroid Belt" that realistically. (For the time, that is)
And the adapter for saving files on cassette tapes... The manual even said something like "You know the tape is being loaded when the tape recorder is making sounds like a love-sick gorilla."
You don't see that kind of documentation with today's drives, do you?
I would guess that you'de need to be 5-10 years old to be considered "vintage" in the computer world. This corresponds to the car world where 30 years is "vintage", and about 1/3 of that, or 10 years is safely "out of date". So now when 2-3 years is "out of date" for computers, you get 5-10 is for "vintage" computers.
Several years ago, I also was a programming TA. I totally agree with you that someone who wants to use the unix tools will probably be a better student. And I can see your point about a consistent environment making it easier to grade, debug, etc.
However, I also remember when I wrote the first few of my C programs under Borland, and later discovered that all those useful functions I was using were Borland specific... Make sure that the environment you work with isn't the non-standard one that you worry about. And of course, the simplest solution is develop with g++, and when you're done, import it into CodeWarrior. If it works in a standard environment, it should work in another standard environment.
And I imagine any TA worth his/her salt will know g++ and gdb and be willing to help someone else learn a different set of tools. Though I also remember writing some code that made gdb core and I had to load it into Borland's debugger to find out why...
I've still got one lying around that never had any problems...
It just got way too slow to use once I got a B&W G3. I'd been thinking about replacing it with an indigo iMac so I could set up a small gaming network in my house, but replacing it with a new powerbook may be even better!
Now all I have to do is figure out what to do with the old external SCSI CDROM I had hooked to it, and the new internal ZIP drive I added to it a year ago...
I agree with you totally. I started out working for a large well established government contracting company. The whole system was slow and process bound. Code reviews were project milestones, as were such things as functional specs, high level designs, detailed designs, and test plans. The paperwork was occasionally a pain in the ass that kept you from doing any coding.
Now I'm working for a small, relatively young company, just starting to ramp up from when it was just a coder or two. I was looking for change, and I found it. Now, code reviews are few and far between, the customer may see a design spec (if they are technically saavy), and test plans are usually incomplete or so vague you could pass them with "HelloWorld" if you squint.
And I find myself missing a lot of the benefits of having a real process, despite the increased paperwork. As we ramp up, we're trying to instill the same kind of discipline that we've seen work at other companies, without sacrificing that ever so important "internet-time" project scope. It may seem to save time to drop all that overhead, but in the long run, the code you write is higher quality, more maintainable, and has fewer bugs than the stuff you crank out blindly...
I read "The Mythical Man-Month" last spring, and was shocked at how much of it was almost directly applicable to many of the small companies I've seen. Too much work for too few people, poorly documented and only margionally tested.
But to get back to the topic, OSS isn't always the solution. Many of the projects I've worked on couldn't be open sourced... too many proprietary issues, government content, or built to work with expensive, proprietary, third-party systems almost no OSS developer would have experience with, let alone have a personal copy of to test the software.
And when OSS won't work for you, the important thing to do is identify the pieces that OSS has that you don't, like lots of peer review, and institute a way to make use of those things.
Suprisingly enough, libraries already filter their books.
First, libraries don't hve unlimited funds, so you get a coarse grained filter based upon the community's nonfiction needs, and popularity of fiction titles. Then, not every popular book actually gets bought. Many libraries refuse to purchase books of questionable taste/decency. I can't think of many libraries I've been in or worked in that carried a copy of the "Illustrated Kama Sutra".
And if by popuar demand, or gift or donation, a library finds itself housing a questionable book, it may end up not in the general circulation. Try putting a copy of the "Anarchist's Cookbook" out, and it'll be stolen. Repeatedly. And many a library kept Madonna's "Sex" book behind the counter and only checked it out for in library use, keeping your library card as collateral.
I'm not saying that libraries should filter their collections, but that many do based on budget constraints. Most people trust their libraries to do this with the community's best interest at heart. But the internet is an entirely different matter.
A sensible compromise can be reached... the library I worked at set up their network so the public access machines in the Children's areas only could access the catalog and local services. To get internet access, you had to use one of the main terminals, which were clearly labeled with warnings that children's usage should be monitored by a parent or guardian. Not that this is a fool proof setup, but in most cases it worked pretty well.
I'll agree that ClearCase can do very well on simple merges, and their GUI didn't bother me that much (once I got used to it), but you're right that it's very, very easy to confuse their merge algorithm.
For example, 2 users add an identical line of code, but if one user adds it above line 12, and another adds it below line 12, ClearCase will happily add both of them, without even warning you. Now this may not count as a "real" conflict, but you'd think it would be easy to identify.
I've also seen it get really confused if methods are very similar, trying to merge them when what is really needed is the addition of both.
Despite these shortfalls, it does happen to be one of the best merge tools I've worked with.
Now if only there was something like it that worked with a simple versioning system like CVS instead of that monstrous beast that ClearCase uses...
I can't find it now, but this morning I saw a news page that said that Patrick would be playing a "died in the wool" normal FBI agent. In light of this, I can't imagine it getting very far without Scully taking on the role of paranormal believer.
Additionally, it said that their motive would be the investigation of Mulder's abduction, and that adding Patrick might be the needed impetus to keep the show going beyond its currently alloted number of seasons.
Personally, I've been losing interest in the story lines, and this may perk it up for a while, but int the long run, I can't see myself faithfully following X-files like I did several years ago.
Or if you deliver a bad product, the customer starts to jump up and down waving the contract until you agree to fix it. At least that's how my experience with software works... why should webpages be any different? If it doesn't meet the contract, it has to be fixed. If the contractor won't fix it, it sounds like a lawsuit to me.
Now, if they were involved the whole time, said it was just great, and only claimed it was flawed after delivery, the customer has more problems than just a broken website.
I've gotten several flyers in the mail about the availability of *new* cars which can run on natural gas. They advertise that there are "over 47" locations in the Denver Metro area to purchase natural gas for these cars, and that natural gas prices have stayed steady for the last 5 years or so. But there are still a few problems:
Currently I can't afford to purchase a brand new car, and I've never seen an option to get a car converted in the Denver area.
I recently moved into the mountains, about 20 minutes away from the nearest city. I doubt the little town of 1000 people I live in will pump natural gas.
What if I want to drive my car across country? I've driven to Ohio about once a year since I got married to visit my inlaws. Once I head east through Nebraska/Kansas I doubt I'll find natural gas pumps at the stations along the interstate...
Yes there are alternatives, but in many areas, there just isn't the infrastructure to support converting your primary vehicle to an alternative like natural gas. The hybrid electrics are better for this, but again you still have to put out the cash for a new car.
I do ride the busses, bike to work, and I would love to switch to an alternative fuel, but right now there's no way I could do it with the resources I have available.
I'v played with MAME a little, and I've become convinced tht preserving the classics in their original form is more worthwhile than some of the recent attempts to "modernize" and recreate the classics. (I really don't understand the fascination with rehashing games every decade or so, it fits right in with making a 90's movie of "Leave It To Beaver")
For example, I recently bought Centipede for the playstation in a fit of nostolgia. And it's ok, the original mode is there, but the "new" version has been slaughtered with 3D graphics and awkward controls. But at least it really does have the "real" classic interface.
Much worse yet, not so long ago, I saw an arcade machine featuring 4 "classic" games (ala NeoGeo). I played a round of Pac-Man and was disgusted! Everything had 3D shading, the pellets bounced in place, pac-man was green!!! Absolutely stomach turning.
Give me the originals, and I mean originals any day, they were carefully crafted masterpieces that bring back memories like these recreations never can. And when tools like MAME can play nearly anything you can remember, you truly have a wonderful preservation that surpasses any "recreation" I've seen come out in the last few years.
Plus it shows that the interviewer has some knowledge of the topic in question, especially if you get in and discuss the reasoning behind the answers. In an interview, I want to get an estimate of how much the other employees know as well... will I be a "guru" simply because I can answer a few questions the interviewer looked up in a book? Or am I going to be in a level playing field with other strong programmers?
And more importantly, it lets you see how they think, and opens a dialog to find out about their personality. Many techies will be on edge if you just ask the "HR" types of questions. But if you open up some good tech questions, they open up and actually talk to you, so you can find out if they are a good fit personality-wise in addition to technology-wise.
But there is a point to the original quote: if it's a full press, nonstop grilling of obscure facts, you may alienate the interviewee. Especially if you focus on the things that aren't relavant to day-to-day coding, and you expect them to know it instead of knowing where to look it up. (When was the last time you had to sort out an obscure C precedence problem without a copy of K&R handy?)
That buying a Mac at CompUSA and Sears et al. is an exercise in futility and frustration. If you go to a car dealership, they don't steer you away from the model you ask for to show you another brand and try to bullshit you while they do it.
Actually, I just recently picked up one of the new iMacs at a CompUSA. While it was frustrating, it was not for the reason you gave...
In my experience CompUSA has very few Mac people. So I was free to wander in, put an iMac box in my cart and wander up to the cash register without being bothered by a single sales person. But my problem was that I had to find the model I wanted in a huge stack of boxes with mixed colors and models.
I'm actually suprised no one approached me when I started shifting their tower of iMac boxes across the showroom floor to dig the one I wanted out!
The classifieds get a quick scan, but most of the ads are so unspecific they get skipped. I may send a few resumes if they provide an email address.
Dice.com, monster.com, hotjobs.com. They all get a quick perusal, but I won't put my resume up or I get tons of email from companies that don't match at all. If I can't find a nice filter on the site to cut out the crap, I quit using that site.
Headhunters can be useful, but again they tend to hit you with as much stuff as they can, even if it isn't right for you, cause they get the commission. Many don't care, and just try to hustle you into a job. Ask for references from people they've placed before listing your jobs, or you might get a bad reputation from chosing a bad headhunter.
My number one resource has been networking with friends and people I've worked with before. If someone like working with you enough, and likes what they do enough to suggest you come work with them, you can be sure it's a good recommendation.
I agree that the documentation that DDTS adds is valuable, but the process we got stuck with for using DDTS was bad.
;->
We had some horrible policy along the lines of "A developer can create an entry. A manager must then assign that entry to the developer who entered it." And so on... whoever configured the system required a manager's approval to do almost everything.
The one hole they left was that the developer could change the person who received all the checkin/checkout email for the clearcase branch. So you wait till someone takes a day off, and bombard them with a checkout/cancel of the entire source tree...
I think that another slice of the mac community has been left out by the above generalizations... Those of us who currently run MacOS 9 and LinuxPPC on the same box, who will probably upgrade to MacOS X and LinuxPPC on the same box. It's just like the x86 world... unless you're a diehard linux zealot, you probably dual boot so you can do your linux thing and still run games and Photoshop.
Having a linux box has been a huge benefit to me as I am a programmer by trade, and have been working on a graduate computer science degree. Neither Windows or MacOS really helps when you need to write linux/unix code. After starting with MkLinux and migrating to LinuxPPC, I don't think I'll give linux up. Even though the Darwin core has BSD in it, for me it just becomes another tool to make my code portable.
Perhaps if MacOS X starts supporting a free X server, and it gets to the point where it's almost the same as just having a different window manager (that lets me run mac apps) I'll stop dual booting. But I think I'll be running both OSs for quite a while.
I used clearcase about 2 years ago in a large software project, 50+ developers, and it worked really well most of the time. The big problem is that you must have a trained clearcase admin that knows what they are doing. If they don't, it will break badly and often. (The worst mistake I've seen was when the VOBs were served off the same machine serving up user accounts. When the VOBs crashed the machine, all of /home went away...)
Clearcase's graphical tools, like the graphical merging tool, and the ability to see and compare branches and versions from within their gui is definitely a bonus.
The ability to merge clearcase with DDTS bug tracking was a definite pain in the ass. At least the way our CM management set it up. ("You mean I have to register and be assigned a software defect just to add a new feature???")
Managing labels can be a pain, especially when the nightly build breaks, and you need a new feature that was introduced in that build... Again, make sure your clearcase admin knows what they are doing or you could have a nightmare with the precedence that labels are searched to find "your" version)
I've just recently used CVS on a couple of small projects with just a handful (5) developers. The definite advantages are that almost anyone can maintain a CVS repository, and you still get some of the branching and merging features, but they seem to be a bit more crude than clearcase features. (Though clearcase can be pretty dumb with the auto merge. Have two developers add identical versions of the same function in two different locations in the same file, and it's happy to merge them both in without a peep.)
I've hit some weird snags with things like scripts that worked on Solaris, but broke on cygwin/NT because the binary flag didn't get set in CVS. I've also had directories that I couldn't remove from the CVS repository, and kept reappearing with every checkout. Probably just due to limited exposure to CVS so far...
Anyway, CVS's main advantages are the price, and its ease of maintainence. On the down side, support for gui interfaces to it don't seem to be standard across platforms. What gui you really like for linux probably doesn't exist for NT.
If you have the monetary and support resources to handle clearcase, it may be worth it. But if the price is just too scary, or your project just doesn't seem big enough to warrant it, then CVS is a good tool that should help meet your needs with a much smaller price tag.
And for the most part, all the denver numbers I dial are still 303's, with just a few of the new prefixes thrown in.
10 digit dialing by itself isn't really a hardship at all. Especially since I primarily use autodial or look up phone numbers in an addressbook anyway.
Actually, this won't bee all that far off in the future.
One of the projects I've recently worked on was developing a system that utilized one phone number for voicemail, email and faxes. You could then fetch them via the web, or get voicemail and email via WAP phone, and use either web or WAP to forward faxes to a fax device for printing.
I think we should see commercial services offering this in the next year or so...
You can inherit from two classes defining the same method in C++.
It's only a mess if they either aren't both virtual, in which case you really have both methods, or if the syntax matches, but the intent of the methods varies. (If that's the case, then it's probably a result of a bad design.)
You can arrive at the same situations in Java. You can get the mismatched intents, because bad designs exist in Java too.
And the "non virtual" problem is equivalent to overriding an inherited method that matches a implemented method. You can still access the parent class method explicitly, but any other access through the derived or interface class gets the derived version. The only difference is that in C++, accessing it from a parent reference will give you the parent method, and Java will give you the child method. Which is "correct"? Both are.
Just be aware of how the language behaves, and you can use "interfaces" in both Java and C++ without problems.
If you really want interfaces in C++, just define a pure virtual class, and inherit from it.
Practically the same thing, and not much more code, either.
I've worked in both a very large company, and a very small company, both of which used flex time. An important aspect to keep things working smoothly, and yet accomodate various people's schedules is to maintain some "core hours" where everyone is expected to be in for meetings and such. For example, 10-3 are core hours, with people coming in early and leaving at 3, or coming in at 10 and leaving late. It just takes the effort of letting your manager and team know when you expect your regular hours to be, so that they can know when to start knocking on your office door.
Of course there is always the chance that someone will abuse the core hours, coming in at 3pm, but even this can work as long as they make a point of coming in during the core hours for scheduled meetings. (Unscheduled meetings are a problem though...) The 3pm'er on one of my teams actually worked out well, because I could identify bugs all morning, and he'd fix them after I went home. And you just didn't schedule meetings until 1pm if you could avoid it. (Which coincidentally made the rest of us happy as well. There's nothing like a bad morning meeting to ruin the whole day.)
Whether or not this will work depends upon the type of work you're doing. If people can be primarily self motivated, you don't depend on constant face-to-face team interactions, little "on-call" customer support is required, and status meetings etc can be scheduled in advance, this should work fine. Otherwise, your mileage may vary.
The best arguments for this are a relaxed atmosphere and employee satisfaction. You aren't worried when you are running a little late due to traffic, in fact you can work your hours to avoid bad traffic. You are free to take care of errands or medical appointments in the mornings or afternoons.
Flextime has been one of the big requirements for me as I've looked for jobs, and I expect you're not the only one at your company that values your flextime. Let your managers know just how big an issue it is for you and your coworkers. If they value their employees, and it is desired by enough of them, they may change their minds about taking it away.
The first thing this made me thing of was the movie Toys with Robin Williams. Remember when the evil military uncle is training hordes of elementary school kids to play war video games, which will be really controlling robot weapons on a real field of battle?
Even the thought of something like this puts a chill down my spine. (And I even happen to fall into the archetype of the "average" video game player...)
I guess the real question is, would something like this be worth the opportunity to prevent the loss of lives in military conflicts, or will it dehumanize war so much that we have no ethical or moral opposition to it? Food for thought...
Precisely. I fell out of this habit for a while and ran into a nightmare with an ISP that "forgot" to bill every month, and then would bill for 3-4 months at a time. And they won't accept checks unless you pay a 10% service charge. I have a low limit credit card that I use for the internet, so I'm not as worried about my number being scammed. But it's low enough that if I ever charged a bit of stuff right before the ISP whacked me with a four month debit, they wouldn't get authorization...
Then about a week later, I'd get my access cut off without warning until I called and complained about it. Their standard response was "didn't you get the monthly email reminder about your payment? Didn't you get the warning email that your access was being cut off?" At which point I would have to tell them I'd never gotten one of these reminder emails... and if I lost access to my account, I couldn't read their warning...
But they never changed the way they did billing, and they never sent the "reminder" email... just continued to lump bills together and then cut you off if you missed a mass payment. Needless to say, I found another ISP very quickly, one that takes checks and has a reliable billing department.
You can find affordable links to it at www.abebooks.com from anywhere between $7-$25.
Oh yeah, I've got a couple of these laying around in my attic somewhere. Great machines.
Especially with the Speech Synthesizer module that plugged in the side for games like "Parsec". I was blown away by the fact that a computer could say "Entering Asteroid Belt" that realistically. (For the time, that is)
And the adapter for saving files on cassette tapes... The manual even said something like "You know the tape is being loaded when the tape recorder is making sounds like a love-sick gorilla."
You don't see that kind of documentation with today's drives, do you?
I would guess that you'de need to be 5-10 years old to be considered "vintage" in the computer world. This corresponds to the car world where 30 years is "vintage", and about 1/3 of that, or 10 years is safely "out of date". So now when 2-3 years is "out of date" for computers, you get 5-10 is for "vintage" computers.
;-)
At least that's a guess.
Several years ago, I also was a programming TA. I totally agree with you that someone who wants to use the unix tools will probably be a better student. And I can see your point about a consistent environment making it easier to grade, debug, etc.
However, I also remember when I wrote the first few of my C programs under Borland, and later discovered that all those useful functions I was using were Borland specific... Make sure that the environment you work with isn't the non-standard one that you worry about. And of course, the simplest solution is develop with g++, and when you're done, import it into CodeWarrior. If it works in a standard environment, it should work in another standard environment.
And I imagine any TA worth his/her salt will know g++ and gdb and be willing to help someone else learn a different set of tools. Though I also remember writing some code that made gdb core and I had to load it into Borland's debugger to find out why...
I've still got one lying around that never had any problems...
It just got way too slow to use once I got a B&W G3. I'd been thinking about replacing it with an indigo iMac so I could set up a small gaming network in my house, but replacing it with a new powerbook may be even better!
Now all I have to do is figure out what to do with the old external SCSI CDROM I had hooked to it, and the new internal ZIP drive I added to it a year ago...
I agree with you totally. I started out working for a large well established government contracting company. The whole system was slow and process bound. Code reviews were project milestones, as were such things as functional specs, high level designs, detailed designs, and test plans. The paperwork was occasionally a pain in the ass that kept you from doing any coding.
Now I'm working for a small, relatively young company, just starting to ramp up from when it was just a coder or two. I was looking for change, and I found it. Now, code reviews are few and far between, the customer may see a design spec (if they are technically saavy), and test plans are usually incomplete or so vague you could pass them with "HelloWorld" if you squint.
And I find myself missing a lot of the benefits of having a real process, despite the increased paperwork. As we ramp up, we're trying to instill the same kind of discipline that we've seen work at other companies, without sacrificing that ever so important "internet-time" project scope. It may seem to save time to drop all that overhead, but in the long run, the code you write is higher quality, more maintainable, and has fewer bugs than the stuff you crank out blindly...
I read "The Mythical Man-Month" last spring, and was shocked at how much of it was almost directly applicable to many of the small companies I've seen. Too much work for too few people, poorly documented and only margionally tested.
But to get back to the topic, OSS isn't always the solution. Many of the projects I've worked on couldn't be open sourced... too many proprietary issues, government content, or built to work with expensive, proprietary, third-party systems almost no OSS developer would have experience with, let alone have a personal copy of to test the software.
And when OSS won't work for you, the important thing to do is identify the pieces that OSS has that you don't, like lots of peer review, and institute a way to make use of those things.
First, libraries don't hve unlimited funds, so you get a coarse grained filter based upon the community's nonfiction needs, and popularity of fiction titles. Then, not every popular book actually gets bought. Many libraries refuse to purchase books of questionable taste/decency. I can't think of many libraries I've been in or worked in that carried a copy of the "Illustrated Kama Sutra".
And if by popuar demand, or gift or donation, a library finds itself housing a questionable book, it may end up not in the general circulation. Try putting a copy of the "Anarchist's Cookbook" out, and it'll be stolen. Repeatedly. And many a library kept Madonna's "Sex" book behind the counter and only checked it out for in library use, keeping your library card as collateral.
I'm not saying that libraries should filter their collections, but that many do based on budget constraints. Most people trust their libraries to do this with the community's best interest at heart. But the internet is an entirely different matter.
A sensible compromise can be reached... the library I worked at set up their network so the public access machines in the Children's areas only could access the catalog and local services. To get internet access, you had to use one of the main terminals, which were clearly labeled with warnings that children's usage should be monitored by a parent or guardian. Not that this is a fool proof setup, but in most cases it worked pretty well.
For example, 2 users add an identical line of code, but if one user adds it above line 12, and another adds it below line 12, ClearCase will happily add both of them, without even warning you. Now this may not count as a "real" conflict, but you'd think it would be easy to identify.
I've also seen it get really confused if methods are very similar, trying to merge them when what is really needed is the addition of both.
Despite these shortfalls, it does happen to be one of the best merge tools I've worked with.
Now if only there was something like it that worked with a simple versioning system like CVS instead of that monstrous beast that ClearCase uses...
I can't find it now, but this morning I saw a news page that said that Patrick would be playing a "died in the wool" normal FBI agent. In light of this, I can't imagine it getting very far without Scully taking on the role of paranormal believer.
Additionally, it said that their motive would be the investigation of Mulder's abduction, and that adding Patrick might be the needed impetus to keep the show going beyond its currently alloted number of seasons.
Personally, I've been losing interest in the story lines, and this may perk it up for a while, but int the long run, I can't see myself faithfully following X-files like I did several years ago.
Or if you deliver a bad product, the customer starts to jump up and down waving the contract until you agree to fix it. At least that's how my experience with software works... why should webpages be any different? If it doesn't meet the contract, it has to be fixed. If the contractor won't fix it, it sounds like a lawsuit to me.
Now, if they were involved the whole time, said it was just great, and only claimed it was flawed after delivery, the customer has more problems than just a broken website.
I've gotten several flyers in the mail about the availability of *new* cars which can run on natural gas. They advertise that there are "over 47" locations in the Denver Metro area to purchase natural gas for these cars, and that natural gas prices have stayed steady for the last 5 years or so. But there are still a few problems:
Currently I can't afford to purchase a brand new car, and I've never seen an option to get a car converted in the Denver area.
I recently moved into the mountains, about 20 minutes away from the nearest city. I doubt the little town of 1000 people I live in will pump natural gas.
What if I want to drive my car across country? I've driven to Ohio about once a year since I got married to visit my inlaws. Once I head east through Nebraska/Kansas I doubt I'll find natural gas pumps at the stations along the interstate...
Yes there are alternatives, but in many areas, there just isn't the infrastructure to support converting your primary vehicle to an alternative like natural gas. The hybrid electrics are better for this, but again you still have to put out the cash for a new car.
I do ride the busses, bike to work, and I would love to switch to an alternative fuel, but right now there's no way I could do it with the resources I have available.
I'v played with MAME a little, and I've become convinced tht preserving the classics in their original form is more worthwhile than some of the recent attempts to "modernize" and recreate the classics. (I really don't understand the fascination with rehashing games every decade or so, it fits right in with making a 90's movie of "Leave It To Beaver")
For example, I recently bought Centipede for the playstation in a fit of nostolgia. And it's ok, the original mode is there, but the "new" version has been slaughtered with 3D graphics and awkward controls. But at least it really does have the "real" classic interface.
Much worse yet, not so long ago, I saw an arcade machine featuring 4 "classic" games (ala NeoGeo). I played a round of Pac-Man and was disgusted! Everything had 3D shading, the pellets bounced in place, pac-man was green!!! Absolutely stomach turning.
Give me the originals, and I mean originals any day, they were carefully crafted masterpieces that bring back memories like these recreations never can. And when tools like MAME can play nearly anything you can remember, you truly have a wonderful preservation that surpasses any "recreation" I've seen come out in the last few years.