Do you know how many people still think that Yahoo is still the "Internet Home Page", simply because it was the first page they learned about 5 years ago?
From my experience with a lot of users, practically none. Few of them remember what page they were visiting 5 years ago.
Most people still think Yahoo is "the Internet homepage" because IT IS: Yahoo is the default home page in their machines, and has been ever since they got a computer with a home page.
Now, ask how many of them use it as a search engine? The number decreases dramatically to almost nil.
Yahoo made a brandname of itself for the Internet, because it had a better opportunity to do that than anyone else. But the identification of their brandname has moved to the products where they are still competitive. The name itself did not buy them much "Internet time".
Do you think that AOL is the biggest ISP because of value?
YES.
If you are so elitist and blind not to realize that what the average user values is very different from what you value (or myself, for that matter), that's another matter.
I may prefer rusted nails through my eyeballs to use AOL instead of plain Internet access, but that's because what I value of the Internet is different from what other users consider useful/important.
For many users, AOL IS the Internet, and they're very happy with that concept. It's not just marketing: Microsoft was unable to take over that market, and few are as marketing-savy. It's not just network effect, although there is a lot of that which would force MS or anyone else to come up with a MUCH better product to compete, rather than a marginal one.
The fact is that users have a lot of choice for ISPs, but they CHOOSE AOL. Every time their OEM, local PC consultant, telephone company, techie neighbor, etc. tries to convince them to switch (which is about every day for a lot of them) they stick to AOL.
AOL provides them with added value:
An integrated client with cute graphics that limits their options to something they can manage. An icon so they can "launch" the Internet. A messenger system so they can talk to their friends. An application that installs nicely (even if it breaks the rest of the system) without them worrying about configuring "network connections", dealing with IP addresses, etc. A network of equally non-techie friends using AOL that can provide "expertise" without the bills or the constant mocking of the local geek.
There is a significant difference in the system of values: - The fact that you can do each task better with another application is not as attractive to them because it increases the complexity of "the Internet" for them. - The fact that you can do things not defined by the AOL client also increases the complexity of what "the Internet" is more than they want. - Tha fact that the AOL client almost always breaks something else does not seem a problem with AOL to them, because it's always something ELSE that breaks, not AOL. - The fact that AOL is a big memory and CPU hog for what it does is not a problem, because they got a P4 from Intel to "speed up the Internet".
Average users don't want plain-Internet-access. They WANT something like AOL. They don't want flexibility, they want something that encapsulates the Internet: what the AOL client lets them do with a button, is what the Internet is.
This will change over time, as the concept of the average user, or rather, the average consumer (the guy paying the bills) changes.
Doing "sometimes better" does not cut it. The local psychic network or a fortune cookie is "sometimes better" at predicting health issues than a doctor, but people tend to trust entities with the best average results.
They switched to Google for reasons other than name, they will only stick to it as long as those reasons are valid.
The name didn't keep Altavista "alive", even though it was THE engine for long time. It still works, and I do use it every once in a while (for very specific searches), but the fact is its brand name value has been quickly nullified.
Yahoo couldn't survive on brand name alone either, even though they have the advantage of being an Internet historical landmark of sorts. And yet, for most people I know these days, Yahoo as a brand is more of an email/newsgroups service than a search engine.
"Name alone" does not keep a company alive in the Internet. There is little or no customer loyalty, specially in something as competitive as the search engine service.
Google will be successful only as long as it is consistently better than its known competitors at what it does, and competitors become known very quickly... Whenever a new search engine becomes distinctly better than Google, it will take over. That's how Google took over in the first place.
I don't know of anyone who pays the 60K/year CPA to do data entry. They audit (throughly) the entries made by other people, although sometimes more often than once a month. They also have to define the accounting methods to be used, prepare legal paperwork, and be available for consultation on demand.
On the same vein, I don't know anyone who pays a manager to type memos, a lawyer to write briefs, a developer to type lines of code. Those are means to the ends they are hired for, and more often than not can be accomplished by assistants. Their 1337 data entry skills are not the point.
You are right that a lot of companies don't need a full-time 60K/year CPA, just like a lot of companies don't need full-time lawyers. That's why there are plenty of accounting and legal firms whose services they can retain.
Having no accountant in the loop however, is just asking for trouble.
- If the salary of a FUNCTIONAL accountant goes down to 25K, sure, you can get away with that. By then the salary of the CPA will have gone down dramatically as well, though.
However, I think you're missing my point. The question is not whether you can find someone with skills to work for 25K/year. The question is whether that person is being paid enough (from the POV of the employee and the market) for the accounting responsabilities to assume them, excel in the job, and deal with the potential consequences of failure.
Example: in the current market you can find very cheap IT labor. But you cannot just put any coder/IT-person in the role of CTO at the same salary. You may have to pay less (much less) for the CTO than before, but you still have to deal with the fact that the job implies other responsabilities and requires different compensation.
- Regarding Microsoft saving money, let me quote myself in the original message:
"Since so many people got confused, I'll be specific:
Linux needs a Quickbooks clone because providing an alternative for the company accountant (CPA or not) removes one of the few remaining Big Reasons not to switch the whole company to Linux, which is where you can see the savings."
There are many cases where Linux does not save significant amounts of money per workstation, and this is one of them. Linux saves significant amounts of money per company, however, and allows you to keep a loose coupling of your business strategy from Microsoft's (or anyone's).
Actually, I expect, as Linux grows in acceptance, that its existence will save money for both Linux and MS users, because MS and other companies will be forced by the new market to deal with users differently.
- Medium sized companies may be doing just what you said. They may be getting themselves in trouble because of that... The cases I've seen it happen are cases I hope they don't get audited.
If you want to save yourself the CPA, by all means go ahead, but don't put that responsability on the hands of a 25K secretary with a typing-speed certificate.
Put that responsability on a decently-paid employee that has some accounting experience/knowledge, and is compensated enough to CARE.
It's not that accounting is a complex task. It's that it involves a lot of legal/financial responsability, and some common-sense criteria and ethics that should not be easy to invalidate (by say, the boss suggesting they classify personal expenses as company expenses).
At worst, put it in the hands of the owner of the company.
Accountants for small companies are like managers. They're well paid not because they have to be intelligent, educated or technically capable. They are well paid because their decisions have strategic consequences for the company, therefore they carry more responsabilities, and their mistakes are more costly (and should be made more costly to them as well).
- I never said the secretary was not terrified of Windows. READ MY COMMENT.
I said that a secretary is terrified of even a change in their screen saver settings. I'm being specific, because I've seen that, and more, happen. (The same applies to any generic non-techie office worker, as a matter of fact).
It follows that they will be terminally terrified by Linux. Why? I've seen it happen too.
It may be simpler and more secure once you restrict the environment, but it is also totally foreign to them. The environment is different. The applications are different. The expectations are different.
Fear precedes any interaction that may quell the fear by a long shot.
It's not just that they fear they'll "break something". They feel essentially lost. They fear after taking Office courses at the local community college their resume skills just flew through the window (no pun intended).
They don't like it, and it will cost you more than the Windows license before they get used to it.
I've seen them terrified by a Mac, for that matter.
Please go back and read my comment again. I'm not disagreeing that Linux needs Quickbooks. I'm not disagreeing that Linux has a place in the office.
I'm just saying the dream of firing your accountant and replacing that person with an underpaid secretary running a Quickbooks clone on Linux is a very, very, very stupid bad idea.
Since so many people got confused, I'll be specific:
Linux needs a Quickbooks clone because providing an alternative for the company accountant (CPA or not) removes one of the few remaining Big Reasons not to switch the whole company to Linux, which is where you can see the savings.
It's just more likely someone already did it before you.
And if you have had to teach a few secretaries to use Excel/Quickbooks/Access from scratch at any point in your life, you know you don't want to do it again if possible.
For them, it's specialized knowledge. They are not used to switch applications often, and you will be the one paying for that in terms of training, time, and wasted productivity.
As right as you are about needing a Quickbooks replacement, you have to be insane to put your 25K secretary to do the job of the CPA.
And you have to be a bit silly to ask her to do that on Linux if you can actually save that much money with Quickbooks.
Hint: a 25K secretary that knows how to use Windows & Apps is easier to find than one who is not terrified of Linux, or of a change in their screensaver for that matter.
If Quickbooks or similar apps let you cut off the CPA, why isn't every company doing that?
This could be an interesting case to test and confirm the legal viability and enforceability of the GPL.
The importance of that is not trivial. It means that developers will not only be able to trust the GPL to protect the intentions they had when sharing their code, but also that whatever developers/companies were not taking the GPL seriously will have to change their attitude.
However, I can't help but wonder at the weakness of some of the assertions, in my non-lawyerish view. In particular:
"The GPL is selectively enforced by the Free Software Foundation such that enforcement of the GPL by IBM or others is waived, estopped or otherwise barred as a matter of equity."
What does this mean?
The original PDF seems to be slashdotted, so I can't help but think I'm missing something here.
Are they saying that because the FSF enforces the GPL for their software, I cannot enforce it for mine?!
Are they claiming that if I license my code under the GPL, I'm somehow magically transferring my copyrights to the FSF?
Or even worse, that I'm renouncing the rights to defend the copyrights I still own to give them to the FSF?
I don't get it.
When did I lose my rights to enforce the license I, as a developer, put on my own code?
Re:moving towards bloatware or are these important
on
C# 2.0 Spec Released
·
· Score: 1
Remember that old idea of backwards compatibility?
Removing features of any significance usually means turning the language into a new one.
Remove pointers, multiple inheritance, enumerations, templates, structs, and some other stuff from C++ and what do you get? Java minus garbage collection.
"All they need to do" demeans the difficulty of that task.
The whole point of strenghtening the ID system (whatever ID system is used) is that to "steal the identities" is not that easy anymore. It's going to be rather difficult to come up with a fake or stolen valid US passport or VISA that will not be detected through customs; and now with biometrics in place...
The other solution, recruiting "virgins" to do the dirty work, is not that easy either.
Valid US passports are only easy to acquire for American citizens, who already have freedom of transit, etc... but they are not that easy to recruit. In part, that's why it's such a scandal when you find American terrorists linked to attacks to the US. Keeping an influx of "virgin terrorists" with US citizenship would require significant recruitment efforts, which would be difficult to keep at low profile.
VISAS are definitely not that easy to get anymore in a lot of countries (and still not trivial in the rest), are much easier to revoke. To recruit "virgin terrorists" on other countries, then have them go through the necessary paperwork (and background check), then have them go through the necessary interview at the US embassy/consualte... that's for each terrorist action. It implies recruiting people with no known links to your organization, who can "keep their cool" through the process, and are able enough to act independently on whatever they're supposed to do based only on their training.
In either case that is a costly, risky endeavor. It makes the terrorists' life more difficult, their activities easier to detect, etc.
Put it this way:
"All I need to do" to hack into a Linux box with an slightly out-of-date SSH daemon running is to find and exploit a known vulnerability. But that requires dramatically more work and expertise than logging to a telnet server with a user/password pair I got by sniffing on a connection. The owner of the SSH server is also more likely to know and be prepared for the kind of attack I'm making, log my activites, block any real damage and actually retaliate.
Of course, this whole National ID idea will not solve the problem, will create brand new problems, and will disguise the fact that nothing is solved.
But that's not because a National ID is per se a Bad Idea, or because it cannot help in these matters. Rather, it's because the approach they are taking is completely wrong and based on "a sense of security" rather than actual security, much like the approach to airport security. The end result will be much more Big Brotherish than necessary (because it increases the "feel" something is done) and much less effective than it could be.
On the other hand, a real National ID could prove useful for the US in much more than the terrorism problem, IFF it were handled properly and with full awareness of the implicit dangers.
To start with, you would remove the need for a de facto, but completely unregulated, national identification system through SSNs. Currently you have most of the worst possible scenarios for a National ID combined in the private industry handling of SSNs numbers and personal information.
You could instead keep a much tighter control on what kind of information is linked to the formal National ID identifier, both in public and private entities.
Correct me if I'm wrong, but many of those people with passports were "out of status" on their legal rights to be in the US. They had entered with VISAS that expired and/or whose conditions were violated for X or Y reason.
In particular, some of them were F1 students who had abandoned their sponsoring schools, which has been used as excuse by the US government to harass the F1 students who do keep legal status with a lot of new legal baggage and a brand-new failure of a database that demonstrates very well WHY a new national ID system would fail in the US.
These people also had valid driver licenses, which can be used to board national flights without providing any other form of identification. This has been used as an argument by the US to make it a pain in the ass for foreigners to get a driver license, more in terms of paperwork and waiting lines than difficulty per se, but a pain nonetheless.
None of this would apply if they required passports to take national planes. From the passports, customs can immediately verify that a foreigner is in legal status within the country, or that an American citizen has no records of terrorist activities (or that he/she's not a federal fugitive, for that matter).
Of course, the government can maliciously deny passports to foreigners they don't like. Those foreigners should not be in the country anyway. I don't think they can maliciously deny passports to its own citizens, though... if they did, they would have to stop for the system to work. The government would want "people the government doesn't like" to have passports, so that you can track them.
This is already done at the international-entry level. The database is already there, it's already checked, it is definitely already linked to the appropriate criminal records, and it already presents opportunities for invasion of privacy, abuse of power, etc. etc.
It would also solve the same problems a new National ID would solve. It would let the US government track legally abiding foreigners and US citizens. It would force terrorists to take buses and rent cars for their nefarious activities.
The only difference is that the database is already there, there's personnel already trained to do this, and the risk of failure is dramatically lesser. The budget of the government contract would also be correspondingly smaller. Don't consider this an accident.
Corporations are legal entities that represent the common intentions of a group of humans. They gain their "personhood" by aggregation of the personal rights of those they represent.
They are representative persons.
For example, governments are corporations that represent the common intentions (and implicit social contract) of a large group of people (citizens) within a geographic area (nation/state).
Touching on the increased class participation and confidence in an all-female classroom...
Wouldn't it be better if we could get the same results in a co-ed environment from the same girls? Wouldn't this offer a good opportunity for that, as well?
In my experience as a student, I did find it more common for girls and women to be less aggressive about demonstrating knowledge... but more worrying, also less confident about the knowledge they did have. On the other hand, males tended to be not only more aggressive in class participation, but also commonly overconfident about their own knowledge... often talking before throughly thinking through or understanding the subject.
A guy was more likely to SEEM like he knew what he was doing, even if he had to BS his way through... on the other hand, a woman was more likely to understate her own skills, even if she was more competent. After all, everyone around SEEMS to know more...
I guess experience teaches patience and moderation quickly (and harshly), but confidence is more difficult to acquire: by a vicious cycle, those with less confidence are not as eager to experiment without guidance, getting less experience, etc.
I can see how in a large classroom separating the sexes would be an effective method to give girls a more neutral environment, less intimidating to participate in (perhaps because it removes the alpha-male competition process). However, this neutral environment does not reflect real-life, even if it helps to increase their confidence.
I can also see how it would be difficult to achieve the same results in a big classroom, as it would probably require dedicating personal attention to most girls and keeping a very good control of the social dynamics of a high-school class.
But smaller social groups, like those formed in extracurricular activities of these kind, have less complicated social dynamics, less students to dedicate attention to, and more opportunities for personalized attention. In general, I would think with mixed genders they are the perfect opportunity for girls not only to acquire confidence on their knowledge and their ability to participate and help, but also to do it in the real-world, without being intimidated by the occassional "pissing contests", etc.
Loosely, an agent is whatever the person writing about agents decides it to be within the given context.
There is no consensus about what agents are.
For some, it's about perceptors, plans and things that are perceived. For others, it's about beliefs, desires and intentions. For others it's about autonomous systems with a certain level of intentionality. For others it's just about active objects that can be mobile and communicate through some intermediate language. And yet for others it's just an approach to software modelling techniques that end up in the same old mix of active and passive objects as always.
I'm sure I missed at least 4 or 5 interpretations that ALSO have plenty of academic literature supporting them.
The rough division seems to be on whether an agent is an AI system (with plenty of models to choose) or whether it's a set of techniques, characteristics and software engineering approaches (also with plenty to choose) that lets us speak about software in anthropomorphic terms without messing up.
At least that was the situation described in the literature I have read recently.
On the other hand, if I'm wrong and the world has finally reached a consensus on what they mean when they talk about agents, be so kind as to send me the post-2002 papers announcing that. It will probably save me a lot of reading in the near future.
I don't know if there's an Apple store at every block where you live, but that's not true in most of the US.
Even if they were very common, most Average Joe don't "hang out" at the local Apple store. Or at the local CompUSA for that matter.
They go to BestBuy or some other mainstream electronics store at the mall to check out the DVDs or whatever.
Going to the Apple store typically requires getting into your car and driving specifically to the Apple store, to dedicate a couple of hours of your time to PONDER whether you would want an Apple or not.
If you're publicizing an API, then you should be dealing with classes, not structs, for those reasons and more.
If you're using a struct, you're making some very strong assumptions about your data structure. You're also making an optimization in the process, whose validity depends on those assumptions.
You're assuming it has no behavior. You're assuming it will NEVER have behavior. You're assuming it's simple enough that you don't need to check for value constraints, or anything like that.
As a result, you should not let anyone, including yourself, extend that struct, either to add data members or behavior. If you have to, your assumptions were wrong... if you even imagine you might have to, your assumptions are wrong. Don't use a struct.
If the rules changed for you in the middle of the game and you need to replace the struct, you are then forced to communicate to everyone else that the assumptions have changed by changing the type. I would consider this a good thing.
Obviously, you should think carefully before sharing structs with others. But this applies to any data type that implies very strong assumptions which might not be shared with others... you have to wonder if your users need that, and if they do you have to enforce and document those assumptions before they break your application.
Funny. Although I too would like to use a structure every once in a while in Java, I fail to see the lot of extra code or the outstanding convenience of C++.
I very often encapsulate the data variables I'm dealing with, if they are complex and interrelated, into a custom data structure in Java... This takes all the effort of:
final class SillyClassThatIsReallyAStruct {
public type var1;
public type var2;.... etc... }
The only reason I would like a struct in Java is to avoid the constructor invocation and implying garbage collection when using those data structures. But really, there is no extra work here, unless a couple extra characters per keyword bother you immensely.
Since they are normally data structures of use only for my package, I can put them all in a single file or, even better, inside the only class that uses it.
If the data structure is so useful and important that it should be made public and shared with the rest of the world, then by all means give it its own.java file.
I agree wholeheartedly with Stroustrup's advice. But that's not a Java/C++ issue, that's a programmer issue:
The only kind of idiot who's going to implement getters/setters for a data structure with no behavior IF there is no need, is the same kind of idiot who will do it in either Java or C++.
On the other hand, good Java developers often tend to be very careful about making sure there is really no behavior in this data structure (and therefore is not an object). And specially about imposing such assumptions on the rest of the world that uses the data structure (which is I am skeptic about making any such structs public).
But you do have a point that they could put at least 10% as much effort on demoing the Macs to the PC crowd as they do in pleasing the loyalists with quasi-religious conventions and events.
Maybe they could give away environmentally-unsafe CDs for x86s, a la AOL, but full of animated presentations and videos showing OS X "at work".
Maybe the Apple stores would be a good step in the right direction, if they did more to get the PC crowd into the stores in the first place.
The Linux community is doing a decent job of giving their OS some "give it a try" exposure in schools and colleges. It's not so much about "converting everyone", as about getting them familiar enough with the product that they are not afraid to use it when they have to... or that they can make the jump, when they want to, without it feeling like an adventure into the (risky) unknown.
Apple, as a consumer-oriented company, could do better there, and in more consumer-oriented environments like computer and electronic stores. Specifically, I think Apple needs to collaborate much more tightly with mainstream computer/electronic stores.
I've been in computer stores that have Apple sections (CompUSA) with hardware to play, but I was neve approached by an enthusiastic salesman wanting to demo the products I was browsing out of curiosity. This is in contrast with my experience just passing through PC desktops and laptops, where I was CONSTANTLY bothered by some salesman trying to show off their overpriced Compaq/HPs.
I find it ironic because, as a PC geek, I believe any salesman who can't tell me the motherboard model and specs of the PC is wasting my, and his, time. But even unsophisticated PC users don't need a salesman to tell them they can watch DVDs or access the Internet with a computer.
However, as a non-Mac user, I would find a full demo of the product interesting, and probably convincing and useful. It would clear whatever doubts I had about whether I can do with my Mac everything I can do with my PC. It would give me the opportunity to ask questions (e.g.:"how do I access my printer in my other PC in the network?") on a whim.
I could get that at an Apple store, obviously. But that implies I'm already thinking of buying an Apple, and went to the trouble of going to an Apple store, where I don't have the option of comparing or buying a PC. That's a prelude to a buying decision. Window-shopping at an Apple store requires the buyer to consider Apple seriously before they are given the sales pitch to convince them to do so.
If I see this as an investor, I have a much better (at least for them) reason than personal ethics to avoid the company like the plague:
Their use of the DMCA against a student who pointed out their product DOESN'T WORK, means that indeed their product DIDN'T WORK, and that they're not interested into the whole "getting it to WORK" part. They would rather keep quiet about it.
Which tells me they have no working product.
Which tells me they won't be making me money anytime soon.
They probably don't care about people with ethical concerns about the DMCA, because most investors don't either. But this is pretty basic logic that applies to any investor: if the best thing they can do is claim skipping Autorun is a secret of the black arts of DRM hacking, no one is going to give them money.
Since it's all compiled to their Intermediate Language, I suspect they just locked a VB programmer in a room and told him to draw a table mapping the keywords.
Hi, I'm FooSoft, or some other big-time development house that competes directly with Game Company X in both the game and engine market.
I have a pretty good game engine, but I'm falling behind in some features and will probably be 2 months late to market. The Hype surrounding complicated features A,B,C in Game Company's X engine has gamers drooling and we have problems developing those in our engine.
I'll just go and take a peek at some stolen code I found on the Internet and see how Game Company X solved A,B,C. Then I'll reimplement those algorithms in my engine and tell my engineers to concentrate on features D,E,F, so we can either beat them to market or have a better feature set... without the cost of R&D.
It'll be very difficult to provide a court with reasonable suspicion that there was theft of IP. The engines are different, and it would require considerable litigation and arguing to prove the trivial modifications a competent programmer can make to obfuscate the similarities in implementation.
Yet, the algorithms or even the architectural solution to a software problem may have taken months of R&D. A revolutionary new way to handle body-modeling, AI bots, etc almost certainly qualify as trade secrets, the kind of thing that gets you an important advantage in the market.
Industrial spionage is not just an invention of airport-store novels and crappy movies; the bounties, risks and liability are the same.
Considering that ID's games have become little more than extended demos for their 3D engines, and that 3D engine licensing revenues can survive well beyond the popularity of the game it was developed for, IP theft could be a very real problem in this case.
The original post had a very good point in how easily that is dismissed by the Slashdot crowd.
I think this is another example of the "Windows sucks too" argument, from point 4.
From my experience with a lot of users, practically none. Few of them remember what page they were visiting 5 years ago.
Most people still think Yahoo is "the Internet homepage" because IT IS: Yahoo is the default home page in their machines, and has been ever since they got a computer with a home page.
Now, ask how many of them use it as a search engine? The number decreases dramatically to almost nil.
Yahoo made a brandname of itself for the Internet, because it had a better opportunity to do that than anyone else. But the identification of their brandname has moved to the products where they are still competitive. The name itself did not buy them much "Internet time".
YES.
If you are so elitist and blind not to realize that what the average user values is very different from what you value (or myself, for that matter), that's another matter.
I may prefer rusted nails through my eyeballs to use AOL instead of plain Internet access, but that's because what I value of the Internet is different from what other users consider useful/important.
For many users, AOL IS the Internet, and they're very happy with that concept. It's not just marketing: Microsoft was unable to take over that market, and few are as marketing-savy. It's not just network effect, although there is a lot of that which would force MS or anyone else to come up with a MUCH better product to compete, rather than a marginal one.
The fact is that users have a lot of choice for ISPs, but they CHOOSE AOL. Every time their OEM, local PC consultant, telephone company, techie neighbor, etc. tries to convince them to switch (which is about every day for a lot of them) they stick to AOL.
AOL provides them with added value:
An integrated client with cute graphics that limits their options to something they can manage. An icon so they can "launch" the Internet. A messenger system so they can talk to their friends. An application that installs nicely (even if it breaks the rest of the system) without them worrying about configuring "network connections", dealing with IP addresses, etc. A network of equally non-techie friends using AOL that can provide "expertise" without the bills or the constant mocking of the local geek.
There is a significant difference in the system of values:
- The fact that you can do each task better with another application is not as attractive to them because it increases the complexity of "the Internet" for them.
- The fact that you can do things not defined by the AOL client also increases the complexity of what "the Internet" is more than they want.
- Tha fact that the AOL client almost always breaks something else does not seem a problem with AOL to them, because it's always something ELSE that breaks, not AOL.
- The fact that AOL is a big memory and CPU hog for what it does is not a problem, because they got a P4 from Intel to "speed up the Internet".
Average users don't want plain-Internet-access. They WANT something like AOL. They don't want flexibility, they want something that encapsulates the Internet: what the AOL client lets them do with a button, is what the Internet is.
This will change over time, as the concept of the average user, or rather, the average consumer (the guy paying the bills) changes.
Doing "sometimes better" does not cut it. The local psychic network or a fortune cookie is "sometimes better" at predicting health issues than a doctor, but people tend to trust entities with the best average results.
They switched to Google for reasons other than name, they will only stick to it as long as those reasons are valid.
The name didn't keep Altavista "alive", even though it was THE engine for long time. It still works, and I do use it every once in a while (for very specific searches), but the fact is its brand name value has been quickly nullified.
Yahoo couldn't survive on brand name alone either, even though they have the advantage of being an Internet historical landmark of sorts. And yet, for most people I know these days, Yahoo as a brand is more of an email/newsgroups service than a search engine.
"Name alone" does not keep a company alive in the Internet. There is little or no customer loyalty, specially in something as competitive as the search engine service.
Google will be successful only as long as it is consistently better than its known competitors at what it does, and competitors become known very quickly... Whenever a new search engine becomes distinctly better than Google, it will take over. That's how Google took over in the first place.
Uh?!
Isn't that what Quickbooks is all about?
I don't know of anyone who pays the 60K/year CPA to do data entry. They audit (throughly) the entries made by other people, although sometimes more often than once a month. They also have to define the accounting methods to be used, prepare legal paperwork, and be available for consultation on demand.
On the same vein, I don't know anyone who pays a manager to type memos, a lawyer to write briefs, a developer to type lines of code. Those are means to the ends they are hired for, and more often than not can be accomplished by assistants. Their 1337 data entry skills are not the point.
You are right that a lot of companies don't need a full-time 60K/year CPA, just like a lot of companies don't need full-time lawyers. That's why there are plenty of accounting and legal firms whose services they can retain.
Having no accountant in the loop however, is just asking for trouble.
- If the salary of a FUNCTIONAL accountant goes down to 25K, sure, you can get away with that. By then the salary of the CPA will have gone down dramatically as well, though.
However, I think you're missing my point. The question is not whether you can find someone with skills to work for 25K/year. The question is whether that person is being paid enough (from the POV of the employee and the market) for the accounting responsabilities to assume them, excel in the job, and deal with the potential consequences of failure.
Example: in the current market you can find very cheap IT labor. But you cannot just put any coder/IT-person in the role of CTO at the same salary. You may have to pay less (much less) for the CTO than before, but you still have to deal with the fact that the job implies other responsabilities and requires different compensation.
- Regarding Microsoft saving money, let me quote myself in the original message:
"Since so many people got confused, I'll be specific:
Linux needs a Quickbooks clone because providing an alternative for the company accountant (CPA or not) removes one of the few remaining Big Reasons not to switch the whole company to Linux, which is where you can see the savings."
There are many cases where Linux does not save significant amounts of money per workstation, and this is one of them. Linux saves significant amounts of money per company, however, and allows you to keep a loose coupling of your business strategy from Microsoft's (or anyone's).
Actually, I expect, as Linux grows in acceptance, that its existence will save money for both Linux and MS users, because MS and other companies will be forced by the new market to deal with users differently.
- Medium sized companies may be doing just what you said. They may be getting themselves in trouble because of that... The cases I've seen it happen are cases I hope they don't get audited.
If you want to save yourself the CPA, by all means go ahead, but don't put that responsability on the hands of a 25K secretary with a typing-speed certificate.
Put that responsability on a decently-paid employee that has some accounting experience/knowledge, and is compensated enough to CARE.
It's not that accounting is a complex task. It's that it involves a lot of legal/financial responsability, and some common-sense criteria and ethics that should not be easy to invalidate (by say, the boss suggesting they classify personal expenses as company expenses).
At worst, put it in the hands of the owner of the company.
Accountants for small companies are like managers. They're well paid not because they have to be intelligent, educated or technically capable. They are well paid because their decisions have strategic consequences for the company, therefore they carry more responsabilities, and their mistakes are more costly (and should be made more costly to them as well).
- I never said the secretary was not terrified of Windows. READ MY COMMENT.
I said that a secretary is terrified of even a change in their screen saver settings. I'm being specific, because I've seen that, and more, happen. (The same applies to any generic non-techie office worker, as a matter of fact).
It follows that they will be terminally terrified by Linux. Why? I've seen it happen too.
It may be simpler and more secure once you restrict the environment, but it is also totally foreign to them. The environment is different. The applications are different. The expectations are different.
Fear precedes any interaction that may quell the fear by a long shot.
It's not just that they fear they'll "break something". They feel essentially lost. They fear after taking Office courses at the local community college their resume skills just flew through the window (no pun intended).
They don't like it, and it will cost you more than the Windows license before they get used to it.
I've seen them terrified by a Mac, for that matter.
Please go back and read my comment again. I'm not disagreeing that Linux needs Quickbooks. I'm not disagreeing that Linux has a place in the office.
I'm just saying the dream of firing your accountant and replacing that person with an underpaid secretary running a Quickbooks clone on Linux is a very, very, very stupid bad idea.
Since so many people got confused, I'll be specific:
Linux needs a Quickbooks clone because providing an alternative for the company accountant (CPA or not) removes one of the few remaining Big Reasons not to switch the whole company to Linux, which is where you can see the savings.
It is not any easier.
It's just more likely someone already did it before you.
And if you have had to teach a few secretaries to use Excel/Quickbooks/Access from scratch at any point in your life, you know you don't want to do it again if possible.
For them, it's specialized knowledge. They are not used to switch applications often, and you will be the one paying for that in terms of training, time, and wasted productivity.
As right as you are about needing a Quickbooks replacement, you have to be insane to put your 25K secretary to do the job of the CPA.
And you have to be a bit silly to ask her to do that on Linux if you can actually save that much money with Quickbooks.
Hint: a 25K secretary that knows how to use Windows & Apps is easier to find than one who is not terrified of Linux, or of a change in their screensaver for that matter.
If Quickbooks or similar apps let you cut off the CPA, why isn't every company doing that?
This could be an interesting case to test and confirm the legal viability and enforceability of the GPL.
The importance of that is not trivial. It means that developers will not only be able to trust the GPL to protect the intentions they had when sharing their code, but also that whatever developers/companies were not taking the GPL seriously will have to change their attitude.
However, I can't help but wonder at the weakness of some of the assertions, in my non-lawyerish view. In particular:
"The GPL is selectively enforced by the Free Software Foundation such that enforcement of the GPL by IBM or others is waived, estopped or otherwise barred as a matter of equity."
What does this mean?
The original PDF seems to be slashdotted, so I can't help but think I'm missing something here.
Are they saying that because the FSF enforces the GPL for their software, I cannot enforce it for mine?!
Are they claiming that if I license my code under the GPL, I'm somehow magically transferring my copyrights to the FSF?
Or even worse, that I'm renouncing the rights to defend the copyrights I still own to give them to the FSF?
I don't get it.
When did I lose my rights to enforce the license I, as a developer, put on my own code?
Remember that old idea of backwards compatibility?
Removing features of any significance usually means turning the language into a new one.
Remove pointers, multiple inheritance, enumerations, templates, structs, and some other stuff from C++ and what do you get? Java minus garbage collection.
"All they need to do" demeans the difficulty of that task.
The whole point of strenghtening the ID system (whatever ID system is used) is that to "steal the identities" is not that easy anymore. It's going to be rather difficult to come up with a fake or stolen valid US passport or VISA that will not be detected through customs; and now with biometrics in place...
The other solution, recruiting "virgins" to do the dirty work, is not that easy either.
Valid US passports are only easy to acquire for American citizens, who already have freedom of transit, etc... but they are not that easy to recruit. In part, that's why it's such a scandal when you find American terrorists linked to attacks to the US. Keeping an influx of "virgin terrorists" with US citizenship would require significant recruitment efforts, which would be difficult to keep at low profile.
VISAS are definitely not that easy to get anymore in a lot of countries (and still not trivial in the rest), are much easier to revoke. To recruit "virgin terrorists" on other countries, then have them go through the necessary paperwork (and background check), then have them go through the necessary interview at the US embassy/consualte... that's for each terrorist action. It implies recruiting people with no known links to your organization, who can "keep their cool" through the process, and are able enough to act independently on whatever they're supposed to do based only on their training.
In either case that is a costly, risky endeavor. It makes the terrorists' life more difficult, their activities easier to detect, etc.
Put it this way:
"All I need to do" to hack into a Linux box with an slightly out-of-date SSH daemon running is to find and exploit a known vulnerability. But that requires dramatically more work and expertise than logging to a telnet server with a user/password pair I got by sniffing on a connection. The owner of the SSH server is also more likely to know and be prepared for the kind of attack I'm making, log my activites, block any real damage and actually retaliate.
Of course, this whole National ID idea will not solve the problem, will create brand new problems, and will disguise the fact that nothing is solved.
But that's not because a National ID is per se a Bad Idea, or because it cannot help in these matters. Rather, it's because the approach they are taking is completely wrong and based on "a sense of security" rather than actual security, much like the approach to airport security. The end result will be much more Big Brotherish than necessary (because it increases the "feel" something is done) and much less effective than it could be.
On the other hand, a real National ID could prove useful for the US in much more than the terrorism problem, IFF it were handled properly and with full awareness of the implicit dangers.
To start with, you would remove the need for a de facto, but completely unregulated, national identification system through SSNs. Currently you have most of the worst possible scenarios for a National ID combined in the private industry handling of SSNs numbers and personal information.
You could instead keep a much tighter control on what kind of information is linked to the formal National ID identifier, both in public and private entities.
Correct me if I'm wrong, but many of those people with passports were "out of status" on their legal rights to be in the US. They had entered with VISAS that expired and/or whose conditions were violated for X or Y reason.
In particular, some of them were F1 students who had abandoned their sponsoring schools, which has been used as excuse by the US government to harass the F1 students who do keep legal status with a lot of new legal baggage and a brand-new failure of a database that demonstrates very well WHY a new national ID system would fail in the US.
These people also had valid driver licenses, which can be used to board national flights without providing any other form of identification. This has been used as an argument by the US to make it a pain in the ass for foreigners to get a driver license, more in terms of paperwork and waiting lines than difficulty per se, but a pain nonetheless.
None of this would apply if they required passports to take national planes. From the passports, customs can immediately verify that a foreigner is in legal status within the country, or that an American citizen has no records of terrorist activities (or that he/she's not a federal fugitive, for that matter).
Of course, the government can maliciously deny passports to foreigners they don't like. Those foreigners should not be in the country anyway. I don't think they can maliciously deny passports to its own citizens, though... if they did, they would have to stop for the system to work. The government would want "people the government doesn't like" to have passports, so that you can track them.
This is already done at the international-entry level. The database is already there, it's already checked, it is definitely already linked to the appropriate criminal records, and it already presents opportunities for invasion of privacy, abuse of power, etc. etc.
It would also solve the same problems a new National ID would solve. It would let the US government track legally abiding foreigners and US citizens. It would force terrorists to take buses and rent cars for their nefarious activities.
The only difference is that the database is already there, there's personnel already trained to do this, and the risk of failure is dramatically lesser. The budget of the government contract would also be correspondingly smaller. Don't consider this an accident.
Corporations are legal entities that represent the common intentions of a group of humans. They gain their "personhood" by aggregation of the personal rights of those they represent.
They are representative persons.
For example, governments are corporations that represent the common intentions (and implicit social contract) of a large group of people (citizens) within a geographic area (nation/state).
Touching on the increased class participation and confidence in an all-female classroom...
Wouldn't it be better if we could get the same results in a co-ed environment from the same girls? Wouldn't this offer a good opportunity for that, as well?
In my experience as a student, I did find it more common for girls and women to be less aggressive about demonstrating knowledge... but more worrying, also less confident about the knowledge they did have. On the other hand, males tended to be not only more aggressive in class participation, but also commonly overconfident about their own knowledge... often talking before throughly thinking through or understanding the subject.
A guy was more likely to SEEM like he knew what he was doing, even if he had to BS his way through... on the other hand, a woman was more likely to understate her own skills, even if she was more competent. After all, everyone around SEEMS to know more...
I guess experience teaches patience and moderation quickly (and harshly), but confidence is more difficult to acquire: by a vicious cycle, those with less confidence are not as eager to experiment without guidance, getting less experience, etc.
I can see how in a large classroom separating the sexes would be an effective method to give girls a more neutral environment, less intimidating to participate in (perhaps because it removes the alpha-male competition process). However, this neutral environment does not reflect real-life, even if it helps to increase their confidence.
I can also see how it would be difficult to achieve the same results in a big classroom, as it would probably require dedicating personal attention to most girls and keeping a very good control of the social dynamics of a high-school class.
But smaller social groups, like those formed in extracurricular activities of these kind, have less complicated social dynamics, less students to dedicate attention to, and more opportunities for personalized attention. In general, I would think with mixed genders they are the perfect opportunity for girls not only to acquire confidence on their knowledge and their ability to participate and help, but also to do it in the real-world, without being intimidated by the occassional "pissing contests", etc.
Because on the desktop side of the story Linux is to OSX as SCO Unix is to... any other Unix out there.
Err, no.
Loosely, an agent is whatever the person writing about agents decides it to be within the given context.
There is no consensus about what agents are.
For some, it's about perceptors, plans and things that are perceived. For others, it's about beliefs, desires and intentions. For others it's about autonomous systems with a certain level of intentionality. For others it's just about active objects that can be mobile and communicate through some intermediate language. And yet for others it's just an approach to software modelling techniques that end up in the same old mix of active and passive objects as always.
I'm sure I missed at least 4 or 5 interpretations that ALSO have plenty of academic literature supporting them.
The rough division seems to be on whether an agent is an AI system (with plenty of models to choose) or whether it's a set of techniques, characteristics and software engineering approaches (also with plenty to choose) that lets us speak about software in anthropomorphic terms without messing up.
At least that was the situation described in the literature I have read recently.
On the other hand, if I'm wrong and the world has finally reached a consensus on what they mean when they talk about agents, be so kind as to send me the post-2002 papers announcing that. It will probably save me a lot of reading in the near future.
If it can be an excuse to frequently visit Omen locations,it can't be all that bad...
People are LAZY.
I don't know if there's an Apple store at every block where you live, but that's not true in most of the US.
Even if they were very common, most Average Joe don't "hang out" at the local Apple store. Or at the local CompUSA for that matter.
They go to BestBuy or some other mainstream electronics store at the mall to check out the DVDs or whatever.
Going to the Apple store typically requires getting into your car and driving specifically to the Apple store, to dedicate a couple of hours of your time to PONDER whether you would want an Apple or not.
That implies some anticipation of commitment.
Structs should be disjoint from the API.
If you're publicizing an API, then you should be dealing with classes, not structs, for those reasons and more.
If you're using a struct, you're making some very strong assumptions about your data structure. You're also making an optimization in the process, whose validity depends on those assumptions.
You're assuming it has no behavior. You're assuming it will NEVER have behavior. You're assuming it's simple enough that you don't need to check for value constraints, or anything like that.
As a result, you should not let anyone, including yourself, extend that struct, either to add data members or behavior. If you have to, your assumptions were wrong... if you even imagine you might have to, your assumptions are wrong. Don't use a struct.
If the rules changed for you in the middle of the game and you need to replace the struct, you are then forced to communicate to everyone else that the assumptions have changed by changing the type. I would consider this a good thing.
Obviously, you should think carefully before sharing structs with others. But this applies to any data type that implies very strong assumptions which might not be shared with others... you have to wonder if your users need that, and if they do you have to enforce and document those assumptions before they break your application.
Funny. Although I too would like to use a structure every once in a while in Java, I fail to see the lot of extra code or the outstanding convenience of C++.
.... etc...
.java file.
I very often encapsulate the data variables I'm dealing with, if they are complex and interrelated, into a custom data structure in Java... This takes all the effort of:
final class SillyClassThatIsReallyAStruct {
public type var1;
public type var2;
}
The only reason I would like a struct in Java is to avoid the constructor invocation and implying garbage collection when using those data structures. But really, there is no extra work here, unless a couple extra characters per keyword bother you immensely.
Since they are normally data structures of use only for my package, I can put them all in a single file or, even better, inside the only class that uses it.
If the data structure is so useful and important that it should be made public and shared with the rest of the world, then by all means give it its own
I agree wholeheartedly with Stroustrup's advice. But that's not a Java/C++ issue, that's a programmer issue:
The only kind of idiot who's going to implement getters/setters for a data structure with no behavior IF there is no need, is the same kind of idiot who will do it in either Java or C++.
On the other hand, good Java developers often tend to be very careful about making sure there is really no behavior in this data structure (and therefore is not an object). And specially about imposing such assumptions on the rest of the world that uses the data structure (which is I am skeptic about making any such structs public).
Not going to happen for obvious reasons.
But you do have a point that they could put at least 10% as much effort on demoing the Macs to the PC crowd as they do in pleasing the loyalists with quasi-religious conventions and events.
Maybe they could give away environmentally-unsafe CDs for x86s, a la AOL, but full of animated presentations and videos showing OS X "at work".
Maybe the Apple stores would be a good step in the right direction, if they did more to get the PC crowd into the stores in the first place.
The Linux community is doing a decent job of giving their OS some "give it a try" exposure in schools and colleges. It's not so much about "converting everyone", as about getting them familiar enough with the product that they are not afraid to use it when they have to... or that they can make the jump, when they want to, without it feeling like an adventure into the (risky) unknown.
Apple, as a consumer-oriented company, could do better there, and in more consumer-oriented environments like computer and electronic stores. Specifically, I think Apple needs to collaborate much more tightly with mainstream computer/electronic stores.
I've been in computer stores that have Apple sections (CompUSA) with hardware to play, but I was neve approached by an enthusiastic salesman wanting to demo the products I was browsing out of curiosity. This is in contrast with my experience just passing through PC desktops and laptops, where I was CONSTANTLY bothered by some salesman trying to show off their overpriced Compaq/HPs.
I find it ironic because, as a PC geek, I believe any salesman who can't tell me the motherboard model and specs of the PC is wasting my, and his, time. But even unsophisticated PC users don't need a salesman to tell them they can watch DVDs or access the Internet with a computer.
However, as a non-Mac user, I would find a full demo of the product interesting, and probably convincing and useful. It would clear whatever doubts I had about whether I can do with my Mac everything I can do with my PC. It would give me the opportunity to ask questions (e.g.:"how do I access my printer in my other PC in the network?") on a whim.
I could get that at an Apple store, obviously. But that implies I'm already thinking of buying an Apple, and went to the trouble of going to an Apple store, where I don't have the option of comparing or buying a PC. That's a prelude to a buying decision. Window-shopping at an Apple store requires the buyer to consider Apple seriously before they are given the sales pitch to convince them to do so.
If I see this as an investor, I have a much better (at least for them) reason than personal ethics to avoid the company like the plague:
Their use of the DMCA against a student who pointed out their product DOESN'T WORK, means that indeed their product DIDN'T WORK, and that they're not interested into the whole "getting it to WORK" part. They would rather keep quiet about it.
Which tells me they have no working product.
Which tells me they won't be making me money anytime soon.
They probably don't care about people with ethical concerns about the DMCA, because most investors don't either. But this is pretty basic logic that applies to any investor: if the best thing they can do is claim skipping Autorun is a secret of the black arts of DRM hacking, no one is going to give them money.
Since it's all compiled to their Intermediate Language, I suspect they just locked a VB programmer in a room and told him to draw a table mapping the keywords.
Hi, I'm FooSoft, or some other big-time development house that competes directly with Game Company X in both the game and engine market.
I have a pretty good game engine, but I'm falling behind in some features and will probably be 2 months late to market. The Hype surrounding complicated features A,B,C in Game Company's X engine has gamers drooling and we have problems developing those in our engine.
I'll just go and take a peek at some stolen code I found on the Internet and see how Game Company X solved A,B,C. Then I'll reimplement those algorithms in my engine and tell my engineers to concentrate on features D,E,F, so we can either beat them to market or have a better feature set... without the cost of R&D.
It'll be very difficult to provide a court with reasonable suspicion that there was theft of IP.
The engines are different, and it would require considerable litigation and arguing to prove the trivial modifications a competent programmer can make to obfuscate the similarities in implementation.
Yet, the algorithms or even the architectural solution to a software problem may have taken months of R&D. A revolutionary new way to handle body-modeling, AI bots, etc almost certainly qualify as trade secrets, the kind of thing that gets you an important advantage in the market.
Industrial spionage is not just an invention of airport-store novels and crappy movies; the bounties, risks and liability are the same.
Source code alone does not a great game make.
However, it does make a great engine.
Considering that ID's games have become little more than extended demos for their 3D engines, and that 3D engine licensing revenues can survive well beyond the popularity of the game it was developed for, IP theft could be a very real problem in this case.
The original post had a very good point in how easily that is dismissed by the Slashdot crowd.