Results matching “guide” from Ye Olde Rad Blog III

Created a dedicated 'Guides' page. See here » Radified Guides. Been meaning to do that for .. eons. This will allow me to off-load the guides listed here on the home-page, so I can clean it up.

MODx Content Management System (CMS)I indented & right-aligned every other link .. to make them easier to read. What do you think? When the links were all lined-up together & left-aligned, they seemed too .. similar.

Eventually I'd like to include a representative graphic for each guide/link. But for now, I just wanted to create a page that contains a repository of the links to all our guides.

On a related note, I've been looking more deeply into MODx, the Content Management System (CMS). They are fixin' to release a new version (complete-rewrite, from the ground up, based on PHP5) .. called » REVOLUTION. (Current version is called » EVOLUTION.)

Drupal would be cool, but it's way too sophisticated for what I need. I don't want/need a PhD in CMS's. Here's a MODx site, for example. (I used to live in Lancaster, PA .. the heart of Amish country. Nice people there.)

I'd like to become intimately familiar with a good CMS .. as another skill to add to my digital toolkit. Only way to do that is » use one daily.

The good people at MODx claim a 'Release Candidate' version of REVOLUTION will be coming » "Winter 2009" (.. which is now). [ Notice how the words 'Summer 2009' have been lined-out. ] UPDATE » They just changed the RC date to "Spring 2010". Hmmm.

The MODx site is running REVOLUTION. I'm in no hurry, tho. Rather make a good decision than a hasty one.

Changed the type of layout I use on the home page .. to » LIQUID-ELASTIC hybrid. If I did this correctly, you shouldn't notice any difference .. unless you change your default text-size (.. by selecting 'Text Size' from the 'View' menu in IE). Lemme know if you notice any display quirks.

Liquid CSS Web Design LayoutThere are 4 different 'types' of layout designs:

  1. FIXED (column widths remain fixed, no matter what, used » here)
  2. ELASTIC (column widths change with changes to your preferred font-size)
  3. LIQUID (column widths change with changes to browser-window sizing, used » here)
  4. HYBRID (combination of two or more of the above, used »  here)

I've long preferred LIQUID layouts (sometimes called » FLUID), which resize column widths as you resize your browser window (called the "viewport" by those in the biz). It's easier for me to understand the concept behind LIQUID layouts .. than ELASTIC.

Today however, I'm demo'ing a » HYBRID layout .. that combines elements of both LIQUID & ELASTIC. [ If you've read my SCSI guide, you know I'm a fan of hybrid config's. ]

The center section/column remains » LIQUID, while the two sidebars (blue-green colums) are now » ELASTIC. This means they will resize with changes made to your preferred font-size (e.g. » small, medium, large, gigantic, etc.). The center section will continue to change proportionally, as you resize your browser window - just like before.

Resizing your browser window will no longer affect the width of the blue-green sidebars (which are already skinny), while changing your default font-size will not affect the width of the center column/section.

The design itself of the home page has remained unchanged. Only the 'type' of layout has been modified (.. from LIQUID to » LIQUID-ELASTIC hybrid). This new type of page layout is considered more 'accessible' ..

.. especially for those who might have difficulty reading smaller text, and need to bump up their default font-size.

(Today btw, is 9-9-09 .. for all you numerologists.) Anybody who has ever used Cascading Style Sheets (CSS) to style a web page has likely experienced the frustration that comes when a particular style refuses to render the way you want.

Understanding the concepts outlined here will help troubleshoot any CSS rendering problem .. much better than banging your head against the wall (.. a technique that seems to provide limited success).

Three rendering principles determine how CSS styles are applied to a web page, and which style(s) take precedence. They are:

  1. The Cascade
  2. Inheritance
  3. Specificity

For reference sake, here's a quick review of basic CSS syntax » selector {property: value}

For example » p {color: green} .. will apply a value of 'green' to the color property for the text contained in a paragraph ('p' = paragraph selector). This is called a CSS "rule".

Here's a brief overview of the 3 rendering principles listed above that determine how CSS rules are applied to a web page:

CascadeI. THE CASCADE

Styles are applied in the following "cascading" order: External style sheet » Embedded styles » Inline styles.

A given HTML page can contain one, two, or all three (or none). Styles lower down the cascade normally supplement (add to) styles higher up the cascade. If a styling conflict exists however, styles lower down take precedence.

In other words, the last style applied wins (.. given equal specificity). Here's a brief description of each type of cascading style mentioned above.

1. External style sheets (fileName.css).

These styles can be applied to an unlimited number of HTML pages .. which link to the CSS file. Very powerful, since they allow you to change the look-n-feel of an entire site by modifying a single file. Web pages normally link to only a single external style sheet, tho it's possible to link to multiple external style sheets .. which also cascade, depending on the order they're listed. Large professional sites often use multiple external style sheets.

2. Embedded styles

They are found within the head tag of an HTML page. These styles are enclosed within the 'style' tag <style> and apply only to the HTML page in which they are found. These styles supercede any styles contained within an external style sheet that may conflict with them (.. given equal specificity).

3. Inline styles

Inline styles are applied to individual HTML elements/tags, using the "style" ATTRIBUTE. Note that this is not the same as the style ELEMENT applied to embedded styles mentioned above, tho it's spelled the same way. Inline styles supercede all others that conflict with them .. since the last style applied wins. Plus, they carry maximum specificity (which we'll discuss later).

