By way of introduction, I run a high-end software consultancy[1] and have spend a good proportion of the last few years trying to recruit really good CS grads.
My overwhelming impression is one of massive variability in quality of CS graduates, which bears no relation to the result they got. Hence, a CS degree (even a first class one) is out of step with the realities of real jobs. It seems that the really good candidates succeed partly in spite of their CS training, and the really bad ones use their degree to cover over the cracks in their abilities for as long as possible when in a real work situation. Often, hiring a CS grad is like hiring a baby: you have to run around cleaning up after then for ages. They don't really start learning how to code until they start working on their first job - they're really only at trainee level at that point.
I'm slowly forming the opinion that a full time CS degree with no industry experience is the wrong training for professional programmers. We don't train doctors or engineers like that! Give me anyone who's passionate about coding, regardless of experience and even to a certain extent regardless of talent: they can be turned into a great software craftsman over several years, if they have the right personal skills and motivation. What's actually important is: how organised are they? What's their attention to detail like? Can they get on with other people? These skills are learned in real work environments, not in a lecture hall.
An apprenticeship scheme, working on the job with a sponsoring company, and perhaps a part time CS degree for the theory would work better. This should be taken over about five years: true software craft is hard and most achieving a good level stumble their way there in the dark for about a decade before they really know what they're doing.
If CS grads were more like this, then maybe they'll actually be in demand.
Being a professional admin, nothing gives me the confidence in my linux box than building it entirely from source. See this site for more.
I've got three webservers sitting on the net with great uptimes, plus the bonus of knowing they only have the software installed that I absolutely need.
I wouldn't recommend this option if you don't have time to let the PC compile everything, or if you are on a slow box (my 1st gen Athlon 600 took a week to compile LFS), but it works very nicely for me.
Why shouldn't the Planet terminate the contract? That's up to them - they have to make decisions to effectively run their business.
The website can simply move to another ISP (outside of the US if it prefers) and the US economy suffers by having one less service exported, based on a business decision by one of it's companies.
Now if consumer ISPs (under pressure from the US Government or not) tried to block people from reading the site - now that would be censorship. As it is, give it a few hours and the site will pop back up somewhere else. No big deal.
Unfortunately, as always, someone will try and make this into a political issue. Based on the complete lack of information we have on the subject, it's dangerous to assume anything.
"Broader WiFi card support needs to be introduced to Linux. WiFi card support for the large and important group of laptop users hardly exists. The expedient solution here would to use something like Linuxant's DriverLoader which has the elegance of being a single point solution that's applicable to the great majority of user/device scenarios."
This is the single reason that stopped my from installing Linux on my laptop. Until I discovered ndiswrapper, that is, which wraps windows wireless drivers...
Now if ndiswrapper worked out of the box, that *would* be a step forward.
Sadly, Microsoft are up to their old tricks again...
1. Release a sub-standard product which looks like the better original. 2. Rely on their massive brand penetration to increase market share. 3. Throw enough cash at something to make it worthwhile.
It irritates me that they do this - it slows the rate of internet progress down by duplicating other peoples ideas. Why not invest in google and build on what someone else has done, rather than trying to completely monopolise all areas of the internet?
They have really deep pockets. They can afford to pay.
They might be able to afford to pay for a couple of these, but this sort of cash is going to hit any company in the world pretty hard, even one the size of Microsoft.
If they are trying to set a precedent, they'd better hope it doesn't take too many of these payouts...
When I first saw this article title on the RSS feed, I actually thought that it was about some convicted UCE-sending dude called Hormal who was spending money on a PR exercise to clear his name.
Just goes to show how deeply entrenched the new meaning of 'spam' is - I think it'll take a lot more than $2m to shift the synapses of the average netizen...
Re:You have no idea what OO is all about.
on
C++ In The Linux kernel
·
· Score: 2, Insightful
I respectfully disagree, having spent several years of my life coding C++ and Java professionally.
There's more to OO than mere polymorphism. Encapsulation is a very useful feature in its own right. By 'could cause problems', read 'could cause problems in kernel development'. For example, virtual functions require lookups and dereferencing at runtime, and the vtable arbitrarily increases the size of an object, both of which are undesirable in kernel development.
...as long as kernel hackers use the best bits of C++ (default parameters, OO paradigm, late declaration of local variables, const correctness), and leave out everything that could cause problems (virtual functions, inheritance (especially MI), exceptions).
But that's not going to happen. Give people the tools and they will use them (badly), so we'll end up with a flurry of rejected patches and signal/noise ratio will plummet.
I also suggested that they should allow you to link machines together by name/IP, so that I can search more than one machine's index. It would be so helpful to search across all my machines in one goo.
Obviously you'd need clear messages and a confirmation popup on the target machine first time you did it - plus a little balloon to say the machine was being searched etc...
By way of introduction, I run a high-end software consultancy[1] and have spend a good proportion of the last few years trying to recruit really good CS grads.
My overwhelming impression is one of massive variability in quality of CS graduates, which bears no relation to the result they got. Hence, a CS degree (even a first class one) is out of step with the realities of real jobs. It seems that the really good candidates succeed partly in spite of their CS training, and the really bad ones use their degree to cover over the cracks in their abilities for as long as possible when in a real work situation. Often, hiring a CS grad is like hiring a baby: you have to run around cleaning up after then for ages. They don't really start learning how to code until they start working on their first job - they're really only at trainee level at that point.
I'm slowly forming the opinion that a full time CS degree with no industry experience is the wrong training for professional programmers. We don't train doctors or engineers like that! Give me anyone who's passionate about coding, regardless of experience and even to a certain extent regardless of talent: they can be turned into a great software craftsman over several years, if they have the right personal skills and motivation. What's actually important is: how organised are they? What's their attention to detail like? Can they get on with other people? These skills are learned in real work environments, not in a lecture hall.
An apprenticeship scheme, working on the job with a sponsoring company, and perhaps a part time CS degree for the theory would work better. This should be taken over about five years: true software craft is hard and most achieving a good level stumble their way there in the dark for about a decade before they really know what they're doing.
If CS grads were more like this, then maybe they'll actually be in demand.
[1] http://www.edendevelopment.co.uk/
Yeah, but this does compass direction too... not sure the GPS can do compass direction to any degree of accuracy without movement.
Being a professional admin, nothing gives me the confidence in my linux box than building it entirely from source. See this site for more.
I've got three webservers sitting on the net with great uptimes, plus the bonus of knowing they only have the software installed that I absolutely need.
I wouldn't recommend this option if you don't have time to let the PC compile everything, or if you are on a slow box (my 1st gen Athlon 600 took a week to compile LFS), but it works very nicely for me.
Why shouldn't the Planet terminate the contract? That's up to them - they have to make decisions to effectively run their business.
The website can simply move to another ISP (outside of the US if it prefers) and the US economy suffers by having one less service exported, based on a business decision by one of it's companies.
Now if consumer ISPs (under pressure from the US Government or not) tried to block people from reading the site - now that would be censorship. As it is, give it a few hours and the site will pop back up somewhere else. No big deal.
Unfortunately, as always, someone will try and make this into a political issue. Based on the complete lack of information we have on the subject, it's dangerous to assume anything.
From the article:
"Broader WiFi card support needs to be introduced to Linux. WiFi card support for the large and important group of laptop users hardly exists. The expedient solution here would to use something like Linuxant's DriverLoader which has the elegance of being a single point solution that's applicable to the great majority of user/device scenarios."
This is the single reason that stopped my from installing Linux on my laptop. Until I discovered ndiswrapper, that is, which wraps windows wireless drivers...
Now if ndiswrapper worked out of the box, that *would* be a step forward.
Sadly, Microsoft are up to their old tricks again...
1. Release a sub-standard product which looks like the better original.
2. Rely on their massive brand penetration to increase market share.
3. Throw enough cash at something to make it worthwhile.
It irritates me that they do this - it slows the rate of internet progress down by duplicating other peoples ideas. Why not invest in google and build on what someone else has done, rather than trying to completely monopolise all areas of the internet?
They have really deep pockets. They can afford to pay.
They might be able to afford to pay for a couple of these, but this sort of cash is going to hit any company in the world pretty hard, even one the size of Microsoft.
If they are trying to set a precedent, they'd better hope it doesn't take too many of these payouts...
When I first saw this article title on the RSS feed, I actually thought that it was about some convicted UCE-sending dude called Hormal who was spending money on a PR exercise to clear his name.
Just goes to show how deeply entrenched the new meaning of 'spam' is - I think it'll take a lot more than $2m to shift the synapses of the average netizen...
I respectfully disagree, having spent several years of my life coding C++ and Java professionally.
There's more to OO than mere polymorphism. Encapsulation is a very useful feature in its own right. By 'could cause problems', read 'could cause problems in kernel development'. For example, virtual functions require lookups and dereferencing at runtime, and the vtable arbitrarily increases the size of an object, both of which are undesirable in kernel development.
What the poster and the article both neglect to mention for us simpler types is why silicon is desirable.
Is it simply because it requires less modification to the production pipeline, or is there another more scientific reason?
Perhaps a scientific slashdotter can enlighten us. Ahem.
...as long as kernel hackers use the best bits of C++ (default parameters, OO paradigm, late declaration of local variables, const correctness), and leave out everything that could cause problems (virtual functions, inheritance (especially MI), exceptions).
But that's not going to happen. Give people the tools and they will use them (badly), so we'll end up with a flurry of rejected patches and signal/noise ratio will plummet.
Stick to C.
Now that's worth a suggestion - good thought.
I also suggested that they should allow you to link machines together by name/IP, so that I can search more than one machine's index. It would be so helpful to search across all my machines in one goo.
Obviously you'd need clear messages and a confirmation popup on the target machine first time you did it - plus a little balloon to say the machine was being searched etc...
...here