Would it have made any difference to uptake if it wasn't ?
I dunno. Not directly anyway. Maybe if it affected the quality not being able to link in GPL code, or encouraging developers... but I think that only the very tinyiest minority of users would distinguish not only between Free/nonFree, but GPL compatible and not.
Anyway, I don't know enough to make any comment on the original post's main thrust, but saying that "if you're so stuck on having GPL compliance than stop using Firefox because it's not released ONLY under the GPL" is just silly.
True, but in most interactive apps those situations pass within a couple seconds. (Even if they don't, depending on the reason it's "blocking", you still might be able to make forward progress. For instance, if you're just doing computation, you can periodically check for new messages and dispatch them while putting your computation on hold. This won't work if you're actually blocked by the OS of course.) Also, most interactive apps are almost completely waiting for user input anyway. So if you don't multithread your program it will be frustrating to use because it will occasionally make you sit there, but it probably won't take *too* much longer to do what you're doing. But if you're doing some longer-running process (compilation, scientific computation, analysis, simulation, etc.), having a single thread instead of multiple threads could substantially increase your running time if you're on the right hardware.
So actually I'm gonna pull off of my original statement a little... if you're on a uniprocessor, the difference between your long-running process being multithreaded or not isn't gonna be too much. So multithreading it becomes a lot less important. So going to multiprocessor/core benefits parallel computationally-intensive programs a lot, but interactive applications little. (SMT would depend on the workload of the parallel app where it falls in the continuum.)
Most modern languages in wide use support user defined data types
But not necessarily well. For instance, there's only one language I know of that provides language support for "strong" typedefs: D. And I don't know anyone who has ever used D. (Incidentally, this would be high on my list for additions.)
What are you going to do then if you want to create your own string? Take an existing string and copy and paste? Include it twice with a #define string unsafe_string? There's not a very elegant solution. You can hack around a bit with C++ templates and whatnot to get a somewhat reasonable solution where you get a macro that essentially does a strong typedef, but even that's getting pretty ugly. Inheritance doesn't work. In C++, the fact that the destructor in basic_string isn't virtual will kill you. You could at best write a wrapper and implement all the methods from basic_string that just calls through to an internal object, but again, that's a lot of boiler-plate code. In Java, String I believe is a final class; you can't subclass it. Even if you could, you wouldn't have use of +. C# might actually provide a way to do it, as do many other languages. My point is just that for a large set of programs (C, C++, and Java) this is a non-trivial task.
Actually, now that I've gone though how difficult it is, there's actually a solution that's fairly promising, which is provided by CQual. You don't define a whole new type, but rather a type qualifier. The guys who came up with this tool used it to find illegal uses of user pointers in the Linux kernel back before __user was around everywhere. (Which, BTW, serves exactly the same purpose for Sparse. However, Sparse's engine is purposely less powerful than CQual's. If you have a series of statements like "char * __user a; char* b; b = a;" Sparse will spit out a warning. CQual will just figure out that 'b' needs to be __user too, and carry on with that constraint and only complain if there's a *b later. Linus wanted to make things explicit, so he has to mark every __user pointer with the qualifier.)
Did you read the link that was posted a couple comments up? Almost all of the original suggestions AREN'T putting the data type in the name. They're stuff like 'd' to mark that the variable is a delta -- x is an absolute position, dx is a difference between two points. If you see code like x1 + x2 then, that should raise your eyebrow. The linked article gives the example of using 'us' and 's' to prefix unsafe and safe strings respectively, where "unsafe" means "just came in over the network; protect against injection attacks". This is information that your IDE won't give you.
Though to be fair, there are a number of things Simonyi suggested that *aren't* like that -- he suggests 'w' for 'word', 'b' for 'byte', 'p' for 'pointer', and maybe a couple others. 'sz' (null-terminated string) is sorta in between; it doesn't provide much semantic information, but it does provide a little, because does 'char* x' point to a single character or a string?
Though even the ones that encode strict datatypes have a valuable heritage in BCPL, where there isn't typechecking.
Okay, while I agree that this is overkill, this statement is, I think, silly. To put it that way denies that those "1s and 0s" might actually mean something when put together. I mean, I could say that stealing* is just taking a few atoms, or that killing someone is** just stopping some electrical impulses. Yes, these are in some sense hyperbole above and beyond yours, but your original statement is a pretty blatent example IMO too.
*I'm not trying to equate stealing and copyright infringement **if you don't believe in a soul
It's true that you can write portable code in Java, just like you can write portable code in C/C++, but you can't get the program to actually DO anything usefull. And when you try you have to end up debugging it.
I have worked on shrinked wrap software that was intended to run on both Linux and Windows, and i can tell you that there are little bugs that crop up now and then due to inconsistent handling, rendering issues, font issues, and especially in the way the Look and feels work. Granted it's not as bad as most people think and mostly it's bugs in Java's default libraries, but there ARE issues, and you shouldn't just dismiss them with a wave of the hand just because you have not had an occasion to experience one
I just want to offer a counterpoint to this... I did Java development at IBM for a summer internship. We were doing server-side stuff (which would, granted, bypass the most difficult platform-specific stuff, the GUI), but we developed on Windows on just typical laptops. The final target for the program was s390 Linux. Change of OS, change of architecture, even change of character set from ASCII to EBCDIC. You'd be hard pressed to find a larger platform transition. We had to make one change to the program to get it to run as well on there as it did on our laptops. I was quite impressed.
Is there something wrong with the CDDL that's not wrong with the Mozilla license? From what I understand, the CDDL is similar to the Mozilla license but simpler. I invite every single one of those armchair critics to stop using Firefox if they're so adamant
In all fairness, FF is dual-licensed under the GPL.
Perhaps all your software doesn't care if it loads onto the D: drive, and that key files, perm files, library support files, configs & inits, likewise can go into any drive you like.
Almost ALL of the software I have installed is on D. I haven't yet found anything that gives a choice of installation directory that doesn't work there. There's occasional software that puts stuff on C though -- most recently and notably because of the size of this installation portion, VS.Net 2005 Express Editions. This sort of stuff almost always goes under windows\ somewhere.
Though I haven't done it, I'm under the strong impression that you can if you like relocate Documents and Settings\ to another directory, which would move most of the config stuff that's stored in the filesystem. There are issues like registry configs which aren't stored in the filesystem at all though, so saying that you don't have the choice of directories is a red herring. You can make a good argument that there should be a revision to the registry for reasons along this line. (Like right now it's essentially impossible to backup an application's settings if it's stored in the registry unless you know where in the tree it's located and know that it's isolated to that spot. Even if you have this information, it's a pain.) The registry has, IMO, a number of benefits over flat config files, but in its current implementation there are severe drawbacks that go along with not being able to store your config information by zipping ~.
Maybe you don't really use Win much at all, and assume because Linux has a rational directory metaphor, every other Modern OS must have somethng at least pretty close.
Just FYI, without you specifying what makes a directory metaphor "rational", I'm guessing that you mean you can mount partitions and such whereever you want. Oh, guess what? Just because Windows doesn't do this for you by default, you can still create mount points and such for partitions. So if you want Documents and Settings on another partition, you can do that even without changing the path from C:\Documents and Settings. So if you've got a stubborn program that requires a specific path, you've got as much flexability in your partition layout as you would with a similar program under Linux.
NTFS also supports links (true links, as distinct from "shortcuts", which are a broken implementation), though doesn't yet expose a decent interface for using them. (I dunno about Vista.)
If you have people looking over your shoulder as you're editing files then you probably shouldn't be storing passwords, encrypted or not.
What if you're just exploring around on your hard drive or something like that?
I'll admit that the whole thing is not a likely scenario, but I think that not storing passwords does bring a very small benefit and essentially no cost. The "people will assume it's secure" argument goes out the window if you put a comment in accounts.xml that says "note -- even though the passwords are encrypted they aren't secure."
What makes you sure that the person looking over your shoulder won't be able to mentally decrypt the passwords they are seeing -- especially if it's done with a weak scheme such as ROT-13?
How many people do you know that can read ROT13? I don't think I know any. Even if you do, I bet it's *far* less than the number of people you know who can read English.
I know I was surprised to see the passwords stored in plaintext when I first saw it (oh, when I was randomly looking around). I figured why they did it really without reading the explanation, but we're talking the law of least astonishment here.
False. Gaim, which runs as you, has access to the keypair. This means anyone who has your password has access to the keypair.
Not necessarily. What if they're not running on your computer? What if you decide that you're going to shuffle your.gaim directory over the 'net to another computer, or something like that? You're likely to think "oh, I better not put my private keyring for PGP on the 'net", but less likely to think "oh, I better exclude my accounts.xml file when I send Gaim." What if you use something like roaming profiles or an NFS home directory to store.gaim but something more secure (maybe a smart card) for your keyring?
Again, far-fetched (though probably a little less than the first case), but still a benefit in a tiny minority of cases, and with more-or-less no loss.
I personally really like having the away message "window" as part of the main window and the accompanying feature of if you're away when you sign off, when you sign back on you are still going to be away with the same message.
Then again, I leave myself away 99% of the time I'm online anyway even when I'm talking to someone, so YMMV.
On the other hand, if you're just exploring around looking at files, or maybe editing the XML file itself for some reason, they won't be just sitting there for someone looking over your shoulder to see.
The argument is only partially convincing. I still think passwords should be encrypted, for the same reason that in Firefox you can view your stored passwords but have to click a button and then a confirmation dialog to do so, in why in PasswordSafe you have to click a button to view the password (and can usually go through the process of signing in without ever seeing your password).
The part that IS convincing is that there is absolutely no point* in having any form of encryption that's actually secure. Something even as simple as ROT13 would I think be a big improvement.
* Well, little point; I could still argue that it could use a keypair stored somewhere more securely so that even if someone compromises the security of your home directory and gets your Gaim config file but doesn't get your keypair they still can't decrypt it, but if you're in that state you very well may have other things to worry about than someone can sign on to IM and pretend they're you.
I think its a combination of a few things. 1) Companies aren't listening to what consumers want.
Isn't this contest proof to the contrary?
In fact, a deeper observation: you think that this shows that there's a lack of ideas on the part of companies. Are you trying to say that they *shouldn't* be doing this and just being innovative on their own? But wouldn't not asking their customers be EXACTLY the thing that you say is causing the lack of innavation?
I know as an undergrad I owned rights to the stuff I did. Even as a grad student in my current RA position, I have pretty tight ties to a private company, and I still own copyrights to my work. Said company has a license to use parts that relate to the research, but I have a license to their code to use in my research as well. The university even provided a neutral representative to negotiate with the company on behalf of our interests.
There has to be something you can do. Write a letter to the school paper complaining or something. Look through your school's policies too.
Here here! I'm sick and tired of seeing editions 7 through 15 of the same calculus book, where the only "improvement" are the renumbering of the problems in a section, and maybe a few new ones.
I know this first point isn't answering you, but: BTW, what mp3 players have a cf slot on them?
There's one call the XS-Drive. There were a few others that I ran across that I can't find immediately now.
I didn't realize there was an iPod way to do that though... thanks for the link.
When was the last time you *needed* a cf slot on an mp3 player?
I haven't needed one on an MP3 player. However, I *have* needed a portable hard drive, and in one's absense, have had to delete photos and turn down quality. This was actually the motivating factor for finding these; I was looking for battery-powered hard drives with CF readers. (I have a friend who has one, which is where I got the idea.) During the process, I saw that for only maybe $50 more you could get one with MP3 playing capabilities. So this has stuck around in the back of my mind as a way to kill two birds with one stone if I ever wanted a hard drive-based MP3 player.
So it's less a CF slot on an MP3 player as it is an MP3 player running on an portable hard drive.;-)
Zune will have to appeal to first time buyers and a lot of them will be asking the same question, "is it as good as an iPod?"
My MP3 CD player (RioVolt SP250... old school) just bit the dust. Not sure what I'm gonna get in replacement. But *my* question would be "is it cheaper than an iPod?"
(Actually I might get a player with a built in compactflash slot so I could move pictures from my camera to the hard drive.)
I've got Vista RC1 on a computer I don't use much, but I've used it enough to know what the start menu looks like, and I'm not reminded of any dock configuration I've seen at all...
The actual URL of (in this case) your blogger account, is what should logically get the Alexa rating, or Google ranking, or whatever.
Unless the toolbar goes off of what you type into the address bar rater than the urls that are actually loaded, would I would consider more likely. Do they say how they do it?
Though to be fair, your kid's not gonna be playing tag if you homeschool them either. There's *a lot* to be said for the interaction that going to school provides that you don't get even if you're being mentored with just 5 or 10 other kids.
Would it have made any difference to uptake if it wasn't ?
I dunno. Not directly anyway. Maybe if it affected the quality not being able to link in GPL code, or encouraging developers... but I think that only the very tinyiest minority of users would distinguish not only between Free/nonFree, but GPL compatible and not.
Anyway, I don't know enough to make any comment on the original post's main thrust, but saying that "if you're so stuck on having GPL compliance than stop using Firefox because it's not released ONLY under the GPL" is just silly.
True, but in most interactive apps those situations pass within a couple seconds. (Even if they don't, depending on the reason it's "blocking", you still might be able to make forward progress. For instance, if you're just doing computation, you can periodically check for new messages and dispatch them while putting your computation on hold. This won't work if you're actually blocked by the OS of course.) Also, most interactive apps are almost completely waiting for user input anyway. So if you don't multithread your program it will be frustrating to use because it will occasionally make you sit there, but it probably won't take *too* much longer to do what you're doing. But if you're doing some longer-running process (compilation, scientific computation, analysis, simulation, etc.), having a single thread instead of multiple threads could substantially increase your running time if you're on the right hardware.
So actually I'm gonna pull off of my original statement a little... if you're on a uniprocessor, the difference between your long-running process being multithreaded or not isn't gonna be too much. So multithreading it becomes a lot less important. So going to multiprocessor/core benefits parallel computationally-intensive programs a lot, but interactive applications little. (SMT would depend on the workload of the parallel app where it falls in the continuum.)
Most modern languages in wide use support user defined data types
But not necessarily well. For instance, there's only one language I know of that provides language support for "strong" typedefs: D. And I don't know anyone who has ever used D. (Incidentally, this would be high on my list for additions.)
What are you going to do then if you want to create your own string? Take an existing string and copy and paste? Include it twice with a #define string unsafe_string? There's not a very elegant solution. You can hack around a bit with C++ templates and whatnot to get a somewhat reasonable solution where you get a macro that essentially does a strong typedef, but even that's getting pretty ugly. Inheritance doesn't work. In C++, the fact that the destructor in basic_string isn't virtual will kill you. You could at best write a wrapper and implement all the methods from basic_string that just calls through to an internal object, but again, that's a lot of boiler-plate code. In Java, String I believe is a final class; you can't subclass it. Even if you could, you wouldn't have use of +. C# might actually provide a way to do it, as do many other languages. My point is just that for a large set of programs (C, C++, and Java) this is a non-trivial task.
Actually, now that I've gone though how difficult it is, there's actually a solution that's fairly promising, which is provided by CQual. You don't define a whole new type, but rather a type qualifier. The guys who came up with this tool used it to find illegal uses of user pointers in the Linux kernel back before __user was around everywhere. (Which, BTW, serves exactly the same purpose for Sparse. However, Sparse's engine is purposely less powerful than CQual's. If you have a series of statements like "char * __user a; char* b; b = a;" Sparse will spit out a warning. CQual will just figure out that 'b' needs to be __user too, and carry on with that constraint and only complain if there's a *b later. Linus wanted to make things explicit, so he has to mark every __user pointer with the qualifier.)
Did you read the link that was posted a couple comments up? Almost all of the original suggestions AREN'T putting the data type in the name. They're stuff like 'd' to mark that the variable is a delta -- x is an absolute position, dx is a difference between two points. If you see code like x1 + x2 then, that should raise your eyebrow. The linked article gives the example of using 'us' and 's' to prefix unsafe and safe strings respectively, where "unsafe" means "just came in over the network; protect against injection attacks". This is information that your IDE won't give you.
Though to be fair, there are a number of things Simonyi suggested that *aren't* like that -- he suggests 'w' for 'word', 'b' for 'byte', 'p' for 'pointer', and maybe a couple others. 'sz' (null-terminated string) is sorta in between; it doesn't provide much semantic information, but it does provide a little, because does 'char* x' point to a single character or a string?
Though even the ones that encode strict datatypes have a valuable heritage in BCPL, where there isn't typechecking.
All for sharing a 1s and 0s.
Okay, while I agree that this is overkill, this statement is, I think, silly. To put it that way denies that those "1s and 0s" might actually mean something when put together. I mean, I could say that stealing* is just taking a few atoms, or that killing someone is** just stopping some electrical impulses. Yes, these are in some sense hyperbole above and beyond yours, but your original statement is a pretty blatent example IMO too.
*I'm not trying to equate stealing and copyright infringement
**if you don't believe in a soul
It's true that you can write portable code in Java, just like you can write portable code in C/C++, but you can't get the program to actually DO anything usefull. And when you try you have to end up debugging it.
I have worked on shrinked wrap software that was intended to run on both Linux and Windows, and i can tell you that there are little bugs that crop up now and then due to inconsistent handling, rendering issues, font issues, and especially in the way the Look and feels work. Granted it's not as bad as most people think and mostly it's bugs in Java's default libraries, but there ARE issues, and you shouldn't just dismiss them with a wave of the hand just because you have not had an occasion to experience one
I just want to offer a counterpoint to this... I did Java development at IBM for a summer internship. We were doing server-side stuff (which would, granted, bypass the most difficult platform-specific stuff, the GUI), but we developed on Windows on just typical laptops. The final target for the program was s390 Linux. Change of OS, change of architecture, even change of character set from ASCII to EBCDIC. You'd be hard pressed to find a larger platform transition. We had to make one change to the program to get it to run as well on there as it did on our laptops. I was quite impressed.
Is there something wrong with the CDDL that's not wrong with the Mozilla license? From what I understand, the CDDL is similar to the Mozilla license but simpler. I invite every single one of those armchair critics to stop using Firefox if they're so adamant
In all fairness, FF is dual-licensed under the GPL.
I would argue that it's as practical as any other application, if not moreso.
I take it that your GUI programming class didn't teach you that it's very possible to make a program that uses a GUI that's only single threaded?
I dunno if that's the case in Java, but any "hello world" Win32 program is certainly single-threaded.
We've tried more measured aproaches, telling people it's insecure, etc.
It didn't work.
Perhaps all your software doesn't care if it loads onto the D: drive, and that key files, perm files, library support files, configs & inits, likewise can go into any drive you like.
Almost ALL of the software I have installed is on D. I haven't yet found anything that gives a choice of installation directory that doesn't work there. There's occasional software that puts stuff on C though -- most recently and notably because of the size of this installation portion, VS.Net 2005 Express Editions. This sort of stuff almost always goes under windows\ somewhere.
Though I haven't done it, I'm under the strong impression that you can if you like relocate Documents and Settings\ to another directory, which would move most of the config stuff that's stored in the filesystem. There are issues like registry configs which aren't stored in the filesystem at all though, so saying that you don't have the choice of directories is a red herring. You can make a good argument that there should be a revision to the registry for reasons along this line. (Like right now it's essentially impossible to backup an application's settings if it's stored in the registry unless you know where in the tree it's located and know that it's isolated to that spot. Even if you have this information, it's a pain.) The registry has, IMO, a number of benefits over flat config files, but in its current implementation there are severe drawbacks that go along with not being able to store your config information by zipping ~.
Maybe you don't really use Win much at all, and assume because Linux has a rational directory metaphor, every other Modern OS must have somethng at least pretty close.
Just FYI, without you specifying what makes a directory metaphor "rational", I'm guessing that you mean you can mount partitions and such whereever you want. Oh, guess what? Just because Windows doesn't do this for you by default, you can still create mount points and such for partitions. So if you want Documents and Settings on another partition, you can do that even without changing the path from C:\Documents and Settings. So if you've got a stubborn program that requires a specific path, you've got as much flexability in your partition layout as you would with a similar program under Linux.
NTFS also supports links (true links, as distinct from "shortcuts", which are a broken implementation), though doesn't yet expose a decent interface for using them. (I dunno about Vista.)
If you have people looking over your shoulder as you're editing files then you probably shouldn't be storing passwords, encrypted or not.
.gaim directory over the 'net to another computer, or something like that? You're likely to think "oh, I better not put my private keyring for PGP on the 'net", but less likely to think "oh, I better exclude my accounts.xml file when I send Gaim." What if you use something like roaming profiles or an NFS home directory to store .gaim but something more secure (maybe a smart card) for your keyring?
What if you're just exploring around on your hard drive or something like that?
I'll admit that the whole thing is not a likely scenario, but I think that not storing passwords does bring a very small benefit and essentially no cost. The "people will assume it's secure" argument goes out the window if you put a comment in accounts.xml that says "note -- even though the passwords are encrypted they aren't secure."
What makes you sure that the person looking over your shoulder won't be able to mentally decrypt the passwords they are seeing -- especially if it's done with a weak scheme such as ROT-13?
How many people do you know that can read ROT13? I don't think I know any. Even if you do, I bet it's *far* less than the number of people you know who can read English.
I know I was surprised to see the passwords stored in plaintext when I first saw it (oh, when I was randomly looking around). I figured why they did it really without reading the explanation, but we're talking the law of least astonishment here.
False. Gaim, which runs as you, has access to the keypair. This means anyone who has your password has access to the keypair.
Not necessarily. What if they're not running on your computer? What if you decide that you're going to shuffle your
Again, far-fetched (though probably a little less than the first case), but still a benefit in a tiny minority of cases, and with more-or-less no loss.
I personally really like having the away message "window" as part of the main window and the accompanying feature of if you're away when you sign off, when you sign back on you are still going to be away with the same message.
Then again, I leave myself away 99% of the time I'm online anyway even when I'm talking to someone, so YMMV.
On the other hand, if you're just exploring around looking at files, or maybe editing the XML file itself for some reason, they won't be just sitting there for someone looking over your shoulder to see.
The argument is only partially convincing. I still think passwords should be encrypted, for the same reason that in Firefox you can view your stored passwords but have to click a button and then a confirmation dialog to do so, in why in PasswordSafe you have to click a button to view the password (and can usually go through the process of signing in without ever seeing your password).
The part that IS convincing is that there is absolutely no point* in having any form of encryption that's actually secure. Something even as simple as ROT13 would I think be a big improvement.
* Well, little point; I could still argue that it could use a keypair stored somewhere more securely so that even if someone compromises the security of your home directory and gets your Gaim config file but doesn't get your keypair they still can't decrypt it, but if you're in that state you very well may have other things to worry about than someone can sign on to IM and pretend they're you.
I think its a combination of a few things. 1) Companies aren't listening to what consumers want.
Isn't this contest proof to the contrary?
In fact, a deeper observation: you think that this shows that there's a lack of ideas on the part of companies. Are you trying to say that they *shouldn't* be doing this and just being innovative on their own? But wouldn't not asking their customers be EXACTLY the thing that you say is causing the lack of innavation?
Where do you go to school?
I know as an undergrad I owned rights to the stuff I did. Even as a grad student in my current RA position, I have pretty tight ties to a private company, and I still own copyrights to my work. Said company has a license to use parts that relate to the research, but I have a license to their code to use in my research as well. The university even provided a neutral representative to negotiate with the company on behalf of our interests.
There has to be something you can do. Write a letter to the school paper complaining or something. Look through your school's policies too.
Shareware isn't freeware (anymore), despite what the name implies.
Any more? When was it any different?
That was the state of the term back in the days of 386s and Compuserv...
Here here! I'm sick and tired of seeing editions 7 through 15 of the same calculus book, where the only "improvement" are the renumbering of the problems in a section, and maybe a few new ones.
But that's not the only change!
They also print it on shinier paper.
I know this first point isn't answering you, but:
;-)
BTW, what mp3 players have a cf slot on them?
There's one call the XS-Drive. There were a few others that I ran across that I can't find immediately now.
I didn't realize there was an iPod way to do that though... thanks for the link.
When was the last time you *needed* a cf slot on an mp3 player?
I haven't needed one on an MP3 player. However, I *have* needed a portable hard drive, and in one's absense, have had to delete photos and turn down quality. This was actually the motivating factor for finding these; I was looking for battery-powered hard drives with CF readers. (I have a friend who has one, which is where I got the idea.) During the process, I saw that for only maybe $50 more you could get one with MP3 playing capabilities. So this has stuck around in the back of my mind as a way to kill two birds with one stone if I ever wanted a hard drive-based MP3 player.
So it's less a CF slot on an MP3 player as it is an MP3 player running on an portable hard drive.
Zune will have to appeal to first time buyers and a lot of them will be asking the same question, "is it as good as an iPod?"
My MP3 CD player (RioVolt SP250... old school) just bit the dust. Not sure what I'm gonna get in replacement. But *my* question would be "is it cheaper than an iPod?"
(Actually I might get a player with a built in compactflash slot so I could move pictures from my camera to the hard drive.)
The start menu looks like the dock? Really?
I've got Vista RC1 on a computer I don't use much, but I've used it enough to know what the start menu looks like, and I'm not reminded of any dock configuration I've seen at all...
Yeah, it took a couple seconds of staring at that before I knew what it was.
Can we get some serifs here?
The actual URL of (in this case) your blogger account, is what should logically get the Alexa rating, or Google ranking, or whatever.
Unless the toolbar goes off of what you type into the address bar rater than the urls that are actually loaded, would I would consider more likely. Do they say how they do it?
Though to be fair, your kid's not gonna be playing tag if you homeschool them either. There's *a lot* to be said for the interaction that going to school provides that you don't get even if you're being mentored with just 5 or 10 other kids.
Tag is a contact sport the way shaking somebody's hand is assault.
Hey, that gives me an idea...