Archive for the ‘Classes’ Category

midterm idea - treemap

Tuesday, February 26th, 2008

For A2Z midterm project, I want to develop a short program to familiarize myself with how treemaps work. I’ve already exercised one simple code last week for class assignment, this could be developed further by putting more trial on it. - For example, simply changing String data from .txt to URL source data.

Some sample existing visuals from web are shown below:

turner1a.gifsf-treemap.pngnewsmap.png

http://jcmc.indiana.edu/vol10/issue4/turner.html

http://radar.oreilly.com/archives/2006/07/treemap-on-rails.html

http://www.cse.ohio-state.edu/~kerwin/treemap-survey.html

yahoo_treemap.jpg

scratch 2

Saturday, February 16th, 2008

I chose to use ‘Vitamin Water‘ images for exercising current topics - saturation, noise, brightness and etc. - in C language.

Complete image of all different colored Vitamin Water bottles shows literally ‘color palette’, that’s why I thought it is great source to manipulate.

vita_orig.jpg

vita_satu1.jpg

Here, I found one small problem: in the code, widow’s size is set to 640×480 so I should bring any image with exactly same size otherwise it’d be crooked as shown above. However, I decided NOT to change the window size in the code.

vita_satu2.jpg

I found something! While size of stroked square remains the same, I managed to change actual navigation square’s size to 50×50 pixel.

vita_satu3.jpg

SetRect(&Recti,mousepoint.h-50,mousepoint.v-50,mousepoint.h+50,mousepoint.v+50);

I changed each value from 100 to 50.

vita_satu4.jpg

This is improvising from Danny’s tweaking - I only changed the value of saturation from 0 to 100.

vita_red_gray.jpg

if(x<mousepoint.h+10 && x>mousepoint.h-10){
ourSetPixel(x,y,R,R,R,bufferRowBytes,bufferBaseAddress);
}else{
ourSetPixel(x,y,R,0 ,0,bufferRowBytes,bufferBaseAddress);
}

vita_grey_rgb.jpg

scratch 1

Thursday, February 14th, 2008

wk3_assig_01_animatedrect.jpg

Simply, switching around some values from the existing .c file and came up with above.

