Indiana University
University Information Technology Services

Amy Neymeyr's Archive

Web Standards Smackdown: XHTML2 vs. HTML5

Standards Smackdown: XHTML2 vs. HTML5Way back in July, the W3C (the governing organization of web standards) announced that it was not going to renew the charter of the XHTML2 working group. In non-bureaucracy speak, that means the W3C has stuffed XHTML2 standards development into a bottle and chucked it out to sea, where it will spend the rest of eternity bobbing on the waves and following the thermal currents. The W3C did this so that it could focus all of its attention on developing HTML5.

“Wait a minute, ” one might shout on hearing this news, “I thought XHTML was the wave of the future, and HTML was what Cro-Magnons used to code their web pages??? What’s going on?”

Its easy to be confused, and, yes, even a little bit alarmed by this news. But, in essence, the labels here don’t really represent what you think they do: XHTML2 isn’t really XHTML as you know it, and HTML5 encompasses a lot more than HTML4.01. Here’s what you need to know about both of these standards: (more…)

Extending STEPS with lynda.com: Dreamweaver CS4

IT Training and Education currently offers three workshops on Dreamweaver CS4:

  1. Dreamweaver CS4: The Basics covers the Dreamweaver environment and building a publishing a simple web site using tables.
  2. Dreamweaver CS4: Creating Websites with CSS concentrates on how to build a website using Cascading Style Sheets to control the layout.
  3. Dreamweaver CS4: Navigation, Templates & Media Integration covers how to create pop-up menus for navigation, build Dreamweaver templates to simplify site maintenance, and include multimedia on your web sites.

While these workshops provide an excellent platform on which to start exploring web design and development using Dreamweaver, they are by no means exhaustive. And, there may be certain concepts (especially related to CSS) for which you’d like additional reinforcement. This is where lynda.com can come in. Remember that from now until Dec. 20, IU community members get FREE access to lynda.com. As of this writing, lynda.com has 8 Dreamweaver CS4 series, for a total of almost forty additional hours of training on Dreamweaver CS4. Awesome! And when we retire, we’ll actually have time to watch all of it. :-)
Here’s a chart to help you narrow down which lynda.com Dreamweaver CS4 videos cover the topics you’re interested in:

lynda.com Dreamweaver CS4 Tutorials Target audience for this lynda tutorial
Dreamweaver CS4 Getting Started If you’ve heard of Dreamweaver, but have no idea why you’d use it; this would be a good prerequisite for taking the STEPs workshop Dreamweaver: The Basics.
Dreamweaver CS4 Essential Training You’re ready to build your first web page or web site using Dreamweaver. Covers much the same ground as Dreamweaver: The Basics, with additional coverage of CSS.
Web Site Planning and Wireframing: Hands-On Training
Dreamweaver CS4 with CSS Essential Training You’ve got basic web concepts like tables and images under your belt, and you want to learn how to make attractive, usable, easily-maintainable sites with CSS. Is an excellent refresher course after taking the STEPs workshop Dreamweaver:Creating Websites with CSS.
Creating a CSS Style Guide: Hands-On Training
Dreamweaver CS4 New Features You’ve got prior experience using Dreamweaver to create CSS-based websites, and you’d like to start building dynamic pages based on data from a database, create forms, or add advanced client-side interactivity using Javascript. These lynda tutorials cover areas of more advanced web development not covered in STEPs workshops.
Dreamweaver CS4: Introduction to Spry
Dreamweaver CS4 Dynamic Development

See a more detailed chart after the jump… (more…)

The More You’re Aware of Online Privacy Policies, The Less You Say

In a fascinating article in The Guardian titled “Facebook should compete on privacy, not hide it away, ” noted security expert Bruce Schneier argues that social networking sites with fairly robust privacy policies (like Facebook) should use it to their competitive advantage, rather than burying the details deep in the sites. Schneier describes the findings of a recent study at Carnegie Mellon[1] about perceptions of online privacy like this:

The social networking sites don’t want to remind users about privacy, even if they talk about it positively, because any reminder will result in users remembering their privacy fears and becoming more cautious about sharing personal data. But the sites also need to reassure those “privacy fundamentalists” for whom privacy is always salient, so they have very strong pro-privacy rhetoric for those who take the time to search them out. The two different marketing messages are for two different audiences.

