E-mail inboxes were flooded with messages this morning as a new virus
quickly spread around the world. Dubbed "Don't Fucking Open Me" by
anti-virus researchers, the infected e-mail follows a similar course to
other viruses and replicates by sending itself out to everyone in the
infected computer's Outlook and Outlook Express address book. The
virus also contains two different payloads: one version formats the hard
drive and displays the message "This is for your own good"; the other
payload creates random Power Point presentations in the "My
Documents" folder.
Savvy users can spot the virus by its subject which is "Don't Fucking
Open Me" or by the attachment which is entitled
"Don't_Fucking_Open_Me.exe".
"This virus tricks the user with an old psychological tactic called reverse
psychology. Apparently the curiosity created by the message has been
too much for thousands of users," said anti-virus researcher Bob
Atibop. According to Atibop, this isn't the first time reverse psychology
has been used. In 1998, the "Don't Pee on Your Keyboard" worm caused
a flood of damage.
Researchers have seen large infection among AOL users and middle
managers, the two largest concentrations of naive and inept computer
users.
Claudia Hawkins who was infected by the virus said, "My son told me not
to open attachments, but.... I mean my MOM sent it! What if she was
hurt?!?"
Another infected user too embarrassed to reveal his name said, "I
thought that there was no way that this could be a virus. What kind of
stupid idiot virus writer would put a dumb title on it like that? No one
would ever open something that says not to open it. The virus would
never spread defeating the whole purpose of it."
Experts advise extreme caution when opening messages entitled "Don't
Fucking Open Me" or "Click Here for Cash and Virus Infection".
Boston, Massachusetts, USA - Friday, March, 1, 2002 - In a decision handed
down today in Boston, US District Judge Patti B. Saris ruled on the
preliminary injunction motion in MySQL AB vs.
Progress Software Corp.
Too bad that they are fighting in court against MySQL,
I really liked ProgreSQL...
It does make me miss good Mozilla things, like tabbed browsing. I've also run into a
number of pages that Konqueror does not handle all that well, but I'm not sure if its
due to standards violations in those pages or in Konqueror.
where URI is the URI of the page to validate. (well, duh..)
I usually get tons of errors while validating
most of pages, except for my own sites
because I always use my web design rules so they have 0 errors and 0 warnings.
But validate/. and you'll see that they haven't heard about my rules.;)
I sometimes send emails to webmasters
with link to their website validation results,
asking they to fix their errors when I can't
use their websites.
If you view any website which your Konqueror
can't render,
check out what HTML Validator says about it, and when you find any errors, send the link
http://validator.w3.org/check?uri=URI
to webmaster of this website,
telling them that you can't access their broken website.
That way they won't answer you that your browser is bad, because they website is broken in the first place.
You can suggest them to use HTML TIDY to clean up the web pages.
There's also a W3C CSS Validation Service, but errors in styles are usually less anoying than errors in HTML itself.
Complaining to incompetent webmasters usually doesn't work, but it can help a lot when many people do that.
It's the only way to change the current situation.
"Contact
me and I'll fix your broken website or supervise your
webmasters for very affordable prices."
Too bad your email info was too cryptic for me to add you to my little virtual rolodex of
cool people. Maybe that was your intent all along.
You mean that
contact shiny at key
dot salt after cracking crypt(3)'ed "plfeY04jaJnYI"
is too cryptic?
Or you mean it's too
crypt(3)'ic, as a joke?
I ask because it would be a very good joke,
in my opinion.
Anyway, I'm afraid that's all I can say...
I have to keep my identity in secret,
otherwise the phrase
"very affordable prices"
could be used against me.
But to brake the encryption,
feel free to use this program,
Shiny Metal Brute Force Crypt Cracker version 3.1.9:
#!/usr/bin/perl
#
# Shiny Metal Brute Force Crypt Cracker v3.1.9
#
# Copyright (C) 2001,2002 shiny@key.salt
(shiny@output)
# http://slashdot.org/~Shiny+Metal+S./
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of
the GNU General
# Public License along with this program;
# if not, write to the Free Software
Foundation, Inc.,
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
$x=substr$q,q,0,,q,2,if$q=q,plfeY04jaJnYI,;for
(++$_..$_<<3){qq,$q,eq crypt$_,$x and die
qq,$_.$x,for q,a,x$_..q,z,x$_}
When you do, just contact shiny@output.
This program is free software
released under the GPL
(which is (the version
from
2002-02-28 08:06:10 +0100
last modified on
2001-07-15 13:13:30 +0200)
valid HTML 3.2
and
valid HTML 4.01 Transitional
(except DOCTYPE which says HTML 2.0
and Character Encoding which is undefined)).
Let me know when you find this program useful
or otherwise valuable to the community.
Damn, that was a good post. I'm keeping a copy of it.
Thanks, that's nice to hear.:)
I'm keeping a copy too,
and maybe one day I'll make a website from it.
It's good to know that people actually find it
interesting.
These are all important things, but
unfortunately most of web designers
don't care about them.
When my Lynx or
Galeon
can't render a website
which I absolutely have to see
(and it's the only place with the information I need),
I can always use Netscape and
everything is fine (except for microsoft.com which usually crash my Netscape for some reason).
But there are people who can't use Netscape
or Internet Explorer on their
Braille terminal or speech synthesiser
and they are effectively unable to use
most of the Web.
That's very sad.
We have 21st century,
all the informations they need are there
on-line,
but they can't reach them because of
web designers ignorance.
There are no borders for them other than
ignorance of web designers.
Web Pages That Suck is a great site for learning about good design through bad
design.
Very good one, I didn't know it before.
It reminded me
ESR's
HTML Hell Page: How not to design junk Web pages. I see it has changed a lot in the last few years since I last saw it. Now there are many things from my post (or maybe in my post there are many things from HTML Hell), but I'll still tell you about it even if it makes my comment less insightful.;) So, the HTML Hell Page is surely worth reading, there are also links to other similar websites:
I haven't seen all of the above links yet,
but I'm sure they're interesting.
Regarding disabled access, try Bobbie as your automatic checker.
Thanks.
I knew about it, but I forgot the name.
It's a great tool.
But there's one thing I don't like about Bobby,
it's the
license:
"No Reverse Engineering. Licensee shall not modify, adapt, translate, prepare derivative works from, decompile, reverse engineer, disassemble or otherwise attempt to derive source code from the Licensed Software or documentation therefor, except and only to the extent that such activity is expressly permitted by applicable law notwithstanding this limitation. Licensee shall not remove, obscure, or alter any copyright notices, trademark notices, or other proprietary rights notices affixed to or contained within the Licensed Software or documentation."
"License Fee. Licensee shall pay CAST or its designee a license fee for each simultaneous user of the Licensed Software ("Single User License Fee") or each server on which it shall install the Licensed Software ("Server License Fee") as set forth at http://www.cast.org/bobby/DownloadBobby316.cfm."
"Bobby was created by CAST to help Web page authors identify and repair
significant barriers to access by individuals with disabilities."
"Center for
Applied Special Technology, CAST is a not-for-profit organization whose
mission is to expand opportunities for people with disabilities through innovative
uses of computer technology."
"Above, you can test a Web page using our server version of Bobby Worldwide.
This server version gives you a preview of the downloadable version of Bobby
Worldwide."
Single User copy: $99.00
Site License of server version: $3,000.00 per server
Multiple server site license: $2,000.00 per server for 5 or more servers
I think it's exactly the kind of software which
should be released as a free software.
Yes, I'm a free software freak,
so in my opinion every software
is exactly the kind of software which
should be released as a free software...
But this is software made by "a
not-for-profit organization whose
mission is to expand opportunities for people with disabilities through innovative
uses of computer technology".
I could tell my employer:
-- Hey, maybe we could
install Bobby on the servers?
-- What's that?
-- It's a program to expand opportunities for people with disabilities.
-- Does it cost anything?
-- It's free-as-in-beer.
-- Sure, why not.
but when I tell him that it'll cost him
$3k per server...
You know what the answer would be even if we only need a single user copy for 100 bucks.
Bobby would serve its purpose much
better if it was released as a
free software.
I'd be proud to contribute patches to Bobby,
as I'm sure would lots of other people,
and best of all, much more people would
use Bobby.
If there is any place for proprietary software,
it's not software which
"was created [...] to help [...] identify and repair significant barriers to access by individuals with disabilities."
In other words: great idea, fatal license.
Keep graphics content (hence download time) low, and always compress images
using
Gifbot or something similar.
Good point, it's a very important thing
which I didn't say about at all.
I noticed that I wait the same time for
the average website to load today on 768kb/s
DSL,
as I waited few years ago on 28.8kb/s modem.
I didn't know Gifbot. It's great, because
people who don't understand the image compression
techniques (i.e. most of people making personal webpages)
can improve ther graphics and save time and
bandwidth.
It only lacks
PNG
output which is important to me,
not only because of the GIF problems, but because it's a great format,
even recommended by The World Wide Web Consortium
and it has Adam7 interlacing feature
for great progressive loading on slow
connections, very good for the WWW
(see this image
or this one if your connection is to fast to notice the effect),
read more about Adam7 interlacing on
stl.caltech.edu Introduction to PNG.
What I would add about the graphics
is to first of all,
always use JPEG for photographs,
and always use PNG for computer generated graphics (logos, headers, text, screenshots).
Of course there are sitiations when it's
better to use PNG for photo or JPEG for something generated (like rendered landscapes),
but for most of situations
(especially for usual homepages)
this rule works great:
JPEG for photos, PNG for logos.
People sometimes use JPEG for flat few-color
logos, which looks terrible on the hard edges
and solid color areas.
People also (however not so often) use PNG or GIF
to save photos, and they are ten times larger
than JPEG of the same quality.
My personal choice for editing web graphics is
The Gimp,
it's a great tool
especially for web designing purposes.
It has a great JPEG saving dialog, where
you can set different quality values
and see the real-time preview,
so you can save at the lowest quality (highest compression) when you don't see the difference,
You can also set subsampling type or DCT method and restart markers for more advanced users.
"Cooltext.com is an online graphics
generator for web pages and anywhere else
you might need an impressive logo without
a lot of work. We provides real-time
generation of graphics customized exactly
the way you want them.
Simply choose what kind of image you
would like to create. Then, fill out a form
and you'll have your own images created on
the fly.
Cooltext.com will always be available for
use free of charge."
They use Gimp as the backend
so it's a great introduction to Gimp
power as a web graphics authoring tool.
Everyone should check out Cooltext,
you can make great logos in few seconds.
Great for lazy webmasters who want to
have nice websites with no effort.
Great preview of Gimp.
Speaking about the software,
another great tool I use daily is ImageMagick.
The best set of programs
I've seen for conversion, optimizing and
compression of lots of pictures at the same time.
Once I used it to automatically scale,
stretch contrast,
add logos,
compress and save over 10,000 pictures.
It took over two days to my PC back then,
but it was two days of rest for me.
It would've taken me weeks if I'd had to do it manually.
Great, I wrote another comment for ten screens, while I should work instead...
But what can I do, when I have a subject
which is one of the main areas of my interest?
Actually I didn't realize that I have so much to say about web design,
maybe I should write a book, teach or something...
It reminds me a funny situation I had
few months ago:
A friend of mine phoned me once and asked:
-- Tell me, how do you make websites?
I saw all of my life scrolling before my eyes.
I was trying to figure out
where to start my answer,
and after ten seconds of my silence, he said:
-- But hurry up, I'm using a cell phone.
Here I started to laugh like a mad man,
and I couldn't explain him why I laughed when
he kept asking me, because I couldn't stop laughing.
He really thought that I could explain
everything to him in few minutes...
Later I told him, that I had been learning how to make websites for many years, and now he's
proud that he's the man who asked me to summarize many years of my life in few minutes.
I tried to give him
fewbooks
but he thought it'd be faster and even
when I suggested Netscape Composer,
it wasn't worth the effort for him...:)
Great story, I always laugh when I remember it.
That's about it. I say again, Damn that was a good post. 5++ (Moderators please mod
original post up).
Thanks once again.
It's good to know that there's someone who
likes it more than the moderators.:)
At the risk of being redundant,
I'll tell you everything what I find important.
Content
If you don't have anything interesting to say,
don't even bother.
Animations
Do not use any
animations or blinking text on a page, when
there's any text to read,
especially if they can't be turned off by
simply pressing Escape or clicking Stop.
I don't mind ads, as long as they don't
interfere with reading, and animations do
interfere.
Valid HTML
Don't publish invalid HTML.
Always use W3C HTML Validator and
CSS Validator on your pages online.
Always use
HTML Tidy before your new pages are online.
If you don't write HTML but you use
a WYSIWYG Web authoring tool instead,
and its output gives any
errors or warnings when tested with
HTML Validator,
complain to the vendor of this tool
you use
asking to remove the bugs.
HTML is not a typesetting language
HTML or XHTML are for the logical
informations about your document.
CSS
is for defining the look and feel.
<NOSCRIPT> tags
The <NOSCRIPT> tag is not for writing
"Your browser is bad,
come back when you install better"
but for providing
the same functionality for browser without
JavaScript
or with JavaScript turned off.
(By the way, texts like "If you can see this text, that means you have no JavaScript"
are as stupid as
"If you can see this text, that means you have a kernel panic")
If your website is unusable without JavaScript,
it needs a redesign.
Don't use
<a href="javascript:..."> links
if you don't have equivalent
<a href="http:..."> links
inside a <NOSCRIPT>.
Remember about other browsers than yours
If your website is best viewed
with any specific browser, or in any
specific resolution,
you're not a good web designer and worst of all,
you don't understand what the Web is all about.
See the Any Browser Campaign.
Install Lynx (a text-mode browser) and see how your website looks like. If it's unusable, it's poorly designed.
Remember to always use ALT property in IMG tags,
aspecially in navigation buttons.
Remember about people with disabilities
See the Web Accessibility Initiative and always try to
meet the Triple-A,
Double-A or at least
Level A Conformance.
Use Web Accessibility Initiative logos on your website,
or just a text information about your level
of conformance.
"The power of the Web is in its universality. Access by
everyone regardless of disability is an essential aspect."
- Tim Berners-Lee, inventor of the
World Wide Web
People may access your website using
Braille terminals or voice synthesis.
Testing your website with
Lynx
is always a good idea.
Colors
Remember that 10% of your visitors are
color-blind in some degree.
Remember that black text on white background
is the best combination for any text longer than
few lines. Try to learn from the good old books,
not from the magazines about the latest
celebrity gossips.
Fonts
Remember that the best font for text longer than few lines is
a serif, variable width font,
like Times.
Try to learn from the good old books,
not from the magazines about the latest
celebrity gossips.
User defaults
You should always use the default font
face and default font size for the normal
text content on your website.
Just don't define the face and size, and it'll
be ok.
Remember that when you use size "-2"
for the whole text on your page
it means:
"For the text on this page, use the font two levels smaller than what the user has chosen as his/her default and favorite size of font".
Use your own font faces, sizes and colors other than black on white, only for
logos, headers etc., but not for the main
text to read, longer than few lines
and especially longer than a paragraph.
Soemone has set a bigger size as a default for a reason -
maybe he/she has a small screen,
maybe he/she has problems with eyes,
maybe he/she just likes big fonts -
respect this decision.
Accept-Language
If your site is multilingual, use the
Accept-Language HTTP header.
My browser sends
Accept-Language
in every single request
and it's stupid that I have to click
English version links, after I've
already told it in my HTTP request.
See the
RFC 1945 - HTTP/1.0 (May 1996)
D.2.4 Accept-Language
The Accept-Language request-header field is similar to Accept, but
restricts the set of natural languages that are preferred as a
response to the request.
It's nearly 6 years old feature,
still most of people don't use it.
RFC 2616 - HTTP/1.1 (June 1999)
defines much richer
Accept-Language header
(See section 14.4),
but please, use HTTP/1.0 functionality at least.
See www.debian.org
which is a great example of this feature
functionality.
Contact
me and I'll fix your broken website
or supervise your webmasters
for very affordable prices.
This is everything what I can think about
right now.
I'm sure many of you have already said
the same things
(I do hope so!)
because I started writing this comment when
there were only few other comments posted.
Those are,
in my opinion,
the most important
things about a good web design,
so it's worth being a little redundant.
Forgive me any typos, it's quite a long comment
and I'm very tired (and very lazy).
What is the point of scripting? If a task is so mundane and repetitive that it is easily
scripted, why even bother putting it into the game to start with?
All that extra coding,
debugging, cpu time and possibly bandwidth is wasted on something that no-one is
interested in, and doesn't add anything to the game.
even if games had a 100% solid protocol
you'd still have auto-aimers in FPS games.
Of course, but this is the kind of cheat which
will always be possible.
That is because of the nature of the problem.
Shooting to the target
is the kind of problem which is
better solved by the machine than by a human.
I would solve it in a different way:
characters could be set to automatically aim
to the enemies (as an integral part of the game,
not as a cheat) but when he shoots,
the decision if the target was hit
is made by the server,
depending on many factors
(like if the character and target are running,
if the character is tired, hurt, far from
target, etc.).
It would not only solve the auto-aim
cheat problem, but would also make the game more
realistic.
My point is that when you have online
multiplayer game,
where people from the whole planet
play the game on their own computers,
the only sane assumption is that
sooner or later
(usually sooner than expected)
someone will use a hacked client.
So if you don't want cheats,
you can't depend on strictly manual skills,
which would be extremely easy for a machine,
like aiming to targets.
Otherwise, you'll have big trouble
when someone finally learns your protocol
or alters the client binary.
That could mean the end of fun for many people
and an endless fight against cheaters
for the game developers.
I like the idea of WorldForge project, which I think will be introduced
with Mason
and Werewolf, i.e.
to integrate into the game
the AI scripting of PCs
with identical possibilities as the AI of NPCs.
There'll be lots of ready to use scripts
and some GUI script builder, as well as
a possibility to write the scripts
(currently in Python).
So you'll be able to program your character
to always run away when he's attacked by someone
taller than him,
or otherwise always instantly hit the offender
in the face.
But also more general tasks, like eat when
he's hungry, buy food when he has no food,
find food when he has no money, etc.
That way when you don't play the game,
your character can still do something
useful, unlike most of MMORPGs where the
character usually just stands still or
disappear.
Thanks to that,
there's no point in cheating with
the client by e.g.
setting your character to automatically
train his skills for many hours,
because everyone can
easily program his character to do the same,
probably with just few clicks in the GUI.
Check out the Cyphesis,
WorldForge AI/ALife engine.
There's still not much of documentation,
so the Cyphesis source code is the best reference.
So that's about the client itself.
On the other hand,
from the side of network protocol and
the clean client-server architecture,
the client never gets to much info,
and it's never trusted to make any decisions,
other than just send to the server what the
character wants to do (not even what he actually
does, just what he wants).
I'll quote part of the Atlas protocol summary,
my emphasis:
Atlas is standard protocol between server and client. It should
work with simple/complicated server and simple/complicated
client and with all combinations. ASCII version will use XML.
Server might be thought as body for character and client might
be thought as mind for character and protocol is neurons
connecting these.
Features
Flexible and transparently extensible
Works at the same time with old and new clients
Initially XML used for easy debugging and later
optimized binary format.
Transmits only changed information and server doesn't
need reveal any more it wants.
Usually assumption is
made that clients are hacked and thus are not
trustworthy.
See also the
Atlas Tutorial.
The standard implementation of Atlas is Atlas-C++,
the source code of which
can be great for anyone who wants
to learn multiplayer games related network
programming, and high quality network programming
in general.
For more about Atlas, check out the
Battleplan and
protocols at worldforge.org
mailing list
(see the archives of scripting@ for
discussion before 1999, and protocols@ for later and actual discussion).
So, the point is that not trusting the client is
the fundamental aspect of game design,
not just a feature to be added later.
There are and will be games designed around
open protocols (where you can easily
read and change the client-server traffic in
both ways),
free software clients
(which you can easily change),
and servers (which you can easily read
and find out how they work),
but those games
won't have problems with cheating
because of their design,
not because of
security through obscurity
like in most of games today.
That's why I always talk about WorldForge
when there's a discussion about
multiplayer games design, security and cheats
- these folks do it
exactly the way how it should be done.
If you Never trust the client. then you absolutely cannot create an online game. At
some point you have to trust the client. And there is absolutely no way to prevent
someone from hacking the client for auto-aim, auto-dodge, etc.
I was talking more about
strategy and MMORPG games than about FPS.
Remember that online game is a term
describing much more than just Quake.
So I mean situations where human intellect
is more important than auto-dodge.
I don't play FPS games, I find them boring
and repetitive
(please take no offense,
this is strictly my personal opinion),
but if I was designing one,
I would include scripting of characters behavior,
as an integral part of the game.
Players would focus on the strategy
instead of manual skills.
But then again, maybe it's not what
FPS fans would like.
I think the number one problem with online games is cheating.
And the number one reason for that is
underestimation of
the number one security rule,
i.e. Never trust the client.
The reason for that, I believe, is
trying to get better performance at the cost of
security,
but with online multiplayer games,
the risk can be often to high.
A printer and human friendly version
on
Understanding NFS
·
· Score: 3, Informative
However, games could be great with this tech. I have always wanted to see a realistic
fighting game, one with actual full physics animation, medical grade damage modeling
(and when someone is hurt, realistic degradation of their performance), and the
completely unscripted movements that an animation engine like this would allow.
Have you seen the Bioforge from Origin?
It's an MS-DOS game for 486 with 8MB RAM and VGA,
with
"3-D, texture-mapped synthetic actors whose images actually show the injuries suffered in combat" (from the box)
Not only the characters look hurt but they also behave accordingly, e.g. you fall down when
you try to run, when you fight, etc.
Of course
today we have better graphics, but games
as a whole
are much less realistic than Bioforge was quite
a few years ago on 20 times slower machines.
Even assuming you have a patent office staffed with geniuses gifted with eidetic
memories, software patents mean that _every programmer_ must know the _entire
patent base_ (6-7 figures already), and keep up (hundreds of applications per day)!
I live in Poland which soon will be part of
the European Union and I start to be scared.
So please explain me one thing,
what would happen now in the United States
in this situation:
I am a young programmer writing free software
in my free time as a hobby.
Obviously, I don't search the whole patent base
before writing every line of my code.
I write something which happens to be patented.
I release my program under GPL.
My program is used by ten millions of people.
The patent holder sues me,
because ten millions copies of my program
use his patented idea, which he
can license to me for 10 cents per copy.
Would I go to jail because I don't have
million bucks?
And I don't think the public opinion would
see it as evil corporation suing kids
inconvenient for their monopoly,
it would be rather seen as
evil hacker pirate anarchist punks versus
good honest tax-paying corporation
hiring thousands of employees.
How would such situation
look like in the United States today?
Does it mean that people who don't have
fortune for lawyers, for searching the
patent base every day, for legal defense
and for potential licensing fees,
should not even start programming
because it can be to dangerous?
Or should they emigrate to East Europe
and South America, seeking freedom?
People seem to not understand that copyrights
are enough for protecting software.
It's like Van Halen
patenting the tapping technique,
because he thinks that copyright is not enough
to protect is "intellectual property".
He no longer needs to be good at it, because now
he'll be the only one
permitted to use that technique.
Unfortunately people don't understand software
and can believe in bullshit in which they would
never believe if it was in the field of music.
And believe me, Van Halen's solo
from his first album
was much more innovative than LZW,
not to say about one-click and other farce.
Even if the patents will be given only to
truely innovative ideas
it's still to dengerous for me to
write free software.
Its funny, that the image the petition is using as its logo is the Statue of Liberty, which
is a United States object. Well, I suppose it came from france.
The
Statue of Liberty, more formally "Liberty Enlightening the World," stands in New
York Harbor as a welcome to all--returning Americans, visitors, and immigrants alike.
The statue was intended as a centennial gift, and a sign of friendship between France
and the United States. According to the National Park Service:
"Sculptor Frederic Auguste Bartholdi was commissioned to design a sculpture with the
year 1876 in mind for completion, to commemorate the centennial of the American
Declaration of Independence. The Statue was a joint effort between America and
France and it was agreed upon that the American people were to build the pedestal,
and the French people were responsible for the Statue and its assembly here in the
United States. However, lack of funds was a problem on both sides of the Atlantic
Ocean. In France, public fees, various forms of entertainment, and a lottery were
among the methods used to raise funds. In the United States, benefit theatrical events,
art exhibitions, auctions and prize fights assisted in providing needed funds. Meanwhile
in France, Bartholdi required the assistance of an engineer to address structural issues
associated with designing such as colossal copper sculpture. Alexandre Gustave Eiffel
(designer of the Eiffel Tower) was commissioned to design the massive iron pylon and
secondary skeletal framework which allows the Statue's copper skin to move
independently yet stand upright. Back in America, fund raising for the pedestal was
going particularly slowly, so Joseph Pulitzer (noted for the Pulitzer Prize) opened up the
editorial pages of his newspaper, "The World" to support the fund raising effort.
Pulitzer used his newspaper to criticize both the rich who had failed to finance the
pedestal construction and the middle class who were content to rely upon the wealthy
to provide the funds. Pulitzer's campaign of harsh criticism was successful in
motivating the people of America to donate.
"Financing for the pedestal was completed in August 1885, and pedestal construction
was finished in April of 1886. The Statue was completed in France in July, 1884 and
arrived in New York Harbor in June of 1885 on board the French frigate "Isere" which
transported the Statue of Liberty from France to the United States. In transit, the
Statue was reduced to 350 individual pieces and packed in 214 crates. The Statue was
re-assembled on her new pedestal in four months time. On October 28th 1886, the
dedication of the Statue of Liberty took place in front of thousands of spectators. She
was a centennial gift ten years late."
The statue is normally open to visitors, who arrive by ferry and can climb up into her
crown, which provides a broad view of New York Harbor. A museum in the
pedestal--accessible by elevator--presents the history of the statue. [The statue and
island are closed in the aftermath of the destruction of the World Trade Center.]
Extensive renovations were performed before the statue's centennial in 1986, including
a new gold layer on the torch, which now shines over New York Harbor at night.
A smaller scale copy of the Statue of Liberty is placed in Paris, France, where it stands
on an island in the river Seine, looking down the river, towards the Atlantic Ocean and
hence towards its "larger sister" in New York.
There are two companies sharing the same place.
The first one on the one side of the store
sells only Windows computers, while
the second one on the other side of the store
doesn't sell Windows at all
and installs Debian,
FreeBSD, OpenBSD, NetBSD,
SuSE, Mandrake, Corel OS, Caldera,
Red Hat, HP-UX, Solaris, AIX, IRIX, BeOS, etc.
From the perspective of the customer,
you just enter the store, play with different computers and buy one, while being exposed
to BeOS and other non-MS solutions.
This is exactly the same effect which would be
without Microsoft OEM licensing at all.
So, what is the problem with that solution?
Would it be to expensive to split the company?
Would it be against MS licenses to have your
store near the store selling computers with
other operating systems?
Any other problems with such solution?
I hope someone has already thought about it.
What would be the advantage?
Your store would be known as the store with
lots of totally new technolgy (from the
MS-only consumer standpoint).
People could be interested in playing with
BeOS or Linux and even when
most of them chose Windows,
you could still have more customers thanks to
your interesting offer, thus making more money.
"Be wasn't free, it wasn't open source. Who wants to use that crap anyway?" was the
response of the/. masses.
Now the slashdot masses want to complain that Microsoft killed Be?
That's because it's not that/. masses love
Be. They hate Microsoft.
But really, I wouldn't use Be by myself,
I use only free software.
But I did tell about it to my friends who use
Windows.
It's not that I think Be is more free or better
than Microsoft, but because people
should know that they do have a choice when
it comes to the OS.
And they usually don't know that.
I would love Be to win this case,
not because I want to hurt Bill Gates.
When Microsoft wins, nothing will change.
When Be wins, it could change a lot in the
minds of people, who never thought
about the OS when they were buying their PCs.
The choice is a Good Thing,
but people have to know about it
in the first place.
Otherwise nothing will ever change.
When people start to ask in computer stores
for that Be thing they heard last night in
TV news, it will be a great step forward.
Or when you want to accelerate (you bow forward) over the maximum velocity. There'll
be a point where whis thing won't be able to accelerate any more to prevent you from
falling, and too bad it will be at max speed...
The acceleration isn't what balances it, it has specific motors for rotating the chassis
based on input from the gyros (hence "self-balancing").
Those specific motors for rotating
the chassis based on input from the gyros
are attached to the wheels.
See how it works:
"When the vehicle leans forward, the motors spin both wheels forward to keep from tilting over. When the vehicle leans backward, the motors spin both wheels backward."
I don't really know what are you talking about so
please explain it, however
as far as I know the whole idea behind Segway
is that when you fall forward it accelerates
forward and when you fall backward it
accelerate backward (breaks when you
already go forward)
so you're "falling" but you never fall.
It's like when you're standing in breaking or
accelerating train and you
lean forward when the train accelerates
and backwards when it breaks to not fall.
But with Segway it's the other way around,
i.e. you lean first
and the Segway accelerates/brakes accordingly.
So, my concerns remain valid.
I still haven't figured out what happens if you should run into something that blocks
the wheels
Or when you want to accelerate
(you bow forward)
over the maximum velocity.
There'll be a point where whis thing won't
be able to accelerate any more to prevent
you from falling, and too bad it will be at
max speed...
Fortunately the GPL has never been upheld in a court of law, and never will be. How
on earth can unzipping a tarfile possibly commit me to a legal contract ? Answer - It
cannot. The GPL is really little more than RMS's Communist fantasy.
It is not EULA, the end-user doesn't have to
accept the license to be able to use the software.
But when you want to redistribute the software,
you have to accept the license, because you
have nothing else which would allow you
to redistribute it
(you may have heard about the copyright law).
You are probably not the only one who doesn't
know that, so let me quote the
GPL,
Section 3,
emphasis is mine:
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. (...)
Activities other than copying, distribution and modification are not covered by this License; they are
outside its scope.
The act of running the Program is not restricted (...)
(...)
5.
You are not required to accept this License, since you have not signed it. However, nothing else grants
you permission to modify or distribute the Program or its derivative works.
These actions are prohibited
by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any
work based on the Program), you indicate your acceptance of this License to do so, and all its terms and
conditions for copying, distributing or modifying the Program or works based on it.
People will take you much more seriously,
when you know what are you talking about.
Really, you'll be nicely surprised.
When you want to criticize the GPL,
read the GPL first.
I hate to say obvious things,
but it seems to be the only way for many
people to understand the most fundamental
rules of any kind of discussion.
Far better to simply use the BSD license. After all since the GPL has no legal standing,
by using the GPL you are effectively using the BSD license anyway.
If any license has no legal meaning
(which is not true with GPL,
otherwise Microsoft wouldn't spread FUD
and therefore you wouldn't be so biased now),
the license doesn't change magically into
original or modified BSD license
(I don't know which one you refer to).
When authors publish their work without
explicit license
(or with illegal license),
there are implicit restrictions
set by the copyright law,
which I strongly urge you to read about.
I wonder how well the harvesters have thought out their coding in order to NOT spam
the.gov addresses.
I'll tell you how I did it in my harvester.;)
I'm kidding.
But I sometimes wonder how much money I could
make in the spamming business if I had no moral
objections. Damn you moral objections!
But seriously, I suppose they don't remove
anything from harvested addresses.
There are lots of obfuscated emails on the web,
like user-no@spam.please-example.com
or
"contact shiny at key
dot salt after cracking crypt(3)'ed plfeY04jaJnYI",
where it would be almost impossible to
to make a working algorithm understanding
every method.
But what is possible is collecting such addresses
with SPAM in them for future manual processing,
it could be even quite fast, if done well.
However I don't thing they do this, for a
simple reason: they don't want trouble makers.
Trouble makers won't buy anything anyway
and can cost them problems with ISPs,
when they report every abuse.
For the same reason there's no spam in my
admin@ mailboxes.
This is a slogan from
Spam-Free Emailing Service:
"No need to worry about losing your ISP or getting into trouble, we do the
mailing to safe email addresses only."
So i think they don't want to spam people who
have NOSPAM in their email.
For more spamming services,
search Overture for "bulk email"
and see such matches as
e.g.
"Increase Sales in 2002 with Bulk Email!
33-million e-mail addresses with order. Send up to 50,000 e-mails per hour
with Prospect Mailer. Prospect Finder collects e-mail addresses based on
keyword, profile or location. Free demos."
for which people selling those emails are
paying Overture $5.15/click
(so don't forget to click them all
every day!).
(if you want to automate clicking check out
the Spam Victims Revenge, a little script
which search
Overture and click links with random delays.
I don't know if it works, I suppose that
Overture has more sophisticated methods
to count clicks, but it's a cool idea anyway.
However the manual method
has to work, so imagine slashdotting these
paid links...
it could be the end of spam forever...)
But here's an idea:
we can just call 1-800-359-0156
and ask if they have trouble makers on their lists...
I'm saying that no linguist other than Larry Wall would think that Perl was anything
vaguely similar to a natural language. Yes, natural languages are crufty and context
sensitive and Perl is crufty and context sensitive. That doesn't mean Perl is like a natural
language.
There's much more than only context sensitivity.
But I see I won't convince you, for some reason.
I said "probably". As in "statistically". As in "that's what I've observed" and "heard
many other people observe". If you've observed otherwise and we don't have the funds
for a study I guess I'll have to leave it at that. No way to come to agreement. You can
have the last word if you want it.
I commented your point as irrational,
when you came to conclusion that
my code is probably hard to maintain,
because of fact, that
there's more hard to maintain than
easy to maintain Perl code out there
(which is true of course).
It doesn't make sense in the
context of this thread and everything I was
talking about.
The whole long thread I talk about how I
fix Perl code so it's more readable, faster,
more maintainable, more clear,
what are the most common mistakes of beginners,
how I help them, etc. -
which you conclude with:
But there is a price to be paid: and whoever has
maintain your code is probaby paying it.
You shouldn't be surprised, that I call it
irrational.
But it's not so important to me any more.
You may however want to visit
CPAN and
search
for such distributions as CGI.pm, DBI, DBD*,
and the core Perl modules,
and read them, to see lots of
extremely well written Perl code.
It's really worth reading.
True, but up till just recently, evolution had nothing to do with RGB monitors and TV.
No, it had not.
But RGB monitors have everything to do
with evolution.
Their 3-D color space is simply the minimum
to fool the human eye.
And if they do end up having an influence on evolution I am sure that TV influence
would not be for the better. Besides, there is a world outside of the RGB gun. Yes?
I noticed, that spammers don't spam
admin@example.com.
First, it's pointless to collect such addresses,
because most of domains should have valid admin
localpart,
so they could just send spam to admin at every
domain in the world.
But I suppose, that spammers have usually much
more trouble with admin@example.com than with
supermasterofdisaster199@example.com,
so they just remove admin@* from their databases.
Google search for my admin@ address gives about
1000 matches
(I use it on many mailing lists
and it's available in the
mailing lists archives - probably the first
place where spammers are looking for addresses),
still I have not yet got a single
spam to that address.
I had an idea once to use addresses like
admin@username.example.com
or even
admin@username.spam.example.com
(spammers may remove addresses with spam
or nospam etc. in them
- just an idea, I had never checked it,
but sounds reasonable).
My another idea was using user@fbi.gov.example.com or something like that, in hope that spammers
don't spam *.gov addresses, and also
*.gov.* addresses (to match in other countries, like *.gov.pl).
I haven't tested it because I see no need for it
with my admin spam-proof address.
So I suggest you to make a test with address
admin@user.spam.abuse.gov.yourdomain
and see if you get any spam there.
Therefore a tetrachromat could be
considered to be at a certain advantage when it comes to color discrimination.
But while using our RGB monitors and TV
the colors would seem flat to him,
like RG (without blue) picture would be
flat to me.
This could be quite inconvenient,
however still less than a greyscale pictures
to us.
Boston, Massachusetts, USA - Friday, March, 1, 2002 - In a decision handed down today in Boston, US District Judge Patti B. Saris ruled on the preliminary injunction motion in MySQL AB vs. Progress Software Corp.
Too bad that they are fighting in court against MySQL, I really liked ProgreSQL...
In situation like this, use the W3C HTML Validation Service. You can use this URI:
where URI is the URI of the page to validate. (well, duh..)I usually get tons of errors while validating most of pages, except for my own sites because I always use my web design rules so they have 0 errors and 0 warnings. But validate /. and you'll see that they haven't heard about my rules. ;)
I sometimes send emails to webmasters with link to their website validation results, asking they to fix their errors when I can't use their websites. If you view any website which your Konqueror can't render, check out what HTML Validator says about it, and when you find any errors, send the link http://validator.w3.org/check?uri=URI to webmaster of this website, telling them that you can't access their broken website. That way they won't answer you that your browser is bad, because they website is broken in the first place. You can suggest them to use HTML TIDY to clean up the web pages.
There's also a W3C CSS Validation Service, but errors in styles are usually less anoying than errors in HTML itself.
Complaining to incompetent webmasters usually doesn't work, but it can help a lot when many people do that. It's the only way to change the current situation.
contact shiny at key dot salt after cracking crypt(3)'ed "plfeY04jaJnYI"
is too cryptic? Or you mean it's too crypt(3)'ic, as a joke? I ask because it would be a very good joke, in my opinion.
Anyway, I'm afraid that's all I can say... I have to keep my identity in secret, otherwise the phrase "very affordable prices" could be used against me.
But to brake the encryption, feel free to use this program, Shiny Metal Brute Force Crypt Cracker version 3.1.9:
#!/usr/bin/perl
#
# Shiny Metal Brute Force Crypt Cracker v3.1.9
#
# Copyright (C) 2001,2002 shiny@key.salt (shiny@output)
# http://slashdot.org/~Shiny+Metal+S./
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General
# Public License along with this program;
# if not, write to the Free Software Foundation, Inc.,
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
$x=substr$q,q,0,,q,2,if$q=q,plfeY04jaJnYI,;for
(++$_..$_<<3){qq,$q,eq crypt$_,$x and die
qq,$_.$x,for q,a,x$_..q,z,x$_}
When you do, just contact shiny@output. This program is free software released under the GPL (which is (the version from 2002-02-28 08:06:10 +0100 last modified on 2001-07-15 13:13:30 +0200) valid HTML 3.2 and valid HTML 4.01 Transitional (except DOCTYPE which says HTML 2.0 and Character Encoding which is undefined)). Let me know when you find this program useful or otherwise valuable to the community.
Thanks, that's nice to hear. :)
I'm keeping a copy too,
and maybe one day I'll make a website from it.
It's good to know that people actually find it
interesting.
These are all important things, but
unfortunately most of web designers
don't care about them.
When my Lynx or
Galeon
can't render a website
which I absolutely have to see
(and it's the only place with the information I need),
I can always use Netscape and
everything is fine (except for microsoft.com which usually crash my Netscape for some reason).
But there are people who can't use Netscape
or Internet Explorer on their
Braille terminal or speech synthesiser
and they are effectively unable to use
most of the Web.
That's very sad.
We have 21st century,
all the informations they need are there
on-line,
but they can't reach them because of
web designers ignorance.
There are no borders for them other than
ignorance of web designers.
Very good one, I didn't know it before. It reminded me ESR's HTML Hell Page: How not to design junk Web pages. I see it has changed a lot in the last few years since I last saw it. Now there are many things from my post (or maybe in my post there are many things from HTML Hell), but I'll still tell you about it even if it makes my comment less insightful. ;) So, the HTML Hell Page is surely worth reading, there are also links to other similar websites:
I haven't seen all of the above links yet, but I'm sure they're interesting.
Thanks. I knew about it, but I forgot the name. It's a great tool. But there's one thing I don't like about Bobby, it's the license:
They say on the main page:
But the downloadable version costs:
I think it's exactly the kind of software which should be released as a free software. Yes, I'm a free software freak, so in my opinion every software is exactly the kind of software which should be released as a free software...
But this is software made by "a not-for-profit organization whose mission is to expand opportunities for people with disabilities through innovative uses of computer technology".
I could tell my employer:
-- Hey, maybe we could install Bobby on the servers?
-- What's that?
-- It's a program to expand opportunities for people with disabilities.
-- Does it cost anything?
-- It's free-as-in-beer.
-- Sure, why not.
but when I tell him that it'll cost him $3k per server... You know what the answer would be even if we only need a single user copy for 100 bucks.
Bobby would serve its purpose much better if it was released as a free software. I'd be proud to contribute patches to Bobby, as I'm sure would lots of other people, and best of all, much more people would use Bobby. If there is any place for proprietary software, it's not software which "was created [...] to help [...] identify and repair significant barriers to access by individuals with disabilities."
In other words: great idea, fatal license.
Good point, it's a very important thing which I didn't say about at all. I noticed that I wait the same time for the average website to load today on 768kb/s DSL, as I waited few years ago on 28.8kb/s modem.
I didn't know Gifbot. It's great, because people who don't understand the image compression techniques (i.e. most of people making personal webpages) can improve ther graphics and save time and bandwidth. It only lacks PNG output which is important to me, not only because of the GIF problems, but because it's a great format, even recommended by The World Wide Web Consortium and it has Adam7 interlacing feature for great progressive loading on slow connections, very good for the WWW (see this image or this one if your connection is to fast to notice the effect), read more about Adam7 interlacing on stl.caltech.edu Introduction to PNG.
What I would add about the graphics is to first of all, always use JPEG for photographs, and always use PNG for computer generated graphics (logos, headers, text, screenshots). Of course there are sitiations when it's better to use PNG for photo or JPEG for something generated (like rendered landscapes), but for most of situations (especially for usual homepages) this rule works great: JPEG for photos, PNG for logos.
People sometimes use JPEG for flat few-color logos, which looks terrible on the hard edges and solid color areas. People also (however not so often) use PNG or GIF to save photos, and they are ten times larger than JPEG of the same quality.
My personal choice for editing web graphics is The Gimp, it's a great tool especially for web designing purposes. It has a great JPEG saving dialog, where you can set different quality values and see the real-time preview, so you can save at the lowest quality (highest compression) when you don't see the difference, You can also set subsampling type or DCT method and restart markers for more advanced users.
I almost forgot! See the Cooltext.com:
They use Gimp as the backend so it's a great introduction to Gimp power as a web graphics authoring tool. Everyone should check out Cooltext, you can make great logos in few seconds. Great for lazy webmasters who want to have nice websites with no effort. Great preview of Gimp.
Speaking about the software, another great tool I use daily is ImageMagick. The best set of programs I've seen for conversion, optimizing and compression of lots of pictures at the same time. Once I used it to automatically scale, stretch contrast, add logos, compress and save over 10,000 pictures. It took over two days to my PC back then, but it was two days of rest for me. It would've taken me weeks if I'd had to do it manually.
Important links: PNG home, PNG at W3C, JPEG home, JPEG at W3C, The Gimp, Cooltext, ImageMagick.
Great, I wrote another comment for ten screens, while I should work instead... But what can I do, when I have a subject which is one of the main areas of my interest? Actually I didn't realize that I have so much to say about web design, maybe I should write a book, teach or something... It reminds me a funny situation I had few months ago:
A friend of mine phoned me once and asked:
-- Tell me, how do you make websites?
I saw all of my life scrolling before my eyes. I was trying to figure out where to start my answer, and after ten seconds of my silence, he said:
-- But hurry up, I'm using a cell phone.
Here I started to laugh like a mad man, and I couldn't explain him why I laughed when he kept asking me, because I couldn't stop laughing.
He really thought that I could explain everything to him in few minutes... Later I told him, that I had been learning how to make websites for many years, and now he's proud that he's the man who asked me to summarize many years of my life in few minutes. I tried to give him few books but he thought it'd be faster and even when I suggested Netscape Composer, it wasn't worth the effort for him... :)
Great story, I always laugh when I remember it.
Thanks once again. It's good to know that there's someone who likes it more than the moderators. :)
From the last minute: I just found The greatest WWW page ever!
-
Content
-
Animations
-
Valid HTML
-
HTML is not a typesetting language
-
<NOSCRIPT> tags
-
Remember about other browsers than yours
-
Remember about people with disabilities
-
Colors
-
Fonts
-
User defaults
-
Accept-Language
-
See good websites and learn from them
- debian.org
- gnu.org
- google.com
- dmoz.org
- w3.org
-
Try to learn from the good old books
-
Hire an expert, like
me
This is everything what I can think about right now. I'm sure many of you have already said the same things (I do hope so!) because I started writing this comment when there were only few other comments posted. Those are, in my opinion, the most important things about a good web design, so it's worth being a little redundant. Forgive me any typos, it's quite a long comment and I'm very tired (and very lazy).If you don't have anything interesting to say, don't even bother.
Do not use any animations or blinking text on a page, when there's any text to read, especially if they can't be turned off by simply pressing Escape or clicking Stop. I don't mind ads, as long as they don't interfere with reading, and animations do interfere.
Don't publish invalid HTML. Always use W3C HTML Validator and CSS Validator on your pages online. Always use HTML Tidy before your new pages are online. If you don't write HTML but you use a WYSIWYG Web authoring tool instead, and its output gives any errors or warnings when tested with HTML Validator, complain to the vendor of this tool you use asking to remove the bugs.
HTML or XHTML are for the logical informations about your document. CSS is for defining the look and feel.
The <NOSCRIPT> tag is not for writing "Your browser is bad, come back when you install better" but for providing the same functionality for browser without JavaScript or with JavaScript turned off.
(By the way, texts like "If you can see this text, that means you have no JavaScript" are as stupid as "If you can see this text, that means you have a kernel panic")
If your website is unusable without JavaScript, it needs a redesign. Don't use <a href="javascript:..."> links if you don't have equivalent <a href="http:..."> links inside a <NOSCRIPT>.
If your website is best viewed with any specific browser, or in any specific resolution, you're not a good web designer and worst of all, you don't understand what the Web is all about. See the Any Browser Campaign. Install Lynx (a text-mode browser) and see how your website looks like. If it's unusable, it's poorly designed. Remember to always use ALT property in IMG tags, aspecially in navigation buttons.
See the Web Accessibility Initiative and always try to meet the Triple-A, Double-A or at least Level A Conformance. Use Web Accessibility Initiative logos on your website, or just a text information about your level of conformance.
"The power of the Web is in its universality. Access by everyone regardless of disability is an essential aspect." - Tim Berners-Lee, inventor of the World Wide Web
People may access your website using Braille terminals or voice synthesis. Testing your website with Lynx is always a good idea.
Remember that 10% of your visitors are color-blind in some degree. Remember that black text on white background is the best combination for any text longer than few lines. Try to learn from the good old books, not from the magazines about the latest celebrity gossips.
Remember that the best font for text longer than few lines is a serif, variable width font, like Times. Try to learn from the good old books, not from the magazines about the latest celebrity gossips.
You should always use the default font face and default font size for the normal text content on your website. Just don't define the face and size, and it'll be ok. Remember that when you use size "-2" for the whole text on your page it means: "For the text on this page, use the font two levels smaller than what the user has chosen as his/her default and favorite size of font".
Use your own font faces, sizes and colors other than black on white, only for logos, headers etc., but not for the main text to read, longer than few lines and especially longer than a paragraph. Soemone has set a bigger size as a default for a reason - maybe he/she has a small screen, maybe he/she has problems with eyes, maybe he/she just likes big fonts - respect this decision.
If your site is multilingual, use the Accept-Language HTTP header. My browser sends Accept-Language in every single request and it's stupid that I have to click English version links, after I've already told it in my HTTP request. See the RFC 1945 - HTTP/1.0 (May 1996)
It's nearly 6 years old feature, still most of people don't use it. RFC 2616 - HTTP/1.1 (June 1999) defines much richer Accept-Language header (See section 14.4), but please, use HTTP/1.0 functionality at least. See www.debian.org which is a great example of this feature functionality.Try to learn from the good old books, not from the magazines about the latest celebrity gossips.
Contact me and I'll fix your broken website or supervise your webmasters for very affordable prices.
I would solve it in a different way: characters could be set to automatically aim to the enemies (as an integral part of the game, not as a cheat) but when he shoots, the decision if the target was hit is made by the server, depending on many factors (like if the character and target are running, if the character is tired, hurt, far from target, etc.). It would not only solve the auto-aim cheat problem, but would also make the game more realistic.
My point is that when you have online multiplayer game, where people from the whole planet play the game on their own computers, the only sane assumption is that sooner or later (usually sooner than expected) someone will use a hacked client. So if you don't want cheats, you can't depend on strictly manual skills, which would be extremely easy for a machine, like aiming to targets. Otherwise, you'll have big trouble when someone finally learns your protocol or alters the client binary. That could mean the end of fun for many people and an endless fight against cheaters for the game developers.
I like the idea of WorldForge project, which I think will be introduced with Mason and Werewolf, i.e. to integrate into the game the AI scripting of PCs with identical possibilities as the AI of NPCs. There'll be lots of ready to use scripts and some GUI script builder, as well as a possibility to write the scripts (currently in Python). So you'll be able to program your character to always run away when he's attacked by someone taller than him, or otherwise always instantly hit the offender in the face. But also more general tasks, like eat when he's hungry, buy food when he has no food, find food when he has no money, etc. That way when you don't play the game, your character can still do something useful, unlike most of MMORPGs where the character usually just stands still or disappear. Thanks to that, there's no point in cheating with the client by e.g. setting your character to automatically train his skills for many hours, because everyone can easily program his character to do the same, probably with just few clicks in the GUI.
Check out the Cyphesis, WorldForge AI/ALife engine. There's still not much of documentation, so the Cyphesis source code is the best reference.
So that's about the client itself. On the other hand, from the side of network protocol and the clean client-server architecture, the client never gets to much info, and it's never trusted to make any decisions, other than just send to the server what the character wants to do (not even what he actually does, just what he wants). I'll quote part of the Atlas protocol summary, my emphasis:
See also the Atlas Tutorial. The standard implementation of Atlas is Atlas-C++, the source code of which can be great for anyone who wants to learn multiplayer games related network programming, and high quality network programming in general. For more about Atlas, check out the Battleplan and protocols at worldforge.org mailing list (see the archives of scripting@ for discussion before 1999, and protocols@ for later and actual discussion).
So, the point is that not trusting the client is the fundamental aspect of game design, not just a feature to be added later. There are and will be games designed around open protocols (where you can easily read and change the client-server traffic in both ways), free software clients (which you can easily change), and servers (which you can easily read and find out how they work), but those games won't have problems with cheating because of their design, not because of security through obscurity like in most of games today.
That's why I always talk about WorldForge when there's a discussion about multiplayer games design, security and cheats - these folks do it exactly the way how it should be done.
Here's a printer and human friendly version, for those of you, who don't like half-screen animated ads inside the text you try to read.
I am a young programmer writing free software in my free time as a hobby. Obviously, I don't search the whole patent base before writing every line of my code. I write something which happens to be patented. I release my program under GPL. My program is used by ten millions of people. The patent holder sues me, because ten millions copies of my program use his patented idea, which he can license to me for 10 cents per copy. Would I go to jail because I don't have million bucks? And I don't think the public opinion would see it as evil corporation suing kids inconvenient for their monopoly, it would be rather seen as evil hacker pirate anarchist punks versus good honest tax-paying corporation hiring thousands of employees.
How would such situation look like in the United States today? Does it mean that people who don't have fortune for lawyers, for searching the patent base every day, for legal defense and for potential licensing fees, should not even start programming because it can be to dangerous? Or should they emigrate to East Europe and South America, seeking freedom?
People seem to not understand that copyrights are enough for protecting software. It's like Van Halen patenting the tapping technique, because he thinks that copyright is not enough to protect is "intellectual property". He no longer needs to be good at it, because now he'll be the only one permitted to use that technique. Unfortunately people don't understand software and can believe in bullshit in which they would never believe if it was in the field of music. And believe me, Van Halen's solo from his first album was much more innovative than LZW, not to say about one-click and other farce.
Even if the patents will be given only to truely innovative ideas it's still to dengerous for me to write free software.
I see lots of ignorance about this subject, so let me quote the Statue of Liberty definition from Wikipedia:
I hope this will help a little.There are two companies sharing the same place. The first one on the one side of the store sells only Windows computers, while the second one on the other side of the store doesn't sell Windows at all and installs Debian, FreeBSD, OpenBSD, NetBSD, SuSE, Mandrake, Corel OS, Caldera, Red Hat, HP-UX, Solaris, AIX, IRIX, BeOS, etc.
From the perspective of the customer, you just enter the store, play with different computers and buy one, while being exposed to BeOS and other non-MS solutions. This is exactly the same effect which would be without Microsoft OEM licensing at all.
So, what is the problem with that solution? Would it be to expensive to split the company? Would it be against MS licenses to have your store near the store selling computers with other operating systems? Any other problems with such solution? I hope someone has already thought about it.
What would be the advantage? Your store would be known as the store with lots of totally new technolgy (from the MS-only consumer standpoint). People could be interested in playing with BeOS or Linux and even when most of them chose Windows, you could still have more customers thanks to your interesting offer, thus making more money.
Have anyone done anything like this before?
But really, I wouldn't use Be by myself, I use only free software. But I did tell about it to my friends who use Windows. It's not that I think Be is more free or better than Microsoft, but because people should know that they do have a choice when it comes to the OS. And they usually don't know that. I would love Be to win this case, not because I want to hurt Bill Gates. When Microsoft wins, nothing will change. When Be wins, it could change a lot in the minds of people, who never thought about the OS when they were buying their PCs. The choice is a Good Thing, but people have to know about it in the first place. Otherwise nothing will ever change. When people start to ask in computer stores for that Be thing they heard last night in TV news, it will be a great step forward.
It is not EULA, the end-user doesn't have to accept the license to be able to use the software. But when you want to redistribute the software, you have to accept the license, because you have nothing else which would allow you to redistribute it (you may have heard about the copyright law).
You are probably not the only one who doesn't know that, so let me quote the GPL, Section 3, emphasis is mine:
People will take you much more seriously, when you know what are you talking about. Really, you'll be nicely surprised. When you want to criticize the GPL, read the GPL first. I hate to say obvious things, but it seems to be the only way for many people to understand the most fundamental rules of any kind of discussion. If any license has no legal meaning (which is not true with GPL, otherwise Microsoft wouldn't spread FUD and therefore you wouldn't be so biased now), the license doesn't change magically into original or modified BSD license (I don't know which one you refer to). When authors publish their work without explicit license (or with illegal license), there are implicit restrictions set by the copyright law, which I strongly urge you to read about.What about Google? Is it blocked as well? Because you can see cached cnn.com or any inconvenient geocities content there.
But seriously, I suppose they don't remove anything from harvested addresses. There are lots of obfuscated emails on the web, like user-no@spam.please-example.com or "contact shiny at key dot salt after cracking crypt(3)'ed plfeY04jaJnYI", where it would be almost impossible to to make a working algorithm understanding every method. But what is possible is collecting such addresses with SPAM in them for future manual processing, it could be even quite fast, if done well. However I don't thing they do this, for a simple reason: they don't want trouble makers. Trouble makers won't buy anything anyway and can cost them problems with ISPs, when they report every abuse. For the same reason there's no spam in my admin@ mailboxes.
This is a slogan from Spam-Free Emailing Service : "No need to worry about losing your ISP or getting into trouble, we do the mailing to safe email addresses only." So i think they don't want to spam people who have NOSPAM in their email.
For more spamming services, search Overture for "bulk email" and see such matches as e.g. "Increase Sales in 2002 with Bulk Email! 33-million e-mail addresses with order. Send up to 50,000 e-mails per hour with Prospect Mailer. Prospect Finder collects e-mail addresses based on keyword, profile or location. Free demos." for which people selling those emails are paying Overture $5.15/click (so don't forget to click them all every day!).
(if you want to automate clicking check out the Spam Victims Revenge, a little script which search Overture and click links with random delays. I don't know if it works, I suppose that Overture has more sophisticated methods to count clicks, but it's a cool idea anyway. However the manual method has to work, so imagine slashdotting these paid links... it could be the end of spam forever...)
But here's an idea: we can just call 1-800-359-0156 and ask if they have trouble makers on their lists...
But it's not so important to me any more. You may however want to visit CPAN and search for such distributions as CGI.pm, DBI, DBD*, and the core Perl modules, and read them, to see lots of extremely well written Perl code. It's really worth reading.
First, it's pointless to collect such addresses, because most of domains should have valid admin localpart, so they could just send spam to admin at every domain in the world.
But I suppose, that spammers have usually much more trouble with admin@example.com than with supermasterofdisaster199@example.com, so they just remove admin@* from their databases.
Google search for my admin@ address gives about 1000 matches (I use it on many mailing lists and it's available in the mailing lists archives - probably the first place where spammers are looking for addresses), still I have not yet got a single spam to that address.
I had an idea once to use addresses like admin@username.example.com or even admin@username.spam.example.com (spammers may remove addresses with spam or nospam etc. in them - just an idea, I had never checked it, but sounds reasonable).
My another idea was using user@fbi.gov.example.com or something like that, in hope that spammers don't spam *.gov addresses, and also *.gov.* addresses (to match in other countries, like *.gov.pl).
I haven't tested it because I see no need for it with my admin spam-proof address.
So I suggest you to make a test with address admin@user.spam.abuse.gov.yourdomain and see if you get any spam there.