Yeah, when will the networks notice?
on
Calling Out TiVo
·
· Score: 5
I love Dvorak's comment that networks haven't gotten mad yet simply because they haven't taken notice of TiVo yet.
Gee, well, let's look at the list of equity investors in TiVo, inc: CBS, AOL-Time Warner, Comcast, Liberty Media, Discovery communications, Showtime Networks, Disney, and NBC. So, gee, guess Dvorak believes either (a) NBC, CBS and friends don't count as "major networks", or (b) they invested in TiVo without having even a vague clue as to what the company would produce.
Good research, Dvorak! And you get paid for this crap?
--JRZ
Programmers frequently praise Python for its generally clean syntax, its ease of use (as in CP4E), and its "Batteries Included" philosophy. As a PyUser myself, I have to agree that these are fantastic features.
I'm interested, though, in the conflict between library design and legacy habits. Would you suggest that C-isms like "popen2", "execlp", "sys.argv", and "socket(AF_INET, SOCK_STREAM)" really belong in a "clean" language in the long run?
Is there any chance that we'll someday see a standard library extension that (much like Java's libraries) allows developer to program in English rather than UNIXglish?
Thanks!
--JRZ
C++ is a "batteries not included" language: like C, but unlike Python or Java, its standard libraries are really quite small. For instance, despite the existence of the STL and C++'s powerful templates, there's not even an official, standard hashtable class (though most folks ship a vendor-specific or something of the sort). That said, library design was a MAJOR concern in the creation of C++, so it's possible to build some great stuff (look at Qt, which I think is quite nice).
So, one of the big challenges in C++ is to find the right tools on which to base your project. Scott Meyers' "Effective C++" and "More Effective C++" would be pretty high on my list.
If you have a great budget, check out Insure++ from www.parasoft.com. It catches MANY MANY common coding and runtime errors and is VERY COOL. Unlike simple bounds checkers, it even flags memory accesses that may be a problem at some point in the future, and it has tools to help you track memory usage over time, measure code coverage, etc. Failing that, you can use the memory checker built into C++ Builder 5 for free (well, free if you own the IDE) if you're on Windows.
Also, look at some foundation libraries, if you're serious about building a large system and you don't want to reinvent the wheel. ACE (www.riverace.com) is free/open source and VERY, VERY extensive, but this comes with something of a learning curve. Common C++ (cplusplus.sourceforge.net) looked a bit friendlier last time I checked it out, but it was a little buggy (about a year ago, at least). On the commercial side, Qt is fantastic, and I've heard some decent reviews of Rogue Wave's Tools.h++. A well-designed foundation library will already have worked out a lot of the cross platform/cross compiler issues for you, and that alone can be worth the price of admission.
Most of all: good luck!
--JRZ
Jeez, there's no other train!? Somebody should tell that to New Jersey Transit and SEPTA, which I ride at least once a month. They're about a fifth the cost of Amtrak for comparable distances, too.
Thank God for Java IDEs! Between NetBeans, JBuilder, and the (still not as good as Win32) state of Linux JVMs, I'm ready to keep the hardware industry booming for a LOOONG time.
Ooh, and add to that the speed with which gcc compiles C++ code. Ever try to compile KDE from scratch??? Once they finish with precompiled header support, though, it'll be bye-bye workstation industry...;)
--JRZ
posting a very negative comment about them on Slashdot, where tons of sysadmins and web developers hang out? The negative publicity should more than make up for any profit they get from slacking off...
Oh, wait...
This really is a bit silly, and I wonder if it isn't just a magazine report blowing comments out of proportion. Remember the old story about China dropping Windows for Linux? It turned out to be a complete exaggeration and misunderstanding.
Besides, if they're really concerned about backdoors, why don't enter into Microsoft's new source code sharing program? I'm no more a fan of Windows than any other Slashdotter, but I do recognize that MS makes a lot of money overseas, and they'll take whatever steps they consider necessary to regain trust in these areas, especially as the US software/PC markets slow due to economic concerns and market saturation.
--JRZ
The filemanager for KDE 2.x embeds a terminal window, and it stays in lockstep with main konqueror view. So, when you type "cd..", the file manager backs up a directory, and vice versa. VERY handy, especially if you put the "embed terminal" button right on your toolbar for instant access and bind it to a handy keystroke.
You can also always use "kfmclient" to control konqueror from the prompt, like "kfmclient copy COPYURLLIST". Sounds like a long-winded replacement for "cp"? Well, try something like "kfmclient copy http://www.slashdot.org./slash.html" and behold the power of the kioslave. . .
--JRZ
Check out http://www.foolabs.com/xpdf/cracking.html, in which the original author of xpdf explains why he doesn't want to include patches of this sort. He sounds like a very reasonable guy, who respect the principle of copyright.
Don't forget that copyright (or left) is an integral part of the GPL as well. If these laws on distribution can be disregarded, there's nothing to stop commercial companies from stealing GPL'ed products left and right. And I don't think anybody wants to see that.
I think the patch developer also takes a good angle with his question when he asks if it would be moral/ethical to apply the patch, not whether it would be legal. While the answer to the second question might be "yes", the answer to the former is much clearer, as far as I can tell: yes, it would be hypocritical and unethical to encourage people to break copyright laws.
Hmmm... I wonder what RMS would say on this one? Anybody want to ask him?
--JRZ
Ok, I'm sure I do need a clarification (I'm a compiler person, not a hardare person, and have never worked with the Power series). Why not just use multiple cores on a single chip? Last time I heard, that's what Power4 was going to do, right? Also, are you saying that the 8 execution units are split between several separate threads? If so, does anybody know if it's a fixed split (4 for first thread running, 4 for second) or dynamic (which would be surprising, but cool. ..)?
Thanks, all!
--JRZ
Doing this kind of parallelism extraction in the compiler just plain makes more sense than doing it on the chip (with SMT). The compiler can see all of the source code at once and spend a huge amount of time studying the problem (which can be extremely complicated, if you want a really good, inter-procedural, flow-sensitive analysis) and then spit out code that bundles it up in explicit parallelism.
That's exactly why IA-64 is going to kick the crap out of other architectures 3 years down the line (once the compilers actually get good). And it's also why RedHat is screwing over their users by sticking with gcc over SGI's (GPL'ed) IA-64 compiler. As the first author said, conventional compilers only 2.X IPC at best. So two-thirds of the Itanium execution units are wasted when you use a compiler like gcc. SGI's, on the other hand, was redesigned from the ground up (starting with the gcc parser for compatability) to use all of the neat, theoretical tricks that you need to get ILP in this situation. TurboLinux has already gone with it and demonstrated good results (that's one reason why NCSA will be using Turbo for the second stage of their huge, new cluster). But gcc is Cygnus' baby, and they will fight to keep using it, no matter how badly it hurts performance in the end.
--JRZ
If you use Dia, also check out Dia2Code, which turns Dia UML diagrams into source code. Dia's nice, but UML isn't really its main focus.
Personally, I have 256 megs of RAM and I enjoy working with TogetherJ. It's really nice of them to put out a high-quality free edition, especially for us students. Definitely look into buying that RAM. . .
--JRZ
There have been a lot more Borland product stories floating around for Linux besides this one, so be sure to harass the BORL guys at LinuxWorld and get some more info to post here;). A few I've heard are:
- There will be some version of MIDAS (Borland's XML middleware) for Linux, and that could play an important role in next generation versions of Kylix.
- There will be an Enterprise version of Kylix that includes both the Delphi and C++ builder sides in a single, integrated package. This would likely bring MIDAS and Corba support to the table.
- Delphi 6 (the next generation) development on Linux is almost in sync with its Windows counterpart, so the release lag between the two should be very short.
Things I want to know:
- Will this ever be ported to other Unices? Solaris would be great for server side development, and since this is all based on Qt, it'd just be the compiler that needed changes. Obviously, its nontrivial to write a good Sparc compiler for a serious language, but it's a lot easier than rewriting an entire, massive development library AND a compiler.
- Will they start giving away an open edition of Delphi or C++ builder on Windows? They already do it for JBuilder foundation. JBuilder, BTW, is so good that I actually bought the Pro version.
- Will C++ builder have a free, "open edition" for Linux? This could have a huge impact, as you could develop ANY C/C++ GPL app with it. Surely they don't make you include the CLX libraries if you're writing for the console.
- We know that Borland's C++ compiler is incredibly fast at build time (I mean, like an order of magnitude faster than g++ for some programs, though that includes linking + assembling time), and we know it has good standards compliance. But how fast is the output code relative to g++ on Linux?
--JRZ
All of the sudden, Konqueror got good! It used to have a LOT of Java, Javascript, SSL, etc. issues, athough it was good for lightweight browsing in KDE2. I've been using the new beta all day, though (including testing all the weird features), and its worked great. One crash while trying to load a netscape plugin so far, but thats not bad for 4+ hours of use. Java is slow to start, but otherwise works great. SSL is very good: fast and stable (so far).
If only they could support IMAP in KMail working properly, I'd be able to leave Netscape behind. . .
--JRZ
Umm... maybe you read a different changelog than I did, but I think that the new features are extremely substantial and useful.
Full text search -- This is huge for me, and probably for most other web sites that use MySQL. It's also very non-trivial to implement.
New table types -- MyISAM, BDB, heap, etc. are all huge improvements over the old ISAM format.
Replication -- Another HUGE feature: load-balance between slave databases, yum. . . This was actually sponsored by VA Linux so/. could use it, right? Wonder how it's working out these days. . .
Many smaller things -- Improved maintenance tools, new SQL functions, basic transactions, etc.
I'm just disappointed they didn't bump up the version number further to let people know how substantial the release really is.
I run a JSP-based intranet on a 400 mhz celeron with 64 megs of RAM and it could definitely use more memory (buying it next week), but otherwise it runs very quickly and smoothly. Choose your JVM wisely (Sun's tend to be lower memory usage, IBM's tend to be faster), use a good servlet engine (Resin from www.caucho.com is excellent, but Jakarta is pretty slow), and put in a lot of RAM. I don't know about 200 mhz, though. . . that's probably a little lower than I'd use, especially if it also includes to database.
--JRZ
If you guys are far along in the development process with c++ already, or if you have limited experience with Java and Java threading, you'll just run into worse threading problems there by trying to fit the pthread paradigm into the Java platform.
That said, I do a lot of multithreaded programming in both Java and C++, and I would give damn near anything to switch completely over to Java. The threading design makes it FAR easier to build correct programs from the ground up without using a debugger. We've known for 15 years that monitors (Java's synchronized blocks, basically) were a better way to write multithreaded programs, and it's embarassing that it took this long to get the idea into a mainstream language.
Also, you should check out jlint (http://www.ispras.ru/~knizhnik/jlint/ReadMe.htm), which checks java programs for basic errors including many types of thread deadlocks. A lot of commercial Unix vendors have similar tools for C/pthread programs, but I haven't found one for Linux.
As for actual debuggers, JBuilder 4 is quite good. I've only used the foundation (free) version, but the enterprise edition can also dynamically detect stalls, deadlocks, and race conditions (see http://www.borland.com/jbuilder/jb4/feamatrix/debu gging.html) and do remote, multi-platform debugging. Also, MetaMata (http://www.metamata.com) has a very good debugger that includes some advanced threading features even in their low-end versions.
On the down side, you'll have to pick a good implementation of the JDK on Linux and stick by it, as the different JVMs tend to have threading incompatabilities. IBM's are quite good, and they support native threads very well. In Sun's 1.2 implementation, at least, native threads were an undocumented feature (with green threads only officially supported).
Hope this helps!
--JRZ
Many of the comments here have discussed whether or not this would be a good option for a palmtop/PDA. But let's remember that "embedded" != PDA. What about internet kiosks, web pads, diskless workstations, super-subnotebooks (quite a few of these run WinCE), etc.? These sorts of embedded devices are often diskless, but with 16-32 megs of flash memory. Konqi (if its JavaScript + SSL support became more stable) and Gecko will quite probably dominate these increasingly important platforms, which means that system designers don't have to be bound to WinCE and pocket explorer.
-JRZ
In other cases, I'd agree that legacy code performance would be a huge issue for a processor family aimed at the desktop. After all, there are so many thousands of apps that businesses and consumers rely on (some of which were written by companies that have long since died) that we couldn't possibly expect all of them to port to IA-64. Even worse, this might not be a simple recompile -- if you use any assembly or (more likely) if your code isn't 64-bit clean, you need to modify your code pretty carefully to support it.
But, luckily for them, Intel isn't targetting desktops. They're going after the very highest-end markets (especially with the first release) where users either own the code they're using (as with scientific/high performance computing) or where they rely on only one or two enterprise applications (look at the number of high-end boxes out there that basically just run Oracle, and the number of workstations that are used entirely for one CAD program). Intel just has to make sure that these key apps are really, really well-supported on IA-64 and their target customers will be happy. And they're basically paying companies to do this sort of porting (they have a $250 million IA-64 venture fund), so I have a lot of confidence that this'll work out for them.
It's also important to remember that enterprise products have a much longer purchasing cycle than consumer products. For any console system, the availability of games on Day 1 is crucial to the success of the whole system. But any reasonable enterprise can be expected to spend 9-18 months evaluating critical products before doing a serious roll-out, and that gives Intel a crucial buffer period in which to get the remaining ISVs on board.
The much tougher issue for them will be quality of the compilers themselves. The article alludes to the fact that IA-64 puts a LOT of burden on the compiler, but I think it even understates that fact. The standard gcc is woefully inadequate for this architecture, so Linux users have to hope that SGI's version comes through. Realistically, only HP (which has been working in VLIW experiments for years) can be counted on to have a good implementation ready from the launch of the chip.
--JRZ
I actually did buy a Thinkpad T20 largely because it had a good record of Linux support (although the preloaded OpenLinux was a rip-off extra charge, so I didn't get it). It's a pricey machine, but thin and with a beautiful screen, and it still has a fair number of Linux issues: you have to download a patched X-server, sound setup is a huge pain, and the network card tends to blink out after a suspend. Otherwise, pretty slick though (and the patched server for the S3 works really well).
Basically, I don't care if the vendor pre-installs Linux, as long as they make high-quality device drivers freely available and maybe put up a one-page doc describing potential issues. I don't think that's too much to ask for when you're buying a $3,500+ machine. . .
--JRZ
Hey folks, this is nothing new in the software business. Go try to buy a copy of Oracle and you'll have an option to buy a perpetual license, a 2-year license, or one of a few other options.
And, you know what? If I were running a startup, or a medium-sized business that wanted to do a massive roll-out all at once, I'd much rather use a subscription model than try to come up with all that cash at once.
The people who really risk getting another blow are the retailers and resellers who currently sell MS software. They've already been hit really hard by direct sales, direct downloads, and online merchants, but the subscription path builds much more direct ties between the vendor (MS) and the consumer, so that the buyer doesn't have to go to any store to renew or upgrade in the long run. For now, they're offering an option to buy another subscription license at retail outlets in an attempt to keep up some relationships with these folks. But the whole business plan, in the long run, really cuts the middleman out of the market.
Eliminating the middleman would, in general, be positive for consumers, but the lack of competition just gives Microsoft a chance to sop up those margins for itself. Right now, for instance, buying direct from MS is usually the most expensive option, since they sell almost everything at full MSRP.
Of course, it's too early to predict what exactly their pricing strategy will be in the long run. Corel and some other potential ASPs have been floating rumors about pricing on a feature-by-feature, use-by-use basis rather than a simple annual model.
--JRZ
Performance monitoring! This has already been mentioned in this discussion, but it's such a great feature that I had to mention it. Without patching the kernel, it's almost impossible to create a sysadmin tool like PerfMon or a developer's tool like SpeedShop or VTune. And SGI has suggested that they'd be willing to port SpeedShop if the infrastructure were in place. There are a lot of patches floating around that give the basic capabilities (essentially, recording and configuring hardware performance counters), but most are lacking overflow monitoring, which is huge.
Modern high-performance I/O: On kernel-traffic you can see a recent discussion about select and poll on Linux. They just don't scale well AT ALL. Similarly, zero-copy TCP is very well established as a massive performance gain for network servers, and there's no excuse to fail to use it for calls like sendfile() which could so clearly benefit.
New scheduler: The CITY-Umich scheduler project is pretty interesting, as was the work done by IBM's Java group. Regardless of what solution is used, though, we have to stop making excuses and admit that the current scheduler is highly flawed for systems running hundreds or thousands of threads.
--JRZ
In my experience, connection pooling makes a very large difference on busy MySQL servers. If you're using Java, there are a lot of easy-to-use pools, like PoolMan and Resin's pooling. Don't know if PHP and Perl/DBI have similar features.
A way for groups of people to communicate online in real time! For only $50-$100 per seat! Wow!!! The world will never be the same! I'm so glad to live at the turn of the millennium where we have such radical new technologies.
This isn't just the continuation of some flamewar. The FSF believes that it would be a licensing violation for KDE developers to link and GNU-developed software to a QPL'ed version of Qt. They asked that anyone trying to link GPL'ed code with Qt get a special exception in writing from the copyleft holder (this came up with the apt libraries and Corel Linux, for instance). Now that Qt is dual-licensed, it might not be an issue. But the team is just trying to steer clear of legal difficulties, so we shouldn't mix that up with pure flaming.
I love Dvorak's comment that networks haven't gotten mad yet simply because they haven't taken notice of TiVo yet.
Gee, well, let's look at the list of equity investors in TiVo, inc: CBS, AOL-Time Warner, Comcast, Liberty Media, Discovery communications, Showtime Networks, Disney, and NBC. So, gee, guess Dvorak believes either (a) NBC, CBS and friends don't count as "major networks", or (b) they invested in TiVo without having even a vague clue as to what the company would produce.
Good research, Dvorak! And you get paid for this crap?
--JRZ
Programmers frequently praise Python for its generally clean syntax, its ease of use (as in CP4E), and its "Batteries Included" philosophy. As a PyUser myself, I have to agree that these are fantastic features.
I'm interested, though, in the conflict between library design and legacy habits. Would you suggest that C-isms like "popen2", "execlp", "sys.argv", and "socket(AF_INET, SOCK_STREAM)" really belong in a "clean" language in the long run?
Is there any chance that we'll someday see a standard library extension that (much like Java's libraries) allows developer to program in English rather than UNIXglish?
Thanks!
--JRZ
C++ is a "batteries not included" language: like C, but unlike Python or Java, its standard libraries are really quite small. For instance, despite the existence of the STL and C++'s powerful templates, there's not even an official, standard hashtable class (though most folks ship a vendor-specific or something of the sort). That said, library design was a MAJOR concern in the creation of C++, so it's possible to build some great stuff (look at Qt, which I think is quite nice). So, one of the big challenges in C++ is to find the right tools on which to base your project. Scott Meyers' "Effective C++" and "More Effective C++" would be pretty high on my list. If you have a great budget, check out Insure++ from www.parasoft.com. It catches MANY MANY common coding and runtime errors and is VERY COOL. Unlike simple bounds checkers, it even flags memory accesses that may be a problem at some point in the future, and it has tools to help you track memory usage over time, measure code coverage, etc. Failing that, you can use the memory checker built into C++ Builder 5 for free (well, free if you own the IDE) if you're on Windows. Also, look at some foundation libraries, if you're serious about building a large system and you don't want to reinvent the wheel. ACE (www.riverace.com) is free/open source and VERY, VERY extensive, but this comes with something of a learning curve. Common C++ (cplusplus.sourceforge.net) looked a bit friendlier last time I checked it out, but it was a little buggy (about a year ago, at least). On the commercial side, Qt is fantastic, and I've heard some decent reviews of Rogue Wave's Tools.h++. A well-designed foundation library will already have worked out a lot of the cross platform/cross compiler issues for you, and that alone can be worth the price of admission. Most of all: good luck! --JRZ
Jeez, there's no other train!? Somebody should tell that to New Jersey Transit and SEPTA, which I ride at least once a month. They're about a fifth the cost of Amtrak for comparable distances, too.
Thank God for Java IDEs! Between NetBeans, JBuilder, and the (still not as good as Win32) state of Linux JVMs, I'm ready to keep the hardware industry booming for a LOOONG time. ;)
Ooh, and add to that the speed with which gcc compiles C++ code. Ever try to compile KDE from scratch??? Once they finish with precompiled header support, though, it'll be bye-bye workstation industry...
--JRZ
posting a very negative comment about them on Slashdot, where tons of sysadmins and web developers hang out? The negative publicity should more than make up for any profit they get from slacking off... Oh, wait...
This really is a bit silly, and I wonder if it isn't just a magazine report blowing comments out of proportion. Remember the old story about China dropping Windows for Linux? It turned out to be a complete exaggeration and misunderstanding. Besides, if they're really concerned about backdoors, why don't enter into Microsoft's new source code sharing program? I'm no more a fan of Windows than any other Slashdotter, but I do recognize that MS makes a lot of money overseas, and they'll take whatever steps they consider necessary to regain trust in these areas, especially as the US software/PC markets slow due to economic concerns and market saturation. --JRZ
The filemanager for KDE 2.x embeds a terminal window, and it stays in lockstep with main konqueror view. So, when you type "cd..", the file manager backs up a directory, and vice versa. VERY handy, especially if you put the "embed terminal" button right on your toolbar for instant access and bind it to a handy keystroke. You can also always use "kfmclient" to control konqueror from the prompt, like "kfmclient copy COPYURLLIST". Sounds like a long-winded replacement for "cp"? Well, try something like "kfmclient copy http://www.slashdot.org ./slash.html" and behold the power of the kioslave. . .
--JRZ
Check out http://www.foolabs.com/xpdf/cracking.html, in which the original author of xpdf explains why he doesn't want to include patches of this sort. He sounds like a very reasonable guy, who respect the principle of copyright. Don't forget that copyright (or left) is an integral part of the GPL as well. If these laws on distribution can be disregarded, there's nothing to stop commercial companies from stealing GPL'ed products left and right. And I don't think anybody wants to see that. I think the patch developer also takes a good angle with his question when he asks if it would be moral/ethical to apply the patch, not whether it would be legal. While the answer to the second question might be "yes", the answer to the former is much clearer, as far as I can tell: yes, it would be hypocritical and unethical to encourage people to break copyright laws. Hmmm... I wonder what RMS would say on this one? Anybody want to ask him? --JRZ
Ok, I'm sure I do need a clarification (I'm a compiler person, not a hardare person, and have never worked with the Power series). Why not just use multiple cores on a single chip? Last time I heard, that's what Power4 was going to do, right? Also, are you saying that the 8 execution units are split between several separate threads? If so, does anybody know if it's a fixed split (4 for first thread running, 4 for second) or dynamic (which would be surprising, but cool. . .)?
Thanks, all!
--JRZ
Doing this kind of parallelism extraction in the compiler just plain makes more sense than doing it on the chip (with SMT). The compiler can see all of the source code at once and spend a huge amount of time studying the problem (which can be extremely complicated, if you want a really good, inter-procedural, flow-sensitive analysis) and then spit out code that bundles it up in explicit parallelism.
That's exactly why IA-64 is going to kick the crap out of other architectures 3 years down the line (once the compilers actually get good). And it's also why RedHat is screwing over their users by sticking with gcc over SGI's (GPL'ed) IA-64 compiler. As the first author said, conventional compilers only 2.X IPC at best. So two-thirds of the Itanium execution units are wasted when you use a compiler like gcc. SGI's, on the other hand, was redesigned from the ground up (starting with the gcc parser for compatability) to use all of the neat, theoretical tricks that you need to get ILP in this situation. TurboLinux has already gone with it and demonstrated good results (that's one reason why NCSA will be using Turbo for the second stage of their huge, new cluster). But gcc is Cygnus' baby, and they will fight to keep using it, no matter how badly it hurts performance in the end.
--JRZ
If you use Dia, also check out Dia2Code, which turns Dia UML diagrams into source code. Dia's nice, but UML isn't really its main focus. Personally, I have 256 megs of RAM and I enjoy working with TogetherJ. It's really nice of them to put out a high-quality free edition, especially for us students. Definitely look into buying that RAM. . . --JRZ
There have been a lot more Borland product stories floating around for Linux besides this one, so be sure to harass the BORL guys at LinuxWorld and get some more info to post here ;). A few I've heard are:
- There will be some version of MIDAS (Borland's XML middleware) for Linux, and that could play an important role in next generation versions of Kylix.
- There will be an Enterprise version of Kylix that includes both the Delphi and C++ builder sides in a single, integrated package. This would likely bring MIDAS and Corba support to the table.
- Delphi 6 (the next generation) development on Linux is almost in sync with its Windows counterpart, so the release lag between the two should be very short.
Things I want to know:
- Will this ever be ported to other Unices? Solaris would be great for server side development, and since this is all based on Qt, it'd just be the compiler that needed changes. Obviously, its nontrivial to write a good Sparc compiler for a serious language, but it's a lot easier than rewriting an entire, massive development library AND a compiler.
- Will they start giving away an open edition of Delphi or C++ builder on Windows? They already do it for JBuilder foundation. JBuilder, BTW, is so good that I actually bought the Pro version.
- Will C++ builder have a free, "open edition" for Linux? This could have a huge impact, as you could develop ANY C/C++ GPL app with it. Surely they don't make you include the CLX libraries if you're writing for the console.
- We know that Borland's C++ compiler is incredibly fast at build time (I mean, like an order of magnitude faster than g++ for some programs, though that includes linking + assembling time), and we know it has good standards compliance. But how fast is the output code relative to g++ on Linux?
--JRZ
All of the sudden, Konqueror got good! It used to have a LOT of Java, Javascript, SSL, etc. issues, athough it was good for lightweight browsing in KDE2. I've been using the new beta all day, though (including testing all the weird features), and its worked great. One crash while trying to load a netscape plugin so far, but thats not bad for 4+ hours of use. Java is slow to start, but otherwise works great. SSL is very good: fast and stable (so far).
If only they could support IMAP in KMail working properly, I'd be able to leave Netscape behind. . .
--JRZ
I'm just disappointed they didn't bump up the version number further to let people know how substantial the release really is.
--JRZ
I run a JSP-based intranet on a 400 mhz celeron with 64 megs of RAM and it could definitely use more memory (buying it next week), but otherwise it runs very quickly and smoothly. Choose your JVM wisely (Sun's tend to be lower memory usage, IBM's tend to be faster), use a good servlet engine (Resin from www.caucho.com is excellent, but Jakarta is pretty slow), and put in a lot of RAM. I don't know about 200 mhz, though. . . that's probably a little lower than I'd use, especially if it also includes to database.
--JRZ
If you guys are far along in the development process with c++ already, or if you have limited experience with Java and Java threading, you'll just run into worse threading problems there by trying to fit the pthread paradigm into the Java platform., which checks java programs for basic errors including many types of thread deadlocks. A lot of commercial Unix vendors have similar tools for C/pthread programs, but I haven't found one for Linux.
u gging.html) and do remote, multi-platform debugging. Also, MetaMata (http://www.metamata.com) has a very good debugger that includes some advanced threading features even in their low-end versions.
That said, I do a lot of multithreaded programming in both Java and C++, and I would give damn near anything to switch completely over to Java. The threading design makes it FAR easier to build correct programs from the ground up without using a debugger. We've known for 15 years that monitors (Java's synchronized blocks, basically) were a better way to write multithreaded programs, and it's embarassing that it took this long to get the idea into a mainstream language.
Also, you should check out jlint (http://www.ispras.ru/~knizhnik/jlint/ReadMe.htm)
As for actual debuggers, JBuilder 4 is quite good. I've only used the foundation (free) version, but the enterprise edition can also dynamically detect stalls, deadlocks, and race conditions (see http://www.borland.com/jbuilder/jb4/feamatrix/deb
On the down side, you'll have to pick a good implementation of the JDK on Linux and stick by it, as the different JVMs tend to have threading incompatabilities. IBM's are quite good, and they support native threads very well. In Sun's 1.2 implementation, at least, native threads were an undocumented feature (with green threads only officially supported).
Hope this helps!
--JRZ
Many of the comments here have discussed whether or not this would be a good option for a palmtop/PDA. But let's remember that "embedded" != PDA. What about internet kiosks, web pads, diskless workstations, super-subnotebooks (quite a few of these run WinCE), etc.? These sorts of embedded devices are often diskless, but with 16-32 megs of flash memory. Konqi (if its JavaScript + SSL support became more stable) and Gecko will quite probably dominate these increasingly important platforms, which means that system designers don't have to be bound to WinCE and pocket explorer.
-JRZ
In other cases, I'd agree that legacy code performance would be a huge issue for a processor family aimed at the desktop. After all, there are so many thousands of apps that businesses and consumers rely on (some of which were written by companies that have long since died) that we couldn't possibly expect all of them to port to IA-64. Even worse, this might not be a simple recompile -- if you use any assembly or (more likely) if your code isn't 64-bit clean, you need to modify your code pretty carefully to support it.
But, luckily for them, Intel isn't targetting desktops. They're going after the very highest-end markets (especially with the first release) where users either own the code they're using (as with scientific/high performance computing) or where they rely on only one or two enterprise applications (look at the number of high-end boxes out there that basically just run Oracle, and the number of workstations that are used entirely for one CAD program). Intel just has to make sure that these key apps are really, really well-supported on IA-64 and their target customers will be happy. And they're basically paying companies to do this sort of porting (they have a $250 million IA-64 venture fund), so I have a lot of confidence that this'll work out for them.
It's also important to remember that enterprise products have a much longer purchasing cycle than consumer products. For any console system, the availability of games on Day 1 is crucial to the success of the whole system. But any reasonable enterprise can be expected to spend 9-18 months evaluating critical products before doing a serious roll-out, and that gives Intel a crucial buffer period in which to get the remaining ISVs on board.
The much tougher issue for them will be quality of the compilers themselves. The article alludes to the fact that IA-64 puts a LOT of burden on the compiler, but I think it even understates that fact. The standard gcc is woefully inadequate for this architecture, so Linux users have to hope that SGI's version comes through. Realistically, only HP (which has been working in VLIW experiments for years) can be counted on to have a good implementation ready from the launch of the chip.
--JRZ
I actually did buy a Thinkpad T20 largely because it had a good record of Linux support (although the preloaded OpenLinux was a rip-off extra charge, so I didn't get it). It's a pricey machine, but thin and with a beautiful screen, and it still has a fair number of Linux issues: you have to download a patched X-server, sound setup is a huge pain, and the network card tends to blink out after a suspend. Otherwise, pretty slick though (and the patched server for the S3 works really well). Basically, I don't care if the vendor pre-installs Linux, as long as they make high-quality device drivers freely available and maybe put up a one-page doc describing potential issues. I don't think that's too much to ask for when you're buying a $3,500+ machine. . . --JRZ
Hey folks, this is nothing new in the software business. Go try to buy a copy of Oracle and you'll have an option to buy a perpetual license, a 2-year license, or one of a few other options.
And, you know what? If I were running a startup, or a medium-sized business that wanted to do a massive roll-out all at once, I'd much rather use a subscription model than try to come up with all that cash at once.
The people who really risk getting another blow are the retailers and resellers who currently sell MS software. They've already been hit really hard by direct sales, direct downloads, and online merchants, but the subscription path builds much more direct ties between the vendor (MS) and the consumer, so that the buyer doesn't have to go to any store to renew or upgrade in the long run. For now, they're offering an option to buy another subscription license at retail outlets in an attempt to keep up some relationships with these folks. But the whole business plan, in the long run, really cuts the middleman out of the market.
Eliminating the middleman would, in general, be positive for consumers, but the lack of competition just gives Microsoft a chance to sop up those margins for itself. Right now, for instance, buying direct from MS is usually the most expensive option, since they sell almost everything at full MSRP.
Of course, it's too early to predict what exactly their pricing strategy will be in the long run. Corel and some other potential ASPs have been floating rumors about pricing on a feature-by-feature, use-by-use basis rather than a simple annual model.
--JRZ
--JRZ
In my experience, connection pooling makes a very large difference on busy MySQL servers. If you're using Java, there are a lot of easy-to-use pools, like PoolMan and Resin's pooling. Don't know if PHP and Perl/DBI have similar features.
A way for groups of people to communicate online in real time! For only $50-$100 per seat! Wow!!! The world will never be the same! I'm so glad to live at the turn of the millennium where we have such radical new technologies.
This isn't just the continuation of some flamewar. The FSF believes that it would be a licensing violation for KDE developers to link and GNU-developed software to a QPL'ed version of Qt. They asked that anyone trying to link GPL'ed code with Qt get a special exception in writing from the copyleft holder (this came up with the apt libraries and Corel Linux, for instance). Now that Qt is dual-licensed, it might not be an issue. But the team is just trying to steer clear of legal difficulties, so we shouldn't mix that up with pure flaming.