Newsletter: Hsbc rs credit card Auto bad bankruptcy credit loan Understanding credit score Secured personal loan Construction florida home loan Terminate credit card debt Credit card debt death Credit card machine merchant account Credit card debt debt consolidation Card citibank credit payment Credit card terminal system Card credit online payment shell Batch credit card processing Bad credit loan student Capital one bank credit card Bankruptcy credit score Bad credit mortgage in florida No credit card xxx Grant loan student Can credit card company garnish your wages Colorado home mortgage loan rate Card credit intrest low rate Delaware home equity loan Credit card debt settlement Average credit card debt Rhode island home equity loan Free credit score check Payday loan cash advance loan Government debt consolidation loan High school student credit card Credit order report Louisiana home equity loan Consumer credit counseling of maryland Personal loan pay day loan Instant student credit card Qualify fha home loan Credit repair scams Home loan mortgage refinance mortgage Credit report from 3 bureau California county equity home loan orange Debt consolidation plan Credit repair program Payday loan Card credit payment service Bad credit florida home loan Credit card no checking account Get credit score Broker california home loan mortgage Credit score scale Free sex no credit card needed Credit monitoring report 0 percent credit card Cash back credit card uk Best secured credit card deal Merrick bank credit card Calculate credit score Debt consolidation financing Application card college credit student Fix your credit report Debt consolidation home loan Home loan uk Consumer report credit card Credit free maryland report Free canadian credit score Card credit service Free phone no credit card required Card citibank credit online payment Sample credit repair letter Cheap find credit card Small business credit report Home land loan manufactured Card cardmember chase credit service Consumer credit counciling No equity debt consolidation loan Chase continental credit card Bad credit master card Maine debt consolidation loan Cibc secured credit card Business credit report Home equity loan payment calculator Credit debt management Credit fix report score Online student credit card application Bankruptcy loan personal unsecured Bad credit en language loan Bad card company credit credit Bad credit secured loan Credit report company Secured debt credit counseling California home loan mortgage mortgage Bad credit home loan mortgage se Free online credit card processing Consolidation credit debt management Credit card counseling debt consolidation Personal loan for people with bad credit Consumer counseling credit service 2nd bad credit financing mortgage Equity hawaii home loan rate Consolidation debt online service Punishment for credit card fraud Business credit card consolidation Bankruptcy home improvement loan Credit repair Cash advance loan payday internet Credit rating report Calculator loan student Citi financial credit card Alberta loan student Georgia mortgage home loan Merchant credit card processor Free nonprofit debt consolidation quote Unsecured personal loan online High credit score Credit card free balance transfer Web credit card processing Easy online payday loan Consolidating loan student Student loan people Canadian student credit card Best card credit merchant rate Bad credit history visa card Best debt consolidation loan Consolidation counseling credit debt service Credit fico free report score Instant decision credit card Bad card credit credit deposit no Credit card fraud statistics Loan private student Great lake student loan consolidation Bank card credit secured us Bad credit card Christian credit debt counseling Fast personal loan Government loan student People with bad credit Business credit card with reward Lexington credit repair Bad credit home mortgage loan quote Canada credit free online report Card credit credit free report using without Online payday loan instant approval Mortgage with bad credit chicago Credit card for online shop Credit card machine to buy Trafalgar home loan Va home loan calculator Find out my credit score for free Consolidation counseling credit debt Log home construction loan No credit personal loan Accept credit card online Loan student suntech California home loan rate refinance Card credit credit degree loan online report Credit repair yourself Shell gas station credit card Clean credit report up Balance card credit deal transfer National student loan center canada California home loan mortgage Business card credit discover Accept card credit online payment Credit union master card The best credit card Business credit insurance Card credit merchant online processing Citibank student credit card Orange county home equity loan Consolidation credit debt loan poor Guaranteed unsecured personal loan Providian secured credit card Bad credit loan mortgage rate Debt consolidation solution 0 apr credit card application Credit card for people with bad credit Chicago counseling credit Airline reward credit card Bad credit payday loan Bad credit re mortgage uk Home improvement loan florida Bad consolidation credit loan people Fitch credit rating Cambridge credit counseling corp Aspire credit card online Instant secured credit card Home owner loan uk Card consolidate credit loan student Account card credit forum merchant Credit report repair Citibank credit card application Credit letter repair report First time mortgage bad credit Bad california credit home loan Instant approval business credit card Iowa student loan liquidity Shell credit card company Approval card credit instant Small bad credit loan Bad credit houston mortgage texas Apply for low rate credit card 0 approval card credit instant Default loan student Credit free national report Card credit merchant processing service Batch credit card processing Credit card terminal Business card credit start up Government loan for first time home buyer Federal home improvement loan program Bad credit car finance Credit card debt counseling 0 introduction rate credit card Non profit credit counseling Bank of scotland credit card Major credit card company Bad business card credit Credit report fico score 0 balance card credit life transferà?? à?? Best card credit online rate Credit card processing account Countrywide home equity loan Florida home jacksonville loan Visa credit card for bad credit Virgin personal loan Credit score simulator Stolen credit card numbers Letter to credit card company Approval card credit instant unsecured Prepaid credit card company Agency credit equifax report Credit card depot and debt consolidation Approval card credit instant offer Credit card company Personal consolidation loan Loan payday quick Countrywide home loan customer service Bank federal home loan topeka Credit free online report view Home loan mortgage new online quote Loan reconsolidation student Settling credit card debt Bank federal francisco home loan san Canada loan student Understanding credit score Card chase commercial credit song Balance card credit low transfer Free cell phone no credit check required card How to get a credit card online Free credit check no credit card Banks that offer secured credit card Personal loan pay day loan Guaranteed faxless payday loan Capital one secured credit card Annually credit free report American consumer credit counseling Guaranteed credit card uk Credit repair agency Best california equity home loan Gas credit card Perfect credit score 3 credit report Consolidation credit debt report Repair credit with debt settlement Debt consolidation quote Chase credit card customer service Card consolidate credit loan student Bad card credit credit free people Card credit name number Personal student loan Home loa loan mortgage refinance Best card consolidation credit deal Chase credit card account Loan national student Credit card debt uk Canada consolidation debt loan loan student America card mbna credit bank Applied bank card credit Card consolidation credit loan Bad credit home loan owner Annual credit free report Loan private student South carolina debt consolidation Consumer counseling credit services Free debt consolidation loan College hazlewood hinson loan student Credit repair information Accept card credit take Consolidation debt free non profit Credit card debt management services Online home improvement loan Bad credit loan mortgage refinance Bp gas credit card Credit free report trans union Home owner loan corp High risk personal loan Consolidation debt uk Card counseling credit service Free experian credit report Accredited card credit secured Bad credit student personal loan Student one credit card Home mortgage refinance loan Mbna debt consolidation Home improvement income loan low Cash back business credit card Credit repair advice Federal student loan forgiveness Bad credit debt consolidation Florida mortgage loan debt consolidation Business card credit small terminal Visa credit card application Chase bank credit card Credit counseling center Experian credit report agency Bad credit lender Forgiveness loan program student Low rate personal loan Free canadian credit report American express credit card application Repair credit rating Home loan owner personal secured uk Florida home loan south Equity home interest loan only Commercial credit counseling First time home buyer loan Bad credit home loan california Best credit card online deal Bank of america personal loan Bad credit debt consolidation mortgage Card credit unsecured Yearly credit score Consolidation consumer counseling credit debt California home loan mortgage mortgage Beacon credit free report score Home equity bad credit Loan for personal debt Bad credit loan online Personal loan quote Lowest fixed rate credit card Debt consolidation loan online uk Instant approval bad credit credit card Secured corporate credit card Delaware debt consolidation loan Chase visa credit card account access Credit union master card online New york home equity loan Home loan mortgage refinance mortgage Home loan equity mortgage rate Free credit card terminal Advance cash fast loan payday College student credit card debt statistics Credit card machine company Bank of america credit card online payment Federal student loan forgiveness Chase credit card account Student loan refinancing Canada credit free in report No balance transfer fee credit card Consolidation department education loan student Interest loan low student Credit card for bad credit in canada Credit card processing company Sears credit card canada Apply online credit card instant 0 card credit interest transfer Merchant credit card services Capital one business credit card 3 credit report Best air mile credit card Consumer credit protection act Business credit equifax report Credit free nc report Equity home loan refinance vs Consumer cooperative credit union Bad credit home loan mortgage services New jersey home equity loan Sears credit card services Equity florida home loan rate Card credit depot home payment Debt management credit counseling Bad best card credit credit Chase credit card phone number Consumer credit counselor Best card credit interest low Credit counseling chicago Va home loan Free cell phone no credit card Business credit en language report What does your credit score mean Prepaid credit debit card Credit card debt consolidation company Portable credit card machine Oklahoma home equity loan Instant approve credit card Canadian credit free online report Fast cash advance payday loan Bad credit personal loan 1 Military bad credit personal loan Credit card fraud and identity theft 5 cash back credit card Fix a bad credit report Application card credit instant response Georgia free credit report Providian credit card Florida free debt consolidation loan Consumer credit debt consolidation Home land loan manufactured Free credit card for people with bad credit Excessive credit card debt Forgiveness loan program student Student balance transfer credit card Canada consolidation debt loan loan student Consolidation debt five free in Free prepaid credit card First financial bank credit card Eligibility home loan va Best credit card rebate Consolidation debt link suggest Bad credit home loan mortgage se Credit free massachusetts report No credit card credit report Access card com credit mbna net View credit report online Card credit online service Credit free ohio report Small bad credit loan Free porn video no credit card needed Home loan mortgage mortgage refinance Student loan consolidation rule Instant credit card canada Alternative student loan for bad credit Citibank home equity loan Best airline credit card Refinance car loan bad credit Credit free online report Dispute credit report online Direct loan loan student Countrywide home loan payment Consolidation credit non profit Debt and bill consolidation 1 Buying a home with bad credit Card credit uk unsecured Best reward credit card Business card credit processing small Maryland bad credit mortgage Credit card application for college student Credit equifax personal report Compare credit card offer Credit free indiana report California mobile home loan Bad credit home financing Bureau credit rating Chase credit card services Credit card and check processing Apply online for credit card Department education loan student Student loan default Canada cash in loan payday Christian consolidation debt loan Card credit name number Card credit internet payment processing Free credit report from experian Consolidation debt loan personal unsecured Colorado home equity loan Personal loan uk Countrywide home job loan Annual credit equifax free report Credit repair debt consolidation Debt consolidation loan company Federal government home loan Credit repair book Pay chase credit card online Accepting credit card for business Credit card free porn Consolidate credit card Home equity bad credit Free online credit report without credit card Apply card credit unsecured Bank secured credit card Bad credit fair loan mortgage Bad card credit gas people Debt management credit counseling corporation Credit repair lead Alternative student loan for bad credit Brunswick home loan new Credit card fraud law Washington mutual home loan center Consolidation loan personal student Mobile home loan Home equity loan calculator Bad credit home loan mortgage se Free trans union annual credit report Credit report repair canada Canada credit equifax report Low fixed apr credit card Bankruptcy credit score Free music no credit card Home improvement loan missouri Master card credit card application How to read an experian credit report Auto loan for people with bad credit Credit card debt help 0 balance transfer credit card offer Bureau credit rating 0 balance card credit student transfer Business credit insurance Center loan national student Credit card rate comparison Best card college credit student Credit card for international student Card company complaint credit Personal secured consolidation loan uk Free credit card processing Check credit free online report Card credit machine nurit wireless Retail credit card processing Credit instantly online report Credit experian personal report Can credit card company garnish your wages Debt consolidation lead Cash fast loan online payday Canadian business credit card Well fargo financial bank credit card Consolidation loan refinance student Home equity loan rate comparison Government debt consolidation Bad debt credit card Online credit card processing services Nova credit card processing Approval canada card credit instant Home improvement interest loan rate North carolina home equity loan California home loan services Acs student loan consolidation North carolina debt consolidation Mortgage vs home equity loan Card consolidation credit loan student South carolina bad credit mortgage Credit counseling detroit No credit card porn movie Corp loan sc student National credit counseling Capital card co credit one Government home improvement loan Debt consolidation calculator Best gas credit card Countrywide home equity loan Commerce bank credit card Best card credit rate secured Card consolidation credit debt loan Kmart credit card application Bank one personal loan Bank cincinnati federal home loan Apply approval card credit instant Small business credit card machine Free instant copy of credit report Do it yourself credit repair kit Debt consolidation loan uk Home owner loan Iowa student loan liquidity corporation Free credit report no credit card Best card credit low rate Equifax credit report trans union Delaware debt consolidation Business loan poor credit Iowa student loan liquidity Credit card balance transfer Mbna credit card company Consolidation debt loan personal unsecured Defaulted loan student Best buy credit card Online debt consolidation program Free credit card offer Bank federal home loan seattle Bad credit loan mortgage pennsylvania Consolidate credit card First premier credit card login Payday loan oregon Unsecured credit card for people with no credit Credit repair lawyer Credit free rating report 0 card credit interest percent Hsbc credit card payment

