zima url shortening Official 'Cool Guy'

Categories

Tags

Blogroll

Download OPML file OPML

Screen Cast Using UIImagePickerController in MonoTouch

The UIImagePickerController is a must for creating iPhone apps, everyone loves taking pictures and sharing them with their friends :). The UIImagePickerController is the ViewController responsible for allowing the user to either Take a Photo or to Choose a Photo from their Photo Library. And utilizing it in your code is extremely easy. I have created a short screencast showing you the basics of implementing the UIImagePickerController in MonoTouch. Note at 14 minutes in or so I sausage fingered Window.AddSubview and called it Window.AddSubView and took me a minute to figure it out :)



Hope you enjoyed the screen cast here's the code for the project I created.

October 30, 2009 08:54 by martin bowling
E-mail | Permalink | Comments (253) | Comment RSSRSS comment feed

Using UIWebView to Create an In-App WebBrowser with MonoTouch (Sample Code)

So I have noticed a trend for having pretty full functioning In-App WebBrowsers for most iPhone Apps. I think this is good on many levels, one I think this provides a good experience for the user & I think as a developer this should be your number one goal. Also, it keeps people in your app & that's really what we want, if you want people to use your app and recommend to friends and family members you need to think about all these "little" things because they can really make or break your app in some people's eyes. Well enough of my opinion on app development, let start talking about the fun stuff, the code!

Apple has done an awesome job of giving us alot of browser functionality right out of the box with the UIWebView, it's really powerful and has almost everything you need to make a working albeit basic In-App WebBrowser with just a few lines of code. Just a note this post was inspired by a post over at iCodeBlog

Here is a quick screenshot of what our end product is going to look like


Screen Shot of In App WebBrowser Final Product

Let's Get Started!

First let's open up MonoDevelop and let's create a new iPhone MonoTouch Project (File -> New -> Solution)

iPhone MonoTouch Project

We could have choosen an Empty MonoTouch Project; but choosing the iPhone MonoTouch Project does a little bit of the work for us :) Name the project and hit forward.
Now we need to add a View Interface Definition with Controller, right click (or is it called two finger click on a Mac?) on the project name, then goto Add File ..

View Interface Definition with Controller

I called mine MiniBrowserViewController; but of course you can call yours whatever you'd like.

Building the UI with Interface Builder

I know some .NET developers have had a hard time making the transition to using Interface Builder, I myself was one of those people. But since it can be a kinda tricky thing i'm just going to do a quick screen cast, showing you how I built the UI with Interface Builder.

Hooking It All Together

So the first thing we want to do is tell our app that we have our own view, we want to do this in the Main.cs, inside the FinishedLoading function we are going to put this code (note because of formatting issues that I just put code in a screen shot):


FinishedLaunching Method in Main.cs


One more thing to note in this code that because our Custom View is not a nav controller or tab bar controller we need to account for the status bar ourselves, we do that by newing up our miniBrowserController.View and then drawing a Frame around it. Hat tip to Brent over at codesnack.com for that little tip.

MiniBrowserViewController

The first thing we want to do is override the ViewDidLoad method of the UIViewController we are going to do several things in this method we are going to setup the delegate for the UIWebView, hook up delegates for all our UI elements and do some initialization for our app.

ViewDidLoad


Having our controller be the UIWebView delegate is really important this allows us to control all the events and methods for the UIWebView and respond and update our UI accordingly. Another thing to note in this code is the use of the NSUrl and NSUrlRequest, that's how we get the UIWebView to load our Urls. Unlike the UIButton (which uses the .TouchDown event) we use .Clicked event to respond to being pushed in the UIBarButtonItem. The Back and Forward buttons make use of the .GoBack() and .GoForward() methods of the UIWebView, letting it do all the heavy lifting. Another feature I added to this was an open in safari button (which I think is a great feature for an In-App Browser) this is also relatively easy. Create a NSUrl and new it up with whatever text is in the addressBar, then pass it on to the OS to open in Safari. The last thing of note in this section is the .EditingDidEndOnExit method of the UITextField addressBar, which fires when you hit the "Go" button on the keyboard.

Being In Control of the Browser UIWebViewDelegate

