Post 30: Is this the end? Possibly.

Blog on hiatus for now!

Posted in Life and Other Things | 1 Comment

Post 29: Happy Independence Day, From The USA To My Good Friend In Haiti

What a great holiday!!! Remember the history and origin of our country, pay respect to the soldiers and statesmen who have kept and continue to keep our country free, and celebrate with family, friends, fireworks, food and fun!

Awesome picture I found on the internet.

I don’t think I’ve made any mention of my personal political beliefs on this blog before. Maybe I will in the future, but I don’t think today is the day for that.

Anyways, I’ve been meaning to mention a good friend of mine with a shout out to his blog that you should totally visit by clicking here! Rather than celebrating the Fourth of July in America, he will be doing some awesome things over in Haiti. On a missions trip and an internship, he’s working with the non-profit Community Coalition for Haiti doing some cool stuff there while showing and witnessing God’s love.

I know that after that devastating earthquake, anyone visiting the country would see and experience things that I wouldn’t be able to rehash here. You really should read his blog. When we’re so caught up with our modern day gadgets and gizmos it can be hard to fathom  true poverty without experiencing it firsthand. So I urge you to read his blog!!

Anyways, one thing that he mentioned to me was that he will be working on a pretty nifty project during his stay there that basically involves establishing internet connection… by bus.

And I don’t mean a Google Bus! Picture from some website for some school. I’m really bad with crediting picture sources.

The earthquake has left the country with little to no infrastructure, resulting in a need for some sort of digital network to get up and running. Simply laying down cables is not an option since the cables would be targets of the rampant thievery that naturally rises from destitution. Therein lies the challenge.

Now, someone realized that while the country lacks so many things, what it does have is a network of buses. Why don’t we just stick routers on the buses so that they can relay the information (emails, etc.) from a place to a destination? Well, that’s exactly what my good friend is working on. I’ve also been told that this idea has actually been used on a much, much larger distance scale by NASA to relay information to and from satellites, or something like that. It’s a pretty cool idea.

Wooo! Pic stolen from, found via Google Images

Of course, this won’t give the Haitians a lightning fast internet connection, but it will meet the basic need. I think that the next time I complain “Aww man! My connection is only 40 megabytes per second!” I’ll pause and think about how some people in the world have a connection of 4 megabytes per bus trip. Or no bytes per any period of time.

Please pray for Stephen!

Posted in Uncategorized | 1 Comment

Post 28: Crafting The Evolutionary Trebuchet – Part 2

If you haven’t read Part 1 or you have no idea what a ‘trebuchet’ is, then stop and read Part 1!

In Part 1 I posted some videos of various types of trebuchets (Floating Arm, Merlin, etc.). I’m not certain if I will have the time or resources this summer to build all of these designs but I know I definitely want to construct a hinged counterweight trebuchet!

My counterweight treb probably won’t be nearly as intense.

Why would I call this trebuchet the “Evolutionary Trebuchet?” Because its design is going to evolve itself! This is where things get pretty cool. One of my friends here at CMU told me about the Genetic Algorithm, which is a very interesting way of searching for an optimal solution to a problem. The algorithm follows along the concept of natural selection in that it begins with multiple combinations of inputs/parameters (“genes”) that are then tested for performance (“fitness”) and then combines (“mutates”) the best yielding a new generation for testing.

Found this flowchart on Google Images

My current step in the designing process is to figure out a mathematical representation of the physics behind the trebuchet. With the math, writing the code to calculate the projected range of a trebuchet with a given set of parameters (arm length, arm center of mass, change in height of counterweight, etc.) should not be too difficult. This would serve to measure the fitness of a certain set of genes. I’d really like to write up my own trebuchet simulator and genetic algorithm, rather than using some one else’s GA and plugging the values into something like Wintreb.


From there I simply get the most promising measurements and design the machine on AutoCAD or AutoDesk Inventor. The final step would probably be the most active: getting a team together, going to Home Depot, and actually cutting the wood and drilling the screws until we have this awesome throwing machine!

Posted in Life and Other Things, Uncategorized | Leave a comment

Post 27: Commercial Break

[This post is short, simple, and has little insight on anything. Actually, you probably shouldn’t even bother reading this post.]

I appreciate commercials. I think it’s nifty how major companies put in so much money and effort into 30 seconds just to pitch some idea to ordinary consumers like you and me.

Here are a few commercials that I’ve come across recently that I think are pretty coolio.

This commercial randomly came up on YouTube one day and left me feeling like I HAD to find a video of it so I could watch it for the second, third, and eleventh time. It’s just so full of life and sun flaring video effects and examples of smaller positive impacts that technology can have on daily life! I’m a sucker for that kind of feel-good thing.

Another commercial I really liked was Lenovo’s “When Do Gets Done.” 

