IGG Developers' Blog

Show me the important stuff

July 15th, 2014

One of our longest-running feature requests has been support for a “dashboard” overview of your finances: a screen dedicated entirely to getting the big picture of your money. Like almost every feature we consider adding, the concept is simple, but the implementation gets tricky pretty quickly. For this particular idea, one of the immediate questions we faced was, what exactly do people want to see in an overview screen? After poring through documented requests, it became clear that most people wanted a summary of 1) their accounts, 2) upcoming bills and 3) recent spending.

Another long-standing request has been for an easier way to see summaries of individual accounts. For example, if you have a mortgage and want to see an amortization table in iBank, you need to make a report to do this; it should be easier. Similarly, if you have an investment account and you want to see your positions, you need to use a portfolio report. Well, we’ve solved these issues.

Today I’m pleased to show you two of the biggest new features we’ve been working on in iBank 5 — our new Overview page and individual account summary pages. Although we likely won’t make any large changes at this point, please note that the following screenshots are not final.

Overview Page

We’ve added a new “OVERVIEW” item to the source list. When you select this, you get a brand new view showing you the most important aspects of your finances:



As you can see, this screen breaks out the most critical parts of your financial information, including a new parameter not previously available in iBank: your savings rate. We also show net worth though time, account balances summary, upcoming transactions, spending, budgets and investments. This screen is easy to read and very printer-friendly. When you do print it, we page break where you expect and even bring over column headers on new pages.

Individual Account Summary Pages

The Account Summary page is a new optional view for the selected account where we show the most important information. We’ve extended our “tab” buttons on the account scope bar:



Selecting the new “report” segmented button will get you a summary for the selected account. And in each summary, iBank customizes the data depending on what type of account you are viewing. For example, a loan account will show you a nice breakdown of the data specific to your loan. We also show a full amortization table so users no longer have to generate a report to do this.




For investment accounts, you can now take a glance at your holdings without making any reports, including data on IRR, cost basis, and gains and losses.



These screens have been under development for quite a while. I want to give a special shout out to the iBank Insiders group of power users who had special access to beta builds with these new features. Their feedback was invaluable and really helped us put some needed polish on these screens and better understand usability issues. So, “thank you, iBank Insiders!”

The new Overview and Account Summary screens will make their debut in iBank 5.2, alongside a number of important bug fixes and Yosemite support. This will be a free update to existing iBank 5 users as well. We think you’ll really love these new features; we see them as just the first step toward giving users more efficient, time-saving tools. We’ll continue to improve these as we learn more about what financial information people want to be able to see at a glance.







A chunk of sync update

June 27th, 2014

Back in December, we announced we were working on a new sync solution for iBank. It has been in development for some time now and is coming along nicely. Though it’s not ready for release just yet, I wanted to touch base with everyone to talk about how sync is shaping up. But first some history.

Why are we doing this?

Our current sync solution was originally designed to sync from iBank for Mac to iBank Mobile on the iPhone using MobileMe. It was designed with the Mac serving as a hub for all of the iPhones that sync with it. We extended this model to support iPad and moved from MobileMe to webDAV when MobileMe was discontinued. Since that time we have been researching various replacement solutions. We looked at iCloud CoreData sync, but with the complexity of our model — including external file attachments and various schema differences between products — this option did not work for us. We looked at working with DropBox or other host file storage systems, but again, these did not meet our needs. It became apparent that to get what we wanted, we were going to have to build it.

There were two key goals that have driven the design of our new sync solution. The first is to be able to sync any combination of supported devices without needing iBank for Mac to act as the hub. This means you can sync between iBank running on an iPad and an iPhone, or two (or more) iPhones, or two (or more) iPads, all without needing iBank for Mac. (You can even sync two financial books on the same iPad, but I am not sure why you would want to.) Of course you can still include iBank for Mac in the mix. And, as part of this setup, we don’t want to require that any device be on and running iBank except the one actually doing the current sync.

The second goal is that syncing should be easy to set up and effortless to use. This means we don’t want customers to have to enter URLs, or set up accounts with third parties, or worry about router configurations. If you have Internet (specifically web) access from the device, then you can sync, period. This also means that you don’t need to be connected all the time to use your data, and when you reconnect, any changes that you made will sync.

There is a third, overarching requirement that we have for all our products and features: security. We want to make sure that your data is protected from bad guys, from good guys, and even from us.

So what did we do to reach these goals?

The first goal, to support any combination of devices with only the syncing device needing to be on, leads us to having a server to store the sync data that all devices can connect to at any time. This is because we have to hold the sync data somewhere. Furthermore, since our products can support multiple financial books or documents, the server will need to have support the syncing of different financial books to different devices.

The second goal also leads us to wanting to have an IGG server so that you don’t need to set up with third parties or enter URLs, as the webDAV solution requires. Also, the IGG server needs to be smart enough to handle incremental updates to the sync data.

