brandontreb.com Tips And Resources For Software Developers

Feedburner Anywhere Plugin Released

Image representing FeedBurner as depicted in C…

Image via CrunchBase

I have just released another WordPress plugin called Feedburner Anywhere.

What it does is allow you to display your RSS subscriber count anywhere on your blog.

You have the choice of using the built-in widget, embedding it in your posts/pages, or a combination of both.

Check out my sidebar for an example of usage.

Download Feedburner Anywhere at WordPress.org

Reblog this post [with Zemanta]

HECK YES C Macro, For When Something Is REALLY True

Quite possibly the most useful macro you will ever use.

#define HECK_YES true && true
 
// Usage
if(self.sleepy)
{
   self.needsCoffee = HECK_YES;
}

Now if only I could replace semi colons with exclamation points…

Dynamically Load WordPress Post Images Like Mashable.com

What?

Have you ever noticed that the content on Mashable.com loads Incredibly fast? Also, have you noticed that as you scroll the images seem to ‘fade’ in? Well, this isn’t due to some crazy h4x0r code written specifically by Mashable Engineers. It’s a simple JQuery plugin that loads the images ‘Lazily’.

The Jquery plugin can be found here and a nice tutorial for implementing it can be found here.

If you don’t feel like hacking it yourself, read on and I will point you in the direction of a great WordPress plugin that handles this automagically.

Where?

Luckily the hard work has been done for you and you can download a WordPress plugin that will automatically add this functionality to your WordPress blog.

You can download the plugin from WordPress.org

This plugin will work for EVERY image on your blog. Even the Gravatar icons of the commenters.

Thats It?

Yep, try it out. Just scroll down on my homepage and watch as the images magically fade in.

Happy Wp-ing!

WordPress Coding: Programmatically Add Post Tags (and other meta info)


I was recently working on a script that imports from a custom blogging platform into WordPress and had some need to programmatically add post keywords.

The script to do this is actually quite simple and can be used to update any post attribute.

Here is the code:

// Create the post array
$post = array(
    ‘ID’ => 5,
    ‘tags_input’ => ‘foo,bar,baz’);     
 
// Update the post
wp_update_post($post);

This will assign the keywords “foo”, “bar”, and “baz” to the post with ID 5. This task seems trivial, however it’s very powerful when you think about automation. For example, you could write a script to scrape a google search for your target keyword and find related keywords for each of your posts automatically. Hrm… plugin idea?

Give it a shot. More info on available parameters can be found on WordPress’ site here

Here are some of the other fields that you are able to update this way:

defaults = array(
‘post_status’ => ‘draft’, 
‘post_type’ => ‘post’,
‘post_author’ => $user_ID,
‘ping_status’ => get_option(‘default_ping_status’), 
‘post_parent’ => ,
‘menu_order’ => ,
‘to_ping’ =>,
‘pinged’ =>,
‘post_password’ =>,
‘guid’ =>,
‘post_content_filtered’ =>,
‘post_excerpt’ =>,
‘import_id’ => );

Happy WPCoding!

WordPress Programming Tip: Enable Database Error Reporting For Custom Queries

So this one should seem pretty obvious, but it wasn’t apparent to me at first.  It was only after digging through the wp-db.php file that I discovered how to enable error reporting.

The Problem

As you may have discovered, the wp_query() function isn’t a “one size fit’s all” solution.  Often times, you may need to query the WordPress database using a custom MySQL query.  Especially  if you are using WordPress for anything other than a blog (ie freshapps.com).

When writing custom queries, it can often be frustrating if you make a mistake in the SQL syntax as WordPress will simply display no results.  For example:

$results = $wpdb->get_results("SELECT * FROM $wpdb->posts 
   WHERE post_title = ‘foo bar baz");
print_r($results);
 
// Outputs Array ( )

Since we have made an error in our SQL statement (I didn’t add the second single quote), WordPress will suppress it and simply return an empty array. This is not very helpful for debugging.

The Solution

The solution is actually quite simple. The global $wpdb object has a property called show_errors. Setting this property to true will cause WordPress to output the SQL errors to the screen for a given query.

Here it is with our example above

// Enables Wordpress’s DB Error reporting
$wpdb->show_errors = true;
 
$results = $wpdb->get_results("SELECT * FROM $wpdb->posts 
   WHERE post_title = ‘foo bar baz");
print_r($results);
 
// Outputs 
// WordPress database error: [You have an error in your 
// SQL syntax; check the manual that corresponds to your 
// MySQL server version for the right syntax to use near 
// ”foo bar baz’ at line 1]
// SELECT * FROM wp_posts WHERE post_title = ‘foo bar baz

Now we know what went wrong with our query rather than just receiving empty results.

Let me know if you have any questions or comments.

Happy WPCoding!

Reblog this post [with Zemanta]

Emacs For OSX Is Out!

For all you Vi using, Emacs haters out there, I will fight you!

The iPad Is Out And It Sounds Like iPod While Plugging Your Nose

Watch Out Apple, The Kindle Dev Kit Is Almost Live

With the success of the Apple App Store, it seems that everyone is wanting a piece of the pie.

Amazon is now looking to throw their hat into the ring and is releasing their own dev kit for their ever so popular Kindle.

http://www.amazon.com/gp/feature.html/?ie=UTF8&docId=1000476231

It appears that big name game developers Electronic Arts is also getting involved (WTH?!?!)

This just seems like it will be an epic fail. Who really wants to play video games on their Kindle? Maybe they can port Kirby’s Dreamland from the original Game Boy :) .

Reblog this post [with Zemanta]

Code Monkey Music Video

Watching this video makes me appreciate the fact that I work from home.



Hacking Redbox – How To Get Free DVDs

Red Box, Video Rental Automat, found in a Wal-…

Image via Wikipedia

I was at Wally-World the other day getting a movie from RedBox with my wife when I noticed some guy enter in a code into the machine. The code was BREAKROOM. After watching him for a moment, I realized this code entitled him a free DVD rental.

Now, RedBox is pretty stinking cheap ($1.50/night), but if you’re an avid movie watcher, this really adds up.

So, I did some searching on the Google machine and sure enough, there are new RedBox codes that go into circulation every day. Each one giving you a free DVD.

The site that offers the RedBox codes is http://www.insideredbox.com/redbox-codes/

Users submit the codes and update the site with the last time they were used. That way, you always know which codes are currently working.

You simply need to enter the coupon code from the main screen or just before checkout at your local Redbox kiosk. When you do, you will receive a one-day free rental. Any additional days you keep the movie will be charged at the usual $1.50/day.

Update: @diemer on Twitter pointed out to me that inside Redbox also has an iPhone app. The link for the app is http://itunes.apple.com/us/app/inside-redbox-pro/id306217360?mt=8

I may actually cancel my Netflix account now…

Reblog this post [with Zemanta]

Great List Of Algorithm Programming Tutorials

Recently TopCoder.com posted a list of algorithm tutorials from some of their “top coders”.

The tutorials are very comprehensive and pretty much sum my undergraduate computer science degree up in one page :) This page is a great resource for anyone that does any amount of coding…