Google Maps mashup with animated DHTML markers and infoboxes, YUI contributes

February 28th, 2008

Back in November, Family Travel relaunched with a ton of new content, a completely new look & feel, and great Google Maps integration.

I’m the dummy who told the client that animated markers and infoboxes would be OK, and I’m the dummy who had to code it (the javascript) in under two months, by myself. To be honest, the launch was a little glitchy. Now, though, things seem to be running pretty smoothly.

As far as I know, Family Travel is the first and only site to have animated DHTML markers and infoboxes. We probably could have accomplished the feat in Flash, but I was not comfortable with the general state of Flash integration with Google Maps. Even in the months since I began coding the project in Javascript, that arena has gotten stronger, though I’d still call it “experimental” for advanced applications.

Speaking of experiments, while the Google Maps application and its API are pretty well-tested, I was definitely treading some new ground. Also, I found the documentation to be lacking in some instances; for instance, it’s not always explicit what type of object is required as a parameter and what type of object is returned (in some cases, a class will be referred to by two or more names throughout the documentation - not helpful!). One possible bug I found was that the ‘disableDragging’ method doesn’t always ’stick’. Perhaps all of my animation and GOverlay hacking was confusing the map, but dragging definitely enables at times that I don’t want it to, and at times when I’m definitely not calling the ‘enableDragging’ method. I’ve unfortunately overcome this with a ‘dontDragDaemon’, which makes sure dragging stays disabled when it needs to.