Modified part:
for(y=0;y<70;y++){                                                        // translation to lingo -  repeat with y = 0 to 70
ourFramedRect(mousepoint.h -y*60-count,
mousepoint.v -y*10-count,
mousepoint.h +y*60+count,
mousepoint.v +y*10+count);                                  // calling our method that draws Rects

concordance

Tuesday, February 12th, 2008

This week, I made a simple treemap, referring mainly from the book Visualizing Data. All done is Processing, not Java.

treemap_shot.jpg

Code sample available here.

prototyping-next level

Monday, February 11th, 2008

First idea in order to enhance user experience with Samsung camera is merging multiple buttons in one long, two-way button. (see pictures below) Industry standard word would be ‘Rocker switch‘.

nv15_back1.jpg

Before

nv15_back_enhance.jpg

After

That’d be all for altering ‘physical’ interface. With those two buttons, user can do exactly same navigation as before,by simply clicking either direction to get whatever function. Series of ‘what you can do’ with this button are:

  1. Browsing each function by one-time click
  2. Selecting any function by center click
  3. Fast-image browsing by keep pressing (HOLD)the button

Next step is tweaking a little bit of LCD graphic interface removing the first row icons redundancy.

Application that I am going to use, I am thinking of using Processing or Flash unless some other apps will turn out to be more appropriate and easy to use.

note_menu.jpg

nv15_fl1.jpg

This is ‘in process’ view of Flash window. In comparison to real NV15, my interface shows ‘menu’ first on LCD bottom row.

group project idea: cleaning (to be continued)

Thursday, February 7th, 2008

We, Laura, Sanjay and me, gathered together after class to talk more about project subject.

Laura came up with ‘cleaning’ subject:

  • Why someone does cleaning a lot while the other doesn’t (at all?)
  • What if we observe the house of the person who does cleaning for a living, whether it’d be (extremely) clean or not?

agenda -

Thursday, February 7th, 2008

Group

Sanjay
Aram

We came up with a few ideas but could not narrow down on one:

Movies:
- movie as a product in theatres
- services for promotion
- movies on small screens such as psp,ipod, mobile,etc

Cleaning :
- sanitation
-recycling
-energy

Web Surfing
-different ways?
-different places

Bike Accident Device
-device to notify vehicles that a bike is coming and to becareful

Fashion
- customizing fashion , accessories, trends etc

wk2: observation - online grocery shopping

Thursday, February 7th, 2008

On Sunday, I was being anxious for not getting anyone to observe and document an activity in the home. Originally, I was going to ask someone outside of my family boundary to do this assignment, luckily, my wife (right next to me at home) started doing something very interesting enough to catch my attention.

sn150388.JPG

She was online, looking a number of grocery lists from Korean online shop - Hmart.com. Without asking her why, I began observing taking some pictures behind her(shutter sound disabled before action). No sooner had I got only couple shots from her, she noticed me and laughed, I had to ‘confess’ what I was doing and asked her ‘why’. The reason was that I ended up removing my car only couple weeks ago this made us uncomfortable to shop grocery in same volume that we used to. My house is 2.6 miles away from the nearest Korean grocery market, so we used our car to carry heavy loads. Since we removed the car, we had to shop grocery in very small volume from the other Korean market on 32nd st. NY. Then she found their website and decided to order mainly dry foods and some heavy items like rice and beverage.

While observing her ordering, I found following facts:

  1. She began shopping without her own list. In the past when we shopped local, she always brought the list not to forget and not to ‘impulse buying’.
  2. It took more time to search and ‘confirm’ online coupon to get $10 off than actual shopping time.
  3. After she acquired coupon, she got confused how to properly ‘use’ it.
  4. She accidentally reset the whole cart before checking out twice. This also impact the total running time to shop.
  5. She turned on the radio while shopping. She seemed more relaxed than she was rushed in local store.
  6. She had to concern total weight of the package. If it is over certain amount of weight, buyers should pay more. This made her going back to cart and remove some items such as canned foods.
  7. She ended up losing patience getting organize the shopping list. After the ‘maximum weight’ issue came up, she just put some light weight snacks and two cup noodles in the cart.(randomly)

After placing order, she, again, began worrying about ‘next’ - receiving. The carrier that Hmart offers is UPS and there are chances that both of us are away home and they miss us, leaving the door tag. We have some issues with UPS before, that is no door tag was left and they stop attempting delivering so that we’re supposed to go distribute center and pick the package by ourselves. We fear that. Bottom line, online grocery shopping wasn’t a good idea.

- Now it’s Wednesday which is delivery day(UPS sent her ‘estimated shipping date’ as of today) -

Around 8pm, UPS delivered the package. It was too heavy for my wife to take onto the stairs, so I did it. She asked me a box cutter, then she started unpacking it.

onlineshop2.mov

  1. She opened the box, looked at the packing list, and put it aside. While organizing all foods, she never looked it again to compare.
  2. She grabbed bundled pack of rice punch cans first, opened the closet under the drawer and left the box opened in front of the closet.
  3. She started moving other foods such as 5pks bundled ramen, cup ramens, tuna cans out of the box placing them around her.
  4. She sorted out some Japanese snacks and put them over the box(in the picture, all snacks are placed ‘far from’ her position)
  5. She started storing all other foods but rice punch cans. Interestingly, the rice punch box is in her way obviously, she doesn’t seem to be aware of it or feels subtle about it.
  6. After organizing all ramens, she started storing rice punch cans.
  7. She destroyed bubble cushions (used for protecting goods inside the box) and threw them away in garbage can.
  8. She grabbed the heavies item - rice(15 lbs) and put it in the different closet.(under the sink)
  9. She put the empty box of rice punch in the shipped box and put them in the stairway top(to throw them away later).

ITEM

PRICE

QUANTITY

TOTAL PRICE

COMMENT

Beverages
Fermented Rice Punch (12cans) $8.99 1 $ 8.99  
Aloe Vera Juice $2.49 1 $ 2.49  
Canned Food
Kochoo Tuna $2.99 1 $ 2.99  
Perilla Leaves $2.49 1 $ 2.49  
Light Standard Tuna(Big) - 250g $2.99 4 $ 11.96  
Snacks
Nori Maki Arare $2.99 1 $ 2.99  
Roasted Mix Nuts $2.99 3 $ 8.97  
Imo Kenpi Sweet Potato Chips $3.49 1 $ 3.49  
Rice & Grains
SunShine/MoonLight Rice - 15LBS $19.99 1 $ 19.99  
Ramen & Udon
Neoguri - 5pks $5.49 1 $ 5.49  
Chapagetti - 5pks $5.49 1 $ 5.49  
Sutah Myun (Small Cup) $1.19 1 $ 1.19  
Cup Ramen $1.29 1 $ 1.29  

Order Subtotal

$ 77.82

Shipping&Handling (UPS Ground)

(+) $ 7.95

Sales Tax

(+)$ 0.00

Signup Discount

(-) $ 10.00

Total Amount

$ 75.77

Conclusion: Time spent for online shopping - 48 mins   vs.   Time spent for receiving and organizing - 8 mins

My wife spent almost an hour to buy 18 items online and it took merely 10 minutes to ‘deal’ with them. Although she was going for getting $10 off coupon which is only one time benefit when you join the membership for the first time, I wondered if the total time spent was worthwhile. Beside, all food she ordered were mostly canned or instant food for long time use, we still need to shop rather fresh foods locally. Therefore, I’d like to say shopping grocery online couldn’t totally replace  shopping local with our own car.

In the process of unpacking, organizing, and storing in space(closet), she didn’t seem to take a moment to consider most optimized way of doing them, showing that she randomly grab whichever comes first in her hand.

wk1: user-centeredness :iPod

Wednesday, February 6th, 2008
  • What is the purpose of this product?
  • Who are its users?
  • What aspects of the product are objects, communications, environments, services, or systems?
  1. Objects:
  2. Communications:
  3. Environments:
  4. Services/Systems:
  • What are the product’s features and functions, and what user needs do they address?
  • How were physical, cognitive social, cultural, and emotional human factors considered in the design? How are these successful or not?
  • How could the product be more user-centered?

ipod-family.jpgiPod is a portable mp3 music player designed and branded by Apple. The product line of iPod varies from video-playing, web-browsing enabled one from screenless one which only plays random sequence of musics. As with many other digital music players, iPods also can be used as external hard drives. When synchronized with iTunes, a digital media player/platform, users can organize, play, and purchase music online.

iPods have become unique, generic-looking device standing alone, gaining momentum from young, media-driven and casual consumers. This user base define their own ‘narrative’ of daily life through iPods’ capacity to store, organize and play digital media files. Passers-by wearing iPods’ ear-phone reminds the clever advertisement where white ear-buds contrasts human silhuettes.

1st2ndwheel.jpg

Most significant features of iPod is a ‘click-wheel’ navigation interface. Its buttons perform basic functions such as play, next track, etc. Other operations such as scrolling through menu items and controlling the volume are performed by using the click wheel in a rotational manner. Ever since Apple introduced very first generation iPod on 2001, Apple kept this click-wheel physical interface, updating few improvements such as moving five control buttons beneath the wheel until they announced iPod Touch on 2007. Eliminating ‘outer’ buttons reflects Apple’s ‘less is more’ design philosophy, enabling users experience a luxury feeling of navigating and playing digital media files.

ipod-photo-diagram.jpg

While Apple claims that iPod’s physical interface is human-centered and intuitive so that most users can grasp a sense of using it within a short amount of time, there has been some issues around. In fact, these issues are rather ‘love/hate’ thing, so many of them couldn’t be absolute ‘cons’ of iPods. For physical interface, some users found the power on and off function counter-intuitive. iPod doesn’t come with separate power on/off button, instead, it is powered on and off by holding down ‘play’ button for three or more seconds. Considering many other mp3 players come with normal on/off button, this could be subtle, while many ‘podsters’ would find this beauty. Click-wheel is also controversial, hatching numerous arguments from users. As I stated above, since Apple chose to design the device with minimal approaches, several features have dual-functions that dictate the users to go over ‘few’ steps unavoidably.(i.e. to disable ’shuffle’, users should go five steps back to first menu in the middle of listening music)

So, are these all ‘unsuccessful’ features of Apple iPod?  It is hard to say that way.  Mp3 player market nowadays they keep inventing so called ‘iPod killers’, however, iPod’s sell through is still increasing. With all ‘cons’ from haters and even possible ‘planned obsolescence’ suspect, many loyal podsters still believe that iPod is elegant, luxury digital media device that makes you keep buying it.

wk2: regular expression

Tuesday, February 5th, 2008

Yeah… I have absolutely no idea how I am going to figure this out:regular expression. So, I decided to read the e-book first, but reading the book also turns out to be a long road to go!

The first code below is just about Pattern and Matcher, not even goes further to regex details (meta-characters, character class, quantifiers and etc.).

//wk2 assignment
//my name matching + regex
//aram chang 2008 02 05

import java.util.regex.*;

public class RegexAssignName {
public static void main(String[] args) {
String inputtext = “aram chang is aramcee in Korean.”; // Step #1
String regex = “aramcee”; // Step #2
Pattern p = Pattern.compile(regex); // Step #3
Matcher m = p.matcher(inputtext); // Step #4
if (m.find()) {
System.out.println(m.group()); // Step #5
} else {
System.out.println(”No match!”); // Step #6
}
}
}

output: aramcee

Pattern p = Pattern.compile(regex); // Compile Regex
Matcher m = p.matcher(content); // Create Matcher
while (m.find()) {
System.out.println(m.group()); —> try to memorize this pattern and matcher code….

Next step is getting email address by regex-ing. I’ve had trouble compiling it, eclipse kept showing red underline on my regex. Dannie helped me out just putting one more slash per each and making a2z case insensitive.

//wk2 assignment
//email matching + regex
//aram chang 2008 02 05

import java.util.regex.*;

public class RegexEmailMatching {
public static void main(String[] args) {
String inputtext = “aramcee@gmail.com abc@hanmail.com ddd@hexmail.com”; // Step #1
String regex = “\\b[A-Z0-9._%-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}\\b“; // important to put one more “/”

Pattern p = Pattern.compile(regex,Pattern.CASE_INSENSITIVE); // a -z has to be lowercase

Matcher m = p.matcher(inputtext); //

if (m.find()) {
System.out.println(m.group()); //

} else {
System.out.println(”No match!”); //

}
}
}

output: aramcee@gmail.com