I realise that I only know a subset of Google employees and that there may be some selection bias involved, but extrapolating from my experience: all of them. Although only when they get bored of the beer that Google provides in the office.
If they did not allow him to leave, then he may also have grounds for a kidnapping charge. Assuming that Canadian law is similar to UK law in this regard, the security guards are legally allowed to do two things: ask him to leave (and escort him from the premises) or make a citizens' arrest. Generally, they are trained to only do the first one because it's very hard to correctly make a citizen's arrest, and if you do it wrong then you can be charged with unlawful detention, kidnapping, assault, or something similar, depending on how wrong you do it. If you refuse to let someone leave private property, then you have committed a crime. It doesn't matter if they have also committed a crime while being there, only a police officer or someone acting in this capacity (via a citizen's arrest) may legally detain someone, and there are strict legal rules about the procedure that they must follow when doing so.
Debatable. The lenses on cheaper film cameras tend to be larger, and therefore more fragile than their digital counterparts. On a digital SLR both have large lenses and so the most fragile part is the the same in both cases.
less expensive
My £100 mobile phone takes reasonable (although not great) photos. Even getting films developed, let alone printed, can quickly cost this much and is far less convenient. You either need your own dark room (and doing that for colour is amazingly complicated), or you need to go to a shop and pay someone else to do it.
and you don't have to worry about getting dirt and dust on the sensor
This is only really an issue for DSLRs, where the lens is detachable and so the sensor is sometimes exposed. You also need to worry about getting dust and dirt inside the same part of a film SLR for similar reasons, although they're bit easier to clean.
Modern tablets have HDMI out and support Bluetooth, allowing for up to 7 controllers. It also has more CPU and probably more GPU than a current generation console. There's no reason why you couldn't run console-style games on such a device. The only clutter would be the HDMI cable going from the tablet dock to the TV and the power cable going from the dock to the mains. And it's easy to imagine people adding this clutter anyway so that they can watch films bought from the Android / iTunes store on their TV...
The SheevaPlug uses a CPU with no FPU, a feature that has been standard on most ARM chips aimed for anything except the ultra low end of the embedded market for quite a few years now. If you're doing image processing using software floating point and expecting even vaguely reasonable performance, then you are an idiot.
There were two differences between the Celeron and the Pentium II. It had an external bus speed of 66MHz as opposed to 100MHz and it had half the size level 2 cache, but which ran twice as fast. Overclocking made the external bus speed 100MHz, and reduce the cost of cache misses. L2 cache misses were more common (the cache was smaller), but L1 cache misses were cheaper (the L2 cache was faster). It was also possible with a slight tweak to run two in an SMP configuration with some quite cheap motherboards: a dual processor 300MHz Celeron overclocked to 450MHz beat pretty much anything else in terms of price/performance.
I'm not sure how representative that is. For example, I know quite a few people (including myself) who have written C/C++ for a living, but none who would even think of looking on dice.com for a job. Most of the well-paid jobs for C programmers are advertised on companies' own web sites and by word of mouth.
Prevailing wage is difficult to enforce in any skilled industry. It's easy to define for a menial job because you have lots of people who are equally qualified and lots of alternative jobs requiring the same qualifications. The more specialised the job, the more specialised the set of skills and the smaller the set available for comparison. Companies also don't like disclosing how much they pay their employees, because it makes life easier for headhunters, so you have to guess quite a lot. You can go by the salaries offered in similar jobs from adverts, but that doesn't necessarily reflect the salaries that are offered when a qualified person turns up. Or you can pick a generic category, like software developer, and try to average that, ignoring the fact that someone fresh out of university writing PHP web apps is going to be making a whole lot less than someone writing realtime embedded systems.
Cisco has had a lot of known vulnerabilities over the last few years, so I'd be wary of installing them too. The Chinese intelligence agencies almost certainly examine them for additional ones, and I wouldn't be at all surprised if this is the result of Cisco not fixing a load of holes that the Chinese found (and maybe didn't report), rather than any issue about trusting a US company.
XInput2 provides the ability for the window manager to perform arbitrary coordinate transforms on user input, for precisely this reason (the use case was screen magnifiers, wanting to make a window larger and still have input work correctly).
This proposal allows exactly this behaviour. The window manager is typically also a compositing manager and so it is perfectly at liberty to keep the same screen resolution with this proposal and simply render the application's output scaled to the native resolution. That is part of one of the core ideas of X11: the separation of policy and mechanism. Something that the Wayland guys, in their rush to create a half-arsed copy of Quartz, miss. This is just a way of the game telling the WM that it is going to draw at a specific resolution and it wants to have exclusive use of the screen. The WM can then either:
Resize the screen to exactly match that resolution.
Resize the screen to be slightly (or a lot) more than that resolution, centre the game window, and draw black around the edges.
Keep the screen resolution the same but upscale the game's output during the compositing phase.
Send the game to the projector designated by the user as the screen to use for full screen games
Do something else that the WM author thought was a good idea.
The article contained a lot of detail. The current mechanism is a two-step thing where the application first requests full-screen control from the WM. The WM then resizes the window to fit the current screen (which may not make the game happy), removes decorations, and then gets out of the way. Then the game changes the resolution and resizes the window again. The resolution change notification is delivered to the WM, which then propagates it to all of the applications, so if you want to play a fullscreen game at 640x480 then you may find that all of your application windows have resized themselves to fit in this screen when you exit it. The game then runs (hopefully) and if it crashes then in theory the WM is responsible for restoring the video mode, but in practice it doesn't know for certain that the game was responsible for changing it, so it may not.
With the new proposal, the game resizes its window to the resolution it wants and then requests full screen mode. The WM should then change the screen resolution to the closest to the current window size and doesn't propagate the resolution change notification to any other applications. This means that nothing else gets resized. If the game crashes, or if you do any kind of switching out of the game, then the desktop resolution will be restored.
And, while it's fashionable to hate X11, it's worth noting that Windows and OS X both suffer from some of the problems that this proposal is intended to fix.
XBlast multiplayer worked by using remote X. You'd start up one instance, give it a list of remote X displays, and each display would get its own window. It worked really well over a (shared) 10Mbit network with 8 players. With AIGLX, even remote display of OpenGL games should work. I played GLQuake on a remote display with an SGI machine back in the day and it worked pretty well.
When you want to be totally immersed in a game, full screen is the way to go. When you want to use it to fill in some time while waiting for something else to finish (compiling!) then having it in a window so you can glance over at the status of the other things is better. The thing that pisses me off most is when games don't have a windowed mode and also disable application switching. If I get an email and want to check whether it's important, I have to quit the game and then reload it afterwards, for something that would otherwise be a 2-3 second activity.
I recently tried to use the Mac App store for the first time, and it's a complete UI disaster. Or it only has about 100 things in it, because those were the only ones that were easily discoverable by browsing. I could search and find specific applications if I knew I wanted them, but what do app developers get from Apple taking 30% of the purchase price if the potential customer has to be actively looking for their application? A credit card processor and a CDN cost a fraction of that. For small usage, PayPal or Google Checkout charge around 3% and you can host the data in Amazon's cloud and get a pretty scalable distribution system for a lot less than Apple charges (unless your app is free or no one ever buys it).
I think I'd be on her side there. You live in a human body every day and I suspect a lot of your work involves fine control of your hands, if it involves computers at all. How can you not have have spent some time studying the layout of bones, muscles, nerves and sinews that make it all work? Are you equally ignorant of how your cardiovascular and digestive systems work?
Do you know how a city water system works? that's a marvelous creation.
Yes. A culvert under the front of a house I was renting needed repairing and it wasn't clear whether it was my landlord or the council's liability (the plans were sufficiently old and ambiguous that it could have been either on or off property or just spanning the border, so because this became relevant to my life I spent some time learning how it all worked. In fact, the answer in many places was 'very badly, using pipes that haven't been repaired for almost 100 years and which were designed for a fraction of their current capacity.' So, basically, just like computers.
Do you understand the metallurgy used to create a nail? do you know the variety of chemical choices the can be made when making gas?
In the detail required to reproduce the work? No. As a high-level overview, sure. For example, I know enough about the common varieties of steal and techniques like galvanisation to be able to select the correct nail for the job.
The vast majority of marvelous thing that you use you don't really care how they work in any real detail.
I would definitely disagree with that statement and challenge you to come up with any complex (or simple) machine that I use on a regular basis (say, more than twice a year) without understanding at least the basic principles of operation.
It's not that people are dumb, it's that computers are still very new
You know, I heard that excuse a lot twenty years ago. Since then, computers have entered into every facet of modern life. People leaving university today were born after the world wide went online, and even after home Internet access became cheap. I've spoken to people who are now retired who have been programming for their entire career. Unless someone has been living in a cave for the last few decades, they have no excuse for not being at least passingly familiar with this stuff. I have a lot of time for people who find that they are in a situation that their prior experience doesn't give them the tools to deal with, I have none for people who are wilfully ignorant and refuse to take advantage of opportunities to rectify this.
It wasn't innovative. ActiveX was basically COM, and COM was just a standard for vtable layouts, of which there had been dozens of others. It had very weak introspection support (equivalent to C++ dynamic_cast, which already existed, far weaker than other component models that let you query and enumerate the available methods).
In a BBC interview today, Steve Ballmer said to his partners and customers further down the supply chain 'we've started competing with you in some small niches, but don't think we're going to stop there. We're going to keep expanding down the supply chain until we've completely destroyed your business model. Oh, and please keep buying Windows 8 licenses from us!'
'School' is neither worthless or priceless, but consider your (short term and long term) goals carefully.
Actually, there is one situation when university really is pointless: when you go there just to get a degree. People who go into a university course just to get a piece of paper end up getting a really expensive piece of paper and nothing else of value. People who go in because they're interested in the subject and want to fill in gaps in their knowledge usually get a lot more out of it, if only awareness of the depth of their ignorance and the gaps that they'd be most interested in filling. I saw this among my peers as a student and among those that I've taught after getting my PhD.
See the upcoming papers for more detail, but basically we're redoing how memory protection is implemented and adding a capability model in hardware. This makes it very easy to do function calls that cross a security domain and so only have access to things that were specifically delegated to them. This also means it's easier to implement some higher-level language features, such as making the interior of an object inaccessible to anything outside.
Not to mention they never burn out. I have yet to have an LED fail me and my whole house has been LED since 2009.
The lifespan of an LED is supposed to be about 40 years (not sure how much to trust manufacturer numbers though), but your second sentence doesn't really support the first. I've not had a CFL burn out in under 3 years, but I don't think I've had any last more than a decade either.
If I were doing a new build now, I'd be tempted to put in a DC main for lighting and for powering small appliances and then LEDs would be a big win. Retrofitting them in existing houses seems like the wrong place to go for initial adoption.
what kind of Google employee goes to a bar?
I realise that I only know a subset of Google employees and that there may be some selection bias involved, but extrapolating from my experience: all of them. Although only when they get bored of the beer that Google provides in the office.
Don't be too hard on him, he went to an American school.
If they did not allow him to leave, then he may also have grounds for a kidnapping charge. Assuming that Canadian law is similar to UK law in this regard, the security guards are legally allowed to do two things: ask him to leave (and escort him from the premises) or make a citizens' arrest. Generally, they are trained to only do the first one because it's very hard to correctly make a citizen's arrest, and if you do it wrong then you can be charged with unlawful detention, kidnapping, assault, or something similar, depending on how wrong you do it. If you refuse to let someone leave private property, then you have committed a crime. It doesn't matter if they have also committed a crime while being there, only a police officer or someone acting in this capacity (via a citizen's arrest) may legally detain someone, and there are strict legal rules about the procedure that they must follow when doing so.
but it's more rugged,
Debatable. The lenses on cheaper film cameras tend to be larger, and therefore more fragile than their digital counterparts. On a digital SLR both have large lenses and so the most fragile part is the the same in both cases.
less expensive
My £100 mobile phone takes reasonable (although not great) photos. Even getting films developed, let alone printed, can quickly cost this much and is far less convenient. You either need your own dark room (and doing that for colour is amazingly complicated), or you need to go to a shop and pay someone else to do it.
and you don't have to worry about getting dirt and dust on the sensor
This is only really an issue for DSLRs, where the lens is detachable and so the sensor is sometimes exposed. You also need to worry about getting dust and dirt inside the same part of a film SLR for similar reasons, although they're bit easier to clean.
Modern tablets have HDMI out and support Bluetooth, allowing for up to 7 controllers. It also has more CPU and probably more GPU than a current generation console. There's no reason why you couldn't run console-style games on such a device. The only clutter would be the HDMI cable going from the tablet dock to the TV and the power cable going from the dock to the mains. And it's easy to imagine people adding this clutter anyway so that they can watch films bought from the Android / iTunes store on their TV...
The SheevaPlug uses a CPU with no FPU, a feature that has been standard on most ARM chips aimed for anything except the ultra low end of the embedded market for quite a few years now. If you're doing image processing using software floating point and expecting even vaguely reasonable performance, then you are an idiot.
There were two differences between the Celeron and the Pentium II. It had an external bus speed of 66MHz as opposed to 100MHz and it had half the size level 2 cache, but which ran twice as fast. Overclocking made the external bus speed 100MHz, and reduce the cost of cache misses. L2 cache misses were more common (the cache was smaller), but L1 cache misses were cheaper (the L2 cache was faster). It was also possible with a slight tweak to run two in an SMP configuration with some quite cheap motherboards: a dual processor 300MHz Celeron overclocked to 450MHz beat pretty much anything else in terms of price/performance.
I'm not sure how representative that is. For example, I know quite a few people (including myself) who have written C/C++ for a living, but none who would even think of looking on dice.com for a job. Most of the well-paid jobs for C programmers are advertised on companies' own web sites and by word of mouth.
Prevailing wage is difficult to enforce in any skilled industry. It's easy to define for a menial job because you have lots of people who are equally qualified and lots of alternative jobs requiring the same qualifications. The more specialised the job, the more specialised the set of skills and the smaller the set available for comparison. Companies also don't like disclosing how much they pay their employees, because it makes life easier for headhunters, so you have to guess quite a lot. You can go by the salaries offered in similar jobs from adverts, but that doesn't necessarily reflect the salaries that are offered when a qualified person turns up. Or you can pick a generic category, like software developer, and try to average that, ignoring the fact that someone fresh out of university writing PHP web apps is going to be making a whole lot less than someone writing realtime embedded systems.
Cisco has had a lot of known vulnerabilities over the last few years, so I'd be wary of installing them too. The Chinese intelligence agencies almost certainly examine them for additional ones, and I wouldn't be at all surprised if this is the result of Cisco not fixing a load of holes that the Chinese found (and maybe didn't report), rather than any issue about trusting a US company.
XInput2 provides the ability for the window manager to perform arbitrary coordinate transforms on user input, for precisely this reason (the use case was screen magnifiers, wanting to make a window larger and still have input work correctly).
The article contained a lot of detail. The current mechanism is a two-step thing where the application first requests full-screen control from the WM. The WM then resizes the window to fit the current screen (which may not make the game happy), removes decorations, and then gets out of the way. Then the game changes the resolution and resizes the window again. The resolution change notification is delivered to the WM, which then propagates it to all of the applications, so if you want to play a fullscreen game at 640x480 then you may find that all of your application windows have resized themselves to fit in this screen when you exit it. The game then runs (hopefully) and if it crashes then in theory the WM is responsible for restoring the video mode, but in practice it doesn't know for certain that the game was responsible for changing it, so it may not.
With the new proposal, the game resizes its window to the resolution it wants and then requests full screen mode. The WM should then change the screen resolution to the closest to the current window size and doesn't propagate the resolution change notification to any other applications. This means that nothing else gets resized. If the game crashes, or if you do any kind of switching out of the game, then the desktop resolution will be restored.
And, while it's fashionable to hate X11, it's worth noting that Windows and OS X both suffer from some of the problems that this proposal is intended to fix.
XBlast multiplayer worked by using remote X. You'd start up one instance, give it a list of remote X displays, and each display would get its own window. It worked really well over a (shared) 10Mbit network with 8 players. With AIGLX, even remote display of OpenGL games should work. I played GLQuake on a remote display with an SGI machine back in the day and it worked pretty well.
When you want to be totally immersed in a game, full screen is the way to go. When you want to use it to fill in some time while waiting for something else to finish (compiling!) then having it in a window so you can glance over at the status of the other things is better. The thing that pisses me off most is when games don't have a windowed mode and also disable application switching. If I get an email and want to check whether it's important, I have to quit the game and then reload it afterwards, for something that would otherwise be a 2-3 second activity.
I recently tried to use the Mac App store for the first time, and it's a complete UI disaster. Or it only has about 100 things in it, because those were the only ones that were easily discoverable by browsing. I could search and find specific applications if I knew I wanted them, but what do app developers get from Apple taking 30% of the purchase price if the potential customer has to be actively looking for their application? A credit card processor and a CDN cost a fraction of that. For small usage, PayPal or Google Checkout charge around 3% and you can host the data in Amazon's cloud and get a pretty scalable distribution system for a lot less than Apple charges (unless your app is free or no one ever buys it).
I think I'd be on her side there. You live in a human body every day and I suspect a lot of your work involves fine control of your hands, if it involves computers at all. How can you not have have spent some time studying the layout of bones, muscles, nerves and sinews that make it all work? Are you equally ignorant of how your cardiovascular and digestive systems work?
Do you know how a city water system works? that's a marvelous creation.
Yes. A culvert under the front of a house I was renting needed repairing and it wasn't clear whether it was my landlord or the council's liability (the plans were sufficiently old and ambiguous that it could have been either on or off property or just spanning the border, so because this became relevant to my life I spent some time learning how it all worked. In fact, the answer in many places was 'very badly, using pipes that haven't been repaired for almost 100 years and which were designed for a fraction of their current capacity.' So, basically, just like computers.
Do you understand the metallurgy used to create a nail? do you know the variety of chemical choices the can be made when making gas?
In the detail required to reproduce the work? No. As a high-level overview, sure. For example, I know enough about the common varieties of steal and techniques like galvanisation to be able to select the correct nail for the job.
The vast majority of marvelous thing that you use you don't really care how they work in any real detail.
I would definitely disagree with that statement and challenge you to come up with any complex (or simple) machine that I use on a regular basis (say, more than twice a year) without understanding at least the basic principles of operation.
It's not that people are dumb, it's that computers are still very new
You know, I heard that excuse a lot twenty years ago. Since then, computers have entered into every facet of modern life. People leaving university today were born after the world wide went online, and even after home Internet access became cheap. I've spoken to people who are now retired who have been programming for their entire career. Unless someone has been living in a cave for the last few decades, they have no excuse for not being at least passingly familiar with this stuff. I have a lot of time for people who find that they are in a situation that their prior experience doesn't give them the tools to deal with, I have none for people who are wilfully ignorant and refuse to take advantage of opportunities to rectify this.
It wasn't innovative. ActiveX was basically COM, and COM was just a standard for vtable layouts, of which there had been dozens of others. It had very weak introspection support (equivalent to C++ dynamic_cast, which already existed, far weaker than other component models that let you query and enumerate the available methods).
In a BBC interview today, Steve Ballmer said to his partners and customers further down the supply chain 'we've started competing with you in some small niches, but don't think we're going to stop there. We're going to keep expanding down the supply chain until we've completely destroyed your business model. Oh, and please keep buying Windows 8 licenses from us!'
That wasn't a shill, that was a good troll. The clue is the use of ActiveX as an example of an innovative technology.
'School' is neither worthless or priceless, but consider your (short term and long term) goals carefully.
Actually, there is one situation when university really is pointless: when you go there just to get a degree. People who go into a university course just to get a piece of paper end up getting a really expensive piece of paper and nothing else of value. People who go in because they're interested in the subject and want to fill in gaps in their knowledge usually get a lot more out of it, if only awareness of the depth of their ignorance and the gaps that they'd be most interested in filling. I saw this among my peers as a student and among those that I've taught after getting my PhD.
See the upcoming papers for more detail, but basically we're redoing how memory protection is implemented and adding a capability model in hardware. This makes it very easy to do function calls that cross a security domain and so only have access to things that were specifically delegated to them. This also means it's easier to implement some higher-level language features, such as making the interior of an object inaccessible to anything outside.
Not to mention they never burn out. I have yet to have an LED fail me and my whole house has been LED since 2009.
The lifespan of an LED is supposed to be about 40 years (not sure how much to trust manufacturer numbers though), but your second sentence doesn't really support the first. I've not had a CFL burn out in under 3 years, but I don't think I've had any last more than a decade either.
If I were doing a new build now, I'd be tempted to put in a DC main for lighting and for powering small appliances and then LEDs would be a big win. Retrofitting them in existing houses seems like the wrong place to go for initial adoption.