First of all, the GMarker class and GInfoWindow class simply don’t support animation. That was a big deal to overcome. I wound up completely re-implementing both concepts according to the GOverlay interface, which worked out well. However, I found some of the behavior of GOverlay to be downright unpredictable. The ‘force’ parameter to the redraw function seemed to be passed ‘true’ more than I wanted it to, so I had to manage that largely on my own. Inside my info windows, Flash movies sometimes play. In Safari, mouse interaction with the Flash did not work at all. I suspect it had something to do with the ‘pane’ architecture of the map, but after much head scratching, I decided to take the Flash out of the map, and merely position it on top of the map.

Here are two great examples of the map in action. Unfortunately, the feature is a bit hidden. Click ‘Map It’ to bring up the map. Comments and bug reports are encouraged:

There’s also a small version on the map, used on another type of page (down the right side):

All of the animation and event handling was done using YUI, a library for which I only become more fond as time goes on. The documentation is perfect, once you find your way around. I may write another article just to fully proclaim my love for YUI…

social bookmark of choice: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Ma.gnolia
  • Reddit
  • Slashdot

Front-end development in a Java world, Part 3: ant shortcuts

February 22nd, 2008

HTML/CSS developers, and, really, many developers, don’t spend their time at the command line these days. In a Java world, build scripts are usually run from the command line or automatically from Eclipse. In my experience, most front-end developers don’t like Eclipse, preferring IDEs like Dreamweaver, Coda, and Notepad++. To make their lives easier, I’ve made a bunch of 1-line batch scripts that run full and partial builds, and put shortcuts to those batch scripts right in the quick-launch area of their desktops.

