Pages

Showing posts with label mobile. Show all posts
Showing posts with label mobile. Show all posts

Friday, January 11, 2013

Galaxy S(uperphone) III - How I fixed a flawed phone


I upgraded my aging T-Mobile G2 (HTC Desire Z) in November, and boy what a difference 2 years makes. The Samsung Galaxy S III (SGH-T999) is leaps and bounds better than my old phones. It isn’t just the pretty hardware and speedy internals, Google’s latest OS update, Ice Cream Sandwich (Android 4.0) is a HUGE improvement and eliminates almost every complaint someone could throw at Android. The Galaxy S3, as of this writing, is the best Android phone to get, and it is available everywhere, on any carrier. Despite my praises however there are some things that hold it back, and Samsung is to blame, not Google or Android.

I’ve rooted and installed CyanogenMod on each of my previous phones, including the original Android phone, the T-Mobile G1. Both of my previous phones came with stock or close to stock Android straight from Google. I flashed CyanogenMod (CM6 on my G1, CM7 on my G2) mostly due to lack of official updates from Google, both the G1/G2 were left behind due to hardware limitations. CyanogenMod breathed life into my aging devices and allowed me to prevent spending money on newer hardware for that much longer. 2 years is a long time to wait in the mobile world, especially when newer and much better devices were being released every few months in the early days of Android.

When I bought the phone I decided to leave it alone and give Samsung’s stock experience in tact. Their custom interface, which runs more than skin deep, is called TouchWiz. TouchWiz does a few things for Samsung, it makes their devices “look” like Samsung, this is good for them, since this skin is consistent starting with their Galaxy S line of phones. TouchWiz also adds some nifty features (notification toggles, gestures, camera) that make it compelling to people that are new to Android, they also add some features that Google doesn’t provide natively in Android. However they also break a few things and ruin the Android experience with their proprietary sharing implementation, their confusing USB Mass Storage options, and other little things that, admittedly, many people don’t notice or care about.

I lived with a completely stock, out of the box Samsung TouchWiz (Android 4.0.4) experience for about 3 days before getting frustrated with Samsung’s “helpful” additions to Android. After rooting and installing CyanogenMod (CM10, based off of Android 4.1), which also upgraded my phone to the (at the time) latest version of Android Jelly Bean, which wasn’t officially available for any phone other than Google’s own Galaxy Nexus and their Nexus 7 tablet. Once I had installed CM10, life was good, the phone performed beautifully, Samsung’s hideous UI was gone, and I was able to use Android as Google intended. I did lose a few things though, it has been 2 months and I haven’t missed them. When you install stock Android, you lose all/most of the custom stuff that Samsung has installed including some of their proprietary (albeit nifty) sharing features, WiFi direct doesn’t work natively, Smart Stay (their eye-tracking feature) goes away, and a few other bullet points on Samsung’s checklist for why their phone is better than every other phone on the market.



TouchWiz vs CM10

Some of the noticeable differences are the Notification Toggles, which are completely customizable, and don’t take up half the screen like Samsung’s implementation. The blocky, candy-colored theme of Samsung has been replaced with Google’s much more subtle and clean look.



TouchWiz vs CM10

After a few days, I discovered a hack (links on bottom of post) that would allow me to remove my biggest complaint against the Galaxy S3 and pretty much every Android phone that has been released since the Galaxy Nexus introduced on-screen buttons. Hardware buttons need to die. I’m all for a power button, volume rocker and a dedicated camera button, but we don’t need them on the face of the device. Once Google decided that the menu button needed to go away in Android 3.0 (Honeycomb), there is no need to have a physical key dedicated to its use! I absolutely hate the single hardware button flanked with 2 capacitive keys on Samsung’s latest phone (and the Galaxy Note series), this used to be exclusive to the International version, but this time around Samsung was able to strong-arm the carriers domestically and each GS3 in the US has the same layout. The hack allows me to display on-screen buttons, and disable the hardware keys completely, or in my case, turn the home button into the missing dedicated camera button. This is great, in that it allows me to prevent accidental taps of the back/menu buttons, and I don’t need to have their backlights draining my battery, since they no longer light up as the sensors are no longer in use.

After all of this, which only took a few hours, I now have the most awesome phone on the market. I took my, pretty awesome, Galaxy S3 and turned it into the device that Google could have introduced, granted the device is already 6-months into its life and we’ll probably see a refresh, presumably the Galaxy S4, announced in March. I’m completely content and happy with what I have, and can’t wait to update to CM10.1 (based on Android 4.2), once it reaches semi-stable, monthly snapshot status (within a few weeks), I’m not hardcore enough to flash nightly builds onto my phone.