So this is where all the magic happens for updating our UI based on what's happening with the UIWebView, again UIWebView does most of the heavy lifting we just have to overload a few methods. We pass in an instance of our MiniBrowserViewController when we new up the delegate so that we have access to the UI elements.

UIWebViewDelegate


First we overload the ShouldStartLoad method, this allows us to update our addressBar.text with the update URL text when a user clicks a link on the page they are view or if they use the back and forward buttons. There are also two methods that let us know when the LoadStarted and when the LoadingFinished. So we put some code in there to update the activityIndicator to let the user know what's going on. Also snuck some code in the LoadingFinished to enable or disable the Back and Forward buttons.

To Sum Things Up

Now this is in no way shape or form a full-featured browser; but this should be enough code to get your started and add a great feature to your MonoTouch app. Also note that you must put http:// in the addressBar to get it to respond of course you can easily add some code to handle cases where the user doesn't put in http:// but i'll leave that as an exercise for you. I also didn't add a refresh button which I didn't realize until I had written this post and didn't feel like adding one and retaking screenshots and adding the code (that was just out of sheer laziness =P) So without further ado you can grab the full project over here

October 27, 2009 10:31 by martin bowling
E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Hey Twitter Why Do You Think I'm @MelissaCruz

Ok so this probably doesn't really deserve a whole post; but today while I was checking on my replies over at my favorite microblogging service twitter. I noticed something very strange.

Twitter.thinks.I.am.MelissaCruz

This is my replies tab, but as you can see ScottPolk is sending a message to MelissaCruz but it says that it's a reply to me (MartinBowling) but my name isn't anywhere in the tweet. I am sure it's just one of those things; but thought it might be worth noting. Let me know if you have any twange happenings.

November 6, 2008 08:59 by martin bowling
E-mail | Permalink | Comments (139) | Comment RSSRSS comment feed

Don't Vote Tag Five Friends Meme

Matt Cutts is getting the ball rolling on the don't vote blog meme to help promote Google's new voter registration effort, so you just have to tag five friends to get them to register and they gotta tell five more friends, so here it goes

 

My Tags:

Dave Snyder - Cause Angry Voters Are Good Voters :)

Andy Beal - Cause I know he has been monitoring the candidates reputations and knows all the dirt

Marty Weintraub - Cause he's crazy enough to do the right thing no matter what :)

Brian Carter - Cause a little laughter goes along way

Utah SEO Pro - Cause NoFX would want me to make sure he was registered!

So go register, get the facts and get your ass out there and vote! And make sure your friends are registered and voting, it's not important how you vote - just that you do. If you don't participate then we all loose!

October 2, 2008 05:25 by martin bowling
E-mail | Permalink | Comments (16) | Comment RSSRSS comment feed

Throw Marty from The Train: A Journey To SMX East

Just How Did I Get Suckered Into a 13-Hour Train Ride From West Virginia to Manhattan?

Train

Those attending the pre-SMX East networking event will invariably notice one or more of the following characteristics of a certain SEO:

1. He will be wearing black-framed, ultra-hip and stylish designer glasses.

2. He will talk non-stop, waxing poetic on any number of subjects on which he is an expert, such as the existential themes of Ricky Martin's music; why Cher is the quintessential pop cultural icon of the 20th century; and the ramifications of the power bomb replacing the body slam as the most common weapon in a professional "wrestler's" repertoire.

3. He will be sipping a refreshingly clean and crisp Zima, with a watermelon (or, occasionally, blue raspberry) Jolly Rancher dropped into the bottle for added flavor and color.

The SEO in question is one Martin Bowling. He's the Chief Technical Officer and resident evil genius here at Vec3. I tell you to look out for him and not for me because, naturally, I won't be there at the pre-SMX mixer myself. Neither will my colleague Matt Crist, the other Vec3 guy making the New York trip. It's not that we don't want to be there, mind you. It's just that Matt and I will be traveling to New York on the day of the mixer (October 5) via Amtrak's Cardinal 50 rail line. We will not get there in time for the mixer. You see, under ideal conditions, it's a 13-hour ride through the Allegheny Mountains into Virginia before the line turns north, running through Charlottesville before arriving in Washington, D.C. From there, the train passes through Philadelphia, Wilmington, Delaware and on into New Jersey before ending up, many hours later, in New York's Penn Station.

