Skip to main content

Think Different

I've been a Mac fan since the mid-80s. I was the proud owner of a Mac IIsi and then a PowerMac 7100. Both machines got me through high school & college, where there were Macs-a-plenty. However, once I joined Oracle, I was forced back into the world of Windows.

Given that Oracle gave us Windows laptops, that's what I used for the better part of my 10 years there. The closest I came to getting a Mac was a hand-me-down old beater PowerBook G4 667Mhz that I inherited for a while. It worked, but it was definitely not in a rush to do anything. When the screen saver kicked in, the fan immediately spun into high gear.

Now that I no longer work for Oracle, I no longer get "free" laptops. I did initially buy a Dell when I left Oracle instead of the Powerbook that I really wanted, as I needed to run Oracle eBusiness Suite & TOAD.

Well, here I am almost a year later, the proud new owner of a MacBook Pro. And I couldn't be happier. Well, I could, if I got a free upgrade to the new Core 2 Duo MacBooks, which of course, came out just a few months after I bought mine...

In any case, it is so refreshing to use Mac OS X. From the second I booted up the machine to now, I've been impressed time and time again by its pure elegance. The best way that I can describe OS X is that it is "simply a completed thought." A group of engineers at Apple actually sat down and thought through what people will actually do with their machines - not what they may possibly want to do - and THEN designed their software with that in mind.

Take this example: We bought a video camera after our daughter was born. Naturally, we took a bunch of video of her with the thought being that I could make a DVD & send it off to our families in California, Connecticut & Florida (yes, they could barely live further apart and still be in the US).

So I plugged the camera into my PC, and was immediately prompted with the Auto-Detect Wizard which claimed to recognize my camera, but then at some point, asked for the drivers, which I thought I had on the CD, but after it rebooted, it complained they were out of date, so I had to go to the camera's web site, download new USB drivers, install them, reboot, try to get the camera to be recognized by Windows, sent an e-mail to the camera's manufacturer explaining my plight, uninstalled all of their software, re-installed it, tried again and was able to get grainy 2-bit quality video, which clearly was not what I expected, more e-mails to and from support, another de-install and re-install, and then for the heck of it, I installed the software on my other PC, rebooted, updated, rebooted, and alas - after 2 days, 2 machines and a flurry of e-mails back and forth from support - the video camera worked with my PC!

After getting the Mac, I plugged the camera in, stated iMovie, and it just worked.

Apple designed their OS to make some assumptions for us. For example, if Mac OS X notices a video camera plugged in, it makes the bold assumption that I want to use that camera to transfer video to my Mac. Thus, it quietly does what it needs to do - downloads, installs, updates, whatever - all quietly in the background. I don't get a chance to tell it otherwise, and frankly I don't care, as the assumption that Apple makes is that 99% of people who plug a camera into a Mac want to transfer video. The other 1% who want to do something else probably wrote their own driver anyways.

This level of quiet yet clever integration is evident throughout the OS. Add a contact to your Address Book, and you can instantly refer to them in Mail or iCal. Associate a contact with an AIM username, and the full name of that user is displayed in iChat. All of my pictures which are organized in iPhoto are easily available in Keynote & Pages. Same with my music in iTunes. Simply elegant integration which doesn't get in your way.

Like anything, the Mac is not 100% perfect. There's a few things that are quirky that take some getting used to. Applications will crash - although less frequently than in Windows. Technology is not, and probably never will be, perfect. However, it can be more pleasant to interact with, and that's what Apple has achieved with OS X.

I'm going to expand the focus of this blog a bit and try to also include some Mac OS X entries. Some will be related to Apex & Oracle, while some will focus on OS X only.

Comments

Michael A. Rife said…
I have never used a Mac, but I love the current Mac vs. PC commericals.

Mike
Anonymous said…
I picked up a Mac mini a bit over a year ago. Compared to using a Windows Box I found it to be like a free ride 5-8 years into the future.

As you note, OS X is not perfect, but it's much less flawed than Windows!

