Showing posts with label Site Proposal. Show all posts
Showing posts with label Site Proposal. Show all posts

Friday, June 14, 2013

Gamification @ Stack Exchange

Now, that we know about Stack Exchange and Area 51, lets skip to the main part. The Gamification Site Proposal finally went into the commitment phase. It has been moving along slowly, but if speed is any indicator, then slow is better than fast.

The topic of the proposal is gamification. Gamification is a buzzword which means the use of game elements in non-game engagement contexts. The term, however inaccurate and incomplete, will stick, as most of the work being done, and there is a lot being done, on the field already references and uses the name. Gamification has spread like wildfire over the past few years and will continue on an upward trend till 2016 after which things are expected to slow down. There are a huge number of designers who develop gamified applications and a significant number of people who are treading into it for the first time. The gamification course on Coursera has had a total of 19000 individuals complete it with greater than 70% marks. Add to that the number of professionals already working on gamified systems, and you get a significant number of internet using gamifiers.

What is missing from here, is a single collaborative knowledge sharing resource where developers may collaborate with researchers and work on their problems. A place where professionals may interact and discuss the principals of the field. What is missing is one Q&A site that deals with all of the issues of these diverse user groups. Herein comes gamification.stackexchange.com.

The creator of the proposal is himself a professional of the field, Ryan Elkins. This shows that there is a space to be filled. Also, the 10k Courserians that complete the course everywhere have nowhere to go and discuss once the course gets over (the course forums are cleared every session). Gamification.SE can be a home to many of them as well.

All in all, the user-base is real and vast, and there is no major competition nearby. Excellent conditions for the site to come out strong.

Coming to the scope, the site would cover the psychology that is involved in gamification, along with design and user experience. All of these is technically on-topic on other sites, but at less than 4-5 questions on gamification per month, it is safe to say, that none of the sites would have a problem.

So, what are you waiting for? Register your support!

Stack Exchange Q&A site proposal: Gamification

Saturday, March 23, 2013

What is Arduino.SE ?

The Arduino site proposal is now close to reaching the second stage of the site creation process on Area 51. When I had first seen the proposal, it had three followers, and I became the fourth. It has now grown to 160+ followers and over 60 example questions over the course of two months at a steady rate. When I had "followed" the site proposal, I had thought that this site would become to Arduino, what AskUbuntu is to Ubuntu.



Ask Ubuntu Logo
For the uninitiated, Canonical  Ltd. is the project leader of Ubuntu. It is also at the head of a lot of technologies that were developed along with the Ubuntu platform. Canonical and Stack Exchange had together launched and licensed AskUbuntu as the main support Q&A site for Ubuntu. Canonical also maintains a separate support forum along with a host of other online services. The support forum and the Q&A site, both function together as the troubleshooters'. Arduino.cc, the official site, also has a forum site. The Arduino Q&A site is a site that could work alongside the forums, similar to how things work in Ubuntu. This however,would require acceptance and recognition by the Arduino Team of Arduino.SE, which is a pretty big bet, but is possible.

