Codebook 5 - What to Test and Requested Feedback

@tlfla

Great. Thanks for getting back to me to let me know. We’ll do some additional testing on our end around deleting fields on Codebook for Windows after first setting up Codebook Cloud there. No need to send over any of the additional information as it should report “up to date” now.

What I can say about Codebook Cloud so far (spoiler: so good):

Usefulness

Definitely, being sure to have all data synced up is really useful.

Signing Up For Codebook Cloud

Easy and clear.

Purchasing a Subscription

Had no surprise, I would change nothing.

Signing Into Additional Devices

Didn’t try with QRCode. No problem with username/password

Setting Up a New Device

Didn’t try yet.

Syncing Data

Every change has been correctly synced.

Codebook Cloud Service Responsiveness

The first try, that I gave it last week, was the longest: each change took between 20 and 30 seconds, that I think is more than reasonable. Today each sync is less than 10 seconds.

General Usage

Simple and straightforward as always, no surprises here.
The only thing that seems a bug is on the Windows version: when i add or change a field the list of labels isn’t ordered so you must scroll up and down to find the right one. I’m not sure if the previous version had the same issue, surely the current beta on macOs shows labels in correct alphabetical order.

I use CodeBook daily on two desktops and two mobiles, beta for now only on desktops, which I use them mostly.
This software is really doing me a useful service.

Mirco

1 Like

Hi @mirmalag

Thanks very much for providing this feedback!

There’s a preference within Codebook which allows you to dictate which sort order you’d prefer for labels. The two options are alphabetical or frequency (i.e how many fields use that label). It sounds like you may have it set to frequency from your description. You can change it to alphabetical by accessing the preferences in this location in Codebook for Windows: File menu > Preferences > General Tab, Sort Labels By = Alphabetical

One other tip which I’ve found useful is while you have the label selector dropdown open, you can start typing on the keyboard the beginning of the label name you’re looking for and it will jump to it.

Let me know if these recommendations allow you to locate labels from the label dropdown selector better/quicker. Thanks!

Yes, indeed!

Thank you very much,
Mirco

The addition of cloud sync is a great idea. So far it seems fast & works very well.

I do have two criticisms, more of the beta test process than anything else. Firstly the info on installing, release info etc seems to be spread over many sources. I got several emails pointing to several web sites after enrolling. The makes the whole process harder to follow. Second, I’ve just seen that we are at 5.0.4 release. I’m still using 5.0.0. If I hadn’t had a few minutes to spare to look around the codebook site & forum I’d never have found this out. Further, there are no instructions about how to upgrade & since the beta isn’t in the app stores (MAC) updates aren’t automatic. All seems a bit hit & miss to me. Perhaps you should be emailing beta testers with release notes & installation instructions!

Hi @trainersbuk,

Thanks so much for participating in the beta test, and for the feedback. Your points are well-taken, we’d certainly like to make things easier in the future. I think I should try to explain where things stand now and let you know that you are indeed running the latest updates.

For each beta tester we send a welcome email pointing to the beta setup guide – this has links to the latest downloads, and all the other information that we wanted to make sure every tester had. We didn’t put all this in the email because mail with numerous links, including links to software installers, has a tendency to get marked as junk by most spam filters.

The additional email you received I believe was from Apple’s TestFlight service, sent when we added you to the list of iOS beta testers in that service, I’m sorry about the extra mail.

The version number on the iOS and macOS beta is still 5.0.0, it’s the Windows version that’s currently at version 5.0.4. More about version numbers in a minute.

When we do an update to the betas, we send everybody who has already started testing an update letting them know, with links to the updates. You were just added to the beta, so you got the welcome email, but all the previous testers got a What’s Changed This Week email letting them know about the latest versions. When we do another update, you will get an email from us that explains what we’ve changed, and where to get the latest updates.

Now, for iOS updates, those are distributed to TestFlight, and will become automatically available to you unless you have turned off automatic updates for Codebook in TestFlight. In that case, you just need to launch TestFlight, tap on Codebook, and tap the Update button.

When we update the macOS version, we will do so by updating the DMG package available at the download link in the setup guide. Updating is exactly the same as the initial install, you download the DMG, open it, and drag Codebook into the Applications folder (choosing Replace when prompted).

Regarding version numbers: they won’t exactly match between Android, iOS, macOS, and Windows. All of them will look like 5.0.x. For Android and Windows, we increment them independently when we have a new beta update, those are currently at 5.0.1 and 5.0.4 respectively. For iOS and macOS we are keeping the version number at 5.0.0 and increment what’s called the internal build number.

