With Paypal, I do use my credit card, but the merchant never sees it. That's one of the nice features; you only have to worry about paypal's trustworthiness (won't argue that here), not that of every 'net merchant you meet.
If I pay you $50 out of my paypal account, paypal draws it out of my CC and you get it from paypal. You don't need a CC merchant account and you don't ever see my CC information.
*ding ding ding*... ever noticed how much software in Windows is already BSD based?
Guess not;-)
PS, if they base it on BSD (which many parts have been already) and use open software with non-viral licensing (BIND for their DNS software, zlib, etc.) you won't necessarily know about it.
If you can't get to a website for one reason or another, don't forget to check web.archive.org.
http://web.archive.org/web/20030118042411/http:/ /m embers.lycos.co.uk/hostintheshell/ is the most recent link to the above site, and the.tar.bz2 source download link seems to work as well. Make sure to replace that date with a '*' to see other possible copies from other dates.
I have to agree here. I've been using computers since the early 80's and the "kilo" or "mega" notation was well understood then to be an approximation, at least in my circles, to their decimal prefix equivalents.
"A kilobyte in a computer is 1024 bytes only because in base-2 it is simpler to count in 1024's than in 1000's"
That said, and everyone learned that back when people had to learn about computers (instead of growing up with them), this approximation is *still* just an approximation.
Just because you grew up thinking a kilo meant 1024 because you're in a non-metric country doesn't mean a kilo means 1024. It means your predecesors didn't bother using a different name for a different number (back when "the world will never need more than maybe 10 computers").
Mebi is available now... use it; point out to the rest of the world that MB is inaccurate and should mean 1000*1000 bytes, that MiB in fact *means* 1024*1024 bytes and this will solve our confusions within a generation.
You can always work with the opposite assumptions; everything is a disk file and its up to the OS to do the caching for you.
In either case, you're throwing out intelligence; with an RDBMS you've got the possibility of making intelligent decisions about what gets cached in memory and what doesn't. You get to decide what needs indexing, and what doesn't. You get to make real decisions about your data storage.
Psst, and SQL/OO programming isn't that hard with high-level languages... and no, I'm not using Pickle;-)
class Customer:
def _sql_load(self, custid):
row = self.dbconn.do("select... from Customers LEFT JOIN... WHERE CustID = %d" % custid)
self._fname = row["fname"]
self._lname = row["lname"]
self._title = row["title"]
... and so on, and so forth. Its not that hard to serialize *just* your data and create new objects based on it. If you want lots of fun in Python, build yourself a meta class that builds classes from your database data.
Sure, software patents encourage innovation because we hacker types end up writing alternative implementations of patented algorithms, but that's not the software patent camp's point; they think patents encourage innovation on the part of patent holders (duh).
If you're in Canada, call up Tyenet (yes, I used to work there and the owner's a friend, but I don't anymore and won't make any money off this... well, if you say that I referred you, I'll get a free month of access, so that's cool I guess;-))... they offer unlimited DSL service anywhere* in Canada and dial-up too if you care. Prices are reasonable ($29.95/mo for 1.5Mb service) and *no caps*.
The problem is nomenclature. If MB is to mean 1024*1024 bytes and GB is to mean 1024*1024*1024 bytes, then don't call your drive a 40GB drive if its really 40000MB or worse, 40000000B. That's 38GB, for reference. Is it really that hard to say 38GB instead of "40GB, GB = 1000 * 1000 bytes"?
I remember buying 1.2GB drives and 4.3GB drives. Is it so marketing that one has to use even drive size numbers? I can understand that platters hold specific amounts of data based on areal density (some don't, but oh well), but please call a spade a spade.
BTW, I use reiserfs on my drives so I lose a percentage to overhead for storage like most file systems but also to the logging. That space is however reported in Linux when I request disk usage.
A freshly formatted partition currently says it has 30MB in use even though its empty; its not like they're claiming my drive has that 30MB available when its not.
I agree with you in principle, but in practice, I disagree.
That is to say, it is easier to write more secure software in languages like JAVA, Python and the like if and only if you measure the security of a product by the number of security issues it has.
If however, you measure security by the weakest link, that is to say, any exploit in the program makes it insecure, then this is no longer true.
It is still (perhaps) true that it is easier for a programmer to reach this Nirvana of secure software by using a language that allows him or her to ignore previous caveats in languages like C and its derivatives, but insecure logic will still be insecure.
For example, PERL has for a long time allowed programs to have "tainting". This is a feature I'd love in Python; to say that a variable was user-specified or brought in from an external shell, etc. so that I as the programmer am made aware that I need to *not* trust its contents.
In Python, for example, I make use of casts everywhere; I get told they look ugly, but they keep input values from being out of bounds or incorrectly interpreted. For example:
... I set the value of self._value2 myself, so an explicit cast isn't necessary to my way of thinking in MultiplyValues, but I accept "value" from the outside and don't want return "Hello Mr. Programmer" self._value2 times.
Without programming with security in mind, you can and will have that one security flaw that makes your program insecure.
I felt I should fill Peter in w.r.t. IPSEC and the amazing FreeS/WAN implementation thereof. I sent him the following by PGP-signed E-mail (cut-down for posting):
I'm sure you've received a million replies to your message now that it has been Slashdotted, but for the record, please use IPSec for your VPN needs.
[...]
Sure, there are OSS *nux programs that attempt to implement the protocol, mostly to connect to MS servers that only support it, but the *real* player in the VPN world is the IPSEC protocol.
[...] IPSEC inter-operable and standardized but it has an *amazing* and well-maintained Linux implementation. FreeS/WAN, from http://www.freeswan.org, is very well documented, well-maintained, and written by people with a wonderful level of attention to security.
They may not be perfect, but I've been watching and using the product for years now with very good success. [...] the project is now moving forward with 2.2.x, 2.4.x and 2.6.x Linux kernel compatible versions.
If we're talking about file sharing, they don't have to make the CDs at all, remember?
You pay $10+ for the CD and you pay $6 for the downloaded version of the CD... if I follow the logic here.
Lets try it this way: The music industry can charge whatever they think the market can bear for the CDs, but allow people to share music legally for a small fee please.
I know the article is about C#, but every time I read something about C# I think to myself "I can do that in Python". Python is cross-platform, interpreted, object-oriented, fast, easy to extend with C or C++ and even more exciting for some people, usable transparently with Java as Jython.
I've found that almost all the programs I've written I could've written smaller and better and more obvious (and therefore easier to debug and maintain) with Python. None of those that I have rewritten show any noticeable performance penalty for having done so either.
Just wondering if you've dealt with it at all yet.
I downloaded TV episodes for shows I'd missed until I realized that someone encoding the shows had an HDTV receiver and I could download the shows at a much higher quality than my TV would normally allow, and then watch them on my computer screen.
One of the comments the person running the BitTorrent tracker in question makes is that the DVDs of said show are now at least a full season behind the actual show and people wanting to catch up on a show they missed in the first season(s) still can't buy them.
I intend to purchase the DVDs of said (unnamed) show once they're available as I'm a huge fan, of course, and I've offered to loan my VCDs to friends to get them interested in watching the show this season as well.
There is a huge difference between a bug and a security issue. In some cases they are the same thing, but in many they are not.
You could have a very buggy program that crashes all the time (think Windows) but is still secure (Windows analogy loses traction).
A security problem may not be a 'bug' at all depending on your definition, like allowing key sizes down to 2 bits or letting users specify blank passwords, etc. These are policy problems that programmers need to take care of.
Targetted complaining is what has made america's special interest groups thrive. They make money because they're good at complaining to the right people about the right things.
As a community of semi-intelligent geeks, lets put some more serious effort into sharing our knowledge of 'reality' in our geek worlds with those with the power to change things.
Unfortunately, some of this "obviousness" is lost on the media lately. They've completely lost sight of the fact that the FBI, CIA, etc. have been well known (internationally as well as locally) for their less-than-ethical ways of doing "business".
As embarassing as it was to be seen in that movie at some points (there are moments that are almost disgustingly... well, go see it, its worth it), its social commentary on the American legislative process was well thought-out and cruel, to say the least.
To summarize, the movie presents it as being nearly impossible to get a bill passed without a lot of posturing and politcking and it has little to do with being a good or bad bill.
You seem to be either missing the point completely or not communicating your thoughts very well.
That is to say, PHP is a fine tool for the job; it is server-side, like most scripting technologies, and takes inputs from the phone and then returns the answers.
If, like a previous user, you want to be able to run this without browsing a web page (which is completely different from the intent of this applet) then you'll want JAVA hosted on your phone. JavaScript probably won't help you since it isn't supported and JAVA isn't even supported on many phones yet.
At least with the PHP version, the calculations are done no matter what level of HTML/Java/JavaScript support you have on your phone. Your only dependance is on having a link at all.
Sounds like you're trying to undermine security everywhere.
The only place I've ever asked for a password from a user is their screensaver or bios password on a laptop that wasn't assigned by myself. If they've decided to put personal passwords on company materials without using corporate security systems that are in place for such things, they will be told to change it.
If its a network or login password of some form, I don't need it; I've got root.
Its hard to install, doesn't go where you expect, doesn't uninstall properly and if they go those three steps right, doesn't work properly once installed.
... might not want to do that. Some packaged meat companies have sued people for refering to bulk E-mails by the name of their product ;-).
Just because it feels good doesn't mean its not libellous.
With Paypal, I do use my credit card, but the merchant never sees it. That's one of the nice features; you only have to worry about paypal's trustworthiness (won't argue that here), not that of every 'net merchant you meet.
If I pay you $50 out of my paypal account, paypal draws it out of my CC and you get it from paypal. You don't need a CC merchant account and you don't ever see my CC information.
*ding ding ding* ... ever noticed how much software in Windows is already BSD based?
;-)
Guess not
PS, if they base it on BSD (which many parts have been already) and use open software with non-viral licensing (BIND for their DNS software, zlib, etc.) you won't necessarily know about it.
If you can't get to a website for one reason or another, don't forget to check web.archive.org.
/ /m embers.lycos.co.uk/hostintheshell/ is the most recent link to the above site, and the .tar.bz2 source download link seems to work as well. Make sure to replace that date with a '*' to see other possible copies from other dates.
http://web.archive.org/web/20030118042411/http:
Excuse me, but haven't the casinos in Vegas, etc. been doing this for ages?
They didn't even bother admitting to it.
To follow through on that ...
"If you can't drive, don't drink."
I have to agree here. I've been using computers since the early 80's and the "kilo" or "mega" notation was well understood then to be an approximation, at least in my circles, to their decimal prefix equivalents.
... use it; point out to the rest of the world that MB is inaccurate and should mean 1000*1000 bytes, that MiB in fact *means* 1024*1024 bytes and this will solve our confusions within a generation.
"A kilobyte in a computer is 1024 bytes only because in base-2 it is simpler to count in 1024's than in 1000's"
That said, and everyone learned that back when people had to learn about computers (instead of growing up with them), this approximation is *still* just an approximation.
Just because you grew up thinking a kilo meant 1024 because you're in a non-metric country doesn't mean a kilo means 1024. It means your predecesors didn't bother using a different name for a different number (back when "the world will never need more than maybe 10 computers").
Mebi is available now
In either case, you're throwing out intelligence; with an RDBMS you've got the possibility of making intelligent decisions about what gets cached in memory and what doesn't. You get to decide what needs indexing, and what doesn't. You get to make real decisions about your data storage.
Psst, and SQL/OO programming isn't that hard with high-level languages
class Customer:
def _sql_load(self, custid):
row = self.dbconn.do("select
self._fname = row["fname"]
self._lname = row["lname"]
self._title = row["title"]
... and so on, and so forth. Its not that hard to serialize *just* your data and create new objects based on it. If you want lots of fun in Python, build yourself a meta class that builds classes from your database data.
Are you trolling?
No, seriously.
Sure, software patents encourage innovation because we hacker types end up writing alternative implementations of patented algorithms, but that's not the software patent camp's point; they think patents encourage innovation on the part of patent holders (duh).
We free software types are commie pigs, remember?
Canadian here ... limited powers? You mean like our knee-jerk "lets be like the americans" post-911 laws that have been almost entirely repealed?
;-)
Don't know what you're talking about
If you're in Canada, call up Tyenet (yes, I used to work there and the owner's a friend, but I don't anymore and won't make any money off this ... well, if you say that I referred you, I'll get a free month of access, so that's cool I guess ;-)) ... they offer unlimited DSL service anywhere* in Canada and dial-up too if you care. Prices are reasonable ($29.95/mo for 1.5Mb service) and *no caps*.
... )
http://www.tyenet.com or 705.677.6843.
(Sorry Steve for all the calls
The problem is nomenclature. If MB is to mean 1024*1024 bytes and GB is to mean 1024*1024*1024 bytes, then don't call your drive a 40GB drive if its really 40000MB or worse, 40000000B. That's 38GB, for reference. Is it really that hard to say 38GB instead of "40GB, GB = 1000 * 1000 bytes"?
I remember buying 1.2GB drives and 4.3GB drives. Is it so marketing that one has to use even drive size numbers? I can understand that platters hold specific amounts of data based on areal density (some don't, but oh well), but please call a spade a spade.
BTW, I use reiserfs on my drives so I lose a percentage to overhead for storage like most file systems but also to the logging. That space is however reported in Linux when I request disk usage.
A freshly formatted partition currently says it has 30MB in use even though its empty; its not like they're claiming my drive has that 30MB available when its not.
That is to say, it is easier to write more secure software in languages like JAVA, Python and the like if and only if you measure the security of a product by the number of security issues it has.
If however, you measure security by the weakest link, that is to say, any exploit in the program makes it insecure, then this is no longer true.
It is still (perhaps) true that it is easier for a programmer to reach this Nirvana of secure software by using a language that allows him or her to ignore previous caveats in languages like C and its derivatives, but insecure logic will still be insecure.
For example, PERL has for a long time allowed programs to have "tainting". This is a feature I'd love in Python; to say that a variable was user-specified or brought in from an external shell, etc. so that I as the programmer am made aware that I need to *not* trust its contents.
In Python, for example, I make use of casts everywhere; I get told they look ugly, but they keep input values from being out of bounds or incorrectly interpreted. For example:
class SomeClass:
def __init__(self):
self._value2 = 4
def MultiplyValues(self, value):
return int(value) * self._value2
def SetValue2(self, value):
self._value2 = int(value)
... I set the value of self._value2 myself, so an explicit cast isn't necessary to my way of thinking in MultiplyValues, but I accept "value" from the outside and don't want return "Hello Mr. Programmer" self._value2 times.
Without programming with security in mind, you can and will have that one security flaw that makes your program insecure.
I felt I should fill Peter in w.r.t. IPSEC and the amazing FreeS/WAN implementation thereof. I sent him the following by PGP-signed E-mail (cut-down for posting):
I'm sure you've received a million replies to your message now that it has been Slashdotted, but for the record, please use IPSec for your VPN needs.
[...]
Sure, there are OSS *nux programs that attempt to implement the protocol, mostly to connect to MS servers that only support it, but the *real* player in the VPN world is the IPSEC protocol.
[...] IPSEC inter-operable and standardized but it has an *amazing* and well-maintained Linux implementation. FreeS/WAN, from http://www.freeswan.org, is very well documented, well-maintained, and written by people with a wonderful level of attention to security.
They may not be perfect, but I've been watching and using the product for years now with very good success. [...] the project is now moving forward with 2.2.x, 2.4.x and 2.6.x Linux kernel compatible versions.
If we're talking about file sharing, they don't have to make the CDs at all, remember?
... if I follow the logic here.
You pay $10+ for the CD and you pay $6 for the downloaded version of the CD
Lets try it this way: The music industry can charge whatever they think the market can bear for the CDs, but allow people to share music legally for a small fee please.
I know the article is about C#, but every time I read something about C# I think to myself "I can do that in Python". Python is cross-platform, interpreted, object-oriented, fast, easy to extend with C or C++ and even more exciting for some people, usable transparently with Java as Jython.
I've found that almost all the programs I've written I could've written smaller and better and more obvious (and therefore easier to debug and maintain) with Python. None of those that I have rewritten show any noticeable performance penalty for having done so either.
Just wondering if you've dealt with it at all yet.
I downloaded TV episodes for shows I'd missed until I realized that someone encoding the shows had an HDTV receiver and I could download the shows at a much higher quality than my TV would normally allow, and then watch them on my computer screen.
One of the comments the person running the BitTorrent tracker in question makes is that the DVDs of said show are now at least a full season behind the actual show and people wanting to catch up on a show they missed in the first season(s) still can't buy them.
I intend to purchase the DVDs of said (unnamed) show once they're available as I'm a huge fan, of course, and I've offered to loan my VCDs to friends to get them interested in watching the show this season as well.
There is a huge difference between a bug and a security issue. In some cases they are the same thing, but in many they are not.
You could have a very buggy program that crashes all the time (think Windows) but is still secure (Windows analogy loses traction).
A security problem may not be a 'bug' at all depending on your definition, like allowing key sizes down to 2 bits or letting users specify blank passwords, etc. These are policy problems that programmers need to take care of.
My mother calls with problems ... I want to install Linux on her computer and not give her the root password because I'm evil though.
The only problem is that she has a digital camera that isn't supported by gphoto2 yet. Once it is, I'm making her switch.
Targetted complaining is what has made america's special interest groups thrive. They make money because they're good at complaining to the right people about the right things.
;-)
As a community of semi-intelligent geeks, lets put some more serious effort into sharing our knowledge of 'reality' in our geek worlds with those with the power to change things.
This goes for the RIAA story too
Unfortunately, some of this "obviousness" is lost on the media lately. They've completely lost sight of the fact that the FBI, CIA, etc. have been well known (internationally as well as locally) for their less-than-ethical ways of doing "business".
It needs to be restated.
I hate to admit this, but last night I went and saw Legally Blonde 2, Red White and Blonde with my wife (it was her pick, can you tell?)
... well, go see it, its worth it), its social commentary on the American legislative process was well thought-out and cruel, to say the least.
As embarassing as it was to be seen in that movie at some points (there are moments that are almost disgustingly
To summarize, the movie presents it as being nearly impossible to get a bill passed without a lot of posturing and politcking and it has little to do with being a good or bad bill.
What on earth are you trying to say?
You seem to be either missing the point completely or not communicating your thoughts very well.
That is to say, PHP is a fine tool for the job; it is server-side, like most scripting technologies, and takes inputs from the phone and then returns the answers.
If, like a previous user, you want to be able to run this without browsing a web page (which is completely different from the intent of this applet) then you'll want JAVA hosted on your phone. JavaScript probably won't help you since it isn't supported and JAVA isn't even supported on many phones yet.
At least with the PHP version, the calculations are done no matter what level of HTML/Java/JavaScript support you have on your phone. Your only dependance is on having a link at all.
Sounds like you're trying to undermine security everywhere.
The only place I've ever asked for a password from a user is their screensaver or bios password on a laptop that wasn't assigned by myself. If they've decided to put personal passwords on company materials without using corporate security systems that are in place for such things, they will be told to change it.
If its a network or login password of some form, I don't need it; I've got root.
Most commercial software is also crap.
Its hard to install, doesn't go where you expect, doesn't uninstall properly and if they go those three steps right, doesn't work properly once installed.