When you're writing an application and you have to decide what format messages should be written in, or what type of file configuration data should be stored in, most people say, "Why, XML, of course. That way we're guarenteed that it is extensible, transformable, and readable by anyone who would ever need to read it." Granted, there are lots of other document formats in which that is the case, but they are not industry standard. As long as there is a schema, everyone will accept it. And if it's not in the format that they would like, they are free to run it through an XSL transformation. Easy as pie.
XML is not hard, but it is a discipline. It requires a lot of reading and a fair amount of practice, but once you have it down, that's it. And from now on, your document storage design decisions (barring any space/memory constraints) are made for you.
Whataburger does this in just about every store I've been to. They also have TVs tuned into the news and a whole basket full of non-retarded ketchup packets at the table (the kind that you peel the top off of and can dip your fries into, rather than the kind you have to tear open and squish out onto your hamburger wrappper and scrape fries across). Whataburger also has the drink machine out in the dining area, which is another factor that encourages people to linger.
But no, my experience at McDonald's (and Wendy's for that matter) has been order-eat-get-out. I don't usually have my laptop with me when I happen by those places and if I did I sure as hell wouldn't bring it inside.
My girlfriend has taken a position as a telemarketer because 1) it pays enough to live on; and 2) it is at least in some way related to her career field (PR) and somewhat career-oriented. She graduates in April and needs entry-level sales/PR experience. Working at McDonald's does nothing to further her career.
She isn't crazy about the idea--she's applied to numerous PR and sales firms prior to this--but she needs a job and they have decent wages and benefits. And believe it or not, that *is* a sacrifice...she knows she's going to get hellacious amounts of verbal abuse from people on the phone but knows it's something she has to do.
Don't be a dick. A simple, "I'm sorry, I'm just not interested. If you don't mind, could you take me off your list?" goes a hell of a long way. They don't want to waste their time, so the quicker you're off the phone the better it is for them. It takes like 2 extra seconds of your day to be polite. If everyone else did that for you, maybe you wouldn't come home pissed off every day.
But give a user a LEGO construction that is pre-built and glued together and ask them to make use of it. I'm pretty sure they'd be able to find a plethora of problems with your design right off the bat, assuming they could figure out what it was they were looking at.
A better analogy would be this: build a bunch of extremely easy-to-use APIs and let the customers use their creativity to make powerful applications. Simple, inert DLLs or JARs that can, with the user's creativity, be put together to create complex structures. The APIs "snap together" with a few method calls.
Not so simple, right? If business logic could be defined with LEGOs, we'd all be building plastic helicopters today.
It's easy enough to install with apt or apt for RPM. The problem is that the program has 5 main components: the base, the gtk stuff, the skins, the fonts, and the Win32 libs. Pain in the ass to download and install manually. If they had some kind of all-in-one package the problem would be greatly simplified.
No, this is nothing like the Microsoft case. To be like Microsoft he would first have to have a monopoly on, say, plumbing labor, and then tell the company that he could unclog their toilets for $50 but they had to also hire him as a programmer for free, but that if they refused to hire him as a programmer then it would cost them $5000 to unclog their toilets. And because he has a monopoly on plumbing labor (via unionization or whatever) they would basically have to agree to keep their bottom line.
If Microsoft went around and offered Windows for free, no strings attached, I'm sure no one would have a problem with it (save perhaps the FSF, etc). This would be a more appropriate analogy to the working-for-free example cited above. After all, I worked in tech support for a small DSL startup and ended up a programmer after 3 months because I wrote software in my spare time, on a tech support salary. That's about the same thing, isn't it?
You people really need to expand your horizons. Applets are unimportant; they were the most effective way Sun could spread awareness of Java and if they could take it back I'm sure they would. They are the reason for nearly all of the criticism Java has suffered, little if any which applies to the language as it was intended to be used: in applications.
Let's take a look at a few apps:
JBoss - 100% Java open source J2EE application server, rated best in its class by several authorities
Oracle EAI - Oracle J2EE application server (also, most of Oracles UI components are Java-based)
IBM WebSphere - IBM's stab at a Java-based J2EE application server
Iona E2A Application Server - Same thing, from Iona
Novell (SilverStream) Application Server - Another J2EE application server from Novell
Tomcat - Award-winning open source reference implementation for Sun's J2EE servlet and JSP container
Looking at that list, doesn't it appear that Microsoft has a lot to gain by making it as difficult as possible to install Java apps on its servers? Wouldn't Microsoft much rather its customers used the.NET framework rather than J2EE? Do you think Microsoft is bothered by the fact that Iona, Novell, IBM, Oracle, JBoss, and many other corporations have and support Java-based J2EE application servers?
Not to mention that Microsoft, Sun, IBM, and Oracle all compete on other levels. Currently Microsoft dominates the client-side market and they are trying their hardest to establish a foothold in the server market. Excluding, or worse, crippling Java would help tremendously.
And with projects like Log4j, Xerces, Xalan, Tomcat, and JBoss, Java has become synonymous with open source. Good, yes?
Crappy MS JVMs have bitten us more than once. This decision is a great boon to me and my company, and I believe it was the right one.
That, or use a language like Java or Ada that do automatic bound checking, or a language like Perl or VB that uses dynamic buffers (they grow to the size that you demand). This promotes laziness, however; much optimization can be done by omitting bound checking when none is needed. For example:
for( int i = 0; i < strlen( str ); i++ ) {
str[i] = toupper( str[i] ); }
In this case we know what we're doing, there's nothing to exploit, and we saved ourselves strlen( str ) * 2 instructions at least. Perhaps not a tremendous boon, but it can add up. In higher level languages we don't have that option, but it's nice because we don't have to work about it either.
A buffer overflow means that you take a variable location, such as char songName[255], and put enough data into that buffer to reach into the executable portion of the code in memory. Then, when some function returns, or execution branches, or something loops, part of that data will be at the address of the code that formerly handled the return, branch, or loop, and will get executed as if it were the next instruction.
Any buffer lacking good bounds checking is subject to this.
Yeah, that's what I meant. I'm not an astronomer--the terminology in my post was what I was taught in my astronomy class. And I don't believe it was any fault of the professor's...he was on an interesting tangent and was trying to be brief. But anyway, thanks for the clarification.
It would be nice to know when it hits heliopause, or the point in space where the sun's magnetic field ends. That way it would no longer be in the solar system, but truly an interstellar craft. Not only would that give us useful scientific data with which we can revise our solar model and dynamo theory, but it would also be a historical achievement for man.
That's kind of difficult to do in some fields, like programming. Measure ratio of successful projects? I'm 1 for 8 on internal projects due to poor management (moving targets, last minute changes to the data model, loss of interest,...). Lines of code? Well I win there, but I'll be the first to say that quantity does not imply quality (although in my case I should hope it does). What else is there? Number of followup phone calls? Pages of documentation? It's really hard to be objective in cases such as that, because there are so many contributing factors, few of which employees have any control over.
Personally, I'm in a position where I have a buttload of responsibilities (scheduling meetings, creating project plans, writing documentation, getting sign-off, following up,...) but no power (I'm on the lowest wrung of the corporate ladder and have 6 levels of management on top of me). I just try to make it known that I'm trying and hope to get an 'E' for effort.
Luckily our Christmas bonuses are determined by the length of time we've been with the company, which, given layoffs and firings, is not such a bad indicator of effort.
I'm not complaining...it's just that sometimes effort can't be quantified.
Whenever I go fix someone's PC, be it Windows or Linux, they always try to offer me money. I usually refuse, but I think from now on I'll open their web browser to eff.org and tell them that if they want to pay me, do it there. These are family members and friends of family for the most part, so there is some feeling of obligation, and if I pop open a charity then I really don't think they'd feel right refusing.
Or I could take the money and send it myself. But this way I'd eliminate the middle man, and gain the ability to accept payment in the form of credit cards:)
Microsoft isn't providing anything essential. They are producing a product that consumers can live without. For one, there's Apple, Linux, Sun, et al. that produce similar products that, for various reasons, just have less consumer uptake. But there are other alternatives as well. Embedded devices running J2ME, PalmOS, and other proprietary operating systems still provide much of the same functionality found in desktop PCs.
And if I own a Mac, I can also own a PC and a cellphone and not really hurt myself. They have similarities, but they are each very different in their own right.
But what they all have in common is web access. Everyone needs a provider. A provider, not 2 or 3. And it's just like the power company...you have to lay cable, or use some portion of the wireless spectrum, which gets messy if more than one company is involved. I say it's only a matter of time before the government picks somebody and starts putting some controls in place.
True, but I can't see an unregulated monopoly being unregulated for long. Look what happened to Bell. AT&T and IBM have already had brushes with the law, which means 2 things: 1) they will probably be more conscientious this time around; and 2) the government (FCC, FTC) will probably have their eye on this deal. If it works, and it works well, and other business start getting gobbled up and suffering, I think the government will make a move to regulate it.
Pros: Can compete based on features and customer service, yay capitalism
Cons: Customer service is equally poor everywhere, all of the features are the same, coverage is redundant and competition is difficult (witness failing broadband providers)
Government Regulated Monopoly
Pros: Price is fixed and rate hikes must be petitioned for and approved, coverage is universal and not overlapping, companies required by law to provide support in reasonable, predictable timeframes
Cons: No competition based on new features (technology adoption may be slow), customer service probably won't be that great (slow), boo socialism
Bottom Line
Take your pick. Honestly, with the customer service and feature set I get with my current providers (which I don't have much of a choice over anyway) I think I'm better off with a government sanctioned/regulated monopoly...a single wireless utility for the U.S. I'd much rather deal with 1 government regulated monopoly than 2 or 3 non-regulated corporate monopolies.
I ended up resorting to doing Runtime.exec( ) on gpg with all the batch and automatic "yes" flags enabled. Works pretty good, but the feedback is a little crummy (0 on success, != 0 on failure).
If you are going to be blindly loyal, atleast have the decency to KNOW what you are talking about as opposed to 'it just works' and 'its prettier than PC'
That's exactly why I am loyal. I got a product that is useful to me as well as aesthetically pleasing. Who cares how or why it works as long as it does.
Coming from a PC background I can understand having to know how to partition or reformat; or move NICs to PCI slots without shared IRQs; or diagnose DLL and registry problems introduced by 3rd party software products. I did learn a lot, but that's a lot of lost productivity.
Some people like to use computers without having to be amateur computer scientists. That's why people love Macs. That's why people still buy them, despite the good rodgering some people think we got from them over the whole 10.2 and.Mac thing. They're still getting what they paid for--a computer that just works, no questions asked.
The FM-200 guy that trained us on the use of our fire-suppression system said that FM-200 causes an endothermic reaction with the fire--effectively sucking the heat out of it. He said it didn't do anything with the oxygen in the room, and you could stay and play in it as long as you wanted, provided the fire wasn't out of hand (FM-200 reactions produce some lung irritants with hot fires), but by then you'd be more worried about the fire itself.
I started with Digiph and got swallowed by bigger and bigger fish until I ended up with T-mobile...now I'm just waiting for my contract to expire. When they were Powertel it took these boneheads 6 months and 3 applications to put my on their automatic payment system, during which time they had bill collectors call my house at 5:30 AM on Saturdays wanting to know why I hadn't paid my bill (when in fact, I had, after seeing that autopay hadn't kicked in).
I tried to be polite but in order to get anything done I actually had to cuss some poor lady out. And then they wanted to charge me extra fees! Like hell! In a few months I am so off of their service.
When you're writing an application and you have to decide what format messages should be written in, or what type of file configuration data should be stored in, most people say, "Why, XML, of course. That way we're guarenteed that it is extensible, transformable, and readable by anyone who would ever need to read it." Granted, there are lots of other document formats in which that is the case, but they are not industry standard. As long as there is a schema, everyone will accept it. And if it's not in the format that they would like, they are free to run it through an XSL transformation. Easy as pie.
XML is not hard, but it is a discipline. It requires a lot of reading and a fair amount of practice, but once you have it down, that's it. And from now on, your document storage design decisions (barring any space/memory constraints) are made for you.
Whataburger does this in just about every store I've been to. They also have TVs tuned into the news and a whole basket full of non-retarded ketchup packets at the table (the kind that you peel the top off of and can dip your fries into, rather than the kind you have to tear open and squish out onto your hamburger wrappper and scrape fries across). Whataburger also has the drink machine out in the dining area, which is another factor that encourages people to linger.
But no, my experience at McDonald's (and Wendy's for that matter) has been order-eat-get-out. I don't usually have my laptop with me when I happen by those places and if I did I sure as hell wouldn't bring it inside.
My girlfriend has taken a position as a telemarketer because 1) it pays enough to live on; and 2) it is at least in some way related to her career field (PR) and somewhat career-oriented. She graduates in April and needs entry-level sales/PR experience. Working at McDonald's does nothing to further her career.
She isn't crazy about the idea--she's applied to numerous PR and sales firms prior to this--but she needs a job and they have decent wages and benefits. And believe it or not, that *is* a sacrifice...she knows she's going to get hellacious amounts of verbal abuse from people on the phone but knows it's something she has to do.
Don't be a dick. A simple, "I'm sorry, I'm just not interested. If you don't mind, could you take me off your list?" goes a hell of a long way. They don't want to waste their time, so the quicker you're off the phone the better it is for them. It takes like 2 extra seconds of your day to be polite. If everyone else did that for you, maybe you wouldn't come home pissed off every day.
I think you mean "objectivity". We have subjectivity down pat, thank you.
Bingo. Or, for instance, configure the thing to base recommendations on songs played in the last n days, where n is configurable at each node.
But give a user a LEGO construction that is pre-built and glued together and ask them to make use of it. I'm pretty sure they'd be able to find a plethora of problems with your design right off the bat, assuming they could figure out what it was they were looking at.
A better analogy would be this: build a bunch of extremely easy-to-use APIs and let the customers use their creativity to make powerful applications. Simple, inert DLLs or JARs that can, with the user's creativity, be put together to create complex structures. The APIs "snap together" with a few method calls.
Not so simple, right? If business logic could be defined with LEGOs, we'd all be building plastic helicopters today.
It's easy enough to install with apt or apt for RPM. The problem is that the program has 5 main components: the base, the gtk stuff, the skins, the fonts, and the Win32 libs. Pain in the ass to download and install manually. If they had some kind of all-in-one package the problem would be greatly simplified.
Maybe Microsoft is just more familiar with the concept of viruses...
No, this is nothing like the Microsoft case. To be like Microsoft he would first have to have a monopoly on, say, plumbing labor, and then tell the company that he could unclog their toilets for $50 but they had to also hire him as a programmer for free, but that if they refused to hire him as a programmer then it would cost them $5000 to unclog their toilets. And because he has a monopoly on plumbing labor (via unionization or whatever) they would basically have to agree to keep their bottom line.
If Microsoft went around and offered Windows for free, no strings attached, I'm sure no one would have a problem with it (save perhaps the FSF, etc). This would be a more appropriate analogy to the working-for-free example cited above. After all, I worked in tech support for a small DSL startup and ended up a programmer after 3 months because I wrote software in my spare time, on a tech support salary. That's about the same thing, isn't it?
You people really need to expand your horizons. Applets are unimportant; they were the most effective way Sun could spread awareness of Java and if they could take it back I'm sure they would. They are the reason for nearly all of the criticism Java has suffered, little if any which applies to the language as it was intended to be used: in applications.
.NET framework rather than J2EE? Do you think Microsoft is bothered by the fact that Iona, Novell, IBM, Oracle, JBoss, and many other corporations have and support Java-based J2EE application servers?
Let's take a look at a few apps:
JBoss - 100% Java open source J2EE application server, rated best in its class by several authorities
Oracle EAI - Oracle J2EE application server (also, most of Oracles UI components are Java-based)
IBM WebSphere - IBM's stab at a Java-based J2EE application server
Iona E2A Application Server - Same thing, from Iona
Novell (SilverStream) Application Server - Another J2EE application server from Novell
Tomcat - Award-winning open source reference implementation for Sun's J2EE servlet and JSP container
Looking at that list, doesn't it appear that Microsoft has a lot to gain by making it as difficult as possible to install Java apps on its servers? Wouldn't Microsoft much rather its customers used the
Not to mention that Microsoft, Sun, IBM, and Oracle all compete on other levels. Currently Microsoft dominates the client-side market and they are trying their hardest to establish a foothold in the server market. Excluding, or worse, crippling Java would help tremendously.
And with projects like Log4j, Xerces, Xalan, Tomcat, and JBoss, Java has become synonymous with open source. Good, yes?
Crappy MS JVMs have bitten us more than once. This decision is a great boon to me and my company, and I believe it was the right one.
A buffer overflow means that you take a variable location, such as char songName[255], and put enough data into that buffer to reach into the executable portion of the code in memory. Then, when some function returns, or execution branches, or something loops, part of that data will be at the address of the code that formerly handled the return, branch, or loop, and will get executed as if it were the next instruction.
Any buffer lacking good bounds checking is subject to this.
Pedantic bastards :)
Yeah, that's what I meant. I'm not an astronomer--the terminology in my post was what I was taught in my astronomy class. And I don't believe it was any fault of the professor's...he was on an interesting tangent and was trying to be brief. But anyway, thanks for the clarification.
It would be nice to know when it hits heliopause, or the point in space where the sun's magnetic field ends. That way it would no longer be in the solar system, but truly an interstellar craft. Not only would that give us useful scientific data with which we can revise our solar model and dynamo theory, but it would also be a historical achievement for man.
That's kind of difficult to do in some fields, like programming. Measure ratio of successful projects? I'm 1 for 8 on internal projects due to poor management (moving targets, last minute changes to the data model, loss of interest, ...). Lines of code? Well I win there, but I'll be the first to say that quantity does not imply quality (although in my case I should hope it does). What else is there? Number of followup phone calls? Pages of documentation? It's really hard to be objective in cases such as that, because there are so many contributing factors, few of which employees have any control over.
...) but no power (I'm on the lowest wrung of the corporate ladder and have 6 levels of management on top of me). I just try to make it known that I'm trying and hope to get an 'E' for effort.
Personally, I'm in a position where I have a buttload of responsibilities (scheduling meetings, creating project plans, writing documentation, getting sign-off, following up,
Luckily our Christmas bonuses are determined by the length of time we've been with the company, which, given layoffs and firings, is not such a bad indicator of effort.
I'm not complaining...it's just that sometimes effort can't be quantified.
Whenever I go fix someone's PC, be it Windows or Linux, they always try to offer me money. I usually refuse, but I think from now on I'll open their web browser to eff.org and tell them that if they want to pay me, do it there. These are family members and friends of family for the most part, so there is some feeling of obligation, and if I pop open a charity then I really don't think they'd feel right refusing.
:)
Or I could take the money and send it myself. But this way I'd eliminate the middle man, and gain the ability to accept payment in the form of credit cards
Microsoft isn't providing anything essential. They are producing a product that consumers can live without. For one, there's Apple, Linux, Sun, et al. that produce similar products that, for various reasons, just have less consumer uptake. But there are other alternatives as well. Embedded devices running J2ME, PalmOS, and other proprietary operating systems still provide much of the same functionality found in desktop PCs.
And if I own a Mac, I can also own a PC and a cellphone and not really hurt myself. They have similarities, but they are each very different in their own right.
But what they all have in common is web access. Everyone needs a provider. A provider, not 2 or 3. And it's just like the power company...you have to lay cable, or use some portion of the wireless spectrum, which gets messy if more than one company is involved. I say it's only a matter of time before the government picks somebody and starts putting some controls in place.
True, but I can't see an unregulated monopoly being unregulated for long. Look what happened to Bell. AT&T and IBM have already had brushes with the law, which means 2 things: 1) they will probably be more conscientious this time around; and 2) the government (FCC, FTC) will probably have their eye on this deal. If it works, and it works well, and other business start getting gobbled up and suffering, I think the government will make a move to regulate it.
Competition
Pros: Can compete based on features and customer service, yay capitalism
Cons: Customer service is equally poor everywhere, all of the features are the same, coverage is redundant and competition is difficult (witness failing broadband providers)
Government Regulated Monopoly
Pros: Price is fixed and rate hikes must be petitioned for and approved, coverage is universal and not overlapping, companies required by law to provide support in reasonable, predictable timeframes
Cons: No competition based on new features (technology adoption may be slow), customer service probably won't be that great (slow), boo socialism
Bottom Line
Take your pick. Honestly, with the customer service and feature set I get with my current providers (which I don't have much of a choice over anyway) I think I'm better off with a government sanctioned/regulated monopoly...a single wireless utility for the U.S. I'd much rather deal with 1 government regulated monopoly than 2 or 3 non-regulated corporate monopolies.
I ended up resorting to doing Runtime.exec( ) on gpg with all the batch and automatic "yes" flags enabled. Works pretty good, but the feedback is a little crummy (0 on success, != 0 on failure).
If you are going to be blindly loyal, atleast have the decency to KNOW what you are talking about as opposed to 'it just works' and 'its prettier than PC'
.Mac thing. They're still getting what they paid for--a computer that just works, no questions asked.
That's exactly why I am loyal. I got a product that is useful to me as well as aesthetically pleasing. Who cares how or why it works as long as it does.
Coming from a PC background I can understand having to know how to partition or reformat; or move NICs to PCI slots without shared IRQs; or diagnose DLL and registry problems introduced by 3rd party software products. I did learn a lot, but that's a lot of lost productivity.
Some people like to use computers without having to be amateur computer scientists. That's why people love Macs. That's why people still buy them, despite the good rodgering some people think we got from them over the whole 10.2 and
I figured it was a premonition about the webserver being linked to on the front page of Slashdot.
The FM-200 guy that trained us on the use of our fire-suppression system said that FM-200 causes an endothermic reaction with the fire--effectively sucking the heat out of it. He said it didn't do anything with the oxygen in the room, and you could stay and play in it as long as you wanted, provided the fire wasn't out of hand (FM-200 reactions produce some lung irritants with hot fires), but by then you'd be more worried about the fire itself.
Amen! You won't see ME buying an Aston Martin Vanquish either! Take THAT MGM!
I started with Digiph and got swallowed by bigger and bigger fish until I ended up with T-mobile...now I'm just waiting for my contract to expire. When they were Powertel it took these boneheads 6 months and 3 applications to put my on their automatic payment system, during which time they had bill collectors call my house at 5:30 AM on Saturdays wanting to know why I hadn't paid my bill (when in fact, I had, after seeing that autopay hadn't kicked in).
I tried to be polite but in order to get anything done I actually had to cuss some poor lady out. And then they wanted to charge me extra fees! Like hell! In a few months I am so off of their service.