You don’t really need to worry about this though, we will email you when it’s time to update, with the new version and build numbers, and links to the downloads – though in the case of Android and iOS, those are distributed automatically.

A post was split to a new topic: Codebook for Windows Beta Install

hi @mmoore, this is exciting, especially since you’ve been talking about something like this for, I want to say, years now? Really good stuff and congrats on this huge step.

I did not realize the Cloud setup process would create a “Codebook Cloud” entry, so I created my own on macOS Codebook 5.0.0. It was named “Codebook Cloud from Zetetic”. When I realized I had created a dupe, I deleted mine on Mac, and as soon as I clicked Delete, Codebook Crashed. When I restarted Codebook, the entry was indeed gone. I think I submitted the crash report so please see if that came in.

As for the other questions:

Usefulness

  • Do you feel that Codebook Cloud is a valuable addition to Codebook?
    RC - yes, very valuable and impressive. Sync coding is genuinely hard to do. I’m excited for what the future may hold, like being able to share entries among members of a team.

Signing Up For Codebook Cloud

  • Was the sign up process easy and clear?
  • Is there any wording that was unclear?

RC - both instances were fine and clear. Perhaps you mentioned it in the instructions, but I did not realize until after I got things setup that the setup process would create a “Codebook Cloud” entry with the password generated. I suppose one improvement could be if this were clear as you do it. “Adding password to your Codebook vault” or something like that. I didn’t want to lose the generated password so I (gasp) pasted it into Notes.app, while thinking I wish there was a way to copy it directly into Codebook…

Purchasing a Subscription

  • Was the purchase process easy and clear?
  • Is there any wording/interface elements that you feel could be improved?

RC - it was clear and typical I would say. Typical is good here, I did not feel anything abnormal.

Signing Into Additional Devices

  • Signing in manually using your Codebook Cloud username and password
  • Signing in by scanning a Sync Key QR Code from another device (now includes Codebook Cloud credential information when the other device is signed into Codebook Cloud)

Setting Up a New Device

  • Setup by scanning a Sync Key QR Code
    – Ensure Codebook Cloud starts syncing and your data is present after setup
  • Setup by choosing “Setup Later” (not signing into Codebook Cloud during setup) and then sign into Codebook Cloud subsequently

RC - sorry I don’t have a new device to try this on, but the signon worked without a hitch for my Mac, iPhone and iPad.

Syncing Data

  • Add/Make changes to categories, entries, notes, and attachments each device and confirm they automatically sync to your other devices

RC - this seems to be working without trouble so far, and it’s fast. However, my codebook cloud web UI says “invalid date” in Last Sync. See screenshot:

Codebook Cloud Service Responsiveness

  • How long did your first sync with Codebook Cloud take?
  • Do your changes automatically sync in a reasonable amount of time?
  • Did you receive a disruption in service at all? If so, was it clear in the interface that changes weren’t syncing?

RC - first sync took less than 5 min?
RC - yes, the subsequent syncs are snappy
RC - no service disruptions so far (except for the aforementioned crash when I deleted)

General Usage

  • Use Codebook as you normally do and ensure no crashes/errors occur

RC - ok will do

Other considerations

Some ideas for company-use codebook cloud subscriptions. I think there are several considerations as a company owner:

  • would want to buy the subscriptions under a single master account’s credit card
  • a mechanism would need to be in place to allow us to ensure a vault is completely deleted, if a person retires or leaves
  • would like to re-assign a subscription if someone left, and we deleted their codebook vault, then we wanted to re-assign the active license to another
  • if we are storing sensitive client data in our vaults, it’s possible a client might ask about the security considerations of this cloud service, so, some kind of whitepaper or statement from Zetetic would be perfect

Hope you can consider.

Copyright in about screen on macOS says 2023, but should it not be 2024?

Tried:

  • edit a category
  • add new category
  • delete the new category

The sync is automatic and almost instantaneous. Really good.

First of all, I like the addition of Codebook Cloud. This gives a useful and separate place to store passwords and 2FA tokens away from one’s usual cloud providers. The encryption on sync is a must-have and ensures that a backend compromise won’t allow an intruder to decode passwords.

The entire process has been very easy with excellent directions. Syncs execute in good time, etc.

