BibleReader for Mac

OliveTree gave us Christmas on Thanksgiving this year with the release of their incredible Bible software, BibleReader for the Mac OSX platform.

OliveTree has been around since 1998. Admittedly, I’ve been using their eBible software on the Palm, the Windows Mobile, the iPhone, and the NookColor for since the first release for each platform.

What makes their software so good? It starts with the company itself. BibleReader seems to be a company of Bible thumpers devoted to spreading God’s Word through the electronic medium. Starting from that foundation, they have consistently built their software specifically for people who both read and study the scriptures.

They give away BibleReader software with the King James Version and American Standard Version for FREE. Yes FREE. No strings. No gimmicks. They have also thrown in the Jamieson, Fausset, and Brown Commentary, Matthew Henry’s Concise Commentary, and the Easton Dictionary of the Bible to get you started Bible thumping right away. (Author’s commentary: careful study of Scripture will likely reveal that the commentaries misinterpret certain scriptures. This review isn’t about discussing that; however, the reader should understand that all commentaries come with their bias, just like your own personal bias.)

So what features does good Bible software contain? Looking at first impressions goes a long way.

OliveTree BibleReader for Mac Account Synchronization

BibleReader synchronizing to the OliveTree cloud

  • First is ease of navigation: OliveTree has spent years refining their navigation approach to the Bible and it shows. Having used other software like Logos, Biblesoft, e-Sword, BibleDesktop, and QuickVerse, I can tell you this really counts if you are truly studying the scriptures. The ability to quickly navigate to one verse, see cross-references, click on them, and toggle back-and-forth between that in previous verses, or to preview or open the cross-referenced verse in either a hover-pane or second pane is critical. BibleReader gets this right.
  • Second is the ability to highlight, tag, or annotate verses with personal notes also critical. BibleReader gets this right, too.
OliveTree BibleReader Features

Ability to highlight, tag, or annotate a verse or verses

Having covered how BibleReader masters the basics, we move onto what sets Bible Reader apart… synchronization. BibleReader backs my notes up to my free Evernote account, and then synchronizes it to my other devices with BibleReader on it. The power of this is that all my bookmarks, all my highlights, all my personal annotations and notes are available everywhere. No other software that I know of at the time of this writing does this and does this so transparently. Once you connect your Evernote account, in the Mac vain of things… it just happens in the background without user action.

 

Other features include:

  • Instant resource guide that connects passages to cross-references, other translations, commentaries, sermons and maps.
  • Powerful search filters that allow the user to search by section of the Bible, Greek, Hebrew, other resources/translations, etc.

The way that OliveTree is able to give this away, is that they license hundreds of resources and Bible translations/versions through their online store. These resources are associated with your OliveTree account and thus are downloadable to each of your devices.

Criticisms

OliveTree BibleReader for Mac

Showing the BibleReader Notes Pane

My one criticism is that there aren’t keyboard shortcuts for Goto, or Search. There are nice toggles for going back and forward in history, Command+[ and Command+] respectively.

The only thing missing is the ability to synchronize where I was in Scripture on one device, and then go to another device and have it open where I left off. I wouldn’t call that a shortcoming, just wishful thinking… and I bet someone at OliveTree is thinking about how to do that, too.

OliveTree Software

Resource Library and OliveTree Account

 

Thank you OliveTree for such a wonderful early Christmas Present.

Enhanced by Zemanta
Posted in Bible, Bible Software, IPhone, mac, Spirituality | Comments Off

Where were you when Steve Jobs died?

Steve Jobs at the WWDC 07

Image via Wikipedia

I wouldn’t find out until later, but at the moment Steve Jobs was leaving this world I was in the Apple Store in Westfarms Mall, Farmington, CT helping a colleague buy a MacBook Air. I had just purchased a new MacBook Pro two days earlier (Oct. 3, 2011) and spent far too much time during my work day on Oct. 4, 2011 watching the iPhone 4s announcement.

Thanks Steve Jobs for inspiring me to be a better innovator, better presenter, and better human being.

Enhanced by Zemanta
Posted in Apple, mac, Steve Job | Comments Off

iPhone’s Two Restore Modes

Posted in Apple, iOS, IPhone, IPhone 3GS, Smartphone | Comments Off

