Whimsical.nu

Welcome to a Whimsical Blog~

Hi, I'm Angela, a girl with a blog on five different psyches:
girl, geek, reader, writer, gamer
Choose your poison ♥

Survey Says

I’m resurfacing to post a quick shoutout for everyone who’s into web design: you should all take the 2007 Web Design Survey at A List Apart. You should take it if you’re a web designer, so that we know who we are. You should take it even if only for the prizes! It’s quick and painless and a breeze to go through. They’re releasing the results after the survey ends on May 22 this year, so get your answers in before the deadline.

The 2007 Web Design Survey

0 Comments

A daily dose of books (DailyLit)

I was reorganizing my bookmarks a few days ago and came upon quite a few interesting literary/reading/writing websites that I had previously bookmarked, some of them for checking out at a later date. One of these is DailyLit, a service that brings books to you via email on a daily basis.

We created DailyLit because we spent hours each day on email but could not find the time to read a book. Now the books come to us by email. Problem solved.

Subscribers can choose books to read, schedule when they receive each book’s installment (daily, on weekdays, or only on Mondays, Wednesdays and Fridays? at what time?) and choose if they’d like to receive it via email or RSS. Jane Austen’s Pride and Prejudice has 149 parts, Leo Tolstoy’s Anna Karenina—which I chose to receive—has 430 parts, and another one of my choices, the first part of Aeschylus’ Oresteia, Agamemnon just has 24 parts. There are over 250 books served by DailyLit, all of them in the public domain (sorry, no Harry Potter here).

It’s a nifty idea, and one I always meant to try out. So when I came across the website just recently, I decided that while I usually prefer not having to spend such a long period of time over anything (for example, I hardly watch TV; I prefer buying whole seasons of TV shows just so that I don’t get the cliffhanger episode endings!), right now it was probably best for me to read books in short, manageable chunks. Personally, I haven’t been able to do a lot of reading lately, especially new books; recently, when I gravitate towards books, it’s always been towards books I have already read in the past, such as Catherine Marshall’s Julie, or Charlotte Brontë’s Jane Eyre. It’s not a lack of new books that’s the problem (I actually bought two last week: Amy Tan’s Saving Fish From Drowning and Diane Setterfield’s The Thirteenth Tale) but I realized that I was drawn towards previously-read books because they were comforting, like old friends you can stay quiet with, ones where you need no words to fill the spaces between you (which doesn’t look like a very good metaphor, as friendships between books and people are based on words themselves). They’re not very demanding of your “love”. Since the prospect of picking up a semi-thick/thick book to read while I’m resting was making me tired, small light chunks while I’m going through my email should be great, right?

So far, as previously mentioned, I’d picked up Anna Karenina and Oresteia: Agamemnon, on the third part for both. I’m liking how the reading is going so far: it’s not demanding, each part’s length isn’t daunting, and I’ll admit it, the nifty-ness of the whole thing hasn’t worn off. I’ve never been the sort to read e-books, preferring good ol’ paper when it comes to reading text; but since DailyLit gives me these books in readable, light chunks, it’s actually enjoyable to have a dose of the classics amidst the hitting of the delete button for spam. ;)

So what’s great about DailyLit?

  1. Too busy for books? Each part sent to you are just the right length, so it doesn’t take up too much of your time.
  2. It’s free! Since all the books are in the public domain and you don’t pay a thing to get it via email/RSS, you’re reading books for free and without stepping on anyone’s toes.
  3. A dose of the classics in between stressful emails is great for slowing down and relaxing.
  4. You can schedule when you receive each part, so that it follows your preferred habits as much as possible.
  5. This is a great way to “test read” books before buying them.

What’s not so hot:

  1. I imagine that when the book starts getting really good, it will get annoying to have to stop reading. But that’s what the bookstore is for: like it so much that you can’t put it down? Buy the book!
  2. The plain text formatting of the books sent can take a little getting used to, if you’re not used to reading things from places like Project Gutenberg. Tip: words between underscores (_) are italics. I have yet to see it, but words between asterisks (*) are in heavy type.

All in all, I’d recommend this website to anyone who’s been itching to read a few classics and older work but haven’t the time or feel quite clueless as to where to start. It’s free and it’s friendly, so start subscribing. :)

4 Comments

Diving into AJAX and toolkits

Since we’ve not had work since Thursday, I’ve decided to take this time to actually sit down and try working with AJAX, or Asynchronous JavaScript and XML. I’ve refreshed my AJAX knowledge on a few light online articles (Harry Maugans’ Tutorial: AJAX Made Easy and cheat sheets for Ajax and JavaScript (specifically) are good ones) and am now busily reading and trying out examples on Beginning AJAX with PHP: From Novice to Professional by Lee Babin (the book’s pretty good).

