Skip to content

Ecce Signum

Immanentize the Empathy

  • Home
  • About Me
  • Published Works and Literary Matters
  • Indexes
  • Laboratory
  • Notebooks
  • RSS Feed

Category: Programming

Blast! Drat! And Other Such Epithets

2003-08-13 John Winkelman

Yup. It hit me. Blaster, that is.

I was running an update of my firewall, and as part of the test to make sure everything is working properly, the firewall shuts itself off for about 1 second. In that 1 second Blaster got in. The firewall – which came back on immediately – said “Do you want to allow msblast.exe to access the internet?” I said “NO!!!!!!”, which effectively removed Blaster’s teeth.

So I now have a GREAT deal of respect for Zone Alarm. I had no idea it was doing such a good job. Getting Blaster the Hell of my PC will be much easier than the many horror stories I have heard have led me to believe. If it can’t access the int0rw3b it can’t do much damage.

On the other hand, I have nothing but contempt for the idjits at Microsoft who allowed the release of this Swiss cheese operating system.

News reports say M$ is spending millions to hunt down the people who write these viruses, while doing little to patch their product unless people complain. This reminds me of a standard sanity test: You walk into a room and see that a faucet is on and a sink is overflowing onto the floor. Do you (a) run to shut off the faucet, or (b) run to grab a mop? Microsoft is (c) running for the person who turned on the faucet.

Getting rid of the person who wrote the virus doesn’t alter the fact that the virus has already been written. The law does not prevent; it punishes.

Dear Microsoft: You are responsible for everyone who releases a virus which affects you software. That fact that it is vulnerable is YOUR FAULT. The fact that you released a product with HUNDREDS OF KNOWN VULNERABILITIES which cost users HUNDREDS OF MILLIONS OF DOLLARS A YEAR is contemptible beyond redemption.

Dear Microsoft: I use your product, which I paid for, and that makes me your GOD. As your GOD, I command you to, in the next 24 hours, fix everything that is wrong with every one of your products, and do not release a single line of code to the public until everything you do is 100% perfect. Your opinions, wishes, livelihood and health on this matter simply are not important.

And as for all you Mac and *nix users laughing in your sleeves: Shaddap.

Posted in Programming comment on Blast! Drat! And Other Such Epithets

Boooooo-ring!!!

2003-07-06 John Winkelman

Minor changes to es.org: Spun off the adventure game to its own subdomain . Combined all photo links into one (Flash 6 plug-in required).

Earlier today I stood outside in a torrential downpour. For about half an hour. It was wonderful.

Posted in Programming comment on Boooooo-ring!!!

Games and Nostalgia

2003-06-24 John Winkelman

This post will mostly only be interesting for Flash coders and game developers

I have spent the past several days working out various functional specifications and data models for the Flash Adventure Game. So far, I have rudimentary versions of the following:

-XML heirarchies
-Tile placement engine
-dynamic bitmap object masking

I am particularly proud of the object masking idea.

My ultimate goal to create a game (engine) which can be modified without the requiring that the user in question have access to Flash. All that should be needed is a graphics program which can pump out .jpg files, a text editor with which to produce XML, and (maybe) an FTP program to place files on a website.

The dynamic masking is the key. It compensates for Flash being unable to dynamically load .gif or .png files; these formats support alpha transparency. .jpgs, which can be dynamically loaded, do not support transparency. But they can (using the Flash Drawing API) be masked. All I need to do is feed in the appropriate coordinates (in XML; not unlike creating an image map), and skaboom, I have one highly detailed, appropriately transparent sprite!

A lot of this reminds me of the hundreds of hours I spent back in the 80s writing games on the Commodore 64. Back then, there were no graphics applications so we had to program our images in hexadecimal. And the images, egregious hacks aside, were all 24×24, and one color. Or 12×24 and three colors, but all of the colored images had to share one of the colors.

In other words, this is a real walk down memory lane.

As I have useful information I will post it in an open directory. I will post some code after it is debugged. As always, suggestions are welcome .

Posted in ProgrammingTagged Flash, game development comment on Games and Nostalgia

Photos Part II

2003-05-09 John Winkelman

Added some serious functionality to the Flash photo album application. It is far from perfect, but still, I think, something of which to be proud.

Let me know if you come across any serious bugs, or have suggestions for improvement.

By the by, I discovered that an image which is dynamically loaded into a Flash movie is cached exactly as if it had been loaded into an HTML page. I love Flash.

Posted in ProgrammingTagged Flash comment on Photos Part II

A New Project

2003-05-08 John Winkelman

Things were kind of slow at work today, so I whipped together a little Flash photo album . It is functional, but far from finished. Considering it took me a day to build, I am kind of proud of it.

Posted in ProgrammingTagged Flash comment on A New Project

Morphing

2003-05-05 John Winkelman

Do not leave this page. There is nothing wrong with your browser. There is nothing wrong with this website. I am in the middle of a massive re-design, and I figured What The Heck, I will do everything out in plain sight. Be patient; it will be worth the wait.

By the by, X-Men 2: X-Men United rocks. Go see it. Now.

Posted in Programming comment on Morphing

PHP, XML, DOM, and Other Such Acronyms

2003-04-24 John Winkelman

For one of the projects at work I dove into the DOMXML capabilities of PHP. DOMXML is a close-to-w3c-standards way of manipulating XML in PHP. Or it is now that Modwest has updated their version of PHP to 4.2.1. It went like this: I sent an email on Monday saying “Any plans to upgrade etc. etc. ?” And they said “Yup. In the next couple of weeks.” and then they said “Done” and I said:

