30 October 2006

Technology Review: Motorola's Dumb Phone

Technology Review: Motorola's Dumb Phone

Wow -- finally, someone's made a phone my mother can use.

Twelve days of standby time? Now, that's a feature for me.

Exploring Cross-browser Web 2.0 Layouts with Yahoo! UI

Jack Slocum's Blog � Exploring Cross-browser Web 2.0 Layouts with Yahoo! UI

I don't know if this guy is a coder for Yahoo or not (didn't have time to read through his site in its entirety), but his grasp of their libraries and his UI design is certainly commendable. Definitely check out Example 6 -- the possibilities for this layout design are endless.

[From CodeStore]

27 October 2006

Lessons learned from DOM

When setting the checked status of a checkbox you're creating through the DOM API (instead of just dumping a long <input> tag into innerHTML), make sure you set the ".defaultChecked" property of the object before (or after) you append it to whatever element you're placing it in. Just setting the ".checked" property doesn't seem to work in IE, either by design or by accident.

Additionally, if you're using the DOM API to dynamically create a bunch of objects, make sure you assign an ID to every single object you create, whether or not you're going to manipulate it later on! Trust me, you'll thank me.

(I've learned all of this by trial and error -- trust me, I'm no HTML wizard or anything.)

Integrating Maps into Your Java Web Application with Google Maps and Ajax

java.net: Integrating Maps into Your Java Web Application with Google Maps and Ajax

Google has made this stuff so easy it's almost laughable. You'd be stupid not to try and integrate this in any kind of web application that you're making that deals with locations and coordinates.

Hell, I'm thinking about putting it on here just for the hell of it.

25 October 2006

W3C DOM (In)compatibility

W3C DOM Compatibility - Core

God, what a nightmare. The guy who wrote this page wasn't lying. Trying to do high-level HTML DOM manipulation in IE is next to impossible.

Standard DOM functions such as "setAttribute()" are not even supported, not to mention the fact that IE likes getting rid of your personal JavaScript events that you set programatically. Thanks. Really.

24 October 2006

My Design Area



In case anyone was wondering what my design space looked like, here you go. (Pixelated portions are just file names and other unimportant information that's job-specific.)

DOM vs. innerHTML revisited!

Dev-X ==innerHTML Debate

I'm currently doing some really neat stuff with the help of the infamous "DOM Manipulation vs. innerHTML" debate article that I found long ago.

I've already removed all the <table> tags from my dynamic AJAX data-viewer (it was actually easier than expected; "clear" and "float" are your friends) -- now I'm in the process of removing all of my innerHTML calls and replacing them with well-structured DOM manipulation.

Wish me luck!

23 October 2006

W3Schools Online Web Tutorials Dropping Support for Netscape

W3Schools Online Web Tutorials

Wow -- there's something I just noticed, whilst browsing the pages of my favorite tutorial and reference site (the aforementioned W3Schools.com), and I was wondering if anyone else had noticed it...

Well, apparently they've dropped support for Netscape. Officially. I know Netscape had been enjoying a pretty dismal representation in the browser world (some reports put its market share in the 0.2 to 0.3 percentages), and apparently W3Schools.com has dropped its descriptive column of Netscape's abilities because of that. I don't know how long it's been since this has happened, since I don't often go to the DOM parts of the site (I usually just stick around the JavaScript sections, which retain their support of Netscape, perhaps in homage to Netscape's venerable Parentage of JavaScript).

Well, at least they replaced Netscape's column with Opera. Opera's not so bad, and it's starting to gain support in the Mobile Browser market, so perhaps the move had something to do with that. (Not to mention the fact that Firefox does everything Netscape ever did, and is built on the exact same platform.)

Identity Theft OUR Fault?

Researchers see privacy pitfalls in no-swipe credit cards | CNET News.com

"The card companies have implied through their marketing that the data is encrypted to make sure that a digital eavesdropper cannot get any intelligible information. American Express has said its cards incorporate '128-bit encryption,' and J. P. Morgan Chase has said that its cards, which it calls Blink, use 'the highest level of encryption allowed by the U.S. government.'

