blog.soLinkable(The Official soLinkable Blog)

CAT | sL Features

Mar/10

14

You’ve Got Mail (Part II)

When we first put together a comment reply page, we knew we were far from finished. We had plans to ultimately build a complete private messaging system for soLinkable. And throughout the past week we’ve been working diligently to get our new and improved messaging system up-and-running… Who am I kidding – We threw a bunch of code together at the last minute and hoped for the best.

The new messaging system offers a few improvements to soLinkable:

  1. Private messaging. You can now send a private message to any user through soLinkable. This will make it even easier to communicate with the admins (or anyone else for that matter).
  2. Display all messages and replies. The first page in your message center displays a collection of all messages and replies you’ve received, ordered by descending date. This includes replies to your comments, top level comments on stories you’ve submitted, and private messages (both sent and received).
  3. A new eye-catching envelope link. Do you know when you have a new message or reply? Probably not. A blue envelope on a blue theme just isn’t very noticeable. So we’ve redone the image to make it stand out a little better, which will (hopefully) allow for more conversation.
  4. Much faster page loads with fewer queries. We’ve done some serious optimization to the comment and messaging systems. You won’t notice a huge improvement right away, but as soLinkable continues to grow these improvements will go a long way (If you want to get a little technical, we drastically reduced our database calls, cutting the execution time by 33%).

So… How Do I Use It?

Look at the top right corner of soLinkable. Are you signed in? Do you see that envelope? Good. That’s the link to your message center. For the most part, the envelope will appear blue. However, when you have unread items in your message center, the envelope will alert you by turning a sort of orange-red:

new messages

Clicking on the envelope will bring you to the main page of the new soLinkable message center, which lists the 25 previous conversations you’ve had on soLinkable. A conversation includes any private messages, replies to your comments, or first-level comments made to a story you’ve submitted. The basic setup of the page is as follows:

soLinkable messages center overview

  • Menu Items: Easily navigate through the different screens within the soLinkable message center.
  • Type Of Message: Displays information regarding the type of message. Can be either a private message, post reply, or comment reply.
  • Title Bar: The who, what, and when. This information bar will indicate the username, subject (if applicable), and date of the message or comment.
  • Message Body: The actual content.

Next, let’s move to the “Compose” page. This is where you’ll go to write a private message. The layout and input textboxes are pretty self-explanatory. To, Subject, Message… All basic stuff.

compose a message - soLinkable message center

The error checking at this point in time is pretty basic, it just checks to ensure you’ve entered a subject, message body, and valid username – No fancy jQuery validation engines yet. However, there is some simple AJAX going on in the background to help ensure the person you’re trying to contact exists. When you move the focus away from the “To:” field, it will contact the soLinkable servers and return whether the user exits or not. Simple but handy.

The Indox/Sent folder contains a list of all messages, beginning with the newest first:

And finally, clicking the subject will open it up in the view message template:

View message - solinkable message center

More improvements to come

It’s still in a beta phase, so expect some minor changes in the next few days as we try to work out the kinks. And if you’ve never played the role of a beta tester but always wanted to, here’s your chance. Play around with it and let us know what you think: Are there any bugs? Is it intuitive and easy-to-use? What would you do differently?

So get on it – Check out the soLinkable message center!

, , ,

Feb/10

23

Spam.

Monty Python Spam Sketch

Monty Python - Infamous spam sketch

Do you remember the “Spam” sketch from Monty Python?

You know the one I mean – Where Eric Idle and Graham Chapman are trying to order breakfast, but the waitress (Terry Jones) keeps pushing spam on them. It seems like every dish contains something they want, but covered with spam. Well, sometimes that’s how I feel about soLinkable.

I know there’s great content on here, but the spam overshadows everything. The Queued section typically looks like this:

*spam*, *spam*, *spam*, *spam*, *spam*, GREAT ARTICLE, *spam*, *spam*, *spam*, and *spam*.

For every few great submissions, I’ll delete almost 100 spammy ones. For every few great users, there are 100 spammy ones. It’s a constant battle, and if I don’t do something to gain the upper hand I’m going to need extra moderators. So, in an attempt to fight back, here are a few of the recent measures we’ve implemented at soLinkable:

1) Unverified users have restrictions on what they can do with soLinkable.

What is a verified user? A verified user is a user who has been with soLinkable for a few days, submitted some good links, voted a few times, and made a couple of legible, thoughtful comments. By this point, their Karma will have risen above a set threshold (25 points), making them verified users. Simple enough.