About the only thing I can't do on my mini that I'd like to is run Oracle XE! I can run 10R1 and load up APEX, but the memory footprint of a running 10g instance sure takes a bite out of things. XE is tuned up to be much leaner. If anyone has any suggestions as to how to tweak a standard 10g install to keep the RAM usage down to close to XE's I'd love to hear it.

I'm optimistic that someone with more time and knowledge than I will manage to port the XE for linux release to FreeBSD and hopefully even OS X. Failing that I may just try and pick up a cheap box (sans Windows... tricky) and use Unbuntu as an OraXE platform.

I'm also hoping we'll see Ora 10gR2 for Mac OSX, but I'm guessing those of us on the Power PC platform may never get 10gR2. Oracle will likely release for intel only.

Looking forward to more Mac/Oracle posts!
Scott said…
Keep watching this blog, as that's one of my next subjects: 10gR2 on Intel Macs.

- Scott -
Well I got 10g R2 to work in CentOS in a Parallels VM (Intel iMac), but I haven't yet figured out the networking setup to make it usable from outside the VM. Looking forward to any tips you might have.
Anonymous said…
YESCH...
Anonymous said…
All I want for Christmas is a nice neat Oracle XE package to run on my Powerbook. Surely that's not much to ask?
Anonymous said…
I would love that SQL Developer would be so nice as SQL Navigator or TOAD...
SQL Developer is far far away from Quest tools!
Scott said…
I would love that SQL Developer would be so nice as SQL Navigator or TOAD... SQL Developer is far far away from Quest tools!

I can't say I agree with that statement. I've been using SQL Developer for over a year now, and I've found it to be quite adequate for my needs.

Sure, it's not TOAD, but I think in some sense, that's a good thing. How many of the features of TOAD (or Word or Excel, for that matter) do you actually use?

SQL Developer has a ton of promise - it's been out for just over a year, and already has the basics covered, as well as some new & innovate features. Plus, the price is right!

- Scott -
Scott, have you had any luck getting Parallels set up? I managed to access OEM from Safari but realised it was never going to work properly with DHCP (the default). I tried setting a static IP address and promptly lost all network connectivity within the VM. Parallels tech support keep suggesting solutions involving DHCP and I keep trying to explain to them what Oracle is.
Scott said…
Scott, have you had any luck getting Parallels set up? I managed to access OEM from Safari but realised it was never going to work properly with DHCP (the default). I tried setting a static IP address and promptly lost all network connectivity within the VM. Parallels tech support keep suggesting solutions involving DHCP and I keep trying to explain to them what Oracle is.

Yes, I have. Here's the quick-quick guide, not guaranteed to work, but it did for me:

1) Fire up a 100% clean install of WinXP in Parallels
2) Release the IP address (ipconfig /release from a Command Prompt)
3) Install Oracle, using localhost when asked for a hostname
4) Change the XP install to use a static IP address. Use 192.168.1.1. as the Gateway and add the DNS from your ISP.
5) On the Mac side, add an entry to the /etc/hosts file which maps the IP address you assigned XP to a friendly name

That did the trick for me!

Thanks,

- Scott -
Thanks for the suggestions. I'll see if I can translate "ipconfig /release" into CentOS (I may have to buy a copy of XP sooner or later, but so far I've managed to avoid it). I think Gateway and DNS settings could be what I've been missing.

Just checking -

Which network option did you choose for the VM: Bridged Ethernet, Host-Only or Shared?

When you changed the XP network settings over to a static address, was that just in XP or in Parallels as well? I'm still a bit confused about Guest OS settings vs Parallels VM settings. Also did you lose your Internet connection in XP when you switched off DHCP, or is that where the DNS and Gateway settings came in?

How did you choose 192.168.1.1?

How do you find the DNS from your ISP?

Thanks!
Scott said…
Which network option did you choose for the VM: Bridged Ethernet, Host-Only or Shared?

Bridged Ethernet; Default Adapter

When you changed the XP network settings over to a static address, was that just in XP or in Parallels as well?

Just in XP. You can't set an IP in Parallels, just the way in which the host OS gets its IP.

Also did you lose your Internet connection in XP when you switched off DHCP, or is that where the DNS and Gateway settings came in?

That's where the GW & DNS come in - I have full Internet access from my hosted XP VM.

How did you choose 192.168.1.1?

How do you find the DNS from your ISP?

ipconfig should reveal both of these values.

Thanks,

- Scott -
> ipconfig should reveal both of these values.

I've been trying that and reading the man pages but to be honest it's a bit of a learning curve. What ipconfig command line did you use and how did you interpret the output?

I found various suggestions at forums.macosxhints.com/archive/index.php/t-28219.html, for instance

ipconfig getpacket en0

which suggests the router is 10.0.1.1, and

route -n get default

which suggests the gateway is also 10.0.1.1. I don't see any 192s anywhere. What is significant about the 192 range?

Also how did you chooose the static IP address for XP? Was it just a random unused one in the range 10.0.1.x, say 10.0.1.42?
Anonymous said…
In Gnome or whatever gui, just use the graphical tools to configure the network, DNS, and default gateway. You don't need to do it all command line unless you are interested in becoming a Unix Admin or something.
I am using the GUI tools. The problem is knowing what values to type in ;)

I think I have it working now. My router and DNS both needed to be 10.0.1.1, and the static IP address for CentOS needed to be 10.0.1.x, where x > 2. You have to specify router and DNS, and it helps to get the IP address right. I still haven't quite figured out what the rule is for the address though. I put mine in the same range as the host OS (though Howard Rogers and Scott used completely different approaches). 192.168.1.1 didn't work for me btw. 10.0.1.42 did.

Popular posts from this blog

Custom Export to CSV

It's been a while since I've updated my blog. I've been quite busy lately, and just have not had the time that I used to. We're expecting our 1st child in just a few short weeks now, so most of my free time has been spent learning Lamaze breathing, making the weekly run to Babies R Us, and relocating my office from the larger room upstairs to the smaller one downstairs - which I do happen to like MUCH more than I had anticipated. I have everything I need within a short walk - a bathroom, beer fridge, and 52" HD TV. I only need to go upstairs to eat and sleep now, but alas, this will all change soon... Recently, I was asked if you could change the way Export to CSV in ApEx works. The short answer is, of course, no. But it's not too difficult to "roll your own" CSV export procedure. Why would you want to do this? Well, the customer's requirement was to manipulate some data when the Export link was clicked, and then export it to CSV in a forma

Refreshing PL/SQL Regions in APEX

If you've been using APEX long enough, you've probably used a PL/SQL Region to render some sort of HTML that the APEX built-in components simply can't handle. Perhaps a complex chart or region that has a lot of custom content and/or layout. While best practices may be to use an APEX component, or if not, build a plugin, we all know that sometimes reality doesn't give us that kind of time or flexibility. While the PL/SQL Region is quite powerful, it still lacks a key feature: the ability to be refreshed by a Dynamic Action. This is true even in APEX 5. Fortunately, there's a simple workaround that only requires a small change to your code: change your procedure to a function and call it from a Classic Report region. In changing your procedure to a function, you'll likely only need to make one type of change: converting and htp.prn calls to instead populate and return a variable at the end of the function. Most, if not all of the rest of the code can rem

Logging APEX Report Downloads

A customer recently asked how APEX could track who clicked “download” from an Interactive Grid.  After some quick searching of the logs, I realized that APEX simply does not record this type of activity, aside from a simple page view type of “AJAX” entry.  This was not specific enough, and of course, led to the next question - can we prevent users from downloading data from a grid entirely? I knew that any Javascript-based solution would fall short of their security requirements, since it is trivial to reconstruct the URL pattern required to initiate a download, even if the Javascript had removed the option from the menu.  Thus, I had to consider a PL/SQL-based approach - one that could not be bypassed by a malicious end user. To solve this problem, I turned to APEX’s Initialization PL/SQL Code parameter.  Any PL/SQL code entered in this region will be executed before any other APEX-related process.  Thus, it is literally the first place that a developer can interact with an APEX p