What I'm Building at Taaalk [Monologue]

I'm the founder of Taaalk ✌️
Follow this Taaalk

2 followers

434 views

Joshua Summers
21:15, 25 May 20 (edit: 21:43, 25 May 20)
Hi I'm the founder of Taaalk - as you can probably see as right now I'm the one doing most of the 'Taaalking' on the site!
(Taaalk is an online platform for public long-form written conversations. A bit like if someone made your WhatsApp public: the conversations are closed - you only Taaalk with the people you want to, but anyone can read them.)
This space is going to be where I talk through what's on my product roadmap and why. I'm going to talk about long term ideas for Taaalk as well as recently released features.

Latest feature: Tweet when publish

The most recent thing added to Taaalk was designed to slowly help its growth.
Right now a few people are using the platform, and I have been getting some visits from the occasional post on Hacker News, but the people who are doing the Taaalking are only infrequently sharing their conversations to Twitter.
I want this to change, and I think it makes sense that it should; whoever is following a Taaalk user on Twitter is probably interested to see what they have to say in a conversation.
So the latest feature released is a 'Tweet when publish' feature. This is how it looks:

image.png 184 KB

The changes start from the 'Publish Your Message' button and flow down from that. This is how the area looked before:

image.png 71.5 KB


Changing the primary CTA button colour

My desire was to let the user's eye naturally flow from the main 'Publish' call to action to the idea that 'Tweet when publish' was turned on, and that they could easily control it if they wanted to (so they didn't feel pressured into Tweeting).
The choice of colours here was important, and led to a change in the overall colour scheme of the site. Previously the 'Publish Your Message' button was green, and so where all of the primary call to actions on the site. However green is the natural colour of 'on', so I wanted to use it to communicate to the user - something was on, and it could be turned off should they want to.
When I played around with the design and saw how the darker 'Publish' button had a feeling of greater presence than the green one, meant the 'Tweet when publish' seemed secondary, and allowed the bright green 'on' switch to catch the user's eye, bringing their attention to the feature - I realised it was a goer. I then changed all the primary call to action buttons on the site to the darker colour, and the secondary buttons to the bright green colour.

image.png 24.8 KB


The 'Tweet when publish' details box


image.png 84.1 KB

When it comes to web design, I'm a big fan of using the principles of good copywriting set out in Ogilvy on Advertising - details are good. As long as I don't ruin a page with clutter, I would rather have something well explained than to keep things minimal.
I did not want the user wondering what would happen if they pressed 'Publish' with Tweet when publish set to on. I wanted them to know all the details so they could feel comfortable making a decision. The details box exists with this purpose in mind.
First, I wanted reading the box to happen naturally after reading 'Tweet when publish is on'. I encouraged this flow by replicating the first words of 'Tweet when publish is on', matching the use of the blue font and the using the Twitter logo at the start of the line.

image.png 26.8 KB

I combined the same start of the sentence with the value proposition of the feature - Tweet when publish increases your Taaalk readership.
I hope this killed two birds with one stone: it connected the details box with with the on/off line and explained the value in having it on.
The rest of the details box explains precisely what will happen when publish is pressed, "Twitter will open when you publish your message", displays the suggested tweet and lets the user know they can "edit the Tweet in the Twitter client before sending it".

The auto-generated Tweet


image.png 38.7 KB