Agile Groups in the Washington DC Metro Area

I often get asked about where are the Agile groups in the Washington DC Metro Area. Here is my list as of the publication of this post.

Agile Leadership/Management

Technical Practices

Events

 

Enhanced by Zemanta
Posted in Agile, Washington DC | Comments Off

Getting started with Applescript

AppleScript

Image via Wikipedia

I’ve started writing quite a bit more lately. My tools of choice are OmmWriter for short pieces or parts of larger projects, a specific playlist in iTunes, Apimac Timer (to timebox myself), and Scrivener for larger projects. Me being lazy in a productive way, I was looking for a way to just lauch and setup all of the above for writing with a short couple QuickSilver keystrokes. Enter Applescript. In order to make it all work, I had to first LEARN enough Applescript to pull it all together. That is where this site came in handy for learning the basics of Applescript. I’ll grab a quick video later that shows how it all works, but for now, enjoy learning how to automate a lot of the repetitive things you do everyday.

Enhanced by Zemanta
Posted in AppleScript, mac, OSX | Comments Off

Two Mail.app plug-ins all Exchange users need

Fuzzy Mail App

Image by Digitalnative via Flickr

If you are using Mail.app with with MS Exchange, you know the frustration of sending attachments and opening those dreaded winmail.dat files (the sender sent a MS Exchange email file as an attachment). Grr.

To get around dealing with Microsoft’s refusal to comply with email standards, I recommend two mail.app plug-ins:
Lokiware’s Attachment Tamer and Christopher Atlan’s Letter Opener Pro. Both programs will end the your MS Exchange email attachment problems. Here’s what they do:

Attachment Tamer (from the Lokiware product description):

  • Display (and print) images, PDFs, audio and video as icons with an optional file size limit and exceptions;
  • Send messages compatible with Microsoft Outlook, Exchange and other software, preventing the superfluous “ATT0001” attachments;
  • Send images as regular attachments, making it easier for the recipient to manipulate the image files;
  • Send images embedded in HTML layout and safely mix embedded images with other attachments;
  • Display full attachment names regardless of length instead of truncated names;
  • Automatically display attachments at the top of messages;
  • Prevent unwanted image resizing or set a default size for automatic image resizing.

Letter Opener Pro:

  • Allows Browser addachment of a winmail.dat file
  • Adds the capability to add appointments contained in winmail.dat files directly to iCal
  • Adds the capability to create contacts contained in winmail.dat files directly in Address Book
  • Adds the capability to display those dreaded nested messages
  • Allows you to convert attached winmail.dat Outlook Notes to plain text
  • And reads and delivers MS Exchange receipts (for those nutbags that subscribe to Level 3 Leadership)

Powered by ScribeFire.

Enhanced by Zemanta
Posted in email, Gmail, ICal, mac, Mail, Microsoft, Microsoft Exchange Server, Microsoft Outlook, OSX, Portable Document Format | Comments Off

Building Scalable Web-Based Applications

Scalable web-based applications has been getting a lot of air-play on social networks like Twitter lately, mostly because Twitter has been overcome by scability issues and the service unreliable. Having an unreliable internet service is embarassing and unacceptable. There is no better way to kill your brand image than to have your viral social media strategy fall flat on its face in front of the whole "instant on" world.

Twitter is over capacity: Importance of Capacity PlanningTwitter is over capacity: Importance of Capacity Planning

Having said that, I've had a lot of requests for guidance on how to build scalable web-based applications that can withstand getting Slashdotted. Building a scable web-based application can happen incrementally so you don't have too apply all of the principles below all at once. There is an appropriate implementation roadmap that is appropriate for different types of web-based applications. For example, if your site is proving an web-service API (SOAP service) for other web-services or client applications, you should spend time looking at capacity planning for those services with less emphasis on your own public facing web-site. Anyway... here is my brain dump. There is more where this came from.

Application architecture

  • Judicious use of the singleton pattern
  • Judicious Use of the Concurrency pattern
  • Client side form validation
  • Use of AJAX for web-services requests
  • Caching of semi-dynamic data (pre-rendering semi-static pages)
  • Use of MVC pattern
  • Object persistance is separated from the object
  • Use of XML and meta-data instead of traditional row/column SQL commands for each data element
  • Place SOAP interfaces on a separate cluster of servers (aka application servers)

