One of my favorite things about Stormweight is the way it lets me look at ideas in relation to each other. Of course you can map out which are more important and compare that to others, but you can also group idea by category. When lists get longer, though, things can get a little unwieldy. Ranking ideas across categories can be like comparing apples to oranges In the past, just to make things manageable, I’ve split a list into multiple lists by category. Although this made it easier to review and rank ideas, I still felt like the ideas belonged in a single list where I could compare them to each other.
For awhile now, I’ve really wanted to be able to expand a single idea into a list of ideas - a list within a list. I ran into this again at Thanksgiving. Jacob and I made up a list of things we needed to do before we could go — take out the trash, pack bags, get the food together, etc. We found that ideas like, “7 pair of socks,” and, “sketch pad?” were also cluttering up the list without a clear way to rank them. Sure, we wanted to remember to put them in the bags, and socks are more important than a sketch pad, but they didn’t exactly compare neatly with “put the lights on a timer.”
So, Jacob enabled sublists, a feature he’s been playing with for awhile, and it worked great. Now we could have a Thanksgiving list with ideas like, “pack” and “clean,” but when I expanded “pack” there was a little note that said, “this idea has a sublist.” Click on the note, and you go to the list. Now I can rank everything from sock to cellphone charger to sketchpad, deciding what’s most important to take without those priorities confusing the priorities of the master list.
Now every idea has a create sublist button. Give sublists a try and let us know what you think.
Geeky stuff again, but slightly less so. If you want to get your ideas out as a CSV (comma separated values), try going to one of the following URLS. You’ll have to substitute in the list url that you see when you look at the list in your browser.
http://www.stormweight.com/lists/#{your-list-name}/ideas.csv
http://www.stormweight.com/lists.csv
There’s not a whole lot in there now, but it’s enough to ask for feedback. What do you want from a CSV dump? Let us know at this API-specific Stormweight list
If you’re not a programmer or technical type, this post is probably not very exciting. Sorry!
Otherwise, dig this: I just hacked out an read-only XML API for Stormweight. It’s a fairly bare-bones interface, but more will follow. I’ll be using curl in this example, but it should be pretty simple to wrap this with any language that does HTTP GET.
Important: This is an alpha API. Although this document will always reflect the accurate state of the API, I’ll likely be changing the structure as the API matures. The silver lining of this is that the API is still flexible. Please make suggestions at this API-specific Stormweight list
/lists/#{list-id}/rankings.xml/lists/#{list-id}/group_rankings.xml/lists/#{list-id}/ideas/#{idea-id}.xmlopen_membership to /lists/#{list-id}.xml/lists/#{list-id}/ideas.xml to provide two URLs: html_url and xml_urlFor now, authentication is just HTTP basic auth. I’d like to transition to OAuth fairly soon if there’s substantial API traffic. A request looks something like:
curl http://username:password@www.stormweight.com/whatever_request.xml
A request to /lists.xml will yield an xml document of the lists available to the authenticated user. Example:
$ curl http://username:password@www.stormweight.com/lists.xml
<?xml version="1.0" encoding="UTF-8"?>
<lists>
<list>
<title>List 1</title>
<url>http://www.stormweight.com/lists/list-1</url>
</list>
<list>
<title>Stormweight Review</title>
<url>http://www.stormweight.com/lists/list-2</url>
</list>
</lists>
To get information about a list, make a GET request to the <url> in /lists.xml, followed by .xml. For example, if we wanted to find out about List 1:
$ curl http://username:password@www.stormweight.com/lists/list-1.xml
<?xml version="1.0" encoding="UTF-8"?>
<list>
<title>List 1</title>
<description></description>
<created_at>2008-11-02 16:53:20 -0800</created_at>
<updated_at>2009-07-16 22:04:03 -0700</updated_at>
<open_membership>true</open_membership>
<anonymous_ideas>true</anonymous_ideas>
<anonymous_comments>true</anonymous_comments>
<idea_anonymity_override>false</idea_anonymity_override>
<ranking_expiration>
<count>1</count>
<period>week</period>
</ranking_expiration>
</list>
A list of ideas is available at lists/#{list-name}/ideas.xml:
$ curl https://username:password@www.stormweight.com/lists/list-1/ideas.xml
<?xml version="1.0" encoding="UTF-8"?>
<ideas>
<idea>
<title>Idea 1</title>
<description>This is an idea</description>
<created_at>Mon, 17 Aug 2009 12:06:34 -0700</created_at>
<author>anonymous</author>
<html_url>https://www.stormweight.com/lists/list-1#idea_1234</url>
<xml_url>https://www.stormweight.com/lists/list-1/ideas/1234.xml</url>
<categories>
<category>Blimp</category>
</categories>
<comments>
</comments>
</idea>
<idea>
<title>Idea 2</title>
<description></description>
<created_at>Wed, 15 Jul 2009 15:35:24 -0700</created_at>
<author>anonymous</author>
<html_url>https://www.stormweight.com/lists/list-1#idea_314159</url>
<xml_url>https://www.stormweight.com/lists/list-1/ideas/314159.xml</url>
<categories>
</categories>
<comments>
<comment>
<text>Need more specifics</text>
<author>anonymous</author>
</comment>
</comments>
</idea>
</ideas>
Make a request to /lists/#{your list name}/group_rankings.xml to find out what the group thinks.
$ curl https://user:pass@www.stormweight.com/lists/list-1/group_rankings.xml
<?xml version="1.0" encoding="UTF-8"?>
<group_rankings>
<ranking>
<position>0</position>
<idea>
<title>idea 1</title>
<url>http://www.stormweight.com/lists/list-1/ideas/1337.xml</url>
</idea>
<strength>1 @ 29.4%</strength>
</ranking>
<ranking>
<position>1</position>
<idea>
<title>idea 2</title>
<url>http://www.stormweight.com/lists/list-1/ideas/314159.xml</url>
</idea>
<strength>1 @ 26.5%</strength>
</ranking>
</group_rankings>
Make a request to /lists/#{your list name}/rankings.xml for the authenticated user’s rankings.
$ curl https://user:pass@www.stormweight.com/lists/list-1/rankings.xml
<?xml version="1.0" encoding="UTF-8"?>
<rankings>
<ranking>
<position>0</position>
<idea>
<title>idea 1</title>
<url>http://www.stormweight.com/lists/list-1/ideas/1337.xml</url>
</idea>
</ranking>
<ranking>
<position>1</position>
<idea>
<title>idea 2</title>
<url>http://www.stormweight.com/lists/list-1/ideas/314159.xml</url>
</idea>
</ranking>
</group_rankings>
For a while, we’ve been using comments to chat on a Stormweight list. Since the site updates every couple of seconds, this worked pretty well — until we finished chatting and had a monstrously long string of comments that bloated the idea every time we wanted to expand it. Chat really highlights the collaborative nature of a list. We’ve imagined a number of ways it will change how people interact on a Stormweight list, and we’re excited to hear how chat changes the way you experience Stormweight.
Like everything else about Stormweight, chat works asynchronously or in real time. Each list has its own chat space. Every member of the list can see the chat and participate in it. You can have a back and forth, real time conversation, or you can post chats that other members will see when they next visit the list.
We think chat’s really cool, so we’ve put it live, though there are features we’ll be adding in the near future. Optional email notifications for chat are on the way. An adjunct to chat, the tab in which a list is open now flashes when a change occurs if your browser isn’t focused on that tab. Currently, the text lets you know how many updates have occured, but not what kind. The tab will blink if an idea, a chat, or a comment is added, but once you focus your browser on the list, you’ve got to search for the change. It works fine if you’re in the middle of a conversation, but it’s pretty frustrating otherwise. We’ll be adding visual indicators to make it obvious where the change occured very soon.
As new collaborative elements emerge, managing Stormweight email notifications becomes increasingly salient. The list preferences page is looking pretty baroque. Smarter, batched email notifications are on the horizon.
We’d love to hear how you’d like email notifications to function. How many notification preferences settings are too many? What’s the optimal frequency to receive batched notification emails? We’re trying to keep everyone up to date and engaged with their lists without swamping any inboxes. It’s a fine line to walk. Input on this subject either in the comments on on Stormweight Suggestions are much appreciated and will be duly considered.
We hope you like chat and find it useful. We’ve been having a lot of fun with it. Post a comment and let us know what you think.
Finally we put up landing pages! Now we can start split testing copy and layout in earnest. These pages should feel a little less alien than just arriving on the open lists page and a little less intimidating than one of the copy heavy pages that tried to fit everything from explanation to sign up into one page. If you want to know more about the company and how we view our product, check out the new landing page.
We’ve also made a small style change to the lists that we hope will make them easier to look at. The columns now fit to the size of your window eliminating the need for a scrollbar. They’ll resize on the fly as you resize your browser window.
Probably the biggest change functionally is the ability to email ideas and attachments to a list. Now you don’t have to be on Stormweight to add ideas. If you have a smart phone, this gives you limited interaction with Stormweight. (A smart phone application is in the works, but it’s playing second fiddle to making the site stronger.)
To add an idea to a list by email, send it to the email address at the bottom of the new idea form. The subject line becomes the title, the body of the email becomes the body of the idea, and any attachments to the email are included as attachments to the idea.
Enjoy!
Hi everyone,
I just spent a couple hours playing with Adobe Kuler and came up with the color scheme you see today. I tried to add some warm tones (the nav bar and the footer, specifically) and lighten up the site a little without losing our signature purple. Is the site too dark for you? Too big a change? Not enough? Let me know in the comments!
The number of lists of which I am a member has been increasing. Most of them have “Stormweight” in the title. Pertinent titles for sure, but not so great when I’m scanning through my lists trying to find something. Stormweight Review, Stormweight Product Development, Stormweight Core Values… did I scroll past Stormweight Blog Topics already? Annoying.
Fortunately, Jacob’s been working on the site’s search capabilities. Now there’s a search bar at the top of my lists. It’s a little change, but it makes navigating the site much quicker. It works so well we’ve discussed putting one at the top of the dashboard drop down too. What do you think?
Within lists, searching has also become more sophisticated. As you create a new idea, typing into the title field searches all ideas to reduce reduplication. The original search bar is also more powerful. You can use it to view ideas by shared characteristic. For instance, typing “has:attachment” into the search bar hides the ideas in the all ideas column that do not have attachments. The handful of search terms you can use to sort ideas by characteristic are:
has:attachment
has:body
has:comment
is:mine
Are there other characteristics you’d like to be able to sort by?
I’m finding the new search capabilities useful. Give them a try and let us know how they work for you.
We just added a few keyboard hotkeys. These are easy to add, so let us know if there are additional hotkeys that you’d like to see.
/ will focus the search fieldesc will unfocus any text inputcontrol-n will focus the “new idea” formYou now can invite people to lists by email address, even if they’re not members of Stormweight. When they sign up for an account with the email address you invited, they will be privy to the lists from which you sent the invitation.
If you have multiple email addresses, don’t worry. We’ll have your back in short order.
Now, you can have lists of “books” or “suggestions” or “meeting places” instead of just “ideas.” This list preference is the next in a long list of features planned to let list editors customize lists to their preferences.
Two new developments here on Stormweight. First, a list’s columns are now moveable. Drag them around and place them wherever on the screen is most convenient for you. Find it more intuitive to drag ideas into rankings from right to left? Switch the All Ideas and My Rankings columns. Want to focus on priorities? Drag the group priorities column to the center of the screen. You can resize columns too effectively allowing you to zoom in on a single idea.
Secondly, categories now have icons associated with them. Pick from a selection of symbols when creating a category. What do you think? Associating a picture with a category can help sort ideas with a glance, but the current choices are a little arbitrary. What images would be the most representative icons for your most commonly used categories?
Attachments are no longer limited to images. Attach whatever you like. Non-image files show up as download links.
Drop shadows, rounded buttons, a smaller header, and inset form fields.
What do you think of our new design?
Here at Stormweight we tend to work on the same lists simultaneously, and in doing so, identified a problem. Have you ever been creating a new idea or inputting a comment only to have your work suddenly disappear? Well, that won’t happen anymore. Used to be that if two people were working on the same list, when one posted a new idea, an edited idea, or a comment, all fields were cleared for everybody. Now, two people can work at once and no one will lose their work. Handy! Stormweight updates every 2-5 seconds too, so you can see changes in real time and respond to them. Collaborative ideation just got much easier!
Because Stormweight updates frequently, you can use comments like an anonymous (assuming the list is set to anonymous comments) chat. Try it out. It can be a bit unwieldy, but it’s kinda fun. I think it’s great for short exchanges about an idea. For longer conversations though, a conventional chat app will probably serve users better.
As a final note, this mini-blog now supports comments. We’d love to hear feedback about how the changes we blog about here are working out for everyone.
Searching through the all ideas column has been at the top of our stormweight group rankings for a while. Now, with the power of jQuery, it was a fairly simple addition.
Try loading one of your lists and typing into the search box at the top of the all ideas column. As you type, only ideas containing the text that you type will remain in the list. If you delete the text, the ideas will show back up.
You can use the search feature to filter by categories too. Have a look at the categories as they are capitalized next to their check boxes, and make sure you enter the correct case into the search box.
Search is currently case sensitive, but we plan to fix that in the near future.
Check out that little red box beneath the New Idea description field. You can now attach images to ideas!
At the bottom of the New Idea box there’s an Attach File button. Click on it, and make your file selection in the directory. Now, hit upload. Easy as one, two, three. You’ll see a thumbnail of your file right beneath the description field. You can attach as many files as you like, and delete them with the big old delete button next to the thumbnail if they don’t make the grade. Fill out the rest of the form as per usual and hit Create. The attachment thumbnail now appears above the comment box when you expand the idea. Click on it for the full sized attachment.
We’ve updated all of the javascript on the site to be jQuery based, so hopefully idea dragging will be easier and less jumpy on all browsers. Although jQuery is a little strange to work with coming from prototype and scriptaculous, it seems incredibly powerful and extensible.
As part of this upgrade, you’ll notice that you won’t be able to rank more ideas than the maximum stated at the top of “my rankings.”
For any geeks reading this, I’ve decided that RJS is a toy and that the preferable solution to a JS-intensive application is JS + ERB. At some point, I may transfer more of this to the client side, but for now JS will live in the V of MVC
Sounds a little like a cracked out superhero duo, huh?
Welcome to the first post of the Stormweight blog! Watch this space to learn about the exciting new developments taking place on Stormweight.
You’ll also notice a new feature when you manage your lists. You now have the option to expire rankings. When you select the checkbox next to the expire rankings options, two dropdowns appear allowing you to select a number and days, weeks, months, or years. We implemented this feature to keep rankings relevant even on lists where one or many users have stopped checking new ideas and revising their rankings. Now, list editors can decide how often list participants need to check in to keep rankings relevant.
If a user doesn’t check in on a list and revise their rankings for a period of time specified by the editor, their my rankings column is cleared and they no longer have weight in group rankings. As soon as that user logs back onto the list and makes new rankings, they influence group rankings again. If you’re on a list with an expiry period, but don’t feel that any of the new ideas merit revised rankings, you can always reorder a ranked idea and then switch it back immediately. Even the smallest change registers as activity and will keep your rankings from being dropped. May be a small pain, yes, but we think the situation where this is necessary should arise but rarely on a healthy, thriving list, and the ability to expire rankings should encourage healthy lists.