Sep 1 2009

End of Summer 2009

Steve

As the summer is coming to a close (wow, only a few more days before I head back to MIT …!), I thought it reasonable to summarize what I did and did not do. Back in June when the summer was still young, I blogged about a bunch of goals that I had for the upcoming months.

Things I said I was going to do and actually did:

  • Pre-learn some of my classes (got particularly far in 2.004 and studying for 6.142 (a robotics class I want to take), but not far at all in 6.003). The idea is that I would have more free time during the semester (hopefully)
  • Watched some TV
  • SLEEP!!!
  • Run and bike fairly often, more of the latter
  • Had a good internship, and enjoyed living at home for the summer

Things I said I was going to do and didn’t:

  • Learn Blender3D
  • Build an electric bicycle. Oh well, there’s always next summer …not to mention the school year
  • Develop perfect pitch. Didn’t really pursue this one too much, so it might be possible yet!

Things I didn’t expect to do at all, but ended up doing:

  • Learning to play electric bass guitar
  • Starting to program a very simple operating system kernel, along with a good friend MS
  • Growing a goatee (!) :- )>

I’m really looking forward to going back to MIT and having a great year! I plan on trying as many new things as possible and trying to keep an open mind about everything. If you see me not doing that, please pull me aside and tell me what’s up.

Cheers all!


Jun 28 2009

On will-power and hardware issues

Steve

I’ve noticed that I tend to use my computer a lot… perhaps even a bit too much. I suppose that isn’t surprising given I’m a computer science major, but maybe I should start cutting down a bit. Typically, whenever I’m not sure what to do or I have a bit of free time, I find myself on auto-pilot, heading over to my computer. It’s just what I do, I guess. I end up surfing the internet, reading blogs, checking email, facebook, programming random stuff, using graphics software, etc. But it eats up  so much of my spare time!

Lately though, I’ve been on my computer less. For instance, I hardly used it at all yesterday, and it was great! I had so much free time, and the day seemed to last twice as long. I got so much stuff done. I wish I could say that this was a self-enforced victory of will power, but alas I cannot. The real reason why I wasn’t using my computer is because it has hardware issues, and I couldn’t really use my computer :-)

You may have heard that nVidia is in some trouble for producing a large number of faulty graphics cards that have found their way into various Dell, Apple, and HP computers. To make a long story short, my laptop happens to be one of the ill-crossed models to receive a faulty chip. My computer worked fine at first when I got it two years ago, but lately it’s been dying due to video card-related issues. At first it was manageable, but the problem has since become much worse, to the point where my computer has been at times completely unusable and unreliable (especially it seems, before psets have been due). My computer is also overheating a lot…  at one point, I measured my computer’s internal temperature to be 91 degrees celsius… yes, nearly hot enough to boil water!! Computer’s aren’t meant to be that toasty inside.

Enough was enough, so I called up Dell last week to tell them what was going on, and that I suspected I had a faulty graphics chip. Sure enough I was right; my computer was affected. Luckily Dell is handling the situation well, and will be replacing my motherboard next week, so the problem should be fixed.

I’m excited that my computer’s finally going to be in working order again, but in another sense that probably means I’ll be using my computer too often again … My forced vacation from computers is now ending, so I’ll actually have to use my will power to avoid letting this little computation device eat up all of my spare time :-)


Jun 14 2009

Flying machine

Steve

I’ve been awe-inspired for as long as I can remember with things that can fly. I was thinking about perhaps building some sort of model RC aircraft this summer because I think it would be really cool. As I googled around, I found this amazing video. A guy from Canada constructed a model RC airplane with a built-in wireless video camera that can move left/right and up/down. The best part, however, is that this camera motion is controlled by a gyroscope mounted to the pilot’s visor; So when the pilot moves his/her head up, the camera moves up as well, etc. It feels like you’re in the plane, check it out:

I would love to build something like this, but it might be difficult for these reasons:

  • It’s probably very expensive. RC planes alone aren’t particularly cheap, and a wireless, color, high resolution radio camera almost certainly isn’t cheap!
  • The radio video range might not be that great, so that you could lose video (or worse, control of the aircraft) if you fly it too far away. So, you can’t fly long-range missions with the plane

I’ve been trying to think of ways to solve these problems (at least the radio issue). I have an interesting idea; instead of using radio controls to fly the plane, it would be cool to consider leveraging our pre-existing internet and cell-phone network infrastructure. In other words, if we could beam control signals and retrieve video from the plane over the cell-phone network, a plane could fly for much farther. In fact, assuming the plane doesn’t fly into any drop-out zones (which would probably be less of an issue since plane’s are high in the area above obstacles anyways), the plane could potentially go ad infinitum (or at least until the batteries run out :-) )!