Until a user becomes verified, they’ll be bound by the following restrictions:

  • Each link submission must pass a reCAPTCHA test – Pretty self-explanatory, this is to stop bots from submitting.
  • One submission per 24 hours – Even if a link gets deleted, the user must wait 24 hours before a new submission can be made.
  • NoFollow attribute to links on any submissions in the Queued section. If it gets promoted, the NoFollow tag will come off this link. Once the user becomes verified, all NoFollow tags will be completely removed for all links – promoted or queued (including links submitted before the user became verified).
  • Each submission is checked against Askimet – Very similar to how Askimet is used for blog comments: If Askimet tells us it’s spammy, then we put it aside for a moderator to check. The moderator can then decide if the submission should be placed into the queue or simply deleted.

tl;dr: A verified user is anyone with more than 25 Karma, and has FULL use of the site with NO restrictions. Verified = No restrictions. Unverified = Restrictions.

2) Ghost Bans

This is similar to the ghost ban used by Reddit. It’s a little underhanded, but any legitimate user will never run into it. It’s used to keep a banned user thinking they’re still submitting content. So while they can view their content, nobody else will ever see it.

I think this is one of the most effective measures, and best of all it’s completely automatic. Too many submissions get deleted without offering anything valuable to the community? BAM! Ghost ban.

A few of you may be worried, thinking you could be banned and not even know it. As long as you’re an active, participating member, there’s nothing to worry about. Make a few comments, vote on a few stories, and you’ll never run into any problems.

3) Deleted stories are only viewable by the submitter

If a story gets down voted by a majority of users, it will eventually be deleted. Once this happens, it will no longer display for anyone except the original submitter – They will continue to still see it normally.

The idea is to hide that it has been deleted, so the spammer won’t realize and re-submit. It’s incredibly frustrating to delete the same “Cheap SEO Development India” link over and over, day after day. And even if they do realize, the link info is stored for 30 days so the system will tag the submission as a duplicate story.

Conclusion

Whew. That seems like a lot of restrictions and dirty tricks. Believe me, it was a tough decision to make. I don’t like limiting what people can do or heavy moderating, but unfortunately I don’t have any other choice. The fight will go on, and I’ll continue to delete as much spam as required to make soLinkable a better place.

And as I always point out, there’s a real person behind soLinkable – So if you feel as though you have been unfairly targeted, send us a quick email. I’ll continue to monitor how effective these measures are and make changes as necessary. I’m very open to any ideas or suggestions.

Finally, If there are any regular users who may be interested in a moderator role, send me an email through our contact form. I can’t offer monetary compensation (at least not yet), but I can offer a link on the “About Us” page (under your bio). And with constant use of soLinkable, you’ll also (hopefully) increase your readership and can easily make it into the “Top Karma” sidebar list, giving you a link on the main page.

Thanks again for your support – It’s all of you who make this fun and worth the effort.

, ,

Feb/10

13

The New soLinkable Search

Have any of you tried to use the soLinkable search before? If not, consider yourself lucky. It sucked. I mean, REALLY sucked.

Thankfully, that’s starting to change. We’ve slowly been implementing upgrades to our search algorithm with the goal of eventually developing a search function that actually allows you to find what you’re looking for (crazy, I know).

The first thing you’ll notice are the new options available. You can now drill down to make your search a little more specific: category, where, when, and sorting method are all available filters. But don’t let these major design changes fool you – There were also plenty of improvements behind the scenes. We made significant upgrades, giving us better search results, in less time, with fewer calls.

Let me take you through a simple search as an example. Say we were looking for a specific Google Maps post which is ~10 months old.

First off, I’m not sure what category it would be under. Maybe Internet, but maybe technology – I don’t know. So, I’ll just leave it as “All Categories”.

Next, I know “Google Maps” will be mentioned in either the title or content, so I’ll choose “Title and Description”. Simple enough. To get the most relevant search result first, I’ll sort “By Relevance”. And finally, it’s about 10 months old, or, “<365 Days”, which represents “less than 365 days”. This leaves me with the following search query:

search-query-solinkable

Hitting enter I will see the following results…

solinkable-search-results

I see it! 10 Top Overlooked Features of Google Maps – Exactly what I was looking for!

We’re not done yet, there are still many more upgrades to come. However we decided to offer the first batch of changes sooner due to the general crappiness of the search functionality.

But don’t just take my word for it, Try it out yourself and see the difference!

, ,

What exactly does that mean? Markdown is a text-to-HTML conversion tool for web writers. Markdown allows you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML). If you are a frequent Reddit commenter you will be very familiar with it as it uses the same system.