DISCLAIMER: I take no responsibility for broken, bricked, damaged, dead, eviscerated, warranty voided devices. Proceed with caution, and remember to READ EVERYTHING before getting started. Happy modding!

Interested in Flashing CyanogenMod? Find your device here: http://wiki.cyanogenmod.org/index.php?title=Devices

Disable hardware/softkeys and enable on-screen keys:
Instructions: http://forum.xda-developers.com/showthread.php?t=1918166
Downloads: http://nrecom.net/downloads/viewcategory/9-navbar

General Info about Hacking/Modifying Android phones and tablets: http://forum.xda-developers.com/index.php

Friday, January 4, 2013

My Top Android Apps (2013 Edition)

I’ve done a few of these lists before, and it is interesting to see how my tastes and usages have changed depending on the device, and how some apps persist. Check out my previous lists: “My Top Apps for 2010” (T-Mobile G2 running Android 2.3.x [Gingerbread]) and “Android Apps - What I Use” (T-Mobile G1 running Android 1.6 [Donut]) or dive right into the (mostly) new apps below, in no particular order.



Note: I have been using a Samsung Galaxy SIII (on T-Mobile) running CyanogenMod 10, so your mileage may vary and some apps may not be compatible without rooting and/or installing a custom ROM. I'm also using a Nexus 7 tablet, I use most apps on both, but will indicate where differences occur.

Nova Launcher - Complete home screen replacement and loads of customization options. If you want a fast way to cover up some of the crap that Samsung/HTC/Motorola put in your device, this can help. It allows you to set the number of icons as well as number of home screens, options for folders, and custom icon themes. It also supports gestures, which let's me get rid of a few icons in favor of a swipe or double-tap on the home screen.

Nova Launcher, all customized to my liking.

Chrome for Android - Finally I have a device that supports Chrome for Android, it is almost everything I thought it would be. It is super fast, syncs up with my other Chrome instances (installed on basically every device I own), my bookmarks are there, automated sign on for google services. It is great, if you are running Android 4.0 or higher, you should ditch the “Browser” app and install Chrome now. My only complaint is no option for Full-Screen, location bar is always visible, though this feature is apparently in the works.

Simple - Super fast Foursquare check-ins. If you follow me at all you will know that I’m a self-proclaimed Foursquare junkie. I check-in everywhere and reap the benefits of awesome recommendations whenever I’m looking for something new, or something nearby. This app takes the slow out of checking in, once you have authenticated the app (a one-time process), launch the app, you see a map and a list of nearby venues (up to 20, I think), tap an item and boom, you’ve been checked in. There is a search feature as well, if the venue isn’t listed.

Google Now (Google Search) - This one is a little hard to explain a little hard to demonstrate, but is awesome once you use it. Google Now is an evolution of Google Search, you CAN do voice searches using the app, and it will return answer “cards” or a list of search results. The voice commands are also very useful for things while you are driving, such as “text Alisha on my way home from work”, that pops up a confirmation dialog, you hit send, done, or “call Mom” Android has been doing this for years. What is new however, is the ability of Google Now to surface information when you need it. What? How does it know? Basically Google has access to all of your Google stuff, so it can scan your email/calendar/etc to display useful info such as event reminders, package shipping confirmation, information about your stock portfolio. Google uses your phone’s GPS location to determine, and notify you, when you need to leave for an appointment, including delays such as traffic. This is my favorite feature personally. Google Now also learns what you do, for example, it regularly tells me how long it’ll take to get to/from work in the morning before I leave for work and in the afternoon before I leave from work. It knows that I usually leave work for/from at certain times and that I like to watch movies on the weekends. I have trained it (unintentionally, I might add) I search for movie showtimes on Friday/Saturdays and Google (Now) knows that. There are many other awesome things that it can do and that Google will continue to add to. This is THE reason to get the 4.1 Jelly Bean update (or new phone), which is currently the only way to get Google Now.

Rapido - Not to plug my own application, but I really do use it all the time, which is one of the reasons I built it. I WANT to use it. In a nutshell it allows me to post quickly to both Facebook and Twitter, fast.

