GSOC 2019 idea 2


#1

This is my second idea to submit as a proposal for this GSOC. I want to improve the People application.
Improvements I would like to suggest:

  1. Improve the User Interface
    The below is a mockup I found from which looks quite great for People app.
    contacts2

  2. Adding CardDav

  3. Importing, Exporting contacts with Google contacts

  4. Hyperlink which will open your specified email client on webpositive with sender’s and reciever’s field populated.

  5. Importing friendlist from Facebook which will give profile picture, email address, phone numbers(if Facebook allows login and the users permitted to access their details)

Before submitting a proposal I want to have a review on two things. Is the proposal big enough for a GSOC project? Is it technically possible to implement all the features?


#2

People files are managed by Tracker on purpose it’s a feature so the left side is kind of redundant… since Tracker itself provides type ahead filtering. It might be interesting if the left pane were implemented as automatically tiled Tracker window and the selected file could be synced with the displayed file by sending a BeMessage etc…

Careful of using Gnome as a UI inspiration, you’d have to be sure that the UI is compliant with the HIG.


#3

I would love to see sync of contact information via carddav (I use Nextcloud) and a modern address book app also need to be able to sync with Google contact. Sync with Facebook is something a lot of people would appreciate.

I used the People back in the days of BeOS and Zeta, but not anymore, simply cause of the lack of sync support and that I use photos on most of my contacts. A modern contacts app would be great even if it’s not integrated with Tracker and the file system in the same way as the old app. I hope I don’t start a big discussion with writing this.


#4

Yeah, sync’ing contacts with the popular online services would be very nice. I’m not sure that it’d be enough for a whole GSoC - I may very well be wrong though!
I do agree with @cb88, reusing Tracker instead of an in-app list would be nicer. With type-ahead filtering and showing the right attributes, filtering would be a breeze.

@frankps, the People app supports photos, though it’ll become more useful once Tracker gets a thumbnail view. I’m sure that’ll come eventually, because it’ll be so damn useful!


#5

Just for reference a Contacts Kit has been proposed in GSoC 2011.


#6

I don’t agree on this, actually. Doing everything in Tracker is nice for demos, but ends up being quite unhandy in real life situations. Do you think searching for a contact should be leaf menu > find > people > by attribute > name > contains “humdinger” ? That’s way too many operations (I count 6 clicks) for such a simple query.


#7

We could also have both I think. Why not have a new People application that shows the contacts directly in the app in a customized view (maybe even derived from Tracker, don’t know if that’s possible) while still saving each contact as a file with all the attributes like we have now.
That way the user can decide if he wants to browse the contacts in the app or in Tracker.


#8

Yes, no one said that the way to store the contacts should change. Using single files makes it easy for other apps to use the queries, so for example you can easily add a popup menu with suggestions in the To field of the email client. This is not changing.


#9

OK, I was just wondering because of this discussion. Thanks for clarifying.


#10

Or you could right-click the Home icon, move to the “people” folder, click again and type-ahead to filter the file list. 2 clicks. :slight_smile:

Also, we could add a “Manage contacts” menu in the People app that opens the people folder like Web+ opens the “Bookmarks” folder.

The nice thing of re-using Tracker in this way is that people can become “experts” in file management over time and transfer this knowledge to any situation concerning files. It’s also a more direct way for users to interact with the system. They see it’s all just a bunch of files, become familiar with the filesystem layout and feel confident to copy/move/delete/backup those files. If they just see a list view with their contacts in an app, they may wonder where those are stored, for example.

Tiling windows could make all this feel relatively integrated to an app.


#11

The type ahead does not allow to use the full power of queries. You can filter on some of the displayed attributes, but creating contact groups or things like that requires quite complicated tricks.

I don’t think one should be an expert in Tracker usage just to locate their contacts. Let’s be honest, the result is that few people actually use the feature because it’s too annoying for the basic tasks. It is nice to be able to set up a complex query when you have to, but the basic usecases should be made simpler and more obvious.

If I was to use People to manage my contacts, I would have a few groups, ideally implemented as folders. Which makes it impossible to search by name in the whole list by typeahead filtering. This just does not work, sorry!


#12

If people don’t want to re-use the “Group” attribute, they can just as well create a folder for a group and name it accordingly.

That’s not what I suggested. Locating one’s contacts is as simple as locating any other files. The “Manage contacts” menu item in the app will be useful to learn where the contact files are stored.


#13

I have all my People files in one folder (/boot/home/people), with the file name having their last name, comma, the rest of their name. Makes it easy to find a person. Plus the Tracker window is set up to have columns for frequently used info like phone numbers.

Groups are done with the Group attribute, which the mail program can use to send mail to a group. Unlike putting files into folders, you can comma separate the group names in a person’s entry to put them in multiple groups.

Or we could enhance the file system to support multiple parent directories for a file (I did a RAM disk for BeOS which supported that long ago - http://web.ncf.ca/au829/BeOS/AGMSLinkExplanation.txt). But that would be a lot of extra work.


#14

Wow! That’s quite the concept for a file system you had. At the very least, you should archive your file system at a place like the Haiku Archives. It would be a shame to loose all of that.


#15

That’s a good point. However it may stand to reason that Tracker should be improved many file managers don’t implement typeahead filtering but rather a query box… which would be nice to have in reduction of clicks, especially so considering how powerful BeFS queries are. Having to the open the query window is pretty slow anyway when you actually do want to do a query and is behind the curve UI wise.

So from the People app, there’d be an view people button etc… which would open tracker to a default people folder that can be changed, and all the queries would be done from that point. And you could either typeahead filter or query directly from an additional tracker query box.

Basically even in a relatively small tracker window the UI space is underutilized and a query box could easily be added there

image