And therein lies the rub: social networking sites are really just an amped-up version of the old-school telephone.  If Sally Sue is the only person with a telephone, the telephone has practically no value (except maybe to throw at an intruder).  When Sally Sue’s friend gets a telephone (and, more importantly, makes a commitment to learn how to use it and then actually use it), the telephone’s worth has just exponentially increased. The worth of social networking sites is entirely dependent on the number of members (in the short term), but also the members’ free labor to self-disclose (over the long term, as these member-offered knowledge bits are what increase usage and draw new users into the site).   The study cited by Schneier clearly finds that the more privacy policies are made evident, the more people are aware of privacy issues and less freely giving with knowledge bits. While many users would probably benefit from a privacy policy reminder (especially just before releasing pictures from an inebriated vacation in Cabo), it’s clear why Facebook and other social networking stalwarts trumpet everything but their privacy policies: it’s not in their best interests to do so.

  1. Read the original paper: “The Best of Strangers: Context Dependent Willingness to Divulge Personal Information.”
    Citation: John, L., Acquisti, A., Loewenstein, G. (2009, July 6). The Best of Strangers: Context Dependent Willingness to Divulge Personal Information. Social Science Research Network. Retrieved August 17, 2009 from ssrn.com: http://papers.ssrn.com/sol3/papers.cfm?abstract_id=1430482. []

Improve Remote Desktop in 4 Easy Steps

Business BibBack in the day, one of the more tantalizing promises of the internet was the ability to shop favorite stores while still wearing jammies. (For those of us living in small college towns, it seems like there’s no shame in wearing jammies anywhere – shopping, school, out to dinner – but I digress). We’re now at the point where the internet wave has also brought the ability for many folks to work a full-time, professional job while still wearing their jammies, via telecommuting.(Seen at right is the Business Bib, a suit-falsie so that jammies-wearing telecommuters can still look professional when in a videoconference.)

Many Windows users are familiar with Remote Desktop, which allows you to access your work computer, say, from your home or elsewhere. Depending on the robustness of your internet connection, however, you may find that Remote Desktop sometimes lags or provides a slow screen refresh, so that moving your mouse results in action on-screen several seconds later.  In this post, I’ll cover how to change a few settings in order to improve the performance of Remote Desktop so that you can be just as efficient in your jammies as you are when actually at school or work.

Four Steps to a Faster Remote Desktop Experience

(more…)

Windows 7: A New Chance for Old Computers?

There’s an old adage that the only sure things in life are death, taxes… and that new operating systems from Microsoft will require more powerful computers. (What?  Your grandparents didn’t tell you about that last part? :-) )

A (Brief) History of Microsoft Operating Systems

Many people (myself included) grow weary (and poor!) from endless upgrade cycles: each new software release seems to require an additional investment in a new, or upgraded, computer. Look at Microsoft’s absolute bare minimum system requirements for their most recent operating systems: (more…)

How To Retrieve Top (n) Rows from a Database

In SQL:Data Retrieval, one of the topics we cover is how to write a database query to answer questions like, “How many students were enrolled each term in Biology 101 from 1997-2008″ or “What is the average salary for the employees who work in the Marketing department?” These types of questions can be answered by using SQL functions. A function is a small bit of code that can accept a value, do something with it (like a calculation), and then return a new result.  In SQL, there are functions like AVG (to average) and COUNT (for, um, counting.  I bet you guessed that, though, right? :-)

Some functions, like AVG and COUNT, are available in almost every database product. Other functions are database-specific, made available by the database vendor to make your life easier (and make the competitors’ products less enticing as well). An example of one of these functions is the TOP function in Microsoft SQL Server.  Here’s a faux query, written for Microsoft SQL Server, to find the top 5 students in a class by their course grade:

SELECT TOP 5 (studentID), grade
FROM students
ORDER BY grade DESC

Theoretically, this query would return a list of 5 student IDs and their grades from the table named Students. The ORDER BY clause at the end of the statement ensures that, before the database picks the 5 at the top of the list, the list is sorted according to grade, with the best grades on top. (In other words, the DESC keyword tells the database to sort records in descending order.)

Unfortunately for people working in other databases, like Oracle or MySQL, the TOP function is specific to Microsoft SQL Server.  So, how can we find the top 5 students in other databases?

In MySQL, an equivalent statement would be:

SELECT studentID, grade
FROM students
ORDER BY grade DESC
LIMIT 0,5

