Leave a reply First Steps to Setting up a Website: Choosing the Right Domain Name

So you’ve got a great concept for a website and you want to get it online ASAP? First things first, let’s choose your website name and URL address. What kind of name do you want to represent your brand online?

For example, if you are creating a personal website, most first-name-only domains are already taken – like aaron.com and most other variations as the image below shows. Sometimes adding your last name’s initial can produce more available domains, but you can see from the image that AaronT.com is selling for $1,895! So that’s also not always a viable option.

First and Last name domains are easier to come by, but First + Middle + Last name domains are even easier to come by because the more unique a name is, the less likely someone else has already snatched it up.


This is where you might have to get a little creative and do some domain name searching. Most domain name search engines will give you additional various “Available” options if your first choice domain name isn’t available:

  1. Sometimes the .org, .net, .tv, or a lesser known variant is still available. The search engines usually list everything that’s possible and its availability status.
  2. Also try searching for brand keywords or adjectives that you could include in a URL.
  3. If you want to know who owns the address you want, you can do a WHOIS lookup.
  4. Sometimes you can “Make An Offer” or Hire an Agent to try to negotiate a deal with the owner of a domain name you really want. But this kind of thing is more likely to happen if you represent an already well-established company – like if nike.com was owned by a third-party and not the Nike company itself.
  5. Some domain name search engines like Nameboy.com allow you to fill in your two primary keywords for your brand and they rearrange those to try to find something that’s available.
  6. Website Hosting Providers (like Dreamhost) <affiliate link> also provide Domain name search tools to enable them to register your new Domain name through them. If you’ve found a host you like, feel free to search for a Domain name there. If not, check out this article on “Choosing the Right Website Host”

Recommended Domain Name search engines

  1. Nameboy.com (takes two keywords, rearranges them, can include hyphens)
  2. Namecheap.com (the screenshot above is from this site, its well designed and has loads of options)
  3. Dreamhost.com (my personal web host since 2009) <affiliate link>

Once you’ve found a good name, register that thing already! If it’s REALLY great, it might not be too long before someone else comes along and registers it first~

Leave a reply Build WordPress Themes: Set Up a Developer Environment

After you’ve created a localhost installation of WordPress on your computer, the next step is to set up a Developer environment to get all the tools and content ready for you to use as you develop and test this new Theme.

(By the way, if you haven’t yet created a localhost installation of WordPress on your computer, then I highly recommend Bitnami. It’s a simple double-click installer that puts all the relevant applications – MySQL, PHP, Apache, and WordPress – on your machine in no time. Give it a shot: Bitnami WordPress.)

There are 5 basic steps to setting up a good Developer environment:

  1. Install a “Starter” or blank Theme
  2. Import WordPress Theme Unit Test Data
  3. Add the Developer Plugin(s)
  4. Install an appropriate IDE (Integrated Development Environment)
  5. Create your WordPress Theme Project in your IDE

1. Install a “Starter” or blank Theme

You have a number of decent “Starter” Themes you can choose from including:

  1. Underscores (from the WordPress Theme guys)
  2. Toolbox (the Theme that preceded Underscores)
  3. Handcrafted (based on Toolbox, created by a WordPress developer)
  4. Roots (including Bootstrap, Grunt, and HTML5 Boilerplate)
  5. Bones (including Sass, Custom Post Types & Custom Dashboard)
  6. Quark (based on Underscores)

But the most recent blank-style Theme from the WordPress Theme Team themselves is Underscores. They assert that it’ll give you a “1,000-Hour Head Start” on Theme Development. And one extra nice thing about Underscores is that it lets you customize the name of the Theme template and .ZIP file you download directly from their website. It’ll help you get started that much sooner.

Once you decide on a Starter theme to install, head to your WordPress Dashboard >> Appearance >> Themes >> Add New to upload the .ZIP file, “Activate” it, and begin.
WordPress Add New Theme

2. Import WordPress Theme Unit Test Data

The next thing you want to do is be sure that you have an adequate amount of Test Data to test for all possible usage scenarios in your Theme (things like Stickies, Tags, Categories, nested drop-down menus, multiple authors, different image sizes, lists, blockquotes, tables, and so on). Rather than trying to figure this all out on your own, the WordPress team has made it quite handy to download and install all possible test data on your own.

