Engineer By Design
  • Archives
  • September30th

    This happened to be one of those nights before an exam where I should be studying, but ended up being called to the keyboard. I’ve had the Neverending Story theme stuck in my head most of all today, so I guess this was a way to appease the madness.

    Unfortunately, this was hastily put together since I really, really do need to be studying so this certainly goes into scraps. The arrangement could be put together, and actually having a bass line that I don’t mess up.

    Song Title: Neverending Story (Instrumental, Short)
    Arranged By: Charlene Valerio
    Original Artist: Limahl
    Instruments: Fantasia (appropriately enough, heh), acoustic bass, grand piano
    Listen:

    Right-click to download: Charlene Valerio – Neverending Story Theme (short)

  • September30th

    I was given a review homework assignment recently for my Embedded Systems class. Most of it was just basic things such as converting decimal numbers to binary and hex and the sort, however I came across a problem on minimizing an expression to sum-of-products (SoP) form where the function yielded a summation of a bunch of values. It certainly didn’t help that I’ve been out of school for a bit, and most of what I was finding online to help me figure this out was on reducing a boolean function to sum-of-products form instead. Now that I’ve solved the problem, I figured I’d be a model citizen of the internet and post on how to come up with a solution for the problem to save some wasted time and effort for others.

    Let’s say you are given the expression,

    sop

    To solve this you would go through 4 simple steps:

    1. Change each of the numbers in the summation into binary
    2. Map the binary numbers into a Karnaugh Map
    3. Group the Karnaugh Map as necessary
    4. Interpret the expression.

    Change each of the numbers in the summation into binary. In order, this would give you:

    0000, 0001, 0010, 0011, 0100, 0101, 0110, 1010, 1011

    Map the binary numbers into a Karnaugh Map.

    kmap

    Group the Karnaugh Map as necessary.

    kmap_arrows

    Interpret the expression. Thus, the reduced boolean expression in sum-of-products form is

    expression_sop

  • September30th

    If you’re given a positive 16-bit hex value and asked to provide the hex representation of its negative value, it is otherwise asking for the 16-bit 2’s complement of the given value.

    So, for example if you’re given 1D7A in hex and asked for representing -1D7A simply take its 2’s complement.

    1. Convert to binary: 1D7A = 0001 1101 0111 1010
    2. Flip the 1’s and 0’s: 1110 0010 1000 0101
    3. Add 1: 1110 0010 1000 0101 + 1 = 1110 0010 1000 0110
    4. Convert back to hex: E286

    Therefore, the representation of -1D7A in hex is E286.

  • September30th

    Graphs of Exponential Functions

    I’ve put together a bunch of screenshots I’ve taken from my TI-89 on the graphs of exponential functions, from y = x, y = x^2, …, y = x^10. The important thing to take from it is that when remembering how these functions look like:

    This is very trivial knowledge, but I’m putting this up because graphs of functions tend to be one of those things that once learned, people toss aside by relying on their graphing calculators can do. And knowing this off-hand is good general knowledge, really. (I.e., determining if a function is injective or surjective without breaking a sweat.)

  • September29th

    As I’m going through this semester, I’m thinking about posting on some topics for my classes to help myself on preparing for exams and doing projects, as well as for anyone who’s looking for more help too. I often find myself surprised on how scattered information on seemingly simplistic search terms on Google are, and I’d like to have something that could act as my own resource.

    I don’t intend on making posts under the category “The Toolbox” in-depth, as I want them to be short and to the point. Of course, if there’s anyone out there in teh internets who’d like me to elaborate more on certain topics I’d certainly be willing to help.

    Of course, they’ll been plenty of posts on my other endeavors in music and art, but hey — an engineer needs to have their own toolbox of sorts.

  • September23rd

    My favorite character in South Park is, hands down, Butters. He also has the cutest little “Lu Lu Lu” song, too.



    I wanted to play it on my keyboard, so I did. It’s not exact, but it’s fun to sing to in the car.

    Song Title: Butter’s Lu Lu Lu
    Arranged By: Charlene Valerio
    Original Artist: South Park
    Instruments: Live! Grand Piano
    Listen:

    Right-click to download: Charlene Valerio – Butter’s Lu Lu Lu

  • September23rd

    The new release of Google SketchUp 7.1 came out recently!

    I decided to play with it a little bit yesterday for fun and out of curiosity. My impressions after using it is that it’s a pretty easy software to pick up and use for anyone from a beginner to an experienced 3D modeler. I believe it’s mostly due to the fact things are much more simplified compared to Blender and even CATIA. For example, SketchUp’s Push/Pull tool is an extrusion, tapering, bevel, cutout tool all-in-one.

    My first attempt to model with it was a hole puncher since it was something lying around my desk and thought it wouldn’t be easy to model, yet not too hard. (But yes, I’ll agree with you that it wasn’t the most exciting model to make.)

    hole punch iso

    hole punch iso2

    Personally, I think I made the model in a pretty sloppy manner, but I was learning. I have yet to go through the documentation and tutorials to get a full understanding of how to use it. Also, in this month’s issue of ImagineFX there’s a feature on artist Alex Jenyon’s use of Google Sketchup in 2D digital painting compositions.

    I’m certainly going to have to give it a try.

  • September21st

    Today’s amusement:

    cottonweed-pokemon-totally-looks-like-ch3-functional-group



    From: Totally Looks Like

  • September18th

    My “music studio” is pretty basic. My typical setup simply consisted of my keyboard, my computer, and LightSnake USB instrument cable.

    studio before

    Though I’ve been recording here and there over the past years, I’ve always had two problems:

    1. I’ve been recording “deaf”
    2. Recording quality

    Recording Deaf
    When my keyboard (a Yamaha YPG-625) is connected to my computer, I couldn’t hear my keyboard’s sound coming through my speakers. The only way I could was to capture it through recording the audio, where it wouldn’t even play through the speakers while doing so. I would only be able to hear it after playing back the recorded audio.

    This has been a rather problematic issue since it prevents me from recording music efficiently. I’ve been wanting to use some audio creation software that I’ve purchased before, such as Sony ACID Music Studio 7,  for making loops though I never felt I could actually do it if I couldn’t actually hear anything of what I was recording real-time. I had been resorting to compiling tracks on the keyboard itself where it’s limited to 5 tracks and 1 accompaniment. And recording those tracks would be a pain, too — it was a one shot chance to record right and if I messed up I’d have to start all over again. And again. And again.

    Recording Quality
    The recording quality was another issue, though it was something that I just learned to deal with. My keyboard and computer were linked together using a LightSnake USB instrument cable, and when just recording an empty signal from the keyboard, it would still capture static noise.

    The static would of course persist over the duration of the audio recording. Though Audacity has the option “Noise Removal”, it always went at the expense of the audio recording quality. In more recent music I’ve made, I just ended up not using the Noise Removal to the audio altogether.

    The Solution
    Every single time I’ve been recording, I couldn’t help but think about re-evaluate my setup. Of and on I would ask the all-knowing Google as well as talking about my recording problems with other fellow musicians, the answer seemed to be pointing to getting an audio interface or mixer of some sort. Upon taking a trip to the local Guitar Center with some friends yesterday, I saw that they had a whole section on recording studios, and after going through different types of interfaces, I ended up purchasing an M-AUDIO Fast Track Pro.

    The price tag was a little high where I bought it at the Guitar Center for $200. I was deliberating between the Fast Track Pro, M-AUDIO Fast Track ($99) and the M-AUDIO MobilePre USB ($150). I chose to go with the Fast Track Pro because the Fast Track used USB 1.1 instead of 2.0 and that the MobilePre USB could only record in mono, where the Pro could record in stereo. (The MobilePre had a stereo output, though).

    It took a little bit for me to set everything up correctly and figure out what the knobs and dials correspond to. But now my setup looks something like this:

    studio after

    I was a little skeptical about it solving my recording woes, and after playing around with it a bit yesterday I’m impressed. But now I can actually hear what I’m recording while I’m recording, which is a very big thing to me.

    Also, I was pleasantly surprised to see the difference in capturing audio now too!

    Before:

    lightsnake

    After:

    with audio interface

    You see that flat line before and after recording? It’s beautiful, beautiful, no noise goodness.

    Here’s to making better quality music in the future. Especially now, since it’ll be MUCH easier for me to make full, 3 minute music arrangements rather than just 30 second shorts.

  • September17th

    I have some interesting projects going on for my classes. In particular, for my Software Engineering class we are to create a computer game using Python and PyGame by the end of the semester.

    I’m aware that making the computer game is a method for us to learn the principles of Software Engineering, but nonetheless I find the project to be exciting. Quite some time ago (Jan 09),  during a layover for a flight, I made an outline of goals for myself to do. It wasn’t a set of goals that actually hit the ground running since I always seemed to find myself tired when I was coming home from work then, though I did accomplish a few things here and there of what I listed out.

    My software engineering project is under the constraints of time, I’m fully aware that one semester of a mere four months is not enough time to create the-most-super-awesomely-advanced-indie-student-game-ever. But, it’s certainly enough time to learn the principles of what I’ve been wanting to learn — game development, Python and more importantly, software engineering — altogether.

    This will be a good semester.