SwiftKey - One of the biggest things that sets Android above the other phone OSs out there are the custom keyboards. Android has a plethora of virtual keyboards to choose from. The stock keyboards are pretty good, and get better with each version. As of late Swype has become the de facto keyboard for many an Android device. I decided to give SwiftKey a try after using the stock Jelly Bean keyboard, simply because it was an option, I didn’t hate the JB keyboard, but now I LOVE SwiftKey. I’ve been testing SwiftKey Flow Beta 4.x which adds in the ability to do swipe typing, yes, just like Swype, however it does it with the amazing predictive power of SwiftKey, which is its main selling point. I can hammer out messages and text in no time, and it is very good at deciphering and writing what I want. You can also give it access to your text messages, Facebook and Twitter, so that it can learn how you type and better help predict. It really is awesome and has changed they way I type for the better. In fact I wrote the last half of this post using SwiftKey.

TuneIn Radio - I've been late to the party here. A local station I've come to enjoy only comes in clearly when I'm downtown, as a result the broadcast is usually fuzzy, not so with this app, so long as you have Internet, it is crystal clear.

Feedly - Great for reading my RSS feeds, it syncs up with Google Reader so I don't have to maintain multiple lists.

Re:Me (phone only) - This is best described as a reminder service. When you receive a new SMS, it will notify you that you have not responded, even if you have already read the message. This is useful for me since, I often read a message and then get distracted or something, this reminds me to respond. You can of course dismiss reminders and ignore numbers if you don't care to be reminded.

aeGis (phone only) - This is the missing administrative tool for Android. The service operates on SMS triggers in order to locate, lock or erase your device. Updates have been coming very frequently, I've tested the app, but haven't needed to use it, luckily.

on{X} - I've written about this before, it is a great automation tool, that let's you take care of menial tasks without thought.

Other Awesome Apps: Dropbox, Gmail, Google Drive, YouTube, Evernote, Foursquare, Google Maps, Google Calendar, Facebook Messenger, Mint, Flipboard, Pocket, Snapseed and Chrome to Phone.

These are just the more common apps that I use, there are many many more installed on both my phone and tablet. I keep discovering new ones daily, and this doesn't even cover the games. What are some apps that you have found useful or interesting?

Sunday, October 7, 2012

Rapido 1.2 Released


Rapido 1.2 now works with Android 4+ devices! I also added the option to send/share to Rapido to make posting messages, and especially ones with links even faster. For twitter posts, links are now counted as 20 characters if you go over the 140 char limit, since they are shortened by Twitter once sent to their servers.

Future Plans
Link shortening powered by bit.ly with account login
App.net posting*
Multiple Twitter accounts*
Facebook Pages*
Posting photos*
(*denotes wishful thinking)

Developer Notes
Shortly after releasing the first version of Rapido, I received a message from a friend informing me that the app didn't work on his new phone which ran Android 4 Ice Cream Sandwich. My personal phone still runs Android 2.3 Gingerbread, so I was somewhat puzzled at this since my app wasn't doing anything crazy. Apparently I had failed to read up on the guidelines introduced in Android 3 Honeycomb, which prevents and stops execution of data gathering or other tasks that require the Internet from running in the foreground. What? This took me some time to properly correct, and diagnose since the error message wasn't exactly clear to me.

This seemed easy to solve, just move all of the token fetching and message sending stuff to the background. Done. Well it ended up being a laborious task that took quite a bit of trial and error on my part. Once I'd get one part working another thing would break in the process. I now pay much more attention to the little helps that eclipse drips when it turns some things red and lets me know that they are deprecated. They may continue to work on older versions of the software, but eventually they will break things. Some forums posts said "I just changed the target version to 2.3 and everything worked, again" I hope those people realized that they may have fixed an error message, but they didn't fix the problem.

These changes are obviously necessary due the nature of software. As things get more and more complex the need to revise things and update them arises and this often times means cutting away the legacy stuff that isn't useful or is taxing the whole system for a little convenience and familiarity. The first few times I tried writing an AsyncTask I misunderstood how they worked. I couldn't figure out how to get the background task to communicate with the foreground, this took some more reading and looking at other people's code, my favorite way to learn, to figure out that these Android developers knew what they were doing and this would in fact make my app faster. By the time I got the last few changes in this release I had the AsyncTasks down no problem.
I've been developing multiple apps for work and for fun (at home), it is always exciting to me when I learn something and then can immediately apply it to another project. This is one of the reasons I love programming so much, I am constantly learning and improving. If I get some requests I might write up a more technical post for those others out there that are struggling to make their apps future friendly with Android 4+.

Get it on Google Play

Wednesday, September 5, 2012

Cross-Device Communication

