Apache on Windows is a good example of why per-application configurations files can be better than a massive, all-encompassing system database. I've not actually tried running multiple instances under Windows before, because I don't admin Windows systems in general.
A compromise could be to keep the unified file format but to allow the user to optionally configure applications to have their own registries which map onto some place in the big registry (probably HKCU/Software/Manufacturer/Product) and allow several such "mini-registries" to exist. This way your average user gets the simple approach, but with little or no extra programming effort in the application the flexibility of per-application configuration files can be approximated. You'd still need a special editor to change edit them, though.
The main thing I dislike about the registry is that it makes it hard to have several separate copies of the same program installed. With config files, I can specify which to use and I then don't even need several copies of the installed program.
One concrete example I have of this is that on a development server I used to administer we had ten or more separate Apache configurations running simultaneously on different ports but only one Apache binary in the filesystem. These Apache servers didn't interact in any way so we could be confident that they were simulating correctly the target environment aside from available system resources. I wouldn't know where to start doing that with Microsoft IIS...
Windows will let you choose a DPI setting for your monitor, and will let you do it visually by holding a rule to the screen and scaling an on-screen rule to match. However, it still assumes square pixels and some apps are hardcoded for 96dpi (Windows default) and so they will still appear small or, worse, controls will hang out of the client area of their containing window.
They could easily add a new vertical DPI setting to go with the horizontal one, but apps which try to do their own DPI scaling rather than letting Windows do it will break wonderfully! No doubt Microsoft will "fix" this by having apps declare that they know about variable DPI and, in the case where they don't, have GDI transparently scale things... or some other similar compatibility shim.
Is it possible (read: feasible) to create a private cellphone network by running smaller cell sites and working alongside the existing national networks?
It seems to be quite hard to find out about exactly how the phone system works; it seems to me that a localised network in which phones are all able to call each other but not anyone outside the network could be useful in situations where currently two-way radio is generally used. It also seems like quite a fun project, assuming it's not prohibitively expensive.
This Mono 1.0 release seems to be developer-oriented. Will they (or someone else) be creating smaller runtime packages which only include the stuff necessary to run applications?
It would be nice if there were an easy install package for Win32, too. This might seem pointless on the surface, but Microsoft.NET won't install on all Windows systems due to deliberate barriers, plus Microsoft's distribution does not come with GTk# and so forth.
I'm installing the full release on my main system, but it'd be nice to have a smaller runtime package that I can put on my other boxen to run any apps I create. Perhaps in a few hundred years Debian will have a runtime package which can be depended on by mono apps without having to pull in the whole development environment. (mono-runtime vs. mono-devel, both depending on mono-common)
(I see a page about the Mono runtime but it's talking about the runtime portion of the project rather than a specific runtime distribution.)
Jabber is peer-to-peer, unless you use the trendy modern definition of layering a new transport network over the existing transport network.
Jabber's architecture is similar to the email architecture; anyone can run a server and provide themselves and optionally others with an account on that server. The Jabber user ids are in the form user@host, and the servers route messages on the behalf of users between themselves.
The problem here, of course, is that ISPs provide email services for their customers, but they do not provide Jabber services. Jabber came too late for it to be considered one of those things that every ISP has to have, so sadly it's hard to get it adopted because most users don't have the ability to set up a server and no access to anyone else's servers. Anyone can create an account on jabber.org, but that has the same centralisation issues as AIM, MSN and Y!IM and thus doesn't really solve anything, plus jabber.org doesn't quite have the resources to keep the service running with a userbase similar to that of MSN Messenger, I'd wager.
As a side note, a friend of mine was planning to work on an chat client which used "modern" peer-to-peer for a college project. In the end he ended up just creating a general transport network and not the application bit, but we did have some discussions about it; it has the usual problems associated with peer-to-peer file transfer networks such as increased traffic through "small" nodes, bootstrapping and firewalls, but no major showstoppers once coupled with some public key encryption and some kind of key-exchange protocol. If it's to be done, it would be nice if it could somehow be an extension of the Jabber network so that the infrastructure can become more structured if circumstances allow.
It's a shame, because Jabber has the one major advantage that it's not up to one single company to run it, so the problem of third party clients connecting and using bandwidth isn't an issue anymore; anyone (for some estimation of "everyone") can run a server for themselves and, optionally, their friends, plus other organisations can provide a server as a service for those who aren't able to run one themselves.
Unfortunately, it's all a bit too late. If Jabber had happened at the same time email did, we'd have been fine; ISPs are "obligated" to provide customers with email addresses and operate an email server. It would be nice if ISPs would provide customers with Jabber accounts with their email address as a userid, but at this point it's impossible to get ISPs to do anything new like this.
The only reason they still run USENET feeds is out of tradition; if usenet was invented now we'd be dependent on a single server and a few friendly mirrors. Imagine if email was run completely by Yahoo! or AOL...
I found lots of extensions to make FireFox do things that Opera does, such as the unified Stop/Refresh button and the image toggle.
However, I find it hard to track down extensions sometimes. I want toolbar buttons to toggle on and off document styles (user stylesheet only) and a three-way button to choose between all inline images, no inline images and cached images only. The latter is useful when you're refreshing a page a lot since it prevents the browser from reloading (or attempting to reload) the images.
Before I upgraded to the latest FireFox I had an extension to allow toolbars at the bottom, but I can't seem to find that anymore. Once I figure it out I'm going to have to make a website about "Making FireFox look and operate exactly like Opera":) For now, I'll continue with Opera 6, even if it does have a few security bugs. (Got them worked around)
I frequently generate LaTeX documents from other formats. Not Word documents, I must admit, but that's really just because I don't have the faintest idea how to interpret those and I don't use Word anyway.
It's hard to go from Word to LaTeX because Word is less structural and more format-oriented, but you could theoretically use some rules to translate from its styles to a pretty plain TeX input file.
One time long ago I wrote a compiler for a simple little programming language which generated code for the 6502. It was the most useful personal project I ever did, even if the results weren't exactly brilliant. (the language was quite limited and the code not really optimised at all.)
I think this would make a good project for CS undergrads. They'd see just what the code they've written in a high-level language is doing at the metal and get a new appreciation for why, for example, it is bad to pass fifteen large parameters by value.
I guess in the US most universities actually do have a compilers class. Here in the UK, none of the universities attended by me or my friends offer anything like this. The closest my university came was some really trivial assembly programming on a PIC microprocessor to make some red LEDs blink on and off.
Well, if it was all IP I imagine all calls would cost the same. Billing by destination would become tricky. In this case, I certainly would start calling my friends in the US and in Europe more often. The only reason I don't call them now is that it costs a lot and calling cards require separate purchase and some setup effort.
I'm planning to get an IP phone myself soon, though, so I won't be waiting for BT! :)
I imagine that the majority of phone call traffic will never leave BT's network, since the uptake of IP telephony in the rest of the world is still quite small.
Even if similar moves are made in other countries, I'm sure BT have some connections that could keep it local until it hits the remote exchange.
While I don't necessarily disagree with you entirely, surely it took more effort to put in a tamper-resistant key lockout in the service pack installer than it would have done to just let it install everywhere?
It could be argued that Windows Update is costing them in data transfer etc, but then I'd say the solution is to bar the pirate IDs from Windows Update and force the unlicenced users to obtain the patch elsewhere. Of course, they'd have to allow others to distribute the patch, but that would probably save them money as it would spread the downloads over several sources.
Indeed, if this does happen the general-purpose PC will become a rarity and thus go back to being really expensive. Good for Microsoft (and Sun, I suppose) but bad for everyone else.
It'll be a case of running Microsoft Windows on "free" hardware for a modest yearly subscription or paying 2000+ for an "open" PC to run free (as in speech or beer) software. Sadly, I think we can all guess which of these most people would choose given current trends.
At my (UK) university, it appears (from the information given to us at enrollment) that the procedure is to grade all of the submitted work throughout the year and then submit it all, as one batch, to a plagiarism detection service for an automated check. The university then gets back a list of possible infringments which they can check up on.
The interaction with an outside organisation makes it much easier to submit everything at once. The people marking the assignments do perform rudimentary detection of plagiarism by looking for things which look like they came out of the recommended reading and so on, but Internet-based detection is much easier to do in bulk.
In my case, then, it would only be at the end of an academic year that the plagiarism would be detected. This is a bit different to waiting three years, but it is possible that the University of Kent has different procedures for this kind of thing.
I'll still be pretty hacked off the first time anyone sends me mail through this "service", because most probably my address will be on a short-cut to a spam address list.
I suspect with some a minimal amount of effort it would be possible to stuff FireBird into a.cab file and have it install as if it were an ActiveX control.
Do you want to install and run "Mozilla Firebird"? You need it to view this site.
Everyone would click Yes if it was on an important enough site, but of course it wouldn't be. It'd be quite funny, though.
Support Rep: Hi! I'm Eliza. What's your problem? Gun: I need to check and see if my forwards to a [yourdomain] account are being blocked based on the server they're being forwarded from. Do you need the IP address, forward address? Support Rep: What does that suggest to you?
Apache on Windows is a good example of why per-application configurations files can be better than a massive, all-encompassing system database. I've not actually tried running multiple instances under Windows before, because I don't admin Windows systems in general.
A compromise could be to keep the unified file format but to allow the user to optionally configure applications to have their own registries which map onto some place in the big registry (probably HKCU/Software/Manufacturer/Product) and allow several such "mini-registries" to exist. This way your average user gets the simple approach, but with little or no extra programming effort in the application the flexibility of per-application configuration files can be approximated. You'd still need a special editor to change edit them, though.
The main thing I dislike about the registry is that it makes it hard to have several separate copies of the same program installed. With config files, I can specify which to use and I then don't even need several copies of the installed program.
One concrete example I have of this is that on a development server I used to administer we had ten or more separate Apache configurations running simultaneously on different ports but only one Apache binary in the filesystem. These Apache servers didn't interact in any way so we could be confident that they were simulating correctly the target environment aside from available system resources. I wouldn't know where to start doing that with Microsoft IIS...
I don't think it's called "anti-aliasing" when there are no jaggies in the first place! :)
Windows will let you choose a DPI setting for your monitor, and will let you do it visually by holding a rule to the screen and scaling an on-screen rule to match. However, it still assumes square pixels and some apps are hardcoded for 96dpi (Windows default) and so they will still appear small or, worse, controls will hang out of the client area of their containing window.
They could easily add a new vertical DPI setting to go with the horizontal one, but apps which try to do their own DPI scaling rather than letting Windows do it will break wonderfully! No doubt Microsoft will "fix" this by having apps declare that they know about variable DPI and, in the case where they don't, have GDI transparently scale things... or some other similar compatibility shim.
Is it possible (read: feasible) to create a private cellphone network by running smaller cell sites and working alongside the existing national networks?
It seems to be quite hard to find out about exactly how the phone system works; it seems to me that a localised network in which phones are all able to call each other but not anyone outside the network could be useful in situations where currently two-way radio is generally used. It also seems like quite a fun project, assuming it's not prohibitively expensive.
This Mono 1.0 release seems to be developer-oriented. Will they (or someone else) be creating smaller runtime packages which only include the stuff necessary to run applications?
It would be nice if there were an easy install package for Win32, too. This might seem pointless on the surface, but Microsoft.NET won't install on all Windows systems due to deliberate barriers, plus Microsoft's distribution does not come with GTk# and so forth.
I'm installing the full release on my main system, but it'd be nice to have a smaller runtime package that I can put on my other boxen to run any apps I create. Perhaps in a few hundred years Debian will have a runtime package which can be depended on by mono apps without having to pull in the whole development environment. (mono-runtime vs. mono-devel, both depending on mono-common)
(I see a page about the Mono runtime but it's talking about the runtime portion of the project rather than a specific runtime distribution.)
Jabber is peer-to-peer, unless you use the trendy modern definition of layering a new transport network over the existing transport network.
Jabber's architecture is similar to the email architecture; anyone can run a server and provide themselves and optionally others with an account on that server. The Jabber user ids are in the form user@host, and the servers route messages on the behalf of users between themselves.
The problem here, of course, is that ISPs provide email services for their customers, but they do not provide Jabber services. Jabber came too late for it to be considered one of those things that every ISP has to have, so sadly it's hard to get it adopted because most users don't have the ability to set up a server and no access to anyone else's servers. Anyone can create an account on jabber.org, but that has the same centralisation issues as AIM, MSN and Y!IM and thus doesn't really solve anything, plus jabber.org doesn't quite have the resources to keep the service running with a userbase similar to that of MSN Messenger, I'd wager.
As a side note, a friend of mine was planning to work on an chat client which used "modern" peer-to-peer for a college project. In the end he ended up just creating a general transport network and not the application bit, but we did have some discussions about it; it has the usual problems associated with peer-to-peer file transfer networks such as increased traffic through "small" nodes, bootstrapping and firewalls, but no major showstoppers once coupled with some public key encryption and some kind of key-exchange protocol. If it's to be done, it would be nice if it could somehow be an extension of the Jabber network so that the infrastructure can become more structured if circumstances allow.
It's a shame, because Jabber has the one major advantage that it's not up to one single company to run it, so the problem of third party clients connecting and using bandwidth isn't an issue anymore; anyone (for some estimation of "everyone") can run a server for themselves and, optionally, their friends, plus other organisations can provide a server as a service for those who aren't able to run one themselves.
Unfortunately, it's all a bit too late. If Jabber had happened at the same time email did, we'd have been fine; ISPs are "obligated" to provide customers with email addresses and operate an email server. It would be nice if ISPs would provide customers with Jabber accounts with their email address as a userid, but at this point it's impossible to get ISPs to do anything new like this.
The only reason they still run USENET feeds is out of tradition; if usenet was invented now we'd be dependent on a single server and a few friendly mirrors. Imagine if email was run completely by Yahoo! or AOL...
In addition, rebooting is annoying. I tend to leave certain programs running constantly and rebooting the system disturbs that.
We run multitasking operating systems for a reason!
For lots of things, VMWare and similar can provide a hack solution until a real solution arises, but VMWare isn't designed to run games.
I found lots of extensions to make FireFox do things that Opera does, such as the unified Stop/Refresh button and the image toggle.
However, I find it hard to track down extensions sometimes. I want toolbar buttons to toggle on and off document styles (user stylesheet only) and a three-way button to choose between all inline images, no inline images and cached images only. The latter is useful when you're refreshing a page a lot since it prevents the browser from reloading (or attempting to reload) the images.
Before I upgraded to the latest FireFox I had an extension to allow toolbars at the bottom, but I can't seem to find that anymore. Once I figure it out I'm going to have to make a website about "Making FireFox look and operate exactly like Opera" :) For now, I'll continue with Opera 6, even if it does have a few security bugs. (Got them worked around)
I frequently generate LaTeX documents from other formats. Not Word documents, I must admit, but that's really just because I don't have the faintest idea how to interpret those and I don't use Word anyway.
It's hard to go from Word to LaTeX because Word is less structural and more format-oriented, but you could theoretically use some rules to translate from its styles to a pretty plain TeX input file.
One time long ago I wrote a compiler for a simple little programming language which generated code for the 6502. It was the most useful personal project I ever did, even if the results weren't exactly brilliant. (the language was quite limited and the code not really optimised at all.)
I think this would make a good project for CS undergrads. They'd see just what the code they've written in a high-level language is doing at the metal and get a new appreciation for why, for example, it is bad to pass fifteen large parameters by value.
I guess in the US most universities actually do have a compilers class. Here in the UK, none of the universities attended by me or my friends offer anything like this. The closest my university came was some really trivial assembly programming on a PIC microprocessor to make some red LEDs blink on and off.
Well, if it was all IP I imagine all calls would cost the same. Billing by destination would become tricky. In this case, I certainly would start calling my friends in the US and in Europe more often. The only reason I don't call them now is that it costs a lot and calling cards require separate purchase and some setup effort.
I'm planning to get an IP phone myself soon, though, so I won't be waiting for BT! :)
I imagine that the majority of phone call traffic will never leave BT's network, since the uptake of IP telephony in the rest of the world is still quite small.
Even if similar moves are made in other countries, I'm sure BT have some connections that could keep it local until it hits the remote exchange.
British terminology, my friend. :)
This was the last thing I expected from BT after their faffing about with getting DSL sorted out a few years back. This should be interesting...
Too bad I'm not a BT customer. I wonder what will become of all of the mini-telcos which currently hang off BT's network.
Also, the RSS stuff for your weblog crashes Opera 6!
One of these days I'll bother to figure out how to migrate my Opera 6 customisations to Opera 7 and think about paying for the new version.
Interestingly enough, My copy of Opera 6.06 rendered the first two with no special presentation whatsoever. The last one rendered in green.
Then again, I suppose I should really have paid to upgrade to Opera 7 by now.
While I don't necessarily disagree with you entirely, surely it took more effort to put in a tamper-resistant key lockout in the service pack installer than it would have done to just let it install everywhere?
It could be argued that Windows Update is costing them in data transfer etc, but then I'd say the solution is to bar the pirate IDs from Windows Update and force the unlicenced users to obtain the patch elsewhere. Of course, they'd have to allow others to distribute the patch, but that would probably save them money as it would spread the downloads over several sources.
You don't need to fork Java to add new packages to it.
Indeed, if this does happen the general-purpose PC will become a rarity and thus go back to being really expensive. Good for Microsoft (and Sun, I suppose) but bad for everyone else.
It'll be a case of running Microsoft Windows on "free" hardware for a modest yearly subscription or paying 2000+ for an "open" PC to run free (as in speech or beer) software. Sadly, I think we can all guess which of these most people would choose given current trends.
At my (UK) university, it appears (from the information given to us at enrollment) that the procedure is to grade all of the submitted work throughout the year and then submit it all, as one batch, to a plagiarism detection service for an automated check. The university then gets back a list of possible infringments which they can check up on.
The interaction with an outside organisation makes it much easier to submit everything at once. The people marking the assignments do perform rudimentary detection of plagiarism by looking for things which look like they came out of the recommended reading and so on, but Internet-based detection is much easier to do in bulk.
In my case, then, it would only be at the end of an academic year that the plagiarism would be detected. This is a bit different to waiting three years, but it is possible that the University of Kent has different procedures for this kind of thing.
I'll still be pretty hacked off the first time anyone sends me mail through this "service", because most probably my address will be on a short-cut to a spam address list.
Bah.
I suspect with some a minimal amount of effort it would be possible to stuff FireBird into a .cab file and have it install as if it were an ActiveX control.
Do you want to install and run "Mozilla Firebird"? You need it to view this site.
Everyone would click Yes if it was on an important enough site, but of course it wouldn't be. It'd be quite funny, though.
Support Rep: Hi! I'm Eliza. What's your problem?
Gun: I need to check and see if my forwards to a [yourdomain] account are being blocked based on the server they're being forwarded from. Do you need the IP address, forward address?
Support Rep: What does that suggest to you?