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

<channel>
	<title>Terminal.app &#187; Apple</title>
	<atom:link href="http://terminalapp.net/category/apple/feed/" rel="self" type="application/rss+xml" />
	<link>http://terminalapp.net</link>
	<description>All computers should be destroyed. And flies too.</description>
	<lastBuildDate>Sat, 04 Sep 2010 15:03:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>iPad &#8211; Why not flying solo?</title>
		<link>http://terminalapp.net/ipad-why-not-flying-solo/</link>
		<comments>http://terminalapp.net/ipad-why-not-flying-solo/#comments</comments>
		<pubDate>Sun, 04 Apr 2010 22:57:49 +0000</pubDate>
		<dc:creator>Miguel Arroz</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[time capsule]]></category>

		<guid isPermaLink="false">http://terminalapp.net/?p=167</guid>
		<description><![CDATA[OK, I admit it, I don&#8217;t see why the iPad would be an useful device. For me. On the street, I have my iPhone, at home, I have my Mac. So why do I need a third device? For nothing, &#8230; <a href="http://terminalapp.net/ipad-why-not-flying-solo/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>OK, I admit it, I don&#8217;t see why the iPad would be an useful device. For me. On the street, I have my iPhone, at home, I have my Mac. So why do I need a third device? For nothing, probably. But that&#8217;s me.</p>
<p>What I find paradoxical is that most people who are buying iPads are the ones who need it less. It&#8217;s the people who love gadgets, and those people already have everything &#8211; iPhones, laptops, desktops, you name it. What will they be able to do with an iPad that can&#8217;t be done with every other piece of electronics they have? Nothing.</p>
<p><span id="more-167"></span>But, as many people said and wrote between the iPad first announcement and this weekend where it finally started to reach the buyers hands, the iPad may open the computing world to a whole new class of users. Those are the users who do not use computers. The older people, the computer illiterate people, or those who simply don&#8217;t have patience or will to learn about operating systems, files and folders, network configuration, installing software and updates, and all the stuff needed to use and maintain a computer. iPad opens a new range of possibilities for those folks, allowing them to consume and create content and sharing it. Or does it?</p>
<p>Unfortunately, this amazing possibility is set aside by one simple fact: iPad <em>needs</em> a computer to work. In fact, <a href="http://www.appleinsider.com/articles/10/04/03/first_look_ipad.html">according to the early reports</a>, the very first thing you are required to do as soon as you fire up your iPad for the first time is to hook it up to your computer. Which means you <em>must</em> have a computer.</p>
<p>But&#8230; why? The iPad is a computer by itself. Technically, there&#8217;s no reason at all for it to need any help from an external computer. It can boot. It can connect to any wireless network, download whatever it needs from the cloud, and install it. What the heck, my Mac does that on it&#8217;s own. Why won&#8217;t the iPad do it?</p>
<p>Of course, there&#8217;s another problem: the data. The main reason the iPad (and the iPhone) is required to be plugged to a computer during installation is to create the necessary bond between both machines so data can be synced and backed-up. If only there was some autonomous device that could talk to the iPad and backup it&#8217;s data… well, there is. The Apple&#8217;s very own <a href="http://www.apple.com/timecapsule/">Time Capsule</a>, of course! And with 150 Mbps of wireless bandwidth between them, there&#8217;s more than enough horsepower to provide a seamless, continuous backup of the data stored in the iPad flash drive.</p>
<p>What made me fall in love with computers when I was a small kid was the fact that computers enabled. They enabled people to do so much more that could be done previously. They enabled me to write good-looking reports on my Mac Plus that stunned my school teachers. To edit images and sounds in a way that could only be done by artists with expensive equipment. To build simple applications and games with Hypercard that actually worked. To reach other people and talk to them, and to have passionate arguments about mostly everything. To download software so I could do even more stuff. To post my own websites with information I created to help other people, and ultimately, my software, that would enable others to do what they needed and wanted.</p>
<p>So… my suggestion: reach those who can&#8217;t or won&#8217;t use a computer, and tell them there&#8217;s a new way to enter the digital world. There&#8217;s a new way to create. There&#8217;s a new way to enable and be enabled. A way they can understand, a way they can feel comfortable with, a way they may even end up loving. Give them an iPad that flies solo. Give them a magic box that they place somewhere in their house that keeps their data safe. Give them what you gave me on that day my father brought that strange beige expensive box home. Do it!</p>
]]></content:encoded>
			<wfw:commentRss>http://terminalapp.net/ipad-why-not-flying-solo/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Apple 2009 wish list</title>
		<link>http://terminalapp.net/apple-2009-wish-list/</link>
		<comments>http://terminalapp.net/apple-2009-wish-list/#comments</comments>
		<pubDate>Fri, 02 Jan 2009 00:31:09 +0000</pubDate>
		<dc:creator>Miguel Arroz</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Generic]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Mac OS X Server]]></category>
		<category><![CDATA[WebObjects]]></category>

		<guid isPermaLink="false">http://terminalapp.net/?p=70</guid>
		<description><![CDATA[It&#8217;s a brand new year. So here&#8217;s my wish list for Apple: Please fix the wireless driver that causes my Mac to crash about 10% of the times I turn Airport off. Please fix the trackpad driver, or whatever is &#8230; <a href="http://terminalapp.net/apple-2009-wish-list/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s a brand new year. So here&#8217;s my wish list for Apple:</p>
<ul>
<li>Please fix the wireless driver that causes my Mac to crash about 10% of the times I turn Airport off.</li>
<li>Please fix the trackpad driver, or whatever is causing the trackpad to behave strongly erratic during about 30 seconds after waking the Mac up.</li>
<li>Please fix the damn copy/paste bug that makes the paste command paste the previously copied object and not the most recent one. This is specially irritating when you cut a piece of text, paste and you realize you are pasting something else, and that your supposedly cut piece of text is lost forever, unless you can undo and get it back.</li>
<li>Please fix the irritating bug that causes an iChat window to keep being the active one even after I click Safari, making its window go in front of iChat&#8217;s. That&#8217;s specially annoying when I type apple-W to close the Safari window, and the ichat one goes away.</li>
<li>Please provide replacement keyboards for people who has pre-unibody MacBook Pros that, you know, actually sense a keystroke every time the key goes all the way down, without the need to almost punch the key.</li>
<li>Please fix whatever is causing my father&#8217;s MacBook Pro to keep waking up and going back to sleep when the lid is closed and the charger on, despite I had already turned off every god damn thing that could wake it up, including the lid open event.</li>
<li>Speaking about the charger, please provide chargers where the charge light doesn&#8217;t go off for some unknown reason. It still works, but it doesn&#8217;t inspire a lot of confidence in it ans it&#8217;s safety.</li>
<li>Please provide granular updates to Mac OS X Server. Please please please pretty please.</li>
<li>Please care a little more about the entreprise and IT markets, namely your own web application technology (WebObjects, of course).</li>
</ul>
<p>Thank you, guys! You must hate me but you&#8217;re nice people anyway. Sometimes.</p>
]]></content:encoded>
			<wfw:commentRss>http://terminalapp.net/apple-2009-wish-list/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MacBook Pro 17 vertical blue line</title>
		<link>http://terminalapp.net/macbook-pro-17-vertical-blue-line/</link>
		<comments>http://terminalapp.net/macbook-pro-17-vertical-blue-line/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 22:58:04 +0000</pubDate>
		<dc:creator>Miguel Arroz</dc:creator>
				<category><![CDATA[Apple]]></category>

		<guid isPermaLink="false">http://terminalapp.net/?p=44</guid>
		<description><![CDATA[I&#8217;m really pissed off. Short story: MacBook Pro 17, HD display, bought this February. Blue line appeared today. I still remember when Apple hardware would work for more than six months.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m really pissed off. Short story: MacBook Pro 17, HD display, bought this February. Blue line appeared today. I still remember when Apple hardware would work for more than six months.</p>
<p><a href='http://terminalapp.net/wp-content/uploads/2008/07/blueline.jpg'><img src="http://terminalapp.net/wp-content/uploads/2008/07/blueline-300x225.jpg" alt="" title="Blue line" width="300" height="225" class="alignnone size-medium wp-image-45" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://terminalapp.net/macbook-pro-17-vertical-blue-line/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>iPhone: why I don&#8217;t care</title>
		<link>http://terminalapp.net/iphone-why-i-dont-care/</link>
		<comments>http://terminalapp.net/iphone-why-i-dont-care/#comments</comments>
		<pubDate>Sun, 13 Jul 2008 18:50:20 +0000</pubDate>
		<dc:creator>Miguel Arroz</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Generic]]></category>

		<guid isPermaLink="false">http://terminalapp.net/?p=43</guid>
		<description><![CDATA[So, this has been the iPhone week. It started right on monday, with Vodafone and Optimus, the two portuguese carriers that sell the iPhone, announcing their pretty ridiculous price plans. Then, the iPhone was launched, together with the App Store &#8230; <a href="http://terminalapp.net/iphone-why-i-dont-care/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>So, this has been the iPhone week. It started right on monday, with Vodafone and Optimus, the two portuguese carriers that sell the iPhone, announcing their pretty ridiculous price plans. Then, the iPhone was launched, together with the App Store and a barely functional activation site. And I couldn&#8217;t care less. Why? Many reasons, some of them are Apple&#8217;s fault, some of them are consequences of the wildly spread stupidity that exists in my country. If you are one the 4 regular readers of my blog, you know that most of my articles are techie-focused, and not opinion-based. This one is an exception.</p>
<p><strong>The iPhone itself</strong></p>
<p>So, what&#8217;s wrong with the iPhone? What should have been made much better in the most popular gadget of the week? A lot.</p>
<p>First, the phone itself. I never had a smartphone. I don&#8217;t know how does the phone part operate in a smartphone. But I know how it works on a regular phone, say, a Nokia phone. And, pick up any Nokia and it will tear the iPhone apart in what relates to be a phone, you know, something to make calls with. My first complain is something really obvious: it&#8217;s hard or impossible to use the iPhone with just one hand. Of course it depends on how large your hand is, and how much are you willing to risk dropping the iPhone on a hard ground in the middle of a street (that glass keeps shouting &#8220;break me!&#8221;). But personally, I find it a challenge, specially if I&#8217;m walking in a hurry in the middle of the street carrying stuff in one hand, which seems to be the preferred time for people to call me. I never tried to operate one while driving but it should be a real pain (I know it&#8217;s illegal to make calls while driving without a loudspeaker, I just receive or start the call and turn on my Nokia&#8217;s built-in loudspeaker, so it&#8217;s not that bad). On top of this, you have to do all that scrolling-trough-the-alfabet, and then scrolling-trough-the-names-on-the-selected-letter, and finally call the person. That sucks, because not only it&#8217;s slow, but it also requires you to actually look to what you are doing and wait for the visual feedback. On a normal phone, with a numeric keypad, if I want to call John, I press the 5 key (jkl) once and I&#8217;m already on the J. If I want to call Fred, I press the 3 key (def) three times. No feedback needed, I know where I&#8217;ll end up. I just then need to scroll (with a key, thank god!) and push the green button. You are free to disagree, but I think Nokia is so much better.</p>
<p>Second, the keyboard. Yuck. It&#8217;s true that I never set it to portuguese, but even when I try to write in english, it SUCKS. Man, it sucks big time. I rarely can get the word I actually want. The phone suggest wrong things. It&#8217;s hard to understand how to NOT accept the suggestion. I actually think that removing all the &#8220;intelligent&#8221; guess-what-the-user-is-trying-to-write stuff would actually improve the usage a lot, because most of the times I screwed up writing on an iPhone keyboard was actually not because I placed my finger on the wrong &#8220;key&#8221;, but because iPhone decided that I pressed a key that I actually didn&#8217;t. And of course, not having the physical feedback of a real keyboard is also bad, but I can understand that as a compromise between size and functionality.</p>
<p>Third, Safari. I do believe iPhone&#8217;s Safari is the best web browsing experience in the mobile market, I really do. But it sucks. It&#8217;s painfully slow. And I don&#8217;t mean the network. I mean the CPU of that thing. Even with a high-speed WiFi network, it&#8217;s slow. Rendering is slow. Panning is slow (hate that checkerboard pattern). Zooming is slow. Argh. I don&#8217;t know exactly how to make this better, but having a faster CPU would be a nice start. Yes yes, I know that faster CPU = less battery time, but as a client, I can demand! :)</p>
<p>Fourth, the GPS. Are you kidding?! What&#8217;s the use of a GPS if it doesn&#8217;t support turn-by-turn mode? I usually know where I am, thank you. My problem is knowing how to get to where I want while driving. If the iPhone GPS can&#8217;t do it, it&#8217;s useless. It&#8217;s worth zero for me. Now is the part you say, hey, but iPhone is an open platform, so someone will develop a better GPS software, right? Who cares. First, it won&#8217;t be free. I don&#8217;t understand why I&#8217;m buying a device with a GPS receiver and then I have to pay more for something that will actually make it work as expected. And second, and worse, it probably will not happen. Why? Because on the iPhone development SDK agreement, there&#8217;s a clause that explicitly forbiddens you from doing it: &#8220;Applications may not be designed or marketed for real time route guidance&#8221;. Period. (Waiting to be processed by Apple for copying that sentence from the SDK)</p>
<p>Fifth, it doesn&#8217;t work as a modem/router for a laptop. I need mobile internet access in my laptop. That comes with a monthly payment. But hey, if I have an iPhone, that means TWO monthly payments for the same service. Now wait a minute. I said &#8220;same service&#8221;! So why can&#8217;t I share it? Well&#8230; because the iPhone won&#8217;t do it. Any other phone can be used as a modem, via bluetooth, so that you can access the Internet from your laptop using the phone connection. Nokia. Sony. You name it. But hey, not Apple. So, as I don&#8217;t like to give away my money to the phone carriers for a stupid reason, iPhone is a no-go.</p>
<p>Sixth, the bluetooth implementation is totally crippled. It will only power your headset, and nothing else. No vCard sharing via bluetooth with nearby phones. And worse, no synching with your mac via any wireless means. Yes, that&#8217;s right. Remember using iSync with your Nokia or Sony or whatever phone? Forget it with the iphone. You have to carry the USB cable with you all the time. Which is actually a good thing, because battery life time seems to be not that great, so you&#8217;ll often need to pump in some juice to keep it going.</p>
<p>So, the iPhone, as a device, sucks. But it&#8217;s a good mobile platform, and platform means really great third party software to use. Or doesn&#8217;t it?</p>
<p><strong>The app store</strong></p>
<p>It&#8217;s 1984. Apple will introduce Macintosh. And what better way to do it than with the famous 1984 commercial, where IBM is pictured as the evil Big Brother and Apple as the liberating force that will provide everyone with their deserved freedom from the evil empire?</p>
<p>It&#8217;s 2008. Reality check. Apple is the Big Brother.</p>
<p>The app store seems to be a great ideia. An organized, controlled, easy to use place for users to go and buy the apps they want to use. But what does it mean for the developers?</p>
<p>Big Brother is what it means. Apple reserves the right to accept, or not, your application to be on selling on the App Store. Also, it imposes some very strict guidelines on what you can actually do, like the GPS example I stated above, and also VoIP and other stuff. Even worse, the App Store is the <strong>only</strong> way to publicly distribute applications for the iPhone, assuming you didn&#8217;t jailbreak it, and most people didn&#8217;t. So, Apple has the power to decide that you are out of business if they decide so. The only way to reach your customers is trough Apple.</p>
<p>In my opinion, this is not only ridiculous, but also a very dangerous precedent. If I buy an iPhone, it&#8217;s mine. I should be able to do whatever I want with it. And if I&#8217;m a developer, I should be able to reach my clients directly. It&#8217;s very dangerous to have someone saying what is OK to run on your phone and what&#8217;s not. Some claim it&#8217;s a security issue. After all, you don&#8217;t want your software to call people on foreign countries without your knowledge, because those calls will be billed on you. Bah. What about computers? Don&#8217;t we have really important information on them? Information that can compromise much more than just your phone bill? Why don&#8217;t we create a desktop App Store, to control everything you have on your Mac? It&#8217;s simply ridiculous. And what pisses me off about this is watching developers and users accepting this without a single complaint. What&#8217;s next? All the books you buy must be approved? All the movies you see must be &#8220;decent&#8221;? All the music you hear must be controlled? It&#8217;s ridiculous. And dangerous. It&#8217;s Apple totally forgetting about 1984, totally forgetting about it&#8217;s roots, and going totally Big Brother, totally enterprise-who-wants-to-make-money-no-matter-what. As someone who entered the Apple world in 1987, with the Mac PLUS, it&#8217;s really, really sad to see this.</p>
<p><strong>The plans and the hype</strong></p>
<p>This next subject depends, of course, where you are. I live in Portugal, and as I said, we have ridiculous data plans for the iPhone. Vodafone&#8217;s plans were all limited to 250 MB per month, and of course, they will charge the hell out of you for every extra bit. After some complaints, they bumped the limit on the most (and ridiculously) expensive plan to&#8230; 500 MB. Optimus&#8217; plans are not better. It&#8217;s sad to compare this to other countries like Netherlands, where all the plans include unlimited data, and, depending on the plans, you can get your phone for 1 euro. The problem is that the carriers didn&#8217;t really understand what this product is about (or they pretend to not understand while they happily rip you off). The iPhone is a mobile platform. It depends on the Internet for most of it&#8217;s features. The fact that the iPhone is a phone, and allows you to make calls, is a minor detail. The iPhone depends on the Internet, so it&#8217;s ridiculous to sell data plans as if it would be just another phone with internet access. It&#8217;s a completely different product, and should be looked to by the carriers as what it is. Unfortunately, portuguese carriers didn&#8217;t go along with this vision, and are happily raping their clients.</p>
<p>To conclude, something that makes me really pissed off and sad is all the hype, and the way the iPhone was promoted here. In San Francisco, lines were formed near the stores, and you could see geeks, with their eyes shinning about the new stuff they would be able to do with this new platform. Here, lines and launch parties were constituted mostly by VIPs. Most didn&#8217;t even know what the iPhone was, they just wanted one because they have money and it&#8217;s cool to have the latest Apple gadget. Carriers wanted those people to be there because they are famous. Because, even being incredibly stupid and ignorant, they have big (sometimes artificial) half-naked boobs they show to the TV cameras resulting in more attention in the news reports. Because they think they are funny comedians, making jokes about knowing nothing about technology, being proud of their ignorance. It&#8217;s sad to see a new piece of technology being used as a glamour toy, a coolness factor, and not as a new device that will allow new and incredible stuff to be made. Oh well. It&#8217;s Portugal.</p>
]]></content:encoded>
			<wfw:commentRss>http://terminalapp.net/iphone-why-i-dont-care/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>iPhone mania</title>
		<link>http://terminalapp.net/iphone-mania/</link>
		<comments>http://terminalapp.net/iphone-mania/#comments</comments>
		<pubDate>Thu, 10 Jul 2008 23:54:29 +0000</pubDate>
		<dc:creator>Miguel Arroz</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Generic]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://terminalapp.net/?p=41</guid>
		<description><![CDATA[iPhone iPhone iPhone iPhone. iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone! iPhone iPhone iPhone iPhone&#8230; iPhone iPhone iPhone iPhone. iPhone? iPhone iPhone iPhone iPhone iPhone iPhone. iPhone iPhone iPhone iPhone iPhone iPhone! iPhone iPhone iPhone iPhone :) iPhone &#8230; <a href="http://terminalapp.net/iphone-mania/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>iPhone iPhone iPhone iPhone. iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone!</p>
<p>iPhone iPhone iPhone iPhone&#8230; iPhone iPhone iPhone iPhone. iPhone? iPhone <a href="http://www.apple.com/iphone">iPhone</a> iPhone iPhone iPhone iPhone. iPhone iPhone iPhone iPhone iPhone iPhone! iPhone iPhone iPhone iPhone :) iPhone iPhone.</p>
<p>iPhone iPhone iPhone. iPhone iPhone iPhone iPhone iPhone! iPhone iPhone? iPhone iPhone iPhone? iPhone? iPhone!</p>
<p>iPhone iPhone iPhone iPhone iPhone. iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone iPhone. iPhone. iPhone iPhone iPhone.</p>
<p>iPhone.</p>
]]></content:encoded>
			<wfw:commentRss>http://terminalapp.net/iphone-mania/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Back from USA</title>
		<link>http://terminalapp.net/back-from-usa/</link>
		<comments>http://terminalapp.net/back-from-usa/#comments</comments>
		<pubDate>Sun, 15 Jun 2008 23:01:07 +0000</pubDate>
		<dc:creator>Miguel Arroz</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[WebObjects]]></category>
		<category><![CDATA[WOWODC WWDC 2008 WebObjects LEWOStuff Houdah Stanford]]></category>

		<guid isPermaLink="false">http://terminalapp.net/?p=39</guid>
		<description><![CDATA[Well, I&#8217;m back from another WOWODC and WWDC. I&#8217;m still really tired, but some quick notes: As David LeBer already mentioned, Pascal did an amazing job organizing WOWODC all by himself. Great room (a bit cold on the first day &#8230; <a href="http://terminalapp.net/back-from-usa/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Well, I&#8217;m back from another WOWODC and WWDC. I&#8217;m still really tired, but some quick notes:</p>
<ul>
<li>As <a href="http://davidleber.net/?p=319">David LeBer already mentioned</a>, Pascal did an amazing job organizing <a href="http://www.wocommunity.org/wowodc08/">WOWODC</a> all by himself. Great room (a bit cold on the first day ;) ), large windows and sunlight on the halls. Food (well&#8230; not that good, but after all, it&#8217;s USA!) and caffeine provided frequently. Very very nice. Suggestion for the next year: a bigger (and brighter) screen, and eventually plasma screens among the room to make it easy for people in the back to read the code.</li>
<li>I learned a lot about WO frameworks out there (like <a href="http://projectwonder.blogspot.com/">Wonder</a>, <a href="http://code.google.com/p/houdah-webobjects-frameworks/">Houdah</a> and specially <a href="http://homepage.mac.com/andrewlindesay/le/page_lestuff.html">LEWOStuff</a> that I did not know before). I met for the first time some very talented people, and of course, all the folks from the previous conferences. It&#8217;s great to be able to have technical discussions and know different views on the same problems from all those skilled and experienced people out there, face to face.</li>
<li><a href="http://developer.apple.com/wwdc/">WWDC</a> had some interesting news on many stuff. As you know, I cannot talk about the stuff under NDA, so I shall only say that some interesting stuff is being done on the WO side. Also, as you all know by now, the <a href="http://www.apple.com/iphone/">iPhone is now 3G</a>, includes a GPS, the price was slashed, and will be available in many countries of the world. I just hope the service providers slash the data roaming prices, because that makes the iPhone useless when you go to foreign countries. Finally, <a href="http://www.apple.com/macosx/snowleopard/">Snow Leopard</a> was announced, and, as already expected, the focus is not on new features, but on a big cleanup of the OS infrastructure. Not only this are great news for us, developers, but also shows some courage from Apple and a lot of respect for their users. They want to focus the next year on improving the quality of their OS, rather than packing it up with some new features just to win the race against the competition.</li>
<li>As a side note, the <a href="http://www.mactech.com/">MacTech</a> people was giving away some magazines for free to the people who were <a href="http://www.flickr.com/photos/velouriadark/2571799198/">standing</a> <a href="http://www.flickr.com/photos/velouriadark/2570973867/">in line</a> <a href="http://www.flickr.com/photos/velouriadark/2571799478/">during the morning</a>. I took the time to read most of it during my flight, and I really liked it. I was a MacTech subscriber in the past, but I cancelled it because, during my graduation, I didn&#8217;t have time to read it (it&#8217;s good to graduate on a place where you actually don&#8217;t have time to learn, isn&#8217;t it?). Maybe I&#8217;ll subscribe it again now.</li>
<li>Not related to the conferences themselves, we went to visit the bay area surroundings on Friday afternoon. We did the classic trip to the Apple and Google campuses, because we are all geeks, but we also went to the Stanford and Berkeley campuses. The Standford campus totally blow me away. You have to see it to believe it. From now on, I&#8217;ll laugh, really laugh, every time I hear a faculty from my university stating that we actually have a campus. The Berkeley campus did not impress me much. It&#8217;s more urban style, more crowded and dense. I prefer the Stanford way, with space, a huge amount of space, tons and tons of space, really. Almost made me want to return to the univ! :)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://terminalapp.net/back-from-usa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WWDC and WOWODC 2008</title>
		<link>http://terminalapp.net/wwdc-wowodc-2008/</link>
		<comments>http://terminalapp.net/wwdc-wowodc-2008/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 14:13:54 +0000</pubDate>
		<dc:creator>Miguel Arroz</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[WebObjects]]></category>
		<category><![CDATA[2008]]></category>
		<category><![CDATA[wowodc]]></category>
		<category><![CDATA[wwdc]]></category>

		<guid isPermaLink="false">http://terminalapp.net/?p=38</guid>
		<description><![CDATA[It&#8217;s that time of the year&#8230; packing up to leave tomorrow, as I will attend WOWODC and WWDC 2008 in San Francisco. See you there!]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s that time of the year&#8230; packing up to leave tomorrow, as I will attend <a href="http://www.wocommunity.org/wowodc08/">WOWODC</a> and <a href="http://developer.apple.com/wwdc/">WWDC</a> 2008 in San Francisco. See you there!</p>
]]></content:encoded>
			<wfw:commentRss>http://terminalapp.net/wwdc-wowodc-2008/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Accessing Mac virtual hosts from a Parallels VM</title>
		<link>http://terminalapp.net/accessing-mac-virtual-hosts-from-a-parallels-vm/</link>
		<comments>http://terminalapp.net/accessing-mac-virtual-hosts-from-a-parallels-vm/#comments</comments>
		<pubDate>Sun, 30 Mar 2008 23:26:05 +0000</pubDate>
		<dc:creator>Miguel Arroz</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mac OS X]]></category>

		<guid isPermaLink="false">http://terminalapp.net/accessing-mac-virtual-hosts-from-a-parallels-vm/</guid>
		<description><![CDATA[I finally moved to an Intel machine. Despite the dramatic speed improvement in everything Java-related, namely Eclipse, there&#8217;s another big advantage: being able to run IE on Windows using a virtual machine. Unfortunately, that&#8217;s something every web developer must do &#8230; <a href="http://terminalapp.net/accessing-mac-virtual-hosts-from-a-parallels-vm/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I finally moved to an Intel machine. Despite the dramatic speed improvement in everything Java-related, namely Eclipse, there&#8217;s another big advantage: being able to run IE on Windows using a virtual machine. Unfortunately, that&#8217;s something every web developer must do to ensure his or her application will work on the most used (and crappy) browser on earth.</p>
<p>I installed Parallels and created two virtual machines, one for IE 6 and another one for IE 7. This way I&#8217;m sure there are no weird problems between those two versions (having more than an IE version on Windows can only be accomplished by hacks, and hacks are bad). Also I can install Visual Web Developer Express Edition on each of the VMs, and use either IE 6 or 7 to debug.</p>
<p>My apps run inside virtual hosts on Mac OS X apache, under a fake DNS name. On Mac OS X it&#8217;s easy to add the DNS entry to the /etc/hosts file, under the 127.0.0.1 entry. This way, your DNS name will always point to your mac, and you&#8217;ll be able to reach your virtual host.</p>
<p>I wanted to do the same from inside Windows running on Parallels. An easy way would be to edit the Windows hosts file, adding the Mac OS X public IP to the file. But that will only work if the OS X IP doesn&#8217;t change. My Intel mac is an MBP, and I change the network I use often, so I needed a little more flexibility. So, this is the way I found to do this:</p>
<ol>
<li>Configure your VM to use Shared Networking. This wall, Parallels extensions installed on your Mac will create a NAT network where your virtual machine will be hooked into.<br/><br />
<a href='http://terminalapp.net/wp-content/uploads/2008/03/parallels.png' title='Paralleles Configuration Screen'><img src='http://terminalapp.net/wp-content/uploads/2008/03/parallels.thumbnail.png' alt='Paralleles Configuration Screen' /></a></li>
<li>Open Mac System Preferences, and look for the &#8220;Parallels NAT&#8221; network port. This is an interesting one, because it allows the Mac itself to be connected to the virtual NAT network, using an IP on the NAT subnet. Write down that IP: this will be the IP you&#8217;ll use to access the Mac virtual hosts from within the virtual machines.<br/><br />
<a href='http://terminalapp.net/wp-content/uploads/2008/03/systempreferences.png' title='System Preferences'><img src='http://terminalapp.net/wp-content/uploads/2008/03/systempreferences.thumbnail.png' alt='System Preferences' /></a></li>
<li>Finally, edit Windows hosts file. This file is located on \WINDOWS\system32\drivers\etc\hosts. Add a line with the IP (in my case, 10.211.55.2) and the name of the virtual host, just like you do on the Mac.<br/><br />
<a href='http://terminalapp.net/wp-content/uploads/2008/03/notepad.png' title='Windows hosts file'><img src='http://terminalapp.net/wp-content/uploads/2008/03/notepad.thumbnail.png' alt='Windows hosts file' /></a></li>
</ol>
<p>That&#8217;s it. Now you can access your Mac virtual hosts from Windows, whatever the Mac IP is. Ick, what&#8217;s a Windows screenshot doing in my blog!?</p>
]]></content:encoded>
			<wfw:commentRss>http://terminalapp.net/accessing-mac-virtual-hosts-from-a-parallels-vm/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Migrating to Leopard Server</title>
		<link>http://terminalapp.net/migrating-to-leopard-server/</link>
		<comments>http://terminalapp.net/migrating-to-leopard-server/#comments</comments>
		<pubDate>Sun, 23 Mar 2008 23:41:33 +0000</pubDate>
		<dc:creator>Miguel Arroz</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mac OS X Server]]></category>

		<guid isPermaLink="false">http://terminalapp.net/migrating-to-leopard-server/</guid>
		<description><![CDATA[This was it. I spent the easter weekend migrating GAEL&#8216;s Xserve to Leopard Server. It all went well, although some more or less serious issues poped up. Our server is used mainly for hosting web content and applications (php, perl, &#8230; <a href="http://terminalapp.net/migrating-to-leopard-server/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This was it. I spent the easter weekend migrating <a href="http://gael.ist.utl.pt">GAEL</a>&#8216;s Xserve to Leopard Server. It all went well, although some more or less serious issues poped up.</p>
<p>Our server is used mainly for hosting web content and applications (php, perl, and of course, WebObjects). It also handles some <a href="http://subversion.tigris.org/">Subversion</a> repositories and some other minor stuff.</p>
<p>I did the standard procedure I always do when migrating a machine to a new OS version: clone the hard drive to an external firewire disk, format the internal hard drive, install new OS and migrate data. I usually use migration assistant, but of course, this is a server, it&#8217;s a little more complicated than that.</p>
<p>While my memory is still fresh, here&#8217;s some notes about it, not necessarily by any specific order.</p>
<p><strong>RAID Formatting</strong></p>
<p>Our Xserve has two 80 GB hard drives configured in software RAID 1 (mirroring). As Apple sometimes does some tweaks and changes on the RAID software and drivers, I decided to destroy the RAID and create a new one. So I did: I booted from the Leopard Server DVD, destroyed the RAID and tried to make a new one. I had some problems with that, though. Disk Utility was not allowing me to create the new RAID. I don&#8217;t recall the error exactly, but it had something to do with not being able to mount a volume or RAID slice. I quit Disk Utility and launched it again, and then the RAID creation went fine. I just love to see those two blue leds blinking in sync!</p>
<p><strong>Installation and System Updates</strong></p>
<p>Installation itself went without any issues. Our Xserve has a graphics card, so it was like any regular desktop Mac, click click choose click and wait. The system installed correctly, rebooted, configuration assistants, answered all the questions, network working, etc. Perfect. Then, I went to grab all the system updates. I installed it this weekend, so I had a few updates waiting, namely the 10.5.2 combo update. Then something weird happened &#8211; after installing all the available updates, the machine rebooted 3 times in a row instead of just one. I know some updates that came out lately require 2 reboots in a row, but I never had seen 3. When the server finally came to life, I manually rebooted it again 2 or 3 times more, just to see if it was booting OK. Apparently, everything is fine. I checked the logs, and they were inconclusive. So, does anyone know if 3 reboots in a row is normal for all the updates that came out so far for a G5 Xserve running Leopard?</p>
<p><strong>SSH</strong></p>
<p>This is a fast one, but&#8230; sshd comes with PermitRootLogin defaulting to &#8220;yes&#8221;. Oh come on, guys!</p>
<p><strong>User Migration</strong></p>
<p>This is one of the most serious issues that I find with Mac OS X Server migration. I had seen this when migrating from Panther Server to Tiger Server, and it&#8217;s still a problem. The thing is: you cannot migrate passwords. You can use Workgroup Manager to export all the user information&#8230; except passwords. That means all the user passwords will have to be reset on the new server. Of course, I don&#8217;t expect the real passwords to be exported &#8211; specially because they are hashed, so it&#8217;s impossible to recover them. But the hash itself could be exported and imported again.</p>
<p>This presents a very serious issue to system administrators and users. Of course, if you have thousands of users, you should use multiple LDAP servers dedicated to the authentication services, and you can clone them at will, making sure that you never loose information and the service never stops. But when you have about 30 users like we do, that is overkill. Even so, it&#8217;s a real pain in the ass to reset all those passwords, because some users are actually not in our office. They are external users, either from the other university campus (although that&#8217;s not too bad, I actually live closer to that campus that the one I work in, so I can drive by and take care of that stuff), or, worse, from people in some companies that are working remotely with us.</p>
<p>I believe migrations like this should be transparent to the user, and this little detail make them very very opaque.</p>
<p><strong>64 bits hell</strong></p>
<p>Having a full 64 bits OS running on a 64 bits machine can only be a good thing, right? Well&#8230; maybe not.</p>
<p>I&#8217;m a little crazy and my organizational skills might be very well defined by the word &#8220;chaos&#8221;, but I&#8217;m not crazy enough to do this in the space of two days without having tested all this stuff first and document the important details. So, before trashing our G5 Xserve, I grabbed an old PowerMac G4, installed Leopard Server and all the stuff that really needs to work. The most experienced of you should be smiling by now. Although it seems that the only important difference between both CPUs for the matters we are discussing is just speed, there&#8217;s a really important one: 32 bits VS 64 bits. The G5 is a full 64 bits CPU, and the G4 is 32 bits. Up to Tiger, this is not a problem at all, because most of the OS was also running in 32 bits. This included most services, like DBs and Apache. On Leopard, everything (or close to that) is compiled to four different architectures: PowerPC 32 and 64 bits, and Intel 32 and 64 bits. We&#8217;ll come back to this in a minute.</p>
<p>Mac OS X Server is bundled with MySQL, PHP and Apache, but not with PostgreSQL. As I prefer PostgreSQL to MySQL by far, I tend to use PostgreSQL with all the applications I can, including my own WebObjects applications. So, I compiled and installed PostgreSQL on the server. As I also need PHP applications to access PostgreSQL databases, I had to download PHP source code and recompile it with PostgreSQL support (you gotta love a language where you have to recompile the whole damn thing to add support to a DB&#8230;). But, to compile PHP with support to MySQL (and PostgreSQL) I need to have the MySQL headers and dynamic libraries. Well, Mac OS X Server is bundled with MySQL binaries, but not the headers or libraries. As there were no binaries available for PowerPC 10.5 on the MySQL page, I also had to grab the source and recompile all this stuff.</p>
<p>This is where problems started. I recompiled MySQL, and put it working after some struggle (I really hate MySQL). Then I recompiled PHP. Installed it, added the LoadModule directive to the apache config file, and restarted apache. Bum. Explosions. Apache would not start. It said that the PHP module was compiled for the wrong architecture. I started to thing, WTF, are you telling me that my Xserve just compiled PHP&#8230; for Intel? Why did this work on the test G4 box? Well, what other architecture could it be? :P I started googling for the problem and I got it: apache is compiled for all the four architectures I referred above, and it always runs with the most appropriate one for the machine. In the Xserve case, it uses the PowerPC 64 binaries. The problem is that PHP had been compiled for 32 bits only. Ok, no problem. Go to PHP dir, make clean, poke around with the environment variables, recompile the thing for 64 bits. Bum. More explosions. Guess what, MySQL was NOT compiled for 64 bits! Ok ok, one more level deep in the stack, go to MySQL directory, blablabla, recompile and&#8230; BUM! Yet another explosion. Now this one was more complicated. Apparently some of the libraries on the MySQL source code package were not being compiled for 64 bits. So, no 64 bits MySQL means no 64 bits PHP that means no runnable PHP with 64 bits apache that means falling back to Apple&#8217;s branded PHP that means&#8230; no PostgreSQL.</p>
<p>From what I saw on the Net, convincing MySQL to compile on 64 bits was not a road I wanted to go into. Also, <a href="http://www.entropy.ch/phpbb2/viewtopic.php?p=10862&#038;sid=e360a5347de4022da06403f3ce50faf2">one of the pages I found </a>about the &#8220;wrong architecture&#8221; problem when starting Apache actually suggested to go in the opposite direction: grab Apache source code and recompile it in 32 bits. Using the mention configure command (./configure &#8211;enable-layout=Darwin &#8211;enable-mods-shared=all) I compiled the exactly same Apache version that Apple bundles with Leopard Server, and installed it over the Apple branded one. That made it all work, now on 32 bits. Of course, if you follow this trick, please keep in mind that this may break in future system updates. If some Apple system update replaces apache, it will not start unless you recompile it again for 32 bits only, or remove the PHP module.</p>
<p>This 64 bits mess is actually a very nasty problem, and makes me think what I&#8217;m actually gaining in all this. And the answer is: zero. My server has one GB of RAM, and will probably never have more than 4. If, for some reason, we actually need to boost the memory so far, it certainly won&#8217;t be because of Apache. It gets me thinking about actually how many people will actually <em>need</em> apache to run in 64 bits mode. If it&#8217;s more that 1% or 2% of the Xserve users, I&#8217;ll be very amazed. And what do I loose? A lot. Not all the open source projects compile easily in 64 bits mode (I know MySQL that comes with Mac OS X Server is compiled for 64 bits, but for some reason the needed fixes for that are not in the public MySQL source code tree), Apache may stop working at all in the next system update, and I had a lot of extra work. Maybe Apple should provide an easy way to switch this kind of stuff between 32 and 64 bits mode at will. Having only one OS version to all the architectures is interesting, but solving the problems that it creates is not.</p>
<p><strong>Wrapping up</strong></p>
<p>Everything is working now, after an entire weekend spent behind many terminal windows. Unfortunately, I have to say that my opinion about Mac OS X Server is not the best one. I have been working lately with FreeBSD. My experience with FreeBSD is way, way less than the experience I have with Mac OS X, so there are probably many downsides in FreeBSD I had not yet to deal with. That being said, I think Mac OS X Server is a very easy to use OS, as long as you keep using the tools Apple provided. As soon as you need different tools, specially the ones that tinker with Apache, you&#8217;ll start regretting liking computers in the first place. And surprisingly, you start to find that it&#8217;s actually <em>easier</em> to do it in a FreeBSD server. Every software I installed so far in FreeBSD (including WebObjects) was installed in a very easy and straightforward, painless way. Just browse the ports tree, make install clean and there it is. No crazy problems, everything is made to work with everything. And the default configurations are usually safer than Apple&#8217;s.</p>
<p>It makes sense: although FreeBSD guys don&#8217;t do beautiful GUIs and assistants, they work hard to make sure the system Works. All of it, including all the ports. And most important, not just it works, but it <em>works together</em>. If I had to use a word to define FreeBSD, I would pick &#8220;consistency&#8221; without hesitation. Even WebObjects, which does not have an &#8220;official&#8221; port on the FreeBSD port tree actually installs easier in FreeBSD than in OS X (due to the hard work of Quinton Dolan that created a FreeBSD port of WO). And face it: probably all the software you need exist in the port tree. It&#8217;s HUGE. And if it doesn&#8217;t, you can always install it using the classic UNIX way.</p>
<p>The Apple way is different. Apple picks a very small range of software, compiles and packages it in a very easy to use OS. It&#8217;s really easy, way more than FreeBSD in many ways. The problems appear when you conclude that the bundled software is not enough, and you want to install your own. And when that happens, you are completely on your own. You&#8217;ll start fighting Apple sometimes weird configurations and file system structure, you may run in binary architecture incompatibilities like I did, and so on. And you&#8217;ll probably need to do this, because what comes bundled with OS X Server is probably far from enough to get the job done.</p>
]]></content:encoded>
			<wfw:commentRss>http://terminalapp.net/migrating-to-leopard-server/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>drawImage performance on Leopard</title>
		<link>http://terminalapp.net/drawimage-performance-on-leopard/</link>
		<comments>http://terminalapp.net/drawimage-performance-on-leopard/#comments</comments>
		<pubDate>Wed, 27 Feb 2008 16:54:31 +0000</pubDate>
		<dc:creator>Miguel Arroz</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[WebObjects]]></category>

		<guid isPermaLink="false">http://terminalapp.net/drawimage-performance-on-leopard/</guid>
		<description><![CDATA[A not very fast but handy way to downscale images in a WebObjects application is using Java 2D APIs, with code like this: BufferedImage reducedImage = new BufferedImage(newX, newY, BufferedImage.TYPE_INT_RGB); Graphics2D g = reducedImage.createGraphics(); g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BICUBIC); g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); g.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_SPEED); &#8230; <a href="http://terminalapp.net/drawimage-performance-on-leopard/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>A not very fast but handy way to downscale images in a WebObjects application is using Java 2D APIs, with code like this:</p>