Where appropriate, I’ve actually bypassed ant. In particular, I found the partial build to be unnecessarily slow when all that is needed is deployment of JSPs. So, I downloaded CWRsync and made a batch script that syncs JSPs from the version controlled directory to the deployed directory, taking the process from over 20 seconds down to under 5 seconds (it adds up!). I’d include that script here, but it’s project-specific. The CWRsync download comes with great examples, so that’s where I’d suggest starting. Note: cwRsync’s cygwin1.dll conflicts with that of Cygwin. Just copy whichever one is newer, and overwrite the other.

social bookmark of choice: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Ma.gnolia
  • Reddit
  • Slashdot

Front-end development in a Java world, Part 2: Using server-side includes to deliver HTML appropriately for JSP Tiles

December 18th, 2007

The Java project for which we’re doing front-end development uses JSP Tiles. These clever little guys allow HTML output to be broken into pieces that can be reused in many places by the application.

As development begins on a new phase, I meet with one or more back-end developers to go over wireframes and work out the most likely scenario of how the tiles will be divided (so far, our initial guesses in this regard have been largely accurate). Since the Java application, especially at the beginning, is hardly ready to populate pages dynamically for the new project (not to mention that front-end developers don’t love JSP), we usually begin development on static HTML pages. In order to A.) deliver the HTML in a form as close as possible to what the back-end developers need to create the JSP tiles and B.) avoid duplication in our HTML coding, we use server-side includes to build HTML pages from modular, reusable components under Apache Web Server.