I’m not sure exactly what to call this awesome trend of having our devices (phones, mostly) share information, send information or interact with another device: Cross-Device Messaging? Cross-Device Communication? Cross-Device Syncing? A combination of the three? Either way, it is awesome. It has actually changed the way I do things for the better and allows me to access/watch/transfer things from one device to another. When this happens, many times it feels like magic, I click a button and boom I’ve transferred a map from my computer to my phone and can walk away from my desk and head off to wherever it is I need to go. As I was creating a list of things that fit under this umbrella of device-to-device communication, I broke them down into different categories. Push, Remote Control, Sync and Companion.

Chrome to Phone in action.

Push
Push notifications have become commonplace and fairly standard with most Mobile Apps, especially those that involve social networks and email, where people want/need information as soon as it is available. As a result of all this pushing, our devices have become central hubs for our digital life, whenever anything happens, we get a notification and can take action. More about how awesome push is in my previous post: Push Away. When push technology is applied between devices and not just web services and phones, a whole new world of possibilities open up.

Chrome to Phone
Google’s “Chrome to Phone” was made possible after an upgrade to Android called “Cloud to Device Messaging” which allowed almost instant communication between devices and computers. To get this working, you need an app installed on your phone (to receive, and take action on the “message”) and an extension in Chrome (to send the “message”). What this allows is nothing short of amazing. If I am on Google Maps, looking up a new dinner spot, I simply click the “Chrome to Phone” icon in Chrome, and my phone receives the “message”, a URL to Google Maps, and opens up the same spot using Google Maps on my phone. Magic. You can do the same thing with any URL, your phone receives the URL and opens the browser or the appropriate application that matches the URL. This setup is a must-have for users of Android and Chrome, I use this almost every day, it IS that useful. Watch the video below to see how awesome it is: 





Google Play Store
The Android Market Google Play Store has allowed users to install apps from the web directly to their Android Phones for quite some time now. It feels like magic whenever I do it, seriously: I click “Install”, select a device, then BOOM! my phone begins downloading and I have the app, without even touching my phone. Here’s a quick video demonstrating, ignore the cheesy promotional material and music:


Recently the Android Market Play Store has been updated to allow Updating and Uninstalling of Apps on a device. If I want to get rid of an app, I just pull up the Play Store on my computer and then click the trash can, and boom, uninstalled, simple as that, no hunting through the settings menu or Play Store on my phone for the uninstall button (which isn’t hard to find, but this is still cooler and faster). Same goes for apps, when they’ve been updated, you can click the “Update” link in place of the “Install” or “Installed” button. This is a great way to manage the apps on your device without ever having to touch it.

Google Play Update/Uninstall Apps

AirPlay
I’m going to have to refrain from using the word magic again, even though by most standards AirPlay is pretty magical. It simply works, it IS limited to a few (mostly Apple-only) devices, and I haven’t used all of its features, so I haven’t been able to fully appreciate how awesome and “magical” it is. In my own practice I was able to send music from my phone (iPhone 4) to a pair of remote speakers: my iTunes on my home Windows PC, and my Android phone using a hacky app called AirBubble, which pretends to be an AirPlay speaker. It was pretty cool to have music playing downstairs on the PC and upstairs on my phone and being able to control it from wherever I had service. The "killer-app", I’m told, is being able to send video to your Apple TV from your iPad/iPhone/MacBook and watching it on your TV; and having a Home Theater Receiver (Denon, Onkyo, etc) with AirPlay support, so you can listen to your music on the best sound system in the house. I have neither a sound system or an Apple TV, so for now I’ll take other people’s word for it. This particular example also creeps into the “Remote Control” aspect of multi-device-awesomeness, which I’ll get into in another post.

Xbox 360
Microsoft has really done a great job with the Xbox, knock them for some of their other endeavors, but the Xbox and the Live Marketplace are great customer service experiences (not counting Microsoft Points, which are annoying, still). I imagine most people probably buy things using the Xbox itself, due to their frequent use of the console or by responding to an ad on the Xbox Live Dashboard. When you buy things on the Xbox, it is quite simple: buy it, and then the download begins, unless you are playing a game that requires the internet, either way it is added to a queue to be downloaded when the connection frees up, or once you turn “off” the console for the night. Buying a game on xbox.com, you are presented with a “Download to Xbox 360” option which, upon completing the purchase, adds the item to your download queue. The use-case here, at least from my perspective: “Oh cool, the latest Map pack for Call of Duty just dropped. I’ll buy this here at work (on my phone since xbox.com is blocked) and it will begin downloading as soon as I get home and fire up my xbox.” While not as instantaneously gratifying as installing an app from the Play Store, it adds a layer of convenience to my shopping experience.