(For a quick look at what all this test data will look like, you can head over to wptest.io’s Demo page.)

To download the WordPress Test Data, go to the Theme Unit Test page on the WordPress Codex website and right-click to Save the .XML file linked to as the first instruction under “Setup”:

Theme Unit Test

Once saved to your computer, you’ll need to Import the data using the WordPress Importer plugin. You can install this easily by going to your Dashboard >> Tools >> Import.
WordPress Import data

Click “WordPress” to be prompted to install the Importer plugin.

WordPress Importer plugin

Then “Activate” the plugin and “Upload” your previously downloaded .XML file with the Test Data in in. When WordPress asks you to assign authors, be sure that you also click “Download and import file attachments” beneath that (next picture).

WordPress import file attachments

Be PATIENT. This will take a while.

After receiving a “Success” message, go ahead and navigate to your homepage to see what your blank Theme looks like with all the new content. (My screenshot below shows what Underscores looks like with the Test Data imported.)

WordPress Underscores with Unit Test Data

3. Add the Developer Plugin(s)

When you begin developing WordPress themes, you’ll also want to be sure that the backend Development environment is properly set up to allow for you to do things like Debug your code, find and fix errors, test various sidebar widgets, permalinks, authors, themes, or other situations your future users might work with after you release the Theme to the public.

To get the Developer plugin, simply go to your Dashboard >> Plugins >> Add New and search for “Developer” – it should be the first plugin to appear:
WordPress Install Developer plugin

Install and “Activate” the plugin and the first thing it will ask you is what type of website you are developing:

  • Plugin for a self-hosted WordPress installation
  • Theme for a self-hosted WordPress installation
  • Theme for a WordPress VIP site

Select the second option and continue (you can always change this later if you’re worried about it).

WordPress Developer self-hosted site

Next, you will be given the option to install various other plugins that come bundled with the Developer plugin. These include:

  1. Debug Bar
  2. Debug Bar Console
  3. Debug Bar Cron
  4. Debug Bar Extender
  5. Rewrite Rules Inspector
  6. Log Deprecated Notices
  7. Log Viewer
  8. Monster Widget
  9. User Switching
  10. Pig Latin
  11. RTL Tester
  12. Regenerate Thumbnails
  13. Simply Show IDs
  14. Theme Test Drive
  15. Theme Check
  16. Beta Tester
The bolded plugins above are probably most useful for you starting out, but you can add whatever seems relevant or that you’re curious about. Remember, you can always Add or Deactivate any of these later. In order to do so, simply go to your Dashboard >> Tools >> Developer and you’ll see a screen like the one below where you can modify anything you like:
WordPress Developer Helper Plugin

4. Install an appropriate IDE (Integrated Development Environment)

Fourth, you need to install a good IDE for development. What an IDE does is “provides comprehensive facilities to computer programmers for software development. An IDE normally consists of a source code editorbuild automation tools and a debugger. Most modern IDEs offer Intelligent code completion features.” (Wikipedia)

Basically, an IDE:

  1. allows you to store your entire project in an easy to access location (from the sidebar)
  2. highlights certain code keywords and conventions (like comments)
  3. gives you smart-completion features if you forget the exact function keyword you want
  4. gives you direct and instant access to the exact locations a function is found in other parts of your code (CMD or Control + mouse click in NetBeans)
  5. includes a code compiler to run your code on the fly
  6. includes a code debugger to find errors and fix things by “stepping through” the code one line at a time

I’ve used both Eclipse and NetBeans before in my undergraduate courses (back in 2005). I feel that Eclipse is best for Java development and it is a bit large (probably a bit overwhelming at first). NetBeans comes highly recommended by my peers and is a little simpler. Or, alternatively, there is also PhpStorm, a premium IDE that is loved and used widely in the WordPress development world.

So again, here are the three primary IDEs you might try:

  1. Eclipse
  2. NetBeans
  3. PhpStorm

