Which story? Want to share/link? Not that I'm trying to get your inventions 27 years after you published them, but it's always fun to read fiction that has interesting history surrounding the Author and motivations for the creation of the work.
Primarily wifi, but with rfid location aware people tracking to a resolution of a couple feet (with variable accuracy) within a university building, based on existing wifi antennas. http://whereabouts.eecs.umich.edu/
Whereabouts is a project at the University of Michigan to build a location sensing network using widely available off-the-shelf components, such as RFID sensors and 802.11 stations.
Our goal is to build a network of sensors that will allow users and computers to detect and share their location information, and provide an interface to query and monitor that information. This network and query interface will serve as infrastructure for research in areas such as ubiquitous computing, privacy, large and rapidly changing databases, and whatever else we come up with.
Note that this project will in no way involve the tracking of anybody who does not wish to be tracked. Anybody who prefers not to participate can simply not wear a tag. We further plan on providing privacy options which will allow users who do decide to wear tags to control what information is disclosed.
Currently, we have created a building-wide location infrastructure in our CSE building, location middleware to allow location data to be handled in a uniform and privacy-sensitive way, and a tour guide application to demonstrate the system and acquaint new visitors with our building. We also have a variety of student projects which have built on the location system.
This work has resulted in several publications, and in some software available from our Web site. We are in the process of making more of our software available.
Many people are involved in and have participated in this project.
Quite a bit of other information is available on the Whereabouts project Wiki.
This work is funded in part by the National Science Foundation under grant EIA-0303587 as "An Infrastructure for Wide Area Pervasive Computing" and by a grant from Intel.
Having played with the system April of 06, all I can say is their website should be updated. They have this great mapping system that will pinpoint where in the building any registered people are standing (and let you do queries). This is variably accurate depending on how close you are to different wifi access points, so with small rooms like a photocopy room on the 4th floor, it will occasionally project your location reflected across the hallway. The system was totally the "people-mapping-radar" as shown in movies except for a robust privacy architecture. Each registrant device tied to a person can have settings based on location and more general rules. You have to explicitly add general groups of users, or specific people to your allow list before they can query the system for your location.
Anyways I figured it was an appropriate link in this topic.
Assuming, like many, that for libraries, disk space and bandwidth is close to no concern, just make sure to provide an auto-update feature to your application. (If the device is really constrained then you'll run into problems with that mentality) You get all the benefit of static linking's portability, and for the minor cost of maintaining an online site for distribution, you can update any time any of your libraries get important updates. You could probably even automate the update cycle with a couple scripts that check the respective library sites, pull down new versions as they update, and then run your build scripts, and then run your unit-tests, then, assuming it passes (you do use unit testing right?) automatically update your website with the latest build if version numbers of your external sources get bumped. Thus on a daily basis your stable release can be updated. Then as time moves on you tag new versions of your personal code as stable (merge them into the right svn branch, etc) and by the end of the day, your users are happy. Just make the autoupdate process seamless to your users, (easy, clear preference to autoupdate or not), an info box linked from a simple icon indicating that new updates have been downloaded and will be installed at launch, etc. To reduce security risks you can host digital signatures of the latest builds on a separate site (along with appropriate public key), and your app will only install if the signature matches. On mac you can take advantage of the codesigning of leopard.
Note, this whole autoupdate mechanism should be done on the computer side (assuming there is a computer involved). Every time the user syncs their device they can then get the application synced as well.
Most phones I call nowadays have very short lead-ins. Usually they now play the callee's message, and then after tell you about the beep, and from the first second of the call, I can press "1" to get directly to the beep. The one remaining notable exception to this is Nextel which for some reason always sends me on a trip of listening as they search for their subscriber, and finally connect me to their voicemail, however, according to the call log, the minutes elapsed don't start ticking until the call is actually connected to their voicemail.
Oh and then I can't believe how nice it is to have the iPhone where I have on-demand instant access to any voicemails, in any order, as long as I choose to store them. Having to wait for the call to connect to my voicemail, and then listen to the messages in order, and then have some expire from their storage after 16 days if I chose to "Archive" them... I mean wtf, archive a voicemail and it's gone in just over 2 weeks? That's not archiving.
I got it to work by changing my language away from English (US) -- to English (UK) because I was tired of not seeing changes on my settings page -- and after still not seeing changes, I changed it back, and when I did, IMAP became enabled.
That's convenient, I consider hundreds of thousands of dollars to be small for these mega corporations, and just about enough to cover the discomfort of refusing to refund my pre-installed XP.:D
For 80-90% of Applications, "Install" = drag and drop a folder into your main applications folder (and its not even neccessarily required, just convenient to have the app icon with all the others) for the remaining applications, they are either extremely large (maybe it needs to install system daemons or services for all applications to use), or are installing many more than just one application at a time (assuming it's just not poorly coded). These applications usually come bundled in a diskimage (.dmg) which is essentially a zip file that the OS can do some interesting things with. Inside that they either let you drag the application bundles to your application folder (the drag and drop mentioned above), or they have a small installer, that has the ability to verify services are up to required minimums in addition to copying several files at once. Adobe CS3 has an installer app for this reason, it ends up installing several applications at once, as well as verifying many other things, and providing common resources.
I just have a download partition where I keep everything I get off the web, to reinstall all my apps, assuming totally clean reinstall, it takes about 15 minutes, I run down the list clicking the dmg of each program I want, then I have one window on my applications folder, and cascade down through the windows for the contents of each dmg, drag my apps over, and close each window 1 by 1, finally unmount. 5 minutes for that, and the remaining 10 minutes for CS3:P
Please post back with your solution. I haven't messed with real firewall/router configuration beyond punching holes for ports and the like, but this RST thing has gotten on my nerves, and I don't have any viable alternatives for internet. I'd pay for FiOS if it were available where I live.
That's really weird, I've been using the print screen key on my keyboard for years, I don't remember if it worked on win 3.1 but win 98, win ME, win 2000, win XP, and win 2k3 server all had it work fine. (I assume vista too). I found a reference online:
To take still captures of video in Windows Media Player, turn off Video Acceleration (under Options > Performance). Otherwise, the area in which the video is playing will come out solid black in the capture. Could your graphics card be part of the problem?
if you link people you get modded informative! and you don't get curious people like me frustrated enough to post a logged in reply that adds little to the conversation at hand other than a plea for a link...
I understand what you're describing, and I don't actually know for certain there isn't a way that an application within the OS can directly write and rewrite to a specific cell. My understanding it wasn't possible with the solid state drives on the market, the firmware was embedded in the drive, and the OS had no way of addressing individual cells, it could only address specific memory locations that would be remapped to cells at the firmware's discretion. Partition Magic, with my experience with it, can't even directly access the harddrive in that manner, without booting into a custom mini-os. You can configure all your changes with the GUI tool, but for many of the big ones, it needs to unload the OS before shifting things around, and so does so on reboot.
Basically, from my understanding of the technology, as long as you have any free space on the drive, when you write, it will try to balance the writes so any individual cell is written to equally. The first solid state drives had much more trouble in addition to having a lower max write count per cell, in that they had many fewer cells, so there wasn't much room to balance. I remember in a discussion on slashdot about this in the past 4 months where someone who was an hd engineer linked the thread to a paper describing how the load levelers worked, and how if you had an 80gb drive with 20? 10? gb of free space, then the failure rate due to write exhaustion was far outside the useful lifespan of the drive. Basically continuous writes didn't cause any reduction in capacity due to exhausted cells for >6 years. I wish I had saved the link to the paper. But it was enough to convince me that my next machine is going to have a core OS + applications partition sitting on a raid 0+1 of flashdrives and then the rest of my media will be on external large size (and cheaper) sata drives. January looks to be when Seagate will release their entry into the market, and hopefully prices will be affordable.
The firmware load leveler doesn't let you do that... Because it's no longer/harder for a flash drive to write to any location than any other, even if you try to overwrite the *exact* same location many times, the firmware can bounce your write location around the disk, transparently. No worries on that front!
right click on a tab, and you should have a "Close Others" option. Granted that closes only 39 of the 40 tabs, but it's close to what you were looking for:D
Of course there needs to be a minimum of/ignore I'd probably start out as paranoid, and have it be whitelist only. But even think of how phone calls are simplified. No more *losing* your cell, if you get a phone call, and you haven't set it to "send all calls to voicemail" then you can instantly screen and answer calls. Because thought moves faster than speech, theoretically you could communicate faster without changing the quality of the conversation (though it would require an explicit mental vocalization of some kind to help you filter out random impulses). Getting a call will no longer require you to halt to pick up your phone. Your conversations will be protected from the casual eavesdroppers. With a simple chip you could theoretically maintain a public/private keypair that is only inspectable from the viewpoint of a chip inside your brain. From there you can authenticate any conversations you have, proving you and only you held them. All your communications ever could be encrypted. (Provided of course the chip in your brain can [enc/dec]rypt many, possibly large, streams of data)
Borg except for the fact I retain my individuality? Yes. Most definitely. Intentional direct thought transfer via implants will usher in a new age of human communication. If you can (on demand) instantly share your thoughts with those close to you, even if they're physically elsewhere, how much less miscommunication might there be? If you can use your augmented memory system to never forget another thing you need to do, because you have in brain reminders, electrically backed up and refreshed until you explicitly dismiss them. Athletes with appropriately placed accelerometers will push sports into the realm of high art. Knowing precisely where you and all your limbs are in relation to your environment, could lead to fewer deaths and stupid mistakes. Sight-alternatives for the blind. Truly immersive virtual worlds mixed in with the real world. Working from home would mean nothing, if your home office could suddenly perceptively lose a wall and instantly have you staring across your desk to a coworker's.
Assimilate me!
(As soon as the implants can either be easily replaced, or their software upgraded) If the tech isn't available by the time I reach 50, then I'll probably even volunteer to be in the first trial runs, balancing the odds of a failure, against my odds for future survival, along with the benefit of getting these implants.
I've met too many stupid people in recent times, so I think my sarcasm detector broke. Either you're really funny (and sarcasm is nearly too subtle for me) or somebody should make disparaging comments about your iq.
If you can guarantee internet access in most circumstances: Provide value added web only services tied to a user account. These services could be embedded in your application, but be subscription or a 1 time fee. The base application you could give out for free, but depending on what services you provide on the user's online account they'll want to pay you the fee to have an account. No license keys! But you do then have to provide some web-based services, and if your site goes down, all your paid users lose their paid functionality.
If you can't guarantee internet access, or can't identify services that would work well attached to a web account, you could go the route of the "phone home" license key. tie the serial number to a simple e-mail address db, and track the number of computers on each key. The app doesn't immediately degrade if it can't get online, but if it does get online, it adds to the count using that key, beyond some arbitrary number, the system notifies you, and you can reissue the original user a key via their stored e-mail address, and then you can blacklist the old key (degrading any future machines and any old machines as they ping home). In this case truly determined people can block internet access from your program, or they can keep the computer offline or they can go through the effort of patching out the license key call and they'll still have a free copy of your software.
Really it's a question of how much effort it takes to get around things vs how much annoyance things become for the real users if something small goes wrong.
Which story? Want to share/link? Not that I'm trying to get your inventions 27 years after you published them, but it's always fun to read fiction that has interesting history surrounding the Author and motivations for the creation of the work.
http://whereabouts.eecs.umich.edu/
Having played with the system April of 06, all I can say is their website should be updated. They have this great mapping system that will pinpoint where in the building any registered people are standing (and let you do queries). This is variably accurate depending on how close you are to different wifi access points, so with small rooms like a photocopy room on the 4th floor, it will occasionally project your location reflected across the hallway. The system was totally the "people-mapping-radar" as shown in movies except for a robust privacy architecture. Each registrant device tied to a person can have settings based on location and more general rules. You have to explicitly add general groups of users, or specific people to your allow list before they can query the system for your location.
Anyways I figured it was an appropriate link in this topic.
Assuming, like many, that for libraries, disk space and bandwidth is close to no concern, just make sure to provide an auto-update feature to your application. (If the device is really constrained then you'll run into problems with that mentality) You get all the benefit of static linking's portability, and for the minor cost of maintaining an online site for distribution, you can update any time any of your libraries get important updates. You could probably even automate the update cycle with a couple scripts that check the respective library sites, pull down new versions as they update, and then run your build scripts, and then run your unit-tests, then, assuming it passes (you do use unit testing right?) automatically update your website with the latest build if version numbers of your external sources get bumped. Thus on a daily basis your stable release can be updated. Then as time moves on you tag new versions of your personal code as stable (merge them into the right svn branch, etc) and by the end of the day, your users are happy. Just make the autoupdate process seamless to your users, (easy, clear preference to autoupdate or not), an info box linked from a simple icon indicating that new updates have been downloaded and will be installed at launch, etc. To reduce security risks you can host digital signatures of the latest builds on a separate site (along with appropriate public key), and your app will only install if the signature matches. On mac you can take advantage of the codesigning of leopard.
Note, this whole autoupdate mechanism should be done on the computer side (assuming there is a computer involved). Every time the user syncs their device they can then get the application synced as well.
What do you use to convert the ebooks to html?
+5 (Informative, Interesting, and Layperson Approachable)
Aperture has it's own backup system: Vaults
You can set it to use that.
Most phones I call nowadays have very short lead-ins. Usually they now play the callee's message, and then after tell you about the beep, and from the first second of the call, I can press "1" to get directly to the beep. The one remaining notable exception to this is Nextel which for some reason always sends me on a trip of listening as they search for their subscriber, and finally connect me to their voicemail, however, according to the call log, the minutes elapsed don't start ticking until the call is actually connected to their voicemail.
Oh and then I can't believe how nice it is to have the iPhone where I have on-demand instant access to any voicemails, in any order, as long as I choose to store them. Having to wait for the call to connect to my voicemail, and then listen to the messages in order, and then have some expire from their storage after 16 days if I chose to "Archive" them... I mean wtf, archive a voicemail and it's gone in just over 2 weeks? That's not archiving.
I got it to work by changing my language away from English (US) -- to English (UK) because I was tired of not seeing changes on my settings page -- and after still not seeing changes, I changed it back, and when I did, IMAP became enabled.
Do they have a page for "\";DROP TABLE `pages`;" ?
(or little bobby tables? xkcd)
That's convenient, I consider hundreds of thousands of dollars to be small for these mega corporations, and just about enough to cover the discomfort of refusing to refund my pre-installed XP. :D
For 80-90% of Applications, "Install" = drag and drop a folder into your main applications folder (and its not even neccessarily required, just convenient to have the app icon with all the others) for the remaining applications, they are either extremely large (maybe it needs to install system daemons or services for all applications to use), or are installing many more than just one application at a time (assuming it's just not poorly coded). These applications usually come bundled in a diskimage (.dmg) which is essentially a zip file that the OS can do some interesting things with. Inside that they either let you drag the application bundles to your application folder (the drag and drop mentioned above), or they have a small installer, that has the ability to verify services are up to required minimums in addition to copying several files at once. Adobe CS3 has an installer app for this reason, it ends up installing several applications at once, as well as verifying many other things, and providing common resources.
:P
I just have a download partition where I keep everything I get off the web, to reinstall all my apps, assuming totally clean reinstall, it takes about 15 minutes, I run down the list clicking the dmg of each program I want, then I have one window on my applications folder, and cascade down through the windows for the contents of each dmg, drag my apps over, and close each window 1 by 1, finally unmount. 5 minutes for that, and the remaining 10 minutes for CS3
... Imagine what you could do with a beowulf cluster of these!
Please post back with your solution. I haven't messed with real firewall/router configuration beyond punching holes for ports and the like, but this RST thing has gotten on my nerves, and I don't have any viable alternatives for internet. I'd pay for FiOS if it were available where I live.
if you link people you get modded informative! and you don't get curious people like me frustrated enough to post a logged in reply that adds little to the conversation at hand other than a plea for a link...
I understand what you're describing, and I don't actually know for certain there isn't a way that an application within the OS can directly write and rewrite to a specific cell. My understanding it wasn't possible with the solid state drives on the market, the firmware was embedded in the drive, and the OS had no way of addressing individual cells, it could only address specific memory locations that would be remapped to cells at the firmware's discretion. Partition Magic, with my experience with it, can't even directly access the harddrive in that manner, without booting into a custom mini-os. You can configure all your changes with the GUI tool, but for many of the big ones, it needs to unload the OS before shifting things around, and so does so on reboot.
Basically, from my understanding of the technology, as long as you have any free space on the drive, when you write, it will try to balance the writes so any individual cell is written to equally. The first solid state drives had much more trouble in addition to having a lower max write count per cell, in that they had many fewer cells, so there wasn't much room to balance. I remember in a discussion on slashdot about this in the past 4 months where someone who was an hd engineer linked the thread to a paper describing how the load levelers worked, and how if you had an 80gb drive with 20? 10? gb of free space, then the failure rate due to write exhaustion was far outside the useful lifespan of the drive. Basically continuous writes didn't cause any reduction in capacity due to exhausted cells for >6 years. I wish I had saved the link to the paper. But it was enough to convince me that my next machine is going to have a core OS + applications partition sitting on a raid 0+1 of flashdrives and then the rest of my media will be on external large size (and cheaper) sata drives. January looks to be when Seagate will release their entry into the market, and hopefully prices will be affordable.
The firmware load leveler doesn't let you do that... Because it's no longer/harder for a flash drive to write to any location than any other, even if you try to overwrite the *exact* same location many times, the firmware can bounce your write location around the disk, transparently. No worries on that front!
right click on a tab, and you should have a "Close Others" option. Granted that closes only 39 of the 40 tabs, but it's close to what you were looking for :D
Of course there needs to be a minimum of /ignore I'd probably start out as paranoid, and have it be whitelist only. But even think of how phone calls are simplified. No more *losing* your cell, if you get a phone call, and you haven't set it to "send all calls to voicemail" then you can instantly screen and answer calls. Because thought moves faster than speech, theoretically you could communicate faster without changing the quality of the conversation (though it would require an explicit mental vocalization of some kind to help you filter out random impulses). Getting a call will no longer require you to halt to pick up your phone. Your conversations will be protected from the casual eavesdroppers. With a simple chip you could theoretically maintain a public/private keypair that is only inspectable from the viewpoint of a chip inside your brain. From there you can authenticate any conversations you have, proving you and only you held them. All your communications ever could be encrypted. (Provided of course the chip in your brain can [enc/dec]rypt many, possibly large, streams of data)
Borg except for the fact I retain my individuality? Yes. Most definitely. Intentional direct thought transfer via implants will usher in a new age of human communication. If you can (on demand) instantly share your thoughts with those close to you, even if they're physically elsewhere, how much less miscommunication might there be? If you can use your augmented memory system to never forget another thing you need to do, because you have in brain reminders, electrically backed up and refreshed until you explicitly dismiss them. Athletes with appropriately placed accelerometers will push sports into the realm of high art. Knowing precisely where you and all your limbs are in relation to your environment, could lead to fewer deaths and stupid mistakes. Sight-alternatives for the blind. Truly immersive virtual worlds mixed in with the real world. Working from home would mean nothing, if your home office could suddenly perceptively lose a wall and instantly have you staring across your desk to a coworker's.
Assimilate me!
(As soon as the implants can either be easily replaced, or their software upgraded) If the tech isn't available by the time I reach 50, then I'll probably even volunteer to be in the first trial runs, balancing the odds of a failure, against my odds for future survival, along with the benefit of getting these implants.
I've met too many stupid people in recent times, so I think my sarcasm detector broke. Either you're really funny (and sarcasm is nearly too subtle for me) or somebody should make disparaging comments about your iq.
Either way, good job.
Do you still have a copy of that disk, or an iso for it?
If you can guarantee internet access in most circumstances:
Provide value added web only services tied to a user account. These services could be embedded in your application, but be subscription or a 1 time fee. The base application you could give out for free, but depending on what services you provide on the user's online account they'll want to pay you the fee to have an account. No license keys! But you do then have to provide some web-based services, and if your site goes down, all your paid users lose their paid functionality.
If you can't guarantee internet access, or can't identify services that would work well attached to a web account, you could go the route of the "phone home" license key. tie the serial number to a simple e-mail address db, and track the number of computers on each key. The app doesn't immediately degrade if it can't get online, but if it does get online, it adds to the count using that key, beyond some arbitrary number, the system notifies you, and you can reissue the original user a key via their stored e-mail address, and then you can blacklist the old key (degrading any future machines and any old machines as they ping home). In this case truly determined people can block internet access from your program, or they can keep the computer offline or they can go through the effort of patching out the license key call and they'll still have a free copy of your software.
Really it's a question of how much effort it takes to get around things vs how much annoyance things become for the real users if something small goes wrong.
why is that? Because they're acknowledging they'd rather get people with parking tickets?