First hackings with Arduino: Text on LEDs

The word "Arduino" is illuminated by red LEDs in a blur.

There are only 10 LEDs in this picture.

Last week, I ordered the ARDX Arduino Experimenter’s Kit from Solarbotics. I finally got a chance to play with it today, and it is so awesome. I’ve done a lot of software programming, but my only experience with hardware programming was the Digital Design course I took this summer. It involved using a language called Verilog, which is unreservedly my least favourite of all of the languages I’ve ever coded in (about a dozen).

This kit is awesome. It comes with a plethora of fun parts to use with the Arduino, including a servo, a DC motor, and something that relates to sound but I haven’t quite figured out what it does yet. It also includes a series of paper overlays for the breadboard that make it really easy to try their samples. It took me quite awhile to hook up a row of LEDs, so I decided I didn’t want to rip it apart immediately after, and instead I wrote some code that animated first a circle, then a word (“Arduino”). The latter is shown in the image above. Essentially, this is done with a massive array of ones and zeros, that is read by the main loop of the program onto the column of LEDs.

Photo of a breadboard to the left of a blue microchip. There is a column of 10 red LEDs on the breadboard, and they are wired to the chip.

What the circuit looks like...

Go to the source!

I’m potentially going to take a little time and make code that will turn any string into the 1s and 0s needed for this, but come to think of it, I’m not sure why. I have a tendency to generalize and abstract things, my projects being no exceptions. It wouldn’t really help me learn more about my Arduino, and I don’t plan on keeping the circuit laid out like this. Well, if someone else wants to, I think Fixedsys is the perfect font.

Multitrack song!

I bought the AVS Video Editor for $50 this summer, in order to edit the 480p videos taken by my phone (Android; HTC Incredible S).

I recently discovered with some delight that I can actually use this program to edit a bunch of videos together.

Harmony ensued.

Peace Remains

when we open our hands
to share a loaf of bread
and the last crumb is gone
peace remains

    when we open our hands
    our hands, our hands
    in our empty hands
    peace remains

when we reach out our hands
to help someone in need
and when it’s time, we let go
peace remains

    Chorus

when we hold tight our hands
to comfort or to pray
in the stillness of our hearts
peace remains

    Chorus

when we raise up our hands
to praise or to dance
and all tension goes away
peace remains

    Chorus 2x

Judge books by their covers

The book cover of Makers by Cory Doctorow, featuring piles and piles of old computer paraphernalia.I recently started reading Makers by Cory Doctorow. It’s a freaking amazing book. It contains such awesome bits of technology, culture, and psychology. Like, this book seriously satisfies on all levels. Going to have to say it’s one of my favourite books so far. I’m definitely planning to check out more of Cory Doctorow’s stuff… once I get through a bunch of the other books I have to read.

A realization of…

  1. how valuable my time is
  2. how many amazing books there are out there
  3. that books are extremely cheap compared with the time spent reading them

…has prompted me to seriously reconsider how many books I have on my to-read list. That list grows at a rate of 3-4 per week, which is vastly unsustainable. I need to use more discretion in choosing books. I think I’m going to do a bit of triaging with the ones I currently possess:

  1. Must read!
  2. …?
  3. This does not enrich my life (discard).

I really don’t know what to put in slot #2. It’s like I tell people about humor: there are enough videos on youtube to keep you laughing out loud for the rest of your life, but those videos represent only a tiny fraction of the 15000 hours of video that are uploaded every minute (or whatever the astonishing rate is). Thus, there are videos that are worth watching, and videos that are not… and then, of course, some that you need to watch some of in order to find out. It’s a challenge, in this day and age, not to let quality get diluted by unquality. I personally believe YT should display the ratings bar under the thumbnail of each video, whereever it’s linked. Anything with green less than 2/3 is probably not worth watching (unless it’s controversial or whatnot).

So maybe there is no #2. I guess it can be:

  1. keep around to find out if it’s a gem

…but do I really have time to do that for all of the “maybes”?