If you do decide to go with NetBeans (which I recommend), you need to be sure that you have the Java SDK installed on your computer first in order for the IDE (which runs in Java) to work properly. NetBeans (and likely Eclipse as well) offers an IDE + Java SKD bundle installer on their website (see pic below).

NetBeans download

NetBeans + Java SDK Installer

5. Create your WordPress Theme Project in your IDE

Finally, the last thing to do before beginning your WordPress development is to Create a new Project in your IDE that contains your entire WordPress installation (themes, plugins and all). You’ll have to find the folder that contains:

  1. wp-admin
  2. wp-content
  3. wp-includes
  4. All the other wp- files

Then set that whole folder as your Project folder in your IDE.

  • In MAMP, the folder will probably be called “htdocs”
  • In WAMP, it will be “www”
  • In Bitnami, it will be in “apps >> wordpress”

To set up your Developer’s environment in Bitnami, follow the steps (as shown in the slideshow) below:

  1. Open the application.
  2. Click the “New Project” folder icon (don’t confuse it with the “New File” icon to its left)
  3. Choose “PHP Application” (Note: After initially installed JDK + NetBeans, I had no PHP option – it only gave me Java Projects as an option. So I navigated back to the NetBeans downloads page, downloaded the “All” version of the app, and reinstalled it. This gave me all the possible development options.)
  4. Rename your Project and click “Browse…” to choose your local WordPress installation folder. (On my Mac, the Bitnami WordPress installation is located in /Applications/Bitnami/apps/wordpress/)
  5. Click “Finish” to finish the setup and start coding!~

This slideshow requires JavaScript.

So were you able to successfully setup your Developer environment? Ready to get coding? Well, first things first: we need to be sure we know WHAT we’re coding. Have you created a good design yet?

1 Comment Build WordPress Themes: Setting up a Local Installation

If you want to build WordPress themes, the first thing you need to do is set up a local installation of WordPress on your local machine from which to run and test what you’re working on. You really have 3 basic options for TYPE of installation. Which do you prefer?

  1. An operating-system-specific installation
  2. A cross-platform system
  3. An App auto-installer

There are 3 basic options for OS-specific installations depending on which operating system you’re running:

  1. WAMP (Windows, Apache, MySQL, PHP)
  2. MAMP (MacOS, Apache, MySQL, PHP)
  3. LAMP (Linux, Apache, MySQL, PHP)

There are also (at least) 3 basic options for cross-platform installations and 2 of these include App auto-installers:

  1. XAMPP (Cross-platform, Apache, MySQL, PHP, Perl)
  2. AMPPS (Apache, MySQL, PHP, Perl, Phython, Softaculous App auto-installer)
  3. Bitnami (Cross-platform, AMP, App auto-installer, + allows installations in the Cloud)

There are plenty of other options as well (as this Wikipedia list of AMP bundles proves), and each one has its own strengths. It’s worth checking out a few of them to see which you prefer. And in order to help you decide which of these you might like to try out, I’ve taken screenshots of each homepage and running service for you to compare:

#1. WAMP

#2. MAMP

#3. LAMP

As the above picture indicates, if you want a straight up LAMP installation, you’ll likely be doing it all piece-by-piece – or through your Linux distribution’s get or yum installers. But if you’re a Linux user, you’re probably already comfortable with that kind of thing. Here are instructions for installing LAMP on various Linux distributions (source: Wikipedia):



#6. Bitnami

I’ve personally used WAMP, MAMP, and XAMPP and none has really been disappointing.

  • XAMPP is slightly more complicated and has more features (but that’s to be expected because it’s a Linux program as well).
  • WAMP is a good and simple option for Windows – I’ve used it with my high school students.
  • MAMP is a clean and simple option for Mac and I’ve used it exclusively on Mac before.
  • MAMP PRO is also a good option if you’re willing to pay a little bit because it allows multiple WordPress installations on the same localhost.

However, the App auto-installers also look rather intriguing and I’ve never used them before. Plus, Bitnami comes pretty highly recommended from Morten Rand-Hendriksen, a staff author at Lynda.com, so I’m looking to give it a shot next.

Which installations are you familiar with or do you recommend? Leave me a comment with your thoughts.

