Email Address Password
Remember Me

Or Create a (Free) Account.
2004JanFebMarAprMayJunJul Aug Sep Oct Nov Dec
2005 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2006 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Oct Oct
2007JanFebMarAprMayJunJulAugSepOctNovDec2007
2008JanFebMarAprMayJunJulAugSepOctNovDec2008
2009JanFebMarAprMayJunJulAugSepOctNovDec2009
2010JanFebMarAprMayJunJulAugSepOctNovDec2010
2011JanFebMarAprMayJunJulAugSepOctNovDec2011
2012JanFebMarAprMayJunJulAugSepOctNovDec2012
2013JanFebMarAprMayJunJulAugSepOctNovDec2013
2014JanFebMarAprMayJunJulAugSepOctNovDec2014

Wed 31st Jan 2007 @ 22:32 2007: Vista

Apparently there's a new version of MS Windows. Just thought I'd mention it.

Post a Comment               

Wed 31st Jan 2007 @ 13:16 2007: A Brief History of Microsoft and Novell

ArsTechnica have an entertaining summary of the MS / Novell controversy.

They've got words, but they're really not necessary, because they've also got it in pictures:











Post a Comment               

Wed 31st Jan 2007 @ 10:05 2007: A Brief History Of The Universe

A history of the Universe, the short story:

'Hydrogen is a light, odorless gas, which, given enough time, turns into people.'

