No Mo’ Moz At The ‘MO

Well, it’s official—the ‘MO has signed, sealed and delivered proof that they are not an organization that favors progress. Browsing with Firefox/Mozilla now is not only prohibited, but impossible now that they’ve blocked it at the proxy server level.

It’s all about control to them—they want uniformity and control at the expense of forsaking progress and improvement. No, my friends. They not only endorse Internet Explorer… they force the issue. There is no other option in their eyes.

Bastards.

MWM Designer & Programmer Seeks Progressive-Minded Establishment
Hybrid graphic designer and web programmer seeking an establishment that not only embraces progress and change, but encourages it in all its associates. There are no Hitleresque proxy servers, inspiration can be drawn from countless sources on the web, and Mozilla and Firefox are not swear words in their vocabulary. PHP isn’t written off as some low-end programming language, nor is ASP.NET considered the end-all solution to everyone’s big problems. Establishment must not be overbearing, controlling, and seeking to embody the gistapo in their compliance techniques—rather they support, empower, and enable their associates to become all that they were meant to be. If this sounds like you, and you’re able to offer a competitive financial compensation package, let’s hook up.

Digg This
August 24, 2005, 5:13 pm

Latte Art

In my days as a barista at Caribou, I always strived to make great-looking (and tasting) latte’s—often times producing some extraordinary latte art from pouring it just the right way.

Seems this guy has taken it to the extreme. Though I’m sure he’s using toothpicks, spoons, or other foreign objects to achieve these results. Cool designs, but I’d like to see what he can do from just a pouring technique.

Digg This
August 24, 2005, 2:00 pm

Google Talk — Beta Available

Google’s much-rumored chat client is now available: Google Talk. The interface is VERY clean and easy-to-use. I’ve only two complaints with this first beta release:

  1. It doesn’t support other services (e.g. Yahoo, MSN, etc.)… yet. But Google’s hinted that they’re going to be opening it up to other services as well.
  2. When you minimize the main Talk window, it doesn’t retreat to the system tray. Correction: You have to click the “X” or close icon to make the app retreat to the system tray. To actually exit the application you right-click on the icon (in the system tray) and click “Exit”.

All-in-all, it’s pretty cool. At the moment you have to be a GMail user to use the client. If I know you and you’d like to try out both GMail and Google Talk, I can send you an invite to join and try GMail.

Digg This
August 24, 2005, 8:43 am

Achieving the 110 Format Film Effect

110 format film? Back in the day we had these smaller cameras that took a film cartridge dubbed “110 speed” or “110 format” and it took these really grainy pictures that we’re kinda heavy on the orange/yellow/green tones and didn’t produce very rich color or clarity results. I’m not sure what it is, maybe nostalgia, but I’ve had the urge to re-create that effect with Photoshop.

So far the only resource I’ve found that has me anywhere near achieving this result was an article by Jeremy Daalder, a professional photographer. He has some good tutorials there, but didn’t quite hit that retro-ish 110 format look. Enter my tutorial.

Exhibit A: Boring digital photo (taken by WCCO at one of my shows)…

This is the effect we’re going for:

How do we achieve it? Simple. (more…)

Digg This
August 23, 2005, 3:44 pm

Select Fields & Div Tags—Simplified

A co-worker was having problems getting a JavaScript to work, attempting to reveal a given hidden div tag based on a select field form selection. He was going about it in a more complicated manner, and I stepped in and offered a much more simplified approach to revealing a div tag based on a form selection.

First, the source code:

<script language="javascript">
<!–
function showField(hiddenField) {
var swapWithThis = document.getElementById(hiddenField).innerHTML;
document.getElementById(”targetField”).innerHTML = swapWithThis;
}
//–>
</script>
<form action=”">
<select id=”selectField” onChange=”showField(this.value);”>
<option value=”">select an option</option>
<option value=”divOne”>Show div one</option>
<option value=”divTwo”>Show div two</option>
<option value=”divThree”>Show div three</option>
</select>
</form>
<div id=”targetField”></div>
<div id=”divOne” style=”display: none;”>This is Div 1</div>
<div id=”divTwo” style=”display: none;”>This is Div 2</div>
<div id=”divThree” style=”display: none;”>This is Div 3</div>

In this example, we’ve got some hidden div tags with content and a select field with values that correspond with the given hidden div tags. We’re simply running a function I created called “showField” with every onChange event that occurs with that form field. On that event, we’re sending the value (this.value) of the selection field “selectField” to the function. The function then grabs the innerHTML (all that is contained within the DIV tag—HTML included) of the corresponding div tag—that is, the div tag that has an ID value that matches the selection value.

We then take that innerHTML and slap it into the blank target div tag (id=”targetField”). It’s really simple, actually, and works like a charm. Test the demo here.

Parting Thought…

If you’re using this method to reveal more select fields or modify values in other target form fields, it would be wise to make use of a target HIDDEN form field to capture the final data value that you’re after. Why? Depending upon how you’re using this, you might run the risk of losing your form data/attributes in those hidden/revealed states. What I suggest is having hidden form elements to receive the final selection values—this way they remain unaffected by the selection event.

UPDATE 4/19/2006: When I originally posted this entry, I had “visiblity: none;” as the attribute in the DIV tags. The PROPER attribute is to have “display: none;” instead. This will ensure that nothing in that layer displays whatsoever.

