<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/atom10full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">
	<title>My Dream App - Farzad Sadjadi</title>
	<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog" />
	<updated>2007-11-06T13:16:41Z</updated>
	<author>
		<name>My Dream App</name>
	</author>
	<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog</id>	
	<link rel="self" href="http://feeds.feedburner.com/mda-farzadsadjadi" type="application/atom+xml" /><feedburner:browserFriendly></feedburner:browserFriendly><entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>Triage</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/392/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/392/</id>
		<updated>2007-11-06T13:16:41Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;In the beginning, Portal was born from a simple idea: Keep my two Macs in harmony.  From the start, we all knew that Portal was a difficult idea, with a limited market (people with two or more Macs), and a nightmare of a development path.  J Allard called it the &amp;#8220;&lt;i&gt;hardest problem chosen by the finalists.&lt;/i&gt;&amp;#8221;  Steve Wozniak said &amp;#8220;&lt;i&gt;there are tremendous challenges here&amp;#8230; it seems that there isn&amp;#8217;t an easy way to get multiple machines just to sync the simple stuff&amp;#8230;&lt;/i&gt;&amp;#8221;  Jason Harris was the most direct: &amp;#8220;&lt;i&gt;Ease of Programming: low, Potential Earnings: moderate&amp;#8230; Don&amp;#8217;t vote for Portal&amp;#8230;&lt;/i&gt;&amp;#8221;  &lt;/p&gt;