I do have one oddball wish, and this may not be something relevant. The ability to have automatic snapshots taken and saved off to another source, as well as perhaps a few copies saved to the local device. The reason I ask for this is that I have had another sync tool corrupt all 2FA tokens synced to it, then synced the corrupted info, rendering everything useless. Were it not for an iPod in airplane mode, I would have lost a lot of stuff. Having the ability, just for peace of mind, to have a way to have a backup taken and saved off to another cloud provider would be helpful, perhaps with an option to thin the backups, where seven daily backups are kept, then one weekly, one monthly for a year, etc. This way, there is “3-2-1” protection of the stored info, with three copies (the cloud, the backups, and the local device), two different media, and definitely one offsite.

1 Like

@rickcogley Thanks for pointing that out, will get an update out in the next release!

Cheers,
Don

1 Like

@rickcogley Thanks so much for the feedback and glad to hear that the sync is really snappy for you!

Cheers,
Don

1 Like

I’ve submitted some feedback through the Test Flight app on iPhone, and separate feedback about Windows install on a separate post (I missed the bottom of the main post here to put feedback in reply to this specific post).

Here is some general feedback:

Do you feel that Codebook Cloud is a valuable addition to Codebook?

Yes, though I personally would like to also maintain my own local backup of the database. One of the reasons I originally bought Codebook, separately for iPhone, macOS, and Windows, is because I was not tied to a service payment and could be sure that I could continue with my password database should my service account be disabled or Zetetic as a company makes a radical shift. I have been really happy with Codebook for the past ~6 years though the syncing process between my devices is a bit tedious, so I welcome Codebook Cloud. However I still have a desire to see and hold a file knowing it’s my database, and occasionally put it into my own backup. This is possible today by continuing to sync the database to a folder location, though having an option to use both Codebook Cloud and a folder location (using Overwrite option to always overwrite the existing database at the folder location) would give me more peace of mind.

Was the sign up process easy and clear?

This was straightforward for me, though I have two thoughts to give for consideration:

  1. It should maybe be more clear when signing up for a Codebook Cloud account that the password you choose should not be your master password.
  2. During an upgrade I would appreciate some indication that your old/non-cloud database will remain in-tact and accessible until (or even after) successful connection to a cloud account. For example if during setup I input the wrong email or choose a password that I don’t remember, or if there are intermittent network issues while creating the account.
  3. I think the Codebook Cloud account should also have some MFA, TOTP specifically, that can be set up with the account, though reasonable to not be required during initial setup/install.

Was the purchase process easy and clear?

I started this from my iPhone and the purchase was fairly straightforward, being integrated with the Apple subscriptions.

Is there any wording/interface elements that you feel could be improved?

At first I missed the text saying that this was a beta and I wouldn’t actually be charged and was worried for a few minutes :sweat_smile: that’s on me.

Signing in manually using your Codebook Cloud username and password

See my post here which goes into some issues I ran into:

Signing in by scanning a Sync Key QR Code from another device (now includes Codebook Cloud credential information when the other device is signed into Codebook Cloud)

I did not realize this was an option, and probably would resolve the issue I ran into.

Add/Make changes to categories, entries, notes, and attachments each device and confirm they automatically sync to your other devices

I’ve made a few modifications and they sync automatically!

How long did your first sync with Codebook Cloud take?

It was fast! In fact on my iPhone it completed before the notice appeared saying that it could take some time. There may be a small bug in this area (on iPhone) as there were two popups/notices showing at once (or one after the other), one saying the sync completed and then one saying that it could take some time.

Do your changes automatically sync in a reasonable amount of time?

The time to sync appears to be intuitive to me. I would check my other device after ~30-60 seconds and it would be updated.

Use Codebook as you normally do and ensure no crashes/errors occur

So far I have not run into any issues on my iPhone, macOS, or Windows installations.

@rickcogley

Hi @rickcogley,

Thanks so much for trying out the beta and providing this feedback!

Sorry to hear about the crash. We have one or two reports specifically around deleting data on Codebook for macOS causing a crash. This crash doesn’t actually cause a data inconsistency (the data is properly deleted) and the deleted data properly propagates on the next startup. If you happen to have it occur again, would you mind copying the crash details and sending it over to us at support@zetetic.net. We won’t actually get the copies of the crash report when you submit it via the crash reporting interface as this is the direct beta version (rather than deployed to the Mac App Store).

There some secondary text on the sign up screen when mentions:

“Codebook will save your credentials to the Codebook Cloud category”

