Google is not a search company. Google is in the business of selling user information, and uses our need to find information to hook us. Facebook is probably more of a concern for Google here, as they are in the same business, but using a different means (by providing social networking services).
It seems to me that Apple is Amazon's real competition. Both seem to be in the business of owning your pocket through owning the channel to it.
The ability to eat something is not the obligation to eat it. Our canines is just as useful for eating other humans - is cannibalism and evolution thus similarly linked?
Its like vegetarians who believe in evolution. It just doesn't make since.
Vegetarianism is a moral or health stance. Evolution is a scientific stance. I'm baffled why you think there is any possible contradiction between them.
This is not psychohistory, but actuarial science. Psychohistory is about predicting future behaviour of groups by analysing their psychology.
Psychohistory is the holy grail of psychology. Philosophers and other scientists have expressed doubt about psychology's "scientific" credentials by pointing out their bad history in predicting human behaviour. As an example: researchers asked psychologists and psychiatrists to predict which offenders that were just given parole would re-offend. At the same time, they ran properties of the offenders through an actuarial process. The result? Psychologists and psychiatrists (even the ones who were treating the offenders) predicted the re-offence rate no better than chance, while the actuarial method performed much better (reference: http://www.amazon.co.uk/Incognito-Secret-Lives-David-Eagleman/dp/1847679382).
Come on, you made this list and didnt include George Costanza's accidental discovery of just leaving your car parked in the parking lot 24/7? Your boss will always think you are at work
Haha, good one. A friend of mine has a similar one - always leave a coat hanging on your chair, for the same reasons.
The thing I find most interesting about stack ranking is, even if the theory is sound (it isn't, but let's run with it), it's self-refuting. Let's say all companies decide to stack rank. Then, at the end of the year, 10% of the worse performers are automatically fired. In order to replace them, you have to hire from the bunch of work seeking individuals in the market - which are the 10% under performers of other companies that have just been fired.
All you are achieving is to exchange under performers. And now you have under performers that need to be trained up and integrated into your company from scratch.
The theory of stack ranking only makes sense if you are the only one doing it. The more companies adopt it, the more costly it becomes for everyone.
What's the best way to survive this type of system?"
Gamify. At my company, what makes things even worse is that to be considered in the top 20%, you have to show initiative and contribution *outside* of your core responsibility. This involves:
- Attend all social events. Even better if you can get yourself onto the organizing committee, because you will inevitably get to talk to various team members. Also, it is a really good excuse if you fail to deliver on your core responsibilities (which is inevitable if you want to maintain your "extra-team" influence.
- Start supporting a football (or whatever applies to your region) team, regardless of how dull and pointless you think sports is. Choose one that is doing well (you must look like a winner!), but not the same as the boss - you need to engage with him and show him how "independent" your thinking is. It is incredibly satisfying to have the boss, or the boss's boss, stand at your desk to discuss the weekend's results - and you are magically remembered later as a person that "contributes outside of your team".
- Always mention in the hallways to managers and developers from other teams how incredibly difficult your team's deliverables are, and how smart your team members (i.e. you yourself) have to be in order to simply be in it.
- Yeah, do get involved in other teams, but don't overdo it. Try to sit in on design sessions - then it looks as if you are part of the "solution", but you don't actually have to do the actual work. Leave those for the guys in the trenches who will get the "middle of the road" rating, because they are not involved outside of their teams. If the project goes badly, tactfully remind the boss that you did mention these risks during design, but the development team must have screwed it up somehow.
Whatever you do, absolutely never, ever get your head down for long periods and just get things done. That is the road to, at best, an "average" rating. You see, by doing your job well, you are simply doing what is expected of you. It does not matter how complex or easy your job is - no one knows or cares. All they see is someone doing their work.
No, banks are not technology companies. They are companies that take other people's money and use it to earn interest for themselves by lending it out at higher rates of interest than they pay to their customers.
Yeah yeah, heard it all before, let's just agree then that banks are heavily dependent on technology, more so than their boards generally understand (and *much* more than your silly example of lawyers). I saw a survey that showed that the financial industry employs over 30% of all IT people (the other big industry was telecoms). Risk management is an exercise in who can crunch the most numbers, the quickest. I know of a bank in the city of London who's grid computing infrastructure uses more electricity than the city of Manchester. JP Morgan recently converted their credit risk portfolio calculation to using FPGA's (http://www.computerworlduk.com/news/it-business/3290494/jp-morgan-supercomputer-offers-risk-analysis-in-near-real-time/).
I agree with you - I think the parent has a romantic view on employment, and good for him if he can afford it. We have families to support and mortgages to pay - and once you are in the financial sector, it is difficult to get out, because your business knowledge is specialized. I can't compete with a 3-year geek on ios development - but I stand a good chance for a position in investment banking, because of my domain knowledge.
Besides, there are advantages to working in banking. The technology is super-cool, especially if you are lucky enough to work in derivatives trading where grid computing and low latency trading is important.
People on the right side of the bell curve can answer mostly everything I throw at them - 99 out of 100 questions.
Yeah, that is probably a good strategy. One thing to look out for though is the "jack of all trades, master of none" guy. I once interviewed (and hired) a guy that had an incredible range of knowledge on all matters IT. I was naively impressed.
Once hired though, I found he spent an awful lot of time doing little prototypes and experiments instead of doing his job. Now, I generally encourage people in my team to research new technologies and find better ways of doing things, but there are limits to this. This guy was spending 80% of his time playing around, and consistently missed deadlines (without any apparent distress to him).
It is good to have a broad skill, my argument here is not that hiring people with broad skills are bad. But I think your strategy of only going for the right side of the curve has potential problems (but I assume, you being a smart fellow, you know this and have put in the measures to counter this). In my experience, there is a place on a development team for a middle of the road, hard working, but not necessarily obsessed out of his mind about every single technology person.
Another thing that you may want to consider is to go for "practice" interviews. Having a good interview is also a skill, and the more you do it, the better you get at it. If you interview for positions regularly (even if you are not serious about taking it up), then you become innately prepared for the type of questions that often gets asked, and don't have to overcome your nerves in the process.
I learned this lesson the hard way recently. I haven't been interviewing in the last few years, but I had to start looking for employment again - and I was shocked at how rusty I was in the interviews. Things that I *know* became difficult to communicate, because I have not thought about it for a while (even the most diverse development project takes you away from some technologies for a while). As I was struggling to find my vocabulary (I'm not a native English speaker), I became self-conscious and nervous.
But once I interviewed a few times, I found that the common topics came much more naturally to me. My confidence improved, and I think my overall image in the interviews improved a lot.
You are a Senior Developer for a Bank. By all accounts, you should have job security. Why? Because banks are notorious for having antiquated technology, particularly in-house code.
You are assuming that banks are rational when it comes to their key resources. I work at a bank, and let me tell you, it simply ain't so. IT workers are just some necessary evil for bankers - they still have to realize that banks are actually technology companies, and that their IT (and especially in-house development team) are key business drivers.
Round here, if a project comes to an end, the entire development team, except the management and support people, gets laid off (if they were not outsourced to start off with). Two months later, when a new project arrives, they run around like headless chickens trying to find the skills that are required to get a job done, and complain endlessly about the prohibitive licensing cost of software vendours (vendours that provide functionality that are often relatively easy to implement in-house) and external contracting houses. A new contracting team gets hired, and the whole development cycle starts afresh. Worst of all, they congratulate themselves about their "efficiency" and how they are able to implement projects in an "agile" fashion. Bonuses for the management team are often in order (and as bankers reason, the higher the development cost, the higher the associated bonus to the management team must be).
Now this may not be how all banks operate, but this is my employer's modus operandi. Every time a project a I work on comes to an end, I have to wait to see if I get booted or redeployed on some other project. Even new projects are reviewed every 3 months to decide whether they still add business value, so even if you are working you are never more than 3 months away from the boot. Job security simply does not exist here for the development team.
HTC is simply an arms-race to efficiency. The more efficient the market, the more business gets done, and the better risk models work (most risk models are based on theoretical infinite market efficiency).
As in any arms-race, the biggest losers are the slow-to-adopt. Many banks are struggling to match the prices made by geared investment houses, and it is eating into their profits. But who gives a hoot about financial institutions that can't keep up technology wise, right?
Enforcing inefficient markets is not the solution. Even if you manage to enforce this principle in your local country, you will simply find that someone else (India, China, Japan?) will do it and steal your markets. Even if this is not sustainable in the long term, that does not matter - we all know how short-sighted bonus hunting investors are. London had to give up manual trading in the 80's because New York was outpacing it via electronic trading. It was automate or die. Same principle applies here.
Obviously, this should not be done without oversight either. Increased efficiency often results in higher risk for when things go wrong (an efficient train going at 500 mph introduces more risk than an inefficient train going at 30 mph). The biggest threat is that HFT's often remove themselves from the market when they detect abnormal trading conditions - this causes a crash in liquidity, which can make whatever problem is going on even worse (this is what happened in 2010). This type of scenario must become part of financial institution's risk models, and be enforced by regulation.
Your analogy is about flash trading, a practice that has been reduced significantly by major exchanges. In the ones where it is still practised, the exchange actually allows you to opt-out of providing information about your intentions to flash traders.
Nintendo sold a butt-ton of DS consoles, the 3DS has better CPU/GPU/RAM but the crap battery life and price hurt that badly
And yet the 3DS is ahead of the DS curve in terms of unit solds since date of release (albeit only after lowering the price to non-profit levels).
they're at their best (Wii) when they stop playing follow the leader.
which is a difficult feat, since they *are* the mobile gaming leader (for the moment, anyway).
From a game developer's point of view, the big incentive in the mobile space is that they can produce games at sub-AAA budgets, but sell them at equivalent $$$'s. On the iPad, no one is willing to buy a game for more than $10. On the home consoles, you have bigger potential profits due to the amount of games sold, so you have to invest more in order to compete with the big guys.
In the mobile space, you want games with cheaper development cost, but the same profit margin.
And that is where, I think, the 3DS will beat the Vita. Counter-intuitively, the lower specs of the 3ds means that consumers demand less spectacular graphics (which translates into less $$$ investment from developers). The Vita, I predict, will mostly get dumbed-down ports from AAA-budget games, while the 3DS will get more games developed specifically for the platform.
Oracle needs to figure out how to do security patches that just fix the vulnerabilities and don't introduce (and remove) features.
AFAIK, the only feature of Java that was ever "removed" was when Sun introduced the assert keyword somewhere around 1.4, breaking existing code that used "assert" as a variable name. This caused so much hassle that Sun (at the time) vowed to never ever do anything like that again. Backwards compatibility has always been (and remains to be) a major concern for the Java language, for better or for worse.
Of course new JDK releases introduce bugs, but in general, my experience is that upgrading your JVM is one of the lower risk undertakings you can do. If you can't even do that in a controlled fashion with acceptable turnaround time (like say a few days from test to deployment), you have to ask yourself about the quality of your release and deployment processes.
When it comes to the PS4/720, not me. For one, the 3DS ecosystem is doing very well for Nintendo, especially in Japan (look at http://www.edge-online.com/news/mario-kart-7-and-3ds-top-2011-japanese-charts, top 3 selling games for 2011 in Japan were 3DS games, and the 3DS outsold all other consoles combined)
Also, the Wii U is doing what Nintendo is doing best - taking old technology and putting a new angle on it (I think they call it something like "lateral thinking in old technology"). This works for them, because they can provide top-notch quality games using cheap, older (i.e. profitable) hardware, which is more often than not good enough for most gamers. In this generetion, I'm especially optimistic, because gpu progress the past 4 years has not provided the killer app of DirectX 9c (I mean things like tessellation is cool, but it really does not make games look that much better). Games on the Wii U will be able to look very good even compared to games developed for the more expensive and later gen gpu PS4.
The nature of its widespread use only strengthens my feeling it is the 'new' BASIC, a dead-end educational toy that is used far beyond its capacities.
So because it's widely used, it must therefore be flawed?
No, Java is not fast. Java is a programming language. Virualized RISC machines can be fast within their own arenas and a lot of good work has gone into JIT compilers and the machines running underneath "Java".
When people say Java is fast, they mean they can write applications in it that will perform similar to ones written in a platform targeted language (an important measure for choosing a programming language for a project, where trade-offs against $$$ are determining factors). Whether the underlying reason for this speed is because the JVM is really clever, or runs on really clever machines, is not important in this context.
The claim does nothing but reveal your lack of knowledge and perspective.
I don't know if I agree with your general point either. Game prices drop fast after release - a few weeks/months after release, some drop to below $20, some even to less than $10 (Crysis 2 is retailing at 9 quid on amazon atm). If your statement was true, wouldn't you expect people not willing to pay full retail to rather wait until the price drop, rather than download it?
Google is not a search company. Google is in the business of selling user information, and uses our need to find information to hook us. Facebook is probably more of a concern for Google here, as they are in the same business, but using a different means (by providing social networking services).
It seems to me that Apple is Amazon's real competition. Both seem to be in the business of owning your pocket through owning the channel to it.
Because we are omnivores with canines?
The ability to eat something is not the obligation to eat it. Our canines is just as useful for eating other humans - is cannibalism and evolution thus similarly linked?
Its like vegetarians who believe in evolution. It just doesn't make since.
Vegetarianism is a moral or health stance. Evolution is a scientific stance. I'm baffled why you think there is any possible contradiction between them.
This is not psychohistory, but actuarial science. Psychohistory is about predicting future behaviour of groups by analysing their psychology.
Psychohistory is the holy grail of psychology. Philosophers and other scientists have expressed doubt about psychology's "scientific" credentials by pointing out their bad history in predicting human behaviour. As an example: researchers asked psychologists and psychiatrists to predict which offenders that were just given parole would re-offend. At the same time, they ran properties of the offenders through an actuarial process. The result? Psychologists and psychiatrists (even the ones who were treating the offenders) predicted the re-offence rate no better than chance, while the actuarial method performed much better (reference: http://www.amazon.co.uk/Incognito-Secret-Lives-David-Eagleman/dp/1847679382).
Come on, you made this list and didnt include George Costanza's accidental discovery of just leaving your car parked in the parking lot 24/7? Your boss will always think you are at work
Haha, good one. A friend of mine has a similar one - always leave a coat hanging on your chair, for the same reasons.
The thing I find most interesting about stack ranking is, even if the theory is sound (it isn't, but let's run with it), it's self-refuting. Let's say all companies decide to stack rank. Then, at the end of the year, 10% of the worse performers are automatically fired. In order to replace them, you have to hire from the bunch of work seeking individuals in the market - which are the 10% under performers of other companies that have just been fired.
All you are achieving is to exchange under performers. And now you have under performers that need to be trained up and integrated into your company from scratch.
The theory of stack ranking only makes sense if you are the only one doing it. The more companies adopt it, the more costly it becomes for everyone.
Does your company do this?
Yes.
What's the best way to survive this type of system?"
Gamify. At my company, what makes things even worse is that to be considered in the top 20%, you have to show initiative and contribution *outside* of your core responsibility. This involves:
Whatever you do, absolutely never, ever get your head down for long periods and just get things done. That is the road to, at best, an "average" rating. You see, by doing your job well, you are simply doing what is expected of you. It does not matter how complex or easy your job is - no one knows or cares. All they see is someone doing their work.
No, banks are not technology companies. They are companies that take other people's money and use it to earn interest for themselves by lending it out at higher rates of interest than they pay to their customers.
Yeah yeah, heard it all before, let's just agree then that banks are heavily dependent on technology, more so than their boards generally understand (and *much* more than your silly example of lawyers). I saw a survey that showed that the financial industry employs over 30% of all IT people (the other big industry was telecoms). Risk management is an exercise in who can crunch the most numbers, the quickest. I know of a bank in the city of London who's grid computing infrastructure uses more electricity than the city of Manchester. JP Morgan recently converted their credit risk portfolio calculation to using FPGA's (http://www.computerworlduk.com/news/it-business/3290494/jp-morgan-supercomputer-offers-risk-analysis-in-near-real-time/).
Not sure that the tech is super-cool though - you may just be showing your age :o)
Haha, point taken!
I agree with you - I think the parent has a romantic view on employment, and good for him if he can afford it. We have families to support and mortgages to pay - and once you are in the financial sector, it is difficult to get out, because your business knowledge is specialized. I can't compete with a 3-year geek on ios development - but I stand a good chance for a position in investment banking, because of my domain knowledge.
Besides, there are advantages to working in banking. The technology is super-cool, especially if you are lucky enough to work in derivatives trading where grid computing and low latency trading is important.
People on the right side of the bell curve can answer mostly everything I throw at them - 99 out of 100 questions.
Yeah, that is probably a good strategy. One thing to look out for though is the "jack of all trades, master of none" guy. I once interviewed (and hired) a guy that had an incredible range of knowledge on all matters IT. I was naively impressed.
Once hired though, I found he spent an awful lot of time doing little prototypes and experiments instead of doing his job. Now, I generally encourage people in my team to research new technologies and find better ways of doing things, but there are limits to this. This guy was spending 80% of his time playing around, and consistently missed deadlines (without any apparent distress to him).
It is good to have a broad skill, my argument here is not that hiring people with broad skills are bad. But I think your strategy of only going for the right side of the curve has potential problems (but I assume, you being a smart fellow, you know this and have put in the measures to counter this). In my experience, there is a place on a development team for a middle of the road, hard working, but not necessarily obsessed out of his mind about every single technology person.
> vendours Not a word. Not even in French.
Thank you - I learned something new.
Super post, I agree fully.
Another thing that you may want to consider is to go for "practice" interviews. Having a good interview is also a skill, and the more you do it, the better you get at it. If you interview for positions regularly (even if you are not serious about taking it up), then you become innately prepared for the type of questions that often gets asked, and don't have to overcome your nerves in the process.
I learned this lesson the hard way recently. I haven't been interviewing in the last few years, but I had to start looking for employment again - and I was shocked at how rusty I was in the interviews. Things that I *know* became difficult to communicate, because I have not thought about it for a while (even the most diverse development project takes you away from some technologies for a while). As I was struggling to find my vocabulary (I'm not a native English speaker), I became self-conscious and nervous.
But once I interviewed a few times, I found that the common topics came much more naturally to me. My confidence improved, and I think my overall image in the interviews improved a lot.
You are a Senior Developer for a Bank. By all accounts, you should have job security. Why? Because banks are notorious for having antiquated technology, particularly in-house code.
You are assuming that banks are rational when it comes to their key resources. I work at a bank, and let me tell you, it simply ain't so. IT workers are just some necessary evil for bankers - they still have to realize that banks are actually technology companies, and that their IT (and especially in-house development team) are key business drivers.
Round here, if a project comes to an end, the entire development team, except the management and support people, gets laid off (if they were not outsourced to start off with). Two months later, when a new project arrives, they run around like headless chickens trying to find the skills that are required to get a job done, and complain endlessly about the prohibitive licensing cost of software vendours (vendours that provide functionality that are often relatively easy to implement in-house) and external contracting houses. A new contracting team gets hired, and the whole development cycle starts afresh. Worst of all, they congratulate themselves about their "efficiency" and how they are able to implement projects in an "agile" fashion. Bonuses for the management team are often in order (and as bankers reason, the higher the development cost, the higher the associated bonus to the management team must be).
Now this may not be how all banks operate, but this is my employer's modus operandi. Every time a project a I work on comes to an end, I have to wait to see if I get booted or redeployed on some other project. Even new projects are reviewed every 3 months to decide whether they still add business value, so even if you are working you are never more than 3 months away from the boot. Job security simply does not exist here for the development team.
it's just I don't see what value they add
HTC is simply an arms-race to efficiency. The more efficient the market, the more business gets done, and the better risk models work (most risk models are based on theoretical infinite market efficiency).
As in any arms-race, the biggest losers are the slow-to-adopt. Many banks are struggling to match the prices made by geared investment houses, and it is eating into their profits. But who gives a hoot about financial institutions that can't keep up technology wise, right?
Enforcing inefficient markets is not the solution. Even if you manage to enforce this principle in your local country, you will simply find that someone else (India, China, Japan?) will do it and steal your markets. Even if this is not sustainable in the long term, that does not matter - we all know how short-sighted bonus hunting investors are. London had to give up manual trading in the 80's because New York was outpacing it via electronic trading. It was automate or die. Same principle applies here.
Obviously, this should not be done without oversight either. Increased efficiency often results in higher risk for when things go wrong (an efficient train going at 500 mph introduces more risk than an inefficient train going at 30 mph). The biggest threat is that HFT's often remove themselves from the market when they detect abnormal trading conditions - this causes a crash in liquidity, which can make whatever problem is going on even worse (this is what happened in 2010). This type of scenario must become part of financial institution's risk models, and be enforced by regulation.
Your analogy is about flash trading, a practice that has been reduced significantly by major exchanges. In the ones where it is still practised, the exchange actually allows you to opt-out of providing information about your intentions to flash traders.
Nintendo sold a butt-ton of DS consoles, the 3DS has better CPU/GPU/RAM but the crap battery life and price hurt that badly
And yet the 3DS is ahead of the DS curve in terms of unit solds since date of release (albeit only after lowering the price to non-profit levels).
they're at their best (Wii) when they stop playing follow the leader.
which is a difficult feat, since they *are* the mobile gaming leader (for the moment, anyway).
From a game developer's point of view, the big incentive in the mobile space is that they can produce games at sub-AAA budgets, but sell them at equivalent $$$'s. On the iPad, no one is willing to buy a game for more than $10. On the home consoles, you have bigger potential profits due to the amount of games sold, so you have to invest more in order to compete with the big guys.
In the mobile space, you want games with cheaper development cost, but the same profit margin.
And that is where, I think, the 3DS will beat the Vita. Counter-intuitively, the lower specs of the 3ds means that consumers demand less spectacular graphics (which translates into less $$$ investment from developers). The Vita, I predict, will mostly get dumbed-down ports from AAA-budget games, while the 3DS will get more games developed specifically for the platform.
Of course I meant to skip V: The Final Frontier. /. needs a "sanity check" on posts.
Phew, I thought I ended up in some crazy parallel universe where V was considered "good".
Agreed. The reason I use G+ is to *get away* from the public posts.
Oracle needs to figure out how to do security patches that just fix the vulnerabilities and don't introduce (and remove) features.
AFAIK, the only feature of Java that was ever "removed" was when Sun introduced the assert keyword somewhere around 1.4, breaking existing code that used "assert" as a variable name. This caused so much hassle that Sun (at the time) vowed to never ever do anything like that again. Backwards compatibility has always been (and remains to be) a major concern for the Java language, for better or for worse.
Of course new JDK releases introduce bugs, but in general, my experience is that upgrading your JVM is one of the lower risk undertakings you can do. If you can't even do that in a controlled fashion with acceptable turnaround time (like say a few days from test to deployment), you have to ask yourself about the quality of your release and deployment processes.
When it comes to the PS4/720, not me. For one, the 3DS ecosystem is doing very well for Nintendo, especially in Japan (look at http://www.edge-online.com/news/mario-kart-7-and-3ds-top-2011-japanese-charts, top 3 selling games for 2011 in Japan were 3DS games, and the 3DS outsold all other consoles combined)
Also, the Wii U is doing what Nintendo is doing best - taking old technology and putting a new angle on it (I think they call it something like "lateral thinking in old technology"). This works for them, because they can provide top-notch quality games using cheap, older (i.e. profitable) hardware, which is more often than not good enough for most gamers. In this generetion, I'm especially optimistic, because gpu progress the past 4 years has not provided the killer app of DirectX 9c (I mean things like tessellation is cool, but it really does not make games look that much better). Games on the Wii U will be able to look very good even compared to games developed for the more expensive and later gen gpu PS4.
The nature of its widespread use only strengthens my feeling it is the 'new' BASIC, a dead-end educational toy that is used far beyond its capacities.
So because it's widely used, it must therefore be flawed?
No, Java is not fast. Java is a programming language. Virualized RISC machines can be fast within their own arenas and a lot of good work has gone into JIT compilers and the machines running underneath "Java".
When people say Java is fast, they mean they can write applications in it that will perform similar to ones written in a platform targeted language (an important measure for choosing a programming language for a project, where trade-offs against $$$ are determining factors). Whether the underlying reason for this speed is because the JVM is really clever, or runs on really clever machines, is not important in this context.
The claim does nothing but reveal your lack of knowledge and perspective.
Oh, someone certainly needs perspective...
Why do you find it scary? It's rather common in my experience that dev teams have different development platforms from the target runtime.
the music industry is healthier than ever
Eish! Not according to - http://www.guardian.co.uk/music/2012/jan/02/uk-music-sales-decline-2011
I don't know if I agree with your general point either. Game prices drop fast after release - a few weeks/months after release, some drop to below $20, some even to less than $10 (Crysis 2 is retailing at 9 quid on amazon atm). If your statement was true, wouldn't you expect people not willing to pay full retail to rather wait until the price drop, rather than download it?
Strange point. Do you measure creativity by how much you are known for it?