Water jetpacks are SO COOL! Except their suggested retail price ( Paying $99,500 for a toy is not quite as cool.

Yep that’s it.

Posted in Life and Other Things, Uncategorized | Leave a comment

Post 26: Crafting The Evolutionary Trebuchet – Part 1

What are these wooden structures??

They’re the final product of medieval engineering: trebuchets!

It’s interesting how much planning had to go into the trebuchet that my friends and I built back in high school. It was part of a class in which we formed teams that competed to build the trebuchet that could throw a tennis ball the farthest while keeping the axle no higher than 4 ft given only the wood available to the class and two 90 pound weights. We ended up experimenting with all sorts of proportions and angles on Wintreb, a parametric application that returns a trajectory and projectile distance (this may or may not be significant in Post 28).

Oh Wintreb! Where would we be without you?

The real value of the project was in learning how trebuchets work and can be optimized.

One particular optimization is to have a hinged/hanging counterweight. Trebuchets work by converting potential energy into kinetic energy, but a lot of the potential energy turns into rotational energy because of the way the weight swivels. Trebuchets can minimize the transfer to wasteful rotational energy simply by hinging the weight.

In fact, there’s a way of eliminating the rotational energy altogether! An interesting idea is to have a floating arm configuration in which the weights come straight down snapping the actual throwing arm into a whipping motion, demonstrated in this here video.

And the designs get even wackier than that! Check out this totally different Merlin trebuchet that uses no counterweights other than its own structure!

Of course, these slick designs didn’t exist back in the Medieval Ages. But there are a lot of different ways to design a better trebuchet other than just by making it bigger. An engineer could do something simple like adding wheels (provides greater stabilization since the trebuchet can move while throwing) or something complex like entirely redesigning the structure.

In my free time over the summer I’d like to build some trebuchets with some of my friends at CMU.

Stay tuned for Part 2, which explains why I call it the “Evolutionary” trebuchet!

Posted in Life and Other Things, Uncategorized | 2 Comments

Post 25: Research – Computers Understanding Concepts (Sort Of)!

It’s been over a quarter of a year since I’ve last written in this blog! So much has happened; it’d be kind of ridiculous to try to cover everything in a single blog post. I’ll just cut to the chase. Like before, I stopped putting up new content because of how much work I had on my plate and as with many things in life, once you stop doing something it’s hard to swing back into the habit… sorry about that.

Anyways! I’ve been working on some really cool stuff lately.

While I enjoyed going home for a little under two weeks to visit family and friends, I’m excited to be back for my summer job as an undergraduate research assistant! The lab I’m working in focuses primarily on computational linguistics and natural language processing. The potential of what we’re working on is actually really awesome.

We’re pushing machine interpretation to the point of understanding concepts (or rather, knowing what concept you’re talking about)! One can interpret this sentence in many fantastical ways so please continue reading to understand what I mean.

So right now we have things like voice command and Siri that take a literal interpretation of what you say or type. These specific examples accept simple command inputs that generally follow a “<verb> + <some variables>” structure, like “Call Mom” or “Schedule an Appointment at 3:00”. There is no doubt that this is an awesome feature that demonstrates how intelligently software can complete tasks for you.

But Siri doesn’t actually know what you’re talking about! Before she updates your calendar or pulls up a map populated with nearby Mexican Restaurants, she has to correctly understand your command. This is where Siri’s interpretations can become very ‘literal’ as shown in the image below. Siri is not a philosopher; she is just a function that accepts your words then matches them (without context) to the closest sounding set of instructions for the phone to carry out.

Almost seems like she’s getting sassy. Photo from

We also have things like Google Translate which takes a different and presumably more sophisticated approach to the problem of understanding the implied meanings of messages. Rather than defining formulas that follow all of the niceties of each language’s particular grammar rules and syntax structures, Google Translate actually uses a statistical translation system between each pair of the 41 languages that the service supports.

“Statistical,” as in literally taking huuuuuuge amounts of text that are available in multiple languages and comparing respective translations, which is a huge step towards capturing that ‘human translation’ effect that computers are so bad at. This is incredibly awesome, but again, anyone can tell you that Google Translate is far from perfect. The service still runs into many problems with translations that require an understanding of the actual concept that the message is trying to convey. I think that becomes rather apparent when translating between languages of entirely different language families (like English to Japanese, as shown in the image below) where the difference in rules can be so vast that the meaning just gets contorted.! It translates back and forth between English and Japanese until the translation is the same, reaching “equilibrium.”

From the limited amount of time I’ve been with the research group, I believe that this is the problem that we are trying to solve. We want to develop something that actually understands what you are talking about at a conceptual level… something that takes in your words and then figures out what concept you’re talking about in what context, though I’m not entirely sure how (*hand-waviness don’t you love it? *). This has all sorts of cool implications – more accurate interpretations of commands for assistants like Siri, higher quality translation (“language 1 -> concept -> language 2” has more potential than “language 1 -> formulas/empirical data -> language 2”), longer conversations with robots that actually make sense (as opposed to something clunky like SmarterChild), etc. Actually, these are all interests that I believe we want to take up once we have the whole “language -> concept” step taken care of.

Again, I’m still learning about how all this is coming together – but I’m very, very excited to work with all the other people in this project to make something really cool happen.

Posted in Life and Other Things | 1 Comment

Post 24: The most important thing to carry around with you.

I used to always carry at the very least these three things in my backpack: my laptop, a pen, and a stapler. Staplers were more important to me than the very papers they would staple. People would always ask me to borrow my stapler, knowing full well that I always carried one with me. I guess you could say that I used to be a big stapler kind of guy.

Not quite as much as this guy.

Well, things have changed. I now know how to manage my notes, and by extension my work life. I can say that I am one of the few organized students here in CS. I can say that I no longer have to search for scrunched up notes from Lecture 3 in the depths of my own backpack. I’ve become enlightened; I’ve become a hole puncher.

Seriously, hole punchers have saved my academic life this semester. It’s so much easier to find my old lecture and recitation notes, quizzes, tests, handouts, etc. All my classes use binders, which I strongly prefer over regular notebooks. I always end up jamming papers into my notebooks when I use them. And who needs a stapler to keep things together when you could just tab the things in your binder?

My roommate has this as a poster. It is the largest poster on his wall.

Sure, sometimes I still need my stapler to turn something in. But I love my hole punch so much that I almost forgot I even had a stapler. Everyone should have a hole punch handy in their backpacks. Just be careful that you don’t spill those little circles of punched out paper all over the place.

Posted in 15-150 | Leave a comment