Some of the tutorials include:

  • Greedy algorithms
  • Various sort and search techniques
  • Data structures
  • Graph theory

Here is the link to the Top Coder Tutorials:

http://www.topcoder.com/tc?d1=tutorials&d2=alg_index&module=Static

Reblog this post [with Zemanta]

XCode Shortcut

When in XCode on a MacBook Pro, doing a 3-finger swipe up will switch between the .h and .m files.

⌘-option-up will do the same thing

Productivity++

Reblog this post [with Zemanta]

Programming Tip Of The Day #2 – Difference Between i++ and ++i

To some, this should seem a bit obvious and if I am insulting your intelligence by discussing it, I am sorry. But, one of the main reasons I want to discuss this topic is, I was asked this question in a job interview for Lockheed Martin.

What is the difference between i++ and ++i?

The answer is actually quite simple.

i++ first evaluates the value of i and then increments it

++i increments the value of i and then evaluates it

Here is a brief example to demonstrate what I mean.

// Example: i++ 
$i = 5;
echo "The value of i is " . $i++ ;
// Output "The value of i is 5"
// i = 6
 
// Example: ++i 
$i = 5;
echo "The value of i is " . ++$i;
// Output "The value of i is 6"
// i = 6

So, now if you are ever asked about this in an interview, you will have a response.

Happy programming!

Programming Tip Of The Day #1 – Ternary Operator

So, I though I’d start this series called Programming Tip Of The Day to write about useful things I come across in programming. Both to educate my readers and as a personal archive of ideas and tips.

I will kick it off today with a quick rant about the ternary operator. I <3 the ternary operator. It’s quick, efficient and saves a lot of ugly code.

For those of you who don’t know, the ternary operator is made up of 3 elements: The condition and two results. It is of the form:

(condition) ? (result if true) : (result if false);

This is much nicer than an if statement. So here is a brief example about how a ternary operator can replace an if-statement.

if-statement

<code class=’c’>if(isSnowing) {
    iMustBe = "cold";
} else {
    iMustBe = "warm";
}</code>

Same thing using ternary

<code class=’c’>iMustBe = isSnowing ? "cold" : "warm";</code>

That is so much easier to read (IMHO). You can even do clever things in printing. Here is a small example in PHP for using the ternary operator when doing an echo.

<code class=’php’><?php
  echo "I am a ".((height > 72) ? "tall" : "short")." person!";
?></code>

Most languages support the ternary operator. Check out this wiki page if you want more info.

Happy programming!

Mac OSX Tip: Hotkey To Hide/Show the Dock

While mashing the keyboard (as I often do when debuggin poorly written outsourced code), I stumbled upon a very useful OSX hotkey.

⌘-option-d

This command will cause the Dock to go in and out of auto-hide mode.

Not the most useful, but very helpful to geeks like me who rearrange their desktop every day.

Increase Your Twitter Following Using Your WordPress Blog

twitter_bird

Download TwitPop Now

TwitPop is a WordPress plugin I wrote with one goal…To make you more popular on Twitter. There are sites that spring up from time to time claiming to get you more followers on Twitter if you follow X amount of people on the follow train. Well, now you can create your own Twitter train on your wordpress blog and really get more followers.

The best part is, you add your username in the admin panel and EVERYONE FOLLOWS YOU! Think of the possibilities… You could be a Twitlebrity.

To add to the excitement, everyone that uses your TwitPop plugin will Tweet a link back to your blog. This promotes your blog as well as your Twitter account. Check out how TwitPop works below.

Instructions

Log in to your Twitter account below. You will automatically follow the people that have visited this page before you (no more than 20).

Then, your Twitter username will be added to the list and you will be followed by the next 20 people to use this plugin.

[twitpop]

Download TwitPop Now

First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack.

George Carrette [1990].

PHP Class To Interface With Many URL Shortening Services

With the explosion of Twitter and such services, the need to have long URLs shortened has drastically increased. Naturally, many services to shorten URLs have sprung up as well.

Most of these services (that are worth using), have some sort of API that will allow developers to send a long URL to them, have it shortened and then returned. This type of service allows other developers to write applications that have the ability to shorten URLs right inside of them.

Recently, I had to write a PHP class to work with URL shorteners. So, I made it support multiple shortening services and have decided to share it with you.

The class is called URLShortener.class.php and it supports the following shortening services:

  • j.mp (bit.ly)
  • tr.im
  • TinyURL
  • is.gd
  • u.nu
  • Linkyy
  • Your own custom shortening service

Here are some examples of how to use the class in your own applications:

