0

Begin Migrating to the WordPress Multisite (Update 5)

This morning I moved all the files on the site to a subdirectory and replaced with a simple maintainance notification. This blog, however, I decided to stay it online to give migration status update within this post. After the migration completed, I will replace this blog with a brand new look.

Look forward to it.

Update 1: WordPress installed on the main site robbychen.com.

Update 2: Deleted all of the subdomains of the site except blog.robbychen.com for providing the migration status update temporarily.

Update 3: Finally enabled WordPress multisite feature. It took me almost 1 hour to figure out the wildcard subdomain issue. If you only have one domain in your account (which is the primary domain), you don’t have to enter anything in the directory path field when creating the wildcard subdomain. Apparently, cPanel always add the word “wildcard” to the directory field automatically. Make sure you drop this word so that the directory field is empty and press submit. It will create the subdomain without any error.

Update 4: The migration is almost finished. All I need to do is to migrate this blog into the multisite network.

Update 5: The migration finally completed. This blog is now a part of robbychen.com multisite network. I still need to convert my old main site robbychen.com to WordPress. I will keep you updated with the conversion process in a new post.

0

Apology to my Twitter and identi.ca Followers

This is a quick post to apology all of my Twitter and identi.ca followers for receiving unwanted spam updates from my account.

Because I didn’t login to my social accounts for a long time, I’m surprised to see that there are lots of spam updates in both accounts. All of these updates came from my long-forgotten Tumblr account. It clearly shows that someone has hacked to my Tumblr account.

I disconnected Twitter from the Tumblr account as well as deleted my ping.fm account for posting to identi.ca. For the security measure, I also changed my Tumblr password and closed this account for good.

From this accident I learned that never link the social network accounts to any third-party apps, because you never know when these third-party accounts gets hacked and ruin your social network accounts updates.

0

A few Updates and some Information regarding SOPA / PIPA

I had not posted anything for a while. So in this post, I will talk about the upcoming updates for this blog as well as this website as whole and my opinion for the SOPA/PIPA bills.

During the last few weeks, I have learned the ins and outs of WordPress, including WordPress multi-site feature, themes, plugins, etc.

In the coming weeks, I will install WordPress to my main site, robbychen.com, create a portfolio theme or a child theme out of an existing portfolio theme out there, and make my main site as my portfolio to showcase the web development and video projects I finished in the past.

I’m also probably to remove this blog as well as MySQL database that associated with it to migrate it to the main site using the multi-site feature.

That’s all for the update. Now for my opinion about the SOPA / PIPA bills.

In the last couple of days, I read so much about these two bills and how bad they are. I even joined the blackout protest yesterday on this domain. I always thought that the Internet piracy is illegal until I stumbled across this TED presentation.

It basically stated in the presentation that the large media companies have been behind these copyright bills since decades ago. They don’t want us to become the producers and share contents around. They want us to become consumers and just be the “couch-potatoes”. I think that’s why the Internet piracy is born to encourage people to share contents with each other.

Therefore, even if these two bills passed into laws, there will still be a large army of pirates to challenge these companies and find another way to share contents.

1

Switching to Mac

Switching from Ubuntu to Mac

Switching from Ubuntu to Mac
After several months of deciding which OS I’m going to switch next because I don’t like how Ubuntu is going since 10.10, I have been giving Mac OS X a try.
Macbook Air 13-inch
I bought an old 13 inch Macbook Air first generation from eBay one months ago and have kept using it since then. When I used this Macbook Air which is from 2008 for the first time, I immediately felt love for it.

Perhaps because there are some similarities between Mac OS and Linux commands, working in the Terminal app is like a second nature to me. Plus, with my experience with Windows in the past, I already knew most of the common operations on the Mac.

The main reason I like to try Mac is because of the influence of my iPod Touch. Yes, I’ve still kept my old second generation iPod Touch along with my Nexus One, with the latest iOS installed. After I switched to Android (Nexus One) for a long time and restart using iPod Touch to perform the iOS-specific tasks, I feel that the Android interface is kind of old compare to the iOS’s.