(http://www.savageresearch.com/humor/historyOfTheUniverse.html)

Post a Comment               

Wed 31st Jan 2007 @ 01:25 2007: Nobody loves me

Something inspired me to start a "typical" blog on WordPress, as a place to dump things I've learned, and which won't be of any use to me any more as I seem to be turning in to a corporate drone with no need for technical knowledge. The shell tutorial gets about 3,000 hits a day, and when I hear bloggers moaning about getting very few visitors, well, I feel a bit sorry for them. I have now joined their league; even with a link on the left *and* right of my pages, I've peaked at 15 visits in one day, after a fortnight!

I reckon this advice about "persevere; keep doing it for 6 months before you start judging whether or not the traffic is worth it" that you hear may be right, after all. I'll be interested to see how it goes. It's too early yet for Google to give it a PageRank or anything, though that will be interesting to find out.

6 Comments               

Tue 30th Jan 2007 @ 00:41 2007: WinXP: Ready for the desktop?

I wish that I had got around to documenting my experience of Windows XP as clearly as this guy. In late 2005, I hit Windows as a daily OS for the first time in over a decade, and it's a painful hit.

MadPenguin Review of Windows XP ... it goes to 2 pages, but it's worth it.

If anything, he's quite lenient. With XP Pro, Office Pro, and various other stuff that working for one of Microsoft's biggest partners provides, (and adding CygWin, PuTTY, FireFox and all the rest necessary to make Windows even vaguely usable), I find Windows XP to be all-but-impossible to live with on a daily basis. And of course, any add-on software is of "avoid at all costs" quality, at best (which, I am sure, in itself, convinces existing Windows users to be fearful of "FLOSS" software)

And then I find articles like http://blogs.zdnet.com/hardware/?p=133, dated Nov 2006, saying that "The world just isn’t ready for Linux" (getting the question the wrong way around to start with; what he really means to say is that Linux isn't ready for "the world"). That's the kind of article we saw back in 2001; I don't even really want to link to the article, as it's clearly written for publicity value as opposed to genuine debate (hence, no link, depending on your feed reader).

The "arguments" provided in that article were straw-men five years ago; then, he seems to be confused about the year (2006, at the time of his writing), and about how he started the article in the first place (pro-Windows, or pro-Linux?): "One thing is for sure, 2006 [sic] will be the final year of Microsoft dominance at the PC Doctor HQ. I'm already investigating ways to incorporate Linux into the system. "

Post a Comment               

Sun 28th Jan 2007 @ 01:29 2007: I call Bullshit

I got this in a company-wide email this weekend.


Due to recent legislative changes in the UK, all employees are required to have full company information included in their email signatures.

Under the new legislation, companies in the UK are now legally obliged to list the full company name, company registration number, place of registration (e.g. England / Wales), registered office address (plus geographic address if different) and VAT number on their websites, email signatures and order forms.

If <COMPANY> fails to act on this legislation we will be in breach of the Companies Act and will be at risk of fine. It is therefore essential that all employees ensure their email signatures contain the relevant information.


The suggested blurb in the signature includes the familiar

Unless you are the intended addressee (or authorised to receive for the addressee) you may not use, forward, copy or disclose to anyone this email or any information contained in this email. If you have received this email in error, please advise the sender by reply email immediately and delete this email.


How on earth is anybody supposed to know whether or not they are the intended addressee? For fick's sake, there are 4 Steve Parkers at my place of work; if I get an email which was intended for another Steve Parker, I can't even forward the email on to him. I have notified my namesakes that their missent emails will be going to /dev/null, and hopefuly they will do the same for me.

I've not heard of any such legislation; I call bullshit.

2 Comments               

Sat 27th Jan 2007 @ 23:18 2007: PuTTY

Just a quick note for those who haven't heard. There's a new version of the excellent MS-Windows ssh/sftp/scp client PuTTY available, in version 0.59:
http://www.chiark.greenend.org.uk/~sgtatham/putty/

The main changes just seem to be speed and largefiles support.

3 Comments               

Sat 27th Jan 2007 @ 01:18 2007: NTK

It's true.

Really.

Sit down before I tell you. It's not happened since last September. They went off and got all wooly and EFFish.

A New NTK Post

Okay, so there's nothing in it, but they do at least remember that they own the domain.

I've loved NTK for so long, I really don't want to see it die. But hey, my links page still links to segfault.org, which hasn't existed for years now. I'm just an eternal optimist.

Post a Comment               

Fri 26th Jan 2007 @ 15:14 2007: HD-DVD Cracker interviewed



Interview with muslix64, who announced on Boxing Day that he'd broken the new HD-DVD Digital Rights Management (DRM). This new DRM had been designed to be stronger than the Content Scrambling System (CSS) which was defeated by "DVD Jon" and friends a few years ago.

He then went on to defeat the Blu-Ray DRM, just for good measure.

As the diagram (courtesy of slyck.com) shows, muslix64 simply bypasses the strong AACS algorithm and steals the key from the memory of a PC-based player.

AACS are playing it down.

Hollywood can revoke stolen keys, but then everyone who owns that player will lose out: If someone gets WinDVD's key, for example, the industry can put out future disks without WinDVD's key on the disk. The disk would then fail to play under WinDVD. Would they really break WinDVD entirely, for all users? Would WinDVD stand for it? What if it was Toshiba, Panasonic, or Sony? If one person finds LG's key, do all of LG's thousands of other customers' players turn into useless lumps of plastic overnight? Would LG's customers stand for that? Would LG stand for that? Again, what if it was an even bigger player - Sony, for example?

Hollywood aren't going to get away with revoking keys, there would be a consumer revolt.

4 Comments               

Thu 25th Jan 2007 @ 20:30 2007: Public and Secure content

I know that they don't speak English that side of the water, but the Uni of Toronto have an interesting view of what "secure" means. To be fair, I can't see any differences in the search results, other than that the combined search seems to take slightly longer (but doesn't say how many results it found)

Post a Comment               

Thu 25th Jan 2007 @ 16:02 2007: Need A Operating System

Hilarious GetACoder request. Read the comments, too (or just search for "crack"...)


Budget: $1000 - $3000
So I'm posting for a rather large project. I need someone to program me a new OS (Operasting System) that looks different than Ms Windows XP etc. but has the same style. It does not need to run on a mac but all the other PCs. It's supposed to have a stylish look with clear edges etc. And ITS NOT SUPPOSED TO BE JUST A REDESIGNED WINDOWS as I'm going to sell that operating system later on. It's going to be called BlueOrb.

These are some important points :

It should have ALL THE FEATURES that Windows Xp Professional has.
ALL the files that run on Windows XP ust also run on the BlueOrb OS.
It must have a very user-friendly interface (like MS WINDOWS XP)
When it gets Installed, the user needs to insert a serial number.
It HAS to be HACKER SAFE!
It must be quick and good looking.


Note that I only accept quality work and do not want any quickly done BS.

Post a Comment               

Wed 24th Jan 2007 @ 23:42 2007: Downloading from the BBC

http://steve-parker.org/code/sh/bbc/

We all love the BBC. Here in the UK, it's a national requirement. Anybody who doesn't watch/listen-to at least 3h of BBC content per week is shot.

Oh, wait; that's if you don't pay the license fee. Personally, I pay the fee quite happily; I get far better value for money from the BBC than any commercial channels available (why *do* I pay Sky to advertise expensive tat to my children?)

The BBC are wonderful , and they offer a "Listen Again" feature for nearly all their radio programmes. Since most programmes are either daily or weekly, if you miss one, you've lost it forever.

I think that the UK law says that BBC license holders can take and hold recordings of BBC output for 30 days after broadcast. IANAL. Get your own lawyer.

If you have MPlayer, wget and (optionally, if you want MP3, Lame) then this script should do the following for you:

- Download the schedule (well, actually, the "ListenAgain" page)
- Describe all programmes / your specified programme
- Download your programme and save it locally as a WAV or (if possible) MP3

This script is very brittle; if the BBC change any of a few key items of their HTML formatting, this script will fall apart. It's also somewhat biased around my personal preferences; I listen to Radio 4 about 70% of the time, so I add "--preset voice" to lame. If I wanted pure audio quality, I'd change that. I don't know a lot about MP3; I suspect that each channel would have its own default option.

The BBC stations supported are:

-1 Radio 1
-2 Radio 2
-3 Radio 3
-4 Radio 4
-x 1Xtra

Anybody know of any other feeds? BBC 6 and 7 seem to have a different URL and HTML structure than the above, however it was only from the geekserver.net script that I learned about the http://www.bbc.co.uk/radio/aod/networks/__RADIO_STATION__/audiolist.shtml URLs.

Here's the script (and its essential readmes) again:
http://steve-parker.org/code/sh/bbc/

Usage:


bbc.sh (c) Steve Parker (http://steve-parker.org/)

bbc.sh [ -1|2|3|4|x ] [ -d ] [ -D ] list | progname
-1,2,3,4,x : selects radio station
-d : Don't download the schedule (why?!)
-D : Enable Debug mode.
progname : downloads the specified programme.
list : Displays a list of programmes
(you probably want to run this through "| less" or "| grep progname"
Sample output:
rhcpdoc : Red Hot Chili Peppers - From Skateboards to Stadiums
- Tracing the story of the band over the last 20 years.
To download this, you would run:
bbc.sh -1 rhcpdoc
You will end up with a file called rhcpdoc.mp3

Station is tuned to : radio4

It's easier to play with than to explain. The BBC tend to reduce programme names into a lower-case, no-spaces (basically, URL-friendly) format, so if you want Terry Wogan's Radio 2 morning show from Thursday, then do this:

$ ./bbc.sh -2 list|grep -i wogan
r2_wogan_wed : Wake Up to Wogan
r2_wogan_mon : MON
r2_wogan_tue : TUE
r2_wogan_wed : WED
r2_wogan_thu : THU
r2_wogan_fri : FRI
$ ./bbc.sh -2 r2_wogan_thu

Post a Comment               

Wed 24th Jan 2007 @ 20:48 2007: Pirate Bay

BBC Radio 4's consumer affairs programme You and Yours had a good 17-minute piece about "internet piracy" today. In honour of the subject, I might as well include the mp3 of the segment :-)

The players were:



The BBC offer the MPAA and FACT a fair crack, but they also hear what the Pirate Bay have to say, and Bill Thomson has a pretty fair voice, pointing out some of the easier holes in the MPAA/FACT arguments.

Post a Comment               

Mon 22nd Jan 2007 @ 00:54 2007: OSes and Printers; the HP 3180

Our DeskJet5150 ran out of black ink a while ago; then it ran out of blue ink, leaving it only with yellow and red. New cartridges would have cost around £45.00 (new or refills). A new HP 3180 cost only £40.00, so (with some moral fumbling, not really understanding what it all means, to be honest), we paid less and got a new printer, with an additional "scan" functionality, to boot.

I was gloating about how easy it is to install a printer under Linux with CUPS these days.... System/Admin/Printing/New_Printer, which says "HP 3180", click Next, Next, Finish, and it's done. No CDs required, no reboot, nothing. It Just Works ™

Having spent a whole 30 seconds getting it to work on Linux, I then tried to get my (work-provided) Windows XP laptop to talk to the new printer. I knew that I'd already configured Samba to share all printers, and it worked, then. Oh, a new printer? Lots of hangs (and of course, if part of Windows Explorer hangs, then all of it hangs; if you kill part of it, then all of it dies, including the desktop. I've lost count of how many times I've rebooted the laptop, trying to get the thing to work).
Windows print test page
Having eventually got it to work (I've no idea quite how, I'm afraid - sorry, nothing to pass on here, I'm just happy with "well, I can print from my work laptop if I need to"), I remembered that the new printer is a scanner, too, so "Er Indoors" will at some point ask how to scan in a new image.

Welcome HP Linux Imaging and Printing to my life. It seems to start up some kind of daemon on my Ubuntu install anyway; I've never got around to questioning what it provides, but not scanimage, apparently. It's got an automatic install script, which detects the distro (Ubuntu, in my case), works out what to do (apt-get install), and does it. I don't know how that can go wrong, but it did. Lots of strace, "rm /var/lock/", later, I can finally do a scan from the device by the command line. Now, finally, xsane does the job.

So; a few hours later, it's printing after seconds, shared with Windows after a few hours, and scanning after about 45 minutes of messing about with HP's (misguided) impression that they know what they are doing. Has it installed BLOBs? Presumably. Otherwise they'd just provide a standard script, not a self-extracting archive.

So .... The HP "Multi-Function Device" 3180. Is it good? Yes, undoubtedly. It's cheap, too - cheaper than replacing an older HP 5150's cartridges. It can also scan (if you can convince Ubuntu, with maybe some expertise required). Having said that, from a Windows client which already knew that \\ELVIS\ had printers, Windows didn't do too well at finding the new printer. I don't actually know what I did to get it to recognise it.

Two things I have never enjoyed working with, are Tapes and Printers. They're just awkward devices. Too unpredictable. That's what I like about CUPS (when it works), but as a rule, I try to stay away from printers and tape devices. Scanners are a subset of printers, with added complexity. Still, it's working, and it's only cost a whole evening.

Linux time: <1h; Windows time: >4h.

How likely am I to print to this device under Windows? Well, whenever OO.o and friends can't deal with MS Office file formats, so... virtually never.

1 Comment               

Fri 19th Jan 2007 @ 14:11 2007: MS/Linux

(right-click for full-sized 600x800 image)

Post a Comment               

Thu 18th Jan 2007 @ 15:49 2007: 1900 and all that

I missed this discussion last summer; it seems that Excel 2000 incorrectly assumes that the year 1900 is a leap year - or, more accurately, MS policy has been, since the birth of Excel, and now remains indefinitely for backwards compatibility, that all versions of Excel deliberately assume that 1900 was a leap year.

The rules: Every four years, it's a leap year. If it's divisible by 100, then unless it's also divisble by 400, it's not a leap year.

So...

YearLeap Year?
1900No
2000Yes
2100No
2200No
2300No
2400Yes
2500No
2600No
2700No
2800Yes


Excel had to be compatible with Lotus 1-2-3, which needed to fit into 640Kb, so it just "cheated" and came up with a solution that worked from 1st March 1900 - 28th Feb 2400. It didn't deal with dates before 1900, and neither does Excel. (Really. The Epoch is 1/1/1900, and there's no going back before then.)

So 1900 looks like this:
DateFrom EpochWEEKDAY()Notes
27/02/190058MonNooo! The 26th was Mon
28/02/190059TueNooo! The 27th was Tue
29/02/190060WedNooo! The 28th was Wed
01/03/190061ThuYes! Hurrah!

2000, 2100, 2200, 2300, all the way to 9999, all work properly. Here's 2300 as an example (not a leap year, in exactly the same way that 1900 is not a leap year):
DateFrom EpochWEEKDAY()Notes
27/02/2300146156Tue
28/02/2300146157Wed
29/02/230029/02/2300#VALUERight! There is no 29th. Excel can't convert this to an integer difference from the Epoch, so it just treats it as a string.
01/03/2300146158Thu


Note that this means that there is explicit code in Excel, today, which understands the correct rules for leap years, and which then says (effectively):

/* let's see if this is a leap year? */
bool is_leap_year;

/* get_leap_year_status knows **ALL** the rules, and gets it right, according to the Gregorian Calendar */
is_leap_year=get_leap_year_status(year)

/* But we'll remain compatible with Lotus 1-2-3... */
if (year==1900) { is_leap_year=TRUE; }


Why does this matter? Well, some people will need to use dates going back to 1900 (it's only 107 years ago; there are many people still alive over 107 years old). But also, MS influenced the Oasis OOXML standard, to get them to say in their specification:

For legacy reasons, an implementation using the 1900 date base system shall treat 1900 as though it was a leap year. [Note: That is, serial value 59 corresponds to February 28, and serial value 61 corresponds to March 1, the next day, allowing the (nonexistent) date February 29 to have the serial value 60. end note] A consequence of this is that for dates between January 1 and February 28, WEEKDAY shall return a value for the day immediately prior to the correct day, so that the (nonexistent) date February 29 has a day-of-the-week that immediately follows that of February 28, and immediately precedes that of March 1.

So everybody else, whether or not they need interoperability with Excel, must now work around Microsoft's deliberate bug, if they want to work with Office Open XML. Microsoft's bug is now officially a standard. The Rob Weir site linked above includes a comment that sums it up nicely:

Q: How many Microsoft employees does it take to change a light bulb?
A: None. Darkness is the new industry standard.

Post a Comment               

Thu 18th Jan 2007 @ 13:19 2007: Weather conditions


Subject: Weather conditions
Date: Thu 18/01/07 14:18
To: Cheadle site

Dear All,

Due to the weather conditions a tree has blown down blocking the drive to the court, you will not be able to get out. Stockport Council have been informed.

Thanks


D'oh!

4 Comments               

Thu 18th Jan 2007 @ 00:37 2007: Google Pack

I knew that Google had bundled various bits of stuff, like FireFox and Google Earth, into their
so-called "Google Pack", but that's it. Well, no, I'd heard of their "Desktop Search" crap, too,
which sounds very dodgy to me. I didn't realise that they had Ad-Aware, Norton AV, Acrobat Reader,
RealPlayer, GoogleTalk *and* Skype, and others too.

Maybe that is worth a quick plug:


Google Pack:
And also Picassa:


Post a Comment               

Wed 17th Jan 2007 @ 16:10 2007: Random Jingoism

Why People Think Americans Are Stupid

Yes, I know, it's silly and immature, and I really shouldn't post it...

2 Comments               

Tue 16th Jan 2007 @ 01:29 2007: Powers of Ten

The summary doesn't do the video justice.

Feeling small enough yet? The God who is interested in our DNA and cells, our situations and feelings, also created an entire universe beyond our understanding.

From what I have read, the "visible universe" may be about 0.95% of the actual universe. This video itself could be the first step.

God could try to blow my mind, but he doesn't really have to. He could just start by telling me 1% of what He's done,

4 Comments               

Sat 13th Jan 2007 @ 23:24 2007: The shame of it

Microsoft are now advertising on my site; presumably not deliberately (that is an option for advertisers), but I assume that this is simply Google's linking of the keyword "Linux" appearing on this site, and - aha; here's where it gets interesting - Microsoft paying for the keyword "Linux". Now, strictly speaking, I'm not allowed to encourage anybody to click on Google adverts on this site; I think that I am allowed to comment on the adverts shown, though; I think that the focus of the website (with its focus on Unix / Linux users and developers, and AFAIK no directly Windows-related material) should make it pretty clear that I don't expect such readers to click on such an advert anyway (hey, I've reproduced it here as a GIF which you couldn't click even if I asked you to).

All that it shows, I think, is that so many years after launching their "Get The Facts" campaign (feel free to follow that link for entertainment purposes), Microsoft are still prepared to pass some money on to such a small Unix/Linux advocate as myself to advertise their stuff.

Post a Comment               

Sat 13th Jan 2007 @ 22:42 2007: Forged "From: " address in spam

Some lovely people (I use the term loosely) have been using [random_characters]@steve-parker.org in their headers. The rate of bounces I receive is in the region of 50 per day. Presumably more than that are being sent; some postmasters realise that there is no point in even bothering to respond to the "From: " address provided by a spammer. Others simply haven't given the matter any consideration. Still others take stupidity to another level:


Hi, it's [name withheld to protect the stupid]. I finally decided I'd had enough of junk mail, and installed a fantastic application that gets rid of it all. Unfortunately, you are not yet in my trusted senders list!! The only way I'll get your emails is if you follow the steps outlined below:

Here's what you have to do:

1. Press Reply
2. In the body of the reply, type in my AntiSpam Passcode:
3. Press Send

When I receive this reply, I will know that it was really you that sent me the email and not a computerized spammer. I will then be able to receive all your mail. This authentication will be done only once.


This really compounds the problem more than the straightforward bounces. It has all the pointlessness of the standard bounces, it forces people who genuinely want to communicate with [name withheld] to jump through hoops to send him email, and it quite simply pees me off with the absolute assumption that I am a spammer (whether it's his own mother, or the owner of a forged "From:" domain). On the plus side, it confirms to me that the sender's email address is valid, so he might get more spam than before, which would seem like rough justice.

However, today I received a rather intelligent autoresponse, from an organisation not always associated with intelligence - the US Military:

The AKO SPAM checker determined that the message from

wbuqea@steve-parker.org with the following recipient(s):
[innocent_victim's_name_changed_by_steve_parker]@us.army.mil

was SPAM and was not delivered.

Your address was used as the from field when this message was sent to AKO; however, if you didn't send the message then it is likely that someone forged your from address (spam robots and viruses can forge your email address) If this message was not from you then we apologize; however, we are required to notify the sender in case our SPAM checker has incorrectly marked a message as SPAM.

If you are getting this message and your message was incorrectly marked as spam, please send the original message as an attachment to postmaster@us.army.mil so we can find out why it is being marked incorrectly.


This strikes me as having a decent level of clarity, explains the situation well, and whilst in this case it does bounce to an invalid address, it also allows for (and apologises in advance for) the possibility that the responder itself has made a mistake and added to the deluge of pointless email travelling around the internet.

So (to coin a phrase I don't think I have ever uttered before): Well done, the US Military! You've set a precedent that the rest of the world should follow.

Post a Comment               

Wed 10th Jan 2007 @ 23:28 2007: Lawrence Lessig backs down on Microsoft

Lawrence Lessig was one of the big voices in favour of the DOJ case against Microsoft in the mid-90s. He has now posted an article on Wired saying that I Blew It On Microsoft.

He says that he believed that "An OS is a standard – meaning that, over time, one tends to dominate.". I don't understand his logic here; he can't have been anti-monopoly on the basis that it was inevitable, while at the same time, it's no explanation for his current position, either. It is also factually incorrect; until MS Windows dominated the PC market, there is no historical precedent for such a phenomenon.

His point appears to be that since Linux has appeared as a natural competitor, we should have allowed market forces to deal with MS's dominance all along, so the DOJ (and presumably the EU) should never have intervened.

Lessig is a very clever man. No, he's an incredibly intelligent man. And I'm not. So I must be missing something, surely? Is he really arguing that he, the DOJ and many others should have sat and watched MS kill Netscape and all the rest, because

"it's okay; some Finnish student started a basic kernel a couple of years ago from his bedroom. Hey, there are maybe even a few hundred people working on it already! - that's bound to turn out to be sufficient competition for a ruthless, predatory multi-billion-dollar monopolist! Give it a decade or so, it might have as much as 5% market share by 2007. Who knows? Maybe Apple will update their OS with a UNIX base and pretty front-end - that'll give them another percent or two. Yeah, it'll be fine. Sorry for interrupting, Bill, old chap; you go ahead" ?!?


So: Who's been spiking Professor Lessig's drinks?

Post a Comment               

Wed 10th Jan 2007 @ 14:59 2007: Paper CD Case

Detailed instructions, with photographs along the way, of how to make a paper CD case, also an automated version which generates PDFs, which one of the original article's comments points to.

Post a Comment               

Mon 8th Jan 2007 @ 11:14 2007: How to give up cycling

How to give up cycling in order to reduce global warming

1 Comment               

Mon 1st Jan 2007 @ 13:04 2007: Happy New Year

Happy New Year to all

1 Comment               

Steve's urandom blog
Share on Twitter Share on Facebook Share on LinkedIn Share on Identi.ca Share on StumbleUpon
My Shell Scripting Book:
    Shell Scripting, Expert Recipes for Linux, Bash and more
is available online and from all good booksellers:


DefectiveByDesign.org