Short answer: No. Not to mention, that stuff is pasteurized. Of course, we don't know everything about vCJD, so I can't say that with 100% certainty, but it seems pretty certain that it has more to do with the brain than with the milk.
I thought pasteurization did not affect prions. That you could burn them in an open fire and they weren't destroyed.
It isn't obserd to clame it when Windows crashes more and more with each new version.
Huh? That is not my experience at all. I can leave my XP workstation on for weeks. It doesn't crash. I've seen a windows bluescreen just once in the last year.
If you are as careful with your drivers on windows as you are on linux, it is just as stable.
I know it's trollish to say here but the font rendering on OS X is the worst of all modern operating systems. It's so blured it's hard to read (Not to mention that everything is bolded). Linux with good fonts actully is one of the best these days.
It's not trollish. You just prefer linux-style font rendering. Most people don't. I am one of them. I always found both linux and windows font rendering to be too blocky, not smooth enough, with linux being the worse of the two. I think the fonts on OS X are beautiful. I could never use a serif font in the web browser on linux or windows because it looked too ugly. On OS X my default safari font is a serif font.
As for OpenGL. Nvidia hardware performs about 100% better on Linux that on OS X. Altough that may change when OS X goes x86.
How long can you keep your X session running using nvidia's drivers? A honest question. I never made it past the five day mark when I was still on linux (on various hardware combo's, but admittedly, this was two years ago). My mac's gui has not crashed once in the 6 months that I've owned it.
If you need it there is wine for office productivity and photoshop for Linux too.
MS Office and Photoshop in wine suck ass. I know because I used to do that very thing. They don't integrate worth a damn with the rest of your environment. I couldn't even do basic stuff like pasting an image from a linux app into photoshop, let alone the more complicated things like dragging html excerpts from the browser into word and having them appear using the correct markup. Also, they were slow and unstable. Photoshop needs to be fast. Photoshop on the mac is very very fast (despite the performance hit from the slow CPU).
DRM does not decrease the capability of a machine. It increases it. Hear me out. A DRM machine can still do all the things it could do before, that is, play any sort of non-DRM content. In addition, it can play DRM content too. It just has an extra feature. Admitted, the feature is more for the content providers than for the users, but still... Now, what will be different is the type of content offered. Now it's all non-DRM (at least non-hardware-DRM). That will change.
In the end, it will come down to value. If the content will be priced too high for what you can do with it, it will not sell, and either the seller will not use the hardware capability of restricted features, or lower prices. My personal examples of e-books is that if I could no longer convert a purchased e-book to html for storage, and easier reading (transferring it to whatever mobile platform or using text to speech) I would not be interested in paying for it. It has little value to me. I might pay one or two dollars for a book if I could only read it in microsoft reader or adobe reader.
The only thing that matters here is not whether OS's or hardware supports DRM or not. What matters is your perception of the value of unrestricted content. If the masses perceive restricted content as valuable as unrestricted content (or nearly so), most of the content will become restricted, since it obviously offers more avenues for profitability to the seller. You can only hand freedom to people who want it. If the perception of most people is that content freedom is not that big of a deal, all the armchair arguing won't matter a single bit.
I also remember being told over and over again that "Windows 95 is uncrashable due to its 32-bit memory protection".
To be fair, with the right set of drivers windows 95 was pretty solid. I had several PC's running windows 95 that after careful driver tuning had very little problems in the way of stability, where I could use it all day without a forced reboot.
I used to run OS/2 and some custom tools in 3.11 just to make it more user friendly (for the life of me I can't remember what it was called, but it added a sidebar, which was way different).
Are you thinking of PC Tools 2 for Windows 3.1(1)? It replaced the windows graphical shell and file manager, so you had multiple desktops (with window drag and drop via a pager), icons on the desktop, a better file browsers (with tree-based navigation and built-in zip file support), support for dock-like apps, 3D window borders, better system monitoring tools, and I believe some kind of task bar equivalent (but my memory is hazy, and it predates the popular web, so google holds no answers).
Anyway, it was a resource hog, and unstable (even compared to windows 3.1 itself), but it had some really nice functionality, and windows 95 to me felt like a step down in some ways coming from pc tools 2 (ofcourse, the dramatically improved stability without having to give up much in the way of performance was really nice).
I believe I kept using the pc tools file manager for a while under windows 95. I didn't have much need for long filenames back then (because I was still using a lot of dos software), and it was better than file explorer (especially the builtin zip support, which windows only got in XP, which to me is stupefyingly late).
I've suspected this was Apple's plan since the Intel announcement. They're going into direct competition with Microsoft.
How would they turn a profit? You can only make money as an OS vendor by cornering the OEM market (MS owns it), or by supplying server products and making your money on support (unlikely, since OS X is a lousy server OS, as many benchmarks have shown, and irrelevant to the desktop market, as linux has demonstrated conclusively).
Apple would be absolute fools to try to get into the generic PC OS market. They could never provide the Apple experience on generic hardware, and they wouldn't be able to turn a profit, since MS can outprice them as long as they want with the huge cash reserves MS has, and MS still owns the OEM market.
Now, I do agree that likely the final release of OS X for intel will run just fine on generic PC's, with a bit of tinkering. That is nothing special. What you won't see are COTS versions of OS X meant for generic intel PC's.
Ofcourse, it's a nice fantasy to think someone could finally make a decent generic PC OS, which is why I suspect so many people are clinging so desperately to this idea.
Actually, MS had a very good reason for crushing netscape, and it makes perfect business sense. Microsoft makes their money from selling platforms. MS charges users (clients and servers), not developers (you can get most MS development tools at ridiculously low prices). Now, here comes netscape, a cross-platform web development environment that is becoming a platform all by itself. Netscape sees a thin client future, where everyone is running the netscape browser and operating systems are irrelevant. MS realizes this, and does the only thing they logically could do: protect the investment in their existing platforms by destroying netscape.
Improving the web platform would run counter to their whole investment in destroying netscape. The entire point of it was to halt the development of the web platform in its tracks, not to improve that platform.
This is also why IE7 is not offering much in the way of platform improvements. They're only making it good enough to keep you from going to firefox, who are providing a new platform threat, and therefore a new browser war.
There is only one server, but there is an unlimited amount of procsessing distributed among the clients.
Exactly, javascript is scalable. There is much more spare CPU time on the client than on the server. That's why moving as much as possible client-side is the right approach for moderate to highly complex web apps. Also, an additional benefit is that users can improve performance themselves, just by moving to a faster machine.
I'm building a web-based CAD app for work (floorplan viewer/editor), and ended up doing it as a combination of a lot of actionscript (flash), a sizeable amount of javascript to manage the part of the UI done in HTML, and a bit of PHP glue logic to shuttle database contents to and from the flash. This replaced an existing solution of server-side generated png files. The new solution can support an order of magnitude more users on the same server hardware. The existing solution had to be replaced in part because customers had complained it was just too slow to be useful, so moving things client-side can make a lot of sense from a business perspective.
The only thing wrong with the mini (that I can tell) is that the VGA output isn't at proper voltages and the color quality suffers a little. If you have the mini hooked up to a DVI monitor the color should be just fine.
You don't even need a DVI monitor. Plenty of the more high end VGA monitors allow you to switch voltages. I switched mine when I hooked it up to the mini. Looks great.
I think if there's anything that can make a big difference, it's a media-centered site like Apple's iTunes that has things like music videos, sampling, playlists, online radio stations. I can listen to more new bands in a week through iTunes than I ever heard introduced as a new band on a radio, in all the years I've been alive.
The itms is more varied when it comes to indie artists, but still not varied enough (how, for example, would I personally get my CD onto the itms if I made one?). Also, there are almost no mechanisms to discover new music. The genres are mostly useless (because they're way too generic, leaving thousands upon thousands of albums to each genre). The playlists are too haphazard, and the "customers also bought" never gave me anything I liked, ever, on any site. To add insult to injury, the short 30 second previews make it very difficult to figure out whether you like something, even if you do actually stumble across it. I think the entire itms is very unapple, because it is clumsy, inefficient, and generally a lousy user experience.
I get most of my music from cdbaby.com. They DO have a good variety of indie artists, and their music search tools are adequate for finding stuff you've never heard of before. Plus, they have 2 minute CD quality previews of most songs, which lets you figure out whether you like a CD or not. Admitted, most of the acts on CD Baby are crap, but there are many which are not.
Imagine if Microsoft did a *nix port of Office. Even though it might cannibalize sales of Windows, Microsoft would be rolling in a lot of dough from *nix users who need MS Office. Heck, if its really good, I might buy a copy.
First of all, there is no business unix desktop market worth speaking of (OS X excepted, which doesn't count, because it doesn't use X11 for native apps). Make no mistake, it's business use that matters. Few people need a full copy of office at home. How many people do you know personally who have a legal recent copy of MS Office for home use?
Secondly, what little market there is has very little interest in office. Most people running unix on the desktop have computing uses that do not involve office, or if they do, involve it so tangentially it makes more sense to use emulation, a separate machine, or a free competitor.
Add to that the fact that *nix is spelled with a *, meaning there are literally hundreds of different platforms, and at least a few dozen you would have to support (various versions of the major linux distros, freebsd and solaris), and doing binary distributions that work on all of them is a support nightmare, and it is not very hard to conclude office on *nix could not be profitable.
Remember what happened to Internet Explorer on the Mac when Microsoft dropped it. Now Microsoft losts its browser dominance on the Mac (because they no longer have an up-to-date browser). I don't think its in Microsoft's best interest to drop Office for OS X.
IE for Mac was a free product. It cost microsoft money to make it, and they got pretty much nothing in return. The reason they made it was primarily to ensure no competitor snuck in through the backdoor to create a cross-os platform that could be used to develop real software, making windows irrelevant. They dropped IE because Safari is mac-only, and therefore no threat to windows.
But from a standpoint of supporting a diverse ecology of software producers and lots of competition, the cathedral isn't the most desirable structure.
Systems design is nothing like nature. Evolution is incredibly messy and wasteful with resources. There is no reason to argue it is the most efficient system imaginable, even when it comes to protecting against outside threats. I think a good cathedral can get much more done with much fewer resources than a good bazaar.
I see this mirrored in open source projects, where all the really successful ones have a core leadership that has strongly dictated direction for the project. Sometimes you even see this happen within a project, where they "break through" because they changed to a more cathedral-like system, like how mozilla became firefox and suddenly soared. Even the pet project of the bazaar crowd, debian, is strongly cathedral-like, with no tolerance for diverging from policy.
It seems that when one pays a draconian cost (central control) to solve smaller problems (package dependencies, file locations), it might not be the best deal in the end. I'm still endeavoring to provide a better solution to this problem.
You just fear government. I don't blame you. But there is not yet a form of organizing effort into productivity that does not require government. If you invent one, very well, but, for now, government is still the best model of organizing effort. Sometimes the perfect is the enemy of the good. For me avoiding cathedrals because they are not perfect does just that.
The article's argument was not so much defending the infringement of copyright as it was underlining that there is a business model in legalized bittorrent downloads, and advertisers are likely to switch over to it because it makes more sense for them. Assertions that I don't find so out of line.
I believe the underlying notion of test-driven development is that you test for all possible ways your code will interact with the code that talks to it. Theoretically, if there is a test for every aspect of every feature, just complying with the test suite means that your code works. However, the work needed to write such a vast testsuite is just not worth it, ever. You might as well do formal verification of your entire codebase.
I see more value in common usage pattern regression tests, where you take a few different end-to-end usage scenarios for your software, write an automated test that executes that scenario and verifies it, and then know immediately when there is basic functionality failure of your code, even if you have no extensive knowledge of every part of the code's operation status.
Writing no tests whatsoever though, I do not find that acceptable. That means testing is offloaded onto humans, since all code beyond a certain size contains bugs, so all code must be inspected for those bugs. Whether you have a bunch of humans running through the common scenarios, or an automated suite doing it, is not very relevant. That it happens at all though, is, because if you don't, your customers will be your testers, which will impact your bottom line.
I for one think that it's great that there are still people out there with a goal to create perfect code, and not just slap features together.
Actually, what's most important is serving your users. You could have the fanciest design in the world, but if your product doesn't work as well from the user's perspective as your shoddily written competitor, your product sucks. Case in point: webcore supposedly has a messy implementation, khtml is supposedly technically excellent, yet webcore is a better engine because it renders sites better, thereby being more useful to the user.
Software does not exist in a vacuum. It has a purpose. It must do that purpose well. There is nothing more important than that. Sound internal design is merely a tool to achieve the purpose, and should never, ever, take preference over it. Not if you want people to actually use your software at least.
It seems to me the biggest lacking in OSS is not the featureset, it is the usability of that featureset. Take gimp for example. It's an excellent image editor. It has every feature I need. And yet I keep getting drawn back to photoshop when I need to get real work done, because gimp is such a PITA to use (less so than it used to be admittedly, but still not anywhere near what it could be).
This pattern for me is repeated over and over in almost all OSS projects. The few open source products I use on a daily basis and like are all centrally designed, with one person, or a few people, dictating the entire user-visible interface, like with firefox.
The total lack of usability progress in the vast majority of OSS projects is what made me give up on linux on the desktop. Yeah, it's fine to tinker, and yes, it does anything you need. But to get real work done it just gets in my way.
I don't mean to flame-bait, but that's my honest opinion. And I think if someone really wants to promote open source software, they are better off investing their resources in convincing projects to appoint design czars who have absolute control over the user-visible part of the software. Even a poorly done single-person design is still better than a methodically executed design by committee. These bounties for me are missing the point, and won't really matter in the end.
I thought you were kidding, then I actually read the thing. It's true. If this passes, the secretary will get to waive any and all laws as long as it is in the service of keeping illegal entrants outside of the US borders, and is excused from judicial review in any such decision he or she makes.
That is scary stuff. If not for the actual consequences, then for the precedent of waiving the entire body of law, and judicial review, at the sole discretion of a single person in government.
There is very little difference between what hardware you can extend a mac with and what hardware you can extend a wintel box with. On the inside, it's all the same, ATA, PCI, AGP, USB,...
Microsoft has to do just as much work as apple, since they too get most of their drivers "for free" by having them handed over by the hardware makers. There aren't that many drivers microsoft develops themselves, and this is very comparable to apple's situation.
The major difference is that companies who make hardware have to provide a windows driver, whereas they are allowed to provide a mac driver. In practice this means that the shoddy companies who do the least amount of effort possible only put out windows drivers, which tend to be broken, with the resulting stability problems for windows.
Just because it's fast enough for you doesn't mean it's fast enough for linus.
I RTFA. Apparently the bottleneck is merging new changesets from email. Seems BK is orders of magnitude faster than everything else out there for doing that.
I think what the parent was suggesting is that optimization offers little pay off when it takes time away from debugging or feature development. Performance is a feature. It must be weighed against other potential features. Sometimes performance is the feature your users need most, but most likely most of the time they'll need something else more.
I see this at work too. The software is slow, yes, but the demand for functionality from clients is much higher than the demand for performance, so performance work gets long-termed.
Well, in my case I'm running a recent optimized kernel (2.6.9-cko3), only have an ATI RAGE 2MB onboard video (which still flies in Windows), no DMA (this is SCSI, not IDE), but I do have paltry memory (256MB). I would find it highly ironic if Windows is outperforming Linux in a low-memory situation, given the years of "Linux can run on my , so take that Microsoft!".
First, the rage is indeed quite likely to be a bottleneck driver-wise. I would suggest verifying that you're using the "ati" driver in your X configuration. But even if you are, the windows drivers are most likely just plain faster.
Second, while there is some crediblity to the notion that you can strip down linux better than windows, modern linux installs are just as memory hungry as their windows equivalents, if not more so. So, yes, likely the low memory IS causing problems for you. Type ps -ax, see what it all does, see what you can remove or replace without losing functionality you need.
X performs well if it can use the hardware to its fullest potential, and if it is given control of the CPU by the OS when it needs it. So, without the right drivers, or when it has to battle other processes or the kernel itself (in the case of swap storms) for cpu time, it slows down dramatically. That's the thing about X. It is just another process, and the kernel gives it no preferential treatment. So, while that buys you batch processing performance, it is more likely to cost you in responsiveness on a badly configured system.
A great example of the major difference an accelerated driver makes is my laptop with a CyberBlade XP chipset. When I first installed debian on it, it was horribly unresponsive in kde, always taking ages for window updates. Then an accelerated driver became available. I copied it over the existing one, restarted X, and suddenly it was acceptably fast and responsive. A day and night difference.
For 99% of the coders out there, all that needs to be known about code optimization is: pick the right algorithms!
Very true. Micro-optimization is only useful if your code spends the majority of its time in a small subroutine or loop. Very few programs nowadays actually still do that. Most programs spend the majority of the time waiting on the user, and when they're not, they perform such diverse tasks that micro-optimization benefits very little.
What is most important is making a clean functional design first. If your design is sound, you can always optimize it later, if necessary. However, if you start optimizing from the start, not only will you be spending your time optimizing non-critical code paths, but you'll make your code so complicated that the design will suffer and actually preclude doing optimization the right way (based on profiling and seeing where performance must be improved). And that's not even talking about the increased bug incidence rate produced by unnecessarily complicated or unreadable code. In most modern software development projects the prime problem is not performance, it's getting rid of bugs so you can ship your product. Worrying about performance only makes sense if your product is truly too slow, and few products nowadays really are. I realise many purists find this concept offensive, but hardware is much cheaper than developer resources, so it is much more cost-effective to focus your resources on decreasing the bug rate than on increasing performance.
As a caveat, we should be wary of saying the system "understands" a language.
I would say generally that humans able to translate between languages generally understand both languages
No they don't. Most people don't consciously know the grammar of a language. Just ask someone to exhaustively list all possible verb conjugations in english. Most people wouldn't know what to answer to that. We don't learn language through rules, we learn it by example. That's why we forget most of the rules of grammar after we leave school, and why real world speech never entirely obeys the "perfect" rules of grammar. It's all inherently probabilistic.
That's why I tihnk the chinese room does not actually discount the validity of the turing test at all. I think the human mind is nothing more than a set of probabilistic rules and stored patterns to apply those rules to, and that we have fooled ourselves into believing we're more than that. "Meaning" is nothing more than knowing how a certain pattern fits in with the other patterns you know, and what you can infer from its presence given a certain context. Anyone who disagrees with me I dare to answer the simple question "what is an apple?" in a way that includes all apples, and does not include anything that is not an apple. It is absolutely impossible to do such a thing, because the concept apple is not something we consciously know about how it operates in our mind. We have the rules for how to recognize an apple, but we don't have the conscious knowledge of what those rules are, even though we can make guesses at what those rules might be by bringing up "typical traits" of apples and seeing how they can fit together. After all, activating the pattern "apple" in our mind activates those patterns that are related to it, and by doing that we immediately know in the active part of our mind which traits are most likely associated to the concept of apple, but we have no idea how they are associated.
Or try this thought experiment. What if you built a machine that passed the turing test. Let's call it the fraudulent intelligence. Let's say you knew exactly how it worked. Now suppose that this machine had logically concluded from real world observation that it was self-conscious and intelligent and communicated this to you. How would you persuade it that it wasn't? Or take it one step further. What if it had concluded humans weren't really intelligent, but the machine itself was. How would you convince it you're actually intelligent, and that it isn't?
Anyway, my point is, don't diss this translating system because you understand how it works and therefore it cannot be truly intelligent. If you understood how the human mind worked, I dare say you would find it equally unintelligent.
Short answer: No. Not to mention, that stuff is pasteurized.
Of course, we don't know everything about vCJD, so I can't say that with 100% certainty, but it seems pretty certain that it has more to do with the brain than with the milk.
I thought pasteurization did not affect prions. That you could burn them in an open fire and they weren't destroyed.
It isn't obserd to clame it when Windows crashes more and more with each new version.
Huh? That is not my experience at all. I can leave my XP workstation on for weeks. It doesn't crash. I've seen a windows bluescreen just once in the last year.
If you are as careful with your drivers on windows as you are on linux, it is just as stable.
I know it's trollish to say here but the font rendering on OS X is the worst of all modern operating systems. It's so blured it's hard to read (Not to mention that everything is bolded). Linux with good fonts actully is one of the best these days.
It's not trollish. You just prefer linux-style font rendering. Most people don't. I am one of them. I always found both linux and windows font rendering to be too blocky, not smooth enough, with linux being the worse of the two. I think the fonts on OS X are beautiful. I could never use a serif font in the web browser on linux or windows because it looked too ugly. On OS X my default safari font is a serif font.
As for OpenGL. Nvidia hardware performs about 100% better on Linux that on OS X. Altough that may change when OS X goes x86.
How long can you keep your X session running using nvidia's drivers? A honest question. I never made it past the five day mark when I was still on linux (on various hardware combo's, but admittedly, this was two years ago). My mac's gui has not crashed once in the 6 months that I've owned it.
If you need it there is wine for office productivity and photoshop for Linux too.
MS Office and Photoshop in wine suck ass. I know because I used to do that very thing. They don't integrate worth a damn with the rest of your environment. I couldn't even do basic stuff like pasting an image from a linux app into photoshop, let alone the more complicated things like dragging html excerpts from the browser into word and having them appear using the correct markup. Also, they were slow and unstable. Photoshop needs to be fast. Photoshop on the mac is very very fast (despite the performance hit from the slow CPU).
DRM does not decrease the capability of a machine. It increases it. Hear me out. A DRM machine can still do all the things it could do before, that is, play any sort of non-DRM content. In addition, it can play DRM content too. It just has an extra feature. Admitted, the feature is more for the content providers than for the users, but still... Now, what will be different is the type of content offered. Now it's all non-DRM (at least non-hardware-DRM). That will change.
In the end, it will come down to value. If the content will be priced too high for what you can do with it, it will not sell, and either the seller will not use the hardware capability of restricted features, or lower prices. My personal examples of e-books is that if I could no longer convert a purchased e-book to html for storage, and easier reading (transferring it to whatever mobile platform or using text to speech) I would not be interested in paying for it. It has little value to me. I might pay one or two dollars for a book if I could only read it in microsoft reader or adobe reader.
The only thing that matters here is not whether OS's or hardware supports DRM or not. What matters is your perception of the value of unrestricted content. If the masses perceive restricted content as valuable as unrestricted content (or nearly so), most of the content will become restricted, since it obviously offers more avenues for profitability to the seller. You can only hand freedom to people who want it. If the perception of most people is that content freedom is not that big of a deal, all the armchair arguing won't matter a single bit.
I also remember being told over and over again that "Windows 95 is uncrashable due to its 32-bit memory protection".
To be fair, with the right set of drivers windows 95 was pretty solid. I had several PC's running windows 95 that after careful driver tuning had very little problems in the way of stability, where I could use it all day without a forced reboot.
I used to run OS/2 and some custom tools in 3.11 just to make it more user friendly (for the life of me I can't remember what it was called, but it added a sidebar, which was way different).
Are you thinking of PC Tools 2 for Windows 3.1(1)? It replaced the windows graphical shell and file manager, so you had multiple desktops (with window drag and drop via a pager), icons on the desktop, a better file browsers (with tree-based navigation and built-in zip file support), support for dock-like apps, 3D window borders, better system monitoring tools, and I believe some kind of task bar equivalent (but my memory is hazy, and it predates the popular web, so google holds no answers).
Anyway, it was a resource hog, and unstable (even compared to windows 3.1 itself), but it had some really nice functionality, and windows 95 to me felt like a step down in some ways coming from pc tools 2 (ofcourse, the dramatically improved stability without having to give up much in the way of performance was really nice).
I believe I kept using the pc tools file manager for a while under windows 95. I didn't have much need for long filenames back then (because I was still using a lot of dos software), and it was better than file explorer (especially the builtin zip support, which windows only got in XP, which to me is stupefyingly late).
What is it with computing and the number 640?
I've suspected this was Apple's plan since the Intel announcement. They're going into direct competition with Microsoft.
How would they turn a profit? You can only make money as an OS vendor by cornering the OEM market (MS owns it), or by supplying server products and making your money on support (unlikely, since OS X is a lousy server OS, as many benchmarks have shown, and irrelevant to the desktop market, as linux has demonstrated conclusively).
Apple would be absolute fools to try to get into the generic PC OS market. They could never provide the Apple experience on generic hardware, and they wouldn't be able to turn a profit, since MS can outprice them as long as they want with the huge cash reserves MS has, and MS still owns the OEM market.
Now, I do agree that likely the final release of OS X for intel will run just fine on generic PC's, with a bit of tinkering. That is nothing special. What you won't see are COTS versions of OS X meant for generic intel PC's.
Ofcourse, it's a nice fantasy to think someone could finally make a decent generic PC OS, which is why I suspect so many people are clinging so desperately to this idea.
Actually, MS had a very good reason for crushing netscape, and it makes perfect business sense. Microsoft makes their money from selling platforms. MS charges users (clients and servers), not developers (you can get most MS development tools at ridiculously low prices). Now, here comes netscape, a cross-platform web development environment that is becoming a platform all by itself. Netscape sees a thin client future, where everyone is running the netscape browser and operating systems are irrelevant. MS realizes this, and does the only thing they logically could do: protect the investment in their existing platforms by destroying netscape.
Improving the web platform would run counter to their whole investment in destroying netscape. The entire point of it was to halt the development of the web platform in its tracks, not to improve that platform.
This is also why IE7 is not offering much in the way of platform improvements. They're only making it good enough to keep you from going to firefox, who are providing a new platform threat, and therefore a new browser war.
There is only one server, but there is an unlimited amount of procsessing distributed among the clients.
Exactly, javascript is scalable. There is much more spare CPU time on the client than on the server. That's why moving as much as possible client-side is the right approach for moderate to highly complex web apps. Also, an additional benefit is that users can improve performance themselves, just by moving to a faster machine.
I'm building a web-based CAD app for work (floorplan viewer/editor), and ended up doing it as a combination of a lot of actionscript (flash), a sizeable amount of javascript to manage the part of the UI done in HTML, and a bit of PHP glue logic to shuttle database contents to and from the flash. This replaced an existing solution of server-side generated png files. The new solution can support an order of magnitude more users on the same server hardware. The existing solution had to be replaced in part because customers had complained it was just too slow to be useful, so moving things client-side can make a lot of sense from a business perspective.
The only thing wrong with the mini (that I can tell) is that the VGA output isn't at proper voltages and the color quality suffers a little. If you have the mini hooked up to a DVI monitor the color should be just fine.
You don't even need a DVI monitor. Plenty of the more high end VGA monitors allow you to switch voltages. I switched mine when I hooked it up to the mini. Looks great.
I think if there's anything that can make a big difference, it's a media-centered site like Apple's iTunes that has things like music videos, sampling, playlists, online radio stations. I can listen to more new bands in a week through iTunes than I ever heard introduced as a new band on a radio, in all the years I've been alive.
The itms is more varied when it comes to indie artists, but still not varied enough (how, for example, would I personally get my CD onto the itms if I made one?). Also, there are almost no mechanisms to discover new music. The genres are mostly useless (because they're way too generic, leaving thousands upon thousands of albums to each genre). The playlists are too haphazard, and the "customers also bought" never gave me anything I liked, ever, on any site. To add insult to injury, the short 30 second previews make it very difficult to figure out whether you like something, even if you do actually stumble across it. I think the entire itms is very unapple, because it is clumsy, inefficient, and generally a lousy user experience.
I get most of my music from cdbaby.com. They DO have a good variety of indie artists, and their music search tools are adequate for finding stuff you've never heard of before. Plus, they have 2 minute CD quality previews of most songs, which lets you figure out whether you like a CD or not. Admitted, most of the acts on CD Baby are crap, but there are many which are not.
Imagine if Microsoft did a *nix port of Office. Even though it might cannibalize sales of Windows, Microsoft would be rolling in a lot of dough from *nix users who need MS Office. Heck, if its really good, I might buy a copy.
First of all, there is no business unix desktop market worth speaking of (OS X excepted, which doesn't count, because it doesn't use X11 for native apps). Make no mistake, it's business use that matters. Few people need a full copy of office at home. How many people do you know personally who have a legal recent copy of MS Office for home use?
Secondly, what little market there is has very little interest in office. Most people running unix on the desktop have computing uses that do not involve office, or if they do, involve it so tangentially it makes more sense to use emulation, a separate machine, or a free competitor.
Add to that the fact that *nix is spelled with a *, meaning there are literally hundreds of different platforms, and at least a few dozen you would have to support (various versions of the major linux distros, freebsd and solaris), and doing binary distributions that work on all of them is a support nightmare, and it is not very hard to conclude office on *nix could not be profitable.
Remember what happened to Internet Explorer on the Mac when Microsoft dropped it. Now Microsoft losts its browser dominance on the Mac (because they no longer have an up-to-date browser). I don't think its in Microsoft's best interest to drop Office for OS X.
IE for Mac was a free product. It cost microsoft money to make it, and they got pretty much nothing in return. The reason they made it was primarily to ensure no competitor snuck in through the backdoor to create a cross-os platform that could be used to develop real software, making windows irrelevant. They dropped IE because Safari is mac-only, and therefore no threat to windows.
But from a standpoint of supporting a diverse ecology of software producers and lots of competition, the cathedral isn't the most desirable structure.
Systems design is nothing like nature. Evolution is incredibly messy and wasteful with resources. There is no reason to argue it is the most efficient system imaginable, even when it comes to protecting against outside threats. I think a good cathedral can get much more done with much fewer resources than a good bazaar.
I see this mirrored in open source projects, where all the really successful ones have a core leadership that has strongly dictated direction for the project. Sometimes you even see this happen within a project, where they "break through" because they changed to a more cathedral-like system, like how mozilla became firefox and suddenly soared. Even the pet project of the bazaar crowd, debian, is strongly cathedral-like, with no tolerance for diverging from policy.
It seems that when one pays a draconian cost (central control) to solve smaller problems (package dependencies, file locations), it might not be the best deal in the end. I'm still endeavoring to provide a better solution to this problem.
You just fear government. I don't blame you. But there is not yet a form of organizing effort into productivity that does not require government. If you invent one, very well, but, for now, government is still the best model of organizing effort. Sometimes the perfect is the enemy of the good. For me avoiding cathedrals because they are not perfect does just that.
The article's argument was not so much defending the infringement of copyright as it was underlining that there is a business model in legalized bittorrent downloads, and advertisers are likely to switch over to it because it makes more sense for them. Assertions that I don't find so out of line.
I believe the underlying notion of test-driven development is that you test for all possible ways your code will interact with the code that talks to it. Theoretically, if there is a test for every aspect of every feature, just complying with the test suite means that your code works. However, the work needed to write such a vast testsuite is just not worth it, ever. You might as well do formal verification of your entire codebase.
I see more value in common usage pattern regression tests, where you take a few different end-to-end usage scenarios for your software, write an automated test that executes that scenario and verifies it, and then know immediately when there is basic functionality failure of your code, even if you have no extensive knowledge of every part of the code's operation status.
Writing no tests whatsoever though, I do not find that acceptable. That means testing is offloaded onto humans, since all code beyond a certain size contains bugs, so all code must be inspected for those bugs. Whether you have a bunch of humans running through the common scenarios, or an automated suite doing it, is not very relevant. That it happens at all though, is, because if you don't, your customers will be your testers, which will impact your bottom line.
I for one think that it's great that there are still people out there with a goal to create perfect code, and not just slap features together.
Actually, what's most important is serving your users. You could have the fanciest design in the world, but if your product doesn't work as well from the user's perspective as your shoddily written competitor, your product sucks. Case in point: webcore supposedly has a messy implementation, khtml is supposedly technically excellent, yet webcore is a better engine because it renders sites better, thereby being more useful to the user.
Software does not exist in a vacuum. It has a purpose. It must do that purpose well. There is nothing more important than that. Sound internal design is merely a tool to achieve the purpose, and should never, ever, take preference over it. Not if you want people to actually use your software at least.
Aren't these bounties missing the point?
It seems to me the biggest lacking in OSS is not the featureset, it is the usability of that featureset. Take gimp for example. It's an excellent image editor. It has every feature I need. And yet I keep getting drawn back to photoshop when I need to get real work done, because gimp is such a PITA to use (less so than it used to be admittedly, but still not anywhere near what it could be).
This pattern for me is repeated over and over in almost all OSS projects. The few open source products I use on a daily basis and like are all centrally designed, with one person, or a few people, dictating the entire user-visible interface, like with firefox.
The total lack of usability progress in the vast majority of OSS projects is what made me give up on linux on the desktop. Yeah, it's fine to tinker, and yes, it does anything you need. But to get real work done it just gets in my way.
I don't mean to flame-bait, but that's my honest opinion. And I think if someone really wants to promote open source software, they are better off investing their resources in convincing projects to appoint design czars who have absolute control over the user-visible part of the software. Even a poorly done single-person design is still better than a methodically executed design by committee. These bounties for me are missing the point, and won't really matter in the end.
Anyway, imho ofcourse.
I thought you were kidding, then I actually read the thing. It's true. If this passes, the secretary will get to waive any and all laws as long as it is in the service of keeping illegal entrants outside of the US borders, and is excused from judicial review in any such decision he or she makes.
That is scary stuff. If not for the actual consequences, then for the precedent of waiving the entire body of law, and judicial review, at the sole discretion of a single person in government.
There is very little difference between what hardware you can extend a mac with and what hardware you can extend a wintel box with. On the inside, it's all the same, ATA, PCI, AGP, USB, ...
Microsoft has to do just as much work as apple, since they too get most of their drivers "for free" by having them handed over by the hardware makers. There aren't that many drivers microsoft develops themselves, and this is very comparable to apple's situation.
The major difference is that companies who make hardware have to provide a windows driver, whereas they are allowed to provide a mac driver. In practice this means that the shoddy companies who do the least amount of effort possible only put out windows drivers, which tend to be broken, with the resulting stability problems for windows.
Just because it's fast enough for you doesn't mean it's fast enough for linus.
I RTFA. Apparently the bottleneck is merging new changesets from email. Seems BK is orders of magnitude faster than everything else out there for doing that.
I think what the parent was suggesting is that optimization offers little pay off when it takes time away from debugging or feature development. Performance is a feature. It must be weighed against other potential features. Sometimes performance is the feature your users need most, but most likely most of the time they'll need something else more.
I see this at work too. The software is slow, yes, but the demand for functionality from clients is much higher than the demand for performance, so performance work gets long-termed.
Well, in my case I'm running a recent optimized kernel (2.6.9-cko3), only have an ATI RAGE 2MB onboard video (which still flies in Windows), no DMA (this is SCSI, not IDE), but I do have paltry memory (256MB). I would find it highly ironic if Windows is outperforming Linux in a low-memory situation, given the years of "Linux can run on my , so take that Microsoft!".
First, the rage is indeed quite likely to be a bottleneck driver-wise. I would suggest verifying that you're using the "ati" driver in your X configuration. But even if you are, the windows drivers are most likely just plain faster.
Second, while there is some crediblity to the notion that you can strip down linux better than windows, modern linux installs are just as memory hungry as their windows equivalents, if not more so. So, yes, likely the low memory IS causing problems for you. Type ps -ax, see what it all does, see what you can remove or replace without losing functionality you need.
X performs well if it can use the hardware to its fullest potential, and if it is given control of the CPU by the OS when it needs it. So, without the right drivers, or when it has to battle other processes or the kernel itself (in the case of swap storms) for cpu time, it slows down dramatically. That's the thing about X. It is just another process, and the kernel gives it no preferential treatment. So, while that buys you batch processing performance, it is more likely to cost you in responsiveness on a badly configured system.
A great example of the major difference an accelerated driver makes is my laptop with a CyberBlade XP chipset. When I first installed debian on it, it was horribly unresponsive in kde, always taking ages for window updates. Then an accelerated driver became available. I copied it over the existing one, restarted X, and suddenly it was acceptably fast and responsive. A day and night difference.
For 99% of the coders out there, all that needs to be known about code optimization is: pick the right algorithms!
Very true. Micro-optimization is only useful if your code spends the majority of its time in a small subroutine or loop. Very few programs nowadays actually still do that. Most programs spend the majority of the time waiting on the user, and when they're not, they perform such diverse tasks that micro-optimization benefits very little.
What is most important is making a clean functional design first. If your design is sound, you can always optimize it later, if necessary. However, if you start optimizing from the start, not only will you be spending your time optimizing non-critical code paths, but you'll make your code so complicated that the design will suffer and actually preclude doing optimization the right way (based on profiling and seeing where performance must be improved). And that's not even talking about the increased bug incidence rate produced by unnecessarily complicated or unreadable code. In most modern software development projects the prime problem is not performance, it's getting rid of bugs so you can ship your product. Worrying about performance only makes sense if your product is truly too slow, and few products nowadays really are. I realise many purists find this concept offensive, but hardware is much cheaper than developer resources, so it is much more cost-effective to focus your resources on decreasing the bug rate than on increasing performance.
As a caveat, we should be wary of saying the system "understands" a language.
I would say generally that humans able to translate between languages generally understand both languages
No they don't. Most people don't consciously know the grammar of a language. Just ask someone to exhaustively list all possible verb conjugations in english. Most people wouldn't know what to answer to that. We don't learn language through rules, we learn it by example. That's why we forget most of the rules of grammar after we leave school, and why real world speech never entirely obeys the "perfect" rules of grammar. It's all inherently probabilistic.
That's why I tihnk the chinese room does not actually discount the validity of the turing test at all. I think the human mind is nothing more than a set of probabilistic rules and stored patterns to apply those rules to, and that we have fooled ourselves into believing we're more than that. "Meaning" is nothing more than knowing how a certain pattern fits in with the other patterns you know, and what you can infer from its presence given a certain context. Anyone who disagrees with me I dare to answer the simple question "what is an apple?" in a way that includes all apples, and does not include anything that is not an apple. It is absolutely impossible to do such a thing, because the concept apple is not something we consciously know about how it operates in our mind. We have the rules for how to recognize an apple, but we don't have the conscious knowledge of what those rules are, even though we can make guesses at what those rules might be by bringing up "typical traits" of apples and seeing how they can fit together. After all, activating the pattern "apple" in our mind activates those patterns that are related to it, and by doing that we immediately know in the active part of our mind which traits are most likely associated to the concept of apple, but we have no idea how they are associated.
Or try this thought experiment. What if you built a machine that passed the turing test. Let's call it the fraudulent intelligence. Let's say you knew exactly how it worked. Now suppose that this machine had logically concluded from real world observation that it was self-conscious and intelligent and communicated this to you. How would you persuade it that it wasn't? Or take it one step further. What if it had concluded humans weren't really intelligent, but the machine itself was. How would you convince it you're actually intelligent, and that it isn't?
Anyway, my point is, don't diss this translating system because you understand how it works and therefore it cannot be truly intelligent. If you understood how the human mind worked, I dare say you would find it equally unintelligent.