johnk's blog

Watada, Resister

I don't really do the political thing too much on this blog (intentionally), but this is a good video by Curtis Choy. It's living history. The next video is interesting - do college kids know about the internment camps.

Object-Oriented Parser for iCalendar

Been working on a parser for ICS files, and it's done in an OO style - so that parts of the data become instantiated as objects, and the parse tree is a hierarchy of objects.

Freelancers: they Vote but lack Health Insurance

The Freelancers Union says... 56,000 members, 48,000 in NYC. 92% registered to vote, 87% have voted, in high 60%s in local elections. They have a hard time stabilizing their income, and lack health insurance. Freelancer's Union
National Association of the Self Employed

Beyond Logic: great S.M.A.R.T. tool

Beyond Logic has a great SMART disk tool. It's only 18K, and dumps the data. Everyone else's is up over 250K.

Here are two outputs:

$ smart
SMART & Simple for Windows NT/2000/XP V1.01
Copyright 2001-2003
Opened Drive \\.\c: . .

SMART Enabled    : Yes
Model Number     : IC35L090AVV207-0
Firmware Version : V23OA66A
Serial Number    : VNVC02G3DAEXZT
Drive Size       : 80.000 GB

ID   Attribute                  Type  Threshold Value Worst        Raw Status
---- -------------------------- ----- --------- ----- ----- ---------- --------
[01] Raw Read Error Rate        Prefailure   60   100   100          0 OK
[02] Throughput Performance     Prefailure   50   153   153        238 OK

OOXML, counter-standardization

Read this site:

A site objecting to Microsoft's political promotion of their "open standard" years after the establishment of Open Document Format (ODF), a similar open standard used by the freely available OpenOffice and some other programs.

In response to the promulgation (and relative success) of the ODF formats, Microsoft is pushing OOXML, the confusingly named Office Open XML -- note the order of the two "O" words -- as an international open standard.

ODF is safer than OOXML, because the OpenOffice suite of programs is available in source code. The most popular parser for the ODF formats is always accessible to programmers, so they don't have to puzzle over the subtleties of the ODF.

OMFG, this is so true

The Nerd Handbook, at Rands in Repose.

One way to stay in control is to get the computer to tell you to stop working. Work Rave break enforcer.

I've been seeing RoHS all over. Finally found out it is the European anti-poison law. It's what prevents lead from getting into China-sourced goods in Europe. Our lack of a similar law leaves Americans eating lead and roofies. Nothing like a little NAFTA-esque reduction of anti-business regulations to poison the populace. Thank you, spirit of Ronald Reagan.

The Wacky World of Software Copyright

At the bottom of the page there's a little story that illustrates, partly, why the more politicized internet and tech folks have an aversion to copyright. Typically, copyright is used to defend authors works from plagiarism. In this scenario, it was used to protect intellectual property that, perhaps, doesn't merit protection.


Please note that some of the code for iSCSI booting of Windows has been temporarily taken out of the gPXE codebase at the request of Microsoft Corporation. One necessary part for iSCSI boot in Windows is the iBFT data structure which Microsoft claims is proprietary at this time.

Update 13 March 2007

Gentoo, Luxi, the Weller BP645 Soldering Iron

Finally, after all these years, I've installed Gentoo. It's really nice, and reminds me of BSD Ports, except that the documentation is more thorough. Ports is good, but Gentoo's emerge is really, really nice. It's also fast, as expected, and took a long time to build, as expected.

Future Web App Development

Things to read and research:

Adobe Flex
Google Web Toolkit

More info - Ajaxian

Not a framework - Scriptaculous which uses Prototype. (That and JQuery are in another post.)

Updating a Combo Box with a Requery

In MS Access, when you want a form containing a foreign key, you typically use a combo box that's populated with data from the foreign table.

Perl Rocks (even yet)

Perl still rocks. People still say it's hard to read (true), but it's because the language is terse.

sub getAccountIdsOfSitesToSuspend
    $sql = <<EOQ;
        SELECT account_id
        FROM account
            account.account_balance < (SELECT triggerAmount FROM fk_suspension_rules)
            AND (
                    SELECT IF(SUM(transaction_ammount), SUM(transaction_ammount), 0)
                    FROM transaction
                    WHERE transaction_date > DATE_SUB( CURDATE(),
                        INTERVAL (SELECT paymentWindow FROM fk_suspension_rules) DAY)
                    AND transaction.account_id = account.account_id



A good tutorial at DDJ.

There's going to be a conflict with Prototype, because it also uses $, but differently.

Add HTML Tags to PHP...; A

One cool thing about geeking out with Josh is that new ideas happen. The latest one that came up was to make <SPAN> and <DIV> (and their closing tags) part of the PHP language syntax. This isn't going to happen, but think...

Those two tags could be treated like double quotes, and the content within them can, by default, echo to the page. Example:

if ($i==true) 
  <div>Hello, world.</div>

If you need to evaluate:

if ($i==true)
  <div>Hello, {ucfirst($name)}</div>


while ($line=readline($fh)):

On second thought, this isn't just for PHP. Pretty much any language could use it. It just doesn't make sense in other languages, because they don't spit out web pages.

Typewriter as Computer Keyboard

How cool is this?

Project 1

Project 2

Linux Point-of-Sale Spotted at Mitsuwa Market

The Mitsuwa Market in Los Angeles is using a POS system that runs on Ubuntu Linux. The POS was odd, because it didn't disable the menu bar. The Ubuntu logo was right up there. It even used the default orange theme.

Syndicate content