This text isn’t actually present on the iOS Codebook Cloud Signup screen. I’ll make a note to include it.

Perhaps there’s some improvement to the wording there which could be made or we could make it stand out more?

Thanks for calling that out. We’ll get that fixed up. The last sync is properly stored, it’s an error when attempting to format the date for display.

We’re definitely working towards providing this type of model where one account can “own” multiple users. A good amount of the structure is already in place, but still need some more work on the implementation.

Within that User Data page you screenshotted previously, there are a couple of buttons:

  • Delete My Data – deletes all the previously synced encrypted user data
  • Delete My Account – completely deletes all the user data + user account from Codebook Cloud

There are also similar buttons within the Codebook Client as well. For example within Codebook for macOS the buttons for deletion are at Codebook menu > Settings > Sync Tab, Delete My Data, Delete My Account (the latter links out to the web page to delete the account)

These functions delete the user/account data from our servers, but we have also discussed implementing a remote-wiping capability to delete the Codebook data off the user’s device (which I believe is more inline with what you’re asking for here?). There are some considerations there, and probably won’t be something coming until we implement the master account > multiple users model.

This would be something that will come along with the account modeling mentioned above. The account owner will be able to add/remove users from their account and assign them subscriptions.

We do have some preliminary documentation about the security considerations used for Codebook Cloud sync on this page:

Let me know if the information on that page is clear or if you feel anything is missing.

Glad to hear everything went pretty smooth for you in general, and appreciate you taking the time to provide this feedback!

1 Like

RC - Sure thing! Also:

Sorry to hear about the crash. We have one or two reports specifically around deleting data on Codebook for macOS causing a crash. This crash doesn’t actually cause a data inconsistency (the data is properly deleted) and the deleted data properly propagates on the next startup. If you happen to have it occur again, would you mind copying the crash details and sending it over to us at support@zetetic.net. We won’t actually get the copies of the crash report when you submit it via the crash reporting interface as this is the direct beta version (rather than deployed to the Mac App Store).

RC - understood. I tried creating and deleting an entry but I can’t get it to recur.

There some secondary text on the sign up screen when mentions: “Codebook will save your credentials to the Codebook Cloud category”. This text isn’t actually present on the iOS Codebook Cloud Signup screen. I’ll make a note to include it. Perhaps there’s some improvement to the wording there which could be made or we could make it stand out more?

RC - the only thing I can think of is, either some different color or, use js to draw attention to the important text? I think it is almost there, though. Sorry I missed it in the first place.

Thanks for calling that out. We’ll get that fixed up. The last sync is properly stored, it’s an error when attempting to format the date for display.

RC - confirmed fixed, thanks!

We’re definitely working towards providing this type of model where one account can “own” multiple users. A good amount of the structure is already in place, but still need some more work on the implementation. Within that User Data page you screenshotted previously, there are a couple of buttons…

RC - well noted. At least we would have some control over it.

These functions delete the user/account data from our servers, but we have also discussed implementing a remote-wiping capability to delete the Codebook data off the user’s device (which I believe is more inline with what you’re asking for here?). There are some considerations there, and probably won’t be something coming until we implement the master account > multiple users model.

RC - well noted, this is basically thinking about when, we have people saving client credentials in their codebook vault, then they leave our company. We need to be able to control what’s out there and delete it if needed. I guess since we would have someone register with their company email, after they quit we could change the password for codebook cloud, then do the reset with the buttons you mentioned.

This would be something that will come along with the account modeling mentioned above. The account owner will be able to add/remove users from their account and assign them subscriptions.

RC - That will be great.

We do have some preliminary documentation about the security considerations used for Codebook Cloud sync on this page: Codebook Cloud - Frequently Asked Questions Let me know if the information on that page is clear or if you feel anything is missing.

RC - the information is clear and good. I think a link to the security-related info page at Codebook Help - Security Features (zetetic.net) would be good to include in this FAQ. Also regarding that page, one question we get when our systems get audited is, to explain how the system in question is encrypted “in transit” and “at rest”. You specifically and already use the phrase “in transit” but from a keyword perspective, it might be a good idea to mention “at rest”. I realize it’s semantics but it seems like this pair is really cemented in auditors’ playbooks.

We have been working hard to get certified to ISO 27001 while keeping everything as friction free as possible, and not have the whole thing just be security theatre.

Glad to hear everything went pretty smooth for you in general, and appreciate you taking the time to provide this feedback!

RC - pleasure all mine

