Ask twenty students to implement a function that reverses a linked list, and you'll find that those that make mistakes probably make the same mistakes (not dealing with zero-length lists, for example).
It's not the same situation, though, because Google only employs people who can reverse a linked list - there must be some other explanation.
The ZX Spectrum had a wonderful piece of hardware called the SpecMate. With a click of a button it would dump the memory image (after the magic "code" had been entered), and then all you do is load the image and you have the game exactly where you left it. This practically breaks any "security" scheme, because it skips the entire loading process.
I wonder why they don't do the same for modern operating systems - basically storing the entire "context" (memory pages, registers, etc.) and loading it later, maybe on a different machine, to bring you to the exact same point you saved it.
You can use a debugger to actually see where the code checks for the registration key, and by manipulating the program in a hex editor, you could even make the code skip over the check and run without the key.
Most people earning $80,000 would not feel comfortable asking for the "perks" as you call them. After all, they're earning a good salary, why should the employer pay for their meals (and what would the employer think if you said "by law you owe me this"?)
So yes, most people would "eat" their pride (and the price of workplace culture) and pay for their good jobs in a way that someone on minimum wage would never dream of.
I have used Lua successfully on an embedded platform for demos. It would take a day or two to write a demo from scratch once we got the infrastructure.
I've used the same infrastructure on WinCE and on OMAP without any modifications (other than pushing the GUI into the WinCE).
I couldn't have done it with python+tk/tcl in the same amount of time.
It's possible to recognize speech pretty well (and no, the ridiculous examples of "I'll Ike's peach recognition all hot" don't really happen for any reasonable engine that uses language models, and most of them do these days).
The main problem is that no one actually speaks or writes as eloquently as people present speech recognition.
Try this experiment: map backspace, delete and arrow keys to @ and try to write a letter or some code. You'll quickly give up. When you see demos of speech recognition, you never hear someone saying "Yesterday I went to the cinema. umm Monday actually. Ha, look the computer is still writing. Oh boy... delete delete delete delete... delete... delete... replace Yesterday with Monday" (while it's possible to recognize "replace X with Y", you still have to be pretty focused not to say anything else).
The missing bit is the intelligent dialogue that is redundant when you type. When you type, you have arrow keys, control keys and backspace. When you talk, these things are part of the communication, and writing an intelligent dialogue system is not trivial. If you want another experiment for the limits of speech recognition, just try whatever you want a computer to do with a real person. Try to dictate code to someone, and you'll soon find that it's not that simple. A person can even ask at the right time "empty brackets?" after you say a function name followed by a semi-colon, yet it's still very difficult to dictate code (or even a letter without any corrections).
There is another problem: Imagine that you type away, and suddenly you see that you've forgotten a semi-colon. But as you're writing a game, you have the constants UP, DOWN, LEFT and RIGHT. Hmmmmm.... Now you have to change your code (or the code you've downloaded) to suit the interface. Not good. Another option would be "missing semi-colon at the end of the line beginning with strcpy", but you need a very intelligent dialogue system for that.
Note: I've assumed that the recognition is perfect (and the problem is with our brains), but of course it isn't.
I'm not saying you shouldn't outsource - far from it. Like you say, many businesses are about buying and selling, and very little else.
I think my point was that businesses should know what their business is. Let's say you're a book keeper. You have two options: one is to do your job, and one is to find a cheaper book keeper, give her your work, pay her less and live off the difference.
If you decide that your "real" business is cost cutting, you'll take the second option. This is a very good strategy in the short term (the "share holder term"), but in the long term you have problems: 1. You forget how to do book keeping. 2. You lose some control over the quality of the work. 3. You're fine until someone contacts your cheap book keeper directly.
Once number 3 happens, you're in trouble. You don't have the ability to go back to being a competitive book keeper. You'll have to find another, even cheaper, book keeper to do the work for you. Then quality becomes an issue, and customer are leaving you. The problem with this situation is that it's very difficult to bounce back.
What happened? You lost your direction. You forgot what your business was, and you made decisions that hurt the business, even if they cut costs in the short term.
Dell are integrators, and it's possible that they don't add any value to the products they sell.
BMW most definitely add value - their quality control is legendary, and they don't source from bad manufacturers. You buy a BMW and you know that the chances of things not working are very slim. Try saying the same about Ford or Skoda.
Being integrators is a risky business, when you have 10 layers of management and you pay US salaries, because soldering parts with no added values can be done in China (without the "executives") for a fraction of the cost. And when your quality assurance procedures are nothing to brag about, and your attitude to customers is "you'll come crawling to us in the end", your business is not going to survive.
I've left before the inevitable shut-down, and so have all my colleagues. The company didn't seem to care, because they'd lost the customers that depended on our services. How they're going to get the customers back is beyond me, but that's the way business works - you have to remember who you are and what you do. "Cost cutting" is a means to an end, and if you don't remember that, you will have no business.
You have just described my ex-company in the most precise way possible. It's an ex-company because they've decided that we're no longer part of their core business. It's true that we were the main differentiator between them and other companies, so there was some value there, but still not core.
This comes after a cycle of buzzwords and the usual "now we're product oriented... no wait, we're actually platform oriented... hang on, we're customer oriented... hmmm, no, now we're product oriented again".
They finally decided that they're integrators. They buy parts from suppliers and solder them together. Excellent business plan. That's exactly what you just described - eventually there's no "core business", you just source everything and sell it. Chapter 11 is the next bit in your business plan, with huge bonuses for the CEO (I'm not kidding about this one either).
I'm not sad, though, because if you've managed to describe my ex-company without even knowing what industry we're talking about, then it must be the way many companies are run these days. It's not much, but at least I'm not alone.
My ex-company used to have over 80,000 employees. Now they have about 50,000. Many of their competitors are filing for bankruptcy (while giving bonuses to their managers). They have been making losses since they were spun off, and I can't see that trend reversing (when their core business is "integration"). The CEO takes home about $5M a year.
Chicken and egg: what brings profits to the company?
According to some, it's the employees who work hard and produce value. According to others, it's the customers who pay for goods and services. Maybe both.
But the merging companies shit on both - employees are fired and customers will not get a better deal (why would they? A dominating company can provide cheaper, worse services, without being afraid of competition - legally they would have to do that, to keep the share holders happy).
The share holders do NOT bring profits to the company - they TAKE the profits, and are still considered number one in the business. That's because they own the business without lifting a finger. So the whole framework is screwed, not just a single business.
A company that controls 90% of the market, after mergers, will NOT provide better service to its customers. It's only competition that is good for the customers. Mergers are ANTI-COMPETITON and are BAD for the market, for the customers, and for the employees.
Talk about protectionism - mergers ARE protectionism, they protect the interests of the share holders and the directors, but not much else.
If a single company owned everything, but employed only 1% of the population, they'd have huge profits and the share holders would be extremely happy, but don't you think the economy would then collapse?
Thinking of employees as customers in other companies makes it slightly clearer - you must make sure that people earn money (and do not depend on charity) for a healthy economy. In a competitive market, it means that people have to work hard to earn their cash, but they CAN do it (i.e., it makes sense to start new businesses and employ people, because you can compete). In a non-competitive market, it can either mean that everybody works, but the market is not efficient (communism as was practiced in the USSR), or that only a small fraction of the population works and the rest are either rich (the "owners" of everything) or they have to resort to begging or stealing (capitalism as practiced in Africa).
Mergers make the market non-competitive. I wonder if you really want the country you live in to be like either of these examples.
Isn't that a bit like saying "I have no problem robbing banks - only stupid people give their money to strangers"?
But why am I wasting my time? If you're evil, there's little anyone can do about it. You'll always find excuses why it's fine to do what you do (ask a drug dealer if he's doing the right thing and he'll tell you that he sells a bit of happiness to poor and depressed people).
If Vista has 40,000,000 lines of code and 10,000 bugs were found (that's 50 fixes in each Windows Update, every week, for four years), they'd still be better than 0.32 defects per 1000 LOC.
I've no idea how many lines there are in Vista (or, for that matter, how you count them), but the rumours say that Windows XP is about 40M LOC.
I've no idea what you're running on your machine, but I rarely have to reboot mine (XP Pro) at work. I leave it running until some Windows Update tells me to reboot it, and it works just fine (for weeks).
I don't develop any Windows applications (so maybe I'm not using the leaky DLLs everybody else is), but it works just fine. If anything, our linux servers have a tendency to reboot themselves every once in a while (no one knows why, and we don't have a system admininstrator to check - they're too expensive for us).
I live in an urban area, and it takes me about 40 minutes to walk to the centre.
Instead of wasting that time, I could wait 20 minutes for the bus, and then spend the next 30 minutes on jam-packed roads full of people in their little cars trying to get into the centre, while two mums are smiling shamefully as their kids scream their lungs out, and six girls have ice cream dripping on the floor and one drunk is mumbling to himself on the front seat.
So you see why I prefer using public transport to walking.
I almost cried when it was over. I think it made me realise how crappy other games were, and how difficult it is to actually create games (yes, games - not those 3D simulators that copy ideas from each other and compete in the number of textured-polygon they spew on your screen each second, instead of the enjoyment of actually playing them).
Ask twenty students to implement a function that reverses a linked list, and you'll find that those that make mistakes probably make the same mistakes (not dealing with zero-length lists, for example).
It's not the same situation, though, because Google only employs people who can reverse a linked list - there must be some other explanation.
The ZX Spectrum had a wonderful piece of hardware called the SpecMate. With a click of a button it would dump the memory image (after the magic "code" had been entered), and then all you do is load the image and you have the game exactly where you left it. This practically breaks any "security" scheme, because it skips the entire loading process.
I wonder why they don't do the same for modern operating systems - basically storing the entire "context" (memory pages, registers, etc.) and loading it later, maybe on a different machine, to bring you to the exact same point you saved it.
You can use a debugger to actually see where the code checks for the registration key, and by manipulating the program in a hex editor, you could even make the code skip over the check and run without the key.
I've just had the greatest idea for my PhD.
There's another problem here.
Most people earning $80,000 would not feel comfortable asking for the "perks" as you call them. After all, they're earning a good salary, why should the employer pay for their meals (and what would the employer think if you said "by law you owe me this"?)
So yes, most people would "eat" their pride (and the price of workplace culture) and pay for their good jobs in a way that someone on minimum wage would never dream of.
Which just goes to show that salaries should be given per (real) hour, not per annum.
If instead of working 40 hours a week I give 50, I actually earn 20% less - it's simple really.
I have used Lua successfully on an embedded platform for demos. It would take a day or two to write a demo from scratch once we got the infrastructure.
I've used the same infrastructure on WinCE and on OMAP without any modifications (other than pushing the GUI into the WinCE).
I couldn't have done it with python+tk/tcl in the same amount of time.
... Brazilian Jiu Jitsu exists (we in Brazil don't call it that, we call it only Jiu Jitsu).
Obligatory Simpsons' quote:
Homer: I have a bladder the size of a Brazil nut.
Taxi Driver: We just call them nuts here.
Machines don't evolve. God created them just the way they are.
"Summon Elemental"
Classic.
Sweet, simple and beautiful.
It's possible to recognize speech pretty well (and no, the ridiculous examples of "I'll Ike's peach recognition all hot" don't really happen for any reasonable engine that uses language models, and most of them do these days).
... delete ... delete ... replace Yesterday with Monday" (while it's possible to recognize "replace X with Y", you still have to be pretty focused not to say anything else).
The main problem is that no one actually speaks or writes as eloquently as people present speech recognition.
Try this experiment: map backspace, delete and arrow keys to @ and try to write a letter or some code. You'll quickly give up. When you see demos of speech recognition, you never hear someone saying "Yesterday I went to the cinema. umm Monday actually. Ha, look the computer is still writing. Oh boy... delete delete delete delete
The missing bit is the intelligent dialogue that is redundant when you type. When you type, you have arrow keys, control keys and backspace. When you talk, these things are part of the communication, and writing an intelligent dialogue system is not trivial. If you want another experiment for the limits of speech recognition, just try whatever you want a computer to do with a real person. Try to dictate code to someone, and you'll soon find that it's not that simple. A person can even ask at the right time "empty brackets?" after you say a function name followed by a semi-colon, yet it's still very difficult to dictate code (or even a letter without any corrections).
There is another problem: Imagine that you type away, and suddenly you see that you've forgotten a semi-colon. But as you're writing a game, you have the constants UP, DOWN, LEFT and RIGHT. Hmmmmm.... Now you have to change your code (or the code you've downloaded) to suit the interface. Not good. Another option would be "missing semi-colon at the end of the line beginning with strcpy", but you need a very intelligent dialogue system for that.
Note: I've assumed that the recognition is perfect (and the problem is with our brains), but of course it isn't.
I'm not saying you shouldn't outsource - far from it. Like you say, many businesses are about buying and selling, and very little else.
I think my point was that businesses should know what their business is. Let's say you're a book keeper. You have two options: one is to do your job, and one is to find a cheaper book keeper, give her your work, pay her less and live off the difference.
If you decide that your "real" business is cost cutting, you'll take the second option. This is a very good strategy in the short term (the "share holder term"), but in the long term you have problems:
1. You forget how to do book keeping.
2. You lose some control over the quality of the work.
3. You're fine until someone contacts your cheap book keeper directly.
Once number 3 happens, you're in trouble. You don't have the ability to go back to being a competitive book keeper. You'll have to find another, even cheaper, book keeper to do the work for you. Then quality becomes an issue, and customer are leaving you. The problem with this situation is that it's very difficult to bounce back.
What happened? You lost your direction. You forgot what your business was, and you made decisions that hurt the business, even if they cut costs in the short term.
Dell are integrators, and it's possible that they don't add any value to the products they sell.
BMW most definitely add value - their quality control is legendary, and they don't source from bad manufacturers. You buy a BMW and you know that the chances of things not working are very slim. Try saying the same about Ford or Skoda.
Being integrators is a risky business, when you have 10 layers of management and you pay US salaries, because soldering parts with no added values can be done in China (without the "executives") for a fraction of the cost. And when your quality assurance procedures are nothing to brag about, and your attitude to customers is "you'll come crawling to us in the end", your business is not going to survive.
I've left before the inevitable shut-down, and so have all my colleagues. The company didn't seem to care, because they'd lost the customers that depended on our services. How they're going to get the customers back is beyond me, but that's the way business works - you have to remember who you are and what you do. "Cost cutting" is a means to an end, and if you don't remember that, you will have no business.
You have just described my ex-company in the most precise way possible. It's an ex-company because they've decided that we're no longer part of their core business. It's true that we were the main differentiator between them and other companies, so there was some value there, but still not core.
This comes after a cycle of buzzwords and the usual "now we're product oriented... no wait, we're actually platform oriented... hang on, we're customer oriented... hmmm, no, now we're product oriented again".
They finally decided that they're integrators. They buy parts from suppliers and solder them together. Excellent business plan. That's exactly what you just described - eventually there's no "core business", you just source everything and sell it. Chapter 11 is the next bit in your business plan, with huge bonuses for the CEO (I'm not kidding about this one either).
I'm not sad, though, because if you've managed to describe my ex-company without even knowing what industry we're talking about, then it must be the way many companies are run these days. It's not much, but at least I'm not alone.
My ex-company used to have over 80,000 employees. Now they have about 50,000. Many of their competitors are filing for bankruptcy (while giving bonuses to their managers). They have been making losses since they were spun off, and I can't see that trend reversing (when their core business is "integration"). The CEO takes home about $5M a year.
That's constans, not contans.
a ng=la
http://www.perseus.tufts.edu/cgi-bin/morphindex?l
Chicken and egg: what brings profits to the company?
According to some, it's the employees who work hard and produce value.
According to others, it's the customers who pay for goods and services.
Maybe both.
But the merging companies shit on both - employees are fired and customers will not get a better deal (why would they? A dominating company can provide cheaper, worse services, without being afraid of competition - legally they would have to do that, to keep the share holders happy).
The share holders do NOT bring profits to the company - they TAKE the profits, and are still considered number one in the business. That's because they own the business without lifting a finger. So the whole framework is screwed, not just a single business.
A company that controls 90% of the market, after mergers, will NOT provide better service to its customers. It's only competition that is good for the customers. Mergers are ANTI-COMPETITON and are BAD for the market, for the customers, and for the employees.
Talk about protectionism - mergers ARE protectionism, they protect the interests of the share holders and the directors, but not much else.
If a single company owned everything, but employed only 1% of the population, they'd have huge profits and the share holders would be extremely happy, but don't you think the economy would then collapse?
Thinking of employees as customers in other companies makes it slightly clearer - you must make sure that people earn money (and do not depend on charity) for a healthy economy. In a competitive market, it means that people have to work hard to earn their cash, but they CAN do it (i.e., it makes sense to start new businesses and employ people, because you can compete). In a non-competitive market, it can either mean that everybody works, but the market is not efficient (communism as was practiced in the USSR), or that only a small fraction of the population works and the rest are either rich (the "owners" of everything) or they have to resort to begging or stealing (capitalism as practiced in Africa).
Mergers make the market non-competitive. I wonder if you really want the country you live in to be like either of these examples.
Isn't that a bit like saying "I have no problem robbing banks - only stupid people give their money to strangers"?
But why am I wasting my time? If you're evil, there's little anyone can do about it. You'll always find excuses why it's fine to do what you do (ask a drug dealer if he's doing the right thing and he'll tell you that he sells a bit of happiness to poor and depressed people).
As long as you don't give any points for performing "feats of style that are not necessary tasks of the game"...
link
You should patent this system *before* you publish all the details on /.
Just a tip from someone who almost invented a game with falling blocks.
Do I get the job then?
Or am I just an instrument in the hands of smarter and richer people?
I wonder why anyone thinks "light years ahead of the US" makes more sense than "miles ahead of the US". Is being more advanced a question of distance?
Or maybe they don't know in Google that light years measure distance, and years measure time.
If Vista has 40,000,000 lines of code and 10,000 bugs were found (that's 50 fixes in each Windows Update, every week, for four years), they'd still be better than 0.32 defects per 1000 LOC.
I've no idea how many lines there are in Vista (or, for that matter, how you count them), but the rumours say that Windows XP is about 40M LOC.
I've no idea what you're running on your machine, but I rarely have to reboot mine (XP Pro) at work. I leave it running until some Windows Update tells me to reboot it, and it works just fine (for weeks).
I don't develop any Windows applications (so maybe I'm not using the leaky DLLs everybody else is), but it works just fine. If anything, our linux servers have a tendency to reboot themselves every once in a while (no one knows why, and we don't have a system admininstrator to check - they're too expensive for us).
I live in an urban area, and it takes me about 40 minutes to walk to the centre.
Instead of wasting that time, I could wait 20 minutes for the bus, and then spend the next 30 minutes on jam-packed roads full of people in their little cars trying to get into the centre, while two mums are smiling shamefully as their kids scream their lungs out, and six girls have ice cream dripping on the floor and one drunk is mumbling to himself on the front seat.
So you see why I prefer using public transport to walking.
It's theft, but I'd like to see the FBI arresting the bastard who stole my bike!
Since when is theft considered a federal offence?
Grim Fandango.
I almost cried when it was over. I think it made me realise how crappy other games were, and how difficult it is to actually create games (yes, games - not those 3D simulators that copy ideas from each other and compete in the number of textured-polygon they spew on your screen each second, instead of the enjoyment of actually playing them).
Definitely Grim Fandango.