How does this benefit you, the commenter? The overriding design goal for Markdown’s formatting syntax is to make it as readable as possible. The idea is that a Markdown-formatted document should be publishable as-is, as plain text, without looking like it’s been marked up with tags or formatting instructions.

How does it work? A full instructional guide can be found under syntax on the project website or check out the Dingus to try out a live version of Markdown. But first, let me give you a quick and easy overview:

Paragraphs are delimited by a blank line. Simply starting text on a new line won’t create a new paragraph; It will remain on the same line in the final, rendered version as the previous line. You need an extra, blank line to start a new paragraph. This is especially important when dealing with quotes or lists.

Italic text can be displayed by surrounding a word (or words) with either single asterisks (*) or single underscores (_). Bold text can be displayed by surrounding a word (or words) with either double asterisks (**) or double underscores (__).

This is in *italic text*

This is in **bold text**

Will give you:

bold_italic

Blockquotes are created by using email-style > characters. Multiple angle brackets can be used for nested quotes. To cause a new paragraph to be quoted, begin that paragraph with another angle bracket.

>Here's a quote.

>Another paragraph in the same quote.
>>A nested quote.

>Back to a single quote.

Will give you:

blockquote

Linking can be done in two ways. First, you can just paste a valid URL, which will be automatically parsed as a link. Or, you can write the anchor text inside of square brackets – [ ] – followed by the URL in parentheses.

http://en.wikipedia.org
[wikipedia]http://en.wikipedia.org

Will give you:

links

Headers can be created by surrounding the text with the # symbol. The number of #’s used corresponds with the header level.

# Header 1
## Header 2
### Header 3
#### Header 4
##### Header 5
###### Header 6

Will give you:

headers

Unordered Lists can be created by appending each element in the list with either a plus (+), dash (-), or asterisk (*) followed by a space. Operators can also be mixed.

+ Item 1
- Item 2
* Item 3

Will give you:

unordered_list

Ordered lists are created in roughly the same way. Begin the list with a number plus a period (.) followed by a space. It’s important to note that the actual numbers you use to mark the list have no effect on the output. The ordered list will always start with the number 1, and will increment sequentially.

1. Item 1
2. Item 2
3. Item 3

Will give you:

ordered_list

Code Blocks are created by wrapping it with backtick quotes (`).

Here is some `inline code with **formatting**`

Will give you:

code_text

Escaping special characters can be done with a backslash (\). Backslash escapes are used to generate literal characters which would otherwise have special meaning in Markdown’s formatting syntax.

Escaped \*italics\*

Will give you:

escaped_characters

That’s it! There are other great ways to use Markdown, but we’ll leave that until later posts. Thanks to redditor AnteChronos for his great explanation as well (much of which I used in this post).

, ,

Apr/09

8

You’ve Got Mail.

It’s always been our desire at soLinkable to further community discussion. It’s the commentary that makes social media truly fun and that’s what keeps the users coming back. With that in mind I am very proud to present our second major feature to debut this month, soLinkable reply notification.

soLinkable reply notification will allow a user to be informed when they have received a reply to one of their comments, creating a better overall discussion within the story pages. The method in which they are notified is completely non-invasive. A small envelope icon will appear in the top right hand corner in between the username and profile link. If there are no new replies to be read, then a white envelope with a blue outline will appear. If, however, a new reply is found, a blue envelope will appear. Here is a quick illustrated guide:

messagesOnce in the comment reply screen, they are just laid out in descending order based on the comment date. You will notice that it first lists the story title and its votes followed by the comment. If you are still unsure of what exactly the reply is referring to, a “View Context” link has been added right below the comment. This links to the parent comment of the reply, so you can figure out just exactly what they are talking about.

messages1As of this moment we are still in the beta stages so expect it to be a little rough around the edges. Preliminary testing worked as expected, however there are no doubt a few lingering bugs that went through the test process unnoticed. Don’t be surprised to see minor changes in this feature over the next few days as we work out the kinks.

We expect to add greatly to this feature over the next few months. The back-end functionality that was added in this update will pave the way for user preferences as well as private messaging system. An update emails option will also be added in the near future with the option to receive weekly/monthly emails with all comment replies listed or to subscribe to comments from your submitted links.

This update has also seen a few minor updates regarding how comments are displayed in the story screen. The reply and edit buttons have been moved from the top-right to the bottom-left area of the comment. I have noticed that often times a new comment is posted rather than a proper reply. The thought process behind this move was to centralize the reply button and give it more prominence in the comment field so that it is easier to use. We have also added the ability to permalink to a single comment, something that wasn’t specifically asked for but is nice to have.

Thanks again for your support of soLinkable!

, , ,

Older posts >>