This runs right into the third goal of security: we don’t want to see your data. To meet this requirement we are going to chunk and encrypt all the sync data on device with a random key. That key will be encrypted with a password that you provide. The result is that the sync server will only be dealing with chunks of encrypted data. We at IGG will have no way to see the actual data on any of our servers or in transit. When a new device is set up to sync with a financial book, you will enter the password that you originally provided for the encrypted key.

If that seems complicated, what will your experience be like?

We think this experience will be great.

When you decide that you want to share your existing iBank for Mac financial book with other devices, you just choose a new menu item “Share Financial Book…” from the file menu. This will bring up an assistant that will ask for your iBank ID (or you can set up a new iBank ID at this time). The assistant will then ask you for a name for the shared financial book, or it will default to the file’s current name. Finally the assistant will ask you to enter (and confirm) a passcode for the data encryption. After that the financial book will start uploading to the sync server.

When you go to your iPad and create a new financial book you will be asked if you want to create this from a shared financial book. When you say yes, you will be prompted for your iBank ID. Once that is entered you will get a list of shared financial books and you just select the financial book you want. You then enter your passcode for the sync encryption and the data will start to download. After that you should not need to do anything and the two (or more) local financial books will stay in sync.

What will happen to our current sync solution?

When we launch our new sync solution we will be sunsetting our old sync methods. This means that all products that support the old sync solution will continue to work. At some point after the launch of our new sync solution we will be slowly removing support for the old sync as we revise those products. I know that it will be a disappointment to some of you when we ultimately drop support for local Wi-Fi sync. However, at this time we just see one integrated host sync solution as the best way to meet the vast majority of customer needs.

How much will I have to pay for this fancy sync?

This sync solution has been very expensive to build and host. The hosting will also be an on going expense for IGG. However we think that the sync experience is so key to what our products offer, now and in the future, that we are offering sync for free: no monthly charge, no Direct Access subscription required. Just FREE.

Anyway I wanted to fill you in on where we are with sync and what it will look like. I hope that this gives you a better idea.


iBank for iPhone 2.0

May 22nd, 2014

We’ve had an iBank version for the iPhone — iBank Mobile — since Apple released its first SDK about five years ago. Since then, the app has received numerous updates but nothing that expanded its primary use case — entering transactions quickly while on the go. However, times change and customers’ needs change. iPhones are extremely fast now, have more memory than ever, and people expect to be able to do more with their phones. So today I’m going to show you what we’ve been working hard on for the last several months: the next release of iBank for iPhone.

Before I show screenshots, I want to talk about some of the features it will have. First, one of its primary features will still be fast transaction entry. We don’t have plans to overhaul the transaction entry flow, we’ll just refresh the UI screens. Second, it will now have budgets! Yay, finally, you will be able to sync over your budgets from the Mac. Third, you will be able to see your investment account’s market value and it will download current stock quotes. Fourth, well, I don’t want to give away all of the upcoming features just yet. Seriously, we do have a few more things planned, but I’m not going to discuss them in this post.

I will state my usual disclaimer: the app is currently a work in progress. Many of the screens are showing live data, but have not received final UI polish, so please keep in mind the final shipping version will likely look a bit different.

Main ScreenThis is the Accounts Screen. Not surprisingly, it shows all of your accounts. Currently this is just a flat list, but I hope for a future build it will group them by account type like iBank for iPad does. From this screen you can drill down into an account to see its transactions. Below the list of accounts are two bars, one showing your recent net worth and one showing your projected net worth. You’ll also notice along the bottom are four different buttons that act like tabs to switch between showing Accounts, Budget, Investments and “More.” The + button is used to enter a transaction.




BudgetAs on the iPad, you can see your budget on the iPhone. At the top of this screen is your budget by category, with visual indicators for bills (the little diamonds) and progress bars for gradual spending, like groceries. Along the bottom is a current snapshot of how well you are sticking to your budget. iBank for Mac and iBank for iPad users will find this type of budget graph familiar as it already exists in the shipping version for those devices.




The last screenshot I want to talk about is the Holdings Screen. This is a view that pulls all of your investment data, across all accounts, and displays it summarized by security. This new way of displaying securities is something that users have wanted for a while and it’s making its debut in iBank for iPhone. You can toggle between what information is displayed by tapping the amounts column. This will switch between showing the security’s price and daily change, or value and daily gain/loss.

This version of iBank will also use our new sync engine, which we announced late last year. As we’ve mentioned before, this sync engine no longer requires a Mac to be the hub. At some point in the not-too-distant future, we will dedicate an entire post to our new sync solution. As excited as I am about  sync, I won’t go into it any more here, except to say this new version of iBank for iPhone will only use this new sync solution.

I’m sure many are wondering about a the timing of a release. As is customary for this type of project, we don’t have a firm date yet. The app is still too young to be promising a release date. Just let it be known that it is currently being developed and moving along at a respectable pace. Since much of the code is shared with its iPad sibling, the development process is a bit faster than normal.

I can’t wait to get this app out there!