An alternative strategy to limiting data is to obfuscate it at the source. If a small group of people use from a set of cards and each person pick one at random whenever they need to use it, the cards become little more than dumb tokens that cut the cost of a single trip and just happen to store trip data in the process. A single person's travel habits aren't decipherable unless every card in the set is scraped for data and the results are combined.
Of course, this is effective only if all the cards stay unregistered, and if there isn't a significant monthly (or other periodic) fee per card, unless I'm looking at this situation rather naively. (I live in a rural area without access to mass transportation systems, so I'm not speaking from any kind of personal experience.)
I have been fluent in Scheme for some time. In fact, I used Project Euler problems and Racket (formerly called PLT) to teach myself Scheme. I enjoyed it immensely, and it reminded me of why I decided to study programming in the first place.
Unfortunately, I spent so long writing Scheme for my own amusement that I neglected my skill with C. I felt like a complete idiot the next time I tried to compose something in C, and I try to be more mindful of such things now.
My relationship with Hacker News is also much like this.
I have made exactly three comments before this one, and they were almost a year ago. If not for those, I might not have even created an account here. I just have the type of personality that enjoys taking in knowledge more than discussing it.
My account at Less Wrong is similarly neglected. I often wonder how many others (on both sites) do what I do.
There is a very big difference to those of us who don't have persistent Internet connections. Because of a rather unique social situation, I spend a lot of my time house-sitting at the home of a family member who died recently. I have DSL at my own home, but that place has nothing except electricity, water, and gas.
The result is that I tend to grab a large number of pages from my home connection on my laptop, keep them as open tabs, and read through them when I am away from home. An RSS reader like Brief (a Firefox extension) is also useful for this method of short-term information storage.
My conclusion: an open tab (or a page successfully saved to disk) is something you can use whenever you want, but a bookmark is something you can only reach when you are connected to the Internet.
Upvoted in agreement. Without Project Euler, I probably wouldn't have been able to wrap my head around Scheme, and subsequently, I wouldn't have learned how to program without mutable state. The early problems are general enough that you don't usually need some specific abstraction or language feature to solve them, and the later problems are hard enough that you can't let the language itself take too large a share of your thoughts.
How does that work? Scheme vectors are all about mutable state and a lot of the list functions are, too. Did you get a better Scheme collections library than the rest of us?
As you have said, it is practically impossible to use vectors without mutating their contents with (vector-set! ...), but purely list-based Scheme is actually quite easy to write without resorting to some variant of (set! ...). When practicing on the early problems on Project Euler, vectors and mutation were language features I simply didn't need for some time, so I didn't learn them until later. The building and traversal of lists through recursion got me at least 80% of most problems I solved. Maybe the standard Scheme libraries just do a good job of making mutation operations look like something one needs to avoid whenever possible.
Of course, this is effective only if all the cards stay unregistered, and if there isn't a significant monthly (or other periodic) fee per card, unless I'm looking at this situation rather naively. (I live in a rural area without access to mass transportation systems, so I'm not speaking from any kind of personal experience.)