Generated from this Taaalk if you are interested.
When I started building the feature I didn't think about the complexities of the Tweet itself. A Taaalk can have any number of participants, who may or may not have a Twitter handle associated with their account. Their names can be any length - and so can the title of the Taaalk itself. But a tweet needs to have 140 characters or less. So my tweet needed to dynamically generate to take all of this into account with the one rule that it must include the url. Twitter shortens urls to 23 characters in length, and I always wanted a blank space before the url, so all the info in the tweet had to be 116 characters or less.
I built a function in my tlks_controller (this is a Rails application) which generated my Tweet, taking all the above into account:
def tweet
    tweet = "I wrote a new message in my Taaalk \"#{@tlk.title}\""
    spkrs_tweet_section = ""
    if non_hidden_non_current_user_spkrs.present?
      spkrs_tweet_section << " with "
      non_hidden_non_current_user_spkrs.each_with_index do |spkr, i| # needs to be other spkrs vs current user, so cannot be in model
        spkr_name_and_twitter = spkr.twitter_handle.present? ? "#{spkr.name} (@#{spkr.twitter_handle})" : spkr.name
        if non_hidden_non_current_user_spkrs.length == 1
          spkrs_tweet_section << "#{spkr_name_and_twitter}"
        elsif i + 2 == non_hidden_non_current_user_spkrs.length
          spkrs_tweet_section << "#{spkr_name_and_twitter} "
        elsif i + 1 == non_hidden_non_current_user_spkrs.length
          spkrs_tweet_section << "& #{spkr_name_and_twitter}"
        else
          spkrs_tweet_section << "#{spkr_name_and_twitter}, "
        end
      end
    end
    if (tweet + spkrs_tweet_section).length <= 116
      tweet << spkrs_tweet_section + " #{show_tlk_url}"
    elsif tweet.length <= 116
      tweet << " #{show_tlk_url}"
    else
      tweet = "I wrote a new message in my Taaalk #{show_tlk_url}"
    end
  end
The section at the end deals with the length of the Tweet, constantly shortening and checking the length by first excluding the names of the participants, and then the title of the Taaalk - with the minimum length Tweet reading: "I wrote a new message in my Taaalk #{show_tlk_url}"

Turning it off


image.png 175 KB

Turning off Tweet when publish changes the toggle from on to off and from green to red. It also changes the green 'on' to a red 'off'. Opacity (0.7) is added to the details box meaning it's presence is reduced, but it's visible enough to read should the user forget what 'Tweet when publish' after they have turned it off.
I didn't want the user to feel pushed into Tweeting. For this reason it was important that a user who didn't want to Tweet wouldn't have to turn this feature off every time they wrote a message. Taaalks have 'Speakers' in them, so I added an 'auto_tweet_on' boolean to the Speaker model, with a default of True. If 'Tweet when publish' is turned off while a message is published, then this new default is saved.

Pressing publish

This opens up Twitter in a new tab (and on mobile, opens up the Twitter app) with a pre-populated Tweet:

image.png 118 KB

And that's it!
To try it out you can start a conversation on Taaalk.
Joshua Summers
11:55, 28 May 20 (edit: 13:32, 28 May 20)
Excitingly the 'Tweet When Publish' feature has started to be used and taaalk.co is getting more coverage on Twitter.

image.png 343 KB

I now want to add meta data to the URLs to make them look more attractive/noticeable on Twitter. So that Taaalk takes up more space in your Twitter feed :).
On Taaalk you can also follow a user. You get notified every time they start a Taaalk.
I now have 3 followers. One of them I know, but one I don't. I noticed my feeling when I had my first real follower, it made me value Taaalk more as a platform. If I was going to start an interview anywhere, it may as well be Taaalk as at least one person will be notified!
That is the power of network effects. Something I think Taaalk benefits from. It made it clear to me that accelerating network effects is an important part of building a social network (which Taaalk sort of is). For that reason I'm thinking about how to make it more obvious to users that a network can be built.
To follow a user right now, you have to 1) discover that their username is clickable from a Taaalk, 2) click on it and go to their user page and 3) follow the user.

image.png 55 KB

Above: Hovering on the name of a user in a Taaalk let's you know it's clickable, otherwise it's hard to tell.
I'm thinking that getting rid of steps 1) and 2) by adding a follow user button to the Taaalk pages. This will make the network grow faster, which will be better for the long term future of Taaalk. 
Follow this Taaalk

2 followers

434 views

Start your own Taaalk (learn more...)