If you’re running Mac OS X and Boot Camp you may need to increase or decrease the size of your Microsoft Windows Boot Camp partition, depending on what great videos games are out for Windows at the time. ;)

To accomplish this task without losing all your Windows data you need 3 things.

  1. Mac OS X 10.5 (Leopard)
  2. An HFS+ Mac-formatted external drive
  3. Winclone

To decrease the size of your Windows partition use the following steps.

  1. Make a backup of your Boot Camp partition from Windows. (optional)
  2. Run Winclone.
  3. In the “Tools” drop down click “Shrink Windows (NTFS) file system.”
  4. Follow the onscreen instructions.
  5. Wait… it takes awhile.
  6. In Winclone create an “Image” to your Mac-formatted external hard drive.
  7. Use Boot Camp Assistant to return your drive to a 100% Mac-formatted partition.
  8. Use Boot Camp Assistant to make a new Boot Camp partition larger than the file size of your “shrunk” Windows partition image, but smaller than your original Boot Camp partition size.
  9. When it asks for Windows disk, quit Boot Camp Assistant.
  10. Run Winclone again and “Restore” your Windows image to the new partition.

To increase the size of your Windows partition use the following steps.

  1. Make a backup of your Boot Camp partition from Windows. (optional)
  2. Run Winclone.
  3. In Winclone create an “Image” to your Mac-formatted external hard drive.
  4. Use Boot Camp Assistant to return your drive to a 100% Mac-formatted partition.
  5. Use Boot Camp Assistant to make new Boot Camp partition larger than your original partition size.
  6. When it asks for Windows disk, quit Boot Camp Assistant.
  7. Run Winclone again and “Restore” your Windows image to the new partition.

Kind of a pain, but it’s doable. I’ve altered my Boot Camp partition numerous times using the methods above.

After reading The Business of Coworking at NotAnMBA I was inspired to write this post.

The current definition of coworking needs revision. Coworking is not a space, a community, a set of values, a business model, or any combination of those things. Those topics are about coworking, but they do not define coworking.

If we look at the definition of coworking on the Coworking Wiki, we read that “coworking is a cafe-like community/collaboration space for developers, writers and independents.” This defines coworking as a noun and as a type of community space. Wikipedia does a bit better at defining coworking, but still place a lot of emphases on “the space.”

From my experience with Jelly, coworking is not a space or a noun. It is a verb. Coworking is something you are doing. For example, I’d use it in a sentence like this: “Today I am coworking at Jelly.” Or, “I might go to Citizen Space to cowork.” From this usage I’d like to propose the following definition.

Coworking is two or more individuals working independently or collaboratively who are socially interacting while they work.

As a verb you can cowork with people, you can be coworking, or you may have coworked. You may even go to a designated coworking space.

Also note, that this definition does not mention anything about a space or even proximity. This leaves the possibility to cowork remotely. Second Life and Yahoo! Live come to mind.

When we talk about creating a “coworking space,” “coworking community,” or having a specific set of values, we’re really talking about how to create an environment or community that will encourage the activity of coworking. Arguments over values, profits, business models, and furniture can neither undermine nor enhance the definition of coworking. Build a pool and I may go swimming. Is it a free pool? Do I have to pay to swim? Is the water clean? Are kids allowed in the pool? Is there a swim team that meets at this pool? Is the pool’s owner honest? All of these thing may affect my decision to swim in the pool, but are ultimately a matter of taste.

In summary, coworking is NOT a cafe-like community/collaboration space. That’s like saying swimming is a pool. And arguments such as for-profit versus non-profit need not become heated. Coworking is coworking regardless of where it’s at, what values people share, or how big the community is. If you’re working and socializing, you’re coworking.

For large projects I usually databind my dropdown lists, but sometimes you just need a no-nonsense dropdown list of US States. For all you folks Googling to save time, here’s that code. Enjoy! :)