Xbox Live Download to Xbox


These are just a few examples in the “Push” category. While some might not change your life at all, they allow us to make devices and the internet work better for us.

What are some “Push to” services that you use?

Friday, August 31, 2012

You Work for Me Now

In the last few weeks I have discovered a few services that take boring and menial tasks and turn them into automatic automated awesomeness. The general rule is: “If it is too difficult to do or remember, most people won’t do it.” Basically, any amount of complexity or repetition added to a task makes it easy to put off and not ever do, especially things we need to do, like letting your wife know when you’ll be home from work. Here’s where IFTTT and on{X} come into play. They allow normal people (non-programmers) to easily setup simple tasks that can automate some of our life both online and off.

IFTTT

If This Then That (IFTTT), is the simplest form of logic: if this event happens, then execute that action. If I Tweet, then post to Facebook. IFTTT is the biggest mashup of web services and APIs that I have ever seen, seriously check out their list of “Channels” as of this writing there are 50 different services you can connect to.

At its heart IFTTT is about making your digital life simpler by automating tasks. Some common examples include cross-posting a status update, backing up photos, will it rain tomorrow?, and letting people know when you finally posted to your blog. Among options you can have a notification sent via email, sms or push message when a trigger occurs, or have things happen passively and not need to do or see anything. This is especially useful for backing up my photos, pretty much anything I post online can be transferred to my Dropbox account and saved on my home computer. I don’t have to worry about it.


I setup a special recipe to email my dad, who refuses to use Facebook and doesn't have an Android or iPhone, so he can see the awesome pictures of my son, whenever I post them.




Recently IFTTT has integrated with the physical world, through the use of Belkin’s recently released set of WeMo sensor/switches. These sensors can be setup as triggers or actions, you can have your lights automatically turn on at 6AM, or off at 10PM. You can receive a notification when a switch has been triggered, or turn on/off a light with a text message. The possibilities are pretty amazing when you think about being able to trigger certain actions based on the whether outside. One recipe: If it gets cold, turn on my bedroom heater, lets you have a nice warm bed when you need it.

on{X}

on{X} was developed by Microsoft as an experiment in automating your life through your Android phone. This has the same concept as above, on X, or when X happens, do this. The key difference here is that it is using your phone and its many sensors to receive triggers, and perform actions: on{leave my house} turn off my wifi. 



Recipes are written online and then pushed to your phone through the on{X} app which hooks into all of the hardware sensors, so you can detect your location and perform an action. For example, send my wife a text message when I leave work, this is great because I don’t have to remember to let her know that I left, it happens automatically and it comes from my phone.

They’ve recently updated their system to support NFC, proximity sensor, and a few other great enhancements. I’ve setup my phone to disable wifi when I leave home, launch Foursquare once I’ve been in a place for longer than 20 minutes, and to message my wife when I leave work. These have saved me time by having my phone do things automatically, things that I might forget or otherwise not have time to do. on{X} hasn’t been around as long as IFTTT so their list of pre-built recipes isn’t very long, but one of the great things, is that on{X} allows you to write your own recipes and share them with the community. I modified the “launch Foursquare” recipe to only trigger when I am outside the range of my home, since I don’t checkin at my house.

As with my previous post about push notifications, these put our phones to work for us, so we can keep up with our responsibilities, obligations, etc. and also make our lives a little more comfortable. Being able to setup these events and then receiving notice about actionable items helps to use my phone as a tool instead of just a huge distraction. Happy experimenting!

Friday, August 17, 2012

Push Away

Push notifications have almost completely replaced text messaging and email notifications for me. I used to love text message reminders, but now I get annoyed that I cannot take action on those items. For example, I get a message from twitter, the most I can do is click a link. When I get a push notification from twitter I can read it, then dismiss, or I can touch it, get the full twitter app experience and find out more about that particular tweet, user, hashtags or people mentioned. This gives me a lot of power that a simple text message cannot.

Bank of America recently released an update to their Android app that allows replacing the standard email and text message notifications with push notifications. This is great news since I can change the frequency and/or conditions of the notification without having to load up their site in a full desktop browser. They’ve even introduced their new BankAmeriDeals (or whatever it is called) so that I can receive push notifications with opportunities to save money. This last feature may get obnoxious after a few days, so we’ll see how long I keep it on.