Now, if you've ever traveled Amtrak, you know the conditions are never ideal. That means, of course, that Matt and I will be on the train much, much longer. Marty? He'll be at the mixer, regaling you all with tales of his days as a trapeze artist on the underground circus circuit, or of his time in a Turkish prison. (I won't tell you his crime; it was a bogus charge anyway, the worst case of anti-American xenophobia I ever saw).

Marty will be there because he's traveling by airplane specifically so he can arrive in time for social (read: drinking Zima) hour. Matt and me? Again, we'll be on an uncomfortable train which will invariably arrive in New York City at 2 a.m. on Monday. We'll have to hail a cab in the middle of the night in a strange city that backwoods West Virginians are undoubtedly ill-prepared to navigate. All West Virginians are hillbillies, you understand, incapable of common sense or rational thought. It will be extremely unsanitary, for example, to walk around Penn Station barefoot. Maybe I should just break down and buy a pair of $10 shoes from Wal-Mart or something. We'll see.

But I digress. This is about our wonderful CTO and his social needs, not any discomfort Matt and I may (or may not) endure on our railroad odyssey from Appalachia to the Big Apple. Have a good time, Marty. We'll see you when we get there.

*********

Since sarcasm doesn't easily translate on the Web, a disclaimer is in order. I hate flying. Hate it. Not only did I choose my method of transportation for SMX East, I'm looking forward to the ride. Having traveled around the country many, many times in my previous life as an old-school media guy (read: newspaper reporter), I've hopped the Cardinal 50 line a number of times and have always enjoyed the trip.

Rail travel leaves a much smaller carbon footprint than driving or flying. It's also quite easy and relaxing. Sure, it takes forever and a day to get anywhere, but it's worth it to keep from dealing with airports, travel delays, turbulence at 28,000 feet and the otherwise kind, comfortable and accommodating nature of our nation's air travel system. Matt is coming along on the train because he's never ridden Amtrak before and is curious to see if I am crazy in endlessly extolling its virtues to anyone and everyone who is planning a business trip.

In addition, Matt and I will be live-blogging and Tweeting the trip through the Vec3 blog and our Twitter page--as we'll also be doing for the three days of SMX East--so keep an eye out for our updates.

Marty? Yeah, sure, keep an eye out for him, too. Trust me...you can't miss him.

September 24, 2008 05:20 by andrew beckner
E-mail | Permalink | Comments (26) | Comment RSSRSS comment feed

Scared Clear Part Duex Or Something for the Kids at Home

Scary SEO

As I was putting together the Scared Clear Zima Meme Contest I forgot one very important group of people, the people already going to Scary SEO. How could I forget you guys! How irresponsible of me, so I am amending the contest to include a prize for those of you who are already going to Scary SEO (but please be sure to specify when you drop your link that you don't want to be eligible for the other prizes). I am going to give you a $50 bar tab + pay your way into the IMCharity Party. So you can party like a rock star and help a good cause! So anyone going to Scary SEO make sure you don't forget to enter the Scared Clear Zima Meme Contest. Also we are looking for things to raffle off at the Scary SEO IMCharity Party so if you or your company would like to provide a prize please drop me or Dave Snyder an @ reply or dm on twitter.com (yes I nofollowed that link because twitter refuses to follow my links =P)

September 23, 2008 04:02 by martin bowling
E-mail | Permalink | Comments (98) | Comment RSSRSS comment feed

Celebrating Meaningless Rankings Or How SEOChumpion Ranks 1st and 2nd for SEO Agency Firm

So last night I am getting ready to watch some tv, being fall there is lots of good tv to watch, before I do I hit refresh on Twummize.com and low and behold this is what I see

SEOChumpion ranks 1st and 2nd for SEO Agency Firm

Now I know what you're thinking give poor SEOChumpion a break, what did he do to anyone. Well it's not really what he did to anyone, it's just what he is doing that made think about how sometimes people get so fixated on rankings and keywords that they start to celebrate the empty victories. Yeah he is ranking #1 and #2 for "SEO Agency Firm" but how many people are actually typing "SEO Agency Firm" into Google or any search engine. Well let's take a look.

image

Now of course these numbers are kinda meaningless in themselves but when Google doesn't even have enough data to display anything you know for sure it's a keyword that is not really worth spending any time and effort on, much less touting it as a victory. Now here is a snapshot of what might actually be some money keywords when it comes to SEO

image

I for one though don't think ranking or not ranking for "SEO xxxx" should be a measure of ones success. We get most of our business from word of mouth referrals, and I think that is because so many people have Googled "SEO xxxx" and been lead to a snake oil seo who is using bogus claims like I can guarantee rankings or I rank #1 for this term, so I must be good right? Taking advantage of the fact most people don't understand rankings and keywords. Preying on their vulnerabilities. But I digress. So we know that this keyword has little traffic, wonder what kind of competition it has. Well thanks again to the twitterverse, specifically mvandemar 

Gasp! SEO Agency Firm Has No Competition?

So zero competition, zero actual searches happening in Google. What the hell is the point? You might as well be ranking for laser kitten vertices. Ok so I am getting a little ranty again oops. I guess my main point is that SEO isn't and shouldn't only be about rankings and keywords. A good SEO should help their clients with a well rounded holistic internet marketing strategy, one that helps impact their ROI. Ranking for silly terms isn't going to do your clients any good, isn't going to bring traffic, isn't going to bring leads and certainly without those things won't result in any sales. I would much rather help a client get a good solid foundation for their website, help them produce good content, provide their users with a good experience and then build on that. The rankings will come with time and patience; but getting people ranking for junk - is only going to frustrate them and continue to tarnish the image of SEOs as a whole. I am sure I could go on and write forever about that; but I thought I would list some examples of pointless keywords that I rank for just for fun :) And please share your examples in the comments :)

 

