I believe Leopard will make you log out for a QuickTime upgrade, which is comparable to what Gates was trying to do.
Nitpick: QuickTime is the media API for OS X and it's used pervasively throughout the whole OS. Upgrading QuickTime on a Mac is probably of similar impact to upgrading X on a Linux box. Experts in either case could bounce all the affected systems to load the new libraries, but it's easier to just tell end users to reboot.
That was the kind of stuff I was referring to when I said that writing Python was fun. See also: functional programming, decorators, trivially easy inheritance.
Wine was a great idea in its day but now with multi-core CPUs and excellent VMs (VMWare, VirtualBox, etc.) do you still see the need for Wine?
As an end user, I sure do. Loading a few DLLs that are wrappers around native Linux functionality takes a lot less resources than hosting an entire running OS. If you're running a huge app, then maybe that overhead isn't a large proportional of that total. If you just want to run a smaller app or two, it can be a pain.
And speaking of resources: say you have 2GB of RAM. You want to run an application in Windows. How much do you set aside to VMWare, knowing that it's going to be managing its own pageful, and that the entire VMWare image is subject to swapping out in the host OS on top of that? I'd much rather run e.g. Notepad in Wine and let Linux natively allocate resources to it than get Windows to manage it, and get Linux to manage Windows.
Don't get me wrong; I love VMWare. I just don't see it (or any other virtualization product) as a replacement for Wine. They just don't solve the same problems.
Java, on the other hand, is an industry with the basic tools provided by several vendors (BEA, Sun, IBM, etc). There is a huge industry of books, open source projects, large installs from behemoths like Ebay.
...and every one of them answered to Sun at the end of the day. If they abandoned Java, IBM would have continued to ship an almost-Java-but-we-can't-call-it-that clone, but that's about the best you could hope for.
With the EOL coming, I've been trying to convince them to go with Python for the front end.
We're not using it directly for the front end, at least not yet, even though we have some PyQT and PyWX code in production. We've been migrating our data to PostgreSQL, and doing more and more of our reporting-type work in Zope and now Django.
If I had my way, we'd use a web front end for almost everything where practical, and then our employee workstations could be anything that can run a browser. Want to check on something via your iPhone? Not a problem! In the mean time, we're settling for migrating more and more of our business logic to Python with the intention of gluing a new interface onto it at a later date.
Email me if you have questions. So far we're making great progress!
Limitations on the possession of arms not in common use ensures that the arms in common use when gun control legislation began are the only arms that will ever be allowed. Thus, as the government gets more and more advanced weapons to use against the people, the people's arms will become less and less effective.
There are two ways to interpret that interpretation. The other is that the weapons in use at the time by private individuals were military weapons, ergo it's OK for regular citizens now to use today's military weapons as well. And if I'm not mistaken, weren't some of the Revolutionary War battleships privately owned? If so, here's to hoping we see the USS Missouri on eBay.
The real differences between an open java and the free java implementations maintained by companies like Sun and IBM are religious in nature.
That's incredibly naive and impractical. What good is a monetarily-free language that you're not liberty-free to maintain if the vendor decides not to support it anymore?
I've told this story before, but you get to hear it again. My company has a lot of legacy Visual FoxPro code in production. Microsoft claimed for ages that it was a safe platform to bet on. Then they EOLed it. If the current binaries won't run on Windows 7, then we're stuck on Vista/XP forever or until we port to a different language.
We settled on Python as our new development platform because it's FOSS and meets our other needs. Had it not been FOSS, we wouldn't have considered it, having no desire to fall into that trap again.
You say "zealot" and call yourself a moderate. I say "pragmatist" and call you a dreamer.
It must be for you, because you still got it wrong.
I don't mess with indentation - never have, never will - because Emacs handles all that for me. I'm no more concerned with "anal-retentive use of whitespace" when writing my programs than I am with "anal-retentive use of inodes and sectors" when saving them to disk.
Who knows: maybe writing the Python interpreter itself is a pain in the butt because of whitespace (although I highly doubt it). That doesn't make using it any less fun.
Oh, and another thing: I think he meant that in the situations where Python is too slow, Java would probably also be too slow. Those cases call for embedded C or other low-level optimization. I don't think he meant to say that Python is faster than Java.
Sorry about that "no brain" thing. Cuz if there was no Python, Ruby would be a better choice then Java.
...for you. If it were up to me, we'd be writing everything in Lisp, but I work in a company with other programmers and we have to use something that everyone can pick up and run with. I don't think Ruby's that language.
Python has the Global Interpreter Lock, which means even though there are threads, they don't execute concurrently. Too bad if your server has several processors / cores.
Love Python; hate GIL. Trust me, I know exactly what you mean.
That said, there are quite a few multi-processing packages for Python (disclaimer: two of the ones under SMP are mine, so I'm kind of biased toward the idea). Also, Python 2.6 will ship with a standard multiprocessing module that's very similar to it's multithreading counterpart and should be an easy migration.
Multithreading is cool, but there are other ways to skin that cat.
We're a Python shop. It does everything Java does that we need it to do, but is actually fun to write. If Python disappeared tomorrow, though, Java would be a no-brainer. It's cross-platform and wouldn't leave us beholden to the good wishes of Redmond.
So, when you double the length of the pointer from 4 bytes to 8, well guess what....
Assuming a big, fat page with 10,000 DOM and JavaScript objects, the extra 4 bytes uses roughly an extra 40KB of memory. A 480x80 banner image displayed on a 24-bit screen will use about 112KB on its own.
No, pointer sizes alone don't really account for heap growth.
if microsoft were to enforce such switch (require everything to be re-written? lol), business users would be forced to stay on their old platforms... but wait, businesses require a supported platform to ensure that when there is a disaster, someone will be around to fix it.
Apple made "Classic Mode" for OS X, which is basically OS 9 running inside a process. When you launched "classic" apps, it loaded up a real, working OS 9 environment to run them in.
This was working, usable technology on 400MHz G3s from 2000.
Microsoft owns VirtualPC, so what's their excuse for not being able to pull off the same thing?
I bet they don't mess with the carburetor, or any of a number of things that are now controlled by the car's computer system.
You're joking, right? I watched a friend tuning a 4-barrel carb a little while ago, and I guarantee you've never seen an overclocker hover over their water cooling system more than my friend was glued to the valves on that thing.
Did you know that there's a thriving market for car geeks who replace their engine's ROMs with programmable versions so that they can tweak fuel flow and air mixtures throughout the power curve? It's not uncommon to see someone pecking away at a laptop jacked into their engine.
Computer geeks just know their particular area(s) of expertise better than anyone else. Doesn't mean someone who builds websites or administers databases for a living knows how to compile a kernel.
The people who don't aren't computer geeks. Geeks are more about a general aptitude, and their focuses narrow from there. They may not have a particular skill today, but point them at some docs and give them a little while and they'll be progressing in that direction.
By analogy, all doctors get the same core curriculum from med school, then specialize. The difference between a family practice guy and a general surgeon is in what they chose to learn about afterward, but either one could pick up the other's textbooks and figure out the basics.
And thus are geeks. A web geek is a database geek who got derailed. The ones who aren't capable of switching from one field to the other? Those are just nerds.
Barring bug fixes, why would you ever update your OS. OS are like girlfriends. You can usually do different, but it's hard to do better.
Yes, because Windows 95 was just as good as Windows XP, once all the bugs were fixed.
I can think of a lot of reasons to upgrade an OS - features and speed being chief among them. Newer versions of Linux with the tickless kernel boost battery life, for instance. You may be happy tracking Debian/stable, but enough people weren't that Ubuntu caught on.
Any file can be digitally signed with GPG or PGP. If your customers are used to looking for public keys on your site anyway, you might as well make them PGP pubkeys.
I believe Leopard will make you log out for a QuickTime upgrade, which is comparable to what Gates was trying to do.
Nitpick: QuickTime is the media API for OS X and it's used pervasively throughout the whole OS. Upgrading QuickTime on a Mac is probably of similar impact to upgrading X on a Linux box. Experts in either case could bounce all the affected systems to load the new libraries, but it's easier to just tell end users to reboot.
That was the kind of stuff I was referring to when I said that writing Python was fun. See also: functional programming, decorators, trivially easy inheritance.
As an end user, I sure do. Loading a few DLLs that are wrappers around native Linux functionality takes a lot less resources than hosting an entire running OS. If you're running a huge app, then maybe that overhead isn't a large proportional of that total. If you just want to run a smaller app or two, it can be a pain.
And speaking of resources: say you have 2GB of RAM. You want to run an application in Windows. How much do you set aside to VMWare, knowing that it's going to be managing its own pageful, and that the entire VMWare image is subject to swapping out in the host OS on top of that? I'd much rather run e.g. Notepad in Wine and let Linux natively allocate resources to it than get Windows to manage it, and get Linux to manage Windows.
Don't get me wrong; I love VMWare. I just don't see it (or any other virtualization product) as a replacement for Wine. They just don't solve the same problems.
...and every one of them answered to Sun at the end of the day. If they abandoned Java, IBM would have continued to ship an almost-Java-but-we-can't-call-it-that clone, but that's about the best you could hope for.
We're not using it directly for the front end, at least not yet, even though we have some PyQT and PyWX code in production. We've been migrating our data to PostgreSQL, and doing more and more of our reporting-type work in Zope and now Django.
If I had my way, we'd use a web front end for almost everything where practical, and then our employee workstations could be anything that can run a browser. Want to check on something via your iPhone? Not a problem! In the mean time, we're settling for migrating more and more of our business logic to Python with the intention of gluing a new interface onto it at a later date.
Email me if you have questions. So far we're making great progress!
Of course it is. It's the last resort for making sure that the other rights are respected.
There are two ways to interpret that interpretation. The other is that the weapons in use at the time by private individuals were military weapons, ergo it's OK for regular citizens now to use today's military weapons as well. And if I'm not mistaken, weren't some of the Revolutionary War battleships privately owned? If so, here's to hoping we see the USS Missouri on eBay.
That's incredibly naive and impractical. What good is a monetarily-free language that you're not liberty-free to maintain if the vendor decides not to support it anymore?
I've told this story before, but you get to hear it again. My company has a lot of legacy Visual FoxPro code in production. Microsoft claimed for ages that it was a safe platform to bet on. Then they EOLed it. If the current binaries won't run on Windows 7, then we're stuck on Vista/XP forever or until we port to a different language.
We settled on Python as our new development platform because it's FOSS and meets our other needs. Had it not been FOSS, we wouldn't have considered it, having no desire to fall into that trap again.
You say "zealot" and call yourself a moderate. I say "pragmatist" and call you a dreamer.
It must be for you, because you still got it wrong.
I don't mess with indentation - never have, never will - because Emacs handles all that for me. I'm no more concerned with "anal-retentive use of whitespace" when writing my programs than I am with "anal-retentive use of inodes and sectors" when saving them to disk.
Who knows: maybe writing the Python interpreter itself is a pain in the butt because of whitespace (although I highly doubt it). That doesn't make using it any less fun.
Oh, and another thing: I think he meant that in the situations where Python is too slow, Java would probably also be too slow. Those cases call for embedded C or other low-level optimization. I don't think he meant to say that Python is faster than Java.
...for you. If it were up to me, we'd be writing everything in Lisp, but I work in a company with other programmers and we have to use something that everyone can pick up and run with. I don't think Ruby's that language.
No, but using a programmer's editor written since 1980 is a blast. You might wish to try it sometime.
Seriously, "Python indentation is hard" ranks right up there with "Java is slow" and "Al Gore invented the Internet" for accuracy and freshness.
Love Python; hate GIL. Trust me, I know exactly what you mean.
That said, there are quite a few multi-processing packages for Python (disclaimer: two of the ones under SMP are mine, so I'm kind of biased toward the idea). Also, Python 2.6 will ship with a standard multiprocessing module that's very similar to it's multithreading counterpart and should be an easy migration.
Multithreading is cool, but there are other ways to skin that cat.
We're a Python shop. It does everything Java does that we need it to do, but is actually fun to write. If Python disappeared tomorrow, though, Java would be a no-brainer. It's cross-platform and wouldn't leave us beholden to the good wishes of Redmond.
I feel more educated now.
By standard hardware replacement rates alone, that should be tens of millions of PCs running Vista.
Most of those have been kernel updates. Until the hot-patch system is released, there's not much you can do about that.
Assuming a big, fat page with 10,000 DOM and JavaScript objects, the extra 4 bytes uses roughly an extra 40KB of memory. A 480x80 banner image displayed on a 24-bit screen will use about 112KB on its own.
No, pointer sizes alone don't really account for heap growth.
"I didn't try to download any child porn! Charter put it there!"
Let Charter, DHS, and pissed off moms battle it out - hopefully they'd annihilate each other.
Apple made "Classic Mode" for OS X, which is basically OS 9 running inside a process. When you launched "classic" apps, it loaded up a real, working OS 9 environment to run them in.
This was working, usable technology on 400MHz G3s from 2000.
Microsoft owns VirtualPC, so what's their excuse for not being able to pull off the same thing?
You're joking, right? I watched a friend tuning a 4-barrel carb a little while ago, and I guarantee you've never seen an overclocker hover over their water cooling system more than my friend was glued to the valves on that thing.
Did you know that there's a thriving market for car geeks who replace their engine's ROMs with programmable versions so that they can tweak fuel flow and air mixtures throughout the power curve? It's not uncommon to see someone pecking away at a laptop jacked into their engine.
Computer geeks just know their particular area(s) of expertise better than anyone else. Doesn't mean someone who builds websites or administers databases for a living knows how to compile a kernel.The people who don't aren't computer geeks. Geeks are more about a general aptitude, and their focuses narrow from there. They may not have a particular skill today, but point them at some docs and give them a little while and they'll be progressing in that direction.
By analogy, all doctors get the same core curriculum from med school, then specialize. The difference between a family practice guy and a general surgeon is in what they chose to learn about afterward, but either one could pick up the other's textbooks and figure out the basics.
And thus are geeks. A web geek is a database geek who got derailed. The ones who aren't capable of switching from one field to the other? Those are just nerds.
Yes, because Windows 95 was just as good as Windows XP, once all the bugs were fixed.
I can think of a lot of reasons to upgrade an OS - features and speed being chief among them. Newer versions of Linux with the tickless kernel boost battery life, for instance. You may be happy tracking Debian/stable, but enough people weren't that Ubuntu caught on.
What does "Non-Profit Budget" mean, anyway? There are non-profits bigger than the company I work for. Non-profit isn't the same as poorly financed.
Any file can be digitally signed with GPG or PGP. If your customers are used to looking for public keys on your site anyway, you might as well make them PGP pubkeys.
That would've been so funny when I was 10.