I'm pretty sure you would get a linking error when you linked your application against libfoo, because of the duplicate "clear()" symbol. So it's not easy to get into the situation you describe. Either You have to have 2 versions of libfoo -- one that links with ncurses and one that doesn't. You link your app against the libfoo without ncurses, then switch to the version of libfoo that uses ncurses at runtime. Obviously, this can happen pretty easily if you upgrade libfoo but don't recompile your application. Or you use something like dlopen(2) to load libfoo at runtime and bypass the linker checks (though I'm not sure that dlopen will add all those functions to the namespace).
Of course, it's not like the Windows model is perfect either. By default, Windows exports no symbols as you mentioned. This is a problem if you have a codebase that was written on UNIX and expects all the symbols exported. At work, we have a script that trolls through the.o files to get all the symbols. Fortunately, there is a way to pass this list of symbols to the linker so it will export them.
Another problem is that by default Windows makes a copy of static variables (on a C++ class, at least) in each library and application? And that static variable is ONLY initialized in the library that declared the static and initialized it in it's source file? This is a real problem if you want to access a constant from a different library. To get Windows to not make a separate copy, you have to declare the variable with __declspec(dllimport) in the header file. Of course, that syntax is special for the MSVC compiler, and even worse, it cannot be there when compiling the library that contains that constant. So you have to have a special macro that is only enabled if you are NOT compiling the library the header is defined in. This for a while (I think in MSVC 6 and fixed in 7) caused libraries which used static std::map objects to have real problems on Windows (at least for us).
And then there's the problem that the MSVC linker tries to help you by only linking against libraries whose symbols your application explicitly uses. In theory, this is a good thing. But when my app links against libfoo, I want to make sure that libfoo is loaded at run time, even if the app doesn't explicitly use any symbols from it. I don't care that it looks to the linker that I'm not using the library. I know that libfoo's initialization will do stuff so that I can use it, even if I don't explicitly use anything from it (the app is only accessing base classes).
Another oddity is that even if the DLL wasn't found when linking on Windows, or is missing a dependency, it will still create the EXE with a missing dependency. While this is probably a good thing, it can cause a problem if the EXE is a test program that is supposed to run during the build process. Actually, if the test program just failed to run, that would be fine. However, when you run an EXE with a missing dependency, you get a nice popup telling you what the missing library is (that you cannot copy/paste from). The process that started the EXE (make) doesn't get control back until someone presses OK on the dialog. So this stops the build. And there's nothing better than getting to work in the morning to find that not only where there errors that prevented a library from compiling but also the fact that your build that should have been done now has hours more of testing (possibly with hundreds more popups) before you can work.
Apparently, in MSVC 8, the linker doesn't even write the list of dependencies to the EXE and DLL anymore. Instead, it creates a separate.manifest file that contains that information. But don't worry, there's an application (mt) that allows you to embed the manifest information in the EXE or DLL. Why the linker doesn't just do that by default, I don't know. And who knows what other fun MSVC 8 will bring to the table (we're only just experimenting with it now -- my company takes a very conservative view with upgrades, probably too conservative).
You're right that ostrstream is a nasty class. Which is why if I always replace it with ostringstream if possible. The latter class is much more predictable, and ostringstream::str() returns a std::string, which is easy to use. In the product I work on (at work), streams are used quite often, especially when converting a non-string to a string.
The bitshift operator overloading for streams is annoying from a purist point of view, but it works pretty well. And there really weren't any other better operators to co-opt.
My biggest complaint with C++ streams is that the ifstream and ofstream classes construct with const char* instead of with std::string. So, if I have a string containing the file to open, I have to call.c_str() on it to open the file. A minor inconvenience, but it would be nice if a string constructor was there.
There are still some of us out there who use the command line and traces to debug. Partly because it's too much of a pain to compile everything debug and partly because I've never become proficient enough with dbx or gdb to make them my first choice.
Personally, I see the command line as my way to talk to the computer. Without it, I'm just pointing and grunting like a caveman. And if that's all you want, I guess that's OK, but I prefer the eloquence and expressiveness of the command line.
Change the coal power plant to something else, say solar power or hydroelectric. How does the mercury stack up then?
I'm not saying that I don't use CFL bulbs, because I do. But saying things like "the amount of mercury is so small that this issue is laughable" will truly be laughable in 10 years when everyone is complaining about the "mercury crisis" from all the CFL bulbs that are being thrown out. I'm just afraid that we're trading one problem for another, more distributed one. Do not underestimate the multiplicative power of millions or billions. One car puts out so little pollution that it is "laughable" to think that it's a problem for the environment. But tens of millions of cars are a problem.
Sweeping the mercury issue under the rug is not responsible, IMO. It should be something that is stated up front so that everyone knows the potential danger and measures are put in place to mitigate it, such as recycling/disposal options.
Not to defend the evils of large corporations, but at least in this case (copyright law), the only power they wield is given to them by the government. All the lawsuits take place in a court of law, which is a branch of the government. And they would have no chance of winning if there weren't statues and case law on their side, both of which were created by government bodies.
Of course, I don't think that the extreme power of copyright was created for such malicious purposes as the quote in the original post thought. In this case, I think it was just stupidity combined with just the right amount of corruption that brought it about. Unfortunately, it will take quite a few intelligent and non-corrupt politicians (and judges) to fix it. And we all know when that will happen.
Unfortunately, as a society, we seem to have decided to centre our actual lives around 13:00 instead. Switching permanently to DST would fix this.
Until our society decided to center our lives around 14:00.
For the past couple summers, I've been protesting DST by simply not changing any of my clocks. It takes a bit to get used to, but once you learn to translate times, it works out. And as someone who doesn't mind getting up earlier in the morning (though I do like to sleep in when possible), it does help you realize how you are making better use of your day.
But the number one thing I realized during my experiment is that DST by itself does nothing. The twice a year change is what makes it work. DST is really a trick (or a conspiracy, for the paranoid) to get people who would just as well sleep in to get up a little earlier. For some reason it was easier to get everyone to change their clocks than to convince everyone to start work an hour earlier. Maybe it's psychological -- getting up at 5 AM seems like a lot earlier than getting up at 6 AM. And going to be between 9 and 10 PM seems like a lot earlier than an adult should be going to bed.
As much as I think DST is an abomination, it probably can't go away. People simply don't know how or won't want to adapt to getting up earlier by themselves.
Since the case (and the RIP law) are in the UK, I'd imagine that our (the United States) Bill of Rights doesn't apply. You can draw your own conclusions as to whether that means the basic rule of justice applies.
Every time I think that the US government has gone off the deep end, it seems like the UK government is several steps ahead showing how much worse it could get.
Wal-Mart goes to a manufacture and says something like 'We want to sell your product and we will give you this dump truck full of money. All you have to do is lower your manufacturing cost by 30% by lower quality or outsourcing your workforce to Mexico.'
I seriously doubt that Wal-Mart says that last part. It may be implied, but I'd imagine that Wal-Mart couldn't care less how the manufacturer lowers the cost. I'd bet Wal-Mart would be trilled if the cost was lowered by the manufacturer making less in profit, but that probably doesn't happen very often.
Quite frankly, I see Wal-Mart as a kind of free market consumer union. Through Wal-Mart, consumers have banded together to demand lower prices. Some people see only the negative side effects of that (outsourcing, lower quality, etc). Of course, there are negative qualities of traditional workforce unions -- higher consumer prices, corruption, etc. That doesn't mean they're all bad or evil. These, like most organizations, have both positive and negative aspects.
Wal-Mart is just responding to what they perceive consumers want -- lower prices, at any cost. And given Wal-Mart's success, I'd assume that their perception was pretty accurate. But the great thing about a free market economy is that you don't have to shop at Wal-Mart. There are plenty of other stores that offer different levels of price and quality. The only thing that Wal-Mart does to them is force them to compete -- either lower their prices, or raise their quality. And that is a good thing.
My employer has implemented PeopleSoft and it's been nothing but a nightmare. Inaccurate accounts, never quote being sure how much money you have in an account, and the web interface.... It's like something out of 1997! This is 2007, and if Google and other companies can make sleek AJAX interfaces, you'd think on a multi-million dollar system like PeopleSoft they could at least build one that looks as though it's from this decade! PeopleSoft may not be the greatest, but at least their 1997-ish web interface works in browsers other than IE. Unlike these jokers, which my employer recently started using. The site that they set up for my company is so horribly broken there's no chance of getting it to work in FireFox. But somehow, IE ignores enough of the errors that it all works. I'll take a "primitive" but working interface over a fancy but non-functional interface any day of the week!
I often wonder, if I knew more about accounting, I bet I could put together a startup and make a piece of software which cleans their clocks. While I don't think writing an ERP solution for one company is particularly difficult (there would be challenges, but nothing a good team couldn't handle), writing a general solution that is easily customizable to every organization out there probably is. Every company has their own weird ways of doing things, and most slashdotters should be aware of how resistant people are to change. And you won't know them until you start trying to deploy your solution to them (and this is after convincing them to give your not "industry standard" company money in the first place). After a few iterations of that and your codebase has more special cases than the Federal Tax Code (possibly because of the Federal Tax Code), then you'll realize why PeopleSoft and SAP are so bad.
Maybe the boss is asking for input on what the poster's group thinks the metrics should be, based on their experience. Personally, I think this is better than coming up with some random metrics which may or may not be applicable or desirable. Taking your approach may cause bad metrics to be forced upon the department. For example, if the metric is the number of tickets closed per day, IT members would have no incentive to fix problems preventively. Notice some weird messages in a log file? Well, there's no ticket, so no sense wasting time to figure out what's wrong, unless a user complains.
Of course, I'm not in IT (I'm usually the guy calling complaining that the NFS server is down or something), but ISTM that having some input on how you are evaluated as an employee is a good thing.
Actually, man(1) intelligently wraps the man pages depending on your terminal width:)
But I do agree that having the IDE reformat your code is generally going to cause more problems than it's worth. Especially since I don't always use an IDE to look at code. Sometimes, I use a less, or even *gasp* print it out.
Maybe that's an indication that you should fix your design. Seriously, if you're 7 (or more) levels deep in your indentation, then you probably need to refactor your code. The problem with allowing more than 80 characters per line is that some developers will use that as an excuse to make more complicated lines or structures, as you suggest. Don't make an anonymous class, use a real class instead. It will be easier to follow and maintain in the future anyway.
Insane, but it's how patent law works (at least as I understand it in my IANAL way). Patents allow the patent holder to prevent others from creating, distributing, or even using the invention described in the patent. A patent license is a formal agreement that allows the licensee to use the patented invention. So yes, even as a Linux user, you (and I) could be named in a patent infringement suit. However that seems pretty unlikely to ever happen. It's not really worth it financially to go after individual users. I don't know what the financial harm of a single user infringing on a patent would be, but it's probably less than the cost of the lawyers to go after that user.
I'm not a tax expert, but I think all non-profits (503c organizations) don't have to pay taxes, including property and sales taxes. However, they may have to pay income taxes to their employees (I'm not really sure how that works). Churches are just the most prominent form of non-profit organizations in this country.
The 4th amendment protects against unreasonable searches and seizures. A wiretap, at a remote location, is not a search of your property, or a seizure of anything. If anything, wiretaps fall under the nebulous concept of a right to "privacy" that isn't explicitly codified in the constitution. Analogies are always risky, but it's kind of like the police putting a cop car outside your house. They can see many things you do and are essentially violating your privacy. We compensate for this by building walls and window shades.
On the internet, we try to compensate for other's snooping (and you're fooling yourself if you don't think others, be they corporate or government, are watching what you do) by using things like pseudonyms, encryption, and anonymizer services like Tor. We could do similar things for the phone system (encrypt all our traffic), but as another poster pointed out, no one really cares all that much. Much like no one cares that all their emails are probably being analyzed by some 3rd party. Usually, they don't even know, and ignorance is bliss. I would imagine most people would be a little angrier if they knew for a fact that their phone conversations (or even their emails) were being monitored. Which is why any such programs (if they exist, of course:) ), are kept secret.
Standard disclaimer: IANAL, and I have no knowledge of any monitoring programs, just suspicions.
Why would the police need to use pretexting (i.e., fraud) during the course of an official investigation? If they want to see someone's phone records, and have a legitimate reason to do so, they just get a subpoena and get the records officially. There is already judicial oversight in that process. Why on Earth would the police need to lie to get at records, unless they themselves were doing something illegal? If they don't even have enough evidence against someone to get a subpoena, then they're just harassing (presumably) innocent people and wasting everyone's time.
The only reason the MAFIAA want the ability to lie to get the records is because they cannot easily subpoena for them. And I agree that it's completely ridiculous. Of course, they're so used to lying all the time, I'm not that surprised.
I don't know if this is true in Vista, but in Windows 2000 and (I believe) XP, the default action on a system crash is to simply reboot instead of displaying a BSoD. There was a way to change the behavior to show the blue screen instead of just rebooting for those who are curious. On most systems, however, a spontaneous reboot was probably caused by a system crash.
This decision probably makes sense for most people, since very few people can make sense of the information displayed on the blue screen. For those people, rebooting is the correct course of action. However, I personally think MS made the switch because too many people were making fun of Windows' BSoD. Now, people talk about how they never get blue screens, so Windows must not be crashing.
Still, as the local computer geek for friends and family, I get incredibly frustrated when they get an OK/Cancel box and ask me what to click on, and I simply repeat the question in the box and they immediately understand and choose themselves. Vista's popups give me the impression that they'll alleviate this at least a little.
People are lazy. If they don't bother to read a simple sentence asking them what to do, one that once read to them they immediately know what to do, how likely do you think they'll be to read a dissertation on the question?
Mind you, I haven't used Vista (and don't plan to anytime soon, not when Linux works so well), so I haven't actually seen these dialogs, so maybe they do encourage users to read them better.
The great thing about having centrally managed setups (like you see so often with Windows) is that you can basically swap out workstations and have your complete environment right there. If something breaks on your workstation, you call IT, they bring you a new computer, swap it for your old one, and you continue working.
IME, this is exactly the opposite. At my company, I am fortunate enough to have a Sun as my main computer. I also have a Windows PC, mostly for doing SW builds (and I have no end of trouble because of that infernal machine, but that's not the point here). My company rents the Sun machines (not sure why, they think it saves them money, and I assume it does), so every couple of years, the IT guy comes around with gifts of new upgraded Suns. The only downtime when this happens is logging off my current machine, waiting for the physical replacement, and then logging into the new machine. Since everything is on the network, there is nothing to install, and I can continue working right where I left off, with all my personal settings (in/home) and everything. It's beautiful.
Contrast that to Windows. I've never had the IT guy come around and bring me a new, upgraded PC. And I wouldn't want him to either, since that would probably represent a day or more of downtime (well, of the build downtime). The software necessary for compiling would have to be reinstalled (not all of it is managed by the IT dept, so I have to do some work there). I would have to re-setup any preferences I liked (no roaming Windows profiles). If I forgot to save some script or configuration that was on the old PC, it's just gone. Definitely not a drop in replacement. Maybe it would be if I was just doing Office work (the default image for PCs does contain MS Office), but not for SW development.
A well run UNIX network is a thing of beauty. I had no idea how good it could be until I started working there and saw things just work. UNIX boxes can be drop in replacements, not Windows. Not by a long shot.
Thanks for posting this because it's a good point. The Internet core isn't reliable in that it it's not 100% reliable. Hosts on the edges cannot assume that packets will get through. So, we write good libraries to do acknowledgments and retries (the TCP of TDP/IP).
Of course, if the core of the Internet routinely dropped lots of packets (i.e., it was really unreliable), most of us would be pretty unhappy. Sure, we'd probably eventually get our data, but if only 50% of your packets got through, your transfers would grid almost to a halt. Exponential backoff on TCP window sizes really slow things down when you start dropping packets.
I don't know what percentage of reliability is required for smooth Internet operation, but I'd guess it's probably in the high 90s. So, while it's true that the design of the Internet is that it is not reliable, it does need to be mostly reliable to work well.
Thanks for the helpful post. Apparently all I needed to do was set LANG appropriately. Though it is odd that the default LANG makes Saturday the first day of the week. Maybe it's to encourage people to set LANG:)
I do have to admit that the Gnome clock is probably doing the right thing (relying on the underlying settings). It's too bad it's so difficult to set.
I agree. I use Gnome almost exclusively, but some things just drive me nuts. Would it really be such a bad thing if I could have different backgrounds on different virtual desktops? Or if I could change the settings on the screensavers (#1 reason why I still use xscreensaver over gnome-screensaver)? Or, God forbid, be able to configure the power applet so it doesn't pop up a dialog box every time the power flickers or my UPS decides to do a self test (though I think that's partially a problem with my UPS, I'm annoyed the option isn't there). And would it be so hard for the frickin' date applet to have Sunday as the first day of the week instead of Saturday? I know that one's possible, since I've seen Ubuntu installs like that, but why is my Gentoo still stuck with Saturday?
Maybe we need a Gnome fork that adds user configurability back in. I like the look and feel of Gnome, and Gnome 1.x was plenty configurable (I still sometimes miss having virtual desktops that were multiple screens tall and wide). Maybe there is a fork that I just don't know about?
You're right about poisoning the well. I once overheard someone saying something like "So what this Gnu company did was license the zip technology to make this gzip format." I almost cried.
I didn't bother correcting the speaker. It was just something I heard in passing, I didn't know the speaker, and I suspect that the truth would have just bored or confused him anyway. I did add it to my quotes file as one of the saddest things I've ever heard.
I'm pretty sure you would get a linking error when you linked your application against libfoo, because of the duplicate "clear()" symbol. So it's not easy to get into the situation you describe. Either You have to have 2 versions of libfoo -- one that links with ncurses and one that doesn't. You link your app against the libfoo without ncurses, then switch to the version of libfoo that uses ncurses at runtime. Obviously, this can happen pretty easily if you upgrade libfoo but don't recompile your application. Or you use something like dlopen(2) to load libfoo at runtime and bypass the linker checks (though I'm not sure that dlopen will add all those functions to the namespace).
.o files to get all the symbols. Fortunately, there is a way to pass this list of symbols to the linker so it will export them.
.manifest file that contains that information. But don't worry, there's an application (mt) that allows you to embed the manifest information in the EXE or DLL. Why the linker doesn't just do that by default, I don't know. And who knows what other fun MSVC 8 will bring to the table (we're only just experimenting with it now -- my company takes a very conservative view with upgrades, probably too conservative).
Of course, it's not like the Windows model is perfect either. By default, Windows exports no symbols as you mentioned. This is a problem if you have a codebase that was written on UNIX and expects all the symbols exported. At work, we have a script that trolls through the
Another problem is that by default Windows makes a copy of static variables (on a C++ class, at least) in each library and application? And that static variable is ONLY initialized in the library that declared the static and initialized it in it's source file? This is a real problem if you want to access a constant from a different library. To get Windows to not make a separate copy, you have to declare the variable with __declspec(dllimport) in the header file. Of course, that syntax is special for the MSVC compiler, and even worse, it cannot be there when compiling the library that contains that constant. So you have to have a special macro that is only enabled if you are NOT compiling the library the header is defined in. This for a while (I think in MSVC 6 and fixed in 7) caused libraries which used static std::map objects to have real problems on Windows (at least for us).
And then there's the problem that the MSVC linker tries to help you by only linking against libraries whose symbols your application explicitly uses. In theory, this is a good thing. But when my app links against libfoo, I want to make sure that libfoo is loaded at run time, even if the app doesn't explicitly use any symbols from it. I don't care that it looks to the linker that I'm not using the library. I know that libfoo's initialization will do stuff so that I can use it, even if I don't explicitly use anything from it (the app is only accessing base classes).
Another oddity is that even if the DLL wasn't found when linking on Windows, or is missing a dependency, it will still create the EXE with a missing dependency. While this is probably a good thing, it can cause a problem if the EXE is a test program that is supposed to run during the build process. Actually, if the test program just failed to run, that would be fine. However, when you run an EXE with a missing dependency, you get a nice popup telling you what the missing library is (that you cannot copy/paste from). The process that started the EXE (make) doesn't get control back until someone presses OK on the dialog. So this stops the build. And there's nothing better than getting to work in the morning to find that not only where there errors that prevented a library from compiling but also the fact that your build that should have been done now has hours more of testing (possibly with hundreds more popups) before you can work.
Apparently, in MSVC 8, the linker doesn't even write the list of dependencies to the EXE and DLL anymore. Instead, it creates a separate
Anyway, rant over.
You're right that ostrstream is a nasty class. Which is why if I always replace it with ostringstream if possible. The latter class is much more predictable, and ostringstream::str() returns a std::string, which is easy to use. In the product I work on (at work), streams are used quite often, especially when converting a non-string to a string.
.c_str() on it to open the file. A minor inconvenience, but it would be nice if a string constructor was there.
The bitshift operator overloading for streams is annoying from a purist point of view, but it works pretty well. And there really weren't any other better operators to co-opt.
My biggest complaint with C++ streams is that the ifstream and ofstream classes construct with const char* instead of with std::string. So, if I have a string containing the file to open, I have to call
There are still some of us out there who use the command line and traces to debug. Partly because it's too much of a pain to compile everything debug and partly because I've never become proficient enough with dbx or gdb to make them my first choice.
Personally, I see the command line as my way to talk to the computer. Without it, I'm just pointing and grunting like a caveman. And if that's all you want, I guess that's OK, but I prefer the eloquence and expressiveness of the command line.
Change the coal power plant to something else, say solar power or hydroelectric. How does the mercury stack up then?
I'm not saying that I don't use CFL bulbs, because I do. But saying things like "the amount of mercury is so small that this issue is laughable" will truly be laughable in 10 years when everyone is complaining about the "mercury crisis" from all the CFL bulbs that are being thrown out. I'm just afraid that we're trading one problem for another, more distributed one. Do not underestimate the multiplicative power of millions or billions. One car puts out so little pollution that it is "laughable" to think that it's a problem for the environment. But tens of millions of cars are a problem.
Sweeping the mercury issue under the rug is not responsible, IMO. It should be something that is stated up front so that everyone knows the potential danger and measures are put in place to mitigate it, such as recycling/disposal options.
Not to defend the evils of large corporations, but at least in this case (copyright law), the only power they wield is given to them by the government. All the lawsuits take place in a court of law, which is a branch of the government. And they would have no chance of winning if there weren't statues and case law on their side, both of which were created by government bodies.
Of course, I don't think that the extreme power of copyright was created for such malicious purposes as the quote in the original post thought. In this case, I think it was just stupidity combined with just the right amount of corruption that brought it about. Unfortunately, it will take quite a few intelligent and non-corrupt politicians (and judges) to fix it. And we all know when that will happen.
Unfortunately, as a society, we seem to have decided to centre our actual lives around 13:00 instead. Switching permanently to DST would fix this.
Until our society decided to center our lives around 14:00.
For the past couple summers, I've been protesting DST by simply not changing any of my clocks. It takes a bit to get used to, but once you learn to translate times, it works out. And as someone who doesn't mind getting up earlier in the morning (though I do like to sleep in when possible), it does help you realize how you are making better use of your day.
But the number one thing I realized during my experiment is that DST by itself does nothing. The twice a year change is what makes it work. DST is really a trick (or a conspiracy, for the paranoid) to get people who would just as well sleep in to get up a little earlier. For some reason it was easier to get everyone to change their clocks than to convince everyone to start work an hour earlier. Maybe it's psychological -- getting up at 5 AM seems like a lot earlier than getting up at 6 AM. And going to be between 9 and 10 PM seems like a lot earlier than an adult should be going to bed.
As much as I think DST is an abomination, it probably can't go away. People simply don't know how or won't want to adapt to getting up earlier by themselves.
Since the case (and the RIP law) are in the UK, I'd imagine that our (the United States) Bill of Rights doesn't apply. You can draw your own conclusions as to whether that means the basic rule of justice applies.
Every time I think that the US government has gone off the deep end, it seems like the UK government is several steps ahead showing how much worse it could get.
Wal-Mart goes to a manufacture and says something like 'We want to sell your product and we will give you this dump truck full of money. All you have to do is lower your manufacturing cost by 30% by lower quality or outsourcing your workforce to Mexico.'
I seriously doubt that Wal-Mart says that last part. It may be implied, but I'd imagine that Wal-Mart couldn't care less how the manufacturer lowers the cost. I'd bet Wal-Mart would be trilled if the cost was lowered by the manufacturer making less in profit, but that probably doesn't happen very often.
Quite frankly, I see Wal-Mart as a kind of free market consumer union. Through Wal-Mart, consumers have banded together to demand lower prices. Some people see only the negative side effects of that (outsourcing, lower quality, etc). Of course, there are negative qualities of traditional workforce unions -- higher consumer prices, corruption, etc. That doesn't mean they're all bad or evil. These, like most organizations, have both positive and negative aspects.
Wal-Mart is just responding to what they perceive consumers want -- lower prices, at any cost. And given Wal-Mart's success, I'd assume that their perception was pretty accurate. But the great thing about a free market economy is that you don't have to shop at Wal-Mart. There are plenty of other stores that offer different levels of price and quality. The only thing that Wal-Mart does to them is force them to compete -- either lower their prices, or raise their quality. And that is a good thing.
Maybe the boss is asking for input on what the poster's group thinks the metrics should be, based on their experience. Personally, I think this is better than coming up with some random metrics which may or may not be applicable or desirable. Taking your approach may cause bad metrics to be forced upon the department. For example, if the metric is the number of tickets closed per day, IT members would have no incentive to fix problems preventively. Notice some weird messages in a log file? Well, there's no ticket, so no sense wasting time to figure out what's wrong, unless a user complains.
Of course, I'm not in IT (I'm usually the guy calling complaining that the NFS server is down or something), but ISTM that having some input on how you are evaluated as an employee is a good thing.
Actually, man(1) intelligently wraps the man pages depending on your terminal width :)
But I do agree that having the IDE reformat your code is generally going to cause more problems than it's worth. Especially since I don't always use an IDE to look at code. Sometimes, I use a less, or even *gasp* print it out.
Maybe that's an indication that you should fix your design. Seriously, if you're 7 (or more) levels deep in your indentation, then you probably need to refactor your code. The problem with allowing more than 80 characters per line is that some developers will use that as an excuse to make more complicated lines or structures, as you suggest. Don't make an anonymous class, use a real class instead. It will be easier to follow and maintain in the future anyway.
Insane, but it's how patent law works (at least as I understand it in my IANAL way). Patents allow the patent holder to prevent others from creating, distributing, or even using the invention described in the patent. A patent license is a formal agreement that allows the licensee to use the patented invention. So yes, even as a Linux user, you (and I) could be named in a patent infringement suit. However that seems pretty unlikely to ever happen. It's not really worth it financially to go after individual users. I don't know what the financial harm of a single user infringing on a patent would be, but it's probably less than the cost of the lawyers to go after that user.
I'm not a tax expert, but I think all non-profits (503c organizations) don't have to pay taxes, including property and sales taxes. However, they may have to pay income taxes to their employees (I'm not really sure how that works). Churches are just the most prominent form of non-profit organizations in this country.
The 4th amendment protects against unreasonable searches and seizures. A wiretap, at a remote location, is not a search of your property, or a seizure of anything. If anything, wiretaps fall under the nebulous concept of a right to "privacy" that isn't explicitly codified in the constitution. Analogies are always risky, but it's kind of like the police putting a cop car outside your house. They can see many things you do and are essentially violating your privacy. We compensate for this by building walls and window shades.
:) ), are kept secret.
On the internet, we try to compensate for other's snooping (and you're fooling yourself if you don't think others, be they corporate or government, are watching what you do) by using things like pseudonyms, encryption, and anonymizer services like Tor. We could do similar things for the phone system (encrypt all our traffic), but as another poster pointed out, no one really cares all that much. Much like no one cares that all their emails are probably being analyzed by some 3rd party. Usually, they don't even know, and ignorance is bliss. I would imagine most people would be a little angrier if they knew for a fact that their phone conversations (or even their emails) were being monitored. Which is why any such programs (if they exist, of course
Standard disclaimer: IANAL, and I have no knowledge of any monitoring programs, just suspicions.
I think the OP was referring to Reason, the rail gun used in "Snow Crash". Everybody eventually listens to Reason.
Why would the police need to use pretexting (i.e., fraud) during the course of an official investigation? If they want to see someone's phone records, and have a legitimate reason to do so, they just get a subpoena and get the records officially. There is already judicial oversight in that process. Why on Earth would the police need to lie to get at records, unless they themselves were doing something illegal? If they don't even have enough evidence against someone to get a subpoena, then they're just harassing (presumably) innocent people and wasting everyone's time.
The only reason the MAFIAA want the ability to lie to get the records is because they cannot easily subpoena for them. And I agree that it's completely ridiculous. Of course, they're so used to lying all the time, I'm not that surprised.
I don't know if this is true in Vista, but in Windows 2000 and (I believe) XP, the default action on a system crash is to simply reboot instead of displaying a BSoD. There was a way to change the behavior to show the blue screen instead of just rebooting for those who are curious. On most systems, however, a spontaneous reboot was probably caused by a system crash.
This decision probably makes sense for most people, since very few people can make sense of the information displayed on the blue screen. For those people, rebooting is the correct course of action. However, I personally think MS made the switch because too many people were making fun of Windows' BSoD. Now, people talk about how they never get blue screens, so Windows must not be crashing.
People are lazy. If they don't bother to read a simple sentence asking them what to do, one that once read to them they immediately know what to do, how likely do you think they'll be to read a dissertation on the question?
Mind you, I haven't used Vista (and don't plan to anytime soon, not when Linux works so well), so I haven't actually seen these dialogs, so maybe they do encourage users to read them better.
IME, this is exactly the opposite. At my company, I am fortunate enough to have a Sun as my main computer. I also have a Windows PC, mostly for doing SW builds (and I have no end of trouble because of that infernal machine, but that's not the point here). My company rents the Sun machines (not sure why, they think it saves them money, and I assume it does), so every couple of years, the IT guy comes around with gifts of new upgraded Suns. The only downtime when this happens is logging off my current machine, waiting for the physical replacement, and then logging into the new machine. Since everything is on the network, there is nothing to install, and I can continue working right where I left off, with all my personal settings (in
Contrast that to Windows. I've never had the IT guy come around and bring me a new, upgraded PC. And I wouldn't want him to either, since that would probably represent a day or more of downtime (well, of the build downtime). The software necessary for compiling would have to be reinstalled (not all of it is managed by the IT dept, so I have to do some work there). I would have to re-setup any preferences I liked (no roaming Windows profiles). If I forgot to save some script or configuration that was on the old PC, it's just gone. Definitely not a drop in replacement. Maybe it would be if I was just doing Office work (the default image for PCs does contain MS Office), but not for SW development.
A well run UNIX network is a thing of beauty. I had no idea how good it could be until I started working there and saw things just work. UNIX boxes can be drop in replacements, not Windows. Not by a long shot.
Thanks for posting this because it's a good point. The Internet core isn't reliable in that it it's not 100% reliable. Hosts on the edges cannot assume that packets will get through. So, we write good libraries to do acknowledgments and retries (the TCP of TDP/IP).
Of course, if the core of the Internet routinely dropped lots of packets (i.e., it was really unreliable), most of us would be pretty unhappy. Sure, we'd probably eventually get our data, but if only 50% of your packets got through, your transfers would grid almost to a halt. Exponential backoff on TCP window sizes really slow things down when you start dropping packets.
I don't know what percentage of reliability is required for smooth Internet operation, but I'd guess it's probably in the high 90s. So, while it's true that the design of the Internet is that it is not reliable, it does need to be mostly reliable to work well.
Thanks for the helpful post. Apparently all I needed to do was set LANG appropriately. Though it is odd that the default LANG makes Saturday the first day of the week. Maybe it's to encourage people to set LANG :)
I do have to admit that the Gnome clock is probably doing the right thing (relying on the underlying settings). It's too bad it's so difficult to set.
I agree. I use Gnome almost exclusively, but some things just drive me nuts. Would it really be such a bad thing if I could have different backgrounds on different virtual desktops? Or if I could change the settings on the screensavers (#1 reason why I still use xscreensaver over gnome-screensaver)? Or, God forbid, be able to configure the power applet so it doesn't pop up a dialog box every time the power flickers or my UPS decides to do a self test (though I think that's partially a problem with my UPS, I'm annoyed the option isn't there). And would it be so hard for the frickin' date applet to have Sunday as the first day of the week instead of Saturday? I know that one's possible, since I've seen Ubuntu installs like that, but why is my Gentoo still stuck with Saturday?
Maybe we need a Gnome fork that adds user configurability back in. I like the look and feel of Gnome, and Gnome 1.x was plenty configurable (I still sometimes miss having virtual desktops that were multiple screens tall and wide). Maybe there is a fork that I just don't know about?
The core should be application-unaware, stupid, unreliable, and as simple as possible.
:)
Well, maybe not that one
You're right about poisoning the well. I once overheard someone saying something like "So what this Gnu company did was license the zip technology to make this gzip format." I almost cried.
I didn't bother correcting the speaker. It was just something I heard in passing, I didn't know the speaker, and I suspect that the truth would have just bored or confused him anyway. I did add it to my quotes file as one of the saddest things I've ever heard.