Of course I am sure I could go on forever and ever; but I think everyone gets the point! Don't waste your time or clients time talking about empty rankings, and please share your empty rankings - do it for the LULZ :)

September 23, 2008 03:29 by martin bowling
E-mail | Permalink | Comments (57) | Comment RSSRSS comment feed

Scared Clear or Using The Zima Meme to Get Your Ass to Scary SEO

Contest Introduction Brought To You By Brian Carter

If you haven't heard, Martin Bowling loves Zima. He loves it so much (or so people say), that Google Suggest has permanently associated his name with Zima- they're officially related now.

martin bowling google suggest results


Martin Bowling Loves Zima is a meme (a viral idea) that was started by Andy Beal and his wife, and has been embraced and fueled by search industry personalities such as Rob @SEOcracy, Sheila @govisithawaii, Todd Friesen, Brian Carter, Todd Mintz, Joshua Sciarrino, Dana Lookadoo, Danny Sullivan, Rand Fishkin, and others.
Now Martin is announcing the Martin Bowling Loves Zima Meme Contest... it's the contest that asks "Who can create the best whatever (video, blog post, tweet series, captioned picture, avatar, twitter background, the sky is the limit - want a great example check out ZimaFan on Twitter) about the Martin Bowling Loves Zima meme?"

The prizes are awesome, the judges are cool, and the contest is going to get a LOT of attention.
Here's what you have to do by October 3rd, 2008

  1. Create your thing
  2. Put it on the internet, and you don't EVEN have to link to the contest blog post, that's right this isn't a ploy to steal your link juice :)
  3. Tweet about your entry with a link & Leave a comment here with your entry (just incase as we all know that twitter is sometimes teh suck)
  4. Rinse & Repeat, cause you can enter as many times as you'd like!

Then you wait for our judges' decision anxiously while chomping on your nails, knowing the outcome could change your entire life forever!

The second half of this post brought to you by your regularly scheduled host Martin Bowling

And now on to the good stuff, how is this going to get my ass to ScarySEO? Well here is how these are the fabulous prizes:

1st place

Win a trip to ScarySEO, (includes conference registration and Two Nights Stay at the awesome Hilton Deerfield Beach Hotel - Sorry Folks Airfare not included, unless someone would want to sponsor it :wink: )

