<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Majesty Thoughtware</title>
	<atom:link href="http://majestysoftware.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://majestysoftware.wordpress.com</link>
	<description>The official blog of Majesty Software</description>
	<lastBuildDate>Wed, 27 Apr 2011 09:51:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='majestysoftware.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Majesty Thoughtware</title>
		<link>http://majestysoftware.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://majestysoftware.wordpress.com/osd.xml" title="Majesty Thoughtware" />
	<atom:link rel='hub' href='http://majestysoftware.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Contactile update in the pipeline</title>
		<link>http://majestysoftware.wordpress.com/2011/04/27/contactile-update-in-the-pipeline/</link>
		<comments>http://majestysoftware.wordpress.com/2011/04/27/contactile-update-in-the-pipeline/#comments</comments>
		<pubDate>Wed, 27 Apr 2011 09:50:52 +0000</pubDate>
		<dc:creator>Tony Ingraldi</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://majestysoftware.wordpress.com/?p=80</guid>
		<description><![CDATA[Thank you to everyone who provided feedback on the initial release of Contactile. I am thrilled that you took time out to share your thoughts on how to make it better. I&#8217;ve completed the first update and it has been submitted to Apple for review. I am pleased with the outcome and I think that [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=80&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Thank you to everyone who provided feedback on the initial release of Contactile. I am thrilled that you took time out to share your thoughts on how to make it better. I&#8217;ve completed the first update and it has been submitted to Apple for review. I am pleased with the outcome and I think that you will be too. Stay tuned for it on the App Store. I expect it to be approved in about one week.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/majestysoftware.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/majestysoftware.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/majestysoftware.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/majestysoftware.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/majestysoftware.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/majestysoftware.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/majestysoftware.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/majestysoftware.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/majestysoftware.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/majestysoftware.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/majestysoftware.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/majestysoftware.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/majestysoftware.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/majestysoftware.wordpress.com/80/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=80&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://majestysoftware.wordpress.com/2011/04/27/contactile-update-in-the-pipeline/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/495727395514ecd4b001d553460e1463?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tony</media:title>
		</media:content>
	</item>
		<item>
		<title>Ink Update Released</title>
		<link>http://majestysoftware.wordpress.com/2011/04/19/ink-update-released/</link>
		<comments>http://majestysoftware.wordpress.com/2011/04/19/ink-update-released/#comments</comments>
		<pubDate>Wed, 20 Apr 2011 01:21:12 +0000</pubDate>
		<dc:creator>Tony Ingraldi</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://majestysoftware.wordpress.com/?p=76</guid>
		<description><![CDATA[I am pleased to announce that an update to Majesty Software&#8217;s Ink app is now available on the App Store. This update brings compatibility with iOS multitasking and includes some updated graphics. If you are &#8220;out there&#8221; using Ink, I&#8217;d love to have your feedback regarding what you like or don&#8217;t like about the app. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=76&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I am pleased to announce that an update to Majesty Software&#8217;s <a href="http://www.majestysoftware.com/Ink.shtml">Ink</a> app is now available on the App Store. This update brings compatibility with iOS multitasking and includes some updated graphics. If you are &#8220;out there&#8221; using Ink, I&#8217;d love to have your feedback regarding what you like or don&#8217;t like about the app. I&#8217;d also love to hear about new features you&#8217;d like to see added. Just send an e-mail to the Majesty Software support address or comment right here on the blog.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/majestysoftware.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/majestysoftware.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/majestysoftware.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/majestysoftware.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/majestysoftware.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/majestysoftware.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/majestysoftware.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/majestysoftware.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/majestysoftware.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/majestysoftware.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/majestysoftware.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/majestysoftware.wordpress.com/76/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/majestysoftware.wordpress.com/76/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/majestysoftware.wordpress.com/76/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=76&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://majestysoftware.wordpress.com/2011/04/19/ink-update-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/495727395514ecd4b001d553460e1463?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tony</media:title>
		</media:content>
	</item>
		<item>
		<title>Think Before You Price</title>
		<link>http://majestysoftware.wordpress.com/2011/04/13/think-before-you-price/</link>
		<comments>http://majestysoftware.wordpress.com/2011/04/13/think-before-you-price/#comments</comments>
		<pubDate>Wed, 13 Apr 2011 23:42:21 +0000</pubDate>
		<dc:creator>Tony Ingraldi</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://majestysoftware.wordpress.com/?p=70</guid>
		<description><![CDATA[I&#8217;m going to let you in on a little secret. Majesty Software hasn&#8217;t broken any sales records with its iPhone apps. It&#8217;s most recent release, Contactile, barely made a blip on the sales charts when it debuted a few days ago. I can count the total number of paid sales without taking off my shoes. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=70&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m going to let you in on a little secret. Majesty Software hasn&#8217;t broken any sales records with its iPhone apps. It&#8217;s most recent release, <a href="http://www.majestysoftware.com/contactile">Contactile</a>, barely made a blip on the sales charts when it debuted a few days ago. I can count the total number of paid sales without taking off my shoes. The sheer number of apps on the store makes it quite challenging for small, obscure vendors to gain traction.</p>
<p>So, after a brief time in the lowest price tier (that&#8217;s just 99 cents in the US), Contactile is now a free app. The next planned release will sport a few enhancements and is likely to include iAds as a potential means of generating revenue. I&#8217;d rather not alienate the handful of people that paid for their copy, but the sales numbers are just so small that the burden of maintaining separate paid and lite versions is hard to justify.</p>
<p>In hindsight, I wish I had made Contactile ad-ware from the outset. That would have avoided the dilemma of having an ad-supported update go to people that paid for the initial release.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/majestysoftware.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/majestysoftware.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/majestysoftware.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/majestysoftware.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/majestysoftware.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/majestysoftware.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/majestysoftware.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/majestysoftware.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/majestysoftware.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/majestysoftware.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/majestysoftware.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/majestysoftware.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/majestysoftware.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/majestysoftware.wordpress.com/70/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=70&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://majestysoftware.wordpress.com/2011/04/13/think-before-you-price/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/495727395514ecd4b001d553460e1463?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tony</media:title>
		</media:content>
	</item>
		<item>
		<title>Contactile: A Different Twist on iPhone Contacts</title>
		<link>http://majestysoftware.wordpress.com/2011/04/06/contactile-a-different-twist-on-iphone-contacts/</link>
		<comments>http://majestysoftware.wordpress.com/2011/04/06/contactile-a-different-twist-on-iphone-contacts/#comments</comments>
		<pubDate>Wed, 06 Apr 2011 21:21:13 +0000</pubDate>
		<dc:creator>Tony Ingraldi</dc:creator>
				<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://majestysoftware.wordpress.com/?p=63</guid>
		<description><![CDATA[Majesty Software has just released a new iPhone app. It&#8217;s called Contactile and it offers a different approach to accessing the contacts on your phone. The motivation for Contactile grew out of the sometimes frustrating experience of using the standard Contacts app on the phone. For small address books, the Contacts app is fine. As [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=63&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Majesty Software has just released a new iPhone app. It&#8217;s called <a href="http://itunes.apple.com/us/app/contactile/id428582235?mt=8">Contactile</a> and it offers a different approach to accessing the contacts on your phone. The motivation for Contactile grew out of the sometimes frustrating experience of using the standard Contacts app on the phone.</p>
<p>For small address books, the Contacts app is fine. As your address book grows, you often need to resort to excessive scrolling or using the search mechanism to locate a desired contact.  Scrolling through a long list can be challenging and searching in the standard manner requires more than a few taps.</p>
<p>Contactile admits that you have to search at the outset and offers a faster way to drill down to your desired contact. Read more about it <a title="Contactile on the App Store" href="http://itunes.apple.com/us/app/contactile/id428582235?mt=8">here</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/majestysoftware.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/majestysoftware.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/majestysoftware.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/majestysoftware.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/majestysoftware.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/majestysoftware.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/majestysoftware.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/majestysoftware.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/majestysoftware.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/majestysoftware.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/majestysoftware.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/majestysoftware.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/majestysoftware.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/majestysoftware.wordpress.com/63/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=63&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://majestysoftware.wordpress.com/2011/04/06/contactile-a-different-twist-on-iphone-contacts/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/495727395514ecd4b001d553460e1463?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tony</media:title>
		</media:content>
	</item>
		<item>
		<title>WebObjects: The Gift that Keeps on Giving</title>
		<link>http://majestysoftware.wordpress.com/2011/03/14/the-gift-that-keeps-on-giving/</link>
		<comments>http://majestysoftware.wordpress.com/2011/03/14/the-gift-that-keeps-on-giving/#comments</comments>
		<pubDate>Mon, 14 Mar 2011 15:00:21 +0000</pubDate>
		<dc:creator>Tony Ingraldi</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Cocoa]]></category>

		<guid isPermaLink="false">http://majestysoftware.wordpress.com/?p=54</guid>
		<description><![CDATA[About eleven years ago I became acquainted with Apple WebObjects. WebObjects was in the midst of a transition from Objective-C to Java at the time and I entered the WebObjects picture on the Java side of the equation. The fingerprints of the original Objective-C version of WebObjects were visible throughout the product. You had classes [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=54&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>About eleven years ago I became acquainted with Apple WebObjects. WebObjects was in the midst of a transition from Objective-C to Java at the time and I entered the WebObjects picture on the Java side of the equation. The fingerprints of the original Objective-C version of WebObjects were visible throughout the product. You had classes like NSDictionary and NSArray in the foundation package and patterns such as delegation throughout the design. Most/all of these concepts themselves came to WebObjects from NeXTSTEP and OpenStep.</p>
<p>Years later, I entered the world of iOS and Cocoa desktop programming. Much of the learning curve in these technologies was eased due to my prior experience with WebObjects. This is true in spite of the fact that my WebObjects usage involved no Objective-C work at all.  The conceptual cores of iOS and Cocoa share a common heritage with WebObjects.</p>
<p>More recently I had an opportunity to work with the open source object-relational mapping framework called <a href="http://cayenne.apache.org/">Apache Cayenne.</a> Cayenne was inspired by the Enterprise Objects Framework (EOF) which was part of the WebObjects product. It&#8217;s not an exact clone of EOF, but my prior WebObjects experience made me feel right at home with Cayenne. Completing the picture is a recent investigation of <a href="http://tapestry.apache.org/">Apache Tapestry</a>. Tapestry is a component-oriented web framework also inspired by WebObjects. Working with the component-oriented approach taken with Apache Tapestry felt like going home (albeit to a greatly renovated house.)</p>
<p>So, more than eleven years after first developing with Apple WebObjects, the time investment  that I made in learning/mastering that product is still paying dividends. My hat&#8217;s off to all those who have created the line of technologies that both precede and descend from WebObjects.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/majestysoftware.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/majestysoftware.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/majestysoftware.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/majestysoftware.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/majestysoftware.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/majestysoftware.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/majestysoftware.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/majestysoftware.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/majestysoftware.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/majestysoftware.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/majestysoftware.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/majestysoftware.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/majestysoftware.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/majestysoftware.wordpress.com/54/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=54&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://majestysoftware.wordpress.com/2011/03/14/the-gift-that-keeps-on-giving/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/495727395514ecd4b001d553460e1463?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tony</media:title>
		</media:content>
	</item>
		<item>
		<title>Pure Speculation&#8230;</title>
		<link>http://majestysoftware.wordpress.com/2011/02/26/pure-speculation/</link>
		<comments>http://majestysoftware.wordpress.com/2011/02/26/pure-speculation/#comments</comments>
		<pubDate>Sun, 27 Feb 2011 01:22:07 +0000</pubDate>
		<dc:creator>Tony Ingraldi</dc:creator>
				<category><![CDATA[Apple]]></category>

		<guid isPermaLink="false">http://majestysoftware.wordpress.com/?p=44</guid>
		<description><![CDATA[I&#8217;ve been a long time &#8220;Apple guy&#8221; and have used Macs at home and in the workplace as far back as 1988. Over the years, I&#8217;ve paid close attention to the various moves made by Apple.  When Apple announced the end of the Xserve line a couple of months ago, I initially thought that they [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=44&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been a long time &#8220;Apple guy&#8221; and have used Macs at home and in the workplace as far back as 1988. Over the years, I&#8217;ve paid close attention to the various moves made by Apple.  When Apple announced the end of the Xserve line a couple of months ago, I initially thought that they were walking away from the enterprise market.  Adding to this perception was their announcement in the same timeframe that they would no longer shoulder the burden of porting Java to OS X.  However, the enterprise signals were mixed.  The iPad is being welcomed in the enterprise market and Apple has actually partnered with a large IT firm to further iPad adoption in the enterprise.</p>
<p>Well, the Java issue was soon put to rest when Oracle and Apple announced that the OS X port of Java would become part of the OpenJDK effort.  That still left Apple without a rack-mountable server platform of the sort that would be welcomed in most data centers.  The Mac Mini and Mac Pro server configurations just don&#8217;t fit the mold.</p>
<p>Then I thought, &#8220;what if Apple decided to relax the licensing restrictions for OS X Server to enable it to be virtualized on non-Apple hardware?&#8221;  (To date, only the server edition of OS X is licensed for virtualization and only on Apple hardware.)  The recent unveiling of the fact that &#8220;Lion Server&#8221; will be part of OS X implies that there will no longer be a separate OS X Server flavor.  This further implies that Apple will either license all copies of OS X Lion for use in a virtualized environment or shut the door on virtualization altogether.  I tend to think they will choose the former.</p>
<p>All that is needed to complete the picture, is for Apple to allow Lion to be virtualized on non-Apple hardware.  Then they&#8217;d have broader reach in the enterprise by being able to run atop a variety of hardware through virtualization.  This could be quite a coup, since OS X Lion includes some features geared specifically towards the iPad.</p>
<p>We shall see.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/majestysoftware.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/majestysoftware.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/majestysoftware.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/majestysoftware.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/majestysoftware.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/majestysoftware.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/majestysoftware.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/majestysoftware.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/majestysoftware.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/majestysoftware.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/majestysoftware.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/majestysoftware.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/majestysoftware.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/majestysoftware.wordpress.com/44/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=44&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://majestysoftware.wordpress.com/2011/02/26/pure-speculation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/495727395514ecd4b001d553460e1463?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tony</media:title>
		</media:content>
	</item>
		<item>
		<title>Experiments in Work Models</title>
		<link>http://majestysoftware.wordpress.com/2010/06/18/experiments-in-work-models/</link>
		<comments>http://majestysoftware.wordpress.com/2010/06/18/experiments-in-work-models/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 03:41:20 +0000</pubDate>
		<dc:creator>Tony Ingraldi</dc:creator>
				<category><![CDATA[Business]]></category>

		<guid isPermaLink="false">http://majestysoftware.wordpress.com/?p=38</guid>
		<description><![CDATA[All of my posts to date have been highly technical in nature.  Here&#8217;s one that has a different flavor. Over the course of the past year, I have had opportunity to work in a variety of modes including Full time for a small software company Part-time for a large government contractor Government sub-contractor Independent software [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=38&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>All of my posts to date have been highly technical in nature.  Here&#8217;s one that has a different flavor.</p>
<p>Over the course of the past year, I have had opportunity to work in a variety of modes including</p>
<ul>
<li>Full time for a small software company</li>
<li>Part-time for a large government contractor</li>
<li>Government sub-contractor</li>
<li>Independent software developer for iPhone</li>
<li>Consultant</li>
<li>Freelancer (remote work for hire on small projects.)</li>
<li>Flat-rate software developer for a large-ish desktop application</li>
</ul>
<p>My current mix of income streams includes the part-time job and the large-ish desktop application work.  I&#8217;ve also got some fairly straight forward web site consulting in the pipeline, but that queue is moving rather slowly.  I&#8217;ve maintained my iPhone developer status, but I haven&#8217;t earned enough there in over a year to pay for one dinner out with the family so I don&#8217;t count it as an income stream.</p>
<p>It&#8217;s been quite an experience and I&#8217;ve learned a bit about what sort of work models suit me (and my family) well.  Some lessons learned that I can share at this point are:</p>
<ul>
<li>It&#8217;s possible to find reasonable work on the various freelancer sites, but you have to choose your projects wisely.  I found that smaller, flat-rate projects in areas I knew well worked best for me in that arena.</li>
<li>For large jobs in areas that you have no track record in, flat-rate work will most likely favor the buyer.  I entered into an arrangement of this sort knowing that I would be working cheaply (considering the number of hours required) for one reason:  I wanted to gain expertise in Cocoa desktop programming and I was presented with a project that suited that purpose.  I&#8217;m working cheap by the hour, but it&#8217;s a trade I willingly made since I&#8217;m learning a lot along the way.  I view it as if I&#8217;m being paid to learn rather the other way around.</li>
<li>Be careful what payment terms you enter into.  If you are relying on freelance/contract work for a good portion of your income and agree to payment terms on, say, a 45 day basis, be sure you have a cushion of money built up in advance to cover expenses between the time you complete the work and when you get paid.  Forty-five days can seem like an eternity when you are waiting for payment.</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/majestysoftware.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/majestysoftware.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/majestysoftware.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/majestysoftware.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/majestysoftware.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/majestysoftware.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/majestysoftware.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/majestysoftware.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/majestysoftware.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/majestysoftware.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/majestysoftware.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/majestysoftware.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/majestysoftware.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/majestysoftware.wordpress.com/38/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=38&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://majestysoftware.wordpress.com/2010/06/18/experiments-in-work-models/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/495727395514ecd4b001d553460e1463?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tony</media:title>
		</media:content>
	</item>
		<item>
		<title>NSDatePicker misbehavior</title>
		<link>http://majestysoftware.wordpress.com/2010/05/14/nsdatepicker-misbehavior/</link>
		<comments>http://majestysoftware.wordpress.com/2010/05/14/nsdatepicker-misbehavior/#comments</comments>
		<pubDate>Sat, 15 May 2010 03:33:28 +0000</pubDate>
		<dc:creator>Tony Ingraldi</dc:creator>
				<category><![CDATA[Cocoa]]></category>

		<guid isPermaLink="false">http://majestysoftware.wordpress.com/?p=20</guid>
		<description><![CDATA[NSDatePicker does not behave as it should with respect to keyboard events. Specifically, an NSDatePicker will not handle or forward key events triggered by the Return or Enter key. This becomes an issue if you have a window with a default button. The proper behavior would have the button&#8217;s action triggered whenever Return or Enter [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=20&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>NSDatePicker does not behave as it should with respect to keyboard events. Specifically, an NSDatePicker will not handle or forward key events triggered by the Return or Enter key. This becomes an issue if you have a window with a default button. The proper behavior would have the button&#8217;s action triggered whenever Return or Enter are pressed.</p>
<p>One possible solution is to subclass NSDatePicker to get the desired behavior in keyDown:.</p>
<p><pre class="brush: objc;">
#define RETURN_KEY_CODE 36
#define ENTER_KEY_CODE 76

@implementation MJTDatePicker

- (void)keyDown:(NSEvent *)theEvent {
	unsigned short keyCode = [theEvent keyCode];
	// forward return key and enter key events to the next responder
	if (keyCode == RETURN_KEY_CODE || keyCode == ENTER_KEY_CODE) {
		[[self nextResponder] keyDown:theEvent];
	} else {
		[super keyDown:theEvent];
	}
}

@end
</pre><br />
Here&#8217;s a <a href="http://www.majestysoftware.com/code/DatePickerDemo.zip">sample project</a> that demonstrates the problem and the solution.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/majestysoftware.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/majestysoftware.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/majestysoftware.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/majestysoftware.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/majestysoftware.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/majestysoftware.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/majestysoftware.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/majestysoftware.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/majestysoftware.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/majestysoftware.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/majestysoftware.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/majestysoftware.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/majestysoftware.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/majestysoftware.wordpress.com/20/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=20&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://majestysoftware.wordpress.com/2010/05/14/nsdatepicker-misbehavior/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/495727395514ecd4b001d553460e1463?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tony</media:title>
		</media:content>
	</item>
		<item>
		<title>A handy logging macro for Cocoa</title>
		<link>http://majestysoftware.wordpress.com/2010/05/12/a-handy-logging-macro-for-cocoa/</link>
		<comments>http://majestysoftware.wordpress.com/2010/05/12/a-handy-logging-macro-for-cocoa/#comments</comments>
		<pubDate>Wed, 12 May 2010 10:27:14 +0000</pubDate>
		<dc:creator>Tony Ingraldi</dc:creator>
				<category><![CDATA[Cocoa]]></category>

		<guid isPermaLink="false">http://majestysoftware.wordpress.com/?p=11</guid>
		<description><![CDATA[When developing software, I tend to use both logging and the debugger to gain insight into application behavior.  When it comes to logging, I wanted a way to embed log statements in my code that wouldn&#8217;t impact release builds of my applications. While there are clones of Log4J out there for Objective-C, I wanted to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=11&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When developing software, I tend to use both logging and the debugger to gain insight into application behavior.  When it comes to logging, I wanted a way to embed log statements in my code that wouldn&#8217;t impact release builds of my applications.</p>
<p>While there are clones of Log4J out there for Objective-C, I wanted to keep things simple.  What I&#8217;ve come up with is a macro that I place in an application&#8217;s <span style="font-family:courier;">_prefix.pch</span> file:<br />
<pre class="brush: objc;">
#ifdef DEBUG
#define DLog(format, ...) NSLog([@&quot;%s &quot; stringByAppendingString:format], __FUNCTION__, ##__VA_ARGS__)
#else
#define DLog(...)
#endif
</pre><br />
Then I place <span style="font-family:courier;">DLog()</span> statements in my code where desired. For example, if I place <span style="font-family:courier;">DLog(&#8220;Hello&#8221;)</span> in the initialize method of AppController, the output would appear as follows:<br />
<pre class="brush: plain; gutter: false;">
2010-05-12 06:21:35.627 AppName[28401:a0f] +[AppController initialize] Hello
</pre><br />
Note that the location of the log statement is embedded in the output.  To have the DLog macro enabled for your debug builds, you&#8217;ll need to define the DEBUG preprocessor macro in your build settings.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/majestysoftware.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/majestysoftware.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/majestysoftware.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/majestysoftware.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/majestysoftware.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/majestysoftware.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/majestysoftware.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/majestysoftware.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/majestysoftware.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/majestysoftware.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/majestysoftware.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/majestysoftware.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/majestysoftware.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/majestysoftware.wordpress.com/11/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=majestysoftware.wordpress.com&amp;blog=13632106&amp;post=11&amp;subd=majestysoftware&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://majestysoftware.wordpress.com/2010/05/12/a-handy-logging-macro-for-cocoa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/495727395514ecd4b001d553460e1463?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tony</media:title>
		</media:content>
	</item>
	</channel>
</rss>