<p><code><br />
BufferedImage reducedImage = new BufferedImage(newX, newY, BufferedImage.TYPE_INT_RGB);<br />
Graphics2D g = reducedImage.createGraphics();<br />
g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BICUBIC);<br />
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);<br />
g.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_SPEED);</p>
<p>g.drawImage(originalImage, 0, 0, newX, newY, 0, 0, originalImage.getWidth(), originalImage.getHeight(), null);<br />
g.dispose();<br />
</code></p>
<p>Although not blazing fast, this is enough for many applications. I could reduce a 7 Mega-Pixels image to something like 250 pixels wide in about one second, or less, in my PowerBook G4. But this was in Tiger.</p>
<p>In Leopard, as some of you may have noticed (and if you have applications deployed on Leopard Server, be aware) this is incredibly slow. When I say slow, I say five minutes, or even more, with the CPU being used at 100% during that time.</p>
<p>There are two reasons that lead to this. The first (which is not a problem in itself, but it&#8217;s a cause of the problem): Apple switched from Quartz to Sun2D graphics engine as the default one for Java applications on Leopard. So, all your image manipulation is being done using the Sun pipeline now. This would not be a problem, except for the second reason: <del datetime="2008-03-18T17:58:17+00:00">the Apple JVM implementation has a bug that is slowing Sun&#8217;s pipeline drawImage method to a crawl</del>. Actually, that was not the real reason. I testes this on FreeBSD (using Diablo JDK) and the speed was similar to Leopard&#8217;s. Sun2D is REALLY slow, to the point of being useless. I&#8217;m now using ImageMagick.</p>
<p>The only solution for now is forcing the application to use Quartz engine. You can do that using the command line option -Dapple.awt.graphics.UseQuartz=true. And, of course, <a href="http://bugreporter.apple.com">file a bug</a> on this!</p>
]]></content:encoded>
			<wfw:commentRss>http://terminalapp.net/drawimage-performance-on-leopard/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