Rad Guide to Drive Imaging & Disk Cloning

|

Been working on the Rad guide to Drive Imaging & Disk Cloning. Helps to be up-to-speed on Web Page Templates. Makes that part of it go more smoothly.

Digital sleepI endeavor to work on it a little every day, tho it never works like that. Yet when I focus, I'm able to put my head down & plow.

The guide seems to have a mind of its own .. like it knows how it wants to turn out. So I go with the flow, prepared to lay aside preconceived notions.

I would hope all Rad regulars are already onboard with a backup program .. since creating backup images with a Cloning program is what we do here.

One of the concepts that keeps popping up in my study of Programming languages is » expressiveness. Loosely defined, expressiveness is » the ability to say a lot with a little (my own definition).

ShakespeareWhere Programming languages are concerned, expressiveness might be the ability to DO a lot with a little.

Related terms » Meaningful. Concise. Simplicity (as it applies to the elimination of unnecessary complexity). Elegance. Efficiency.

No doubt, you know an 'expressive' person or two. But sheer volume of words does not an expressive person make.

Some people can talk for hours without really saying anything (.. at least not anything meaningful). While others can speak volumes with a simple glance.

In programming, the notion of expressiveness is often touted as a plus, associated with "higher level" languages. I could be wrong, but the idea I get is » the more expressive (a language is) the better. Notice the statement that begins the second paragraph here:

"My contention is that expressive power is the absolutely most important property to focus on right now."

This from a developer with an admitted "unhealthy interest in programming languages," who's currently developing his own. Since the learning process often involves relating new information to things we already know, that's what I've been doing.

As chance would have it, I was watching Hamlet last night (the Kenneth Branagh version). Didn't take long to realize much of what was being said wasn't getting thru. ( "Say what?" )

So I enabled English subtitles and started vigorously working the pause button .. in order to read & digest the Elizabethan chatter. Much better.

Saying Much with Little

Note how the phrase » 'To be or not to be' is exceedingly simple. Yet it carries much meaning beneath the surface (.. especially that 'not-to-be' part).

The ability to "say much with few words" is a primary reason cited when discussing Shakespeare's literary prowess. In other words, it's not just what he says, but the way in which he says it .. that makes his writing so .. descriptive, enchanting.

Microsoft Fears Linux

|

I'm reluctant to republish the content of others (as so many sites already do), but .. I found it interesting & noteworthy that » Microsoft has acknowledged Linux as a threat .. especially since I spent so many hours in Linux these past few weeks (learning the Unix shell)

Linux PenguinCopy-n-paste snippet (minor Rad-editing for brevity):

"Microsoft acknowledges Linux as the first viable competitor to its Windows client business, due to the use of Linux on netbooks, which are rising in prominence as an alternative to full-sized notebooks.

Microsoft cited Red Hat and Canonical -- the latter of which maintains the Ubuntu Linux distribution -- as competitors to its client business, which includes the desktop version of its Windows OS." </snippet>

Notice how the article said » DESKTOP, and not server. Linux has long been a dominant force in the server market (.. if not the dominant force).

It's difficult to describe why Linux is so cool .. why using it feels so fresh & clean. But I think it has something to do with the good intentions .. that come from thousands of talented programmers donating their time & expertise .. to bring you (for free) an operating system they obviously believe in.

I might be imagining it, but I think you can actually feel these good intentions (while using Linux). Can you feel the difference (in intentions) between someone who genuinely loves you, and someone who is paid to love you?

Moreover, I feel our economy has a lot to do with the Linux threat to the Microsoft desktop. No matter how compelling the product, basic economics suggest it's hard to compete with free. (Which Windows is not.) And in these troubled economic times, free means more than it used to.

