...In _one_ customer deployment We're deploying 1.7 million devices over 1200 mobile subnetworks in under 18 months. Each device needs to be capable of self addressing and migrating from subnetwork to subnetwork subject to the local RF conditions.
These devices need to be uniquely addressable from existing Unix hosts, as well as capable of being monitored from current Enterprise Network Element Managers.
We've further hypothesized that by 2012 as many as fifty of these networks will be in existence, each of which may need to have all their nodes addressable by multiple vendors.
There is your business case for IPV6.
Ironically, internally, in our company, and on all of our servers - we are 100% split stack. No desire whatsoever to run IPV6 pure environments. NAT does everything we need. Don't even run IPV6 on our IPSEC Remote Access VPN or 802.11 environment.
A couple notes
o IT Certifications, with a few possible exceptions (CCIE) - are almost completely meaningless. They basically indicate that you have an IQ > 100 and your employer paid to send you to a boot camp.
o As one who has interviewed 100s of IT professionals, I discover that you can learn a lot from another IT professional by saying "What technology have you worked with recently, and tell me about it."
o Why do you think other professions aren't asked questions that are relevant to their field? Programmers are _always_ asked to code in an interview. EEs are asked to comment on circuit designs in their field. Mechanical Es are asked to describe how they've solved problems.
o Lawyers/Accountants/Doctors all require professional certification from accredited organizations, unlike IT "Professionals" that receive their certification from money-oriented diploma mills.
"What I wondered was, what happens if you take top-notch C++ programmers who dream in pointers, and let them code in VB. What I discovered at Fog Creek was that they become super-efficient coding machines. The code looks pretty good, it's object-oriented and robust, but you don't waste time using tools that are at a level lower than you need."
So, there are actually two resources that are available - the first is the computing power, the second would be the heat energy.
I've always thought it was an incredible shame that there are all these electric base board heaters out there that just do that - heat. It seems to my (possibly demented) mind, that it would make more sense to have those heaters consist of processors doing some type of useful calculation.
So, in houses heated by electricity, maybe it would make sense to leave the PS3/XBox-360s on 24x7 both doing calculations _and_ heating the house.
They are, after all, an almost 100% efficient heater.
So, as one who has hired (and been hired) at a number of startups and medium size companies, I have a bit on insight into the dynamics of what salaries have been doing in the valley since 1996 (when I started at Netscape). I'm not so sure how the specific analysis applies elsewhere, but the general advice applies.
Basically things got out of control between 98 and 2001 as venture capital flowed into companies that were required to grow quickly by the venture capital. All of the good talent was hired quickly, and then some of the average talent was hired. All that was left was the basic low-no skill talent.
So, there was a situation in which it became difficult to find low-average talent, and our standard economic models tell us that when demand goes up and supply stays relatively stable (it takes a little bit of time to supply new IT/Developers) that the price per unit will go up.
And that's what happened. The market tried to correct, everybody came flooding into the valley (as evidenced by Traffic Jams, zero rental inventory and huge monthly rentals) and, in order to have any chance of holding onto employees, companies started increasing salaries.
Good employees had great salaries and average employees had salaries that they would never normally be able to earn as companies scrambled to bring on staff. Salary inversions happened all of the time as an employee who started at $50K/year doing desktop support was making $20K/year less than a guy who started a year later. Most companies leveled these off, bringing up the $50K/year employee to $70K which created even more pricing pressure on employees.....
And then the Bust in 2001 when Venture capital dried up, the stock market basically collapsed. Public companies could no longer do secondaries to raise capital and Private companies, well, they grew very, very slowly if at all.
Companies laid off employees by the thousands and people fled the valley. (As evidenced by vast rental inventories, much lower traffic on 880 and 101 and a 30-40% drop in the cost of rental housing). Salaries in some cases dropped (HP/Microsoft dropped by approx 10% in the valley) and in almost every case froze for several years for existing employees.
For new employees, it was (and still is) a totally different situation - Basically for every IT job there are about 100-200 applicants. Only the good ones get hired and their salaries are at a competitive level. A solid IT Desktop Support employee at a mid-level company can expect to make 96-97 salaries in the valley ($50K-$60K). Sysadmins with 8-10 years experience are making $70-$90K. Everything has cooled off and the employer is in the drivers seat again.
The good news is that Great Engineers (IT/Software Developers) are _always_ impossible to find in the valley, good/bad/otherwise. You basically have to steal them from another company in order to hire them as they don't typically come directly out of school. Their salaries haven't dropped at all (as their companies held onto them - Great employees are always the last to be laid off) at their current salary, or they made a lateral move (equal salary) to a new company if their previous company went out of business.
What this means for you - If you love the business ignore the salary - it means nothing in the first 3-4 years of your career. Absolutely nothing. Work for free if you have to. Focus only on three things:
o The Quality of the Job - What will you be doing, will you have the resources to do it, will you be given lots of authority and opportunity to do new things.
o The Quality of the Company. Does it treat it employees ethically, Is it well financed (!!!), does it have great management, do you have highly skilled coworkers who will cross train you/develop you.
o The Quality of the Opportunity - Is this company in a hot space, are they developing a great product, are they first movers in a cool new technology that will become a standard.
Everything else will take care of itself if you are passionate, skilled and focussed. Don't worry about negotiating/looking for a great wage/etc... That will take care of itself. I promise you.
Even if you do make less than a waiter for the first 18 months or so.:-)
Alternatively, realize that Apple may quite likely be filing this patent as a defense mechanism.
It would be demonstrable incompetence in their Intellectual Properties division if Apple was succesfully sued for patent infringement for the iPod by another company?
Now, if this technology cannot be Patented/is not patentable, then Apple is covered, because then Apple can't be sued for patent infringement.
Alternatively, if they are awared a patent on several of their claims, then it makes for good counter-ammunition when someone else trys to sue them.
99% of the time, Patent Portfolio's are built up as a defensive mechanism, kind of like mutually assured destruction.
Any company large enough to have a patent attorney will be doing this sort of thing.
The C64 was not actually first computer (that would have been the TI 99 4/A) that we had in the house (bought for $99 in The US.:-), but it was certainly the one that had the largest impact on me.
Oddly enough, my father bought it for me on almost a whim one christmas, and the first thing I did after unpacking it was try and have it make sound. Withing about 15 minutes I'd figured out the ADSR (Attack/Decay/Sustain/Release) stuff in the manual, and it was making noise!
Then their were the sprites (Activated in the latter part of video memory, which was 1024-2023, so arround 2040-2047 for the eight built in sprites)
But the big change was when I ran across the following code (addresses may not be exact, major geek points for correcting me)
For x = 49152 to 57344:poke x, peek(x):next X
Now, this code did _nothing_. It was basically saying Look in a memory position, and store in that memory position whatever is in that memory position. But take the code out, and the program just didn't work.
Anyways, after much reading and consulting, I finally came across a Compute! book which explained what was happening here - The "Peek" was coming from ROM, and the POKE would push through to RAM, and then, once you'd copied over the character set, you'd switch out that "chunk" of memory so that the C64 would read from RAM instead of ROM.
Oh, my single greatest moment of C64 hacking was when a fellow student in Grade 11 was writing a geography quiz program, and wanted to Display the map in Graphical format (that he had saved using an imaging program of some sort), but then ask questions about it using just print and input statements on the same screen.
About 48 hours later I had managed to 1. Reverse engineer the 6510 code (about 350 statements) that loaded the image onto the screen so I could duplicate that functionality, and
2. Figure out a mechanism by which you could display the top half of the screen in "graphics" mode, and the lower half in "text" mode - basically you would set up an interrupt on every horizontal retrace of the video display, and when you reached either line 0 (the top) or line 95 (or somesuch), change mode to either graphics or text.
And it worked.
Many fond memories of the C64, being able to hack it provided pretty much any self esteem I ever had in High School.
I can go one better. For a long time I stopped purchasing CDs, and just listened to whatever was playing on the radio, or in my Cube (my 4Pod mate has his stereo system wired through 23' of cable into speakers that sit on my side of the cube so as to give him that "real" surround sound. Flatscreen monitors hide the speakers on my side and don't get all gaused up like a CRT. But I digress).
But, I was kicking back, listening to the Steve Jobs Key Note at MWSF, and I totally and completely got caught up in the patented "Jobs Distortion Field". Part of it was iPhoto (I have close to 6000 poorly organized digital pictures), and part of it was how cool OS X is looking, but withing a month of the Keynote, I am now the proud owner of an iPod, Powerbook 667, and, (and I don't think I'm isolated here), about $200 worth of CDs in the last two weeks alone.
And my process is identical to yours -
o Buy the CD (Okay, it's more like, Buy every major domestic album U2 has ever produced),
o Rip the CDs with iTunes (The 667 get's a little warm, but it works flawlessy)
o Throw the Jewelcase away and Pack the CD into my CD-208 Binder (which also handily stores software and DVDs)
o Listen to the Music on the Powerbook or iPod.
I can honestly state I have not, in over a year, listened to music being played _directly from a CD_. And, while I recognize that I'm in the minority here (I don't drive, so I don't worry about car CD players), I can say with some assurance that for every 100,000 iPods or other MP3 players get sold, the chance of copy protection being acceptable gets diminishingly less.
That's It, it's all over - If nobody buys copy protected CDs (and nobody with an iPod will or MP3 player will), it's game over. DIVX went down not because it was broken, but because nobody was interested in buying the Discs.
It's too late - The revolution has been won. There will be no Copy Protection that prevents people from converting their Music into MP3s, because nobody will buy that media.
You heard it here first. (Err, well, maybe not, but I haven't seen it written anywhere but above before... )
One particular feature of the Replay TV 4000 is it's commercial skipping AKA "Commercial Advance" feature (See commercial advancing for more details)
If PVRs like the RTV 4000 begin to take off, I don't think it's too much of a stretch to predict that the major broadcasters/networks will respond by adjusting their broadcast methods, perhaps by eliminating the trademark "dead space" which enables commerical advancing.
One lesser known feature of Replay TV (See Replay Codes for more) is the quickskip-by-minute feature. Pressing 2 and Quickskip on the controller jumps ahead 2 minutes.
Of course, if this becomes an issue, you can be sure that we'll be getting 15 second commercial breaks, 45 second commercial breaks, etc....
I've actually seen some people move into their Cubes at Netscape. After all, you have everything you need their, Food, Showers, On Sight Laundry - The works. The number of futons underneath the desks there attested to how many people were sleeping there (Thought, this became less frequent in the year leading up to the AOL buyout)
Update: Darrin Johnson (of Adaptec) has written with the following information:
" The source code for the new drivers (which by the way was developed by the "community") is and will always be available and should by now have found it's way into the core Linux code. Although we did our initial effort with Redhat the code will migrate quickly into all of the distributions. "
Personally, I love the fact that osi.org points to the Ontario Swine Insititute. Should make it rabidly clear what "OSI certified" Means.
Of course, if you didn't go the osi.org, you'd probably think that something that was OSI certified was referring to a certain seven layer Network Model, and you would probably be pretty puzzled as to why anyone would want to associate themselves with the actual OSI protocols... At least I would.
...In _one_ customer deployment We're deploying 1.7 million devices over 1200 mobile subnetworks in under 18 months. Each device needs to be capable of self addressing and migrating from subnetwork to subnetwork subject to the local RF conditions.
These devices need to be uniquely addressable from existing Unix hosts, as well as capable of being monitored from current Enterprise Network Element Managers.
We've further hypothesized that by 2012 as many as fifty of these networks will be in existence, each of which may need to have all their nodes addressable by multiple vendors.
There is your business case for IPV6.
Ironically, internally, in our company, and on all of our servers - we are 100% split stack. No desire whatsoever to run IPV6 pure environments. NAT does everything we need. Don't even run IPV6 on our IPSEC Remote Access VPN or 802.11 environment.
A couple notes
o IT Certifications, with a few possible exceptions (CCIE) - are almost completely meaningless. They basically indicate that you have an IQ > 100 and your employer paid to send you to a boot camp.
o As one who has interviewed 100s of IT professionals, I discover that you can learn a lot from another IT professional by saying "What technology have you worked with recently, and tell me about it."
o Why do you think other professions aren't asked questions that are relevant to their field? Programmers are _always_ asked to code in an interview. EEs are asked to comment on circuit designs in their field. Mechanical Es are asked to describe how they've solved problems.
o Lawyers/Accountants/Doctors all require professional certification from accredited organizations, unlike IT "Professionals" that receive their certification from money-oriented diploma mills.
To quote Joel:
0 06.html
"What I wondered was, what happens if you take top-notch C++ programmers who dream in pointers, and let them code in VB. What I discovered at Fog Creek was that they become super-efficient coding machines. The code looks pretty good, it's object-oriented and robust, but you don't waste time using tools that are at a level lower than you need."
Check this link:
http://www.joelonsoftware.com/articles/fog0000000
So, there are actually two resources that are available - the first is the computing power, the second would be the heat energy.
I've always thought it was an incredible shame that there are all these electric base board heaters out there that just do that - heat. It seems to my (possibly demented) mind, that it would make more sense to have those heaters consist of processors doing some type of useful calculation.
So, in houses heated by electricity, maybe it would make sense to leave the PS3/XBox-360s on 24x7 both doing calculations _and_ heating the house.
They are, after all, an almost 100% efficient heater.
First, what's with the %ull format specifier in sprintf - is that even a valid format specifier?
Next, why subtract 2 from your buffer length when printing?
Finally, why bother with the "printprime" and sprintf function altogether - is there anything wrong with:Okay, this is kind of nitpicking, but I'm clearly missing something obvious here...
So, as one who has hired (and been hired) at a number of startups and medium size companies, I have a bit on insight into the dynamics of what salaries have been doing in the valley since 1996 (when I started at Netscape). I'm not so sure how the specific analysis applies elsewhere, but the general advice applies.
:-)
Basically things got out of control between 98 and 2001 as venture capital flowed into companies that were required to grow quickly by the venture capital. All of the good talent was hired quickly, and then some of the average talent was hired. All that was left was the basic low-no skill talent.
So, there was a situation in which it became difficult to find low-average talent, and our standard economic models tell us that when demand goes up and supply stays relatively stable (it takes a little bit of time to supply new IT/Developers) that the price per unit will go up.
And that's what happened. The market tried to correct, everybody came flooding into the valley (as evidenced by Traffic Jams, zero rental inventory and huge monthly rentals) and, in order to have any chance of holding onto employees, companies started increasing salaries.
Good employees had great salaries and average employees had salaries that they would never normally be able to earn as companies scrambled to bring on staff. Salary inversions happened all of the time as an employee who started at $50K/year doing desktop support was making $20K/year less than a guy who started a year later. Most companies leveled these off, bringing up the $50K/year employee to $70K which created even more pricing pressure on employees.....
And then the Bust in 2001 when Venture capital dried up, the stock market basically collapsed. Public companies could no longer do secondaries to raise capital and Private companies, well, they grew very, very slowly if at all.
Companies laid off employees by the thousands and people fled the valley. (As evidenced by vast rental inventories, much lower traffic on 880 and 101 and a 30-40% drop in the cost of rental housing). Salaries in some cases dropped (HP/Microsoft dropped by approx 10% in the valley) and in almost every case froze for several years for existing employees.
For new employees, it was (and still is) a totally different situation - Basically for every IT job there are about 100-200 applicants. Only the good ones get hired and their salaries are at a competitive level. A solid IT Desktop Support employee at a mid-level company can expect to make 96-97 salaries in the valley ($50K-$60K). Sysadmins with 8-10 years experience are making $70-$90K. Everything has cooled off and the employer is in the drivers seat again.
The good news is that Great Engineers (IT/Software Developers) are _always_ impossible to find in the valley, good/bad/otherwise. You basically have to steal them from another company in order to hire them as they don't typically come directly out of school. Their salaries haven't dropped at all (as their companies held onto them - Great employees are always the last to be laid off) at their current salary, or they made a lateral move (equal salary) to a new company if their previous company went out of business.
What this means for you - If you love the business ignore the salary - it means nothing in the first 3-4 years of your career. Absolutely nothing. Work for free if you have to. Focus only on three things:
o The Quality of the Job - What will you be doing, will you have the resources to do it, will you be given lots of authority and opportunity to do new things.
o The Quality of the Company. Does it treat it employees ethically, Is it well financed (!!!), does it have great management, do you have highly skilled coworkers who will cross train you/develop you.
o The Quality of the Opportunity - Is this company in a hot space, are they developing a great product, are they first movers in a cool new technology that will become a standard.
Everything else will take care of itself if you are passionate, skilled and focussed. Don't worry about negotiating/looking for a great wage/etc... That will take care of itself. I promise you.
Even if you do make less than a waiter for the first 18 months or so.
Alternatively, realize that Apple may quite likely be filing this patent as a defense mechanism.
It would be demonstrable incompetence in their Intellectual Properties division if Apple was succesfully sued for patent infringement for the iPod by another company?
Now, if this technology cannot be Patented/is not patentable, then Apple is covered, because then Apple can't be sued for patent infringement.
Alternatively, if they are awared a patent on several of their claims, then it makes for good counter-ammunition when someone else trys to sue them.
99% of the time, Patent Portfolio's are built up as a defensive mechanism, kind of like mutually assured destruction.
Any company large enough to have a patent attorney will be doing this sort of thing.
The C64 was not actually first computer (that would have been the TI 99 4/A) that we had in the house (bought for $99 in The US. :-), but it was certainly the one that had the largest impact on me.
Oddly enough, my father bought it for me on almost a whim one christmas, and the first thing I did after unpacking it was try and have it make sound. Withing about 15 minutes I'd figured out the ADSR (Attack/Decay/Sustain/Release) stuff in the manual, and it was making noise!
Then their were the sprites (Activated in the latter part of video memory, which was 1024-2023, so arround 2040-2047 for the eight built in sprites)
But the big change was when I ran across the following code (addresses may not be exact, major geek points for correcting me)
For x = 49152 to 57344:poke x, peek(x):next X
Now, this code did _nothing_. It was basically saying Look in a memory position, and store in that memory position whatever is in that memory position. But take the code out, and the program just didn't work.
Anyways, after much reading and consulting, I finally came across a Compute! book which explained what was happening here - The "Peek" was coming from ROM, and the POKE would push through to RAM, and then, once you'd copied over the character set, you'd switch out that "chunk" of memory so that the C64 would read from RAM instead of ROM.
Oh, my single greatest moment of C64 hacking was when a fellow student in Grade 11 was writing a geography quiz program, and wanted to Display the map in Graphical format (that he had saved using an imaging program of some sort), but then ask questions about it using just print and input statements on the same screen.
About 48 hours later I had managed to
1. Reverse engineer the 6510 code (about 350 statements) that loaded the image onto the screen so I could duplicate that functionality, and
2. Figure out a mechanism by which you could display the top half of the screen in "graphics" mode, and the lower half in "text" mode - basically you would set up an interrupt on every horizontal retrace of the video display, and when you reached either line 0 (the top) or line 95 (or somesuch), change mode to either graphics or text.
And it worked.
Many fond memories of the C64, being able to hack it provided pretty much any self esteem I ever had in High School.
I can go one better. For a long time I stopped purchasing CDs, and just listened to whatever was playing on the radio, or in my Cube (my 4Pod mate has his stereo system wired through 23' of cable into speakers that sit on my side of the cube so as to give him that "real" surround sound. Flatscreen monitors hide the speakers on my side and don't get all gaused up like a CRT. But I digress).
But, I was kicking back, listening to the Steve Jobs Key Note at MWSF, and I totally and completely got caught up in the patented "Jobs Distortion Field". Part of it was iPhoto (I have close to 6000 poorly organized digital pictures), and part of it was how cool OS X is looking, but withing a month of the Keynote, I am now the proud owner of an iPod, Powerbook 667, and, (and I don't think I'm isolated here), about $200 worth of CDs in the last two weeks alone.
And my process is identical to yours -
o Buy the CD (Okay, it's more like, Buy every major domestic album U2 has ever produced),
o Rip the CDs with iTunes (The 667 get's a little warm, but it works flawlessy)
o Throw the Jewelcase away and Pack the CD into my CD-208 Binder (which also handily stores software and DVDs)
o Listen to the Music on the Powerbook or iPod.
I can honestly state I have not, in over a year, listened to music being played _directly from a CD_. And, while I recognize that I'm in the minority here (I don't drive, so I don't worry about car CD players), I can say with some assurance that for every 100,000 iPods or other MP3 players get sold, the chance of copy protection being acceptable gets diminishingly less.
That's It, it's all over - If nobody buys copy protected CDs (and nobody with an iPod will or MP3 player will), it's game over. DIVX went down not because it was broken, but because nobody was interested in buying the Discs.
It's too late - The revolution has been won. There will be no Copy Protection that prevents people from converting their Music into MP3s, because nobody will buy that media.
You heard it here first. (Err, well, maybe not, but I haven't seen it written anywhere but above before... )
One particular feature of the Replay TV 4000 is it's commercial skipping AKA "Commercial Advance" feature (See commercial advancing for more details)
:-D
If PVRs like the RTV 4000 begin to take off, I don't think it's too much of a stretch to predict that the major broadcasters/networks will respond by adjusting their broadcast methods, perhaps by eliminating the trademark "dead space" which enables commerical advancing.
One lesser known feature of Replay TV (See Replay Codes for more) is the quickskip-by-minute feature. Pressing 2 and Quickskip on the controller jumps ahead 2 minutes.
Of course, if this becomes an issue, you can be sure that we'll be getting 15 second commercial breaks, 45 second commercial breaks, etc....
Like I said, One Upmanship.
Ah, none other than the Jamie Zawinski (of netscape/Mozilla/Lucid Emacs fame) has been working on this particular problem.
m l
Check out:
http://www.dnalounge.com/backstage/log/2001/02.ht
Where Jamie provides a pointer to:
http://www.linuxcanada.com/linuxpos.html
He also took a swipe at hacking up his own Linux based POS system:
http://www.dnalounge.com/backstage/src/pos/
I've actually seen some people move into their Cubes at Netscape. After all, you have everything you need their, Food, Showers, On Sight Laundry - The works. The number of futons underneath the desks there attested to how many people were sleeping there (Thought, this became less frequent in the year leading up to the AOL buyout)
Update: Darrin Johnson (of Adaptec) has written with the following information:
" The source code for the new drivers (which by the way was developed by the "community") is and will
always be available and should by now have found it's way into the core Linux code. Although we did our
initial effort with Redhat the code will migrate quickly into all of the distributions. "
Personally, I love the fact that osi.org points to
the Ontario Swine Insititute. Should make it
rabidly clear what "OSI certified" Means.
Of course, if you didn't go the osi.org, you'd
probably think that something that was OSI
certified was referring to a certain seven layer
Network Model, and you would probably be pretty
puzzled as to why anyone would want to associate
themselves with the actual OSI protocols... At
least I would.