Archive for the ‘Mac’ Category

Step into the light

On September 19th, we launched a major update to the ADS website. The new design speaks to our focus – building internal applications using Ruby on Rails, and providing rich user experiences with Adobe Flex. Now, we are preparing to begin launching a series of SaaS applications. “Wait, how do SaaS applications fit into your internal application model?” you might wonder. And that is the purpose of this post – to discuss the use of externally-hosted internal applications.

Do all internal applications have to sit behind the firewall?

I think not. At ADS, all of our systems – sales, invoicing, project management, code repositories, etc. – are online. I managed large networks for a number of years, and having to manage servers is something I no longer want to do; so I don’t, and neither does anyone else on our crew. In addition, using existing applications that require little-to-no customization got us going faster.

As a development shop why don’t you build all of your own systems?

My philosophy is that you should not have to change the way you operate in order to use software. Software works for you. In addition, software should enable. What I mean is that when I’m working I shouldn’t have to think about how I’m using my tools. That should be transparent. If you have to actively think about how to use an application so you can get a job done, something is wrong. Going back to the question of why we don’t build all of our own systems, when looking at build versus buy, we have to look at whether or not an application works the way we do. Things such as invoicing and code repositories are easy. Project management and CRM (customer relationship management) are another subject. For CRM we use salesforce.com, which is easily customizable and feature rich. Since we moved to Scrum more than a year ago, we have had trouble with ticket-based systems. One of the applications we are working on is Scrum’d, which will work for you if you follow Scrum.

What are the benefits of externally hosted internal applications?

Our operations are very transparent to our clients. At any time, a client can log into our invoicing site, see their entire history, and make a payment. At any time, a client can log into our project management site, and see the status of their project. Using self-service applications makes us highly efficient, and allows us to focus on our core. And that’s just the beginning. Here are just some of the benefits our clients have gotten from their apps:

  • Lower total cost of ownership (TCO)
  • Less management overhead
  • Faster return on investment (ROI)
  • Less setup
  • Greater savings over the life of the application
  • Ease of access from anywhere in the world

Conclusions

An “internal application” is one that is not accessed by, or accessible to, the general public. Not all internal applications have to sit inside a company however, and there are many benefits to hosting externally. When looking at build versus buy, consider whether or not you’ll have to change the way you work in order to use the application. You shouldn’t have to.

In an interesting coincidence, the same week that Paypal complained about Safari’s lack of support for EV SSL or any anti-phising measures, an exploit is posted for the “enhanced” SSL certificates. While, yes, Safari could do with having some of the newer security techniques, I wouldn’t agree with Paypal’s assertion to dump the browser – it has been my browser of choice for a year and it works just great.

The next release of Safari should be very beneficial to web developers, according to MacRumors.com. Key features include improvements if CSS support that will lessen the need for Prototype and Script.aculo.us, support for the new HTML5 audio and video tags that make media playback easier to control, and most curiously a new SQL engine for storing data on the client – who needs cookies anymore? No details of an expected release date were given, but we’re sure looking forward to it.

After recently reinstalling MySQL 5 on my OSX Leopard machine Rails stopped being able to connect to it – every time I’d start script/server it would say:

Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’

After spending some time looking to see if maybe the socket file had been put in a different location I finally found the issue: MySQL wasn’t creating a socket file at all and needed to be told to do so. So, if you start receiving the above error, just make sure that the file /etc/my.cnf has the two socket lines as mentioned below, one in the [mysqld] section, the other in the [client] section:

[mysqld]
bind-address = 127.0.0.1
socket=/tmp/mysql.sock

[client]
socket=/tmp/mysql.sock