As the Java application becomes ready for presentation-layer development, the back-end developers use the HTML ’tiles’ we created as the starting points for JSP tiles. During the remainder of development, we keep an instance of our web server available on the network, so that the HTML versions of the pages and the individual ’tiles’ can be referenced as the JSP tiles are built and tested.

One more aside: HTML delivered from one team to another should be perfectly indented, and as well-organized and well-commented as possible (label those closing divs!). Comments and extra whitespace can always be removed after the process if there is excess.

social bookmark of choice: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Ma.gnolia
  • Reddit
  • Slashdot

Front-end development in a Java world, Part 1: serving Tomcat and Apache Web Server from the same domain & port, locally

December 14th, 2007

Over the last several months, I’ve worked hard to make it as easy as possible for our front-end developers (including me) to perform front-end development in a Java environment (on Windows).

Here are some of the preconditions I am dealing with:

  • The Java application (via Tomcat) outputs absolute references to static assets.
  • Tomcat is not serving CSS, Javscript, Flash, or images.
  • The Java application only runs on Windows.

Apache Web Server & Tomcat side-by-side

For a long time, it sufficed to run Apache Web Server on port 80 and Apache Tomcat on another port. We put our preferred host name on the 127.0.0.1 line in \Windows\system32\drivers\etc\hosts , and set up a vhost under Apache Web Server for that domain. Pages served from http://ourhostname:9080 and all of the CSS, Javascript, etc., served from http://ourhostname (without the port needed).

That worked great until Google Maps came along. For some reason, it seems impossible to register a domain key with a port number like 9080. The key for ‘ourhostname’ did not work on 9080, and attempting to register a key for ‘ourhostname:9080′ yielded the same key. Loading the pages from localhost:9080 worked for the most part, but we encountered some cross-domain issues with scripts in IE6 that way.

Reverse-proxying Tomcat under Apache Web Server

The really fun part (thanks for the tip, Martin!) was reverse-proxying Tomcat under Apache Web Server. Not that it wound up being complicated… here’s a vhost configuration that essentially serves all non-static assets from the local Tomcat instance:

<VirtualHost *:80>
    ServerName ourhostname
    DocumentRoot /ourhostrootdir/static/
    RewriteEngine On
    RewriteCond %{REQUEST_URI} ^/$
    RewriteRule ^/$ http://localhost:9080/ [P,L]
    RewriteCond %{REQUEST_URI} !^/(css|js|swf|xml|images)/.*$
    RewriteRule ^(.*)$ http://localhost:9080$1 [P,L]
</VirtualHost>

The key here is the P option at the end of the rewrite rules, telling Apache to use the rewrites to behave as a reverse proxy (mod_proxy must be installed and enabled). I must have read the mod_proxy docs about 6 times, and I never saw that lovely mod_rewrite tie-in, which really kicks ass!

Now, everything loads from http://ourhostname/ , with no port numbers, which is pretty slick. I’m not going to post all my Apache config files… they’re practically pristine other than the enabling of mod_proxy and vhosts. Feel free to contact me directly if you have any questions.

social bookmark of choice: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Ma.gnolia
  • Reddit
  • Slashdot