Digg This
August 23, 2005, 2:25 pm

The Problem With Months

Mathematically speaking (this is going to be a stretch considering that I am not a math geek and HATE math), our months are all wrong—some have 31 days, some 30, one with 28 and sometimes 29. An orderly person might have re-written the structure of our year a bit differently, I’d assume—each month with an equal number of days and seasons equally proportioned. And none of this daylight savings crap.

Maybe there’s a reason for the structure of the calendar, but when it comes to handling recurring invoices and reaching the end of the month, everything falls apart. Example:

Your initial invoice is sent say December 30th. Things work fine when you hit January—January has 31 days. But things fall apart when you hit February—it has only 28 days (29 on a leap year). What then?

So you invoice them on February 28th. But when March rolls around, do you go back to invoicing on the 30th or do you adjust your invoices to be sent on the 28th?

I’m only thinking about this because of an exercise that I’ve been doing in PHP to stretch my abilities—handling more complex date-related information. Unfortunately you can’t just do something so simple like this when automatically generating an invoice for the next month:

$newInvoiceDateStamp = strtotime("+1 month", $oldInvoiceDateStamp);
Using the previous example, this “solution” would cause your next invoice to be March 2nd (March 1st on a leap year) and would really hose over your invoice system. In theory, it should be this simple—but in reality it’s not.

PHP doesn’t really seem to offer any solutions to this mess, so at the moment I’ve found you need to define a constant in your invoice recordsets—namely the day (numerical value) of the month that they are to be invoiced. You’d apply some logic to test if the end of the month is less than the date they are to be invoiced. If that passes true, then you’d bill them at the end of the month as opposed to the “true” one-month-later date.

Digg This
August 23, 2005, 11:33 am

A Word to the Ignorant… Regarding 80’s Music

So I’m sorting through old CD’s and files that I’ve either been given or *cough* came upon into my posession and found an mp3 by Michael Jackson… I think it was Billy Jean, maybe?

Well, I’ve been editing the ID tags in them for faster search results in WinAmp for when I DJ… well, Billy Jean was categorized underOLDIES.

WTF!?!?! OLDIES!?!?!

I think not.

Try “POP”. Michael Jackson is POP MUSIC, not OLDIES. I’ll fight that one to the grave…. er, until I’m old. Then we can discuss calling it OLDIES.

Oldies. Bah!

Digg This
August 22, 2005, 10:47 pm

Fun With Upgrading

Well, I’m pretty much getting settled in with the new 300 GB harddrive and getting used to all the quirks about XP professional. I also picked up two new CDR-RW/DVD and DVD-RW drives as my other two were crapping out on me. The one CD drive I had was a 52 speed, but was getting pretty old and wouldn’t stay open on you… so you’d have to quick slide the CD into place. Pretty weird. It also didn’t read consistantly.

The new drives are pretty cool—both LiteOns and work pretty well. Being that I’ve a lot of mp3 ripping ahead of me, I decided to splurge a little and buy Winamp Pro 5.09. I’ve never bought it before, but thought that since I use it exclusively for listening to mp3’s, I might as well use it to rip them as well. And so far I seem pretty pleased with how Winamp Pro performs.

I still have a LOT of software installation ahead of me, but I’ll just install as I need I guess.

I was contemplating upgrading my processor and adding some memory, but silly me… I’ve already got a Celeron 2.2 Gig processor with 1 Gig of memory. I think I’ll be okay for now. Maybe later this year or into next year I’ll upgrade to a dual processor system and add a few gig of memory. :P

Digg This
August 20, 2005, 2:07 pm

Maui

Well, we’re already talking January/February, Natalie and I. We’re planning another warm-weather getaway, this time possibly to Maui. Of course I’ve started investigating and found this site with really useful maps and information about where to go snorkeling there:

http://www.mauidiveshop.com/snorkeltrips/locations.htm

Digg This
August 19, 2005, 9:29 am

Wedding Crashers

My wife needed a night out of fun and has been wanting to see Wedding Crashers since the previews started showing up on TV. Admittedly, the movie was pretty funny but pretty crass in its humor. There’s a lot of sexual inuendos—heck, there’s a lot of flat-out, blunt sexually-related humor. So if that’s not your thing, you’re better off staying home.

But despite the screenwriter’s perception that you’ve gotta have sex in everything you do, there were still some really hilarious moments. Will Farrel makes a bit of a cameo appareance towards the end of the flick and plays a classic, middle-aged loser/playboy-wannabe still living at home with his mother.

On the whole the film was pretty good. I’m not sure if I’d see it again though.

OH, and on a related note, we had to sit through seven commercials before the previews kicked in. What the hell is wrong with the movie industry anyway??? The bastards don’t make enough money off of us on movie ticket sales and majorly inflated crap that they sell at the concession stands? It was bad enough when you had to sit through maybe two or three commercials—but seven? Bastards. That’s not entertainment; that’s the attempt to steal more of the mindscape that we were hoping to fill with entertainment, not more product pushing.

So Hollywood? You can kiss my ass and take the commercials back from where they came. They’re a waste of time and money; and they’re just flat-out insulting.

Digg This
August 19, 2005, 8:21 am
« Previous Entries Next Entries »