But in tests on 20 cards from Visa, MasterCard and American Express, the researchers here found that the cardholder's name and other data was being transmitted without encryption and in plain text. They could skim and store the information from a card with a device the size of a couple of paperback books, which they cobbled together from readily available computer and radio components for $150.
"

...

Oh, but remember: identity theft is your fault. The credit industry is completely blameless.

The Netscaping of Symantec and McAfee - Internet Applications Software

The Netscaping of Symantec and McAfee - Internet Applications Software

"Symantec privately alleges that Microsoft is withholding API information to delay its own Release to Manufacture versions of their software. If Microsoft ships Vista code to hardware vendors at the end of November, then Symantec and others must have their own Vista-ready security products ready to ship to their OEM hardware vendors at the same time. Without the APIs, that's impossible."

Looks like Microsoft is doing it again. This is the same way that they killed Netscape with later versions of Windows 95, and (I'm told) also the same way that they killed IBM's competing OS/2 operating system with the release of Windows 98.

It wasn't because Internet Explorer (with Windows 95) or Windows 98 were better products, it's because Microsoft stifled competition by refusing to allow third-party vendors to create products that worked with its operating system.

Folks, it's the same thing as if Ford had made an extremely popular car (I know, I know -- unlikely, but bear with me) that, for the first six months it was on the market, had a type of brake pads that you could only get changed at the Ford Dealership. Whether or not they even charged for the brake pads is irrelevant (though I'm sure Ford would charge you double what anyone else would) -- the fact of the matter is that Ford hadn't allowed any brake pad vendors (say, Autozone) to even see the car, and thus they couldn't make any brake pads to go along with it. Ford would effectively kill the brake pad market for this car, because people would get so used to bringing their cars to Ford for new brake pads that by the time third-party pads were made, no driver would care enough to go anywhere else.

Still don't think that makes sense? Let me make it more realistic. Say Ford also gave away the pads for free, though they would be of a much lesser quality. Now do you see why the third-party market would suffer?

16 October 2006

JavaScript Validation in Notes Client

Well, I sat there wondering for hours why my simple JavaScript validation routine wasn't working in the notes client -- oh, it would stop the actual Save from happening, but it would keep throwing up an error message stating "Cannot execute the specified command."

Why? Well, it just so happens that when I code the typical "Save" button for one of my forms, I like to follow up the usual "@Command([FileSave])" with a "@Command([EditDocument])". This way, the user is just returned to Read mode with the document they were looking at instead of kicked back to a view -- say, if they want to review the information they just entered and see if it's correct before leaving the document. I do have a separate "Save and Close" button if that's what the user wants to do, however.

And the problem...? Well, this script was the same for new docs, of course (stupid me), and when the button's script was run -- well, you can probably guess what happened. The JavaScript validation function stopped the "@Command([FileSave])" from running, but the "@Command([EditDocument])" still executed, and of course, produced the error (how are you supposed to switch edit modes on a document that doesn't technically exist yet?).

So, how do you stop this from happening? You do what I should have done from the start:

@If( @Command([FileSave]);
@Command([CloseWindow]);
@Return("")
)

This way, whatever code you want executed after the Save runs successfully will only run after the Save runs successfully.

13 October 2006

Client-side HTML DOM

Well, apparently there isn't one. Just found that out while trying to grab an HTML object in client-side JavaScript. Turns out that the HTML "DOM" in the client is really just an elaborate system of Rich Text information.

Poop. There go my ideas for fancy DHTML-style validation. :P

12 October 2006

Report: Libya buys laptops for schoolchildren - CNN.com

U.S. Group Reaches Deal to Provide Laptops to All Libyan Schoolchildren - New York Times

Isn't it amazing that a poor African nation is ready to spend 120 million dollars of its own money to give every single one of its children a laptop computer?

You ever hear about anyone doing anything like this in America?

Oh, of course, you've probably heard about schools outfitting their students with Dell's and Gateway's -- computers that can cost upwards of $1000.

"Sure, we'd love every child to have a laptop, but where do we get the money from?" they say.

Well, the solution isn't to try and bring the level of money up to the level of computer... the solution is to bring the cost of the computer down to the amount of available money.