Am I judging books by their covers? Yes and no. I’m not judging them purely on the visuals and the title. I am, however, suggesting that if you wait until you turn the last page of a book before judging if it was worth reading, you’re not going to be able to do that with as many books.

How I crossed “duvet” off my To-Get List without buying a duvet

Coop-life has its share of complications. In addition to virtually never meeting half of the Engineering faculty at uWaterloo, it can also cause a change of residence every 4 months. This summer, in class, I lived in a regular on-campus residence. This fall I’m living in an apartment that is a convenient 15-minute walk from both my work and Uptown Waterloo. The weather is starting to get colder, so I put “duvet” on my list of things I should acquire next time I have the chance. I already had a duvet cover I got when I was at the IKEA in Montreal.

In the meantime, I used an unzipped sleeping bag on loan from my cousin (originally for a camping trip that was a few weeks ago) for warmth. Reflecting on my need for a duvet, I realized that I’m only going to be in this Queen size bed for 3 more months… so buying an $80 duvet is not really a good investment, especially since they’re also large and inconvenient to store. A few quick measurements later, and I decided to just buy my own sleeping bag instead. Turns out an unzipped rectangular sleeping bag is about the same size as a Queen size bed.

Two photos - on the left, a packaged sleeping bag and duvet cover; on the right, the sleeping bag being unzipped.

Opening the sleeping bag and duvet cover.

Two photos - on the left, the duvet cover laying on top of the the sleeping bag; on the right, the sleeping bag inside the duvet cover

Putting the sleeping bag in the duvet.

Two photos - on the left, a bed with just olive green sheets on them; on the right, the same bed with a dark striped blue and purple duvet on top.

My bed, before and after.

What Steve Jobs means to me

Portrait of a young Steve Jobs, wearing a suit and tie, and holding a red apple in one hand.

This isn't the Steve Jobs that I'm familiar, but he's definitely closer to me in age and hair length than 2011 Jobs.

I’m sure you’ve heard the news: Steve Jobs is dead. I found out while at work. I work at Kik, on the cross-platform messaging app that is Kik Messenger. The entire company would be wholly impossible without Jobs and the iPhone. This, however, is an understatement. Computers themselves, and thus the internet, and thus much of today’s culture, have all been massively influenced by this man.

If the me that I was a few years ago could see me blogging about how Steve Jobs is an inspiration, he’d be very confused. For years, I’ve been a Windows/Linux guy, and ragged on Apple as much as I possibly can. I just bought a smartphone this summer; it’s an Android. The only piece of Apple I own is a 2gen iPod Shuffle, which I proudly sync using Windows Explorer and python script. I don’t have iTunes installed. While my personal preference for computing has not changed over the past few years, I have grown an appreciation and respect for Apple and Steve Jobs.

I still like having two+ mouse buttons, and I still like having both a Backspace and a Delete key, and I really don’t know how well I’d be able to handle having my main modifier key (Ctrl/Apple) not in the corner of the keyboard. I also can’t stand the colourlessness that pervades the typical Apple interface. Yet, I can’t deny the vast influence that the mouse as introduced by Apple and the window manager have improved my life. I am not an ungrateful person.

I’d rather focus on Jobs though. Tonight, I read his speech at Stanford and then later watched/listened to it. This speech is 6 years old, and yet fits the occasion of his death very well, as his final point is about death. While Steve Jobs may only have had 56 years, most would agree that he made more of them than most people make of their 80. This was not an accident.

In his speech, Jobs describes how for all of his adult life, he has looked in the mirror every morning and asked himself:

“If today were the last day of my life, would I want to do what I am about to do today?”

I’ve recently been developing several new daily habits. I’ve been meaning to blog about them for awhile, and tonight seem like as good of an occasion as any. I recently listened to Jim Rohn’s The Art of Exceptional Living Audiobook, and it inspired me to make a number of changes in my life. So far I’ve integrated three daily habits:

  • I go for a walk.
  • I read for at least half an hour.
  • I journal.