Mac OS X Lion

Several weeks after the purchase of Macbook Air, I upgraded to the latest version of Mac OS X, Lion (10.7). I love this upgrade, especially the Full Screen and Mission Control features.

As a developer and programmer, I like trying new programming languages such as Objective C and AppleScript. Oh, except Java, because I think Java is too complicated for me to understand, that’s why I avoid programming for Android. With the Macbook Air, I could use Xcode to learn and experiment with these programming languages in no time.

For future posts, I will explore some of these programming languages. This blog will have the same topic (web-related programming) plus new programming languages. I will redesign the blog corresponding to my Mac usage in the near future as well.

Of course, I will continue to use Ubuntu 10.04 as my laptop is still running it. Right now and for the time being however, I’m using Mac more than Ubuntu because I just can’t resist the Mac OS’s interface :) Not only its interface, I also enjoy using its hardware. I especially chose to buy Macbook Air over other Macbook laptops because of its lightness and fast processing power.

Look forward to my future posts which will be written in the new OS environment.

Do you have any experience on how to use Mac OS X and Ubuntu/Linux together without sacrifice Ubuntu/Linux? Discuss your experience below.

0

Problem With mov file and Hold of C Tutorials

Since I upgraded to Ubuntu 10.10 last Sunday, I hadn’t watched C tutorial videos using Movie Player. I was beginning to watch them today and discovered they are not playable in the Totem Move Player anymore. Since they are mov files, I tried other players like VLC and Xine, even with OpenShot and Kdenlive, all with failure. When I was using Ubuntu 10.04, the only player that can play mov files perfectly was the Totem movie player with appropriate plugins. But now in 10.10, even the Totem player cannot play mov files. Here is the error message I got when I opened a mov file:

As I stated above, I installed and tried to play the files on almost all the video players, even with Miro, and Ubuntu still cannot play them. Therefore, I decide to pause the C tutorials posting a little while until I fixed this issue. In the mean time, I will try to keep the normal posting schedule (one post per day).

0

Continuing C Tutorials and Auto Scheduling Announcement

C Plus Plus Minus MinusIn the next post, I will continue my C tutorial where I last stopped. I will also utilize the auto publish feature in WordPress to post one tutorial per day so that I can learn the C language and write out the tutorials continuously in a day without breaking the limitation of my posting schedule. If everything goes well, I will also sometimes post some tips that I learned recently. If I don’t have time to write the tutorial because of the school work, I will go back to the one post per day schedule. This means that sometimes I will post two posts in a day and sometimes one post.

Look forward to the next post!

0

Big Update

I upgraded this blog to WordPress 3.0 today and tried it. I love some of the new features for this release , especially the new theme customization options. Therefore I updated the structure and layout for the whole blog in order to use the full theme customization features in 3.0. Here are the updates I made:

  • Switched to the new default theme

As I stated above, in order to use the full theme features, the theme needs to be compatible with 3.0. Some options didn’t appear when I was in the last theme after the upgrade. So I switched to the new default theme came with WP 3.0.

  • Logo added (special)

The special means that this logo is only for the blog. The main difference between this one and beta one is that I added Ubuntu and NetBeans to each side of the logo in order to accommodate the header image size for the theme.

  • Blog menu added

Menu creation and editing is a new feature in WP 3.0. I placed a menu below the logo. The items for this menu are relevant to the blog.

  • Updated blog name and description

This domain name is based on my name. So I decided to rename this blog from robbychen.com Blog to Robby Chen Personal Blog, as well as its subtitle (description).

  • Categories restructured

After upgraded to WordPress 3.0, I reordered the categories to include sub-categories once I noticed that the hierarchy feature for the categories was fixed.

I also discovered WordPress.tv when I tried to find the tutorials for WordPress 3.0. It’s the official WordPress video site for providing tips to use WordPress. I’m currently figuring out how to create multi-site setup with 3.0. Maybe I will use WordPress as a CMS for robbychen.com!

0

Planning to Create my Own WordPress Theme

