Switching to Apple's Mac OS X normally doesn't get you an alternative to MS, though. You'll get MSIE, probably pick up MS Office so you'll get MS Word, Excel, etc. So really, Apply is not an alternative to MS.
Now, that said I am not sure what other office suites currently work in Mac OS/X, perhaps there really are some good alternatives. Also, i'm not criticising Apple here, from what I've seen I quite like their OS.
Send out a document, get everyone to read it and sign it. Show them how to store their data in an area that will be backed up. Let them know that any data they do not store there will NOT be backed up. And let them know that when their hard drives crash, it is THEIR responsibility if they have lost any data.
Of course, you'll need management buy-in for this. I must say, though, that it is kind of a shame that Windows makes this difficult. At the university I attended, all the computing science machines mounted their home directories from one of several file servers. Those file servers were religiously backed up and so the loss of any individual workstation was entirely unimportant.
You are right, nobody screws up 2d graphics. However, the sharpness of the image (as well as brightness, etc., but that's beside the point) differs considerably from one card to the next.
Moving from my Geforce 2MX to my Radeon 7200, I could see the white line of pixels right next to the black line of pixels on a button, at 1280 x 1024 or higher. With the nvidia card, it blurred together. Just slightly, not in any way that I noticed while I was using the NVidia card, but switching to the Radeon did make a difference.
If I just used my computer for games, I'd almost certainly look only at the NVidia cards, at least at the moment. But I also use it for programming and the like and so 2D image quality is also important.
Re:in my humble opinion
on
The Age of Nvidia
·
· Score: 4, Insightful
I have used both NVidia and ATI video cards recently. I found that the 2d image quality on the ATI card (a Radeon 7200) was superior to that of the Nvidia 2MX card that I had. This was only noticable on my apature-grille monitor but it _was_ quite noticable.
I also dislike the fact that NVidia's Linux drivers are closed-source, though of course most people do not care about this.
These come from my experiences working with Indian programmers off-site. I am making no claims wrt Indian programmers on-site at your location as, in my experience, things work much better in that case. Furthermore, I am not saying Indian programmers are useless, only that the culture and language barriers make them much less productive than on-site developers.
Assuming you have four people including yourself on-site and, say, four developers in India, you will need to dedicate at least one of your developers (probably you) to managing the Indian programmers. This will be a full-time position. You probably will not do this and as a result, the productivity of the four Indian programmers will be approximately that of ONE of your on-site developers, and that is optimistic.
With a person full-time on managing the Indian programmers (and please note, an Indian manager in India is not the same), you will find that the four Indian programmers can develop at the rate of two to three of your on-site developers. This is because, in my experience, they are never willing to work overtime and also, because of the rather extreme language barriers, infrastructure problems, and culture differences.
Note that you will likely also need someone to do design for this project and furthermore, the design for the code you are shipping out to the developers in India need to be much more detailed than that you give to your on-site developers. In my experience, this can only be done on-site.
Add in a manager as you have a team of eight and you are now looking at:
- One manager - One liason with the Indian programmers - One (or two) designers - One (or zero) local developers - Four Indian developers, producing approximately 2 - 3 on-site developers' worth of code (and no design)
So your eight person team will be, optimistically, as productive as a four-man local team. Pessimistically, they will be half as productive.
You are likely to become slightly more productive with eight Indian developers and four local people.
For every four developers, you need one full-time person locally to do detailed design documents. For every eight or so people on your team, you need a manager. And you need one person solely managing the off-shore developers, assuming you keep their number down to reasonable numbers.
That means that with three local people and four Indian developers, you will achieve roughly the productivity of two local developers.
With four local people and eight Indian developers, you will achieve roughly the productivity of five local developers.
With five local people and 12 Indian developers, you get productivity of approximately 7 local developers.
It is rarely worth it to do development like this.
My first name is Christopher but I normally go by 'Chris'. And my last name begins with the letter, 'T'. At both my current job and my previous job, that worked out to an email address of 'Christ'.
Should programmers be able to refuse to write code that harms the public more than it helps?
This annoys me. We already have this right. Of course, your employer may fire you but hey, take a stand for once. Do not do anything you consider wrong. I've been asked to do things I found morally objectionable before (set up email monitoring, etc.) and I just refused to do it. Not once was I condemned for following what I considered moral behaviour.
I tried this at Future Shop and they refused to even accept it back. I pointed out that I refused to accept the license agreement and it said that I could return it to my place of purchase but they did not agree. I couldn't be bothered to cause any more fuss but if I get bored one day, I may try it again and get them either to pull off all copies of the software they are selling (because they are refusing to honour the agreement) or give me a signed document stating that I am not bound by the EULA.
Anyone know how well Gentoo works with LVM, Linux's logical volumn manager? I run Mandrake 8.1 at work and probably won't switch but at home, I also run Mandrake and would likely switch if the dist properly supported lvm. Particularly if that dist supported KDE 3 which I see Gentoo does.
Of course you get one universe per permutation. And of course each universe determines whether the set is sorted or not. But it is in O(n) because it takes O(n) to determine if a set is sorted or not. It isn't O(1) because each universe has to actually test to see if the set is sorted.
A one-time-pad is unbreakable provided that the pad itself doesn't fall into enemy hands. This is a fact and can be proven mathematically. Provided that you have one bit of randomness for every bit of the message, it cannot be broken.
This company is claiming unbreakable encryption because they have something like a OTP but have worked around the problem of having to transfer the pad itself. 'This is number is exchanged with the server through a secure process known only to Prescient'.
Okay, great. So now, instead of attacking the one-time-pad encryption, which we know is unbreakable if implemented correctly, hackers will now simply have to attack this 'secure process known only to Prescient'.
Snake oil. Their entire product really has NOTHING TO DO WITH ONE-TIME-PADS but instead, relies on a proprietary, secret algorithm that they won't tell you. At BEST, this is misleading. Their security is not unbreakable. It is far _less_ likely to be unbreakable than any other widely-known encryption algorithm. They are selling snake oil.
I used to charge one soul for every piece of unsolicited email I received. Eventually, I built up a collection of 666 of them (yes, I'm serious...) before deciding not to bother any more. I gave one of my ex's ten and, iirc, my current girlfriend inherited one hundred. That still leaves me with 556 souls, not including my own (if I still own it after this).
Wow. I had heard that Canadians were getting ripped off for tuition compared to all but the most expensive American colleges but I never knew how much!
Assuming your $1000 per semester is a roughly accurate ballpark, we are paying about 25 - 50 percent more than this. And, of course, we are paying in Canadian dollars which are undervalued at the moment. Everyone, at least at the UofA, is paying over $2000 (Canadian) per semester, not counting books, room and board, food, etc. etc.
I agree with you. That said, I'd like to see the term, software developer, bandied about with more value. A software programmer would be simply someone who can program, given sufficient specifications. A software developer would be someone who knows the difference between a linked list and a map, someone who can do some object-oriented design. And then, computer engineers who are really a totally different topic.
It isn't bullshit, my company often feels this way as well. There's _nothing_ wrong with getting a product certification, you just don't have to use it on your resume. Really, you should know already whether the company you are applying for puts much wait on product certifications.
It is important to note that basically all of these exams are product certifications. Having an MCSD certifies that you are familiar with the Microsoft development environment but it does NOT certify that you know much about software engineering. Certainly, Microsoft tries to ensure that you actually know how to program but they don't do a very good job; that's not a dig at Microsoft, though, as they are primarily ensuring that you know their tools.
Now, some companies will hire you if you have sufficient product certifications. Others require a degree from a recognised institution. At the place where I work, we are of the latter mindset. Someone who applies to our company and just lists Microsoft certifications will have their resume instantly trashed. Someone who has a BSc in Computing Science will be seriously considered. Depending on what we want them for, a BSc and an MCSD _may_ carry more weight than a BSc alone. It certainly shows that someone is dedicated to their field. But the important thing to note is that an MCSD by itself adds NO VALUE WHATSOEVER to a potential employee unless they have a legitimate degree as well. Of course, this is just the current place I am employed.
Prior to my current employment, I worked at a company which was huge on Microsoft certifications. They most definitely would hire a developer who only had an MCSD and treated such certifications as more valuable than BSc's. That said, the company is now in dire straights and the average developer there was of far lower calibre.
It is interesting to note that, at least in Canada, it is illegal to state that you are a 'Microsoft Certified Systems Engineer'. This is because you are then fraudulently representing yourself as an engineer. Microsoft even issued a memo about this a year or two back. That said, you certainly can state that you have passed the MCSE, so long as you do not spell out the 'E'.
99.9% uptime is really not that much. I mean, this is 8 hours of downtime each year. I do not know about you but in my university environment, the labs were booked to capacity. If an entire lab (or worse) is down for an entire day (well, eight hours), how do you recover from this? You cannot ask students to come in on the weekend or in the evening because they work and have other classes. So do you skip the knowledge that was to be imparted during that lab session? Well, now you are compromising the students' learning.
When I say that the company should be able to guarantee 99.9% uptime, I am not looking for who to blame, I am looking for a reliable setup. I do not believe that Citrix and Windows offers such a setup but with such a guarantee, my concerns would be mollified. But if they are not willing to guarantee even that (and 99.9% is not anything particularly exceptional), it is too big of a risk.
So do the job. Avoid 'solutions' where the company selling you the product isn't sure enough of it to guarantee the damn thing can run reliably.
At the university I attended, the computing science department tried something similar to this.
Having a central Windows machine and thin clients for each of the users was a horrendous mistake. Whole labs spent as much time non-functional as they spent functional. Even having users change their passwords was problematic. Now, this was a few years back now and things may have improved. However, the only way I'd consider this is if the company you are buying the hardware from will guarantee uptime. This should be at least 99.9% uptime (and yes, this includes security patches and hardware failures), otherwise you are going to get crucified.
On the other hand, the computing science department also maintains several labs running OpenBSD for the client operating system. A student can log in to any computer in any lab because the/home directories are exported (over NFS, I think, but I could be wrong) from central file servers. The default software is installed locally so things can run very quickly but a large amount of additional software is also installed on central file servers and exported out to all the machines.
That setup is not bulletproof but the uptime is measured in weeks or months rather than hours or days. Depending on the year, it probably approaches 99.9% uptime. It also has the nice advantage of almost all of the software being entirely free.
So which should you go with? From my experience (ymmv), the clearly superior technical solution is to run OpenBSD on a large number of semi-thin client Intel machines. This is far more reliable than a competing Windows solution. From a cost perspective, there's really no comparison. That said, this assumes that you can migrate over to a Unix style environment. Not everyone can. Do not forget that you'd be throwing out all your Windows software using this solution. Also, you require sysadmins who are familiar with Unix. I assume this is the case.
Nusphere fixed the basic issue here; they no longer distribute without source code.
Assuming this is true (I have read conflicting reports), the GPL does not actually allow you to 'fix the basic issue' and then continue on as you wish.
You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
Once Nusphere initially released without source code (they claimed source would be available later), they were, strictly speaking, in violation of the GPL and by section 4, automatically terminated any claims to a license that they had.
Now, most reasonable companies would allow them to get into compliance with the GPL, then drop the matter. MySQL decided not to. While I do not agree with this action, it is, strictly legally speaking, the right thing for MySQL to do in this situation.
e.g. after 45 days the documents they receive cannot be viewed any more
This is fundamentally impossible. I mean, if they were really desperate, they could just take pictures of the screen showing the source. But more realistically, there are simply too many ways for them to bypass any restriction you put in place.
The only way you stand a chance here is with a contract in place preventing them from looking at the source code after 45 days and specifying huge consequences if they do. And to be honest, even that is very iffy.
Switching to Apple's Mac OS X normally doesn't get you an alternative to MS, though. You'll get MSIE, probably pick up MS Office so you'll get MS Word, Excel, etc. So really, Apply is not an alternative to MS.
Now, that said I am not sure what other office suites currently work in Mac OS/X, perhaps there really are some good alternatives. Also, i'm not criticising Apple here, from what I've seen I quite like their OS.
Send out a document, get everyone to read it and sign it. Show them how to store their data in an area that will be backed up. Let them know that any data they do not store there will NOT be backed up. And let them know that when their hard drives crash, it is THEIR responsibility if they have lost any data.
Of course, you'll need management buy-in for this. I must say, though, that it is kind of a shame that Windows makes this difficult. At the university I attended, all the computing science machines mounted their home directories from one of several file servers. Those file servers were religiously backed up and so the loss of any individual workstation was entirely unimportant.
I guess 256 bits of encryption (where each possible combination results in a strong key) will never be brute-forced, then.
You are right, nobody screws up 2d graphics. However, the sharpness of the image (as well as brightness, etc., but that's beside the point) differs considerably from one card to the next.
Moving from my Geforce 2MX to my Radeon 7200, I could see the white line of pixels right next to the black line of pixels on a button, at 1280 x 1024 or higher. With the nvidia card, it blurred together. Just slightly, not in any way that I noticed while I was using the NVidia card, but switching to the Radeon did make a difference.
If I just used my computer for games, I'd almost certainly look only at the NVidia cards, at least at the moment. But I also use it for programming and the like and so 2D image quality is also important.
I have used both NVidia and ATI video cards recently. I found that the 2d image quality on the ATI card (a Radeon 7200) was superior to that of the Nvidia 2MX card that I had. This was only noticable on my apature-grille monitor but it _was_ quite noticable.
I also dislike the fact that NVidia's Linux drivers are closed-source, though of course most people do not care about this.
These come from my experiences working with Indian programmers off-site. I am making no claims wrt Indian programmers on-site at your location as, in my experience, things work much better in that case. Furthermore, I am not saying Indian programmers are useless, only that the culture and language barriers make them much less productive than on-site developers.
Assuming you have four people including yourself on-site and, say, four developers in India, you will need to dedicate at least one of your developers (probably you) to managing the Indian programmers. This will be a full-time position. You probably will not do this and as a result, the productivity of the four Indian programmers will be approximately that of ONE of your on-site developers, and that is optimistic.
With a person full-time on managing the Indian programmers (and please note, an Indian manager in India is not the same), you will find that the four Indian programmers can develop at the rate of two to three of your on-site developers. This is because, in my experience, they are never willing to work overtime and also, because of the rather extreme language barriers, infrastructure problems, and culture differences.
Note that you will likely also need someone to do design for this project and furthermore, the design for the code you are shipping out to the developers in India need to be much more detailed than that you give to your on-site developers. In my experience, this can only be done on-site.
Add in a manager as you have a team of eight and you are now looking at:
- One manager
- One liason with the Indian programmers
- One (or two) designers
- One (or zero) local developers
- Four Indian developers, producing approximately 2 - 3 on-site developers' worth of code (and no design)
So your eight person team will be, optimistically, as productive as a four-man local team. Pessimistically, they will be half as productive.
You are likely to become slightly more productive with eight Indian developers and four local people.
For every four developers, you need one full-time person locally to do detailed design documents. For every eight or so people on your team, you need a manager. And you need one person solely managing the off-shore developers, assuming you keep their number down to reasonable numbers.
That means that with three local people and four Indian developers, you will achieve roughly the productivity of two local developers.
With four local people and eight Indian developers, you will achieve roughly the productivity of five local developers.
With five local people and 12 Indian developers, you get productivity of approximately 7 local developers.
It is rarely worth it to do development like this.
My first name is Christopher but I normally go by 'Chris'. And my last name begins with the letter, 'T'. At both my current job and my previous job, that worked out to an email address of 'Christ'.
I am rather amused by this.
I tried this at Future Shop and they refused to even accept it back. I pointed out that I refused to accept the license agreement and it said that I could return it to my place of purchase but they did not agree. I couldn't be bothered to cause any more fuss but if I get bored one day, I may try it again and get them either to pull off all copies of the software they are selling (because they are refusing to honour the agreement) or give me a signed document stating that I am not bound by the EULA.
Anyone know how well Gentoo works with LVM, Linux's logical volumn manager? I run Mandrake 8.1 at work and probably won't switch but at home, I also run Mandrake and would likely switch if the dist properly supported lvm. Particularly if that dist supported KDE 3 which I see Gentoo does.
A universe cannot determine if sub-universes exist because each universe is at the same level, not hierarchically arranged.
Of course you get one universe per permutation. And of course each universe determines whether the set is sorted or not. But it is in O(n) because it takes O(n) to determine if a set is sorted or not. It isn't O(1) because each universe has to actually test to see if the set is sorted.
A one-time-pad is unbreakable provided that the pad itself doesn't fall into enemy hands. This is a fact and can be proven mathematically. Provided that you have one bit of randomness for every bit of the message, it cannot be broken.
This company is claiming unbreakable encryption because they have something like a OTP but have worked around the problem of having to transfer the pad itself. 'This is number is exchanged with the server through a secure process known only to Prescient'.
Okay, great. So now, instead of attacking the one-time-pad encryption, which we know is unbreakable if implemented correctly, hackers will now simply have to attack this 'secure process known only to Prescient'.
Snake oil. Their entire product really has NOTHING TO DO WITH ONE-TIME-PADS but instead, relies on a proprietary, secret algorithm that they won't tell you. At BEST, this is misleading. Their security is not unbreakable. It is far _less_ likely to be unbreakable than any other widely-known encryption algorithm. They are selling snake oil.
I used to charge one soul for every piece of unsolicited email I received. Eventually, I built up a collection of 666 of them (yes, I'm serious...) before deciding not to bother any more. I gave one of my ex's ten and, iirc, my current girlfriend inherited one hundred. That still leaves me with 556 souls, not including my own (if I still own it after this).
Wow. I had heard that Canadians were getting ripped off for tuition compared to all but the most expensive American colleges but I never knew how much!
Assuming your $1000 per semester is a roughly accurate ballpark, we are paying about 25 - 50 percent more than this. And, of course, we are paying in Canadian dollars which are undervalued at the moment. Everyone, at least at the UofA, is paying over $2000 (Canadian) per semester, not counting books, room and board, food, etc. etc.
I agree with you. That said, I'd like to see the term, software developer, bandied about with more value. A software programmer would be simply someone who can program, given sufficient specifications. A software developer would be someone who knows the difference between a linked list and a map, someone who can do some object-oriented design. And then, computer engineers who are really a totally different topic.
It isn't bullshit, my company often feels this way as well. There's _nothing_ wrong with getting a product certification, you just don't have to use it on your resume. Really, you should know already whether the company you are applying for puts much wait on product certifications.
No, train engineers are specifically excluded from the whole engineer-trademark thing.
It is important to note that basically all of these exams are product certifications. Having an MCSD certifies that you are familiar with the Microsoft development environment but it does NOT certify that you know much about software engineering. Certainly, Microsoft tries to ensure that you actually know how to program but they don't do a very good job; that's not a dig at Microsoft, though, as they are primarily ensuring that you know their tools.
Now, some companies will hire you if you have sufficient product certifications. Others require a degree from a recognised institution. At the place where I work, we are of the latter mindset. Someone who applies to our company and just lists Microsoft certifications will have their resume instantly trashed. Someone who has a BSc in Computing Science will be seriously considered. Depending on what we want them for, a BSc and an MCSD _may_ carry more weight than a BSc alone. It certainly shows that someone is dedicated to their field. But the important thing to note is that an MCSD by itself adds NO VALUE WHATSOEVER to a potential employee unless they have a legitimate degree as well. Of course, this is just the current place I am employed.
Prior to my current employment, I worked at a company which was huge on Microsoft certifications. They most definitely would hire a developer who only had an MCSD and treated such certifications as more valuable than BSc's. That said, the company is now in dire straights and the average developer there was of far lower calibre.
It is interesting to note that, at least in Canada, it is illegal to state that you are a 'Microsoft Certified Systems Engineer'. This is because you are then fraudulently representing yourself as an engineer. Microsoft even issued a memo about this a year or two back. That said, you certainly can state that you have passed the MCSE, so long as you do not spell out the 'E'.
When I say that the company should be able to guarantee 99.9% uptime, I am not looking for who to blame, I am looking for a reliable setup. I do not believe that Citrix and Windows offers such a setup but with such a guarantee, my concerns would be mollified. But if they are not willing to guarantee even that (and 99.9% is not anything particularly exceptional), it is too big of a risk.
So do the job. Avoid 'solutions' where the company selling you the product isn't sure enough of it to guarantee the damn thing can run reliably.
My university used OpenBSD because it was generally more secure (a _big_ concern) and also because they had several OpenBSD developers on staff.
Having a central Windows machine and thin clients for each of the users was a horrendous mistake. Whole labs spent as much time non-functional as they spent functional. Even having users change their passwords was problematic. Now, this was a few years back now and things may have improved. However, the only way I'd consider this is if the company you are buying the hardware from will guarantee uptime. This should be at least 99.9% uptime (and yes, this includes security patches and hardware failures), otherwise you are going to get crucified.
On the other hand, the computing science department also maintains several labs running OpenBSD for the client operating system. A student can log in to any computer in any lab because the /home directories are exported (over NFS, I think, but I could be wrong) from central file servers. The default software is installed locally so things can run very quickly but a large amount of additional software is also installed on central file servers and exported out to all the machines.
That setup is not bulletproof but the uptime is measured in weeks or months rather than hours or days. Depending on the year, it probably approaches 99.9% uptime. It also has the nice advantage of almost all of the software being entirely free.
So which should you go with? From my experience (ymmv), the clearly superior technical solution is to run OpenBSD on a large number of semi-thin client Intel machines. This is far more reliable than a competing Windows solution. From a cost perspective, there's really no comparison. That said, this assumes that you can migrate over to a Unix style environment. Not everyone can. Do not forget that you'd be throwing out all your Windows software using this solution. Also, you require sysadmins who are familiar with Unix. I assume this is the case.
Assuming this is true (I have read conflicting reports), the GPL does not actually allow you to 'fix the basic issue' and then continue on as you wish.
Section four of the GPL states:
Once Nusphere initially released without source code (they claimed source would be available later), they were, strictly speaking, in violation of the GPL and by section 4, automatically terminated any claims to a license that they had.
Now, most reasonable companies would allow them to get into compliance with the GPL, then drop the matter. MySQL decided not to. While I do not agree with this action, it is, strictly legally speaking, the right thing for MySQL to do in this situation.
This is fundamentally impossible. I mean, if they were really desperate, they could just take pictures of the screen showing the source. But more realistically, there are simply too many ways for them to bypass any restriction you put in place.
The only way you stand a chance here is with a contract in place preventing them from looking at the source code after 45 days and specifying huge consequences if they do. And to be honest, even that is very iffy.