<asp:DropDownList ID="DropDownListState" runat="server">
	<asp:ListItem Value="AL">Alabama</asp:ListItem>
	<asp:ListItem Value="AK">Alaska</asp:ListItem>
	<asp:ListItem Value="AZ">Arizona</asp:ListItem>
	<asp:ListItem Value="AR">Arkansas</asp:ListItem>
	<asp:ListItem Value="CA">California</asp:ListItem>
	<asp:ListItem Value="CO">Colorado</asp:ListItem>
	<asp:ListItem Value="CT">Connecticut</asp:ListItem>
	<asp:ListItem Value="DC">District of Columbia</asp:ListItem>
	<asp:ListItem Value="DE">Delaware</asp:ListItem>
	<asp:ListItem Value="FL">Florida</asp:ListItem>
	<asp:ListItem Value="GA">Georgia</asp:ListItem>
	<asp:ListItem Value="HI">Hawaii</asp:ListItem>
	<asp:ListItem Value="ID">Idaho</asp:ListItem>
	<asp:ListItem Value="IL">Illinois</asp:ListItem>
	<asp:ListItem Value="IN">Indiana</asp:ListItem>
	<asp:ListItem Value="IA">Iowa</asp:ListItem>
	<asp:ListItem Value="KS">Kansas</asp:ListItem>
	<asp:ListItem Value="KY">Kentucky</asp:ListItem>
	<asp:ListItem Value="LA">Louisiana</asp:ListItem>
	<asp:ListItem Value="ME">Maine</asp:ListItem>
	<asp:ListItem Value="MD">Maryland</asp:ListItem>
	<asp:ListItem Value="MA">Massachusetts</asp:ListItem>
	<asp:ListItem Value="MI">Michigan</asp:ListItem>
	<asp:ListItem Value="MN">Minnesota</asp:ListItem>
	<asp:ListItem Value="MS">Mississippi</asp:ListItem>
	<asp:ListItem Value="MO">Missouri</asp:ListItem>
	<asp:ListItem Value="MT">Montana</asp:ListItem>
	<asp:ListItem Value="NE">Nebraska</asp:ListItem>
	<asp:ListItem Value="NV">Nevada</asp:ListItem>
	<asp:ListItem Value="NH">New Hampshire</asp:ListItem>
	<asp:ListItem Value="NJ">New Jersey</asp:ListItem>
	<asp:ListItem Value="NM">New Mexico</asp:ListItem>
	<asp:ListItem Value="NY">New York</asp:ListItem>
	<asp:ListItem Value="NC">North Carolina</asp:ListItem>
	<asp:ListItem Value="ND">North Dakota</asp:ListItem>
	<asp:ListItem Value="OH">Ohio</asp:ListItem>
	<asp:ListItem Value="OK">Oklahoma</asp:ListItem>
	<asp:ListItem Value="OR">Oregon</asp:ListItem>
	<asp:ListItem Value="PA">Pennsylvania</asp:ListItem>
	<asp:ListItem Value="RI">Rhode Island</asp:ListItem>
	<asp:ListItem Value="SC">South Carolina</asp:ListItem>
	<asp:ListItem Value="SD">South Dakota</asp:ListItem>
	<asp:ListItem Value="TN">Tennessee</asp:ListItem>
	<asp:ListItem Value="TX">Texas</asp:ListItem>
	<asp:ListItem Value="UT">Utah</asp:ListItem>
	<asp:ListItem Value="VT">Vermont</asp:ListItem>
	<asp:ListItem Value="VA">Virginia</asp:ListItem>
	<asp:ListItem Value="WA">Washington</asp:ListItem>
	<asp:ListItem Value="WV">West Virginia</asp:ListItem>
	<asp:ListItem Value="WI">Wisconsin</asp:ListItem>
	<asp:ListItem Value="WY">Wyoming</asp:ListItem>
</asp:DropDownList>

Austin Jelly Laptop StickersSo a couple of months ago Brian Massey had the great idea to print some Jelly stickers at Mikons.com. The idea being that you slap one of these stickers on the back of your laptop and new Jelly attendees will be able to locate a group of Jelly-ers in a public setting, such as a coffee shop like Cafe Caffeine! I’ve had one of Brian’s original stickers on my laptop for a couple months and it’s been a great ice breaker at Jelly.