Most books on the subject advise against making significant changes all at once, as they can be harder to keep. I wanted to dive right in. Besides, I think these habits are consistent and mutually reinforcing. The walking makes the other two easier, because by the time I get to the end of the day, I’ve already done one of my three new habits, so I’m already part-way toward my goal. Also, since my journalling is about personal development, it makes sense to read something inspiring first. I like reading anyway. I also like walking. I’ve been enjoying journalling as well. I’ve logged nearly 20000 words in 22 days.

Where does Steve Jobs fit into this? Well, I’m nailing my nights, but my mornings have been less than fantastic. My main excuse for this is that it’s really cold in my apartment (my room anyway) and so I’ve been lazing in bed because my newly-awoken-brain thinks that that will keep my feet warmest. Come on Malcolm: you can do better than that. Steve Jobs describes how he makes each day meaningful from the beginning, and I’m going to find ways to do the same.

I haven’t decided yet what this is going to consist of, but I now have a clear vision that my mornings need much more clarity and purpose than they have at present. Will I ask myself a question? Several? Recite a mission statement? Chant a mantra? Plan my day in my head? Do something specific?

…I don’t know yet. But I’m excited to find out.

A Productive Day

I had been on a hiatus from a bunch of things, one of them being this blog and another being my Summer of Song series of YouTube videos. Today officially breaks that, as I just posted a brand-new song for all to hear, and I’m typing a blog post right now, obviously. What a truism. It’d be basically impossible for me to suggest on this blog that I am, in fact, not blogging.

Anyway, today was a super-productive day. I went over to my friends’ house and silkscreened some shirts, which is awesome. As soon as I get the shirt back I’ll post a picture up here. Then, I talked to my dad on the phone, while walking back, achieving both my daily walk (I’ll get to this in a future post) and catching up with him, which I’d planned to do. Back at my place, I recorded a video for this song, which I’ll include at the end. Then, I redesigned my business cards, which was another thing on my todo list, and now I’m blogging, which I’ve also been meaning to do for a long time.

Five things in one day? I’m on fire. I’m not sure why today was so productive, but I think it’s related to me waking up with a clear idea of what I wanted to do with my time. Sometime this week I’m also going to share some new personal development habits I’ve been working on for the past few weeks.

That Phrase

I quit, but I got no withdrawal
The bank said that I had “Insufficient funs”
So that’s it, I’m on my own from now on
Nothing to give – just trying to live with sufficient fun

It’s not that hard
But hey, it’s not that easy
Just gotta start

I awake, but sometimes, hey, I sleep in
so mid-afternoon, I feel kinda doomed, ’cause the day’s half gone
I wonder – will it take, immense determination
to get to a state, where I’m never late, and I always know what’s going on

Well it’s not that hard
but hey it’s not that easy
just gotta start…

’Cause you know that phrase “easier said than done”
Doesn’t have to apply to everyone
If I decide that I like action
Cho instead of just conversation
rus And spend my days getting fun things done
and proudly say to everyone
”I get satisfaction from my life
and I’ve only just begun.”

(instrumental)

I try, but still sometimes I mess up
But I know success, comes right after mess, if I can learn from it all
I fly, but only in the most figurative sense
so why be all scared, if I’m unprepared, and I start to fall…

’cause the ground is not that hard
But hey it’s not that easy
Just gotta start…

Chorus

Two Original Songs on a Piano

I love playing the piano, but since they are rather large I don’t usually have one around. I own a tiny keyboard, but it’s just not the same. Here are two of my favourite songs of the ones I’ve written, both recorded on a piano because they really don’t work any other way. Okay, I suppose No More could work with a huge gospel choir, but those are even harder to procure than pianos.

No More

You… you… you…

You will walk no more
You will speak no more
You will wash no more
You will eat no more

You will cough no more
You will smile no more
You will laugh no more
You will breathe…

No more!
You are no more!

You will dream no more
You will play no more
You will think no more
You will pray no more

You will sing! no more
You will dance no more
You will tire no more
will you… sleep?

You are no more!