System architecture

  • Use a load-balancer and multiple Web servers
  • Separate your web-application into a minimum of four tiers: UI, Application Services, Object Persistance Layer, Database Services
  • Use a separate NIC on each server and switch for each tier of the application (e.g. web-page server to application server, application server to object persistence server, and object persistence server to database server)
  • Use a load balancer between each tier of of the application (e.g. between web-page servers and application servers, between application servers and object persistence servers, etc.)
  • Use an enterprise service bus object persistance service to ensure object concurrency issues are handled across multiple databases
  • Use clusters of virtualized servers running across multiple physical servers
  • Add performance monitoring services on each virtualized server to monitor memory, network, harddrive and application utilization
  • Conduct performance tests to determine if any one object needs more server resources, and move those objects onto thier own virtualized and physical servers

Network architecture

  • Use lots of partitioning of data across NICS and Physical Switches (aka switch processors)
  • Use firewalls in front of each switch in the top three tiers (UI, Application, and Object Persistence Layers)
  • Place network probes between each firewall and load-balancer to monitor utilization and intrusion detection
  • Place each application stack, a complete web application, application server and database server, in at least two data centers in two different geographic locations using two different internet data service providers
  • Create a private point-to-point network between data centers for transaction load balancing using two different internet date service providers

I know was a lot of technical mumbo-jumbo. Frankly, I haven't met that many web designers, web-developers, or even a lot of software developers that understand everything I've listed. In order to implement the list, it will take more than one skillset from several technology professionals. (Business owners can contact me privately about assessing the maturity of your development staff. You might be surprised.)

If you don't understand it, I am happy to elaborate privately. Understand that this is what I do when I'm not playing drums in a Jazz combo.

Comments Off

Building Scalable Web-Based Applications

Scalable web-based applications has been getting a lot of air-play on social networks like Twitter lately, mostly because Twitter has been overcome by scability issues and the service unreliable. Having an unreliable internet service is embarassing and unacceptable. There is no better way to kill your brand image than to have your viral social media strategy fall flat on its face in front of the whole "instant on" world.

Twitter is over capacity: Importance of Capacity PlanningTwitter is over capacity: Importance of Capacity Planning

Having said that, I've had a lot of requests for guidance on how to build scalable web-based applications that can withstand getting Slashdotted. Building a scable web-based application can happen incrementally so you don't have too apply all of the principles below all at once. There is an appropriate implementation roadmap that is appropriate for different types of web-based applications. For example, if your site is proving an web-service API (SOAP service) for other web-services or client applications, you should spend time looking at capacity planning for those services with less emphasis on your own public facing web-site. Anyway... here is my brain dump. There is more where this came from.

Application architecture

  • Judicious use of the singleton pattern
  • Judicious Use of the Concurrency pattern
  • Client side form validation
  • Use of AJAX for web-services requests
  • Caching of semi-dynamic data (pre-rendering semi-static pages)
  • Use of MVC pattern
  • Object persistance is separated from the object
  • Use of XML and meta-data instead of traditional row/column SQL commands for each data element
  • Place SOAP interfaces on a separate cluster of servers (aka application servers)

System architecture

  • Use a load-balancer and multiple Web servers
  • Separate your web-application into a minimum of four tiers: UI, Application Services, Object Persistance Layer, Database Services
  • Use a separate NIC on each server and switch for each tier of the application (e.g. web-page server to application server, application server to object persistence server, and object persistence server to database server)
  • Use a load balancer between each tier of of the application (e.g. between web-page servers and application servers, between application servers and object persistence servers, etc.)
  • Use an enterprise service bus object persistance service to ensure object concurrency issues are handled across multiple databases
  • Use clusters of virtualized servers running across multiple physical servers
  • Add performance monitoring services on each virtualized server to monitor memory, network, harddrive and application utilization
  • Conduct performance tests to determine if any one object needs more server resources, and move those objects onto thier own virtualized and physical servers

Network architecture

  • Use lots of partitioning of data across NICS and Physical Switches (aka switch processors)
  • Use firewalls in front of each switch in the top three tiers (UI, Application, and Object Persistence Layers)
  • Place network probes between each firewall and load-balancer to monitor utilization and intrusion detection
  • Place each application stack, a complete web application, application server and database server, in at least two data centers in two different geographic locations using two different internet data service providers
  • Create a private point-to-point network between data centers for transaction load balancing using two different internet date service providers