Alarm.com is another example of a company using the full-features of a smartphone to benefit their customers. I have an alarm system that allows me to arm/disarm and change the thermostat in my house while I am away from it. They recently introduced a feature that allows me to set a notification at a certain time at night to remind me to arm my house, this is great as I  often forget to arm the house (which completely defeats the purpose of the system). Another great feature is geofencing, I have the app setup to notify me when I get outside a certain radius from my house, to remind me to arm the house. This even works with 2 phones, you can set the trigger to only notify you if BOTH phones are a certain distance from the house, it won’t bother either if one of us is still home. This is one of the coolest features to me, using my phone’s built-in hardware to help make my life better, easier, safer, etc.

Slice can be setup to scan your email and pick out purchases. This allows the app to notify you when your packages are being shipped, in transit or when they have been delivered. I have been surprised by this app many times when I didn’t hear a delivery truck or see anything in my mailbox. The first time this happened, I had forgotten about ordering anything, I got a push notification that there was a package on my doorstep, I looked at the message with a puzzled look, walked to my door and there WAS a package waiting for me. Awesome!

Another great advantage to push over text messaging is that I am not limited to a single device. I carry 2 phones around one for work (iPhone 4), one personal (T-Mobile G2). As a result I have a lot of application overlap, this is on purpose, since if one phone is dead, or out of service, I can pick up the other and continue my conversation (Facebook/Google+ Messaging). I normally have notifications for personal things (Facebook/Twitter/etc) turned off on my work phone, so that I don’t get a crazy amount of buzzing in my pocket when both phones go off simultaneously, though it is incredibly cool to get notifications in realtime on both devices.

I wish the Mint.com app would implement push notifications, I despise getting their email notifications now that I have tasted the goodness that is push. One disadvantage to push messages/notifications, I can’t go back and search through them, such as with email notifications, granted, I usually delete most notifications anyway, this is a minor issue.

I am glad that application developers and the services world as a whole has noticed the advantage to push notifications. I do wish there was a backup method such as text, for those rare times when I am in an area of poor coverage and limited or no internet. At the same time, it’s okay to be off the grid for a while.

Friday, February 11, 2011

Mobilificationizing

If you are reading this on a desktop computer, the screen shots are for you. If you have a smartphone or other smaller screened device let me know in the comments how it looks and what does/doesn't work.

I was feeling under the weather recently, and as a result I stayed home from work to sleep longer, take some medicine and get better. After waking up around 10am I realized that there were a few things I was putting off because I didn't have time during the day at work, and most of my free night-time is taken up by a side-project that I've been working on for the last few months (http://studybuddycampus.com) and normal life things.

I took the opportunity to make some changes to my wife's blog about our family. It now has 3 columns and she loves it! Go take a look: http://tommyandalisha.blogspot.com

I finally got around to fixing the obnoxious problem I have when I visit this very site on my phone, the fixed-width sidebar. I know that I haven't been the best at updating and that is partly due to me wanting to play Halo/Call of Duty/etc or just not feeling like I have anything interesting to say. I feel that, as a heavy mobile internet user, I should have a site that looks good on a phone.

My site was slapped together a few years ago using asp.net/c# with master pages. Their was no concern in my mind for a mobile site, luckily master pages are wonderful and all I needed to do was create a duplicate of my existing template and start chopping. First thing I did was move the sidebar on top so that it sits on top of the content it normally flanks. Then I gave each main wrapper a width of 100% so that it would stretch to whatever screen size it was given. I checked it out on my phone and realized that the phone thought the web page was much wider than the phone's screen. I added the following meta tag to prevent this and tell the page to fit the width of the device and not assume a desktop size.




After a few more tweaks to the general layout and adjusting the padding/margins I got the site to look somewhat presentable. I used some fancy jQuery magic to get the sidebar er...menu to show/hide when the arrow in the upper right-hand is touched.



Now all I needed to do was redirect users to the correct master page when visiting my site on a mobile phone. I found the following code online and added it to all pages in need of the mobile layout.



After that was in place I realized that images from my posts were a little bit too wide for the average phone screen. Instead of manually resizing all of my images, I once again turned to jQuery for some help. Using an example I found, I check each image's width, if it is wider than the current width of the body tag, it reduces its size to fit nicely within the confines of the given screen.



All in all the process was fairly painless to convert an existing site, most of the work was getting the formatting correct. In the future I'd like to build a site from the ground up with current mobile browsers in mind, but that's for another sick day...