$fName = $root ->get_elements_by_tagname("name");

…and it was good.

So: My next project is to redo the admin section of es.o to reflect the new powers at my disposal, and maybe post a short tutorial on using DOMXML, because documentation for the thing is practically non-existent.

In other news, yesterday I picked up a library card at the newly-reopened downtown branch of the Grand Rapids Public Library.

Let the masses rejoice; reading is cheap again. My current borrow is In Search of the Perfect Language by Umberto Eco.

Posted in Programming comment on PHP, XML, DOM, and Other Such Acronyms

IT WORKS!!!!!!!!

2003-04-16 John Winkelman

I….have COMMENTS!!!!!

And nothing to say.

More later.

later…

As I was saying, es.o now has commenting enabled for the individual blog posts. If you click on the title of a post (i.e. “IT WORKS!!!!!!!!![x]”), that will take you to the individual post page, where you may comment on my comments to your heart’s content.

I built the commenting feature using a combination of XML, XSLT, and PHP using the DOMXML capabilities, for which there is little if any documentation, so I pretty much had to make it up as I went along.

Right now I only allow plain text to be added in comments, although URLs will automagically be turned into links…provided they start with “http://” or “www.”. Perhaps once the migraine clears up I will add some simple markup options, a la VBScript – [i] for italics, [b] for bold, and the like.

So there you have it. Right now my brain is full to bursting, so I am going to turn on the television, which will turn my intellect into oatmeal, which will leak out of my ears, thus relieving the headache.

Posted in Programming comment on IT WORKS!!!!!!!!

IE5 is the new Netscape 4

2003-04-02 John Winkelman

Yeah, you heard me. Let’s all say it together this time:

Internet Explorer 5 is the New Netscape 4!!!!!!!!!

What would have been a three week build of a static site is instead a 5+ week build of a static site. Thousands of client dollars WASTED on an old and out-of-date browser based on antiquated technology. IE5. Perpetrator of the Padding Bug, the Egregious Box Model Hack, the Traveling Float/Margin Bug, among others.

I got started in this business during that single day in 1999 when IE4 and Netscape 4 were on even footing. At 9am the next day IE started to pull ahead, and (AOL paleo-reactionaries aside) Netscape 4 is now fast on its way to an unmarked grave. So now is the time to pick the next weakest link and start in with the Death of a Thousand Cuts.

IE5. New NS4. Particularly IE5 on the MAC, which though it has “Practically the best standards support of any mainstream browser” has specific bugs which make it impossible to write clean stylesheets. The fact that it INTERPRETS the code correctly does by no means suggest that it DISPLAYS the output correctly. It doesn’t.

There is a well-known IE6/PC bug when applying floats, that horizontal margins tend to be doubled. Spec a 10px margin to the left of a left-floated DIV tag, and IE6 will give you 20px. Sucks, but easily compensated for with a little math and a single alternate line of code.

Float a bunch of DIV tags in IE5/MAC and apply a 10px bottom margin to each. Force them to wrap around something like e.g. an image. Suddenly, the fourth DIV tag has doubled it’s bottom margin, turning an elegant grid into an unfinished tangram! And no global styleshete changes will alter the behavior!!!1!$@1!

So the solution becomes, target that one DIV tag with an egregious ajacent style selector, like div.container+div+div+div+div. Those of you who speak CSS will understand this. Those who don’t … just take for granted that IT WORKS!!!!

Reload the page and…beautiful. The DIV has been cowed.

But…but…there is another DIV tag, one row down, one column over…

20. Pixel. Bottom. Margin.

Everything below it: U.G.L.Y. You Ain’t Got No Alibi.

So we add another rule: div.container+div+div+div+div+div+div+div. Kick that sucker back in line. Works. But now…one down, one over. You guessed it. 20 pixels.

You know what? Fuck it. Fuck you, IE5 on the PC for not displaying dashed borders, and Fuck You and Everyone Who Looks Like You, IE5 on the Mac, for the Traveling Float/Margin Bug.

The days of putting stylesheet pearls before browser swine are OVER!

So join me, O my brothers and sisters, and scream it unto the heavens:

Down With IE5!!! Death to IE5. As Was Netscape 4, So Now Is IE5!!!!! IE5 is the New Netscape 4!!!!

There. I feel better.

Posted in Programming comment on IE5 is the new Netscape 4

Trip Toy

2003-02-13 John Winkelman

Oh, call me an insane genius, but I think this is kind of cool. I mean, I was going for a shading algorithm, and the next thing I know I’m drooling on my keyboard. Go figure.

Posted in ProgrammingTagged Flash comment on Trip Toy

Posts navigation

Older posts
Newer posts

Personal website of
John Winkelman

John Winkelman in closeup

Archives

Categories

Posts By Month

July 2025
S M T W T F S
 12345
6789101112
13141516171819
20212223242526
2728293031  
« Jun    

Links of Note

Reading, Writing
Tor.com
Locus Online
The Believer
File 770
IWSG

Watching, Listening
Writing Excuses Podcast
Our Opinions Are Correct
The Naropa Poetics Audio Archive

News, Politics, Economics
Naked Capitalism
Crooked Timber

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org

© 2025 Ecce Signum

Proudly powered by WordPress | Theme: x-blog by wpthemespace.com