betherenyc user testing prep

In preparation for user testing next week, I came up with 5 questions/tasks what I want to get out of testers:

  1. What do you think this site is about?
  2. What is the first thing you notice about this app?
  3. Find an event that you are interested in, near here.
  4. Find an event at a different location (like closer to home or work)
  5. Add an event to this app that you’d like to share.

Simple Direction, wayfinding app

David Gibson, wayfinding expert and author of The Wayfinding Handbook: Information Design for Public Spaces, spoke to our user experience class a few weeks ago. After his presentation on how he and his team design wayfinding experiences, we had an interesting discussion around GPS navigations systems. A classmate told a story of how his friend, new to NY, a year later still didn’t know where anything in the city was. He used Google Navigation to get anywhere. His face stuck on his phone, he spent all his journeys, long or short, watching his blue location arrow advance and made sure it followed the glowing digital path laid out for him.

The awesome thing about GPS navigation systems is that you’ll never get lost. There are even algorithms for travelling the shortest route, the cheapest route, or the route with less traffic. But the thing that sucks about GPS Navigation is also that you’ll never get lost. Following bullet pointed, step-by-step directions takes away from the opportunity to discover things on your own. Continue reading

IRC Mobile App Proposal

The Brief

Based on a creative brief, Carlin and I have been thinking about how a the International Rescue Committee could use mobile-based technologies as a way to ultimately garner donations and raise awareness about the organization.

Looking at some of their competitors, we didn’t find much on mobile. My research on uses of mobile tech in non-profit organizations didn’t garner much beyond stressing the importance of creating a mobile-friendly version of their website. I think that that is a given.

For this exercise, we wanted to see if we could do more. Continue reading

AJAX calls and external APIs

This week I added code to pull data from NYC’s Department of Parks and Recreation. They publish their Events Calendar via NYC Open Data. To get the XML data into a format I could work with in NodeJS, I used the xml2js library which converts XML to a JavaScript object which I then convert to JSON.

For now, my /nycdata route does the data crunching and adds the events from ‘today’ to my database.

I also added a modal window with the event’s data that’s loaded via an AJAX call to the database. To do this, I created another API route to return just one event by it’s ID.

You can checkout the live version in progress here: betherenyc.herokuapp.com
And follow the code on GitHub: github.com/michelleboisson/betherenyc

To do:
– either have /nycdata called once via a cron job at the beginning of the day
– check to see if today’s data has already been added to avoid duplicates.
– add a visual indicator that shows that data is being loaded via AJAX

JSON API for betherenyc.com

This week, I learned how to create a JSON API for the betherenyc data using ‘response.json(‘jsonData’)’ in NodeJS. Here’s the feed: http://betherenyc.herokuapp.com/api/allevents/

You can follow the code for the whole project on GitHub: https://github.com/michelleboisson/betherenyc

// return all event entries in json format
app.get('/api/allevents', function(request, response){</code>

// defining the fields I want to include in the json data
includeFields = ['name','desc','urlslug','date','time','place'];

// query for all events
queryConditions = {}; //empty conditions - return everything
var query = Event.find( queryConditions, includeFields);

query.sort('date',-1); //sort by most recent
query.exec(function (err, eventPosts) {

jsonData = {
'status' : 'OK',
'events' : eventPosts
}
response.json(jsonData);
});
});

Wireframes for greatbuildings.com

Following up the content restructuring I did last week, I began building out wireframs schematics for how the content my start to lay out on a page. Taking direction from the hypothetical RFP, I simplified the search and made the mission statement prominent. The idea is the mission statement with describe what users can expect from the site. In fact, the mission statement is where, normally, you would find the logo and acts a link to the homepage.

I also recognize the importance of good copywriting on a website. In several places, I should short samples of text where pointed copy would add to the intent of the overall design. Continue reading

GreatBuildings.com content restructuring

For this week’s assignment, we received a hypothetical RFP for resigning the greatbuildings.com website. The current site is confusing, brings you though loops, and leads you outside of the site without you expecting to. It suffers from many things, but it mainly seems like they didn’t think about how the site would be experienced as a whole from the user’s perspective. The lack of visual hierarchy and  the confusing information architecture makes the site difficult to navigate.

Our sample RFP defines the project’s objectives as:

  • Make it easy for students and people passionate about buildings and architecture to find what they are looking for and learn more about what they find
  • Encourage discovery and exploration of new buildings
  • Be a resource for information about buildings
  • Encourage a community of interest around architecture and buildings
  • Allow the community to enhance the catalog of buildings and related information

I broke this down into 3 objectives for the user:

  1. Be able to conduct research
  2. Browse and discover interesting content
  3. Identify themselves within the community

From there, I fleshed out the revised architecture for the site at the top of this post.

Time Based Game: ITPville

UPDATE: Because of our deadline to launch the game this Friday, and most of the online development is not complete, we’ve planned out a new way to play the game via email submissions. More on this to come.

————————

Matt London, Lisa Park, Christie Leece, and I are creating a time-based game in the likes of CityVille. ITPville is a multiplayer online game in which each players’ goal is to dominate the floor with their projects. At any point during the game players have a chance to spend their ‘inspiration’ points on different projects and actions. Projects bare ‘dominance points’ when they are placed in a room. The player with the most dominance points in a room, gets bonus inspiration points at every round. The player to dominate all the rooms wins the game.

Our plan is to build an online interface. You can follow the progress of the code here: https://github.com/michelleboisson/ITPville

And see the live version here (still in development!): http://itpville.herokuapp.com/

Emo Ant: an Dynamic Comic Strip

Archana Kumar and I creating an online dynamic comic strip for our comics class final and HTML5 class midterm.

In this story, Cameron is a rebellious teenage ant. We meet him at the breakfast table with his family while his hundreds of siblings are diligently doing there part. Cameron, on the other hand, flies into the scene on a makeshift parachute he built himself, and scoffs at the processed foods and artificial ingredients. His emo hairstyle and dress makes him stand out even more and are the topic of conversation between Cameron and his parents.

We are planning present this comic with an interactive interface online. As the user scrolls down, the story advances with animated transitions giving the user full control of the flow and speed. We’ll be using parallax effects, css3 transformations, and javascript queueing for the speech bubbles.

See the progress here: http://itp.nyu.edu/~apk284/html5/week6/

Betherenyc Databases with MongoDB

This week, I connected a database to my betherenyc project. I’m using the noSQL database MongoDB, through Heroku, which will give me more flexibility with the data and its structure as opposed to a traditional SQL database. I’m using the MongooseJS library to interface with the database.

So far the fields my data schema for events is as follows:

var Event = new Schema({
name : String
, urlslug : String
, desc : String
, date : { type: Date}
, time : String
, place : String
});


See the progress of this project at betherenyc.herokuapp.com
See the code at github.com/michelleboisson/betherenyc

I’m also building an online game that we’re calling ITPville for my Big Games class. It’s a multiplayer game in the likes of CityVille. More info on this coming soon.

Proudly powered by WordPress
Theme: Esquire by Matthew Buchanan.