<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>class BrianYamabe extends Journeyman implements SoftwareDeveloper { &#187; UI</title>
	<atom:link href="http://brianyamabe.com/category/ui/feed/" rel="self" type="application/rss+xml" />
	<link>http://brianyamabe.com</link>
	<description>public Blog documentDevelopment(Passion passion) {</description>
	<lastBuildDate>Fri, 30 Jul 2010 13:55:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>FBML vs iFrame</title>
		<link>http://brianyamabe.com/2009/12/11/fbml-vs-iframe/</link>
		<comments>http://brianyamabe.com/2009/12/11/fbml-vs-iframe/#comments</comments>
		<pubDate>Fri, 11 Dec 2009 20:02:45 +0000</pubDate>
		<dc:creator>byamabe</dc:creator>
				<category><![CDATA[Law And Gospel]]></category>
		<category><![CDATA[UI]]></category>

		<guid isPermaLink="false">http://brianyamabe.com/?p=36</guid>
		<description><![CDATA[I&#8217;ve been working on the HTML and CSS for LaG using Espresso. I first created the markup in a base html file and then I&#8217;ve adding the CSS classes and styles as needed. I&#8217;ve now come to the point where I&#8217;m going to start implementing the UI in the server. The first decision I need [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>I&#8217;ve been working on the HTML and CSS for LaG using <a href="http://macrabbit.com/espresso/">Espresso</a>. I first created the markup in a base html file and then I&#8217;ve adding the CSS classes and styles as needed. I&#8217;ve now come to the point where I&#8217;m going to start implementing the UI in the server. The first decision I need to make is whether to implement the UI using FBML or an iFrame for the FaceBook app.</p>
<p>In a previous application, I used FBML because it was easier to get something that looked like it was integrated with FaceBook. Also, if I recall correctly, it was easier to pass the FaceBook session between server trips. I know I didn&#8217;t explicitly have to add a URL parameter to any of the links I generated to pass it along. I didn&#8217;t look to see if there was a simple solution to this, but I assumed I would need to do something.</p>
<p>Then today I noticed this note in Mafia Wars, &#8220;&#8230; we deployed iframe technology to dramatically speed up the game&#8230;&#8221; Well that kinda sold me. If an iFrame application is faster, that&#8217;s what I&#8217;ll go with. It also allows me to use common JavaScript libraries like jQuery and I&#8217;m less concerned about looking like an integrated application, so that one less reason to go with FBML.</p>
<p>Finally, iFrame development will be a lot easier than FBML because with FBML you have to go through FaceBook servers so the FBML will render. Using an iFrame will allow me to develop LaG as if it is any other web application.</p>
<div class="posttagsblock"><a href="http://technorati.com/tag/Facebook" rel="tag">Facebook</a></div>
]]></content:encoded>
			<wfw:commentRss>http://brianyamabe.com/2009/12/11/fbml-vs-iframe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UI Design</title>
		<link>http://brianyamabe.com/2009/09/11/ui-design/</link>
		<comments>http://brianyamabe.com/2009/09/11/ui-design/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 01:09:12 +0000</pubDate>
		<dc:creator>byamabe</dc:creator>
				<category><![CDATA[Law And Gospel]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[UI]]></category>

		<guid isPermaLink="false">http://brianyamabe.com/?p=23</guid>
		<description><![CDATA[My UI Design Paradigm Let me say upfront that User Experience (UX) design is a major weak spot in my skill set. I&#8217;m pretty good at exposing the functionality to accomplish a given task, but optimizing workflow, influencing behavior, and polishing experience are areas I need to work on. Part of the problem is that [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><b>My UI Design Paradigm</b></p>
<p>Let me say upfront that User Experience (UX) design is a major weak spot in my skill set. I&#8217;m pretty good at exposing the functionality to accomplish a given task, but optimizing workflow, influencing behavior, and polishing experience are areas I need to work on. Part of the problem is that it has always been easier for me as a developer to code up a UI and evolve it. This tends to lead to less experimentation and low desire to change something that already works. In this paradigm, even if an interface it poorly designed but exposes all the necessary functionality there isn&#8217;t much value in re-coding it as the new design might be just as bad and then you&#8217;ve done a bunch of coding without adding features or improving the interface.</p>
<p><b>Been There, Done That</b></p>
<p>I&#8217;ve tried various ways to design the UI without coding, but I&#8217;ve always run into some short coming that leads me back to my code and evolve style. Here are some examples:</p>
<ul>
<li>HTML prototype &#8211; This doesn&#8217;t work for me because I spend more time working on the CSS than the design. I&#8217;m also typically working within the development environment I&#8217;m going to deploy in so I end up focusing on implementing the elements of the design and not the design.</li>
<li>Flash prototype &#8211; I thought this would be a great way to have interactive prototypes but then I ended up having to code mockup elements and it just turned into another case of focusing on the tools rather than the design.</li>
<li>Paper prototype &#8211; I can&#8217;t draw and I couldn&#8217;t stand the lack of interactivity.</li>
<li>DreamWeaver &#8211; It&#8217;s been a long time since I&#8217;ve used DreamWeaver, but I do remember the effort to prototype was substantial (managing templates for one) and I felt cheated that very little of what I built was transferrable to the final project.</li>
</ul>
<p><b>A New Way <span style="font-weight: normal;"><i>Let me state that I received a free license for Mockup for Desktops with the understanding that I would write a review and this is it.</i></span></b></p>
<p>Enter <a href="http://www.balsamiq.com/products/mockups/">Mockup for Desktops</a> (MfD) from <a href="http://www.balsamiq.com/">Balsamiq</a>. MfD is a tool built specifically for prototyping web applications. That focus allowed me to think about the UI design without any thoughts about the tool itself (HTML, Flash, and DreamWeaver) or the implementation of the application (HTML). There was no feeling of wasted effort (Flash and DreamWeaver). And the ability to interact with the design (Paper) was faster than with any of the other tools I had used previously.</p>
<p>As I mentioned, MfD is specifically designed to prototype web applications. It presents you with a canvas where you implement your mockup and a palette of standard HTML elements to use to build the design. I found myself putting together my first mockup in a few minutes and then tweaking and coming up with more pages in just a few hours. Here&#8217;s an example:<img src="http://brianyamabe.com/wp-content/uploads/2009/09/Apologetics.png" width="480" height="423" alt="Apologetics.png" /></p>
<p>Then you can use the &#8220;hyperlink&#8221; UI elements to link to additional mockups and view the mockup as a &#8220;presentation&#8221; to test out the interactivity.</p>
<p>This leads me to my one major complaint with MfD and that is the lack of a template mechanism. My web app, as most do, has a bunch of elements that are common across multiple pages; navigation menu for example. There isn&#8217;t a way to make changes to common elements across multiple mockups. You can achieve this visually by using a common background image, but then you lose the interactivity of the elements. My solution was to just use the main mockup to track changes to common areas and to ignore the discrepancies in subsequent pages. Not ideal, but I&#8217;m a developer and can deal with it.</p>
<p>Templates aside, Mockups for Desktops is a great tool for prototyping. It allows you to quickly put together and experiment with different interface elements. Tools that let you focus on the task you are trying to accomplish are awesome to work with.</p>
]]></content:encoded>
			<wfw:commentRss>http://brianyamabe.com/2009/09/11/ui-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Designing the Game</title>
		<link>http://brianyamabe.com/2009/09/08/designing-the-game/</link>
		<comments>http://brianyamabe.com/2009/09/08/designing-the-game/#comments</comments>
		<pubDate>Tue, 08 Sep 2009 22:06:50 +0000</pubDate>
		<dc:creator>byamabe</dc:creator>
				<category><![CDATA[Law And Gospel]]></category>
		<category><![CDATA[UI]]></category>

		<guid isPermaLink="false">http://brianyamabe.com/?p=18</guid>
		<description><![CDATA[In my continuing exploration of whether video games can convey the Gospel, I&#8217;ve decided to develop a Facebook game that incorporates some of my thinking along the lines of basic catechesis and apologetics. The basic idea is to have a Mafia Wars like game which has &#8220;catechetical tasks&#8221; instead of &#8220;jobs&#8221; and &#8220;apologetic encounters&#8221; instead [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>In my continuing exploration of whether video games can convey the Gospel, I&#8217;ve decided to develop a Facebook game that incorporates some of my thinking along the lines of basic catechesis and apologetics. The basic idea is to have a Mafia Wars like game which has &#8220;catechetical tasks&#8221; instead of &#8220;jobs&#8221; and &#8220;apologetic encounters&#8221; instead of fighting.</p>
<p>I started by playing Mafia Wars to get a better feel for the mechanics. The basic mechanic is that you do &#8220;jobs&#8221; to gain experience, money, and &#8220;loot.&#8221; You use all these to do more difficult and involved &#8220;jobs.&#8221; You can also participates in fights and wars with other players, but I haven&#8217;t found that they are central to the game. The social aspect of the game involves gifting and receiving &#8220;loot&#8221; and leveraging your friends/&#8221;mafia&#8221; for assistance in fights.</p>
<p>For lack of a more inspired title and because the name was available for a Facebook app, I decided to call my game &#8220;Law and Gospel&#8221; (LaG). I replaced Mafia Wars &#8220;jobs&#8221; with idea of vocation. Players will have tasks such as &#8220;Study the Gospel of Luke&#8221; as part of there vocation as a &#8220;New Testament Scholar&#8221; or &#8220;Research the Trinity&#8221; as a &#8220;Theologian.&#8221; When players do the tasks, they won&#8217;t just earn experience points they will also receive instruction such as a Bible verse, prayers, or quotes from famous theologians. These nuggets of information will be valuable as theological instruction, but also to answer in-game questions and quizzes to earn &#8220;gifts&#8221; the LaG equivalent to &#8220;loot.&#8221; The only planned social activity is being able to give &#8220;gifts&#8221; to other players. I&#8217;m thinking about a &#8220;congregation&#8221; which would be equivalent to a &#8220;mafia&#8221; but I&#8217;m not sure what activities they would share in.</p>
<p>I think the most intriguing part of the game has no equivalent in Mafia Wars and that is the idea of the player doing apologetics. Players will be able to interact with Non-Player Characters (NPCs) who will ask scripted questions and allows the player to respond with a word of Law, a word of Gospel, advice, or some other possibilities depending on the exact question. Based on the response to the NPC&#8217;s questions, further interactions with the player will be affected. For example, if the player respond to a question with Law, the NPC may become upset and require a &#8220;gift&#8221; for further action to proceed. Or a word of Gospel may lead the NPC to continue in his/her problematic ways. This will obviously be the most complicated part of the game to design and implement.</p>
<p>That&#8217;s what I&#8217;ve got so far, I&#8217;m now doing some mockups to get a feel for what the interaction will be like and to get a better idea of what the data model will need to support.</p>
]]></content:encoded>
			<wfw:commentRss>http://brianyamabe.com/2009/09/08/designing-the-game/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