You will read no more
You will question no more
You will teach no more
You will garden no more
You will grow, not, old…
as they that are left grow old
fear no more – worry no more
tears no more – hurt no more
shake no more – change no more

still! You will be still
Will you be still?
you are no more

Spinning

Take a sphere and paint it rainbow hues
Don’t separate the colours – let them swirl
Mix them up: make greens from yellows and blues
Set it spinning in the sky and watch it twirl

Imagine a kaleidoscope
Spinning shapes and shades and making art
The beauty in the simplicity is more than you could hope
So you cherish it deep down in your heart
… and you want to take part

Nothing that is beautiful is made up of only one
For what makes the beauty really full is the juxtaposition
The beauty of a brand new earth we will behold
As in the ancient legends was foretold
… spinning tales that are made of threads of gold

Take a sphere and paint it rainbow hues
Don’t separate the colours – let them swirl
Mix them up: make greens from yellows and blues
Set it spinning in the sky and watch it twirl

Hello… beautiful world.

Priorities: It’s not what you do, but what you don’t do. (Music and Thoughts)

I mentioned that one song was missing from my 30-Day Poem/Song Challenge. Well, here it is:

While you watch & listen, here are some of my thoughts from the past few days. I’ve had some interesting conversations and listened to more of Steve Pavlina’s podcasts (such as this one on achieving goals) and I’ve started thinking about my goals. I’m notorious for not setting any, so this list is not very long, but if you’ve been following my blog you’ll have seen that I have at least one:

I will develop awesome time-management skills and habits. -Me, several weeks ago.

Well, I started thinking about ways in which I could try to accomplish that goal. One of Steve’s strategies is to become the person who has already achieved it. As I thought more about what sort of person has amazing time-management skills, I realized that the person I was imagining was not very spontaneous or adventuresome, two traits I hold in high esteem. With that realization came questions: Then who do I want to be? What skills and habits do I want to have?

I began to redefine the problem, from “not managing my time well enough” to “not managing my activities well enough”. What I realized is that my main problem isn’t with missing deadlines but with wasting time. It’s not that I feel like I need to procrastinate less. On the contrary, Parkinson’s Law (Work expands so as to fill the time available for its completion.) makes a fairly strong argument for procrastination. If I do things earlier than they need to be done, I’ll likely spend more time doing them then they really need.

A New Approach

Today I decided I would try a different tactic: I made a list of all of the things that I wanted to potentially spend my time doing today, and tried to do only things on that list. I added some things as the day progressed, but the point of the exercise was to be doing only things that I consciously wanted to do. I have a strong tendency to get sidetracked by activities that in retrospect I judge to be wasteful. These include reading shallow blog articles, wandering around on Facebook, and having long circular arguments with my friends. These activities are entrancing but not engaging — tempting but not really worthwhile. Instead, I want to do more reading, writing, exercising, and having deep and meaningful conversations with people.

The today-plan worked out alright. I had two items on my list that I had marked as high priority (see below) and I got both of them done. The flexible schedule I gave myself worked particularly well today because the two high-priority tasks were ones I wanted to do anyway and knew I would enjoy (recording the video above was one). I’m not sure how well this would work in a circumstance where I have a large unpleasant task with a faraway deadline. We’ll see, though. I’ve managed to get those things done before though.

This is how I've been making my todo lists for several years. The bottom item type · is new, but necessary for my new paradigm as it allows for items I'm allowed to do that are infinite, eg. read.

In working through this new strategy, I’ve come to realize:

It’s not what you do, but what you don’t do.

That is, as long as I’m not doing anything wasteful, then I’m either doing something valuable or doing nothing. If I define the latter to be meditation, then it’s still worthwhile. Exactly what I do isn’t really that important – as deadlines approach, enough pressure will build that the things that need to get done will get done.

I’ve yet to determine exactly how this will affect my spontaneity, but for now my rules will be as follows:

Rules

  1. I will keep a daily list of activities I may engage in.
  2. I may modify the list at any time during the day.
  3. There is no limit to how long the list can be.
  4. I will not spend a significant amount of time engaging in other activities.