How? Three words: Linux, AMD, and non-volatile Flash memory. (Okay, the last one was more than just a word, but you get the picture.)

Critics have called its processor slow and its memory miniscule.

"Critics" are apparently too used to living in a bloated Windows-based world, where everything typically eats ten times as much memory as it really needs. Enter Linux, whose current processing kernel runs on ancient CPU's like Motorola's 68000-series.

Critics have called its power source (a hand-driven crank) ridiculous.

"Critics" either need to suggest a way to draw power from thin air or shut up about it. I think it's an amazing idea, not to mention the fact that its AMD-powered motherboard uses hardly any power at all. You can literally power the thing on human muscle energy, which is exactly what the designers imagined.

Critics have suggested that there's no real benefit to giving a bunch of third world children laptop computers, as there's no network to support connectivity.

On the contrary, the laptops' built-in wireless mesh technology allows it to create ad-hoc networks -- imagine hundreds of thousands of these little things all connecting to one another, sharing information and ideas.

Hell -- even I'd love to have one, if just to tinker and design with it. I'd gladly pay twice the price they're wanting.

11 October 2006

Wal-Mart, Costco weigh biometric payment system: report - Jan. 24, 2006

Wal-Mart, Costco weigh biometric payment system: report - Jan. 24, 2006

Call me crazy, but I'd pay by this method in a second. I think it's great.

Google Docs & Spreadsheets

Google Docs & Spreadsheets

I've been using Google's online suite for a bit today, and I can safely say that it's pretty neat and well put together. Give it a try -- either use your already existing Gmail password and username to get in, or spend about 10 seconds and create a new one.

And I don't know about you, but it took google almost 10 minutes to send me the confirmation email -- I guess their server's been pretty busy today with the rollout of this new software.

...and that is what we can start calling this new batch of web applications today, isn't it? "Software," or maybe "Web Software." Google has taken an already existing platform (a web browser) and turned it into a full-featured office-collaboration suite, involving little-to-no downloaded data. Using an ajax-powered engine, a user need only download the framework once to their computer -- every other visit to the site after that is lightening quick, almost as if they were actually running office software on their computer.

I'd honestly want to start using google's software more, but the whole questionable morals in the face of totalitarianism thing keeps coming back to bother me. Not to mention their submission to the invasive tactics of the current administration in this country. (Sigh -- it's so hard to find honest companies to support these days.)

06 October 2006

Hazardous gas, fire lead to evacuations in Apex

Charlotte.com | 10/06/2006 | Hazardous gas, fire lead to evacuations in Apex

Wow -- when I went to NC for my Lotus Notes training I stayed at a hotel only 3.5 miles from this place. I hope the guys over at RockingChairSoftware are all right!

And everyone -- make sure and pray for Omarion.

Because he was like there.

(And stuff.)

05 October 2006

Dell Dimension Desktops -- with AMD chips!

Dell Dimension AMD Desktops

Wow -- this is news to me!

Well, whattayouknow -- Dell's now selling desktops powered by AMD processors... this wouldn't have anything to do with the fact that Intel is getting the pants sued off of them for antitrust violations by AMD right now, would it?

Oh, of course not.

This is all about Dell wanting to bring you the finest quality at the lowest prices because they love you, their darling consumer.

...

Bullshit, I know.

Still, I priced a very nice system with an X2 3800+ chip, an ATI 1300x video card, 1GB of DDR2 RAM, a 160GB hard drive, and a 16x DVD burner for less than $600.

God bless AMD.

03 October 2006

Rough Guide to Outsourcing in China

Rough Guide to Outsourcing in China - 9/25/2006 - Design News

A quick little journal of one person's experiences with supply-chain management and business deals in China.

It's kinda surreal... it's weird to see just how commonplace doing business with China has become.

[via Slashdot]

02 October 2006

My First Meeting

Had my first professional "meeting" today about one of my applications. The users weren't too bad of a group of people, and really only wanted me to change surface stuff (though they did want some features added).

Well, time to get to work! (Tomorrow, at least. :P It's time to go home.)