Implementing this could be tricky, however. Cell-phones are not designed to transmit arbitrary data (such as flight commands and video data) over the network; they’re designed for low-bandwidth, compressed audio. Hacking a cell phone to get this to work would be tricky, and it may not even be possible due to bandwidth limitations since video typically takes up a lot of space. Another idea I thought of however, would be to make use of relatively newer technologies, such as 3G. First of all, 3G purports to have a much higher bandwidth than a regular cellphone, making the possibility of transmitting video possible. And cellphone carriers let cellphone’s connect to the internet with 3G. Some newer netbooks come equipped with 3G, and can communicate over 3G networks to the internet (requiring a service plan, of course) anywhere there is a cellphone tower nearby.

It would be awesome to build this! Here’s a system architecture for what I’m thinking:

Flight Idea

Basically in a nutshell, a human “pilot” sits at the computer, who sends flight commands and views the flight video (in real time). These commands and video travel over the internet, targeting a netbook mounted on the plane. The netbook can control the plane, and is also connected to a video camera (some netbooks even have webcams built in). Both the computer control station and the netbook controlling the plane are in constant communication with a computer server. The computer control station talks to the server via the internet; the netbook talks to the server via some sort of high-speed cellphone network, such as 3G, which in turn acts as a gateway to the internet.

Some advantages to this design:

  • Allows the plane to fly just about anywhere, because cell phone coverage is widespread
  • Allows for long-distance flights
  • Uses pre-existing infrastructure (internet, cellphone towers) instead of relying on ad-hoc RF communication
  • Since the netbook is a computer, it is completely programmable. It runs Windows or Linux. So, you can get it to do basically whatever you want, and to transmit whatever data you want.
    • A second board can be connected via serial or USB to the netbook, and this board can actuate motors on the plane (such as aeilerons, etc.) to control the flight. Complete “fly by wire”
    • Since the netbook is completley programmable, it can be made to deal with certain error conditions. For example, what happens if the wireless signal disappears? The plane can have an automated program to turn around or something, so that way  it can get back in range. Very basic flight control can be implemented into the netbook
    • Using a computer instead of a cellphone is a better infrastructure choice, and makes making changes down the road much easier.
  • Power is not too much of an issue, since netbooks have built-in batteries, and USB buses are powered from this
  • Many netbooks already have built-in 3G cards and webcams for recording video
  • No complicated cell phone hacking required
  • It’s cool!

Some disadvantages to this design:

  • Although it isn’t prohibitively expensive, it isn’t cheap either. At about the time of this writing, a cheap netbook with a 2 year service plan goes for about $200-$250
  • It involves better hardware than a simple RF receiver. So if something does go wrong and the plane crashes, you’ve lost more than you would have without such a system
  • Possible wireless dead-zones. Although this may not be as much of an issue, since there are less obstacles and a better line-of-sight to cellphone towers when flying high up in the air
  • Wireless bandwidth supposedly goes down with increasing speeds. Hopefully it would still be okay in a fast-moving plane; this would need to be researched.

I think it would be awesome to build this! Since it’s complicated, multi-disciplinary, and could be expensive , it would be best as a team project in my opinion (especially when the team gets external funding!). Hmm… perhaps I should suggest this as a Next-Make project for next year?

Any thoughts on the design, or anything else for that matter?


May 31 2009

My new bike

Steve

I recently got a new bike that I’m planning to bring with me to school next year. I’ve been riding it a lot lately, and today I decided to post some pictures of the machine. Here they are:

my-bike-044

my-bike-027

my-bike-063


my-bike-010

my-bike-048

my-bike-022

my-bike-003

my-bike-038

my-bike-041


my-bike-045

carengine

my-bike-054

my-bike-064

Okay fine, so maybe I was just kidding about the V8 car engine :-) … here’s a far-back view:

my-bike-033

my-bike-001

It’s a nice machine! I went on a somewhat longish mile bike ride yesterday that really got me to appreciate how mechanically awesome bicycles are. The above pictures show one facet why I’m minoring in MechE :-)


May 30 2009

Summer break so far

Steve

So far, my summer break has been great! I’ve been home for about a week now. I’ve

  • Caught up on my sleep… been getting around 10 hours a night! My sleep debt from the semester is a lot lower now
  • Seen and relaxed with most of my family, including going to a BBQ on Memorial Day
  • Hung out with and have further plans to see friends from high school
  • Caught up on watching “Greek” (a TV show about life in college). Lucky for me, most episodes are available for free online from ABC’s website. I’m addicted, it’s a good show :-)
  • Blogged (!)
  • Cleaned my room, unpacked all of my school stuff
  • Taught myself some stuff about calculus of variations and autonomous mobile robot
  • Gotten ready to start working again at Bose on Monday
  • Gotten ready to call Dell, because my laptop has a graphics card problem that should be under warranty

Cheers!


May 29 2009

More fun with graphics