We’ve been out of Brian’s original sticker print-run for awhile now, but today I got a new batch in the mail! Big thanks go out to Stephen Gutknecht for fronting the money to purchase the stickers.

If you’d like a sticker let me know at Jelly. They cost $2 a piece to print. Not so coincidently, we’ll be accepting donations of $2 per sticker. :)

Alternatively you can hop on Mikons.com and create all kinds of schwag using the Jelly icon and have it shipped straight to your door.

I had a little trouble with the checkout process at Mikons, but Mark was fantastic about helping me, and it turned out to be an over the top customer experience.

Not too long ago I posted about the Austin Tech Events Plugin for WordPress. Several folks asked me how to install it sans WordPress or in a older version of WordPress that doesn’t support widgets. Well I’ll tell ya’.

Step 1. Download the latest version of the Austin Tech Events widget and upload it to a subdirectory on your site.

Step 2. Go get yourself a Google GDATA API key here.

Step 3. Add the following code to the head section of your site. Note the sections in red. You need to add your Google API Key and be sure to change the paths below to reflect where you uploaded the Austin Tech Events widget folder.

<script type="text/javascript" src="http://www.google.com/jsapi?key=YOU GOOGLE API KEY GOES HERE"></script>
<script type="text/javascript">
	var calendarURL = 'http://www.google.com/calendar/feeds/i8m14fqigtkhpj744qml1vht920bq5j0%40import.calendar.google.com/public/full';
	var pageMaxResults = 15;
	var parseWiki = true;
	var showNav = true;
	var weeks = null;
	var widgetListSize = null;
</script>
<link type="text/css" rel="stylesheet" href="http://example.com/wp-content/plugins/austin-tech-events-calendar/css/thickbox.css" />
<link type="text/css" rel="stylesheet" href="http://example.com/wp-content/plugins/austin-tech-events-calendar/css/style.css" />
<script type="text/javascript">
	function addLoadEvent(func) {
		var oldonload = window.onload;
		if (typeof window.onload != 'function') {
			window.onload = func;
		} else {
			window.onload = function() {
			if (oldonload) {
				oldonload();
			}
				func();
			}
		}
	}
</script>
<script type="text/javascript" src="http://example.com/wp-content/plugins/austin-tech-events-calendar/js/date.js?ver=alpha-1"></script>
<script type="text/javascript" src="http://example.com/wp-content/plugins/austin-tech-events-calendar/js/jquery.js?ver=6124"></script>
<script type="text/javascript" src="http://example.com/wp-content/plugins/austin-tech-events-calendar/js/thickbox.js?ver=3.1"></script>
<script type="text/javascript" src="http://example.com/wp-content/plugins/austin-tech-events-calendar/js/wiky.js?ver=1.0"></script>
<script type="text/javascript" src="http://example.com/wp-content/plugins/austin-tech-events-calendar/js/functions.js?ver=0.85"></script>

Step 4. Add the following code to body of you page. Place it wherever you want the widget to show up.

<ul>
	<li id="austin-tech-events" class="widget widgetWPNGCalendar">
		<h2 class="widgettitle"><a href="http://door64.com/event">Austin Tech Events</a></h2>
			<div id="wpng-cal-widget-events" style="display:none;"></div>
			<div id="wpng-cal-load-widget" class="wpng-cal-loading">
				<img class="wpng-cal-image" alt="loading..." src="/wp-content/plugins/austin-tech-events-calendar/images/loading_large.gif"/>
			</div>
		<div>
			<script type="text/javascript" defer="defer">
				widgetListSize = 5;
				addLoadEvent(loadCalendarWidget);
			</script>
		</div>
	</li>
</ul>

That’s all there is to it. Check out the example I created of the Austin Tech Events Plugin installed on WordPress 1.5.2. Proof it can be done! ;) The biggest disadvantage to this approach is that you won’t be notified of code updates like you would on a proper WordPress 2.5 widget install.

Let me know if you have any questions!