The quick verdict is: AJAX isn’t that scary. I’ll admit that like most “old school” Web developers, I tend to stay away from JavaScript. JavaScript = bad. But I’ve had to learn the intricacies of the Document Object Model (DOM) through work and while I’d still prefer PHP any day, I found some respect an admiration for JS. (And even more annoyances with Internet Explorer :p) And JS is pretty much the only thing you need for AJAX, after all.

I’d been looking at various AJAX/JS libraries for possible future use, something I can play with. Since I learn by implementing stuff, all this newfound knowledge will soon find its way into an AJAX modification for Enthusiast (at least). I started looking into what libraries are out there, and came up with the following:

It’s still a toss-up as to which library I lean more towards, and I’m sure there are other libraries out there (and there are still the bigger frameworks to look at). AJAX Patterns has a rather comprehensive list of frameworks as well as a small comparison matrix. The JavaScript Toolkit Comparison matrix at JA-SIG and the AJAX Toolkit Shootout matrix at Summer of Code are also interesting reads, although they are a bit more dated.

If anyone’s using an AJAX/JS library/framework currently, I would love inputs and general opinions. :)

7 Comments

5 tips for following Web standards

It’s already the sixth from where I am, but the CSS Naked Day practice is interesting and something I would have done if I had found out about it earlier. Basically, it’s to promote Web standards, using correct/proper semantics in your markup, and making sure that even without your clothes—I mean, your design—your website is still, well, readable.

I remember hearing about this last year, but it slipped my mind that it would happen again this year. I shall remember next year! Especially since I’ve been increasingly (over the past year or two) moving more and more towards the separation of content and design and making sure I follow current Web standards. I feel that everyone should! Standards are there to make sure we all understand each other; what’s the use if we don’t follow them to the best of our ability?

Here are five tips to start you off on the journey towards following Web standards:

  1. Use Chris Pederick’s Web Developer Extension. Believe me, it helps a lot. You find out a lot of detail about the styles you’re using, about how your markup elements overlap, plus other nifty functions such as resizing your window (liquid layout love ♥) and removing CSS to see your website naked ;) (Internet Explorer users, you might want to check out Internet Explorer Developer Toolbar. It’s in beta 3 already, and can run with IE6.)
  2. Use standard XHTML tags over DIVs. This is something I’m continually moving into steadily, but already I’m seeing the reasons why it’s better to say <h1>My nice title</h1> than <div class="title">My nice title</div>. Yes, I used to write my code that way because hey, you work with an element that’s devoid of styles, and that’s easier. (DIVs just have the display: block style.) But what happens when there are no styles whatsoever? Everything then becomes the same. There’s no distinction between your headings and your text.
  3. As a follow-up on the above, reset all your elements’ margins and padding to zero. This makes for tighter control over your design, as all XHTML elements come with their own preset margins and paddings. This reset can be done by adding the following on the top of your stylesheet:
    * { margin: 0px; padding: 0px; }
  4. Validate your markup. Yes, this is important. This is important because valid markup really makes cross-browser compatibility easier. Yes, Internet Explorer will always try to do things its way, but valid markup means you’re following set standards. There are four types of markup standards you can follow: HTML 4.01, XHTML 1.0 Transitional, XHTML 1.0 Strict, and XHTML 1.0 Frameset. For an explanation on these, you can look at W3C’s HTML and XHTML FAQ.
  5. Learn, learn, and continue learning. The Web is a constantly changing thing, and new techniques and ways of doing things emerge quickly. Try to keep abreast of these changes, and weigh the pros and cons of implementing these changes; after all, we need to make sure that a complete switch won’t alienate readers/visitors.

Good luck on the journey, may you find it as enjoyable as I did. ♥

0 Comments

Using non-plugin third-party scripts with WordPress 2.1.2+

It’s probably a minority, but WordPress users who are using third-party scripts (like Enthusiast) directly coded/included into their WP templates (read: not included as a plugin) who have upgraded to 2.1.2 and higher may experience problems getting their blogs to work. This is due to a conflict between the database link that WordPress uses and the database link that your other script is using. Users get a variation of the following line:

Warning: mysql_error(): X is not a valid MySQL-Link resource in (path) on line Y

Basically, PHP 4.x’s mysql_connect function—which lets the script talk to your database server—gets confused as to which connection is active. This has happened to me since the script I’m using for my downloads (here in this archive, in my wallpapers archive, and the various downloadable things in my other sites) is not set up as a WP plugin; I just do a series of includes in my WP templates. So when I updated to 2.1.2, I ran into problems.

I meant to address this earlier, when I came across the problem here in my tech blog/scripts archive, but got sidetracked. I was only reminded of it when I came across some open support posts at CodeGrrl.