I know was a lot of technical mumbo-jumbo. Frankly, I haven't met that many web designers, web-developers, or even a lot of software developers that understand everything I've listed. In order to implement the list, it will take more than one skillset from several technology professionals. (Business owners can contact me privately about assessing the maturity of your development staff. You might be surprised.)

If you don't understand it, I am happy to elaborate privately. Understand that this is what I do when I'm not playing drums in a Jazz combo.

Comments Off

4 Hour Body Mindhack for Ice Cream Cravings

Moooooooose Tracks

Image by keira-anne ♥ via Flickr

I just figured out a very obvious but probably not popular mindhack for getting through the week on the slow-carb diet.

I love ice cream. Every night before going to sleep I love to have a big bowl of the stuff.

Since I am glucose sensitive, the bowl usually put me in a nice sugar-coma… which was no big deal because it was bed time. I inherited this learned behavior from my father who in turn learned the behavior from his father. The net result for myself and my grandfather was a nice layer of fat in my mid-section. Not-Good.

What I discovered was a mindhack to break out of the cycle of self-destruction.

Here is how the mindhack works:

  1. Rid your home of everything that you crave using your binge day. This will likely take several weeks, so have faith and patience.
  2. On binge day, eat out at some place that has that which you crave. For me, simply having ice cream after a nice meal was all that was needed.
  3. Pray for the strength and self-discipline to get past the cravings. Pray for forgiveness for not being a good steward of the body the Lord has given you. And pray to give God thanks for the incredible richness of life you have been given.

That’s it!

See? Wasn’t that easy? If items aren’t in your home, you can’t cheat… except for that stop for gas where you go in to pay and have to pass the ice-cream cooler on the way to the cash register. Curse you, 7-Eleven!!!

 

Enhanced by Zemanta
Posted in 4hourbody, Diet | Comments Off

Is it your job or your craft?

Unemployment map produced by the Bureau of Lab...
Image via Wikipedia

There is a lot of talk about the number of people that are unemployed. Over the course of this recession the United States has lost some 10 Million jobs. These jobs simply went away. They weren’t outsourced to another country. They didn’t transition to another type of role. They simply went away and it will take 10 years to get them back.

So who are these unemployed people?

The Bureau of Labor Statistics is now detailing the fact the largest preponderance of people that are unemployed fall into two categories:
1. Those who’s skills are not in demand
2. Those who do not have the education level needed to acquire good paying jobs

As an organizational therapist, I have started my own non-scientific studies and have come to a single conclusion. The two factors highlighted by the BLS, wrong skills and not enough education, don’t really tell the whole story. I find people the for a while didn’t have skills that were in demand who are still able to find people to demand their skills. I find people that don’t have the “requisite education level” or “necessary certifications” that are still able to find employers who cherish their labor.

So what truly divides those that are able to find employment even after being down-sized, and those that living on Government unemployment payrolls trying to hold on to their homes and lifestyle?

I can only conclude one thing: it is the way each of the groups fundamentally approach their labor. The gainfully employed see their labor as their legacy and their craft. Whether they are street cleaners, brick layers, front-desk receptionists, or software engineers, they all have this singular attitude about serving their employer and obsessing about creating work that any person is ecstatic to purchase… often at above market rates. In contrast, the people that were laid-off and then struggle to find new employment seem to treat the “job” only as a means of paying the bills.

I can’t deny… I’ve taken positions just to make sure I am fulfilling my duty to my wife, kids and community. It is my contract with society. One element that has remained true, though… I always have treated my work as my legacy. I fret over my work just as a painter does, never satisfied until I have perfected each body of work in such a way that generations from now someone will say, “Wow!”

Are you frustrated at work? It is because your job is taking up too much of your time, or because you aren’t allowed to practice your craft? If it is former, you may find out the hard way that you are making yourself outmoded. If it is the later, you will find peace in learning to be creative in being the best you can be within the constraints you are under. Make the best of every situation and only do excellent work. There will be no end of demand for your craft.

Enhanced by Zemanta
Posted in Career, Mentoring, Vocation | Comments Off