Coming back to the site, the scope of the SE site would basically include everything that is mentioned on Arduino.cc . The site would be the one repository of information about everything Arduino. I had initially posted my idea of the site scope with the aim in mind that Arduino.SE would cater to both beginners and experienced users. Here is my reasoning behind each point that I think should be covered in the site scope :

  1. Arduino Family

    This includes the Uno, Mega, Fio, Lilypad, Nano, BT, Serial, and others.
    Every board that uses the Arduino tag would be on-topic for the site. This includes both past and present boards.
  2. Arduino Derivatives

    This is something that may be a little contentious. There are a lot of Arduino-like products and Arduino derivatives, both of which are distinct in terms of functioning. I strictly refer to Arduino derivative boards such as Paperduino which are listed on the Arduino site and also, boards which are popularly considered derivatives, but may not be listed. Questions about these boards should be on-topic for the site as they are similar to the main platform as well as share a large part of the community.
  3. Software Tools

    This includes the IDEs, plugins, and libraries.
    Software tools are an integral part of the Arduino platform. They are as much a part of the platform, as the micro-controller boards. Software questions, at the moment, can be asked on Electrical Engineering or Stack Overflow, and this will unite them on a single site. Stack Overflow, in my experience on the site, does not handle hardware specific programming problems too well.
  4. Programming Issues

    This is a natural extension of the previous category. If we include, developing and using libraries, then there will be errors and problems. All such issues would be welcome here.
  5. Hardware Tools

    This did not need to be explicitly mentioned. This includes questions regarding help with using any specific tools that may be required for playing around with Arduino boards and circuits.
  6. Basic Circuit Design Problems

    This again, appears to be contentious. This is something that strictly overlaps with EE, however, I believe should be on-topic for Arduino.SE. I refer to the very minimal design issues that may be faced while designing circuits that may involve Arduinos'. Depending on the community we are able to establish, we could also start answering the more tougher and complex design problems. This however, would depend completely on the composition of the community and may or may not be feasible initially. Optimistically, such issues at some point, would become a part of the site completely.
  7. Circuit Component Issues

    This refers to only parts whose selection depends on the presence of an Arduino in the circuit.
    Again, an extension of the previous point. Questions about which register, diode, transistor, IC, resistors, LEDs, motors, power sources, and more would be on-topic. Troubleshooting problems would also be on-topic. There will be significant overlap with EE on this one, and I believe, that questions should be evaluated on a case to case basis, to determine where they should belong.
  8. Hacks of the hardware, and/or Extending the boards

    Possibly, the most contentious of them all. I envision this site to cater to all levels of expertise and knowledge and thus have information, both horizontal and vertical. The site should deal with issues ranging from naming, seeking permissions, trademarks, logos, and basic legal issues (assuming that we are able to get the necessary expertise). Apart from that, making changes to the board, altering characteristics, adding and/or removing components should also be on-topic. I believe this is necessary if we want to become the one repository for Arduino information. This   could make the site become home to discussions about new boards in the Arduino line-up, even
    before they are released.
  9. Hacks of/through the Software

    This is an extension of #3. Questions about changing and improving existing libraries, IDE's and APIs should be on-topic for the site. 
  10. Projects and Applications Issues

    This includes ideas, advice, guidance in specific issues or problems including design.
    Self-explanatory. Questions, about the structure and design of projects should also be welcome. To what extent, though, is something that we will be able to see from the questions that come up.  

The Community that we may be able to establish should/would include users of all levels of experience with the platform. The site should have both electrical engineers as well as software engineers and #8 and #9 are topics that would interest them. Such topics would interest advanced users of the platform as well. Beginners and intermediate users would comprise the major part of the community. The community is expected to be quite diverse having artists, designers, hobbyists as well. All in all, this will make for one interesting and vibrant site.

Sunday, March 17, 2013

Area 51 is Broken


Recently, the Arduino site proposal was hit by a serial downvoter. On my last count, every question had received at least one downvote so thats about 50 downvotes spread across two pages (Someone really considers this as a bad proposal idea). I thought this was wrong (how could it not be?) and the issue was brought to the attention of the Community Team. However, what happened next, really surprised me. One of the Community Managers looked into it, and responded with :

 I looked at the actual voting data on the example questions and there is one person who cast a large number of downvotes. It looks like there's a user who doesn't think the proposal should go through or that the proposed questions belong to it, which is entirely fair. This is exactly what Area 51 is for.

The one thing that stood out here was that, downvoting all the questions on a proposal page is an acceptable way to not-support or block a proposal. What I find even weirder is the fact that this is the only way to block a proposal (not considering duplicate proposals, in which case there are other ways). So, I believe that Area 51 is broken. What do I mean by broken ? Have a look.



I dont agree with a lot of the stuff said in the video, but I do agree with the main point.
If I think its broken, its broken.
Dont worry, thats not going to be my only argument in this post.

Stack Exchange is a service and earns its money off user data and user actions on the site. So, having a good interface is pretty much one of the basics. Just to be clear, the overall Stack Exchange user interface is really good and functional, it is just Area 51 that seems to belong to a different age and time.

It is only here that the functionality and usability dont match which goes against a simple UI design principle :

The principle of context -- Limit user activity to one well-defined context unless there's a good reason not to

What this principle states is that an action should have a single function and should work in a single context. As an example, lets look at the Back button on your browser. Its action while in the middle of a browsing session is to simply take you a logical step back, that is, one web page back. What happens if you are on your first page ? There are two possibilities here, either it could simply not function and provide a message saying that you are on your first page or it could limit the action to the specific context and close your browser window. Now, lets see what actually happens in real browsers. When you open up Chrome (or Chromium), and are on your home page, you see this :


Freehand Circles. Sigh.
The back and forward buttons are grey-ed out. You cannot actually quit by clicking on the back button. Here, the action is preserved to a single context. I believe this to be a better design methodology considering that you will be catering to users having varied expertise levels in using computers. Of course, this rule has a conditional attached to it. However, coming back to the Area 51 user interface, I really see no good reason for the downvote action to be used in different contexts. The UI itself is far from being cluttered. Its more minimalistic than what is present on other sites.