Leave a reply Quick Tip: DESTROY the VBS Virus that Creates Folder Shortcuts and Hides Files


When I was working at a winter camp this year, my computer contracted a virus that creates folder shortcuts and hides every file. It makes using the USB impossible, and if you try to delete the .vbs file that does it, it will just come back again anyway. (Here’s a detailed post from Security on Steroids that describes the virus and removal procedure.)

The following are steps I took to fix my USB after contracting the virus:

1. Show Hidden Files

  1. Open the Start menu.
  2. Type “cmd” in the Run (or Search) area to open the command line.
  3. Type “ATTRIB -H -R -S /S /D G:\*.*” without quotes and substitute the letter of your drive for G.

This page from Technology Next has a good overview (with images) about how to do that.

2. Perform a Full Virus Scan

Make sure you have an up-to-date Anti-virus program on your computer and to a full scan of the infected drive and computer. Try to get rid of as much garbage as possible from both.

One good option I’ve used previously is Trend Micro Housecall – but you need an Internet connection to do it.

3. More tools to Clean up and Protect your USB

Sometimes a virus scan doesn’t fully take care of the problem, so here are some more references to the steps I took to clean it up.



4. Quick Tip: Set up your computer to vaccinate ALL USBs

Definitely remember to install Panda USB Vaccine on all your computers. You can set it up to automatically vaccinate any USB that is inserted. This should hopefully help prevent the further spread of viruses. (I did so at the high school I work at – on all 23 of their 2 labs of computers.)

BONUS: Here is a list of 10 more tools to help protect USBs.

Further Protection: Disable Writing on your USB

You could further protect your USB by disabling the computer’s ability to write to it. The main reason that USBs get infected is because a virus on your computer waits until a USB is inserted and then immediately tries to Save itself to the USB. If you disable USB writing, the virus can’t Save itself on there, and you won’t get infected. (Of course, this also means that you can’t Save your own files on the USB until you allow writing again…)

I haven’t personally looked into this much, but here is a link to get you started:

  1. HowToGeek: Download simple programs to instantly modify your registry

Leave a reply Quick Tip: Avoid spreading “shocking” blog posts


This is an article that one of my friends recently shared on Facebook titled:

There Is No Hell Fire; Adam & Eve Not Real – Pope Francis Exposes

This is an article that shows it’s a hoax:

Don’t fall for this Pope Francis hoax: 5 things to know and share

And this is my advice in this kind of situation:

Whenever I see a “shocking” story that seems absolutely out of character or contrary to a certain person’s beliefs, I always:

  1. Read the entire context of the article, looking for errors.
  2. Double-check the article for REFERENCE links that point to the original quote.
  3. Read the blog’s “About” page to see if it is satirical (MANY sites these days are doing this – just to draw in traffic and therefore revenue).
  4. Scan the headlines of most of the rest of the blog (many of these read like tabloid magazines in the grocery store).
  5. Google it.
  6. Check Snopes.

I’ve done that with everything suspicious in recent years, since Obama’s first election campaign (that just shows how long hoaxes like this have been around for).

Sharing these kinds of articles (without truth-checking them) merely drives up that site’s traffic and revenue while simultaneously spreading rumors and falsities.

Quick Tip: Quickly truth-check blog posts before passing them on.

Leave a reply 2014 GPA Computer Lab Updates

Work Yet to Do