Rule 2 lets me be spontaneous, because if I discover an interesting activity I feel is worthwhile, I can take part in it… as soon as I add it to the list. This forces me to make a conscious decision “Yes, this activity/event will add value to my life” before I undertake it. Otherwise, it’s all to easy to just do it without truly considering if I really want to.

For rule 4, I haven’t decided exactly what the threshold for significance is, but I think probably about 10 minutes on any one activity per 3 hours, and 30 minutes total on any extra activities within the 3 hours. I should probably use some sort of timer that I set every time I start one of these activities, that will sound after 5-10 minutes to force me to either decide that what I’m doing is meaningful or stop. The former case would apply to finding a really captivating article or something on the internet.

I’ve created a new page titled “My Life“, that will keep a current record of exactly what rules I’m following as I live my life. The link ought to stay at the top, so if you find myself on my blog in the future you can see what challenges and so on I’m currently engaged in.

One final remark: I’m observing with some interest that while I seemed to be taking a blacklist approach, what I’ll actually be creating daily is a whitelist. I suppose because otherwise, if I wanted to permit myself to have half an hour of Facebooking, I’d have to take it off a list, which seems strange. Would I then put it back on the list when I decided I’d had enough? I’m going to try it like this for now, and see how it goes!

FileKicker – My First Published Android App

FileKicker icon: A green arrow overlaid on a white rectangle with *.* on it as in 'any file'.

As some people might know, I’m presently employed at Kik Interactive. Yeah, the guys who make the  smartphone messenger app. My job is to make apps that use their new Developer API to send content between phones.

Well, I’ve been working on a few different apps over the past few months, but the first to fully see the light of day is called FileKicker. It’s really simple: send files to your friends via Kik. The cool thing is, because of the way Kik Messages are sent, you can actually access this file anywhere using its url, which is easily shareable from the app. Check out FileKicker in the Android Market to download it or learn more.

Something that’s crazy is the alternative Android market site syndication. I just uploaded this a few hours ago, and already a Google search for FileKicker kik returns results for site for androidzoom.com with a page on my app. I don’t see how it’s better than the regular market, but it did generate a nice little widget:

FileKicker


 

I’m planning to have some more apps up in the coming weeks. Leave a comment if you have any awesome ideas for what I could do with Kik next.

Three Final Haikus & A New Challenge

I’m sure I will write more haikus at some point in my life, but it need not be any day soon. I found I started to grow fond of them though. They force a certain brevity – like Twitter! (except… not like Twitter). Anyway, here are the last three. The first one is saying that the challenge was indeed a challenge, btw, not the reverse.

July 31

Challenging myself
Was not quite as challenging
As I expected

July 30

It’s almost August…
What happened to the summer?
Time owns private jets

July 29

And for my next trick
I will cut

up this haiku
into two pieces

And that’s a wrap! Well, actually, there’s one other non-prosiac work that I haven’t shared with you: a song I wrote on July 13th. I’m planning to record it this week, and when I do I’ll make sure to post it here.

I decided yesterday that my challenge for August would be something that would start me on a path to lucid dreaming. Specifically:

I will keep a daily dream journal from August 1st to August 30th.

This morning, I spent nearly an hour rolling around in a Hypnopompic state, trying to remember my dreams from last night and dreaming multiple times that I had picked up my notebook and inscribed them, only to eventually realize that I had been dreaming. Eventually I woke up, and did write some things.

I don’t think most of my dreams will be particularly valuable to the world at large, so I don’t plan to blog about this challenge, unless something interesting or exciting does occur (such as a lucid dream). If anyone has any tips for lucid dreaming, don’t hesitate to let me know!

Fall sanely in love
If you've done enough dating indefinitely and you're ready to get real about courting, check out The Mating Dance, my 4-week zoom container on how to bring every part of yourself into the process of falling in love so you can fully commit or know it's not a fit. The Mating Dance
Become more intentional
Check out Intend, a web-app that I built to help people spend their time in meaningful & intentional ways and be more playfully purposeful. Intend logo
Connect with me on Twitter!