<code class=’php’><?php
     /* Basic: */
     $s = new URLShortener(‘tr.im’);
     echo $s->shorten("http://brandontreb.com");
     
     /* Using API Key and Login */
     $s = new URLShortener(‘j.mp’);
     $s->login = ‘brandontreb’;
     $s->APIKey = ‘R_2a413ebd15254a72b500ec2ce83f982d’;
     echo $s->shorten("http://brandontreb.com");
     
     /* Custom URL */
     // Just make sure you put %s and it will be 
     // replaced with the long URL
     $s = new URLShortener(‘custom’,
        ‘http://b1t.me/api/shorten.xml/%s’);
     echo $s->shorten("http://brandontreb.com",false);
?></code>

You may download my URLShortener PHP class here.

Feel free to leave any questions or comments in the comments section.

Programming

99% of students that were in my CS degree program

99% of students that were in my CS degree program

Image taken from abtrusegoose

$13 Dollar Discount On Programming Books From Manning Publishing

manning-logo

The publishing that I’m writing the book for is having a huge Friday the 13th sale. They are offering a $13 discount on all of their books. For those of you who don’t know, Manning publishes all of the “In Action” books.

All you have to do is go to the site and enter the coupon code:

fri13

when checking out and you will get the discount. Although my book iPhone In Action 2nd Edition hasn’t been released yet, Manning has some other killer programming books for sale.

So be sure to check it out!

Money You Might Be Missing Out On – LinkShare API Integration

logo

As you may know, I am the developer of the site FreshApps.com. One thing we had been doing to make some extra money is to use Linkshare to be an affiliate for Apple.

If you don’t know, Linkshare is a service that allows you to become an affiliate of thousands of companies. You simply select one of the companies products, get the linkshare link, and put the link on your site. Now, every time someone clicks that link and makes a purchase, you will get a percentage of the revenue.

The Problem

The only problem was, we have thousands of apps and converting the links manually seemed like such a daunting process. So, as you can imagine we converted around 10 links and never looked at it again.

Well, earlier today, the designer of the site JJ Mancini, asked me to check and see if linkshare had an API. I checked it out and sure enough, they did and it was no more complex than interfacing with a URL shortening service. So, I wrote the script and within minutes, all of our downloads links were converted into something that can now make us some revenue.

The Solution

Now that I have created the script, I figured I would pretty it up and share it with you. Keep in mind, the script is stupid easy, so if I am insulting your intelligence by showing it, I apologize.

<?php
    /* linkshare.php */
 
    // Your linkshare API token
    $token = "89705XXXXd11ab28ae548bXXXX4ad6475279faXXXX65da0ec8ed77XXXXeb067";
    // Apples Merchant ID
    $mid   = "13508";
 
    $linkShareLinks = array();  
 
    // I assume links in an array of links to the app store
    foreach($links as $link) {
        $linkShareURL = "http://feed.linksynergy.com/createcustomlink.shtml?".
            "token=$token&mid=$mid&murl=$link&mt=8&buylink=yes";
        $linkShareReturn = file_get_contents($linkShareURL);
 
        if(stristr($linkShareReturn, "click.linksynergy.com")) {
            array_push($linkShareLinks,$linkShareReturn);
        } 
    }
 
    print_r($linkShareLinks);
?>

And that’s it! The variable $linkShareLinks will now contain all of the App Store links converted to your account’s linkshare url. If you have any site with that contains ads for apps in the app store (review site, developer blog, etc…), you would be crazy not to integrate with linkshare.

Give it a try, and feel free to ask questions in the comments section.

Object-oriented programming is an exceptionally bad idea which could only have originated in California.

Edsger Dijkstra

Was Jesus A Real Person? Great Article On Digg Today

The culture of Digg is generally very liberal (to say the least). That is why I was very surprised to find one of the top stories of the day entitled ”Was Jesus A Real Person?”. Obviously, the comments section of the article was full of people arguing about the matter.

I found the article to be quite well written and made a stellar case for the existence of Jesus. So whether you are a believer or not, you should check it out. Take a look for yourself and let me know what you think.

Article Link

New Alice in Wonderland Poster Is Sweet

Very stoked for this movie. Photo source ign

TweetPress Now Supported By Twittelator Pro

For many of you this is old new. But since it’s latest release, Twittelator Pro has supported TweetPress as one of the options for Photo Posting. Here are the steps to configure Twittelator Pro:

  1. First, make sure you have TweetPress installed on your WordPress blog by following the installation instructions here
  2. Tap the Settings tab
  3. Select WordPress from the dropdown under Choose Photo Service
  4. ** **Tap **Other Services **(you should see the WordPress logo) and then tap **Tweetpress for iPhone **
  5. ** Enter in your WordPress credentials
    1. Site Link: The URL of the hompage of your wordpress blog
    2. Username – your wordpress username
    3. Password – your wordpress password
<img class="alignnone size-full wp-image-364" src="http://brandontreb.com/wp-content/uploads/2009/10/p_480_320_B39E129D-6327-41C5-94DE-474D13974ED7.jpeg" alt="" width="200" height="300" /></li> 

  * Tap Done</ol> 

You should now be good to go. Any time you choose to post a photo to your Twitter stream, it will use your TweetPress plugin on your WordPress blog. Please let me know if you encounter any issues or have suggestions for Tweetpress.

I have been in contact with developers of other popular Twitter clients and hope to get Tweetpress integrated in them soon.

[][2]

<div style="">
  <a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-text="TweetPress Now Supported By Twittelator Pro" data-url="http://brandontreb.com/tweetpress-now-supported-by-twittelator-pro"  data-via="brandontreb" data-related="brandontreb:">Tweet</a>
</div>

Post Photos To Twitter From Your WordPress Blog With TweetPress

twit

That’s right. With the latest release of TweetPress (version 1.1.1), you can post photos directly to Twitter from your WordPress blog’s gallery page. Here are the steps to do it.

  1. Navigate to the TweetPress admin Settings > TweetPress
  2. Enter your Twitter username and password
  3. Press the Save Twitter Settings button
    1. TweetPress will verify your username and password with Twitter
    2. If they are incorrect, it will let you know and you must re enter them
  4. Navigate to your gallery page
  5. You should now see a form that has a text box and an upload button
  6. Click browse to find an image on your computer to post
  7. Enter your Tweet in the box
  8. Click Post

It’s very quick and easy. If you have any suggestions for TweetPress please contact me, or leave comments in this post.

TweetPress coming soon to a Twitter Client Near You

TweetPress is the WordPress plugin that gives you total control and ownership of the photos you post to Twitter, sending your traffic back to your own blog, instead of a third party site

I just finished development of this WordPress plugin and Andrew Stone of Twittelator has integrated it into his latest version of Twittelator Pro. As of this post, that version is still in review, so you will have to wait until it is approved to make use of TweetPress.

I have some other very big plans for future releases of TweetPress and if you have any feature requests, feel free to drop me a line. I will do a post as soon as the latest version of Twittelator is approved and demo how it integrates with TweetPress.

iPhone In Action Book

iphone-in-action

A couple months ago, I was asked by someone on Twitter if they could “introduce me to someone”. I found this question a little odd so I responded with “like a girl or a developer?”. I often tweet about my wife, so I was hoping he was not referring to a girl. He replied with “no, someone at Manning Publishing, they are looking for an author for their book iPhone In Action”. So, I was put in contact with Manning and they eventually offered me the position as one of the authors on the book iPhone In Action.

iPhone In Action is a book (that is already out) and details how to program for the webkit as well as the native iPhone OS. I will be removing the webkit chapters, updating some of the dated chapters, and writing about 6 new chapters related to OS 3.0.

I will be posting about the book and my progress along the way (don’t worry I won’t stop my random tutorials about Twitter, WordPress, etc…). Just wanted to share that and say go out and buy the book (in December when I am finished and will get the commission :) ).

Happy Coding!

Displaying Your FeedBurner Subscriber Count Anywhere – PHP Coding Tutorial

feedburner-logo1

If you are a serious blogger (and I’m sure you are), you probably track your RSS subscribers with FeedBurner. If you don’t, you should be. One thing that has always bugged me about FeedBurner is if you ever wanted to display the number of subscribers on your blog, you were stuck using their image. The image looks like this:

I’m sure you have seen this logo everywhere. Well, not too many people know it, but FeedBurner actually has a very simple API that allows you to just get the subscriber count so you can display it however you would like.

So rather than being limited to this boring icon, you can display your live subscriber count anywhere on your blog. If you are feeling adventurous, you could even super impose it on to your own custom image using the GD library (tutorial to come if sufficient interest, post in the comments if you would like to see it).

Let’s get started…

1. Activate the Awareness API Inside Of Feedburner

Log in to FeedBurner. Click the Publicize tab and the click Awareness API. Finally, click Activate. The service is now enabled.

awareness_api

2. Write The PHP Code To Interface With FeedBurner

There is a lot of data that you could potentially get from FeedBurner, but the code below will just show you how to get your subscriber count.

All you need to do is make a simple GET request using CURL to the URL https://feedburner.google.com/api/awareness/1.0/GetFeedData?uri=brandontreb . Of course replacing brandontreb with your feed’s name.