I upgraded to Leopard the weekend it was released and had been using MacPorts to do my Ruby install. However, after the upgrade some things weren’t working right, most notably rmagick created fireworks when I’d try to load it, and in the last day or two MySQL has decided to stop working too. So, tonight I’m dumping MacPorts and moving everything to native installs. To help you do likewise, here are a few things to remember when you’re getting Rails to work on OSX Leopard:

  • Leopard was bundled up with some slightly older gems, so make sure to do do “gem outdated” to see what updates are available, then “gem update” to grab all of the updates.
  • Everyone developer needs a database. If your database of choice, for development purposes at least, happens to be MySQL, you’ll be slightly disappointed to know that at the time of writing there isn’t a fully Leopard compatible MySQL package available, yet. Thankfully Orlando’s own (and forthcoming Acts_as_Conference speaker) Dan Benjamin has come to the rescue with a complete install guide for MySQL on Leopard, which also includes a handy-dandy downloadable bash script to take all of the effort out. Thanks Dan!
  • The one library I was surprised that wasn’t included with Rails is the RMagick gem. RMagick is the Ruby plugin for using the venerable ImageMagick, or the GraphicsMagick spinoff, and is a bit tricky to install due to the sheer amount of prerequirements it has. Thankfully the OnRails.org folks have put together a great tutorial on installing RMagick on Leopard without using MacPorts, which will help keep your system nice ‘n clean.

Thanks to Dan Benjamin and the OnRails team for the tutorials, they’ll be a great help for Leopard users for ages to come. Of course if someone wanted to do a proper installer for RMagick I’m sure a tip jar could be organized :-) – any takers?

Note: If you’re installing on a PowerPC machine you need to modify the following line of Dan’s MySQL installer script:

sudo env ARCHFLAGS="-arch i386" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config

to say:

sudo env ARCHFLAGS="-arch ppc" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config

Make sure you make that change before trying to run the script otherwise you’ll end up with some difficulties. Other than that little detail it works perfectly.

In preparation for the free Rails For All introduction to Ruby on Rails class, and in the interest of not reinventing the wheel, we are posting links to getting Ruby set up on your machine. If you don’t want to chance it, we will help you get up and running during the first session. For those of you brave enough and get it installed, we will be asking for your help in getting everyone going. So, without further ado, here are the goods:

Mac
There is a great tutorial over at Hivelogic for getting everything up and going, a-z.

Windows
The interestingly titled blog, guttervomit, did a complete A-Z tutorial for getting everything up and running on Windows. It serves as a great primer, however, you can skip to the installation steps as we will discuss Ruby and Rails in the class. Check it out the tutorial here.

Linux
With so many wonderful versions of Linux out there, here are a few links for a few of the distributions:

Ubuntu Edgy Eft
Fedora 7

Cool down that MacBook Pro

Oct 18th, 2006 by Robert Dempsey - Tags:

Leave a Comment

A friend of mine turned me on to a little app from Lobotomo Software that is quite useful. It controls the fan on your MacBook Pro and allows you to change the base speed of your fan. Get it here but don’t forget, the higher the speed the less life you get. Enjoy!

Improve Safari Performance

Sep 11th, 2006 by Robert Dempsey - Tags:

Leave a Comment

A cool and free SIMBL plugin for Safari, Star Performer, allows it to use the cpu even when in the background, thus making things like video performance not go down the tubes when you try to do something else. Grab the goodies and details here.

Google CEO Joins Apple Board

Aug 30th, 2006 by Robert Dempsey - Tags:

Leave a Comment

Read a quick blurb on Informationweek.com about Eric Schmidt, the CEO of Google, joining the Apple board. Read the article here.

For anyone (including myself) who has sent out an email minus the attachment they meant to include, there is hope, or atleast help. There is now a FREE mail attachment scanner plugin for Mail.app (yes Mac only) that will scan your email for the word “attachment” and many variations of it and checks to see if you actually attached something to the message! Amazing! Check it out here for all the details.

Collaborate.
Enable.
Succeed.

Contact

(888) 331-8520
4210 Beau James Court
Winter Park, Florida 32792 RSS Feed

Search

Popular Articles

Recent Articles