Optional packages I choose when I install Cygwin (Cygwin, my hero)

December 12th, 2007

This post is mostly for my own benefit, and may be edited in the future. Since I’m a shell guy stuck (at least for now) in a Windows world, I find myself installing Cygwin on machines on a regular basis. I still don’t really understand how anyone gets anything done on Windows machines…

Digression: the ‘find’ command alone is so powerful and amazing… sigh. Not to mention sed, awk, and grep, and the lovely pipelines, ifs, whiles and fors that tie it all together. I’ll be very happy if and when I never have to use a Windows machine again (or Windows makes bash its default shell, like Mac did).

During Cygwin installation (and subsequent execution of setup.exe) there is a huge tree of packages to choose from. After installing it a half-dozen or so times, I decided to start keeping track of which non-default packages I select. I haven’t had to use all of these on Cygwin, but I’ve had to use all of them on Linux, so it’s probably just a matter of time. I do not de-select any default packages.

  • Archive
    • unzip
    • zip
  • Devel
    • gcc
    • make
    • pcre
  • Editors
    • ed
    • vim
  • Net
    • curl
    • ping
    • rsync
    • whois
  • System
    • util-linux
  • Text
    • tidy
  • Utils
    • diffutils
    • screen
    • time
  • Web
    • wget
social bookmark of choice: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Ma.gnolia
  • Reddit
  • Slashdot

Notes on Rich Web Experience 2007, San Jose, CA

September 16th, 2007

HUGE was kind enough to send me to the Rich Web Experience conference in San Jose earlier this month. Overall, I give the conference high marks. It’s a pricey conference, but they included three meals a day (which weren’t bad) and the conference was a 12+ hour experience on each of the first two days. I also met one of my idols, Jeremy Zawodny, albeit briefly. The interaction designers were all star-struck with Jesse James Garrett, but I’ll take the author of mytop and an especially good blog over JJG any day.

The best talks I saw were ‘Merging Ajax and Accessibility‘ by Mark Meeker, ‘Architecture for the Rich Web‘, by Nate Grover, and ‘YUI: A Foundation for Rich Web Experiences at Yahoo and Beyond‘, by Eric Miraglia.

Merging Ajax and Accessibility

Mark Meeker stressed the importance of progressive enhancement: building a site that works without Javascript or CSS, and progressively enhancing the user experience for clients that can take advantage of CSS and/or Javascript. He gave great examples of using forms as a substrate for DHTML/Ajax web applications in such a way that — even though the experience will be different — people using screen readers, braille displays, and screen magnifiers will have access to the same information and functionality. Mark also pointed out another (fairly obvious) huge benefit of progressive enhancement: mobile and low-tech browser compatibility.

Some food for thought: the ARIA specification, and the legal ramifications of not being accessible. Check out the Firefox Accessibility Extension and the Color Oracle (to test for color-blind-friendliness).

Architecture for the Rich Web

The primary lesson I learned from Nate Grover’s talk was building javascript components to be ‘agnostic about the data source’. That means javascript components should interact with other components as if those components retrieve data asynchronously. To do so, callbacks are passed along with requests sent to components (the observer pattern). In this way, components don’t wait around for responses from other components, holding up execution; rather, execution continues, and whenever the component is ready with its response, it triggers the callback from the calling component. It’s just a tad complicated, and Nate explained it a lot better than I am here, but I think this technique can be very useful, especially if you want to make components that can behave in a synchronous or asynchronous manner, depending on context.

Nate also spent a fair amount of time stressing the importance of simplicity in the interfaces your components present. He gave some pointed examples of how some popular UI libraries sabotage their own reusability by packing too much into interfaces (scroller = new Scroller('elementID', optionsObject);), rather than providing simpler APIs (scroll(elementObject, direction, time)).

YUI: A Foundation for Rich Web Experiences at Yahoo and Beyond

Eric Miraglia really sold me on the YUI library. It’s modularity may be a double-edged sword, given the minor complexity of figuring out which combinations of files you need at a given time, but it’s a well-considered compromise. In general YUI allows you to produce great, rich applications with a truly negligible download size (in terms of YUI components, anyway). Watching the code examples skip by on the screen, I also noticed a perfect consistency of interfaces; YUI is truly thought-out from top to bottom, making it a friendly, predictable creature to work with. Since Yahoo! uses its library internationally on its extremely high-traffic web properties, one can feel assured that the code is well-tested and compatible with all of the major browsers.