<code class=’php’><?php

$url    = "https://feedburner.google.com/api/awareness/1.0/GetFeedData?uri=brandontreb";
$ch     = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
$data = curl_exec($ch); 
curl_close($ch);        
if ($data) {
    echo $data;
    preg_match(‘/circulation=\"([0-9]+)\"/’,$data, $matches);
    if ($matches[1] != 0) {
        $subscriberCount = $matches[1];
    }
}

echo "Join the other $subscriberCount people and subscriber to my RSS feed."

?></code>

This code is pretty straight forward with a little trickiness to parse the XML. We first make a CURL connection to the URL. Just replace brandontreb with the title of your RSS feed inside of FeedBurner.

Next we print the data. Note: You won’t see the data in your browser unless you do a view source. Since it is XML, your browser will treat it like HTML and not display it. So, we do a preg_match for the element circulation and get it’s value. (Pretty sick right?). The value of our subscriber count will be at index 1 of the matches array.

Then, we just print the subscriber count and voila!

Now, you are no longer a slave to that generic FeedBurner subscriber count icon. Be sure to check out their API for other cool things that you can do with their web services. If you have any questions, feel free to leave them in the comments section of this post. Happy Coding!

Easily Create And Manage SQLite Databases With A Firefox Plugin

If you are doing any Mac, iPhone, HTML5, etc… developement, you have probably had the need for an sqlite database. So, you fire up your Terminal and start manully typing commands to do CREATEs and INSERTs.

You soon realize that this sucks and wish you had something like (shudders) PHPMyAdmin to manage your database. Well, now you do and it’s actually a lot less hiddeous than PHPMyAdmin.

Using the SQLite Manager plugin for Firefox, you can quickly CREATE, MODIFY, and DELETE sqlite databases visually. It’s very simple to use and makes the task of database creation a lot less painful.

sqlitemanager

Here the description from the plugin site.

Manage any SQLite database on your computer. An intuitive heirarchical tree showing database objects. Helpful dialogs to manage tables, indexes, views and triggers. You can browse and search the tables, as well as add, edit, delete and duplicate the records. Facility to execute any sql query. The views can be searched too. A dropdown menu helps with the sql syntax thus making writing sql easier. Easy access to common operations through menu, toolbars, buttons and context-menu. Export tables/views/database in csv/xml/sql format. Import from csv/xml/sql (both UTF-8 and UTF-16). Possible to execute multiple sql statements in Execute tab. You can save the queries. Support for ADS on Windows.

You can download the SQLite Manager plugin for Firefox here.

XCode Shortcut Cheat Sheet

Xcode ShortcutsThrough my travels through the internets, I have stumbled upon this amazing reference. It’s a complete set of XCode shortcut commands. Learning some of these commands has drastically improved my efficiency when developing in XCode.

As a big fan of not using the mouse (yes I’m and Emacs guy), this is invaluable. Download the full size image here. Enjoy!

Creating A Twitter Client In Objective-C Client Part 2

Creating A Twitter Client For OSX – Part 1

This is part 2 in our series about creating a Twitter client in Objective-C. In case you missed it, here is a link to part 1 of this series.

In the last tutorial I showed you how to retrieve data from Twitter and display the XML in the Console. Today, we will be focusing on sending messages to Twitter via POST. We will be implementing the code to update our Twitter status. So let’s just dig right in.

1. Updating The TwitterRequest Header File

Open up TwitterRequest.h and add the following code (Click the image to enlarge)

screenshot_16

We have added two properties. The first isPost will be true when we are calling a method that requires a POST to Twitter. This will be methods such as update_status, follow, etc… Next, the variable requestBody will hold the POST arguments that will be sent to Twitter. These will be things such as status text or friend id.

Finally, we will be adding a method called statuses_update. The reason I named it this is because that is what the method is called in the Twitter API. Like our friends_timeline method, it takes a delegate and selector to call when the request is complete.

Important: I didn’t highlight this in the screenshot but make sure you change theRequest from an NSURLRequest to NSMutableURLRequest. It will give us some additional methods to set up the POST.

2. Updating The Twitter Request Class

Open up **TwitterRequest.m **and add the following code (Click the image to enlarge):

screenshot_17

I’ll start by explaining the status_update method. We first set the global isPost property to true. This will tell the request method to make a POST. The next 2 lines set the callback stuff as we did before. The only new line here is setting the requestBody variable. This is just a string that looks like “status=new twitter status”.

The addition to the request **method is what will allow us to POST to Twitter. First, we check if the **isPost property is set. This will be true if request is called from our status_update **method. Next, we call the **setHTTPMethod of the request to POST. This is pretty obvious.

The following line let’s Twitter know the type of data that we are sending to it. Next, we call setHTTPBody to set the body of the request. At some point we will want to URL Encode this string, but that will be for a different tutorial. Just don’t use any special characters such as & and = in your update to Twitter right now. All that is happening on this line is we convert the string to NSData using the **dataUsingEncoding **method of NSString and set it to the HTTPBody.

The last line just sets the Content-Length property to the length of our string. This is needed to correctly do a POST.

3. Calling The statuses_update Method To Update Your Twitter Status

Open up ApplicationDelegate.m and add the following code (click the image to enlarge):

screenshot_03

One thing to notice here is I commented out the line to get the friends timeline. This is because having both requests running at the same time with the same request object could cause conflicts. The best way to approch this to create an entirly new TwitterRequest object. I just wanted to keep it short.

This is pretty straight forward. We call the statuses_update method the same way we called the friends_timeline method except pass in the update text. The information received back from Twitter will look something like this:

screenshot_01

It’s basically all of your personal profile information.

That’s it for today. If you have any comments or questions, feel free to leave them in the comments of this post or write me on Twitter. You can also download the source for this version below.

Twitter Mac Client Tutorial 2 – Source

Happy Coding!

Installing And Deploying Rails On A Red Hat Server With Passenger

railsI have long been a fan of Ruby on Rails and even jumper on board very early on. The one thing that has held me back from using it in the majority of my projects is the fact that it’s such a pain to configure with Apache.

I know what you are saying… Just switch to a more Rails friendly server. I like and know Apache. Not to mention I also host PHP apps.

With the (re)release of tagacloud, I have recently fell in love with ruby on rails again. So, I looked for a better solution for installation (last time I installed it was 3 years ago) and I stumbled upon Passenger.

It was super easy to use and had my running on Rails in no time.

Deployment is only a matter of uploading application files. No Ruby (on Rails)-specific server configuration required!

Just to give you some background, here are some details about my server.

OS: Linux

Distribution: Red Hat Enterprise Linux Server release 5.3 Hosted At Server Beach

Control Panel: Plesk 8.6

And here are the steps I took to get Ruby on Rails up and running from scratch

1. Install Ruby

<code class=’bash’>yum install ruby ruby-libs ruby-mode ruby-rdoc ruby-irb ruby-ri ruby-docs</code>

This will do some magic and install Ruby on your system…

2. Download And Install Ruby Gems

Head on over to http://rubygems.org/ and download the latest version of Ruby Gems. Here is an example of getting the latest version as of the posting date of this article.

<code class=’bash’>wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz</code>

Untar this file…

<code class=’bash’>tar -xvf rubygems-1.3.5.tgz</code>

Navigate to the extracted directory and run the setup script

<code class=’bash’>ruby setup.rb</code>

3. Install Rails

This will install rails. If it asks you about dependencies, just type “Y”

<code class=’bash’>gem install rails</code>

4. Install The Passenger Gem

Now that rails has been installed, we need to install Passenger. The installation process is stupid simple. Passenger can be installed via a Ruby Gem.

<code class=’bash’>gem install passenger</code>

Now, it will do some stuff and and you some questions. At some point in the process, it will check to see if you have all of the dependencies. You most likely will not. Luckily, the geniuses who created Passenger tell you the commands to install all of the dependencies. So just follow the directions and you should be ok.

5. Set Up Passenger For Apache

<code class=’bash’>passenger-install-apache2-module</code>

It will ask you more questions and install everything needed to run Passenger. Pay attention to the stuff spit out at the end of the process. You will take this and paste it into your httpd.conf file. For example, here is the what mine spit out:

<code class=’bash’>LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.4/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.4
PassengerRuby /usr/bin/ruby</code>

Your httpd.conf file is probably located at /etc/httpd/conf/httpd.conf

You should now be good to go! Navigate to one of your vhosts folder (ex: tagacloud/httpdocs/) and create (or copy) a rails application.

<code class=’bash’>rails someRailsApp</code>

Then set permissions…

<code class=’bash’>chmod -R 755 someRailsApp</code>

And then a miracle happens… and viola! You (should) have a fully functional up and running. Navigate to http://domain.com/someRailsApp/public to see your app in action.

If you have any comments or questions, feel free to leave them in the comments section of this post.

TagACloud.com (Re)Launched!

tagAcloud-ad

So in 2006, my buddy JJ and I took some inspiration from the Million Dollar Homepage and decided to create a totally inovative Web 2.0 site that works on the same principle. That is when we came up with the idea for tagacloud.com.

Tagacloud is a simple concept that uses the fact that people are obsessed with stats to make a fun game that will also direct traffic to your site. Here is how it works (from the website)…

The Idea:

TagACloud is a very unique idea for a website, thus it will take a little explaining to understand all the facets. To take full advantage of the site, you must be the owner or have control over your own website. The idea is to create a tag that represents your website. A tag is a descriptive phrase or a creative tagline describing your site. Once you have added your tag, it gets added to the Tag Cloud. This is where all the fun begins.

The Goal:

The goal is simple. Become the biggest freakin’ tag on the TagACloud website. The bigger the tag, the more hits it gets. It is that simple.

How Your Tag Gets Bigger:

Your tag gets bigger every time it levels up! And the only way to get your tag to level up is by accumulating points. Points can be acquired in many different ways, but the two primary ways to acquire points are as follows:

  1. Get Clicked: your tag gets 1 point for every click that your tag receives.
  2. Incoming Hits: your tag gets 2 points for every hit you send to your tag on TagACloud.com. You can get tag specific code via your “Get Tag Code” page.

How Your Tag Gets Hits

We provide visitors several ways to find your tag:

  1. The Home Page: The home page features 200 random tags in random order.
  2. Popular Tags: If your tag is one of the 200 most popular today, the last 7 days, last month, or of all time; it will be featured in order of popularity on the applicable page.
  3. Keywords: Keywords are essential for any tag that wants to generate hits. Keywords are like user defined categories. We combine all the tags that share common keywords. For example, google.com, yahoo.com, and vanillasasquatch.com would all share the keyword, SearchEngine. Each tag can have up to 3 keywords associated with it.
  4. The Randomizer: The title says it all. A user can view a random tag’s website, or view a random keyword.

Statistics

There are 3 big addictions on the web. Without sharing the top 2, we will let you know #3, is statistics. People love to view the stats on anything and everything. Here at TagACloud, we will make sure not to disappoint. You will be able to view statistics for every little thing, to ensure that you always know the current state of your tag. You will also find the website itself is littered with stats. Just keep your eyes open.
tagacloud

As of late 2007, Tagacloud was booming with over 10,000 users. Then, one day JJ and I decided we would take a weekend and “improve” tagacloud. Now, if any of you are programmers, you know “improving” an app takes much longer than you anticipate.

We set out to do it in a weekend and the ideas started flowing. It was Facebook meets Halo 3 meets Digg meets Hannah Montanna meets Karate Kid 3… And then the weekend ended and Tagacloud would remain a “Coming Soon” page for a year and a half… :(

A couple of weeks ago, JJ and I were sitting around and thought to ourselves “Why did we ever take down the old tagacloud?”. One thing led to another and we decided to completely wipe the database and start tagacloud fresh.

So, go fourth and start leveling your tag.

New Alice In Wonderland Movie Looks Sick

I was a big fan of the game Alice that came out for PC. It def portrayed AIW as a darker sort of movie. It looks like Tim Burton will add a similar twist to the latest Alice In Wonderland Movie. Check out the trailer above.

iPhoneLB.com gets a much needed update

screenshot_04

So, I started this site called iphonelb.com a few months back and left out a very important feature. The ability to edit your applications!?! What this means is, users have been testing their apps and putting in “test data” and when it comes time for release, the can’t modify it.

Another feature missing, was the ability to clean out all of your test scores.

Well, thanks to about 8 minutes of my time, this has been resolved and the feature has been added. I am really excited about iphonelb and have some big things planned for it in the future. Write me on Twitter or on my blog if you have any feature requests for it.

Parks & Recreation is to The Office as American Dad is to Family Guy

pandr

After seeing the show Parks and Recreation last night, I have come to the conclusion that the show is doomed to fail. Not only is it not funny, it’s jokes try to mimic the dry awkward humor of The Office. Parks and Recreation Fail!

Increasing Your Blog Traffic Using Twitter Trends

twitter_trends

Twitter Trends are a very interesting part of Twitter. They are basically the most typed keywords or hashtags on twitter for a given day. Some examples might be #musicmonday or macHeist. These are fun and all but how can you use them to get traffic to my website/blog…

Well, often times trends refer to words associated with website articles, videos, images, etc… For example, the other day, the word mashable was trending on Twitter. This was because Mashable.com had just put out an article on twitter trends. Since people were talking about and more importantly linking to this article, the word mashtable was trending…Naturally, this article got quite a bit of traffic.

Post a Comment On The Article

So, I commented on the article leaving a link to my blog. That day, I got ~50 extra uniques to my blog! You can do the same by closely following the trends. Make sure you read the article and are not just spamming the comments section. Many articles use blog systems (such as WordPress) that allow you to link to your website/blog in your commentsl. Post a comment that contributes to the discussion and I guaruntee it will generate more traffic to your website/blog. Again, don’t be a spammer, contribute something to the discussion…

Be Prompt (comment early)

The sooner you comment on the article, the more traffic it will generate to your site. In the above example, I was like the 15th or 16th to commenter. Imagine if I had been the first…

Although this method isn’t perfect, it’s a sure fire way to generate some quick traffic for your blog/website. Do this every day, and you could be huge!

I freakin hate this page…

over

Seems to show up way too much.

Alexa Gets a Much Needed Update

alexa

If you have a blog/website then you probably have heard of Alexa. If not, you should search your blog in it to find out some interesting stats. Being a stat junkie, I check services like this frequently.

It appears that Alexa has recently updated their interface from their old jenk web .05 hideousness. While it’s not quite web 2.0, I’d say it has a good start as web 1.6 (maybe 1.7 because of the shine on the logo).

On a side note, icodeblog seems to be huge in Canada 😉

WordPress Plugin To Increase Twitter Popularity

twitterpluswordpress

If there are two things I love on the intenets, they are WordPress and Twitter. Recently there have been many plugins developed to integrate the two. Mainly, updating your Twitter from your blog or vice-versa. But the question is, do these benefit one another?

Does your Twitter send traffic to your WordPress blog or your WordPress blog get you more followers? Maybe if you are @kevinrose but in my opinion, not really…

I’m currently developing a plugin that will incredibly benenfit your Twitter following using your WordPress blog. It’s called TwitPop and should be available shortly for download. So be sure to subscribe to the RSS feed and check back soon.

Twouble With Twitter Video

Ok, so I am sure you have seen this video by now, but I just had to post it because it’s flippin hilarious.

This perfectly describes mine (and others) Twitter obsession. Kinda sad actually.


"Twouble with Twitter" sous-titré
Uploaded by LePostfr

Google In Real Life Using Google Classic

google

Image Source: http://www.boomerang.nl

I depend on Google way too much for spell checking, simple math, and looking up things I don’t know off the top of my head.

It’s sad because often my first instinct when handwriting something or even looking for a lost object in my house is to “Google it”.

WordPress For iPhone Gets A Much Needed Update

wordpress-icon-512
A few days ago, the popular blogging tool WordPress released a much needed update to their iPhone application. The main features included in the update were:

  • Landscape mode for writing posts – This is a huge one. It was a total pain in the butt writing blog posts with the vertical keyboard
  • Page Editing/Creation – Meh… How often do you do this?
  • Comment Moderation – Very excited about this feature. I love being able to check out comments quickly without loading my entire blog.
  • Photo resizing – Very cool option. Makes photo uploads go much quicker.

If you have both an iPhone AND a WordPress blog (your own host or WordPress.com), I would highly suggest downloading the WordPress iPhone app for blogging on the go.

Hopefully, having the landscape keyboard mode will motivate me to blog more often.

Click here to download the WordPress application for the iPhone

Top Dugg Story of Today – I hate Dane Cook

LOL, SlightyOverDressed.com had a post that made it to the top of DIGG today simply titled “I Hate Dane Cook”. That’s freakin hilarious.

Here’s the link. http://slightlyoverdressed.com/i-hate-dane-cook/

Free Leaderboard Solution for iPhone Game Developers

What makes most multiplayer games more exciting that single player games? It’s competition! People love to compete with eachother.

And how can competition be achieved in single player games? Leaderboards.

A leaderboard is basically a table ranking players based on their scores in the game. This allows players to see how they stack up against other players.

The Problem

Many programmers either know how to do web development or system development. They don’t know both and certainly don’t know how to integrate the two. This is why I believe there are not more single player games with leaderboards in the App Store.

The Solution

This is where iPhone Leaderboards comes in. It’s an online hosted leaderboard that is incredibly easy to integrate with any iPhone game. The code to integrate with iPhoneLB is given to you to paste directly into your own. It couldn’t be easier.

Try it out and let me know what you think!

Part 3 of iPhone Game Programming Tutorial Posted On iCodeBlog

It’s been a while, but I finally posted part 3 of the iPhone Game Programming tutorial series on iCodeblog.com. The focus of this tutorial was to create a splash page for your game that fades into your game’s main view.

I chose to create this tutorial after seeing many games that just jump right in to the main game play. A splash page makes the game feel more “professional” as well as gives the developer a chance to brand the app by displaying a company logo or something to that extent.

Hopefully, I will be able to get part 4 up in a timely fashion to teach developers how to incorporate sounds into their games.

So, go ahead and check out part 3 of the iPhone Game Programming Tutorial Series.

New Web Application That Will Be Useful For iPhone Games Developers

So, after downloading many iPhone games and talking with a ton of iphone developers, I have a found a huge need in the community. Over the next week I will be developing a killer web application with a web service API that will be free to iPhone developers to use.

I am not going to give out any details at the moment, but be sure to subscribe to my RSS feed as I will be blogging about it through out next week (Spring Break = Time to develop). It should be completed by late next week.

I guarantee, if you are an iPhone game developer, you will benefit tremendously from what I am about to release.

Excited? So am I…

The Only Twitter API PHP Class You Will Ever Need

twit

Note Twitter has switchted their entire interface to use OAUTH and this class no longer works (I should probably change the title hahaha). I will post an oauth connection tutorial in the near future, so make sure to ****subscribe to my RSS feed** for all of the sweet sweets updates!**

Cheers!

So, I started writing a Twitter API Programming series last week… Here is part 1. I have found that there is not much else to teach when it comes to interfacing with Twitter. Basically, we just need to implement all of the Twitter functions.

I have taken it upon myself to create a fully functional Twitter API PHP class. It has every Twitter function you will ever need (less the direct messages). I have also fully documented it with comments directly from the Twitter API so that the functions are easy to understand. Here is how you would use the class. The first parameter of every function is the return type. For Twitter it can be either xml, json, or rss for some functions.

<code class=’php’>include("Twitter.class.php");
    $twitter = new Twitter();
    $twitter->username = "twitteruser";
    $twitter->password = "twitterpass";
    // Show public timeline
    echo $twitter->public_timeline();
    // Update your status
    echo $twitter->update(‘xml’,’This PHP class is flippin sweet!’);
    // Start following a user
    echo $twitter->create(‘xml’,’brandontreb’);</code>

These are just 3 of the functions implemented in this class. The full function list includes:

  • public_timeline
  • friends_timeline
  • user_timeline
  • update
  • replies
  • friends
  • followers
  • show
  • create
  • destroy
  • exists

All of these functions are fully documented and simple to use. You can also check out Twitter’s API here (but you shouldn’t need to).

So, now you can fully **integrate Twitter into any PHP application you create! **

Download The PHP Twitter Class here Twitter.class.php

Also, make sure you subscribe to my RSS feed. More great programming tutorial to come.

Why Many iPhone Apps Suck

I have been downloading many different iPhone apps lately and have noticed that many of them suck.

When I say they suck, I’m not necesarily referring to the content of the app. What I am talking about is the programming of the app. But Brandon, how do you know the programming sucks. Well, frequent crashing is an obvious indicator. Also, taking too long to do various computations as well as overall awkwardness.

This is because many non-programmers or hobby programmers decide they want to make an iPhone app without first learning the objective-c language. People just use jank copy and pasted code frankensteined from different examples, close their eyes and pray. This is the architecture of many iPhone apps.

So, who’s fault is this? Well, at first I wanted to say Apple for their lack of tutorials/explanations. After thinking about it, I feel it’s simply lazy programmers driven by trying to make money rather than the desire create a solid and useful applications. It’s quite sad actually.

One challenge here is the iPhone is a terrible platform to learn programming with. The forced program design assumes you have a solid understaning of object oriented programming design patterns as well as many other advanced programming topics. Many CS students don’t even get this until their second year in college! So how can a novice programmer jump right in and make an iPhone app? They code a pile of crap.

So what’s the solution to this? Well I’ll tell you. Teaching people objective-c from the ground up (that, and Apple being more selective when approving apps). I intend to write a whole series of beginner objective-c tutorials (using the mac as a platform rather than the iPhone). I’m not sure yet if these will be posted here or on icodeblog.com. I have yet to decide.

So stay tuned for the first Mac Application Development tutorials.

Buzzword Is Now In The App Store

Well, after anxiously waiting for the past 6 days (feels like forever) I have finally gotten that magical email from Apple stating that my “application is ready for sale”. The application of course referring to a game I created called Buzzword.

Buzzword is essentially a clone of the popular party game CatchPhrase ported on to the iPhone. Click Here for all the details on Buzzword.

I am asking a huge favor to anyone that wants to participate. I will give you a free copy of Buzzword (wow saves you a whole buck) if you would kindly write a review of it on your blog or website. If you are interested, either post a comment in this post, contact me, or hit me up on Twitter.

Click on the image below to download Buzzword now.

Download Buzzword In The App Store

Twitter API Programming Tutorial With PHP – Intro

<img src="http://brandontreb.com/wp-content/uploads/2009/02/picture-15.png" alt="picture-15" title=&uuot;picture-15" width="400" height="125" class="alignnone size-full wp-image-85" />

I have recently started using Twitter and completely fell in love with it. Being a programming, this naturally made me want to develop applications for interfacing with it. So, I scoured the internet (checking Twitter’s website as well) to find good *simple tutorials for doing this. After searching for a while, I couldn’t really find any. Ok, I lied, I found a few but they were terrible. I hate tutorials that assume the reader knows more than they actually do.

So, I am taking it upon myself to write a series of comprehensive tutorials for interfacing with Twitter. I will first do them all in PHP and then maybe in some other languages. I may even do some in Objective-C to be implemented on the iPhone. These would be written of course at iCodeBlog.com 😉 .

Let’s just jump right in. Twitter offers a few ways to interface with their web services, which are all documented on their API Wiki. The documentation is great, assuming you know the code to get connected and make the calls. So, let’s skip all of the nerdy low level stuff and write an application.

Today, I will be teaching you how to simply connect to Twitter and update your status. This will be pretty straight forward and require very little PHP code. So, grab some coffee, open up your favorite PHP editor (notepad?).

Ok, so let’s start by wrapping our code into an easy to call function. We don’t want to have to copy and paste our Twitter interface code every time we need it in a project. Wouldn’t it be nice if we could just call it like this

<code class=’php’>updateTwitter("Just Rockin Out")</code>

So let’s begin by declaring a function called updateTwitter. Type the following code</p>

<code class=’php’>function updateTwitter($status){ 
    // Twitter login information 
    $username = "TwitterUsername"; 
    $password = "TwitterPassword";</code>

Our function begins with a declaration of a username and password. This will be your Twitter login information. Every Twitter API call requires that you authenticate yourself. Make sure you update the code to include your username and password/

Next, we will add the following code to initialize the variables needed to make our Twitter API call. Continue by adding the following code.

<code class=’php’>// The url of the update function 
    $url = ‘http://twitter.com/statuses/update.xml’; 
    // Arguments we are posting to Twitter 
    $postargs = ‘status=’.urlencode($status); 
    // Will store the response we get from Twitter 
    $responseInfo=array(); 
    // Initialize CURL 
    $ch = curl_init($url);</code>

One thing I want to point out is the URL. Notice the update.xml at the end of it. This is telling the Twitter API we want to call the update function and we expect to receive xml back. You could also change it to be update.json if you want to receive json data back.

The next variable postargs is simply the arguments we will pass to the update function. Since these arguments get appended to the URL, they need to be urlencoded. The responseInfo array will contain the return data from the cURL request to Twitter. Finally, we just initialize a new cURL session. cURL is just a protocol for transferring data. You can read up on it on Wikipedia if you feel so inclined.

Next, we need to tell cURL to do a POST rather than a GET and pass it our argument string

<code class=’php’>// Tell CURL we are doing a POST 
    curl_setopt ($ch, CURLOPT_POST, true); 
    // Give CURL the arguments in the POST 
    curl_setopt ($ch, CURLOPT_POSTFIELDS, $postargs);</code>

The next part is where the magic happens. Here is the next bit of code (I’ll explain it below)…

<code class=’php’>// Set the username and password in the CURL call 
    curl_setopt($ch, CURLOPT_USERPWD, $username.’:’.$password); 
    // Set some cur flags (not too important) 
    curl_setopt($ch, CURLOPT_VERBOSE, 1); 
    curl_setopt($ch, CURLOPT_NOBODY, 0); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    // execute the CURL call 
    $response = curl_exec($ch); 
    // Get information about the response 
    $responseInfo=curl_getinfo($ch); 
    // Close the CURL connection curl_close($ch);</code>

Wow! that looks like a lot of nerdy code. Good thing you only have to write it once and don’t have to understand it (unless you want to). The first line sets the username and password fields in our cURL call. When we first connect with the Twitter API, it will prompt for a username and password. cURL will automatically feed the username and password to the API. The next few lines are not super important. If you one of those people that get hung up on that sort of thing, you can read about them here. We’re almost done, I promise… Finally, we make the cURL call itself by calling curl_exec. This will return a response from Twitter which will contains some XML if your call completed successfully. The next line, gets the http response (makes sure you were able to connect to Twitter). If it is anything other than 200 (HTTP OK), it means your cURL request never even reached Twitter. Here is the last bit of code

<code class=’php’>// Make sure we received a response from Twitter 
    if(intval($responseInfo[‘http_code’])==200){ 
        // Display the response from Twitter 
        echo $response; 
    }else{ 
        // Something went wrong 
        echo "Error: " . $responseInfo[‘http_code’]; 
    } 
} 
?></code>

All this code really does is makes sure we got a 200 code (successfully reached Twitter). If so, it prints out the XML that Twitter returned to us. Now you have a handy-dandy function you can call whenever we want to update your Twitter status from your website. Simply type

<code class=’php’>updateTwitter("Just finished a sweet tutorial on http://brandontreb.com")</code>

and like magic, your Twitter status will be updated. This has many different uses as you can imagine. Join me next time when I will be putting this code into a PHP class as well as implementing the rest of the Twitter API functions. We will then be able to use this Twitter class in a variety of PHP applications. So , be sure to subscribe to my RSS feed and feel free to ask me any questions in the comments section of this post. You can also download the source code of this tutorial here… (insert clever tag line here (iCodeBlog’s is happy iCoding, I need a new one)).

Binary Game – iPhone App Review

Just posted an app review of B1nary Game over at FreshApps. Check it out!

New iPhone Game Programming Tutorial Post On iCodeBlog

Well, it had taken me a while to slot in the time, but I finally finished part 2 of the iPhone Game Programming series iTennis on iCodeBlog.com . The game is shaping up to be pretty cool and I am really enjoying teaching about game programming.

I think that game programming is perfect for teaching people how to program a certain language. This is because games generally encompasses many aspects of programming (interface, logic, math, animation, AI, etc…). The only problem is, they take forever to code/teach. Here are the links for the iPhone Game Programming Tutorials Series:

Be sure to check them out. Let me know what you think. Also, hit me up if you have tutorial suggestions.

Blogging Practices – Frequency and Size of Posts

If you have ever had your own blog, you may have at one point been faced with a question. How often should I write a blog post and how long should each post be?

I have been thinking about this since I started blogging. It is a common thought that you must write a post every single day in order to increase/maintain traffic. But, is this really true? For busy people with families and lives (that aren’t blogging) might have a tough time writing a new content-rich post every single day.

So, would readers rather see less frequent but “better” blog posts or more frequent “weaker” blog posts? Or maybe even a combo of the two?

For example, what if between killer programming tutorials, I wrote short posts about my dog or response to popular articles. Would this benefit my readers or turn them off?

I don’t have a real solution to this but plan to employ some of these strategies while writing this blog. Hopefully, I will be able to draw some conclusions and share them. If you happen to stumble on this post on your journey through the interwebz, please feel free to comment and shed some light on this for me.

The Focus Of This Blog

The purpose of this blog will be primarily to share my programming knowledge through coding tutorials.

I will be writing tutorials based on the programming language that I am currently excited about. These will be anywhere from objective-c to ruby on rails to .NET. Whatever strikes my fancy.

Along the road, I will also be sharing my art (photo and drawing) as well as anything else I find interesting.

So just sit back and enjoy the magic of code!

iPhone App: Buzzword Submitted to the App Store

I have just submitted an iPhone app that I have been developing in my free time. The app is called Buzzword. It’s basically a game similar to the game catchphrase. So wherever you go, you and your friends can bust out a game of Buzzword…

Here are some screenshots:</p>

screenshot_3</p>

screenshot_2

Once approved, Buzzword will only cost a buck. I’m not kidding, it will probably be the best dollar you have spent and will spend in your entire life. Stay tuned, I’ll be giving out promo codes to people at random…

How to Connect Facebook To Twitter

With the growing popularity of both Twitter and Facebook, one could obviously see a need to link them together. Whether you primarily use Twitter or Facebook, this tutorial will show you step by step, how to update your Facebook status by posting to your Twitter account.

So, how can you update your Facebook status with a text message? Well, Twitter offers this great functionality that allows you to post a “Tweet” via text message. If you combine this with the Twitter app that Facebook offers, you can now update your Facebook and Twitter status simultaneously with one text message (no internet required).

What you will need:

  • Twitter Account
  • Facebook Account
  • Cell Phone Capable of Sending Text Messages

Signing Up For Twitter

The first step is to sign up for a Twitter account if you don’t already have one. Head on over to http://twitter.com/signup.

Twitter

Setting Up Text Message Updates On Twitter

You first need to tell Twitter that you want to post from your phone. Start by clicking on Settings in the top right corner of your Twitter page.

Settings</p>

Now, select the Devices tab

picture-13</p>

Enter in your phone number with a “+” in front of it, followed by the country code. So for US phone numbers, it’s +1… Look at the image below for an example.</p>

picture-3</p>

Twitter will then send your phone a text message containing a unique code. Once you get it, enter it in the box. Now you are able to update your Twitter status by sending a text message to 40404. Whatever you send to this number will be posted to Twitter.

Connecting Facebook to Twitter

Now, you simply need to install the Twitter application on your Facebook account. Log in to Facebook and go to Twitter’s application. You can find it by clicking here or searching for “Twitter” in the search bar. Once on Twitter’s page click “Go to Application”

picture-14

It will ask you if you want to allow access to the Twitter application on Facebook. Click “Allow”

picture-31

Now it will ask you to enter your Twitter user name and password. Enter it in and click “Log In”

picture-4

Now, click on “Allow Twitter To Update Your Facebook Status”

picture-5

The next screen will confirm. Click “Allow” and you are good to go!</p>

There you have it! It sounds a little complicated, but trust me, updating your Facebook status via text message is very handy. You don’t even have to look at your Twitter account every again (although you should because Twitter is rad). If you have any questions or comments, feel free to leave them in the comments section of this post.

Buzzword

buzzword_iphone</p>

The ultimate party game has arrived in the App Store! If you are a fan of the game Catch-Phrase, then you will love Buzzword.

In this fast-paced game, do whatever it takes to get your team to guess the word or phrase. Give them clues – talk, use your hands, jump around. Once they guess, pass it quick. You don’t want to be caught with the game at the buzz. </p>

Game Controls:

Start/Stop – Starts and stops the timer

**Category **– Selects a category

Team1 – Awards a point to team 1

Team 2 – Awards a point to team 2

**Next **– Selects the next word to describe</p>

Game Rules:

To play the game, players need to split up into two teams. You should sit in a circle alternating every other person as a member on your team.

First, the teams will need to decide on a category in which the words will come from. This is done by pressing the “Category” button. Next, pick a team to begin the game with the first word.

The game starts by pressing the “start/stop” button to start the timer. The player holding the iPhone/iPod will try to describe the word on the screen. They can say and do whatever they want without saying any of the words on the screen, saying “rhymes with”, or saying “starts with”. All of the members on their team will then try to guess the word or phrase the player is trying to describe.

Once the word has been guessed, the iPhone/iPod is passed to the next player on the opposite team. This player will press the “Next” button to receive a new word to describe.

The game is played until the buzzer goes off. At this point, the team NOT holding the iPhone/iPod gets a point. This is done by pressing either the “Team 1” or “Team 2” buttons. The first team to 7 wins!</p>

If you have any questions, suggestions, or bug reports, feel free to comment on this page or write me on Twitter (http://twitter.com/brandontreb)

Download Buzzword In The App Store