&lt;p&gt;The need for a simple solution to this problem is well known, but how to get to such a solution is not.  To that end, and in the hopes that Portal lives to fight another day, I submit the following &lt;b&gt;Plan of Action&lt;/b&gt;.&lt;/p&gt;
&lt;p&gt;Facing the totality of the synchronization problem is overly intimidating, so I suggest breaking the task into parts, ordered by necessity to a final, as yet unwritten application.  This process can be best visualized as a three stage development: Foundation, Frameworks, and Finishing.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Foundation&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;As an application, Portal needs to first be installed on both systems, and then be granted permission to use the machine&amp;#8217;s network interfaces to sniff out other Portal installations.  Once they find each other, the two Portals need to connect in such a way as to facilitate file transfer between the systems, both for simple communication between the applications themselves and for the eventual transfer of the user&amp;#8217;s files.  Furthermore, each Portal app needs to be able to plug into the FSEvents system to be able to track file changes on their systems.  For each file Portal is designated to sync, the app also needs to be able to identify the corresponding file on the other Mac so that it can identify conflicts.  During a live connection between systems, file changes are automatically synced between the systems as they occur, so no dedicated &amp;#8220;Sync Now&amp;#8221; process is necessary.  When systems connect after an extended period apart, the sync should launch automatically in the background.&lt;/p&gt;
&lt;p&gt;Conflicts are the meat of the syncing problem, so lets pause for a moment on them.  The zero-order, brute force solution would be to simply overwrite older files with newer ones.  This is the option presented in the Mac OS X Finder whenever you try to add a file into a directory where a file with the same name already exists.  For database driven applications, a partial merger is often available, such as when syncing a Contact or Calendar event from a portable device to a main system (like the iPhone to a Mac).  These options should be available as appropriate within Portal&amp;#8217;s conflict resolution system (see below).  For safety purposes, older files should be backed up in either case (overwrite or merge), in case the network connection is lost in the middle of a transfer.  My idea would be for all files to be moved to a temporary directory on the destination Mac first, then copied over the existing files later on.  The file transfers should be checked for completeness and authenticity before the overwrite, and the older files should be moved to a safe location (either on the local drive, to a Time Machine backup, or elsewhere as designated by the user).&lt;/p&gt;
&lt;p&gt;Network communication, file selection, file transfer, and file backup form the Foundation of a good syncing application and are the necessary first steps for Portal&amp;#8217;s development.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Frameworks&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;The best way of handling conflicts is not at all clear cut.  For some files, Apple has made the process simple (Sync Services), but for others you are left wanting.  Thankfully, there are several independent initiatives working towards better solutions. Unison was the original favorite out of this category thanks to its robust feature set, but we shouldn&amp;#8217;t stop there.  To improve upon any one of these individual frameworks, Portal needs to take a &amp;#8220;Best of Breed&amp;#8221; approach to conflict resolution and use them all.  The brute force overwrite method will be in place for all files and types at the beginning. Later on, specific improvements for a given file type (such as .HTML, .PLIST, .ICS, or .KEY) will be put in place on a case by case basis.  If Unison is really good at DOCX mergers, but not so good at TXT, then Portal should limit Unison&amp;#8217;s use to DOCX and find something else for TXT.  Necessarily this complicates the mechanics of the conflict resolution and means that Portal will have a long development cycle.  From a user point of view, the complications should be entirely hidden.  From a developer point of view, one should realize that these improvements will be made incrementally and are not intended to all be ready for the 1.0 product.  Version 1.0 is not the finish line!&lt;/p&gt;
&lt;p&gt;Portal can move from a basic &amp;#8220;smart file pusher&amp;#8221; to a real, full featured syncing app by taking advantage of many of these existing frameworks (and improving them when possible).  &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Finishing&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;The last step is to hide all the difficult work done so far underneath a clean, simple user interface.  John Casasanta said he&amp;#8217;d &amp;#8220;&lt;i&gt;like it to be as simple as SuperDuper is at backing-up your computer.&lt;/i&gt;&amp;#8221;  J Allard said he&amp;#8217;d &amp;#8220;&lt;i&gt;like to have seen less intrusive ui and for it to be directly integrated with os x&lt;/i&gt;&amp;#8220;.  I myself have started going in the direction of a &amp;#8220;Time Machine&amp;#8221;-like app where the core preferences are stored in a Preference Pane inside the System Preferences, and yet the app&amp;#8217;s &amp;#8220;main&amp;#8221; user interface can be launched by a Dock icon.  The goal is to make the act of syncing transparent and the process of conflict resolution quick and simple. The keyword here is subtlety.  As much of the work as possible should be done in the background in such a way as to minimize visibility to the user (this means keeping processor usage down as well).  When the user must be contacted, it must be in such a way as to minimize distraction from the user&amp;#8217;s actual work. Popup boxes and dialogs should fade in and out quickly, information should be clearly presented, and the choice to be made should be explained properly.  If the user wants to trust Portal to make all the decisions itself and have no user input whatsoever, that should be an option as well.  If the file backups are robust, then this level of trust should be well warranted (possibly to the point of making it the default setting).  File restore should be handled as efficiently as possible, taking cues from Time Machine (or even using Time Machine itself) when possible.  The user shouldn&amp;#8217;t have to learn an entirely new set of UI metaphors just for Portal.  &lt;/p&gt;
&lt;p&gt;If we let Apple dictate the user experience themes, then Portal can sink even further into the background and be that much more transparent.  Extravagance and panache will be held in reserve for the occasional sync animations (user activated only, since the default background sync is invisible).&lt;/p&gt;
&lt;p&gt;&amp;#8212;-&lt;/p&gt;
&lt;p&gt;In the end, Portal cannot be the end-all, be-all solution to the syncing dilemma.  All Portal needs to do in order to be a success is be a solid 90% solution.  (For the sake of the UI, that last 10% would be hidden anyway, so new additions wouldn&amp;#8217;t even be visible to the typical user.)  The Foundation level alone should get Portal to a 50% solution, with brute force overwrites as the &lt;i&gt;ONLY&lt;/i&gt; &amp;#8220;file merge&amp;#8221; option.  More options can come online with version updates.  Integration into existing frameworks like Unison will also come later.  All the while, the UI will evolve to match the new features, adding or removing controls as necessary.
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>Leopard: Pause for Thought</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/391/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/391/</id>
		<updated>2007-10-29T19:29:27Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;When we started this whole My Dream App adventure, there was a stated goal that the ideas should take advantage of as many Leopard technologies as possible.  At the time, we knew a little about Leopard, but since I for one was not a developer, there was really very little for me to go on.  Jump forward a year, and Leopard is out (and installed on all of my systems), and all the NDA&amp;#8217;s are lifted at long last.  In that year very little was said about the applications under development for Leopard, thanks to Apple&amp;#8217;s own embargo.  Again, as I am not a developer, I was never privy to the specifics of those agreements, but nonetheless I was aware of their existence. &lt;/p&gt;
&lt;p&gt;All that is water under the bridge now.  Leopard is in the wild.  The ADC has a full suite of Leopard developer notes.  Ars Technica has even posted a magnificent breakdown of the core technologies at work.  Reading all this material has given me pause for thought about how Portal will work and integrate into this new ecosystem.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Finder: File and Screen Sharing&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;The Macs on a local area network see each other much more easily now, and are much more talkative.  It took very little time for me to set up file shares between my systems, so little in fact that I&amp;#8217;ve stopped using DropCopy entirely.  I have a standing link on each desktop to the drives in all my other machines, making file transfer insanely simple.  The hardest part is deciding which files to send over, and, of course, dealing with conflicts.  Screen sharing is another magnificent feature, and the &amp;#8220;Back to My Mac&amp;#8221; addition to .Mac is a powerful draw.  The $99 price tag Portal was set to rally against has just gotten justifiable.  I was even able to set up a screen sharing session with a Windows XP system in my house (the file sharing was one-click simple, the screen sharing was not. It took five-clicks).&lt;/p&gt;
&lt;p&gt;The result is that machines on a network are all at your fingertips and the need for a file to be on your local system is diminished.  Why sync your laptop with a bunch of files that just hog space on your hard drive, when you can just go &amp;#8220;Back to My Mac&amp;#8221; via the web from wherever you are?  The only flaw in the argument is the issue of off-network access (the same flaw in the iPhone/Web Apps debate).  The issue of &amp;#8220;keeping two books&amp;#8221; is also still present.  Why do I want to risk having my iCal calendars on the laptop disagree with the desktop?  With Leopard, .Mac becomes that much more powerful, much to the chagrin of Portal.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Time Machine, Spotlight, and FSEvents&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m not a developer, and I&amp;#8217;m not a computer science guy per se, so what I&amp;#8217;m about to talk about may not be 100% technically correct.  Just bear that in mind.  Leopard has two headliner applications that take advantage of a low-level, system-wide event tracker called FSEvents.  This API allows applications to track any and all file system activity, and it does so in such a way that the application that is doing the request doesn&amp;#8217;t have to run all the time.  Log files are created that keep track of all the events, so when an application comes online after being turned off for a while, it can take a quick look at the event history and know what&amp;#8217;s changed about the system.  Spotlight uses this to keep its search indexes up to date.  Time Machine uses it to keep its backup directory up to date.  Portal could use it to keep track of files that have gotten out of sync. The beauty of the FSEvents solution is that it is the user-level application doesn&amp;#8217;t have to handle the task of looking for changes and tracking events.  That sort of activity, which is potentially very time consuming, is handled by the OS itself.  &lt;/p&gt;
&lt;p&gt;The ideas I had a few days ago about Portal acting a lot like Time Machine were more prescient that I had thought.  I had intended that Portal simply act like Time Machine in the sense that it was a tightly integrated System Preference that also had a full-screen &amp;#8220;WOW-factor&amp;#8221; interface.  In truth, Portal would be well served if it could tap into the same system event tracker that Time Machine uses, and now it appears that such a thing is actually possible!  &lt;/p&gt;
&lt;p&gt;An added benefit of having a system-wide event tracker and backup system is that there is added pressure for high granularity in files.  Massive databases are no longer practical in the post-Time Machine era since they take up unnecessarily large amounts of space (each change to a 50MB file means a completely new 50MB backup, even if the change only affected 50KB of real data).  As granularity increases, so does the possibility of better and faster syncing.  Apple has also taken to the use of XML in many application and file settings.  Merging XML files is far from trivial, but it is a potentially simple file to read and to track changes in.  This makes it possible to go in even tighter than the &amp;#8220;per file&amp;#8221; level for the syncs.  This means less data needing to be sent between systems and more applications being candidates for syncing.  Its a win-win situation for Portal.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Sync Services&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Apple defines the &amp;#8220;Five Phases of Sync&amp;#8221; as:&lt;br /&gt;
Create a Sync Session (clients are alerted that a sync is coming),&lt;br /&gt;
Negotiate How You Will Sync (set modes for sync engine: fast, slow, etc),&lt;br /&gt;
Push Changes (either whole files or just the changes),&lt;br /&gt;
Resolve Changes (conflict resolution, either automatic or user-defined),&lt;br /&gt;
Pull Changes (all clients pull down the best file, after conflicts have been fixed).&lt;/p&gt;
&lt;p&gt;Leopard is better suited than ever to communicate with other machines (both Mac and Windows), so setting up a Sync Session shouldn&amp;#8217;t be difficult. Changes can be identified by calling on FSEvents, which will be running in the background on all Leopard machines (even without Time Machine turned on, Spotlight still uses the daemon).  Conflicts can be resolved using the Unison framework, as has already been stated.  Apple also includes a few handy services in their default Sync package for dealing with contacts, calendars, etc. that might be useful to integrate as well.  The act of pushing and pulling the files from system to system could be handled by the OS and its handling of local servers (for standard file sharing, with the same privileges, etc), or it could be handled directly by the Unison layer.  That sort of decision is entirely up to Martin, since I have no idea about how to do either one. (Martin, if I&amp;#8217;m totally off base here, I apologize!)&lt;/p&gt;
&lt;p&gt;The point I&amp;#8217;m trying to make here is that all the pieces of the puzzle for a great syncing application are in place.  Changes can be easily tracked.  Conflicts can be handled by the OS for some cases (contacts, calendars, etc.), and by Unison in others.  The Macs can all talk to each other very easily, so local networking won&amp;#8217;t be an issue at all.  I can even see it being possible to have Portal push itself out to all your machines so you only have to go through the installation process one time.&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>An Awkward Reentry</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/390/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/390/</id>
		<updated>2007-10-24T14:10:48Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;Let me make this clear: What I am about to talk about is pure speculation.  I don&amp;#8217;t have Leopard, I don&amp;#8217;t know what the most recent version of Portal looks like, and I don&amp;#8217;t know when Martin is going to make any future announcements.  Martin is working on his ideas for the UI, and I&amp;#8217;m working on mine.  There are more pressing issues with the development right now than the interface.  You&amp;#8217;ll hear about that end of things later on.&lt;/p&gt;
&lt;p&gt;Okay then.  Today I want to share a few ideas I&amp;#8217;ve had about Portal&amp;#8217;s user interface.  The more I look at Time Machine, the more I like how Apple has managed to make it both accessible and hidden.  There is an icon in the Dock and there is a keystroke for quick activation, but for the most part Time Machine just runs quietly in the background.  When you do need to make changes to the settings, you interact with Time Machine through the System Preferences, just like for the Dock, Expose, Spaces, etc.&lt;/p&gt;
&lt;p&gt;This got me thinking.  If Portal is going to work the way it needs to, then it has to be seamlessly integrated into the OS.  Logically, that would put its interface into the System Preferences with the rest of OS X&amp;#8217;s settings.  Also, the user needs to be able to get at Portal quickly and directly, so a Dock icon would be handy.  The icon could serve a double purpose as a Drop Icon for adding files to be synced.&lt;/p&gt;
&lt;p&gt;I took a few minutes this morning and put together an idea for what I&amp;#8217;m talking about: &lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.leucippus.org/Portal/MDA/Portal_PrefPane.png"&gt;&lt;img src="http://www.leucippus.org/Portal/MDA/portal_prefpane_small.png" border="" alt=""/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.leucippus.org/Portal/MDA/Portal_Pref_edit.png"&gt;&lt;img src="http://www.leucippus.org/Portal/MDA/portal_pref_edit_small.png" border="" alt=""/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I intentionally removed the &amp;#8220;Sync&amp;#8221; button, since I don&amp;#8217;t want the user to have to do that sort of thing manually.  Syncs will take place periodically in the background whenever possible (again, just like Time Machine).  If the user feels the compulsion to force a manual sync, that option can be put in the pop-up over the Dock icon or in the Settings tab .  Keeping track of file histories (Time Machine) between two systems may be impossible, but that would be a cool feature to have too.  &lt;/p&gt;
&lt;p&gt;Leopard is upon us and miraculously I had a brief lull in my workload.  If there is anyone left on this site, I&amp;#8217;d appreciate your comments!
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>Shock and Awe...</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/349/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/349/</id>
		<updated>2006-10-26T07:11:17Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;This is how things looked from my point of view:&lt;/p&gt;
&lt;p&gt;Tuesday, towards the end, I had realized the possibility that Portal was the Purple bar in the voting results page.  That meant, at the time, that I was in second.  That alone made me have doubts.  Then Kevin (Hijack) figured out he was Red and went into overdrive promoting the idea.  I didn&amp;#8217;t feel too bad, after all I considered Hijack one of my favorites.&lt;/p&gt;
&lt;p&gt;Then, towards the last two hours, the Red bar began to make serious progress.  Purple had slipped to third and every time I refreshed my browser, Red was that much closer.  Then it happened.  Purple fell to fourth.  Red then passed Blue and claimed second place all to itself.  I was now 40+ votes back.&lt;/p&gt;
&lt;p&gt;After frantic calls to everyone I knew, plus cross-continental iChat sessions with college buddies, I thought I had secured about 10-15 more votes.  Not enough, and I knew it.  Going into the final minutes I had all my friends scared I had blown a fuse or something.  I was a mess, so I went for a walk.&lt;/p&gt;
&lt;p&gt;When I got back, everyone was in a holding pattern in the &amp;#8220;Final Round Voting Closed&amp;#8221; forum.  425 posts in under three hours or so.  It was chaos.  So I went and watched LOST.  Chaos was still there when I got back.&lt;/p&gt;
&lt;p&gt;I can&amp;#8217;t remember exactly when I saw that the results where in, but I do know I was suspicious right away because it looked like Portal had made it through.  &amp;#8220;That&amp;#8217;s impossible&amp;#8221;, I thought.  I was wrong.  Voting irregularities had propelled me from the brink of elimination into second place.  I still can&amp;#8217;t believe it.  Portal placed higher than Cookbook AND contributed to Hijack being pushed out of the top three.&lt;/p&gt;
&lt;p&gt;To say I&amp;#8217;m surprised would be an understatement.  I&amp;#8217;m in shock.  I&amp;#8217;m not a designer.  I&amp;#8217;m certainly not a programmer.  I don&amp;#8217;t even own a copy of Photoshop.  Cookbook looks almost perfect.  The GUI is clean and refined.  Hijack had full-screen animated mockups for crying out loud!  &lt;/p&gt;
&lt;p&gt;&amp;#8212;&amp;#8211;&lt;/p&gt;
&lt;p&gt;This brings me to my next point.  I love Portal, it was always been my favorite app in this contest.  I know I&amp;#8217;m biased since its my idea, but what else do you honestly expect me to say?  Still, there have been three other ideas I really liked:  Ground Control, Hijack, and Cookbook.  Cookbook is safe, so I don&amp;#8217;t have to worry about it anymore.  GC and Hijack are in a different category:  They still need developers to sign on!  GC had a website going for it for a while and now Russell has added in a &lt;a href="http://groundcontrol.heistuman.com/blog/"&gt;Blog to keep people on top of any progress&lt;/a&gt;.  Hijack always had a following and &lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1435"&gt;now they seem to be self-organizing &lt;/a&gt;, even as Kevin gets some well deserved sleep.  If either of these two ideas has any need for my modest skills, I&amp;#8217;d gladly offer them, and I encourage the same from any diehard Portal supporters out there.  Portal is in the loving, caring hands of MDA now, so attention can be turned to these other great app ideas.&lt;/p&gt;
&lt;p&gt;That said, I&amp;#8217;ll be taking some time off from this contest.  Probably about a week.  I&amp;#8217;m on empty right now, and really, really need a vacation so I&amp;#8217;m off to join Kevin on his &lt;a href="http://mydreamapp.com/forums/viewtopic.php?pid=15833#p15833"&gt;secluded island of solitude in the  Pacific&lt;/a&gt;.  I&amp;#8217;ll drop you a postcard.  Thanks again!
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>DIGG DIGG DIGG</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/345/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/345/</id>
		<updated>2006-10-25T19:44:51Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;I&amp;#8217;m out of time, so I might as well push the DIGG&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.digg.com/software/The_Ultimate_Sync_Coming_Soon_to_a_Mac_Near_You"&gt;Please Digg Portal, Vote for Portal, and lets get Portal back in the top three.&lt;/a&gt;
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>Using Portal, Part 3</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/331/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/331/</id>
		<updated>2006-10-22T01:16:15Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;&lt;img src="http://www.leucippus.org/Portal/MDA/Portal_banner_MacBook.png" border=""/&gt;&lt;/p&gt;
&lt;p&gt;Recently I have posted two parts in a series of essays on &lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1309"&gt;Using Portal&lt;/a&gt; (&lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1309"&gt;Part 1&lt;/a&gt;, &lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1328"&gt;Part 2&lt;/a&gt;).  What follows here is the third and final part in this series.  It also happens to be the longest of the three.&lt;/p&gt;
&lt;p&gt;I have tried to define the &lt;u&gt;problems&lt;/u&gt; that &lt;b&gt;Portal&lt;/b&gt; will solve, and the &lt;u&gt;audience&lt;/u&gt; that will find &lt;b&gt;Portal&lt;/b&gt; most useful.  Now I will do my best to define how &lt;b&gt;Portal&lt;/b&gt; will go about solving these problems, and how it will all look from the user&amp;#8217;s point of view.&lt;/p&gt;
&lt;p&gt;&amp;#8212;&amp;#8211;&lt;/p&gt;
&lt;p&gt;When Portal launches, you are presented with a single window containing a large &amp;#8220;drop box&amp;#8221; and a single button to initiate a Sync.  &lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.leucippus.org/Portal/MDA/Portal5_add1.png" border=""/&gt;&lt;/p&gt;
&lt;p&gt;Dropping any file or application into this box will bring up a list of available Macs that you can sync that item with.  This list includes any Macs &lt;b&gt;Portal&lt;/b&gt; has previously synced with, even if they are not connected or available at that very moment.  &lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.leucippus.org/Portal/MDA/Portal5_add2.png" border=""/&gt;&lt;/p&gt;
&lt;p&gt;If this is your first time running &lt;b&gt;Portal&lt;/b&gt;, a special Welcome window will be displayed, giving the user simple checkbox options to add some of the more popular items to the sync queue.  This includes your Mailboxes, Address Book, Calendars, Bookmarks, iTunes library, iPhoto library, etc.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.leucippus.org/Portal/MDA/Portal5_add3.png" border=""/&gt;&lt;/p&gt;
&lt;p&gt;Adding files, folders, and applications in this way will build up a detailed queue for each Mac you want to sync with.  Once a file is added, any changes you make to the file, no matter which Mac you make them on, will be synced with all the other Macs.  Your files will always be up to date!  Changes are transferred from one system to the next over local Bonjour connections, so whenever you bring one Mac close to another, all the changed files stream from one system to the other without any trouble.  When these syncs occur, the user is treated to an amazing display of animation, watching as the files from one system are sucked into a twisting, warping wormhole right on their desktop!&lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.leucippus.org/Portal/MDA/Portal5_sync.png" border=""/&gt;&lt;/p&gt;
&lt;p&gt;These are all the steps that are necessary to get your Macs to sync perfectly: Pick your files and choose where to sync them.  All the default settings for when to sync, and how to deal with file conflicts will keep things running as smoothly, and as efficiently as possible.  User hassle will be kept to a minimum!&lt;/p&gt;
&lt;p&gt;&amp;#8212;&amp;#8211;&lt;/p&gt;
&lt;p&gt;Nevertheless, there will come a time when the user is inclined to make some changes to the system.  Perhaps a new Mac needs to be added to the available &amp;#8220;Sync To&amp;#8221; list, or maybe you no longer want your personal calendars to sync with your work computer.  All these options and many more are easily within reach; all one needs to do is flip the window (just like if it where a widget).  First click the &amp;#8220;toggle toolbar&amp;#8221; button in the top right of the window to reveal the status bar at the bottom of the window (this bar contains an Options drop-down menu, and a search bar).  The Options menu can be used to flip the window over to the &amp;#8220;Macs&amp;#8221;, &amp;#8220;Files&amp;#8221;, &amp;#8220;Apps&amp;#8221;, or &amp;#8220;Graphics&amp;#8221; Options views. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Macs View&lt;/b&gt;&lt;br /&gt;
 &lt;img src="http://www.leucippus.org/Portal/MDA/Portal5_macs.png" border=""/&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Files View&lt;/b&gt;&lt;br /&gt;
 &lt;img src="http://www.leucippus.org/Portal/MDA/Portal5_files.png" border=""/&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Apps View&lt;/b&gt;&lt;br /&gt;
 &lt;img src="http://www.leucippus.org/Portal/MDA/Portal5_apps.png" border=""/&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Graphics View&lt;/b&gt;&lt;br /&gt;
 &lt;img src="http://www.leucippus.org/Portal/MDA/Portal5_graphics.png" border=""/&gt;&lt;/p&gt;
&lt;p&gt;Within each of these views, the user can see the basic information about the selected Mac or Item, and make simple adjustments to the setups for each.  You can add a Mac to the sync list for a file, disable bookmark syncing for Firefox, or simply change the style of the graphics for when you sync with your work computer.  &lt;/p&gt;
&lt;p&gt;If the options shown by default are not enough to get &lt;b&gt;Portal&lt;/b&gt; to do what you want it to, click the &amp;#8220;toggle toolbar&amp;#8221; button again.  When in any of the Options views, clicking this button will expand the window and reveal the PRO mode.  This makes all the sync rules and adjustments you could want available at your fingertips.  &lt;/p&gt;
&lt;p&gt; &lt;img src="http://www.leucippus.org/Portal/MDA/Portal5_filespro.png" border=""/&gt;&lt;/p&gt;
&lt;p&gt;&amp;#8212;&amp;#8211;&lt;/p&gt;
&lt;p&gt;Adding files through the above interface is a two step process, which is about as simple as it can get.  To streamline this process even further, &lt;b&gt;Portal&lt;/b&gt; also places a &amp;#8220;Sync with Portal&amp;#8221; command in the contextual drop-down menu in the Finder (when you right-click on a file).  Simply find the file you want to sync, right-click on it, find the Mac or Macs you want to sync with, and select them.  It can all be done in a matter of seconds, even if &lt;b&gt;Portal&lt;/b&gt; doesn&amp;#8217;t have an open window.&lt;/p&gt;
&lt;p&gt; &lt;img src="http://www.leucippus.org/Portal/MDA/Portal_menu2.jpg" border=""/&gt;&lt;/p&gt;
&lt;p&gt;There is also a &lt;b&gt;Portal&lt;/b&gt; widget for those who would rather use the Dashboard to add files or applications to the sync queue.&lt;/p&gt;
&lt;p&gt; &lt;img src="http://www.leucippus.org/Portal/MDA/Portal2_widget4_wide.png" border=""/&gt;&lt;/p&gt;
&lt;p&gt;&amp;#8212;&amp;#8211;&lt;/p&gt;
&lt;p&gt;What is described above would constitute a fully featured 1.0 release of &lt;b&gt;Portal&lt;/b&gt;.  Additional features such as Sync to Server, Sync over Internet, and Sync to Disc/Thumbdrive will all come in later releases.  For a full list of features, please refer to my post &lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1192"&gt;Portal: The Feature Roadmap&lt;/a&gt;, and the ensuing forum discussion.  If you have any technical concerns, browse through these two following forums to see if your question was raised before: &lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1145"&gt;here&lt;/a&gt; and &lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1225"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you have any comments or advice or just some words of encouragement, please post them in the &lt;a href="http://mydreamapp.com/forums/viewforum.php?id=15"&gt;Forums&lt;/a&gt;.  I&amp;#8217;m thankful for any helpful criticism you might have.&lt;br /&gt;
And remember: &lt;b&gt;Vote&lt;/b&gt; for &lt;b&gt;Portal&lt;/b&gt;!
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>Using Portal, Part 2</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/325/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/325/</id>
		<updated>2006-10-18T13:46:37Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;In my last post, &lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1309"&gt;Using Portal, Part 1&lt;/a&gt;, I posed five questions that any potential syncing application might answer.  I did so to help define the problems I see in the current market, and how I see &lt;b&gt;Portal&lt;/b&gt; fitting in with the current competition.  I&amp;#8217;ve done that, but I haven&amp;#8217;t defined the market itself, I haven&amp;#8217;t said explicitly who the target audience is for this application.&lt;/p&gt;
&lt;p&gt;&amp;#8212;&amp;#8211;&lt;/p&gt;
&lt;p&gt;Certainly, as a file/app sync application, &lt;b&gt;Portal&lt;/b&gt; will appeal to individuals who own two Macs (individuals like me).  I have a PowerBook I take to school every day, plus an iMac at home.  &lt;b&gt;Portal&lt;/b&gt; would help me keep the two in harmony,  making it easier to move back and forth between the two while working on a single project.&lt;/p&gt;
&lt;p&gt;While this was the audience that motivated me to submit this idea, in hindsight, there are many other possible uses for &lt;b&gt;Portal&lt;/b&gt;:&lt;/p&gt;
&lt;p&gt;- &lt;b&gt;College students in groups&lt;/b&gt;, working on collaborative projects.&lt;br /&gt;
- &lt;b&gt;Small offices&lt;/b&gt; that use lots of Macs (small presses, newspapers, design firms, research labs, etc.)&lt;br /&gt;
- &lt;b&gt;Classrooms&lt;/b&gt; with Macs at each station (some grade schools, high schools, and colleges use Macs in their &amp;#8220;computing&amp;#8221; classes, and Portal would make managing them a lot easier).&lt;br /&gt;
- &lt;b&gt;Families&lt;/b&gt; with more than one Mac in the house (so if Mom and Dad have an iMac and the kids have iBooks/MacBooks, everyone can stay in sync).&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve noticed that a lot of smaller web design firms or creative design groups have lots of Macs in their offices.  For a small company like that, keeping files in sync between the designers might be a necessary hassle, one that &lt;b&gt;Portal&lt;/b&gt; could overcome.  I&amp;#8217;m not proposing that &lt;b&gt;Portal&lt;/b&gt; can merge Photoshop files, but it could make sure everyone starts the day with the latest copies of all the important stuff:  calendars, address books, To Do lists, company memos, customer files, etc.&lt;/p&gt;
&lt;p&gt;Even if all the user&amp;#8217;s needs are met by built in syncing features in iCal, Mail, and the rest of Apple&amp;#8217;s products, &lt;b&gt;Portal&lt;/b&gt; could put a friendly face on all the hassle of setting everything up just right.  Just take a look at how &lt;a href="http://www.discoapp.com/blog/"&gt;Disco&lt;/a&gt; is taking the simple idea of disc burning (something OS X already does, to some degree) and making it really full featured (and even &lt;b&gt;fun&lt;/b&gt; to use, from the looks of it).  I want &lt;b&gt;Portal&lt;/b&gt; to look and feel as good as &lt;b&gt;Disco&lt;/b&gt;, I want it to be that sort of application:  something that makes your life easier, that has a wonderful (and small) interface, something that can take a dull (or even slightly painful) task and make it fun!
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>Using Portal, Part 1</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/318/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/318/</id>
		<updated>2006-10-15T23:33:15Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;First off, I&amp;#8217;d like to say that I&amp;#8217;m incredibly pleased and surprised that &lt;b&gt;Portal&lt;/b&gt; has made it this far.  Back in August when I submitted my idea, I just did it because I thought it would be cool to get to go back and forth with other people about the concept, and possibly to get professional advice from Wil Shipley, Leo Laporte, and Steve Wozniak!  Only later did it sink in that these dignitaries would only be commenting on the Top 24 ideas out of the thousands submitted.  Only later still did I realize that they were saving the big names like Laporte and Wozniak for the Top 9 and Top 6!  Chances didn&amp;#8217;t look good, way back when, but it was going to be a fun ride nonetheless.  &lt;/p&gt;
&lt;p&gt;And now here I sit, with &lt;b&gt;Portal&lt;/b&gt; in the Top 6, already having been judged by Shipley, Laporte, Watanabe, Mueller, Sarner, Ott (three times), Harris (three times as well) plus many others, and &amp;#8220;Woz&amp;#8221; is still to come.  It somehow doesn&amp;#8217;t seem entirely real.  &lt;/p&gt;
&lt;p&gt;Anyway, here&amp;#8217;s the first in a series of blogs I&amp;#8217;ve written to help explain my idea one last time before the Final round of voting.  Its a bit long, so bear with me.&lt;/p&gt;
&lt;p&gt;&amp;#8212;&amp;#8212;&amp;#8211;&lt;/p&gt;
&lt;p&gt;One of the best ways to define an application is by looking at the problems it solves.  To that end, I have come up with a list of 5 questions and their current answers, all to try to expand upon the world of Mac syncing, the world within which Portal must make its home.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;(Q1) If you have two Macs sitting next to each other, how do you make sure that they always have the same versions of your documents?&lt;/b&gt;&lt;br /&gt;
(A) You could use iChat Bonjour to drag and drop the files from one Mac to another, and repeat every time the file is changed on either system.  OR you could put the larger files onto USB flash drives (or a CD or DVD) and physically carry the files from one system to another.  OR you could use &lt;a href="http://10base-t.com/#dropcopy"&gt;DropCopy&lt;/a&gt; to drag and drop files from one system to another, every time there&amp;#8217;s a change.  OR you could use &lt;a href="http://www.decimus.net/"&gt;Synk&lt;/a&gt; (which does backups as well, $45 for Pro, $35 for Standard). OR you could try &lt;a href="http://www.econtechnologies.com/site/Pages/ChronoSync/chrono_overview.html"&gt;ChronoSync&lt;/a&gt; (also does backups, $30).&lt;/p&gt;
&lt;p&gt;&lt;b&gt;(Q2) If you have two Macs, how do you keep their bookmarks, address books, and mailboxes in sync?&lt;/b&gt;&lt;br /&gt;
(A) You could pay $99 a year to get Apple&amp;#8217;s .Mac service and use the Sync feature.  OR you could try &lt;a href="http://www.markspace.com/pressrelease/060629.html"&gt;MySync&lt;/a&gt; (now part of the Missing Sync family).&lt;/p&gt;
&lt;p&gt;&lt;b&gt;(Q3) How would you keep the iTunes, iPhoto, and iWeb libraries in sync between systems of Macs?&lt;/b&gt;&lt;br /&gt;
(A) iTunes has built in library sharing over Bonjour, but it won&amp;#8217;t transfer files between systems (unless you sync one Mac to your iPod, then sync the iPod to the other Mac).  iPhoto can &amp;#8220;photocast&amp;#8221; albums over the web, but requires .Mac to do so (and then takes up part of your 1GB storage).  iWeb can use the .Mac storage, or you could export to a folder and then use an FTP app like Transmit to upload it to your server.  But there&amp;#8217;s no easy way to share the original libraries so they can be edited and then re-synced.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;(Q4) If you have two Macs, that aren&amp;#8217;t near each other (so there is no local Bonjour connection), how do you keep them in sync in either of the above ways (by file or application specific)?&lt;/b&gt;&lt;br /&gt;
(A) Apple&amp;#8217;s .Mac Sync is web-enabled, so all your personal information is stored on a remote server (you get 1GB for $99/year), therefore remote sync is possible.  OR you could email each of the Macs the files you need to update, and do so every time there is a change.  OR you could set up an &lt;a href="http://www.ifolder.com/index.php/FAQ"&gt;iFolder Server&lt;/a&gt; to remotely store your files, then use their client software to sync local changes to the network list.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;(Q5) How would you sync your files or personal settings between a Windows/Linux box and your Mac(s)?&lt;/b&gt;&lt;br /&gt;
(A) Apple&amp;#8217;s .Mac Sync makes your personal information available on their website, so you can access it via any web browser, on any platform.  ChronoSync claims sync to PC as well, but limited to files and folders just like for Mac-to-Mac.  IFolder Client software is available for Linux as well as Windows (but again, limited to file sharing).&lt;/p&gt;
&lt;p&gt;Notice that although each of these questions seems similar on the surface, they each currently have entirely different solutions.  The ideal solution would be to have one application that can answer all of these questions, and &lt;b&gt;Portal&lt;/b&gt; is that application.  Even so, it will not be able to do all things for all people right from Version 1.0.  For instance, as far as I can tell none of the above solutions has a way to merge arbitrary file types, so expecting this as a feature in &lt;b&gt;Portal&lt;/b&gt; is being a bit over zealous. &lt;/p&gt;
&lt;p&gt;The most basic features of &lt;b&gt;Portal&lt;/b&gt; are there to address Question #1: to keep your files and folders in sync between any number of Macs (assuming they appear on the local Bonjour networks every now and then).  Simply bring the two Macs close together and they sync right up (I&amp;#8217;m thinking here of a laptop user syncing with a Mac at home or in the office).  &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Portal&lt;/b&gt; can also sync applications, so for Question #2.  First, all of the associated files fora a given application are found using an AppZapper style search.  Syncing these selected files should keep the application itself in sync on the different systems.  The beauty of this approach is that &lt;b&gt;Portal&lt;/b&gt; should be able to sync &lt;u&gt;any application&lt;/u&gt; you would want, all without the various developers having to rewrite their code.  This is particularly useful for Question #3, since these are all Apple products.  We as consumers should realize that If even Apple doesn&amp;#8217;t use its own Sync Services technologies in all of its products, how are we to expect anybody else to do so in their products?  Successful syncing must be achieved in the absence of any recoding by developers, and I consider the AppZapper-style approach one method worth considering.  Remember that from the user&amp;#8217;s perspective, all they have to do is drag and drop an application into the &lt;b&gt;Portal&lt;/b&gt; window and select a destination Mac.  For the more generic settings, like bookmarks, calendars, and keychains, there will be a set of checkboxes in the &lt;b&gt;Portal&lt;/b&gt; preference window for easy access.  Just check off everything you want to sync, and it is all taken care of in the background.&lt;/p&gt;
&lt;p&gt;Beyond these three core features, I don&amp;#8217;t want to promise much else for an initial 1.0 release.  By using Wide Area Bonjour, &lt;b&gt;Portal&lt;/b&gt; could address (Q4) using 90% of the same technologies it would already have.  As for (Q5), that&amp;#8217;s a different problem.  Application syncing would have to go for the most part.  Certain standardized file types, such as vCards, and iCal calendars might be easy to exchange with a non-Mac system.  The real trick is getting the two systems to talk with each other in the first place, which would mean a PC or Linux version of &lt;b&gt;Portal&lt;/b&gt;.  That&amp;#8217;s beyond the score of this contest as it stands, so it will have to wait.  If &lt;b&gt;Portal&lt;/b&gt; is one of the three ideas to be developed, and there is a strong enough user base, then maybe it will happen!
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>Portal is Not a Widget!</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/315/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/315/</id>
		<updated>2006-10-13T14:44:34Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;I guess I should have seen this coming.  During the last round of Portal GUI design (see &lt;a href=""&gt;Take 5&lt;/a&gt;), I decided officially to move the design of the application to the smaller, more widget-like option.  This means that all the small, blue windows used in the mockups on the &lt;a href="http://www.leucippus.org/Portal/"&gt;Portal Website&lt;/a&gt; and in the more recent &lt;a href="http://mydreamapp.com/forums/viewforum.php?id=15"&gt;Portal Forums&lt;/a&gt; are images of the actual main window design.  &lt;/p&gt;
&lt;p&gt;I realize now that making the window &lt;i&gt;look like&lt;/i&gt; a widget implied to many people that Portal had &lt;i&gt;become&lt;/i&gt; a widget.  That is not the case:  &lt;b&gt;Portal is not a widget&lt;/b&gt;.  I simply want Portal to stay as small and uncomplicated as possible: easy to use, easy to push out of your way.&lt;/p&gt;
&lt;p&gt;I believe the main areas of confusion were the lack of glass close/min/max buttons in the top left corner and the use of the little italics &amp;#8220;i&amp;#8221; in the top right corner.  I made it this way on purpose, since I think swapping the two out makes the window look funny.  But then again, I&amp;#8217;m not a GUI designer (and I honestly don&amp;#8217;t have a clue what I&amp;#8217;m doing).  I like the flip capability of widgets, and think it makes a lot of sense to put the preferences on the back of a window, and I&amp;#8217;d like to see that be a part of a real application window some day.  I guess I figured since Core Animation was pitched as a way to add cool graphics to an interface, it would be able to handle window flipping like this.&lt;/p&gt;
&lt;p&gt;Anyway, I just wanted to clear that up ASAP.  To help you visualize Portal as a real app, here&amp;#8217;s a mockup done by MDA Forum member &lt;a href="http://mydreamapp.com/forums/viewtopic.php?pid=12515#p12515"&gt;Anima&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.leucippus.org/Portal/MDA/Portal3_notwidget_anima.png" border="" alt="Portal is Not a Widget" /&gt;&lt;/p&gt;
&lt;p&gt;And here&amp;#8217;s one of my own, an UNO-fied version:&lt;/p&gt;
&lt;p&gt;&lt;img src="http://www.leucippus.org/Portal/MDA/Portal3_UNO.png" border="" alt="Portal is Not a Widget" /&gt;
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>A Reply for the Celebrity and Tech Media Judges</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/309/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/309/</id>
		<updated>2006-10-13T02:26:16Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;This was the round of judging I was most looking forward too, with Leo Laporte, Kevin Rose, and what seemed like most of Macworld magazine on hand to offer critiques and pass judgement.  And so, with a certain amount of joy/fear, I make my humble reply to their sage advice:&lt;/p&gt;
&lt;p&gt;&lt;u&gt;&lt;b&gt;Leo Laporte (This Week in Tech) - Tech Media:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&lt;i&gt;We&amp;#8217;ve already got this with dot-mac, and even so, too few application developers support it. You think you can do a better job of corralling software vendors than Apple? You&amp;#8217;ve spent way too much time on the eye candy, and way too little on the fundamental challenge of getting this to work at all.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Response:&lt;/b&gt;  Portal will be able to sync applications even without any support from the developers, and I&amp;#8217;ve been saying this from the start.  I want AppZapper style search for the applications, so Portal can see all of the associated files.  Exchanging those files here and there (and merging if at all possible) should do the trick for just about any setting that needs to be synced.  If Portal detects an error, it pops up a warning, and if things go horribly wrong, Time Machine will be watching as well, so you can always step back in time to get a working copy.  Until a developer says this sort of application syncing is unfeasible, I&amp;#8217;m going to continue to run with it.  And as far as &amp;#8220;too few developers support it&amp;#8221;, I totally agree, that&amp;#8217;s why there needs to be a way to do syncing without every app having to be rewritten!  Let Portal do a half-way decent job of it for v1.0, then get better with time.  Even Apple itself doesn&amp;#8217;t user its Sync Services in each and every app it produces, so why are we waiting for all the other companies to get around to adding syncing?  We need to make a solution for ourselves, and for me, Portal is that solution.  For more reading, see &lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1192"&gt;here&lt;/a&gt;, &lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1147"&gt;here&lt;/a&gt;, and &lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1225"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;u&gt;&lt;b&gt;Martin Ott (SubEthaEdit) - Development Team:&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;
&lt;i&gt;A question which still seems to be unanswered is what&amp;#8217;s happening if there are conflicting versions of the files you want to synchronize? That&amp;#8217;s an important issue for every synching app. Do you have a master setup where files from the master automatically overwrite the files on the other machines? Do you want to ask the user in case of a conflict and on what type of information is she supposed to solve the conflict? Portal needs a convincing answer to this question.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Response:&lt;/b&gt;  Now this question I&amp;#8217;ve seen a number of times before, and I&amp;#8217;ve tried to be consistent with my response:  Portal 1.0 will be stupid when it comes to conflict resolution, so the newer file always overwrites the older one.  This is the default setting, ignoring any &lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1145"&gt;file merge capabilities&lt;/a&gt; or any custom preferences for &lt;a href="http://mydreamapp.com/forums/viewtopic.php?pid=12088#p12088"&gt;auto-renaming or auto-sorting&lt;/a&gt;.  As Portal evolves as an application, real file merge can be added on a case by case basis, probably starting with XML merge, TXT or RTF merge, etc.  Simple stuff compared to databases and Photoshop files.  I&amp;#8217;m no developer, but I believe Apple&amp;#8217;s Sync Services brings something to the table here that Portal can exploit, namely that any app that already supports .Mac Sync will work perfectly in Portal (or at least as perfectly as it would with .Mac).  This is a boost for Portal out of the door, because some apps will work great while the rest use the generic sync (AppMover style, the sloppy combination of AppZapper and Portal&amp;#8217;s file syncing).  Hopefully this will motivate some people, maybe just a few to begin with, to start adding in those Sync Services hooks.  As Portal matures, its own generic app sync should get better as well, especially if it can train to work well with specific big names apps like Firefox.  For more information, see the links at the end of the response to Leo.&lt;/p&gt;
&lt;p&gt;The other judges were a bit more kind, so I&amp;#8217;ll let them stand unanswered for a while, and post my response to them tomorrow.  Now I&amp;#8217;ve got to go to bed (its 1:25 am here)!
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>A Portal Website</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/287/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/287/</id>
		<updated>2006-10-09T17:40:30Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;&lt;b&gt;Portal&lt;/b&gt;has a website!  It covers all the basic information on the idea and is a great place for people to get to up to speed on its evolution so far.  Take a few minutes to read through the site and you should be well prepared to dive into the Forum discussions and offer your advice and critiques!&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.leucippus.org/Portal/" title="Portal - Syncing Made Easy"&gt;&lt;img src="http://www.leucippus.org/Portal/MDA/Portal_website.png" alt="Portal - Syncing Made Easy" border="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;While most of the information there is redundant if you have been keeping up with this blog and the Forum discussions, there are a few new mockups and some general clarifications of old issues.&lt;/p&gt;
&lt;p&gt;I would love any feedback on the site you might have.  Remember, this idea grows and evolves because of the contributions of the people who offer their advice and suggestions in the Forums.  If you&amp;#8217;ve got anything to say about &lt;b&gt;Portal&lt;/b&gt;, just head over there and say it!
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>Portal - A Feature Map</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/280/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/280/</id>
		<updated>2006-10-06T19:57:52Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;In the short few weeks since &lt;b&gt;Portal&lt;/b&gt; was born, it has constantly been evolving.  The most visible side of this evolution has been the steady stream of mockups that have been produced by myself and others.  As the look and feel of the app has gotten sharper, the feature list has gotten a lot fuzzier.&lt;/p&gt;
&lt;p&gt;To bring the actually tasks &lt;b&gt;Portal&lt;/b&gt; is intended to do back to the forefront, I&amp;#8217;ve put together a feature roadmap for versions 1.0 through 2.0+.  Enjoy!&lt;/p&gt;
&lt;p&gt;&lt;u&gt;&lt;b&gt;1.0&lt;/b&gt; - These are features that needs to be ready to go at the launch of the app.&lt;/u&gt;&lt;/p&gt;
&lt;p&gt;- &lt;b&gt;Drag-and-drop file and folder sync between two Macs (with Bonjour)&lt;/b&gt;&lt;br /&gt;
- Drag-and-drop syncing of &amp;#8217;select&amp;#8217; applications (start with solid support for the big names, like Mail, Firefox, iCal, etc)&lt;br /&gt;
- Sync with multiple Macs with custom settings for each&lt;br /&gt;
- Option of creating Groups of Macs, with standard settings (Ad Hoc groups, etc.)&lt;br /&gt;
- Animate the syncing process with flashy Core Animation graphics (scalable from small progress bars to full screen wormholes!)&lt;br /&gt;
- Support for Mac OS X 10.4.x and 10.5.x (Portal should degrade gracefully on older systems)&lt;br /&gt;
- Full file/application backup and restore supported by &lt;b&gt;Time Machine&lt;/b&gt; (on Macs with Leopard)&lt;br /&gt;
- Full &lt;b&gt;Growl&lt;/b&gt; support for notifications (when syncs start or end, when file conflicts occur, when new Macs become available, etc.)&lt;br /&gt;
- &lt;b&gt;Quicksilver&lt;/b&gt; plugins so you can add files to the sync queue quickly and easily&lt;br /&gt;
- &lt;b&gt;Dashboard&lt;/b&gt; widget and &lt;b&gt;Ground Control&lt;/b&gt; module ready to go&lt;/p&gt;
&lt;p&gt;&lt;u&gt;&lt;b&gt;1.5&lt;/b&gt; - These are features that are important to me, but might not be necessary for the initial release.&lt;/u&gt;&lt;/p&gt;
&lt;p&gt;- Available plugin API for the graphics with support for Core Animation, Flash, and Quartz (so that third parties can develop cool new animation styles)&lt;br /&gt;
- Support for any arbitrary application syncing (warnings flash for those apps not tested or known to break)&lt;br /&gt;
- &amp;#8220;Pro&amp;#8221; features for managing file syncing to more than 10 Macs on a regular basis (simple workgroup and classroom management)&lt;br /&gt;
- &lt;b&gt;Sync to Server/FTP&lt;/b&gt; (plugin for &lt;b&gt;Transmit&lt;/b&gt;, &lt;b&gt;Fetch&lt;/b&gt;, etc so Portal can sync files to servers through your favorite FTP client)&lt;br /&gt;
- &lt;b&gt;Sync to USB&lt;/b&gt; (so you can keep the latest versions of your files ready to go on your USB flash drive)&lt;/p&gt;
&lt;p&gt;&lt;u&gt;&lt;b&gt;2.0+&lt;/b&gt; - These are the other ideas that came up that might not be that easy to implement, but we should try for anyway.&lt;/u&gt;&lt;/p&gt;
&lt;p&gt;- Limited file merge capability (as well as finer granularity in application syncing)&lt;br /&gt;
- Support for &lt;b&gt;Wide Area Bonjour&lt;/b&gt; (sync over internet) for remote access to files&lt;br /&gt;
- &lt;b&gt;Sync to PC/Linux&lt;/b&gt; (limited support for sharing files to non-Mac systems)&lt;br /&gt;
- &lt;b&gt;Sync to Disc&lt;/b&gt; (for routine backup of important files to disc, as a redundant system to compliment Time Machine&amp;#8217;s external hard drive backups)&lt;/p&gt;
&lt;p&gt;This list is my own personal plan, but I have no idea what features are really feasible for the developers in any given timeframe.  Feel free to rearrange the list or simply let me know what you want added in!&lt;/p&gt;
&lt;p&gt;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&amp;#8212;&lt;br /&gt;
Note - I&amp;#8217;m really happy that &lt;b&gt;Portal&lt;/b&gt; has made it this far into the competition, and I know that I owe everything to the people who have been kind enough to offer their advice and criticisms.  Thank you very much!  I hope that I can continue to evolve this idea to the point where it might be useful to more than just me.  Judging by how amazingly well &lt;b&gt;Portal&lt;/b&gt; did this last round, apparently I&amp;#8217;m not alone in wanting a better way to keep my Macs in sync!
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>Portal GUI, Take 5 - Widgets!</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/264/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/264/</id>
		<updated>2006-10-04T23:59:18Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;&lt;img src="http://www.leucippus.org/Portal2_widget2.png"/&gt;&lt;/p&gt;
&lt;p&gt;The default format is the top left, with just a box for file drop.  When you drop in an application, perhaps Firefox, the widget expands and you get the top right layout.  Here you check off which Macs your Firefox should be synced to. Click &amp;#8220;Add to Queue&amp;#8221;, and that application or file will be synced from then on.&lt;/p&gt;
&lt;p&gt;Flip the default widget to get access to all the setup options.  If you pick either Files or Applications, you&amp;#8217;ll be given a choice of Macs to look into (just like the main window, all items are sorted by the Macs they are synced to). &lt;/p&gt;
&lt;p&gt;The Application setup view (shown in the bottom right) has the same Stripe as in the full window, where the user can slide through all applicaions in the sync queue.  Selecting Firefox (again), you&amp;#8217;ll be able to customize the syncing of your bookmarks, themes, etc.  For full control, click &amp;#8220;More&amp;#8221; and the main window will open up.&lt;/p&gt;
&lt;p&gt;With the widget option, dealing with &lt;b&gt;Portal&lt;/b&gt; can be as transparent or as visible as you want it to be.  Use the right-click menu for complete invisibility; use the widget for streamlined control; or use the main window for the ultimate control.
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>A Reply for the Designer Judges</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/261/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/261/</id>
		<updated>2006-10-04T13:00:29Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;I&amp;#8217;m really, really, really pleased with how &lt;b&gt;Portal&lt;/b&gt; is doing so far in the Round 3 voting!  And to top it all off, I get some more expert opinions on the idea:&lt;/p&gt;
&lt;p&gt;&lt;u&gt;&lt;b&gt;Jason Harris (ShapeShifter/Chicken of the VNC)&lt;/b&gt; - Development Team:&lt;/u&gt;&lt;br /&gt;
&lt;i&gt;Farzad has been doing some absolutely excellent work on mockups for Portal. I don&amp;#8217;t know why I&amp;#8217;m not more excited about the idea. Between its usefulness and its fun factor (see wormholes), it should have me all hot and bothered. No clue why I&amp;#8217;m not - it&amp;#8217;s a good idea, Farzad&amp;#8217;s conception seems flawless, and it&amp;#8217;s needed.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;u&gt;&lt;b&gt;Response:&lt;/b&gt;&lt;/u&gt;  I guess that is the risk I&amp;#8217;ve taken going for an idea like Mac syncing.  I&amp;#8217;m pretty excited about this myself; the animations just open up so many possibilities!  The Wormhole idea is just the tip of the iceberg.  I hope that the development team will release a plugin API so that other would-be developers can create custom animation styles in Flash or Core Animation.  This is all part of the strategy to get people to use &lt;b&gt;Portal&lt;/b&gt; more, so that it can grow and develop into an even better sync utility. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://mydreamapp.com/forums/viewtopic.php?id=1144"&gt;Click here to go to the Forums and read the rest of this blog.&lt;/a&gt;
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
	<entry>
		<author>
			<name>Farzad Sadjadi</name>
		</author>
		<title>Portal GUI, Take 4</title>
		<link rel="alternate" type="text/html" href="http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/248/" />
		<id>http://mydreamapp.com/contestants/view/farzadsadjadi/blog/post/248/</id>
		<updated>2006-10-02T20:01:05Z</updated>
		<summary type="html" mode="escaped">&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</summary>
		<content type="html" mode="escaped">&lt;div&gt;&lt;p&gt;&lt;img src="http://www.leucippus.org/Portal2_GUI_draft2.png" alt="Portal GUI Draft 2" border="" /&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve been pretty happy with the GUI designs I&amp;#8217;ve managed to put together, especially considering its my first time doing anything like it.  Its been a great learning experience.  Still, as happy as I am with the work, the point of posting it online is to get feedback.  In particular, Guest Judge John Gruber (Daring Fireball) got me moving in a new direction.  I&amp;#8217;ve tried to make the it clearer how one file might be associated with more than one Mac.  From that basic goal came the &amp;#8216;Stripe&amp;#8217;, which the new designs revolve around:&lt;/p&gt;
&lt;p&gt;The result is that I&amp;#8217;ve put together a second set of three mockups for &lt;b&gt;Portal&lt;/b&gt;&amp;#8217;s main window.  &lt;i&gt;Treat this like an eye exam, Which do you like better, 1 or 2?&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Mac View&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://www.leucippus.org/Portal2_main2.png"&gt;&lt;img src="http://www.leucippus.org/Portal2_main2_small.png" alt="Portal - Mac View" border="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Taking a closer look at the Mac View, I&amp;#8217;ve enlarged the Sync button and removed the navigation buttons from the bottom.  Getting from one view to another is now done by hitting the UP and DOWN arrow buttons.  In the Mac View, LEFT and RIGHT cycle through all the available Macs.  All the important information is shown below the Mac icons: Specs, number of Items, and Animations.  The desktops for each of the Mac icons are screen grabs from the actual systems&amp;#8217; desktop wallpaper.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Item View&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://www.leucippus.org/Portal2_items2.png"&gt;&lt;img src="http://www.leucippus.org/Portal2_items2_small.png" alt="Portal - Item View" border="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;From the Mac View, hitting the DOWN arrow takes you smoothly to the Item View.  This brings up a Stripe of icons representing all the files in the sync queue for the selected Mac.  Hitting LEFT or RIGHT in this view scrolls the file icons.  Whenever a file is selected, you are given a preview and the basic information for that file.  To re-sort the File Stripe according to size, type, or edit date (the default is by name), just right-click anywhere in the stripe and select what you want from the menu.&lt;/p&gt;
&lt;p&gt;All the items are divided into two groups: Files and Applications, and these are viewed separately (there are two buttons beneath the main Mac&amp;#8217;s icon, used to tab between the two views).  If a file is set to sync to more than one Mac, the other Mac&amp;#8217;s icon is highlighted as well.  To add a file to a new Mac, simply drag the file icon from the Stripe to the Mac&amp;#8217;s icon (CTRL-click for multiple selections is also available).  To view the file lists for another Mac, click on the Mac&amp;#8217;s icon or hit the UP arrow to go back to the Mac View.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Animation View&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://www.leucippus.org/Portal2_animations2.png"&gt;&lt;img src="http://www.leucippus.org/Portal2_animations2_small.png" alt="Portal - Animation View" border="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hitting UP once from the Mac View or twice from the Item View will get you to the Animation View.  I&amp;#8217;ve replaced the Front Row turntable with a Stripe, exactly like the one found in the Item View.  Hit LEFT or RIGHT to scan through all the styles, including a blank one (for no animation).  Screenshots from the animations are used instead of icons.  For the smaller styles, like the progress bar, a special set of icons will be needed instead.  Selecting a style displays a live preview and all the available options/information.  (Each style will have its own unique customization options.)&lt;/p&gt;
&lt;p&gt;Navigating the entire interface should be capable with just the four arrow buttons, and all the transitions should be &amp;#8217;smooth as butter&amp;#8217;.  Once you&amp;#8217;ve found the file or the animation you want, you&amp;#8217;ll have full access to all the settings you need, in a very logical layout.  All of the basic features will be accessible from within the Finder&amp;#8217;s right-click menu (right-click on a file or application and select &amp;#8220;Sync with Portal&amp;#8221;) as well as from &lt;b&gt;Portal&lt;/b&gt;&amp;#8217;s Dock icon.&lt;/p&gt;
&lt;p&gt;I hope this second design option helps to flesh out the ideas I&amp;#8217;ve got for how &lt;b&gt;Portal&lt;/b&gt; should behave.  I&amp;#8217;d love to hear your comments about this new look as well as any other ideas for sync animation.  Up next I&amp;#8217;ll try to polish the GUI some more, put a bit of polish on the feature list, and get the roadmap for future versions sketched out.  There are a lot of features being tossed around, and I just want to make it clear where my priorities are.  If I leave anything out, or fail to emphasize something you really want, just let me hear it in the forums!
&lt;/p&gt;
&lt;/div&gt;</content>
	</entry>
</feed>