On the CSS side, I’m particularly interested in YUI’s CSS Reset — it irons out most of the most troublesome browser differences in terms of ‘default’ styling, which definitely reduces the need & temptation to resort to browser hacks. The CSS Grids, while they seem nice and reusable, did not appeal to me too much. Perhaps I’m a masochist, but I don’t mind laying out my own grids, and it’s worth hand-coding grids to get more semantically meaningful HTML.

Also mentioned: the YUI Compressor is currently regarded as the best javascript minifier out there. Check it out.

social bookmark of choice: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Ma.gnolia
  • Reddit
  • Slashdot

A better RSS feed from yours truly, using Yahoo Pipes

August 3rd, 2007

Using Yahoo Pipes, I’ve combined my blog, my Google Reader ’shared’ items, and my del.icio.us ’share’ tag into a single RSS feed:
http://pipes.yahoo.com/pipes/pipe.run?_id=0Pj34kFB3BGbj9QKJxOy0Q&_render=rss (rss | html)

I don’t always write in this blog as frequently as I’d like, but I read quite a bit each day to keep up with the latest in web development and the latest in my favorite fields of science. I constantly forward links to friends, often people who already subscribe to my blog. On the other hand, I wouldn’t want to put my del.icio.us links directly into my blog feed, as some people do. Also, I find my ‘whole’ del.icio.us feed has a lot of links I can’t imagine being useful to too many people, which is why I’ve introduced the ’share’ tag (which currently has about three items, total). So anyway, what you’ll get is content I’d like to deliver to my intellectual inner and outer circles, without the confusion of re-blogged or aggregated content in my actual blog. If you like it when I send you links, or you wish I did, consider replacing your subscription to my blog with a subscription to Greg Whitescarver’s Unified Feed. And if you still read my blog by visiting this site, my Google Reader shared links and del.icio.us ’share’ tag are syndicated in the right-hand column.

If you do subscribe to my unified feed, please let me know if there are any problems with it. Also, please let me know if any of my shared links are particularly relevant to you; I’ll make an effort to share related topics in the future.

social bookmark of choice: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Ma.gnolia
  • Reddit
  • Slashdot

Surviving without a car in Los Angeles

July 30th, 2007

After my 6 weeks of free company car ran out here in Los Angeles, I opted not to buy a car. Instead, I saved up the cash to spend 10 days in Europe. I got back last Monday. Here are some pictures.

So you might want to know how it is, living in LA without a car. There answer, for me, is “not bad at all”.

I take the subway to work. Yeah, you heard it right. I take the Red Line of the Los Angeles Metro seven stops every morning, with a short walk at each end. I have never had a better commute (except when I worked at home). The dry weather in LA also makes it much less likely that rain & wind will have me entering the office looking like a wet dog. Even when I get a car, I’ll continue taking the subway to work.

My location is just about perfect for a guy without a car, I’d say. Not only am I walking distance from the Metro station, which is not in the nicest of neighborhoods, but I’m also walking distance to a very nice, several-blocks-long strip of restaurants, cafes, bars, and hip retail outlets known as Sunset Junction (a part of the Silver Lake neighborhood).

To get to the beach, I’ve been taking the 704 bus to Santa Monica. At 60 minutes, it takes 20 minutes longer in each direction than driving a car. However, if you factor in the facts that I can do the crossword on the way and don’t have to worry about having a mimosa or two before returning home, it’s not a bad setup at all.

I’ll get a car eventually, but I think tales of cars being an ‘absolute necessity’ in Los Angeles have been greatly exaggerated.

social bookmark of choice: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Ma.gnolia
  • Reddit
  • Slashdot

Fowler on Ruby, Java, C(++) and the multilingual programming future

July 30th, 2007

Martin Fowler recently posted OneLanguage, and article exploring the costs and benefits of using multiple programming languages in a project. He also hints at what my dad has also been preaching: Ruby, and languages like it, are as significant an advance beyond Java as Java was beyond C++.

social bookmark of choice: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg