Oct 13, 2007

Matt's Pensieve: PC vs. Mac Pet Peeves

Matt Freestone is one of my best friends and favorite associates. We've worked together long enough now and agree on so many things that people we work with even get us mixed up now and then.

So I was happy to read something that finally gives people something substantive to tell us apart. Mike will be the one with the shiny MacBook Pro. Matt will be the one with the shiny PC.

Between Matt's post and my previous post on why I use a Mac, it's easy to see that to each is own, and that even goes for OS religions.

Oct 12, 2007

10 Reasons Why I Use a Mac

So I've been using a Mac in some way or another for just about a year and a half now. I had long been a user of Windows and even DOS. About 4 years ago I started to experiment with Linux and liked it, but was deterred by how difficult it was to do what should be simple, like watch a DVD. I had long been a Mac hater. Like most Mac haters, it was the culture more than anything that turned me off. The other big reason I hated it was because I thought it didn't have any power for anyone that wanted to get "real" work done.

Now that I have switched to a Mac, I am amazed at how much I love it. It's not perfect, mind you, but it is by far the best experience I've ever had on a personal computer. As much as I love it, I am astounded when I see people buy a computer without taking into consideration a Mac. So I thought I would list 10 reasons why I use a Mac to see if I can illustrate why it should be considered. This is not meant to be a marketing post for Apple. It's just a way for me to explain why I will stick with Apple over Windows.


1. *nix
The number 1 reason I love my Mac so much is because of the BSD Unix that it runs on. This not only provides me with the memory management, file system, and folder structure that is characteristic of such a system, but it gives me the ability to harness the power of a true terminal / shell. Although this may not be a big deal for most users, it's a huge deal to me. I love my bash prompt. iTerm is almost always running and I love it because I can simply and quickly accomplish many things that make everyday use of my computer more pleasing and more effective.

The other fantastic benefit of using a traditional Unix folder structure is that I no longer have to deal with the Windows Registry. If I backup my home folder and my computer completely dies, I can restore my home folder and I'm back up and running, preferences, settings, and all, in no time. You would never dream of doing this in Windows.

2. Nagging
I can't stand Operating Systems that want to tell you everything they are doing... constantly. Windows will not leave you alone no matter what you want to do. I often sit in meetings with people trying to demo something on Windows. It literally takes them as much as 10 times longer to do something than it should because they have to confirm that they really want to do something. Windows also constantly wants to brag about how it does something for you. The little popup in the bottom right corner wants to inform you every time Windows accomplishes anything. I'm sorry, but this is annoying.

For the most part, OS X only notifies you if something goes wrong. I don't get a popup for everything and anything it does. It's clean and it leaves you alone so you can do your work.

3. Organization
When I switched from Windows to a Mac I wanted to copy photos, music, and documents to my Mac. Then it hit me, I had no idea, despite my best efforts to organize, where all that stuff was! Sure, I had "My Music", "My Documents", and "My Pictures" folders but almost every app I used on Windows put their stuff anywhere they liked on my hard drive. It was a nightmare trying to figure out where everything was. In fact, I just gave up and started over bringing this stuff to my Mac from it's original source.

iLife (iTunes & iPhoto in particular) has changed everything. All my music is now well organized. My documents are all in one place. My photos are all neatly organized and easily accessible. That is how it should be. My "Home" folder has everything that I want in it. I can quickly and simply find everything that belongs to me on my computer.

4. Stability
My first Mac was a Mac Mini G4. My wife still uses this computer and it is the main computer that the family uses to browse the web, manage finances, and maintain music, photos, and home movies. This little box has NEVER locked up or forced us to reboot. The only time it is rebooted is when we shut it off when we go on vacations and when we install updates that require a reboot (about once a month). That's it!

I would never dream of having this stability on Windows. When using Windows, I had the habit of making sure I completely shut it down when I was finished using it. Then when it was time to use it again, I had to wait for it to boot. Routinely as the day went on, I would have to reboot to regain speed that I was losing as the day progressed. Again, this is just not going to allow you to be effective in your work.

5. Automation
Part of using a computer is repetition. We do the same things all the time. Sometime those things are monotonous and just take too much time. Enter Automator, Applescript, and the shell. I love to find ways to work smarter. These tools on the Mac help me do that by automating repetitious activities. For example, one of the tools I use leaves little "buffer" files all over the hard drive. (Note, this is an Oracle product...) So, at 8:00 every morning, an Automator task automatically launches, finds all of these pesky buffer files on my hard drive, and deletes them for me. I have also used Automator to setup development environments, swap my command and alt keys for me when using a Microsoft Keyboard, mount network folders, backup Podcasts, and manipulate large amounts of images all at once.

6. Simplicity & Usability
OS X and accompanying applications excel at letting you do things that should be easy without any hassle while not completely taking away full control. For example, when I plug in my digital camera, iPhoto detects it and lets me download my pictures into my library by pushing 1 button. It even alerts me if I, for some reason, had already downloaded that picture before so that I don't get duplicates. This seems like such a simple thing, but I can't tell you how many times I've had to try to sort out duplicates and try to find lost photos on a Windows machine.

This is just an example. Simplicity is one of the hallmarks of OS X. It's in Apple Mail, iPhoto, iTunes, etc. It's what made the iPod what it is. I not only appreciate it, but it's the first thing I notice that is missing when I use Windows.

7. Control
OS X puts all the controls for my machine in one place, "System Preferences". When I first started using OS X, I was constantly looking for the "Control Panel" equivalent. I couldn't believe that everything I needed was in the "System Preferences". Well, after a while I realized that System Preferences is a very simple interface where I could easy find network settings, display settings, keyboard settings, etc. It was all there, neatly organized for me and, most importantly, easily accessible. Here's the test. Without using the Windows command prompt, how many clicks away are you from knowing your IP Address. I can tell you, it's a lot more than the 3 clicks I use to find it in OS X.

When problems do arise, and they do, I appreciate that I can always bring up my terminal and quickly get to the guts of my system to fix problems. This requires a little bit more know-how, but since I have the knowledge, I appreciate it. This isn't so with Windows. When you have a problem, there just aren't available (in the OS ) the tools that you have in OS X.

8. Security
I can keep this one really short. No viruses, no trojans, no zombies, no spyware, no worries. I've never had to even think about security since moving to a Mac. And I don't have to run a resource heavy virus scanning tool. It's a whole new world on OS X; it's a breath of fresh air! Sure, there are still security risks. But OS X takes care of the majority of them for me, so much so that I don't even worry about it.

9. Quality
Again, I can keep this one short. Using OS X is like moving into a new house. Everything is clean and crisp. It looks nice and feels nice. Everything works the way it should. You don't feel like you have to constantly fix things that are broken. It just works and works great.

10. Applications
Most OS X applications I use are fantastic. They are well built, simple, powerful, and fun to use. My favorites include Quicksilver, Journler, iTerm, TextMate, Adium, Skim, Voodoo Pad, and of course the iLife suite. Not to mention the oft overlooked applications that just come with OS X: Mail, iCal, and Address Book. I love the consistent user experience, integration, and quality that I get with these applications.

I should also note that it is marvelous to not have to deal with Windows Installer. Most apps install simply by dragging an icon to my Applications folder. This stumped me when I first switched to a Mac because I was used to applications needing to install components all over the hard drive and registry. Not anymore! Click and drag... wonderful and liberating.

Summary
I've really hyped up what I love about my Mac in this post. OS X and being a part of the Apple culture does have its flaws. In addition, there are things on Windows that I miss (window resizing and decent Family History software to name just 2). But for the most part I will use my Mac over a Windows PC any day.

I hope this post was helpful to some of you who may not have considered a Mac, or are contemplating buying a new PC in the future. I have not listed all of the things I love about my Mac, but I offer these these things to ponder and consider. Good luck making your decision!

Oct 8, 2007

BI, where's your focus?

I'm seeing a lot of really interesting ways of displaying / visualizing data these days from the big Business Intelligence (BI) companies and from some smaller, even web-based, companies. There is a small effort to utilize Web 2.0 technologies, although I think for the most part the people building BI apps don't understand Web 2.0. (I've ranted on this before.)

Data Visualization is absolutely essential in BI tools. But in then end, I'm just looking at charts and data. Anything beyond that is either organization of data and eye candy or delivery (getting it on the web / dashboard / email / etc). But is this where the real focus should be?

I don't believe that enough attention is being given to meta-data. Meta-data, or data about the data, should be generated and gathered into a repository and then opened up to the world. Imagine a meta-data repository that could be searched and made available using all these neat visualization tools. The key is that the meta-data also knows how the data should be organized and delivered to the BI / Data Visualization tools.

Here's how I see it working. I pull up my Dashboard on my Mac which has a simple widget with a search bar. I type "Gross Sales" and then I'm presented with search results from my meta-data repository of all the data elements in my enterprise that match the criteria. In the list I see "Gross Sales - The total gross sales of products". I click on that and another small list appears below with check boxes. Items include "by Region", "by Product", etc. I choose the categories that I want and click Run. I am then prompted for a date range or a list of common / custom filters. When I click "Generate", the data comes up in a chart and I'm given a limited number of controls to customize the display. When I click Save, my chart is saved and automatically updated from that point on. My BI tool then becomes my own dashboard already built into OS X.

What's going on in the background? Utilizing web services, I'm making several calls to my meta-data repository. Once enough information has been collected from the end-user on what they want to generate a database (or cross-database) query then the meta-data repository generates the query and runs it on the database. The third party application then, also using web services, requests the data which is returned in a standard XML format for manipulation.

The real trick here is that you need an amazingly intelligent meta-data repository / server. That is why I think this is where the focus should be. We have enough tools to make our data look pretty, what we really need are systems that know and understand our data so that we can make informed decisions without all the domain knowledge that is currently housed in the heads of data stewards in the enterprise.

There are a lot of really bright innovative people out there that can solve this problem. In my experience, groups of individuals are capable of solving any problem with the proper focus. Right now the BI world is focused on the easy stuff. Now let's buckle down and get on with the next frontier of Business Intelligence - Data Intelligence.

Oct 6, 2007

Parallels Shared-Networking on the Fritz

I love Parallels and I use if often. For networking, I have chosen Shared Networking for ease of use and so that I only have to have a VPN client on my Mac. Last night I was in need of printing from Word 2007 to my shared printer. But for some reason, my Parallels machine couldn't connect to the network. I looked at the IP settings and sure enough, it wasn't getting an IP address from Parallel's NAT service.

Well, I fought with releasing and renewing the IP address to no avail. Then, because I was frantic, I switched the networking to Bridged. The Parallels machine got it's IP from my router and I was back in business. But I don't want that machine to use Bridged networking permanently.

So I fought with it again this morning. With some help from Google, I discovered that the NAT service is located at /Library/StartupItems/Parallels/pvsnatd. Issuing a simple stop and start from the command line was all it took. Within seconds, my Parallels machine was able to get an IP address from the NAT Service and I was back in business. Strange that the NAT service was either hung or just stopped working.

Commands issued:
sudo /Library/StartupItems/Parallels/pvsnatd stop
sudo /Library/StartupItems/Parallels/pvsnatd start


Hope this helps anyone else out there that runs across the same issue.

Oct 4, 2007

Hey world, I'm on Twitter!

Yep, that's right. I'm on Twitter. I've been on it for about a week now. So far I've really enjoyed getting tweets from those that I follow. I've also been adding my own. Then it hit me... NO ONE IS READING MY TWEETS! Why am I doing this? So I invite the world to follow me. I promise to be somewhat entertaining, informative, and always open to discussion. If you are a fellow twitter person, I'd be glad to follow you too! Let's see if this twitter thing can actually bring value.

Oct 3, 2007

Web 2.0 Components Are Tomorrow's BI Front End

Business Intelligence (BI), generally speaking, is behind the game. This Blog post talks about something that I've been thinking about for about 2 years now. BI vendors have been extremely slow at adopting Web 2.0 techniques and technologies into their primary applications. I've seen Business Objects begin to dabble in the realm but the potential there is enormous and virtually untapped.

Will it take the "Google of BI" software to revolutionize the industry? I don't see any of the major BI players, including Oracle, Business Objects, Cognos, and MicroStrategy, being able to really harness the power of Web 2.0. Why? Momentum. These company's have too much invested in their monolithic, exceptionally complex, forklift-implemented applications and architectures. Their only hope is to buy a smaller, innovative company and start swapping out components in their architectures. By the time they pull this off, it will be too late.

So where are the BI equivalents to Flickr, YouTube, Google, Facebook, etc.? Hmm... I don't see any. Where are they? Anyone else see the void/opportunity that I see?

Oracle Pushes Enterprise 2.0

No other company is in a better position pull off Enterprise 2.0 than Oracle. There are others that are close, but Oracle has a huge edge up on the competition. The main component (other than cash) that gives them this edge is Fusion. Think of Fusion as a central information hub that contains and maintains business rules. All information in the enterprise eventually ends up going through this hub for processing and distribution. By abstracting business rules into an Enterprise Service Bus (ESB) and by providing consistency from Database to CRM to ERP, Oracle can, with the proper vision, make Enterprise 2.0 a reality.

Oracle continues to bring in big revenues and don't be surprised if that trend continues. No other provider can offer the complete dream that Oracle can. If you think Oracle is going to drift away being overcome by open source competition, you are in for a big surprise over the next 5 years.

Oct 2, 2007

Ease of Use. Apple Wins!

I was just noticing that you can download your contacts in LinkedIn into your address book. I was happy to see that they had instructions for Windows and Mac. But notice (by clicking the URL below) how many steps it takes to get the export imported into the various address books.

View Screencast

Is it any wonder that more and more people are switching to a Mac?

Oct 1, 2007

Paul Potts

The story of Paul Potts blows me away. I was introduced to his story last Friday when one of my professors presented it as sort of a "feel-good" moment. More important than his voice, Paul shows that there is talent out there to be discovered, and when it is, it motivates and inspires us all.

Sep 24, 2007

Setting up Oracle on Ubuntu Running on Parallels

I recently created a Parallels image for some classmates running Ubuntu with Oracle 10gR2. I included instructions on how I created the image and I thought it would be helpful to anyone else out there to see how I did it (not necessarily how it should be done). To make this post more searchable from Internet search engines, I've included all the steps here rather than posting a link to a pdf. Enjoy!

SUMMARY:
Ubuntu Server
User: duser, pw: duser
User: oracle, pw: oracle
Hostname: vm-ubu-oracle
Static IP: 10.211.55.10
Webmin:
User: root, pw: duser
Link: http://vm-ubu-oracle:10000
Oracle:
SYS pw: oracle
Admin: http://vm-ubu-oracle:1158/em
TNS Entry:
ORCL10 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = vm-ubu-oracle)(PORT = 1521))
)
(CONNECT_DATA =
(SID = ORCL10)
)
)


Setup Parallels Networking
Note: All networking is using the Parallels default for shared networking. Some of this has to be tweaked a little to allow for static IPs and to ensure a consistent network between your Ubuntu Server and your Mac.
Go into your OS X System Preferences, Network
Click on Parallels NAT, Configure
Click on TCP/IP
Change Configure IPv4 to "Manually"
Set the IP Address to 10.211.55.6
The last number in the IP address can be anything between 2 and 9. Whatever you choose will be the IP that the Ubuntu server will see your Mac as. I will be using 6 throughout this documentation. (Also set: Subnet Mask: 255.255.255.0, Router: 10.211.55.1)
Click Apply Now and close System Preferences
Open Parallels, Preferences
Under the Network Tab, ensure that "Enable DHCP scope for shared networking" is enabled.
The 3 IPs should be as follows:
Start: 10.211.55.10
End: 10.211.55.254
Mask: 255.255.255.0

Download the Server Edition (492 MB) of Ubuntu from here:
http://mirrors.xmission.com/ubuntu-cd/feisty/ubuntu-7.04-server-i386.iso
Create a Parallels Image
Custom Image
OS Type: Linux
OS Version: Ubuntu Linux
RAM 512Windows XP CD Key
Create a New Hard Disk
15000 MB, Split Disk, Expanding
Shared Networking
Default Adapter (networking), Connect on Startup
Name of Virtual Machine: Ubuntu Oracle
Optimize for better performance: Virtual Machine
Remove Floppy Drive and Sound Card.
Decrease video memory to 4MB.
Start Virtual Machine attached to installation ISO

Ubuntu Installation
Language: English, Country: United States, Keyboard US English
Hostname: vm-ubu-oracle
Partitioning: Manual - 1GB swap (required by Oracle). The rest for Primary Bootable.
Timezone: Mountain, Clock NOT set to UTC
Username: duser, Password: duser
Software to Install (leave blank)
NOTE (courtesy of http://paul.annesley.cc/articles/2007/05/01/ubuntu-704-feisty-server-parallels-cdromkernel-workaround):
On the “Installation Complete” dialogue, choose “Go Back”, and then select “Execute a shell” from the menu. Run the following commands (ignore any errors and accept defaults if prompted):

umount /dev/scd0
chroot /target /bin/bash
mount /dev/scd0 /media/cdrom
aptitude install linux-generic
aptitude remove linux-server linux-image-server linux-image-2.6.20-15-server
exit
shutdown -h now
Setup access and aptitude
login as duser
sudo visudo
add the following line if you wish to not be bugged when running sudo
WARNING! This isn't considered safe practice. I just do it because of the volume of sudo commands that will be entered during the setup. If you wish, you can remove these edits once the setup is completed to be safe:
duser ALL=(ALL) NOPASSWD: ALL
change the members line to read:
%admin ALL=(ALL) NOPASSWD: ALL
edit the apt sources list to pull from the online repository
sudo vi /etc/apt/sources.list
comment (#) out the line that starts: deb cdrom:[Ubuntu-Server 7.04...
update the local repository by running:
sudo aptitude update
install ssh and samba (accept defaults on dependencies)
sudo aptitude install ssh samba

Setup some Environment Variables (this is a personal preference and can be omitted)
Add the following lines to the ~/.bashrc file
if [ -f ~/.bash_env ]; then
. ~/.bash_env
fi
create a file in ~ called .bash_env
add the following lines to .bash_env
PS1=“\h: \W$ “
TERM=linux

Setup Webmin
Note: you should be able to login to the server using Terminal or iTerm. Check the ip address using ifconfig. The ip that my server got was 10.211.55.7. Yours will be similar. I would suggest using a terminal from here on out because of ease of copy and pasting commands and screen scrolling.
Download Webmin
wget http://downloads.sourceforge.net/webadmin/webmin_1.360_all.deb
Install prerequisites:
sudo aptitude install libauthen-pam-perl libio-pty-perl libmd5-perl openssl
Install webmin
sudo dpkg -i webmin_1.360_all.deb
Update your admin password
sudo /usr/share/webmin/changepass.pl /etc/webmin root
I used "duser" as the password
Navigate your web browser to https://:10000
You should be able to login as root with the password entered earlier

Setup Static IP
Login to webmin
Navigate to Networking, Network Configuration
Under "Interfaces Activated at Boot Time" click on eth0
Change the IP to static and apply the following:
IP: 10.211.55.10
You can use any range from 5 to 254. I will be using 10 from here on out
Broadcast: 10.211.55.255
Netmask: 255.255.255.0
Click Save.
Click the checkbox next to eth0 that you just modified and then click the apply button.
This will send your browser into a constant state of refresh. Just click stop and enter the new ip address in the address
Setup routes under Network Configuration
Default Router: Gateway: 10.211.55.1
Active Route 1:
Destination: 10.211.55.0
Gateway: None
Netmask: 255.255.255.0
Interface: eth0
Active Route 2:
Destination: Default Route
Gateway: 10.211.55.1
Netmask: (nothing)
Interface: eth0
Save changes and apply.
Setup a hostname on your Mac by adding the following to the bottom of the /etc/hosts file on your machine:
10.211.55.10 vm-ubu-oracle

Setup Samba
Samba can be setup manually from the command line, but webmin makes it simple
Navigate in webmin to Servers, Samba Windows File Sharing
Click on Windows Networking
Change Workgroup from MSHOME to WORKGROUP
this is for better integration with Windows if you ever need it
Set Server name to vm-ubu-oracle
Save
Click Edit Config
Scroll to the Share Definitions section and change the homes section to look like this (removing the semicolons):
[homes]
comment = Home Directories
browseable = yes
writeable = yes
Add your user to Samba by executing the following command:
sudo smbpasswd -a duser
(you should now be able to mount the home directory on your Mac from Finder using: smb://)

Setup Oracle Prerequisites
These instructions come courtesy of: http://www.dizwell.com/prod/node/52
For more detailed explanation of what we are doing here, please visit that site.
Install packages:
sudo aptitude install gcc libaio1 lesstif2 lesstif2-dev make rpm libc6 libstdc++5
sudo aptitude install unzip libxp6 libxt6 libxtst6
Setup the Oracle Users
sudo groupadd oinstall
sudo groupadd dba
sudo groupadd nobody
sudo useradd -m oracle -g oinstall -G dba -s /bin/bash
sudo passwd oracle
I set the passwd to "oracle"

Setup Kernel Parameters
sudo vi /etc/sysctl.conf
Add the following lines to the bottom of the file:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
(leave 1 or 2 blank lines at the end)
Reload the sysctl file by issuing the command:
sudo /sbin/sysctl -p
Update security limits
sudo vi /etc/security/limits.conf
Add the following lines (leaving blank lines at the bottom)
soft nproc 2047
hard nproc 16384
soft nofile 1024
hard nofile 65536
Setup the Oracle Environment
sudo ln -s /usr/bin/awk /bin/awk
sudo ln -s /usr/bin/rpm /bin/rpm
sudo ln -s /lib/libgcc_s.so.1 /lib/libgcc_s.so
sudo ln -s /usr/bin/basename /bin/basename
sudo mkdir /oracle
sudo mkdir /oracle/10g
sudo chown -R oracle:oinstall /oracle
sudo chmod -R 775 /oracle
Setup the Environment Variables
sudo vi /etc/profile
Add the following lines:
export ORACLE_BASE=/oracle
export ORACLE_HOME=/oracle/10g
export ORACLE_SID=orcl10
export PATH=$PATH:$ORACLE_HOME/bin

Install Oracle
Download the oracle installation file: 10201_database_linux32.zip
I used samba to copy it to the /home/duser/software directory
Change the ownership and move file to the oracle directory
sudo chown oracle:oinstall /home/duser/software/10201_database_linux32.zip
sudo chmod 775 /home/duser/software/10201_database_linux32.zip
sudo mv /home/duser/software/10201_database_linux32.zip /home/oracle
sudo aptitude install unzip
su - oracle
rm 10201_database_linux32.zip
Launch Installer from X11 terminal
Do not close the X11 terminal until the installation has finished.
Launch an X11 terminal or xterm compliant terminal (iTerm will not work)
ifconfig (take note of your ip address)
xhost +
ssh -X oracle@10.211.55.10
export DISPLAY=10.211.55.6:0.0
database/runInstaller -ignoreSysPrereqs

Oracle Installation
Most of the options will automatically set the values in the installer. I will only note items to be changed from the defaults below.
Screen 1 (welcome): Next
Screen 2 (Inventory): Next
Screen 3 (Installation Type): Enterprise Edition
Screen 4 (Home Details): Next
Screen 5 (Configuration Option): Create a database
Database Configuration: General Purpose
Database Config Options: Database Name=> orcl10, SID=> orcl10
Database Mgmt Option: Next
Storage Option: File System
Backup and Recovery: Next
Database Schema Passwords: Use the same for all accounts: oracle
Summary: Install

The installer will now install Oracle and Launch a new window to create the database.
When it is finished click Ok, the installation will proceed.
The Database Control URL is http://vm-ubu-oracle:1158/em
Execute the root scripts (accept defaults)
When it is finished, a dialog box will appear with the following information:
The following J2EE Applications have been deployed and are accessible at the URLs listed below.

iSQL*Plus URL:
http://vm-ubu-oracle:5560/isqlplus

iSQL*Plus DBA URL:
http://vm-ubu-oracle:5560/isqlplus/dba

Enterprise Manager 10g Database Control URL:
http://vm-ubu-oracle:1158/em

Setup Oracle to load during boot
Update the oratab
sudo vi/etc/oratab
Change the line that says:
orcl10:/oracle/10g:N
to: orcl10:/oracle/10g:Y
Edit dbstart
sudo vi $ORACLE_HOME/bin/dbstart
change the line that says:
ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle
to: ORACLE_HOME_LISTNER=/oracle/10g
Create the dbora file
sudo vi /etc/init.d/dbora
add the following lines:
#!/bin/bash
#
# /etc/init.d/dbora
#
# Startup script for Oracle databases

export ORACLE_HOME=/oracle/10g
export ORACLE_SID=orcl10
export PATH=$PATH:$ORACLE_HOME/bin

case "$1" in
start)
echo -n "Starting Oracle: "
su oracle -c $ORACLE_HOME/bin/dbstart
touch /var/lock/oracle

su oracle -c "$ORACLE_HOME/bin/emctl start dbconsole"
echo "OK"
;;
stop)
echo -n "Shutdown Oracle: "
su oracle -c $ORACLE_HOME/bin/dbshut
rm -f /var/lock/oracle
echo "OK"
;;
*)
echo "Usage: 'basename $0' start|stop"
exit 1
esac
exit 0

Save the file, then update the boot config:
sudo chmod 775 /etc/init.d/dbora
sudo update-rc.d dbora defaults 99

Sep 19, 2007

Binary marble adding machine

I ran across this site this morning and loved the video at the bottom. That is one cool piece of work.

Binary marble adding machine

Aug 30, 2007

Personal Finances Mockup

I have had a number of responses on my post about Quicken. Most of you wanted to see the spreadsheet that I talked about in that post. Well, at the possible expense of using the idea to become the next big breakthrough in personal finance and getting all the credit for it, I have posted a sample mockup on Google Docs for you to look at.

You can view it here.

Your first impression may be, "That's it?". Well, yes, that's it. But name a personal finance application that would be so helpful in planning how you spend your money and where. The beauty is its simplicity.


Aug 24, 2007

BYU Football

Ah, I can smell it in the air. BYU football is almost here. If you want to wet your appetite a little, you can always listen to last season. I started listening to the games last night.

Ok, I'm pumped.

Macworld: Feature: 8 Great Quicken alternatives

I've had a few comments / responses on my recent post about Quicken. Macworld, coincidentally just ran this article on 8 alternatives to Quicken. I would be interested to hear if any of you have used these and whether they were any good.

Aug 16, 2007

Baby Bibs Recalled


We've been using the greatest bibs that we could find for many years now. We love them so much that we buy them when we are in Utah because they are only sold at Babies R Us.


Now they are being recalled. I've been mostly ignoring these Chinese lead paint stories that have been coming out lately. But this one hits home!

Come on folks, get your act together!


Quicken on a Mac: Don't let the door hit you on the way out

There are rumors that the Mac version of Intuit's financial application Quicken is on it's death bead. Derik DeLong seems to think so anyway. The question I have is, does anyone really care? Quicken for the Mac is ugly, buggy, and barely usable. The Windows version is nice, but cluncky in my opinion. So does anyone use Quicken anymore and what value does it bring?

Case in point: about 4 years ago, my brother was hurting financially. He's not at all computer savvy, but he thought maybe he could put together a spreadsheet to help him track expenses and budget for the future. He and his father-in-law, also not at all a geek, sat down with Excel 97 running on Windows 98 and together they came up with a very simple spreadsheet. When my brother showed it to me (I was also hurting for cash at the time) I was blown away by it.

At the same time, I had been trying to use Quicken (Windows) to keep track of my expenses and budget. But I had been unable to translate the data I was putting into Quicken into a real plan for getting out of debt and back on track controlling my expenses. The real questions I wanted Quicken to answer for me were: How much money do I have? (it did that one great) How much will I have at the end of the week? (not very helpful there) Will I be able to pay my bills after I buy *enter toy here*? (again nada)

My brother's spreadsheet very simply answered these questions. So I had him print it out for me and I took it home, jazzed it up a little, and I had a spreadsheet that would get me back on track. It's now 4 years later. In that time my income has increased significantly, I'm now married, I have 2 kids, a mortgage, and other typical bills. But, ironically, I still use that simple spreadsheet which has remained virtually unchanged to manage my finances and my budget. I have never seen it's equal (although I've wanted to write a new version using Rails for about 2 years now).

But here's the point. How is it that my unschooled, non-geek, brother (By the way, he's exceptionally smart in other areas... just not computer tech) --- how is it that he could come up with something so practical and useful? Why can't those software shops at Microsoft (Money), and Intuit (Quicken) figure out how to really help people get their finances on track? I'll tell you why, and it's a lesson all development shops need to learn.

First, don't build software that collects data unless you plan to answer real world questions with that data. In order to get those questions, don't ask the developers. They don't know. You need to ask the users who will use the software. You need to be able to solve real issues.

Second, the problem with the current state of personal finance software is that they are all recreating what is already there. Log transactions, see where money goes, create a budget that consists of where you want to spend your money in the next X amount of days / months / years. That's it! All upgrades to Quicken and other financial apps have just focused on those few features. There is no connection between the money spent, current money on hand, and future purchases. Without that connection you can't answer the questions I stated above. Being able to answer those questions is key in making the data bring value to the consumer. Putting it simply, think beyond the current feature set and come up with something helpful and new. Spending release cycles on pure eye-candy but that does not bring more value does not help the consumer.

So to wrap up this long and ranting post, let me just say that I would be happy to see Quicken for the Mac go. See ya! Maybe someday I can take my simple spreadsheet, turn it into an app, enter the marketplace, and blow people away by it.

Hmmm... doesn't all this sound a little familiar?


Aug 14, 2007

OLAP SHMOLAP!

Can someone explain to me why OLAP is such a big deal? It's a technology that is ancient (so far as computer technology goes) and yet I don't see why it is such a big deal. When I tried to use it, I found that I could duplicate the end product using a star-schema which seemed much less complicated and a lot less expensive (dollars and resources).

So what's the big deal? And why is Oracle spending so much time on it lately?


Transmission of tacit knowledge

Today I read a post where Jon Udell writes the following about an experience learning a new way to write code in python.

...I’ll argue that this principle of transmission of tacit knowledge is profound, and can apply to almost any discipline that’s subject to online narration.

There are all sorts of obvious reasons to narrate the work that we do. By doing so we build reputation, we attract like-minded collaborators, we draw constructive criticism, and we teach what we know.

Sometimes there’s also a non-obvious reason. It’s possible to teach what we don’t know that we know.
One of the key benefits I see from blogging is sharing ways that I do things and in-turn learn from others how they do things. For example, I recently setup a Subversion server. It was my second attempt and although my first attempt was unsuccessful, my second attempt went much more smoothly. Today, I also read a post by Scott Lemon where he shared his experience setting up a Subversion server in Apache. I learned that there were a lot of resources on the web that I didn't find that could have helped me.

I have made it a practice to read my RSS feeds in Google Reader for about an hour every morning. I have found that this is the most effective way for me to learn new things and, as this post suggests, acquire more tacit knowledge.

I believe that any manager of a technology team should encourage this. It sharpens skills and improves innovation. There have been many times that I have read something and it has given me new ideas on how to approach a problem that I'm facing in my work. This gives me the advantage that I need to stay competitive.

Aug 13, 2007

Quickly share images and video screencasts with Jing



I mostly work from home so I am always looking for ways to communicate with my colleagues more effectively. Today, after reading a post by Jon Udell on the topic of __fill in the blank__casting, I checked out Jing. I downloaded the OS X version and within a few minutes I had a link to a screencast online. I chose to do a short video on how to use some software that I put together. This is really going to save me some time in training others how to use the stuff I'm creating.

Also, this can be used to post small screencasts to my blog. For example, check out this video I just did on how to create a slick chart in Numbers.


Aug 8, 2007

In case missed it, Apple enters the BI Industry

Yesterday, Apple introduced their new spreadsheet product Numbers. This is extremely exciting for me because I see it as BI done right. Now you may think that I'm just an over zealous Apple evangelist. Well, I am. But here is why I think, even if Numbers is a flop, that it will set a new bar for Business Intelligence.

First, Numbers removes barriers. Check out the demo for the Flexible canvas. Why did it take Apple to figure this out?!! How many times have you been building a spreadsheet that you want to look nice only to find that you have to split and merge cells in one table just to make another look nice. I predict Microsoft is having a huge "ah ha" moment over this. Duh.

Second, ease of use. Apple gets usability. Their products are beautiful because they are simple. Numbers is no different. Gee, make formulas human readable. What a novel concept. Drag and drop Sum, Max, Min, etc... again Duh.

Third, drag and drop layout and print view. This goes along with the first, but think about it for a second. With all the craze over Dashboards, why haven't any BI solutions made applications that create attractive and easy-to-assemble dashboards? Why does it take Apple to show us how easy it should be with a simple spreadsheet style platform? Well, they did and it's beautiful.

What's missing? A metadata interface. Now that we have an easy way to assemble our data and make it look great we need a way to get at our favorite data. Imagine for a second, that on the left side of Numbers there is an option for getting your data from a Data Warehouse, Web Site, Web 2.0 interface (i.e. RSS, WebService, etc), or XML & CSV files. Now imagine that you click on one of those and you get a Metadata explorer that shows user friendly views of your data. Now you simply choose the fields that you want, how you want it assembled, then poof!, the data is dropped into a table in your spreadsheet. Implement some eye candy such as Apple's "skim" feature to browse sample data, etc and you have an extremely powerful BI tool.

I admit that Apple probably wouldn't implement something like that in Numbers, but as a BI observer, I can't help but dream about this.