Here, the LIMIT command tells the database to display 5 records starting from the 1st record (0), after sorting the records in the table according to the grades.  To display 15 records starting with the 5th record, the last line of the previous statement would be LIMIT 4,15.

Unfortunately, the solution for Oracle is not nearly as simple:

SELECT studentID, grade
FROM (
SELECT studentID, grade, RANK() OVER (ORDER BY grade DESC) rankByGrade
FROM students
)
WHERE
rankByGrade <= 5

Whoa!  What's going on here?  This is a demonstration of a subquery. A subquery is simply a SELECT statement nested inside another SQL statement.  In the above example, the interior SELECT statement (the one that starts on the 3rd line) will be executed first. Any results from the subquery will essentially be treated as a temporary table, existing for the duration of the statement's execution only. This temporary table is used by the exterior query (the SELECT studentID, grade part) as its source of data.

This particular subquery  is using an Oracle function called RANK in association with (ORDER BY grade DESC) to create a column that provides a ranking based on the grade value, from highest to lowest. The highest grade gets a rank of 1, the next highest grade gets a rank of 2, and so on.  In other words, if we were to run just the subquery by itself, the results might look something like:

studentID  grade    rankByGrade
---------  -----    ------
373478     100       1
938937     98.6      2
671037     98.2      3
565422     96.8      4

These results, including the derived rankByGrade number, are then used by the exterior query, which essentially is:
SELECT studentID, grade
FROM [the results of the subquery]
WHERE rankByGrade <= 5

Thus, the exterior query returns only 5 records, which correspond to the records that have a rankByGrade of 5 or less, or, in our case, the top 5 students.

Thanks to Mike Halla, database guru, for providing a sample Oracle query to address this issue.

Four Color Palette Solutions for Your Website or Desktop Publishing Project

When I teach a workshop on Adobe Dreamweaver or Fireworks, I’m always amazed by a question that participants don’t ask. (No, not: “Why can’t you and the laser pointer get along?”  That question, I’m afraid, has no answer.)

The question that’s never asked is: “How do you come up with these colors?“  And by “these colors”, I’m referring to the 6-digit hexadecimal codes that we use throughout the Dreamweaver and Fireworks workshops to designate specific colors for display on the web:
A small number of colors and their hexadecimal values

(more…)

No-Thinking File Synching for Free! *

* Well, up to 2 gigs of space for free

Photo of Warehouse Storage Space For a moment, think of your worst nightmare. The imagery that rouses you out of a slumber with teeth clenched, clutching the bedcovers. No, not the bad dream where you find yourself at your high school reunion standing on the stage wearing only a cereal bowl for a hat and barking like an apoplectic prairie dog. (Um, that’s actually kind of a funny dream, isn’t it?)

The other dream, the one that perhaps you’ve had while awake, where that paper/dissertation/project that was on your hard drive/flash drive/friend’s computer is suddenly corrupted/not there/gone/wait/what?!?!?!

“Oh, noooo!” you’ll cry. “I knew I should’ve backed that up!”

(more…)

See How Your Website Looks Cross-Browser and Cross-Platform for FREE

Generic Website Design Template

Design First, Then HTML-ize

If you’re new to the web design game, developing a new website (or redesigning an old one) is much like starting a new job: there are a thousand small details competing for your attention and its difficult to know how to proceed in a relatively efficient fashion.

One typical workflow, especially for smaller sites that only have static HTML pages, is to design the appearance of the site first. Some folks sketch designs on a pad of paper, others use a graphics program like Adobe Photoshop or Adobe Fireworks to lay out how the site will look. In fact, there’s been more than one great website design where the impetus came from cocktail napkin scratchings at a Friday night happy hour.

The Challenges of Translating Your Design into HTML

(more…)

Undo Send Now Available In Gmail

Ever hastily typed up an email, clicked the Send button, and, in the very next nanosecond, shouted, “Ohhhhh, nooooooo!”?

The mistakenly-sent email has happened to all of us – whether from distraction, anger, inebriation, or other happenstances out of our control – the end result is the same: a sinking feeling of self-reprobation (“How could I have been so stupid?”) or even just mild regret (“I just sent an email to a hundred people about my party, but I didn’t tell them what day or time.”)

Gmail’s recently added a feature that, if you catch your mistake within 5 seconds of clicking the Send button, will allow you to pull back the email before it’s sent. This new feature is called Undo Send, and here’s how you can add it to your Gmail account: (more…)