Most recent articles

PAGE: PREV 1 2 3 4 5 6 7 8 9 10 Archives NEXT

Where does the internet end?

Sunday, December 6, 2009, 2:02 AM
Thoughts by John (Article #251)

A simple question often begs a difficult answer. As the internet expands, so too does our idea of the internet. At some point, the internet will become so ubiquitous that the idea itself will cease to exist and just become an abstraction that outlines how we explain what is a background task in our lives.

Some obvious examples exist. For example, an HTPC running Netflix and Hulu. Admittedly, those systems still feel very internetty. But, they're less internetty than how we did the same thing ten years ago: illegal downloading. Also, just removing the word "illegal" from any proposition makes it feel less internetty.

There are less obvious, but still fairly sensible examples. SMS (txting, for the youth and phone crowds) exists at the junction between phone and email. In fact, it can interact seemlessly with both. And it has a slight network feel to it. Especially the super-primitive character limits.

And then there are the examples that make you feel like you live in the future. I've been working on a system for a client that handles retail scan tags. It adds or reduces inventory live in a manner that directly alters the website's stock of items. It's weird to think of a freakin tag as part of the internet. But, considering that it stores state data about a product available on the internet, the simple fact is it is a part of the web.

And as RFID, card swipe and other uniquely identifying systems become more widespread, we as individuals and all of our actions are increasingly part of the internet. With each year, our lives themselves are lived as nodes of an interconnected society. Sure, we can sort of evade being logged. But, short of living in a cabin in the most remote parts of Wyoming, we're being recorded and stored every day in increasingly public ways.

We're approaching the point where the internet doesn't have an actual end. It just is.


Mail article to a friend

Flash Player 10.1 first impression

Wednesday, November 18, 2009, 12:14 AM
Other Stuff by John (Article #250)

I plugged the new Flash Player 10.1 beta into my home theater PC this afternoon. You can find the beta at http://labs.adobe.com.

My #1 impression: a significant reduction in tearing using Hulu.

The big thing this release is supposed to offer is offloading H.264 to the GPU. The beta offers this feature to a limited set of video cards (mostly ATi Radeons 4xxx and nVidia GeForces 8xxx and above).

I'm running an ATi Radeon 4650 with 1 Gb DDR3 RAM in my HTPC. It has a slightly overlocked Wolfdale Pentium Dual Core running at 3.1 GHz (stock 2.8) with 2 Gb RAM running Windows 7 Ultimate. It is a capable performer, handling upsampling DVDs to near Blu-Ray quality. It doesn't bat an eyelash at the big ugly of the HD world: 1080i full bandwith OTA ATSC MPEG-2 (essentially, CBS OO stations).

But, Hulu has had enough tearing when the system is running wireless that it is noticeable. Far from unwatchable, but still not desirable for scenes with a lot of heavy panning and action.

The Flash 10.1 beta all but ended this problem. Except for the here and there slight glitch, it works. And even the glitches really require a committed effort to spotting them. While still not ideal, they will be very easy to ignore in casual viewing.


Mail article to a friend

Second lesson I've learned about AdWords

Saturday, November 7, 2009, 11:52 PM
Business by John (Article #249)

When pricing keywords, start low and keep your eye on the average position.

I have a couple keywords where the estimated first page bid is astonishingly higher that the price I actually need to pay in order to get an average position between 1 and 2.

That said, the bid simulator is honest about this fact. It says .05 a click for my top keyword gets me 594 impressions in a single week, while .20 gets me 650 impressions. A 10% performance gain for a 300% price increase!! Man, I have heard such low bang for your buck since the last time I looked at a high-end video card.


Mail article to a friend

Why I never fell in love with Python

Sunday, November 1, 2009, 11:07 PM
Thoughts by John (Article #248)

There is one immutable rule in the world of programming: if a programming language becomes an unquestioned religion, it probably isn't worth learning.

Think about that for a second. C++ and C have always been highly criticized, despite their status as gatekeepers to the upper echelon of programming. PHP has pretty much swallowed the internet whole, while also allowing some of the most insecure code every written to be spread everywhere. Visual BASIC . . . well, hell . . . anything BASIC has been frowned up since DOS ceased to be the stuff.

Python is supposed to the perfect language.

But, it's not.

First off, Python lacks a core constituency. The core Python user seems to be folks too smart for PHP, too cool for Visual BASIC and way too with it to clunk around with C++.

Think that through. PHP is for web apps -- especially if mixed with MySQL and JavaScript by a reasonably responsible programmer aware of SQL injection. Visual BASIC is for building every quick and dirty app for Windows. And C++ is for building all the stuff that runs, well, everything else -- OSes, compilers, interpreters -- we wouldn't even have PHP and VB if it weren't for C++. And we wouldn't have C++ if it weren't for C.

Python seems to exist in the margins. When you need to access a small portion of scriptable code in an app and you don't want to constantly recompile it. That's cute, but it's not the basis of a language you can really use everywhere.

My main problem with my encounters with Python is that it doesn't work consistently enough with MySQL to be useful. Python is not naturally married to a database like PHP is. And it isn't promiscuous in accessing DBs the way Visual BASIC is. For what I do, that breaks the deal. Python has to go.

Also, Python's community seems oblivious to improving its performance and stability with the most broadly used databases. You can't pimp a language in the year 2009 if it doesn't go all PB&J with at least one major database. LAMP stack is what it is because Linux, Apache, MySQL and PHP are inseparable. We'd lost a huge chunk of the internet without anyone of those four.

Python just hasn't found that core constituency. And, frankly, I don't see that ever happening. Python worshippers extol its virtues so much that they don't see its flaws.

Maybe Python is a brilliant language. But, for what?


Mail article to a friend

First lesson I've learned about AdWords

Friday, October 23, 2009, 8:21 AM
Business by John (Article #247)

I've been tinkering with Google AdWord just to see if it is worthwhile. I won't render a verdict on that for a while, but I have already learned at least on things:

Use the Phrase Match for keywords (keywords in quotes) instead of the Broad Match.

Broad Match pulls in roughly related keywords. I was checking my web logs against the keywords I had received a click on for my main website business website, and found that using Broad Match I was getting clicks for things like graphic design. GFX isn't really my business. Yeah, I understand the relationship between web design and graphic design, but they're not the same thing. And in my case, I tend to be much more focused on being a web developer or a web programmer. Selling generally graphic design -- which extends far beyond a logo and colors for a website -- is not my sales pitch.

It's a simply thing to fix in AdWords. And if the broad matches are beyond what you're selling, it's a good idea to adjust them and not spend money on clicks that aren't selling what you're selling.


Mail article to a friend

Trading speed for convenience

Monday, October 19, 2009, 10:04 AM
Code by (Article #246)

Something I've always been a bit dubious about is the tendency among web programmers to always favor speed. Now, I understand the need to avoid having giant loops of JavaScript code bogging down everyone who owns less than a Core i7. What I'm talking about is particularly that microsecond of server response time that many programmers refuse to sacrifice in the name of massively greater convenience.

I run all my websites off a single template file. That file has pseudo tags for things like the header, footer, sidebars and main content. Then, in PHP, I use regular expressions to fish out those pseudo tags and replace them with whatever dynamic content needs served to fill in the page properly.

For you have something in the template file that looks like this (replace the brackets with lt and gt tags as needed):

[div class="content"]
[CONTENT]
[/div]

And the PHP code is going to look like this:

ereg_replace("[CONTENT]", $output, $template);

Is this is the swiftest approach? No. I probably wouldn't recommend running a website that gets 1 million hits a second this way. But, the vast majority of websites don't get 1 million hits a second. In fact, the majority don't get 1 million hits a day.

From my perspective, it's easier to build for convenience than it is for speed. Especially if that microsecond of response time doesn't win you much. I'd rather use template system that can be ported rapidly from website-to-website than a highly responsive system that requires serious digging to alter anything.

Also, frankly, when I look at the most widely used systems, such as Drupal, Wordpress and Joomla, my first thought is that they are coded neither for speed nor convenience. They're not easy to tweak. They're not peculiarly fast -- I mean, when you consider how many database calls the average Wordpress post requires just to serve a page -- ouch.


Mail article to a friend

SQL injection is complicated?

Monday, August 17, 2009, 10:34 PM
Thoughts by John (Article #245)

http://news.bbc.co.uk/2/hi/americas/8206305.stm

The money quote:

Mr Gonzales used a complicated technique known as an "SQL injection attack" to penetrate networks' firewalls and steal information, the US Department of Justice said.

Really? Because somewhere along the way, if you fancy yourself to be any good at any of this computer shit, you're supposed to know what an SQL injection attack is and how to prevent it.

Sometimes I feel like I just brought an airplane to a civilization that's only discovering fire

To be clear: if anyone has ever allowed you to write anything, blue team or red team, involving databases, you should know what an injection attack is. In the computer world, SQL injection is PB & J.


Mail article to a friend

IE 6 abolition and the perpetual cluelessness of geeks

Wednesday, August 5, 2009, 11:57 AM
Thoughts by John (Article #244)

On the surface, this is a good idea.

But, it also reveals how painfully clueless some geeks are. Scroll down to the little graphic depicting the alternate browsers you can use. The first option is Firefox... Clueless, I tell ya.

Why is it clueless? Because it betrays the goal of abolishing IE 6 in order to engage in the worldwide geek passtime: trashing Internet Explorer while pimping Firefox.

Geeks are sometimes flat-out braindead when it comes to these things. The goal is to abolish IE6. Not, to abolish IE. And yet, it is quite clear that the folks that run IE6nomore.com are not committed to promoting adoption of IE8, but instead are trolling to bash IE in general without regard to version.

It's clueless. Some people like Internet Explorer. Truth be told, if Internet Explorer had been as good with IE8 back in IE6 days, I never would have adopted Firefox. I mostly use Firefox as my primary browser out of entropy. And frankly, if Firefox continues to decline in quality as badly as it did between v 2.0 and v 3.5, Internet Explorer will have me back.

Geeks of the world, get your heads straight. Oppositional behavior is not goal in itself. Nor should it be. The goal should be to have folks running the best browsers so we can all have the best internet possible. Trying to railroad IE6 users into becoming Firefox adopters is dumb. Just let them upgrade to IE8 and skip the bullshit.


Mail article to a friend

Time to bury Internet Explorer 6

Saturday, July 25, 2009, 11:38 PM
Thoughts by John (Article #243)

With a full 90-95% of all IE users now using Internet Explorer 7 or above, it is time to let folks using IE6 that they are as reviled as the guy who is still running 48-bit encryption in IE 5.5.

OK, IE6 users aren't quite that evil. But, it's a huge burden to the average developer to support IE6, especially in the face of one simple, too cool fact about IE7 and IE8 versus IE6: IE7+ has full support for 24-bit images with transparency.

It doesn't sound like a lot, but one of the things that has long held back truly beautiful web design is that transparency layers were never particularly easy in Internet Explorer. One of the joys of IE7+ is that making transparent, 24-bit PNG layer work is now as easy in IE as it is in Adobe Photoshop.

Firefox has had decent 24-bit PNG transparency support since the beginning of time. IE took a long time to come along to that point, and then took an even longer time to force its users along. The fact that people are still using a web browser built fundamentally for Windows 98 is disturbing. Visually, it shows when you use IE6. It's not as secure, it's not as beautiful and frankly WTF people?!

Now that the percentage of IE6 users is so low, it's time to say good riddance to IE6. IE6 is a symbol of users and corporations all being too willing to accept the status quo. IE6 stagnated for more than half a decade until Mozilla Firefox forced Microsoft to accept it had not won a permanent victory in the browser wars. Frankly, that was a good thing. IE8 is a far, far better browser because of the fight.

At the same time, the stagnation that allowed IE6 to fester for so long -- even amid major security issues -- is unacceptable. It should be a teachable moment in computer history: don't let major platforms stagnate. Ever.

It's time to shove IE6 over the cliff. Sure, some outdated people will complain. So what? We don't accommodate the average weirdo who's still running IE 5.5 on an old Mac Performa, do we?


Mail article to a friend

The anti-sec movement

Saturday, July 11, 2009, 9:55 AM
Thoughts by John (Article #242)

The anti-sec movement is a group of people who believe that internet security firms should stop publishing exploits. Anti-sec believes that the primary motivation of the security industry in publishing exploits is so the exploits can be easily transferred from whitehats to blackhats without the security firms being blamed. Script kiddies copy the exploits, making the need for firewall, antivirus, anti-adware, etc. more prominent.

This one has been brewing in my mind, but I thought the anti-sec hacking of ImageHost made the issue worth talking about.

I'm a big fan of publishing every single exploit.

There is an old mantra in programming that you cannot achieve security by obfuscation. I am a devout believer. If you think about a building, which is bound to be more effective: camouflaging an unlocked door, or installing a stronger door and locking it?

I also think that people misunderstand the supply and demand component of hacking, especially at the script kiddie level. Script kiddies have a demand for exploits. A lot of script kiddie behavior is about showing off to their friends. In other words, reducing the supply of exploits is not going to meaningfully reduce the number of script kiddies.

As for hardcore hackers, unpublished exploits are their bread and butter! Leaving an exploit unpublished increases that exploits' value to some guy in Romania whose who business is about staying under the radar. If he can come and go as he pleases through an unpatched system, you've provided a value-added proposal to his business. And since going unpublished means an exploit will be less patched worldwide, you've also granted him the chance to hit more machines.

The anti-sec movement -- if it really even exists as a meaningful movement, and isn't some sort of post-modern bullshit attempt by hackers to hack the public conscience -- is misguided. There is nothing to be gained by letting exploits go unpublished.


Mail article to a friend

PAGE: PREV 1 2 3 4 5 6 7 8 9 10 Archives NEXT

© 2010 Pro Content and Design. All rights reserved.


Tools

Check Google PageRank


Welcome!

Wonder where to start with your web design business?

This blog follows along with my efforts to build and grow a website design business, Pro Content and Design.

The goal of this blog is to fill in blanks that may be empty as you get your business rolling.

This blog, particularly the source code section, is not intended for beginners. If you are not comfortable with databases, Ajax, DOM objects and other advanced methods, I strongly suggest you go take a look over at W3 Schools before even reading -- let alone tinkering with -- any of the code here.

I hope this blog has some value to web designers as they attempt to get their businesses going.

Good luck, and happy reading.

Thank you,
John Crawford
Pro Content and Design

Books


I highly recommend Art of the Start if you have no idea where to start with marketing.

Links

Coding
W3 Schools
IBM's Mastering Ajax Series

Graphic Design
Worth 1000
Stock.XCHNG
Urban Fonts

Website Software
Apache Web Server
SquirrelMail
PHP/Zend

Website Design Issues
Non-Standard Character Guide
Google Trends
Search Engine Optimization Analyzer

Business
Guy Kawasaki's Blog
Seth Godin's Blog
Freakonomics

Computers
NewEgg

My Main Website
Pro Content and Design

Websites I have built
PunxsyPage: local free classifieds website

Farm N Land: low-cost real estate listing website

Groundhog Festival: for the local summer festival

Weather Discovery Center

My Webapps
TV Stations Transmitter Database

Google PageRank Checker