1 Like

I’ve done some additional testing, here are some usability things I noticed as well as possibly a bug or two.

I tried creating a new entry from iPhone including several photos, and closed the app while sync was occurring. Prior to autosync Codebook would show progress and also give a notice not to exit Codebook while syncing was in progress.

Now with Codebook 5 and cloud auto-sync there is no warning/notice about the sync in progress, and I’m more likely to quit Codebook pretty quickly after making changes. I tried testing with 8 images to make sure the sync took a reasonable time for me to try doing a few things like quitting Codebook. It looks like quitting during sync doesn’t corrupt anything which is awesome, but it looks like (on iPhone) the syncing does not continue after quitting the app, and so I had to open the app and await the sync to fully occur before I could see the new entry on another system (Windows).

On my Windows system I notice that it doesn’t appear that syncing occurs immediately when starting Codebook – comparatively on the iPhone there’s an immediate notice that syncing is occurring and to await its completion. Though when making a change on Windows (deleting the entry with images) it does appear to send/sync immediately.

Now I inverted the test - I created an entry on the Windows system and included a number of images and PDFs, then before syncing could finish I closed the Codebook window (however Codebook Agent was still running). I waited a number of minutes and checked on my iPhone however no sync took place and I never saw the new entry. It appears that in the iPhone view for the notes I can drag down and it looks like Codebook is searching to pull changes but nothing is found – however looking at the sync stats, even though I pulled to refresh it says “Last Update” is still ~5-10 min in the past. Does “Last Update” mean the last time a sync with new data occurred, and not when it last checked for updates?

I went back to the Windows system and opened Codebook, assuming it would then start to sync, as the iPhone had, however it did not sync. I waited several minutes and it would still not sync. From the Windows system I went to Sync > Operation > Merge and chose to merge the local database with the cloud database, to initiate a sync, assuming Merge is the default option that occurs with auto-sync. After merging completed the old entry I made for images which I had previously deleted – and had synced to both my iPhone and Windows systems – had resurrected (note I do have a macOS system though it’s on a macbook in sleep mode, but maybe it had a part to play here). I went to my iPhone to see if the old entry had also resurrected after syncing – the Sync Last Update was updated to the current time however it had NO entries that I had been testing with. Now my iPhone and Windows instances are in disagreement with these entries and I’m not sure how to resolve it - I’m a little unsure if I should try any of the other Operations, on Windows or on iPhone at this point as I’m not sure what will happen. I’m currently leaving it in this state in case anyone at Zetetic wants me to try anything.

Is the Merge Operation the same as when Codebook syncs automatically? If it is, I would recommend on both iPhone and Windows (and probably the same on macOS) to make it the first in the list of Operations.

Follow-up from my last post,

It appears that Codebook on my Windows system is actually locked up, possibly as part of trying to sync the entry changes that have my attachments. When I try to interact with the Codebook window the UI does not update, e.g. I try to select a different note or category and nothing happens, I try to resize the window and the mouse cursor appears as though it should resize but nothing happens. I closed Codebook window and went to Exit the agent in the system tray and was prompted that “Changes not saved will be lost if you quit. Exit anyway?”, which I answered “No”. Then I tried to open the Codebook window again, was prompted to enter the master password, and after doing so the Codebook window does not appear – however the window does not display but it appears to actually be there! When I click/drag in presumably where the entry list is I can see the drag-n-drop image of an entry.

Indeed, my screen capture tool even identifies that a window should be there named “Codebook” (based on the auto filename). Here is a capture of me clicking and dragging only a few pixels, i.e. I clicked what looks like my desktop background however it’s actually Codebook (entry name removed so only the icon is apparent).

I now have no way to interact/use Codebook on Windows - though this may be fixed if I quit the agent which I’m not sure I should do, based on the prompt about unsaved changes (which should only be the test entries I was creating specifically to test).

Please let me know if there are logs or anything I should grab for investigation.

Hello the Jan 18 (original discussion forum announcement) has the link to:
https://www.zetetic.net/downloads/codebook/macos/cc/Codebook-beta.dmg

Today (Mar4) announced a new MacOS update… but the filename seems the same… can I confirm this link is to the Mar4 updated MacOS ?

tia

Hi @gwongBC

Yes, that’s the correct link (and the name is the same). We replace the dmg with the updated version when release beta updates. After installing the latest version, you can go to Codebook menu > About Codebook and you should see the 5.0.0 (4179) Beta Build version.