$50 bar tab provide by yours truly, and no drinks will not be limited to Zima only :)

And one of these awesome Zima t-shirts

You will not believe what mandi bought me at the balzout clearance you must see by martinbowling.

2nd Place

So you don't get the free ride to the awesome ScarySEO mini-con, but we still want to hook you up with some SEO knowledge so

SEOmoz SEO Training DVD’s over 7 hours of SEO knowledge from Rand & Crew

SEOMoz SEO Training Videos

One of those awesome Zima t-shirts pictured above.

3rd place

3 month subscription to Online Reputation Management Monitoring Tool - Trackur.com subscription, so you can make sure you don't have your own Zima Meme disaster :)

image

Zima t-shirt

 

*Honorable mentions to receive random Zima treasures

 

**Contest will be judged by the following panel of Zima experts: Andy Beal, GoVisitHawaii, Jane Copland, Todd Friesen, Dave Snyder, Brian Carter.

If you need more details about the awesomeness of ScarySEO go check out this great post by Eric Lander (who is also speaking at ScarySEO) and if you don't win or don't enter don't forget you still have time to go register for ScarySEO.

September 16, 2008 08:55 by martin bowling
E-mail | Permalink | Comments (175) | Comment RSSRSS comment feed

The ultimate in the Zima Meme Zi.ma url shortening

Dr Pete had this great idea on twitter this morning.

Dr Pete Suggests Registering Zi.Ma

 

And I thought to myself wow that has to be one of the best ideas ever in life, it is a must. So I head to google to check out what's involved in registering a .ma TLDcc. So after a few seconds I find out that .ma's are for Morroco, and to register them you need to head to www.internic.ma. So I fire up my browser and head on over to check it zi.ma is available, and LIB it was, so I start the registration process & I am starting to get really excited. I am sure Andy Beal & GoVisitHawaii had never expected the Zima meme to reach such heights. I am all the way through the check out process when I am greeted with.

image

Ouch! 169 Euros, based on today's exchange rate that's 236.9718 U.S. dollars. Pretty hefty for two years of registration. So I tweet to Dr Pete (hey I am a poet and didn't even know it) that I will probably have to forego that for now, cause I don't have an extra 237 laying around for domain names right at the moment. Then Good ole David Mihm comes to the rescue.

David Mihm Says Let's Take A Collection!

And I thought damn, what brilliant people I am following! So I thought why not see if anyone would want to get in on the Zi.ma Zima Meme train. According to the email that Internic.ma sent me I have 10 days to complete my registration before they cancel it. So just 23 dollars a day, I guess 24 to be safe :) So with out further ado here is the paypal donate link.

UPDATE:

Mission Accomplished!!! Zi.ma has now been purchased. many thanks to @andybeal @chiropractic @davidmihm @johnsantangelo @joshuasci @loribourne & let us not forget @MikeTek

Everyone will be getting link love from zi.ma once it goes live!

September 11, 2008 04:49 by martin bowling
E-mail | Permalink | Comments (67) | Comment RSSRSS comment feed

SEOCracy's DataPresser Launches And Sells Out In 30 Minutes!

1813731782

As expected Rob's latest tool DataPresser (DataPresser is a one-of-a-kind utility that leverages the giant collection of databases available for sale at Seocracy.com to allow you to create massive amounts of wordpress blog content with zero programming experience required.) One note on the description I changed it from wordpress to blog; because I am using DataPresser with blogengine .net which I will be posting about at a later date! I first wanted to congratulate Rob on such an successful launch but I also want to remind anyone that didn't get in on the first round should go get on the DataPresser waiting list now Rob will be opening up a few more spots in the coming weeks and I believe it's a first come first serve kind of deal. So don't wait get your name on the waiting list. Second, I wanted to say oopsie! I meant to write this up on Friday and way to try and help Rob drum up some business for the DataPresser launch but given the huge success of the DataPresser 30 minute sell out - looks like he didn't even need my help. Which of course I didn't expect him to cause he always makes such great tools. Again congrats on the success DataPresser 30 minute sell out

January 27, 2008 11:27 by martin bowling
E-mail | Permalink | Comments (337) | Comment RSSRSS comment feed