Steve

In my last post, I talked about Windows Live Writer, which has a number of neat features for inserting images into posts, such as adding reflections, polaroid-style borders, etc. This was all pretty nice, but with some of the features, I had to do annoying little things to get the software to do what I wanted. For example, I had to manually disable hyperlinks to online web albums that the software automatically created (and I didn’t want). Additionally, the program didn’t give a lot of advanced controls; it appears to be designed for ease of use (although in all fairness the software usually did a great job without all the complicated knobs and twiddles).

I wanted to see if I could make pretty graphics like this on my own, with more control, and in a relatively easy manner. Luckily, I’ve been using a great, open-source (free!) image editing program called GIMP (GNU Image Manipulation Program). I’d highly recommend it! In addition to having a lot of great features comparable to Adobe Photoshop (without the price tag), it’s also highly extendable. GIMP allows people to write plugins in the scheme programming language (!). This makes it easy to do pretty neat stuff that might otherwise take longer if you were to use the more elemental features of GIMP. For example,  I downloaded three plugins today; one for rounding the edges of a picture, another for adding reflections, and a third for adding polaroid-style borders to pictures.

Here’s an example picture I made demonstrating the rounded edges plugin and the reflection plugin, used sequentially. The reflection on top isn’t a plugin, it’s a semi-transparent white layer at an angle superimposed over the image.ShinyComputer

Here is a sample collage I made using GIMP. I used the polaroid-style border plugin, and the GIMP rotation tool.

PhotoCollage1

If you compare the above collage to the one that was auto-generated in Windows Live Writer in my previous post, you might agree that they look pretty similar. Although it did take a lot longer to make the above in GIMP (minutes rather than seconds in Windows Live Writer), I had more control. And it was fun making these pictures :-)

If you’re interested, I can point you to the GIMP plugins I used.


May 29 2009

Blogging software!

Steve

I’m testing a new blogging program. Instead of typing this post inside of WordPress, I’m using a program called Windows Live Writer, by Microsoft. It’s actually a pretty neat program… you can do a bunch of fancy, neat effects with them.

Check this out:

View Spring Boston Photos
(The above layout of photos was originally a link to a Microsoft Live Album. That was sort of annoying, so I just disabled the hyperlink)

Or this:

You can also add other knarley effects, like rounded edges or reflections (but unfortunately not both at the same time). It’s a pretty neat program! It integrates nicely with WordPress and tries to emulate your current theme as well. I’m pretty impressed with it.


May 24 2009

Sophomore year in summary

Steve