2.18.2014 (All Windows Updates)

  • Completed ALL Windows updates (300+)
  • Installed: ALL Nvidia Drivers for graphics card
  • Installed: Windows Live Essentials on Computers 1-4
  • Reinstalled: Alice3 on Computer 4
  • Set up Family Filter on Computers 1-4
  • Reset “Run…”
  • Downstairs Lab: Reset ALL admin passwords to the office preference


  • Started Windows Updates after the reformat (300+)
  • Installed: new Nvidia Drivers for Computers 4-12
  • Then found a NEW Nvidia Driver at the last minute – updating again tomorrow…
  • Installed: Alice3 (2,3,5-12)
  • Installed: Java
  • Installed: iTunes
  • Installed: MuseScore
  • Installed: Notepad++
  • Installed: Lightshot
  • Installed: Spybot : Vaccinated against 110,000 items
  • Installed: USB Vaccine
  • Installed: Windows Live Essentials (5-12)
  • Created Admin passwords
  • Created new Users for student use
  • Set up Parental Filtering for student accounts
  • Blocked Facebook and Comic sites with HOSTS
  • Disabled Recycle Bin to prevent “Recycling” of HOSTS
  • Set student accounts to auto-login upon Restart
  • Downstairs Lab: Installed: USB Vaccine
  • Downstairs Lab: Installed: Spybot (8-11) : Vaccinated against 140,000 items
  • Downstairs Lab: Installed: Chrome (8-11)
  • Downstairs Lab: Installed: Windows Live Essentials (8-11)
  • Downstairs Lab: Set up Parental filtering (8-11)
  • Downstairs Lab: Set up a Blank screensaver and no login required when students come back


  • Downstairs: Created admin passwords for all computers
  • Downstairs: Created Student accounts for all computers
  • Downstairs: Blocked Facebook and Comics sites with HOSTS
  • Downstairs: Disabled the Recycle bin to prevent “Recycling” of HOSTS
  • Downstairs: Set student accounts to auto-login on restart
  • Upstairs: Disabled the Recycle bin to prevent “Recycling” of HOSTS


Leave a reply 2014 Blogging Calendar


Every year, I like to get a head-start on the New Year by looking forward and penciling in the majority of the major events that I can expect. This includes national holidays, paydays, birthdays, US holidays (since I live in Korea), family vacations, and my own vision planning days.

Last year, I also learned the great value of regular blogging to grow a blog’s regular audience. By posting something new everyday, I took my wife’s Korean teaching website and grew the audience from 300 per month to over 8,000 per month in the span of just 6 months (April – September).

With the birth of our daughter, I’ve tapered off the new posting for the past few months, but come January, I’m looking forward to getting back on a regular schedule of blog posts – as well as grow a few other projects I’m working on with at least weekly posts there.

So, in order to (1) better facilitate my blog planning; (2) maintain a visible record of blog growth; and (3) give myself a little bit of accountability with my blogging, I’ve designed this Special 2014 Blogging Calendar. You can download it as a PDF if you’d like.


What makes it Special?

Recently I was reading Dan Miller’s 48 Days to the Work You Love and found something interesting in chapter 4 called a “Wheel of Life.” In it, Miller lays out a new paradigm for a successful life. Most people focus on only ONE area of this wheel, but he says that success in ALL areas is necessary in order to live a fulfilling life.

  1. Career
  2. Financial
  3. Social
  4. Family
  5. Physical
  6. Personal Development
  7. Spiritual

It’s truly unfortunate when you see massive success in ONE area of life at the expense of all the others, or even just at the expense of ONE of the others. There was a time in my life where I focused so much on Personal Development (getting my Master’s degree) that my Family suffered greatly as a result.

This calendar is designed with the “Wheel of Life” in mind. Each page contains a section for the 7 areas of life development.

  1. On the “Month View” pages, there is a left sidebar with space for written and trackable GOALS in each area.
  2. On the “Blog List View” pages, there is a checkbox section to the right of the list. This is a good way to keep track of either (1) the days that you work on that particular area of your life, or (2) the blog posts you write that focus on one (or more) of those life areas.

Additionally, the “Blog List View” page (pictured above) takes into account some of the other important things that bloggers like to stay on top of, including:

  1. A sidebar to the left where you can check off the social media you used to promote your blog that day.
  2. A checkbox after the Post Title for “Scheduled” posts.
  3. A box at the bottom to keep track of your “Top Posts” for the month.

Click to download the PDF

This PDF is designed:

  1. With Korean national holidays (red days) boxed in (since I live in Korea).
  2. With U.S. holidays “penciled in” (since I’m American).
  3. On A4-size paper (Korean paper), but should still look good if you “Print to Fit” on US Letter size paper.

I may later update the design to be “strictly US” (on US Letter paper, without Korean holidays), but for now, this suits my needs.

I hope you also can find some good use from this PDF! Merry Christmas~