After read about the malicious code in free WordPress themes, I have decided to learn and make my own WordPress theme after I complete the redesigning project. Since I created this blog about one year ago, I only used two free WordPress themes directly installed from WordPress.org. The first theme used CSS 3 styles. However, I remembered that sometimes the theme was corrupted for no reason and one time all of the post pages were changed to some kind of advertisement without my knowledge. I think that there were some malicious code in there although I didn’t look and modify the theme code. The current theme for this blog is called minimalism. I used this theme to increase site’s performance. The original layout for this theme was very ugly. The font size was small and the text color didn’t have enough contrast. With the help of FireBug, I changed a little bit of CSS and applied into the theme. The current modified theme still looks a bit ugly but I will make this theme as the theme template to create my own theme. I will also post the latest development on my projects here.

0

Pass a Value to Multiple PHP Variables

I had been taking UMUC 411 this week, an one-week online test drive class for University Maryland University College. I was too active in the class that I didn’t have anything to write about on the blog. Now the class was over, I’m back to schedule to finish my website redesign project.

I decided that today I’ll be focused on “Follow me” section:

Click the image to enlarge

This section was made up by four images. The first one is RSS feed and the last three are social networks. I noticed that the title, alt, and part of the image location for social networks have the same content. Therefore I came up with the following PHP line to pass the value in the title variable into both alt and image location variables:

$image = $alt = $title;

In the above statement, because of the pass variables rule for PHP, I placed title variable to the farthest right of the equal signs and placed variables need to be distributed before the title variable which contains the original value. For instance, I assigned “Twitter” string to $title. $image and $alt would also assign “Twitter” string.

0

Writing a New Class

I have been writing and testing a new PHP class today to make me easier to create my new site menu bar called menu class. It contains a nested unordered list and a for loop to create the sub-menus. I wrote a couple of variables that use explode function to convert the input values to arrays. Here is the code I have written so far:

<?php
class menu {
    function  __construct() {
            // Output the menu
        echo "<div id='nav'>n";
        echo "<ul>n";

        $this->item("Home", "/");

        $this->item("Blog", "blog");

        $this->item("Portfolio", "portfolio",
                "Resume=>resume,
                 About Me=>about");

        $this->item("Projects", "projects",
                "ICAP<br />Interagency Coalition on Adolescent Pregnancy=>icap");

        $this->item("School Assignments", "assignments",
                "CA 272<br />Pro Website Dev=>ca272,
                 CA 282<br />PHP & MySQL=>ca282,
                 CA 288<br />Adv ColdFusion=>ca288,
                 CS 110<br />Computer Concepts=>cs110");

        echo "</ul>n";
        echo "</div>n";
    }

    function item($menuItem, $linkLocation, $subItems="") {
        echo "<li>n";
        echo "<a href='{$linkLocation}' title='{$menuItem}'>$menuItem</a>n";
            // Insert the sub-menu items if there is one
        if (!empty($subItems)) {
            $this->submenu($subItems);
        }
        echo "</li>n";
    }

    function submenu($itemaLink) {
        $itemaLinks = explode(",", $itemaLink);
        echo "<div class='submenu'>n";
        echo "<ul>n";
        for ($i=0; $i", $itemaLinks[$i]);
                    // This is used for my courses names
                $title = explode("<br />", $itemLink[0]);
                if(sizeof($title) == 1) {
                    $title[1] = $itemLink[1];
                }
                echo "<li>n";
                echo "<a href='{$itemLink[1]}' title='{$title[1]}'>{$itemLink[0]}</a>n";
                echo "</li>n";
            }
        }
        echo "</ul>n";
        echo "</div>n";
    }
}
?>

Note the $itemLink variable from the code above. This is based on the array format. Equal greater than (=>) symbol is variable and value connector in an array. This makes me easier to remember to add a link to the corresponding item. I also added $title array later in the process to differentiate between course title (e.x. CA 288) and course name (e.x. Advanced ColdFusion Development). You can see the example on my beta site. Note that I have not added any JavaScript to animate the menu. I will add MooTools-based animation later after I complete writing this menu class.

Pages ... 1 2 3