Looking back, I suppose I did a lot of cool stuff this year. Even though in one sense I feel like my sophomore year flew by, some things from first semester seem like forever ago. I’ve tried hard to come up with a long list of my favorite things from my sophomore year. This is partly so I can look back at this post in the future and remember all the neat things that happened! Here goes:

  • Taking a bunch of interesting classes: 6.034, 6.02, 6.042 24.01, BattleCode during IAP, 6.004, 6.005, 6.006, 2.003, and 21M.340
  • Learning to play the drums better, and playing in Next Act
  • Learning how to do a bunch of Chinese Yo-Yo tricks, and then performing some of them at an ATS festival
  • Helped make Next House voting websites during first semester. Learned a lot about MySQL and PHP in the process
  • Taking lots of cool pictures of Boston, and MIT
  • Going into Boston a lot more; exploring, running, trying new restaurants. For example:
    • Eaten at many restaurants in Boston: Pour House, Chili Duck, the Apple Store (it counts as food :-) ), Penang,
      Uno’s, Vinny T’s, Jillian’s, La Suma Cantina, Mike’s Pastries, the Olive Garden, a midnight IHOP run at the end of the year that turned into a pizza run, Berry-Line, Chipotle’s, …
    • Watching the Boston Marathon
    • Going on a tour of BU
    • Running the bridge loop
    • Ice skating (or trying to, at least …) TWICE! on Frog Pond in the Boston Common
  • Oh yeah, ice skating at the Spooky Skate on Halloween! (I dressed up as a nerd – Steve Urkel. Surprising, huh? :-P )
  • Started running… can do 3 miles at a fairly brisk pace!
  • Hung out with friends a lot
  • Met some cool people and friends, from MIT (and a few from other schools)! Said goodbye to others
  • Went on some blind dates, and speed-dates
  • Did a UROP in MIT’s CSAIL lab – got to work on a robotic forklift
  • Finally decided what my major is! (6-2 vs. 6-3)
  • Took a MechE class (2.003) and loved it!
  • Finally decided to minor in MechE!
  • Finally decided that robots are really cool, and that’s what I want to focus on academically at MIT
  • Started blogging (!)
  • Continued playing jazz piano in the jazz combo. Know more “out there” jazz chords thanks to 21M.340!
  • Heard two jazz works that I wrote performed by a real, professional jazz band; one an original blues song, and the other an arrangement of “Night and Day”
  • Designed a working computer processor (CPU) in 6.004!
  • Got better at managing time during 2nd semester (I suppose 5.5 classes will do that to you!)
  • Learned a lot more about Linux and the command line
  • Participated and had fun in BattleCode, MIT’s AI competition during IAP
  • Drank a lot of apple juice, and milk too
  • Taught a class on PHP during IAP
  • Met Oliver Smoot, and shook his hand (!)
  • Went to some fun parties with friends (PKT during halloween, Phi Delts and party hopping during CPW 2009)
  • Went to Next House’s Starry Night formal at the beginning of the year, and AEPhi’s karaoke formal in the Spring
  • Went to some fun Hillel events, like Jews On Ice (ice skating, haha…), a comedy club trip with people from Wellesley, Latke vs. Hamentaschen debate, random BBQ’s, etc.
  • Visiting the North End in Boston on several occasions
  • Hanging out at SIPB and going to cluedumps, mainly during the first semester
  • Continued to see and have fun with high school friends on vacations!
  • Programmed to the light of a disco ball in my room :-)
  • Helped co-drive my friend WS’s robot in the 2.007 competition
  • Helped start a new group on campus – Next-Make. Helped work on a 3D Printer for CPW 2009 (got a computer, install software, postered campus telling prefrosh to come and see it, etc.), and made the website with my friend JWC: http://next-make.mit.edu/
  • Having some fun during rush at the beginning of the year, and sticking with Next House
  • Collecting more computer parts (especially during first semester), and finally getting a working P4!
  • TA’d for my friend WS’s beat-boxing class during IAP!
  • Set up a server in my room (http://electron-monkey.mit.edu/), although it’s off now
  • Got featured on the MIT homepage! Some friends and I went to the beach before classes started, and made a “Sand MIT” that got shown on the homepage
  • Pulled some all-nighters…
  • Had a fun birthday, both on campus (scavenger hunt puzzle + food + wetness), and at home (surprise party!)
  • Went sledding with friends… at the Stata center!
  • Went to Ring Premiere, and got my brass rat at Ring Delivery! (and then saw the Star Trek movie with friends)!
  • Participated in Mystery Hunt during IAP (with the ducksoup team)
  • Sent a happy pi day email to all of campus!
  • Went to a SWE dinner with some male friends at the beginning of the year
  • Went to a various concerts throughout the year, such as MITWE, MITSO, FJE, AXO Lip Sync, etc.

Hmm… can you think of anything I forgot? A lot happened this year, so I’ll bet I forgot stuff!


May 22 2009

What I’m Up To

Steve

Here are some thoughts on my mind:

  • Wow, sophomore year flew by quickly! It’s kind of scary that I’m already 1/2 done with my undergraduate career…
  • As this is the last full day that I will be at MIT during my sophomore year, I’ll be doing some fun things with friends. A trip to a place called Berry-line in Harvard Square is very much in line; and hopefully even some other fun things, like maybe going out to dinner, going on a midnight IHOP run, etc. The possibilities are endless :-)
  • I’ve been doing some paperwork this year, and I’ve officially declared my minor in Mechanical Engineering! Hooray!
  • I’ve also lately been trying to plan out a lot of my classes. I’ve decided that I want to do a lot of robotics stuff at MIT, so there are a number of courses I’m planning on taking, including 2.007 (Design and Manufacturing I, but really building a robot), 6.141 (Robotics: Science and Systems I), 2.12 (Introduction to Robotics), and a neat Grad-H called Underactuated Robotics (I don’t remember the number for that one), that teaches about walking, flying, and swimming robots. Looking forward to these classes!
  • I’ve also decided that I might want to do a UROP here one summer. I’ve never stayed at MIT during the summer, and there’s always a lot of neat research going on, so I might stay here one summer. If I do UROP here some summer, I’d likely try living off campus in a fraternity house; I think it would be a good experience.

That’s all for now!


Feb 19 2009

More Epic Slang!

Steve

This is a continuation of my ongoing commitment to seek out and identify awesome and epic slang. Today in 6.004, I was telling a friend AS about some of the amazing slang I’ve been introduced to lately. Upon hearing “I’m good, like applesauce,” she thought up another great gem: “I’m hot, like chili.” This one seems like it has a lot of potential. In addition to the obvious implications, it actually has some hidden meaning, too. Let me briefly explain:

  • Chili = beans + sauce. Therefore, chili = cool beans + awesome sauce. (if you’re really confused right now, you should read my other post about epic slang!)
  • I’m a fan of the hidden oxymoron – chili sounds like chilly, which is cold (quite the contrary of hot!)

I hope I can find some good usage scenarios in daily converstation to use this phrase. If you get any ideas about this, let me know!