Was coming in here to post the same thing I saw on the katie.com site:
Penguin FINALLY do the right thing!
According to a press release on their site today, Penguin Puttnam have finally decided to do the right thing and rename the book. I cannot tell you how pleased I am!. Of course they should have done this 4 years ago and saved us all a load of grief, but I am thrilled that they've finally realised the consequences of their actions and admitted fault by retitling the book.
All that remains is to hope that Katie Tarbox does not continue to promote herself or her services as 'katie.com' as previously threatened and maybe then my life can return to normal:-)
I am sure that this sudden change of heart by the publisher is largely to do with the support this issue has received from the online community and once again I'd like to thank everyone very much indeed.
Besides the optimization the DB might do on SP's as opposed to dynamically created SQL statements, SP's are nice from a security point of view.
You have to be extra careful with dynamic SQL due to SQL injection bugs that we all know about. This isn't really an issue when you're dealing with stored procedures that take defined data types as opposed to creating SQL on the fly based upon your data (which could have injected SQL).
Controlling which DB accounts can use what stored procedures is also handy mechanism for determining permissions. Stored procedures represent what all your application might do, so picking which DB connections (which have credentials) can access these is a nice place to control those permissions.
Granted, you can still do lots of stupid things to mess up security:).
Also, there are places where SP's are not really possible. Severely dynamic reports are a good example (assuming you allow that functionality in your application). There's definitely times when you HAVE to generate SQL on the fly. In any event, try to create a "data access layer" in your code and if you have to dynamically generate SQL, run all sorts of checks on it with regexp's etc to check for injection.
I haven't written an HTML parser, but I've looked at the source code to the various HTML validators. They're truly nasty, and for good reason.
Assuming you have decent XML libraries, an XHTML parser would load the XHTML schema into a validating reader and read it. If you catch a schema problem, you know it's not valid. Assuming you don't accept invalid documents (which I think should be required so we don't have this "this page works in IE, all others f*** off!;)), your job is really simple.
As far as your quote, that has to do with the current state of the browsers (which is very important). I'm shocked that it's actually this way (taking him at his word). I'll have to do some experimentation later. If it's really that bad, maybe I'll get motivated:).
You guys are both essentially complaining about the speed of XSLT transforms. While XHTML makes "HTML" a valid XSLT target target document (in other words, it makes HTML XML compliant), nobody is forcing you to use XSLT.
XHTML is still completely valid on its own. It's a HELL of a lot easier to validate for one thing. Ever looked at the sourcecode to HTML validators?
XML is a pretty generic set of format rules. There are LOTS of various formats that are implemented in XML (SVG, XHTML, XSLT for some popular examples).
XHTML applies the rules of XML to HTML. For instance you can have one root node, you have to close all tags, attributes have to have single or double quotes around their values, etc.
Writing something that parses XHTML is a LOT simpler than writing something that parses HTML. It's also easier to confirm you've written it properly (using schemas for instance, which are also written in XML:)).
Multicast was designed for this type of thing (delivering the same content to LOTS of people without needing LOTS of bandwidth). It has a lot of the push model features without the headache.
Just FYI, Keller is not in the middle of nowhere. It's a pretty nice suburb in the D/FW (Dallas/Fort Worth) metroplex. Based upon the average income of the area, I'd say it's a pretty good idea to try it there.
There's a lot of tech types who live out there (who work in Dallas, etc.), so they probably figured that makes it a nice place to start as well due to demand.
The patent attornies I've dealt with try to portray them as defensive weapons, much like nuclear weapons are portrayed as weapons of deterrence. They never seem to say "we're gonna sue the crap out of people doing anything like we do!".
They talk about situations like the following scenario:
Company A tells Company B they're infringing, and they want X amount of dollars.
Company B responds with a list of patents they think Company A is infringing upon.
Both sides decide to drop the matter (to avoid mutually assured destruction;) ).
Did a little research, and it looks like you're correct. I thought TCP/IP meant TCP basically, but I've since google'd several things that back up your comment.
Thanks for the answer. I know everyone and their brother uses UDP for these things now. It makes the code a lot more difficult, but the performance is much better.
"Online networking code: Still considered by many to be the biggest step forward in gaming, id Software was able to crunch the heavy 3D graphics and make them playable on a 28.8 dial-up modem using the client/server tcp/ip connection that had only been used for application purposes prior to Quake being released."
I can't remember. Did it really use TCP/IP or was it UDP?
I agree that everyone should use a router that does NAT at least to block all incoming ports by default, but sometimes it's not possible.
My friend's dad bought a satellite internet connection (they live out in the country) and the damned thing connected via USB. He (the dad) hooked it up without installing a software firewall (Win2K, so no built in one) and the machine was completely overrun within about 2 hours. He had no chance of getting behind a hardware firewall (at least a router with NAT) due to the way the hardware was built.
I had an Osborne as well. My fondest memories of the machine deal with the word "xyzzy". I remember using WordStar to type of stuff for reports that would print to a daisy wheel printer. In those days, if your paper wasn't quite long enough, a few strategically placed spaces would cause the page justification to add a few more lines:). Can't pull that off as well with these damn kerned fonts...
I did a lot of programming on it, mainly in BASIC. Some silly stuff and text based adventures mainly. I wrote a program in BASIC (MS BASIC if I remember correcly?) on it to do "string math" (arbitrary precision calculations using strings to store digits). I had a program that would run 24/7 for weeks and got the square root of 3 out to 3000 digits. I'm pretty sure I could use the same algorithm (it was very brute force) today on the machine I'm using and get the same result in under an 15 minutes.
I eventually learned Pascal on that machine using "Turbo Pascal".
I remember that thing being loud, hot, and not very portable:).
Re:New poll: Best C64 games.
on
First Computers
·
· Score: 1
Ouch...so many good ones.
I really loved the walking animations etc. in Kareteka, and I loved the various sections of Beach Head.
I'd like to add Blue Max to the list. It was always kind of difficult to move the joystick the right way to drop the bomb, but it was still a great game.
Raid on Bungling Bay gets my vote though. That game was worth waiting 20 minutes to load off of floppy.
Was coming in here to post the same thing I saw on the katie.com site:
:-)
Penguin FINALLY do the right thing!
According to a press release on their site today, Penguin Puttnam have finally decided to do the right thing and rename the book. I cannot tell you how pleased I am!. Of course they should have done this 4 years ago and saved us all a load of grief, but I am thrilled that they've finally realised the consequences of their actions and admitted fault by retitling the book.
All that remains is to hope that Katie Tarbox does not continue to promote herself or her services as 'katie.com' as previously threatened and maybe then my life can return to normal
I am sure that this sudden change of heart by the publisher is largely to do with the support this issue has received from the online community and once again I'd like to thank everyone very much indeed.
Yours very happily
Katie Jones
Does typing "a" and a space 80 times count as 80wpm?
The jump from 300 to 1200 baud made me a faster reader ;).
Besides the optimization the DB might do on SP's as opposed to dynamically created SQL statements, SP's are nice from a security point of view.
:).
You have to be extra careful with dynamic SQL due to SQL injection bugs that we all know about. This isn't really an issue when you're dealing with stored procedures that take defined data types as opposed to creating SQL on the fly based upon your data (which could have injected SQL).
Controlling which DB accounts can use what stored procedures is also handy mechanism for determining permissions. Stored procedures represent what all your application might do, so picking which DB connections (which have credentials) can access these is a nice place to control those permissions.
Granted, you can still do lots of stupid things to mess up security
Also, there are places where SP's are not really possible. Severely dynamic reports are a good example (assuming you allow that functionality in your application). There's definitely times when you HAVE to generate SQL on the fly. In any event, try to create a "data access layer" in your code and if you have to dynamically generate SQL, run all sorts of checks on it with regexp's etc to check for injection.
I haven't written an HTML parser, but I've looked at the source code to the various HTML validators. They're truly nasty, and for good reason.
;)), your job is really simple.
:).
Assuming you have decent XML libraries, an XHTML parser would load the XHTML schema into a validating reader and read it. If you catch a schema problem, you know it's not valid. Assuming you don't accept invalid documents (which I think should be required so we don't have this "this page works in IE, all others f*** off!
As far as your quote, that has to do with the current state of the browsers (which is very important). I'm shocked that it's actually this way (taking him at his word). I'll have to do some experimentation later. If it's really that bad, maybe I'll get motivated
Well said!
I would argue learning XHTML is easier than HTML since the rules are a LOT more straightforward.
You guys are both essentially complaining about the speed of XSLT transforms. While XHTML makes "HTML" a valid XSLT target target document (in other words, it makes HTML XML compliant), nobody is forcing you to use XSLT.
XHTML is still completely valid on its own. It's a HELL of a lot easier to validate for one thing. Ever looked at the sourcecode to HTML validators?
XML is a pretty generic set of format rules. There are LOTS of various formats that are implemented in XML (SVG, XHTML, XSLT for some popular examples).
:)).
XHTML applies the rules of XML to HTML. For instance you can have one root node, you have to close all tags, attributes have to have single or double quotes around their values, etc.
Writing something that parses XHTML is a LOT simpler than writing something that parses HTML. It's also easier to confirm you've written it properly (using schemas for instance, which are also written in XML
Sweet wiki you have there, thanks.
FWIW, I laughed.
You are correct.
Multicast was designed for this type of thing (delivering the same content to LOTS of people without needing LOTS of bandwidth). It has a lot of the push model features without the headache.
Just FYI, Keller is not in the middle of nowhere. It's a pretty nice suburb in the D/FW (Dallas/Fort Worth) metroplex. Based upon the average income of the area, I'd say it's a pretty good idea to try it there.
There's a lot of tech types who live out there (who work in Dallas, etc.), so they probably figured that makes it a nice place to start as well due to demand.
Weapons is an interesting choice of words.
;) ).
The patent attornies I've dealt with try to portray them as defensive weapons, much like nuclear weapons are portrayed as weapons of deterrence. They never seem to say "we're gonna sue the crap out of people doing anything like we do!".
They talk about situations like the following scenario:
Company A tells Company B they're infringing, and they want X amount of dollars.
Company B responds with a list of patents they think Company A is infringing upon.
Both sides decide to drop the matter (to avoid mutually assured destruction
Not to mention...
.NET in a non-2.0 framework, I think they'll get more excited about .NET in general.
Once people play with
Then demand for a 2.0 Mono framework will increase, and more people will probably jump onboard to help.
Did a little research, and it looks like you're correct. I thought TCP/IP meant TCP basically, but I've since google'd several things that back up your comment.
Thanks
Thanks for the answer. I know everyone and their brother uses UDP for these things now. It makes the code a lot more difficult, but the performance is much better.
I remember IPX for sure. It's hard to remember that far back. I can't remember what all WinQuake for instance brought to the table.
"Online networking code: Still considered by many to be the biggest step forward in gaming, id Software was able to crunch the heavy 3D graphics and make them playable on a 28.8 dial-up modem using the client/server tcp/ip connection that had only been used for application purposes prior to Quake being released."
I can't remember. Did it really use TCP/IP or was it UDP?
I agree that everyone should use a router that does NAT at least to block all incoming ports by default, but sometimes it's not possible.
My friend's dad bought a satellite internet connection (they live out in the country) and the damned thing connected via USB. He (the dad) hooked it up without installing a software firewall (Win2K, so no built in one) and the machine was completely overrun within about 2 hours. He had no chance of getting behind a hardware firewall (at least a router with NAT) due to the way the hardware was built.
I used the TI-99 4/A mainly for Scott Adams (no, not the Dilbert guys) text based adventures and "Tunnels of Doom".
I had an Osborne as well. My fondest memories of the machine deal with the word "xyzzy". I remember using WordStar to type of stuff for reports that would print to a daisy wheel printer. In those days, if your paper wasn't quite long enough, a few strategically placed spaces would cause the page justification to add a few more lines :). Can't pull that off as well with these damn kerned fonts...
:).
I did a lot of programming on it, mainly in BASIC. Some silly stuff and text based adventures mainly. I wrote a program in BASIC (MS BASIC if I remember correcly?) on it to do "string math" (arbitrary precision calculations using strings to store digits). I had a program that would run 24/7 for weeks and got the square root of 3 out to 3000 digits. I'm pretty sure I could use the same algorithm (it was very brute force) today on the machine I'm using and get the same result in under an 15 minutes.
I eventually learned Pascal on that machine using "Turbo Pascal".
I remember that thing being loud, hot, and not very portable
Ouch...so many good ones.
I really loved the walking animations etc. in Kareteka, and I loved the various sections of Beach Head.
I'd like to add Blue Max to the list. It was always kind of difficult to move the joystick the right way to drop the bomb, but it was still a great game.
Raid on Bungling Bay gets my vote though. That game was worth waiting 20 minutes to load off of floppy.
This is also why the video went crazy when you loaded programs off of tape.
The Sinclair was a decent machine for learning "BASIC", although the keyboard made me feel more like saying "do you want fries with that?".
This was my first computer, followed by an Osborne I Executive, a TI 99-4A, Commodore 64, Amiga 500, Atari 1040ST.
The really bad part is he's planning to make a homebrewed Tivo out of the machine. ;)