I'm learning programming. Not a specific language, such as Javascript or Ruby. Rather, the concepts of programming .. that can be applied to ALL programming languages.

[ By the way, I've completed my study of the Unix shell. You can retrace my CLI steps » here. ]

Structure & Interpretation of Computer ProgramsMy particular style of learning emphasizes nailing down foundational concepts .. those primarily presented at the beginning of a course.

While this approach can be frustrating initially, because it slows progress at the outset, while foundational concepts are digested on an emotional level .. it allows me to crank thru with confidence (at an accelerated pace) once the foundation is set. [ See note #1 for an example. ]

Like any good geek, I've previously sought entrée into the world of Programming, but always settled for a cursory review of specific languages. (Most recently » Javascript.) Never found that global entrée I was seeking .. until recently.

The approach that is working for me .. is a combination of studying the HtDP text and watching the SICP videos (found » here).

  • SICP = Structure & Interpretation of Computer Programs (based on Lisp)
  • HtDP = How to Design Programs (uses Scheme)
  • Both languages are similar. So the two courses complement one another nicely.
  • The SICP videos and the HtDP text are freely available online, along with the SICP text.

The SICP course is legendary in the world of Computer Science. More people refer to it as the single best course on Programming .. than any other.

It was designed and presented by two professors at MIT (.. arguably the world's finest institution of geekdom). Moreover, it was recorded and the videos posted online, where they remain available for download & viewing (free).

I admit, I need to view each video multiple times before feeling comfortable enough to move on to the next lesson. But I *am* getting it .. and enjoying it.

The HtDP course is a simplified version based on the concepts presented in the SICP course.

Neither the SICP videos by themselves, nor the HtDP text alone works for me. But .. combining both courses really makes things click. I get it. I see what's happening .. how things work. It makes sense. And I look forward to learning more.

Learning the Unix Shell (bash)

|

Last month I mentioned a quest to learn the Unix shell .. specifically » bash (the Bourne Again SHell). Almost done. Currently ~80% complete .. enough to feel reasonably confident at a terminal.

Linux shell terminalThe 'shell' is simply a program that lets you interact with the operating system (actually the kernel, to be more precise) ..

.. by taking your (text-based) commands and passing them on to the kernel. In my case, this kernel happens to be » Linux (which is but one variant of Unix).

The term 'shell' comes from the notion that this software acts like a 'layer' that sits between you and the operating system .. similar to the way an egg-shell sits between you and your hard-boiled breakfast.

The shell can be intimidating, cuz it uses a (text-based) command-line interface (CLI). No intuitive GUI to help you along. You either know the commands or you don't.

Didn't take me long to realize the CLI was where Linux's true power resides. When we upgraded the site, for example, to a Virtual Private Server, the support-techs who helped me with the move all used the command-line to work their mojo.

Most Linux distros do indeed come with an excellent GUI (usually either KDE or Gnome). But (but!) the Rad VPS does not. Which is why it became necessary to learn the Unix shell. (Something I tried to avoid.)

The Rad VPS is based on CentOS (Community ENTerprise Operating System), an off-shoot of Red Hat, which is probably the most popular of all enterprise Linux distros (.. and now a new member of the S&P 500, a development you may find telling).

GUIs (such as KDE or Gnome) require lots of memory/RAM. My laptop, for example, has 2-gigs, but the Rad VPS comes with an allotment of only 512-MB (.. upgraded from 384 just today).

With that limited amount, I need to run not only all the standard web applications .. such as Apache (web server), MySQL (database), Perl (scripting language), etc. but also cPanel/WHM.

So there's not much RAM left to run a GUI. [ Don't think I didn't inquire about installing a GUI. =) ]

Bottom line » if you wanna administer your own VPS, you need to learn the Shell. So that's what I'm doing. (Of course, there have been distractions, making progress uneven.)

I know a guy who used to make serious bank. He always seemed to have a wad of broccoli handy. So it surprised me to learn he's now living in a ditch.

Homeless man"Where ya been?" I asked, running into him recently. (Hadn't heard from him in months.)

"I moved," he said. "Where to?" I inquired.

"I'm living in one of the most exclusive neighborhoods in San Clemente," he boasted. "Presidential Heights. Not far from where Nixon used to live."

[ I used to live in San Clemente myself, just off Buena Vista, a stone's throw from the beach there, and walking distance to the pier. So I'm familiar with the area. ]

After sharing how his global Internet-based business has been taking a beating, and how he began having trouble making rent, he described how he threw everything into storage (for $55/month) and moved to a "secluded ravine" he'd discovered while surfing nearby.

"I arrive shortly after sunset," he explained regarding his new routine, "and park about a hundred yards away. To discourage hikers, I've moved some brush across the path. I have a sweet little spot, complete with Thermarest pad & sleeping bag. I fall asleep to the sound of the ocean every night."

While showing me a video of his "new home" (recorded on his cell phone), he continued, "A blue jay wakes me every morning. I feed him peanuts."

After an early morning aerobics class (where he showers afterward), he heads off to the library where he begins his work. But while he was in the restroom last week, some kids stole the memory from his laptop.

Quest to Learn the UNIX Shell (bash)

|

Been learning the UNIX Shell, which uses a command-line interface (from a terminal) .. something I've wanted to do ever since we upgraded to the Virtual Private Server last year. (Linux is a variant of UNIX.)

Linux shell terminalEven basic knowledge of (how to use) the Linux command line makes life administering a VPS much easier.

The Shell is simply a program that allows users (like me) to interact with the operating system (sometimes termed the 'kernel'). It can be conceived of as a 'layer' sitting between you and the operating system .. hence the term » shell.

Several shells exist, but nearly all Linux distributions come with » bash (Bourne Again Shell) .. cuz it's free, powerful and easy to use.

On my laptop I have installed a copy of Ubuntu Linux that I use to learn the shell (practice). Before jumping into learning the Shell, I figured this was a good time to upgrade my 'installation' of Ubuntu .. to the latest release (» v9.04, 'Jaunty Jackalope').

So I downloaded » this virtual machine (1.1 gig, using uTorrent). Had trouble getting it connected to the Internet, but that was due to my own inexperience with VMware, and not due to any short-comings of Ubuntu.

Anyway, I am really digging learning the Shell, cuz it's something I can use right away. For example, yesterday I upgraded the blogging software we use here at Radified (Movable Type) to the latest version (» 4.26). Something that used to take hours to accomplish was done in minutes .. (using a series of Shell commands). Beautiful.

Back when I investigated how to create a webpage template, a couple weeks ago, I really had in mind the notion of using a template as the basis for a new Rad guide .. not one on Dreamweaver Templates however, but rather one for » Drive Imaging & Disk Cloning. Today I created that template, and began a new Rad guide.

Hard disk drive internals Definitely takes longer to get up-n-running when using a template, cuz you first must determine exactly how the guide will be structured .. and what items to include in the template, and what parts need to be editable.

Can't just start cranking out pages of text and entertaining new ideas (.. like I used to) .. leaving the details of page structure to deal with later.

Templates force you to pre-think everything up front, before you begin generating content-one. They even force you to anticipate changes .. which is new for me .. especially since I've grown accustomed to the ready-fire-aim approach, which leaves the details of page structure for later .. but by then it's difficult to make changes .. cuz each page must be edited individually (.. hence the need for templates).

I was so eager to get started on the guide that I actually had to start over (several times) .. due to major template modifications. (Arrgh!) Kept getting new ideas .. things I wanted to add/tweak.

You can always modify a template, as that's what they are designed for. But when a template requires many edits, it seems easier to just start over and create a new one. (Something I'm getting good at .. from all the practice.)

If you view this home page in Firefox (or a browser other than IE or Opera), you'll notice I added some rounded corners.

The rounded corners of this box use graphics to achieve its effect (1 in each corner). Not as cool as pure-CSS. But that's why you can see these rounded corners in IE & all browsers. This box will expand and shrink (down-n-up) as necessary to accommodate text inside, as its width is fixed (to 205 pixels).

Been reluctant to spend much time focusing on site styling, preferring rather to concentrate on generating » content.

In the world of cars, for example, I've always preferred the spartan cockpit of a Porsche to the bells & whistles you find sitting in a corvette. Tho admittedly, that's just my druthers.

My point » function should never take a back seat to form.

I've considered adding rounded corners many times before. Countless techniques exist. But they always seemed a kludge. (Andy agrees.) So I never felt it worth adding the extra markup necessary.

Techniques that use graphics to achieve their effect involve inserting additional HTML elements that are otherwise unnecessary, because current CSS standards (v2.1) allow only 1 background image per element (while each box has 4 corners). Future versions of CSS (v3.0) will support 8 images per element (for this very reason).

This approach has 2 main problems. First, adding (otherwise) unnecessary markup goes against all that is holy to the Web Standards movement, which touts the tenent of 'Semantic Markup' as one of its pillars.

Find recent content on the main index or look in the archives to find all content.