The fix? It’s rather simple. After every chunk of code (or PHP include) you put in your WP template that accesses the database server (read: it generates the above error), add this line of code:

// reconnect to WordPress database
$wpdb->select( DB_NAME );

(Actually, the first line isn’t that important. But comments are good for you.) This might not work for every instance; basically it just changes the database that the link connection is using. However, it’s possible that the new database user the connection is, ah, using, can’t access your WordPress database. So if the above doesn’t work for you, you’ll have to use something else:

// reconnect to WordPress database
$wpdb = new wpdb( DB_USER, DB_PASSWORD, DB_NAME, DB_HOST );

That should basically restart the WordPress database. I haven’t tested the second option, so if you end up needing to use the second option and get problems, let me know. :)

If you’re using Enthusiast with WordPress 2.1.2+ and need a better example, here’s something that may be clearer:

// show joined listings
require( 'config.php' );
$show_list = true;
include $path . 'show_joined.php';
// reconnect to WordPress database
$wpdb->select( DB_NAME );

Do the same for all the other snippets and you should be fine.

7 Comments

Blogging and Creative Writing

I found this article by Lorelle VanFossen on Digg a while ago, about blogging being about writing. I couldn’t agree more, although blogging and creative writing have different goals and different means of getting to those goals. As I read through her 30-item list, a good number of them called out to me, having been victim/champion of those items previously.

So now I give you my top three blogging and writing similarities, as well as my top three blogging and writing differences, given her list.

Top Three Blogging and Creative Writing Similarities

  1. Don’t Just Show, Show and Tell. This is also item #1 on Lorelle’s article, taking its cue from the ever-popular saying “Show, don’t tell.” I’ve always been touting along that same phase for a good while, but sometimes you just have to know when to quit showing and start telling. A nice long dialogue where you show subtle nuances in your characters’ personalities just don’t cut it when your story almost reads like a script. Nor is action upon action upon action very interesting unless your story should move that fast. A good balance between showing and telling is important, using criteria such as importance of the scene as well as time and pacing of the story.
  2. Make Your Point in the First 200 Words. (Item #4 on the list.) This is one important feature of news writing, which I did for a short time when I was younger; news writing requires you to put all important information in your lead paragraph. For creative writing, you had better grab your readers within the first few paragraphs, if not by the first sentence. Introduce your conflict, start foreshadowing, whatever rocks your boat. But make your point, and make it memorable.
  3. Write With Conviction and Passion. (It’s placed last, at #30.) This isn’t a tip or anything of the sort; conviction, passion, and love for the story shines through from the words you weave. Your passion makes your story different and original; any seemingly formulaic plot is given life and originality by the passion the author has in the story. Write about what you believe in. Write about what you love talking about. Write about what you want to shout out to the world.

Top Three Blogging and Creative Writing Differences

  1. Don’t overuse your words because they’re not like blog keywords (see item #2). More often than not while writing we gravitate towards certain words and use them time and again. Shake out of that literary bog and try challenging yourself to use words that would better fit your scene; reading your story out loud will help you pinpoint which words are overused and which should be replaced to better fit the nuances of your scenes.
  2. Write about what strikes your heart and not what you know. Unlike blogs which share information (see item #12), creative writing should call to your readers’ emotions. We’ve all been angry, sad, happy—it’s the creative writer’s task to evoke strong memories and impressions of those emotions in order to affect the readers. If we’re looking for the latest in genetics engineering, we’ll look it up; don’t get bogged down by explaining every fact if it’s not essential to your story.
  3. Don’t write like the way you talk, (against item #23) unless you’re writing in the first person point of view and your character should sound like you. But don’t write like a textbook — find the style that suits you as well as your story. Dry, or flowery? Lyrical or hard action-oriented paragraphs? Your characters may have accents which make their speech unintelligible, but make your point and then let your readers understand them without having to resort to explaining every other phrase!

And oh, for the love of all that is good, if you’re a blogger who’s also into creative writing, please don’t blog the way you write your stories. We don’t want to hear about the scent of the roses as you step gingerly into the wide arch of the heavy door, breathing in to control your wildly thudding heart, anticipating the scene that would greet you when you lift your eyes to the…

You get the point.

10 Comments

Philippine Blog Awards Results

I went to the Philippine Blog Awards Night last night with Lynn, TJ, and my Ate. Seasonal Plume didn’t win, but congrats to all the winners! I was also representing Vix’s Post Avatar plugin, and while she didn’t get the best plugin award she did win the raffle for Krispy Kreme gift certificates. :)

Updating of the blog will be sort of on hold until I get the new layout up. :)

Edited to add: I have hate mail! Seems like I’m a celebrity, hee. I’m glad to know my “losing” made someone giddy with joy that it scrambled their brains. ;)

1 Comment