This actual usage goes against another design principle :

The principle of shortcuts-- Provide both concrete and abstract ways of getting a task done

The principle here is that there should be both long and short ways of doing a task. As users become more experienced with an application, they tend to migrate from the longer method to the shorter method. This principle, also implies, that the user interface should make common actions accomplish-able in the minimum number of steps.

Lets go back to Area 51 now. When a user sees a proposal idea, the two possible reactions are either that the user likes the proposal idea or does not like the proposal idea (internet browsing individuals are opinionated). If a user likes a proposal idea, then the most basic action that a user can do is to support it, by clicking on the Follow It! button.

However, if a user wants to do the alternative, then there is no visible option. I see how this protects proposal ideas from getting bombed by malicious users, but what it misses is a large part of the dont like opinion.

Now, the proposal has a lot of example questions underneath. If you think that a question is a good fit for a site, then you can upvote it. If you dont think it is a good question for the site, then you can downvote it.

Upvote Tooltip
Downvote Tooltip








This feedback is directly sent to the question poser, who had put in time to think about how to develop the proposal and what it should include. Simple. Users who are interested in the proposal can use these options to improve the proposal and provide constructive inputs, as is suggested by the tooltips. However, there still is the other faction of users who think that the basis of the proposal itself is wrong, and have had no chance to express disagreement. Now, things get complicated.

Some of the users, who feel that the proposal is a really bad idea, realise that they still can express disagreement by downvoting the questions. Now, a downvote, as I mentioned, is equivalent to negative feedback on the question. It is not for
I'd rather not see this proposed site
(However, I was told that this is just a semantic difference, something that I do not agree with)

It is for feedback on the question, not on the context of the question and there is no way for the question poser to know the context of the feedback. So, this faction is able to implicitly thwart the proposal, by explicitly telling off users on their constructive inputs. The more motivated ones, like the one who caused this whole discussion, may go trigger happy and downvote all of the questions.

So, how can this be avoided ? How can agreement and disagreement both be expressed ?
My take. Coming up soon!

Wednesday, March 6, 2013

Why am I promoting Arduino at Stack Exchange ?

This is a chat message that I wrote in response to a comment asking me :
 why are you keen on promoting Arduino.SE ?
(In case you were wondering, all this was happening on Area 51)

I started out writing something that turned into a rather long explanation, and I believe is worthy of a blog post. So, here it is :

A combination of reasons. In the few months that I have been on Stack Overflow and Stack Exchange, I have interacted with some amazing individuals right from engineers at Googleplex, California to researchers in UK. I have helped some university students through really awesome project work, some of which I followed up outside of the platform of SE as well. I have answered a few questions and asked some as well and have got excellent responses. Moreover, the different Se sites that exist have made me enjoy this experience even more.

The SE platform is one that the more I use, the more I discover and the more I believe in. I think it has some excellent tried and tested features which make it an excellent platform for technical discourse and learning(to an extent). Look at the toolkit at User Interface as an example. I dont see why we should not provide such tools to different communities and specifically the Arduino Community.

Also, SE inadvertly extends to social interactions as well, which further strengthens the community. There is direct interaction with employees, there is a very responsive Meta.SO community as well. I do think there is scope for a slight bit of an increase in the social aspect of the platform, but thats for another discussion.

Coming to Arduino itself, I started using the platform a year back and have enjoyed using it. I have done a few projects and done some stuff that I probably would not have done if not for the abstraction that the platform offers. The Arduino forums do exist but in the time I have spent there, I have realised that a forum just does not scale up and or work as well as SE when it comes to resouce generation and sharing. There are a lot of questions there for which detailed answers exist but they are extremely hard to find. So, instead you get some quick short answers, but you miss out on that one great answer. Moreover, there usually isn't any closing thread feature as well which is immensely irritating. All this knowledge and expertise, would be much better served on this platform rather the 3-4 major Arduino forums that exist. I am overly optimistic when I think about bringing individuals from dfferent platforms together but I do believe its worth trying.

As far as why not EE goes, I just do not believe that they are serving this community as well as possible.

Knowledge is valuable, but only if it is there for people to find, and in short, this is one of the best ways to share it. I want to contribute to both, SE and Arduino, in more ways than I can just now and this is one way that I can. I will continue to push this forward till it does become a site.