We're back! Semacode + iPhone = free QR code reader :-)

Posted by Simon on December 28, 2009 at 10:25 PM

We've been here since 2004 (seriously!)—long before there were many 2D barcodes around here in North America. Now Google has distributed 100,000 barcodes in their Favorite Places program. So, now seems like the perfect time to release our iPhone version of Semacode. It supports QR code and Data Matrix, of course, and it's technically equal or superior to anything out there. And best of all, it's free!

Download Semacode's free QR code reader now from the iPhone App Store

So, now you no longer have to pay to play with QR codes :-) We think that we can continue to build our business without excluding kids who don't have credit cards and charging small change on the app store.

We also provide two unique features: a completely synchronized history of your scans. We use a simple email-based login system to give you totally synchronized access from your PC as well. In addition we fully integrate maps, so you can keep track of what you've scanned and where.

We've also got some pretty interesting plans, so subscribe to our feed here or over at @Semacode on twitter. We can't reveal what we're doing yet, but it's going to be cool.

Comments: 7 (view/add your own) Tags: (none)

Some things about Google

Posted by Simon on March 31, 2008 at 01:01 AM

The Lost Google Tapes

Somehow I missed this way back in 2006 when it came out, The Lost Google Tapes. These are tapes recorded early in google's history, well, 2000-ish, by a reporter doing a story on google. He got the founders, etc. etc on tape. The tapes got released on the net as podcasts in 2006. The recording quality is TERRIBLE, but if you denoise it and EQ using Amadeus Pro or similar software on windows or linux (Audacity?) you can hear what's going on pretty well. I'd post modified version but I'm not sure if that would be legal, let me know what you think...

Well, it's fascinating to hear these voices from the past. It's a bit like being a fly on the wall.

Tools that Google Uses Internally

Google did a webcast earlier this year about their internal tools. It was posted for a while and then unfortunately removed. But, you can still see summaries: The Tools Google Uses Internally (includes screenshots), Innovation@Google 2008 Event Notes, and A glimpse inside Google's secret sauce (also has screenshots).

Generally speaking it looks like a pretty well thought out set of collaboration tools, helping to reinforce a company wide policy of distributed intelligence and innovation.

Comments: 9 (view/add your own) Tags: (none)

ruby rocks, python not

Posted by Simon on March 18, 2008 at 09:54 PM

So I'm just doing some python programming, just a few hours, and already I'm missin' ruby.

python dictionary, is a certain key set?
if self.params['foo']:

oh no, that's won't work. Hmm... How about
if defined(self.params['foo'])

Nope... no such luck, there's NO WAY to find out if a variable is defined in python. Finally after futzking around online I find out that the ONLY way to do it reliably in any situation is to—get this—catch an exception. Except since I'm dealing with a dictionary I can use this (undocumented) method:
if self.params.has_key('foo'):

That's so lame. In ruby, you can do any of these:
if @params['foo']
if @params['foo'].nil?
if defined? @params['foo']

Speaking of which, now that I get it, the @foo syntax for an instance variable (stupidly called a "data attribute" in python) is great. So much more obvious & compact than self.foo.

Python also forces you to do some things that I have happily adapted to giving up in ruby. Like calling functions without brackets, isn't
defined? @params
so much prettier than
defined?(@params)

Yes it is. And also, I've started naming my functions with ?s if they yield a boolean and ! if they make a change in place or generally perform a destructive edit—nice.

And ruby's blocks—I love you!

      download = Download.new do |d|

d.user = @user
d.name = my_name
end


And unless and the if/unless modifiers... I could go on forever. Why don't you read the insane book?

audiophile

Posted by Simon on March 08, 2008 at 11:27 PM

I've been blogging lately about things that have nothing to do with Semacode. That will change very soon. So, if you're not interested in talk about Wired, awesome video, or whatever, don't unsubscribe because pretty soon there will be some very excellent news on the subject of mobile phones, barcode scanning, and all of that. Semacode has been working behind the scenes on all kinds of nifty stuff, and we'll be revealing some of it real soon now.

Anyway, not today.

I bought a pair of AudioEngine 5 speakers last summer. Actually they were an awesome gift from my sister. I got them because I needed something to play the music from the N95 that I knew I was going to be getting. I've never owned an iPod.

Anyway, I got these speakers and I happened to mention it to this friend of mine who plays in the same wind ensemble that I play in. And it turns out that he's getting seriously into the audiophile thing. At first I thought it was a bit funny. I mean, everyone laughs at audiophiles right? They waste enormous amounts of money, like $10000 on a CD player or whatever, what a joke. Well, to start off with my buddy was not wasting a lot of money, he was actually buying a lot of used gear at very reasonable prices. And secondly, the AudioEngine speakers that I got had completely and utterly changed my perception of what good audio can sound like (at only $350!).

What happened was, I plugged them into my Airport Extreme, set the volume to what seemed like a good setting (about "7" if it had numbers) and played Spinning Wheel by Blood Sweat and Tears on my laptop. What came out was a wall of mindblowing brass. It was SO LOUD but SO PERFECT. It was like suddenly BS&T was in my living room blasting their lungs out. I was totally blown away.

So aside from the fact that a lot of people with more money than sense waste it on extremely expensive audio gear, there is actually a point to audiophile. The point is that normal audio gear, for a variety of reasons, does a really craptacular job of rendering sound.

At one end, there is (usually) a live source of music, which is carefully microphoned and mixed by a professional who has one of two goals, either to exactly reproduce the live sound, or to anyway make it sound really good.

At the other end, there is your speakers, which make reproduction. The goal of the audiophile is for the reproduction so much like the original that it's like you're really there, hearing what the professional wants you to hear. It's just the same as comparing a cheap $10 print of Van Gogh, with a $150 art print, to the real thing.

That's what you are missing. It is in fact possible, on a relatively modest budget, to be able to hear very close to what it originally sounded like. Like being at a live performance. It CAN sound that good, that loud, that quiet. Audiophiles talk about the "soundstage" which means, how well does the output match the original spatially, if a particular instrument was on the right, does it sound like it's on the right now? They also talk about resolution. How exactly does the reproduction pinpoint the source of that sound within the space. There's dynamic range—the quiets and the louds—just like video, are the blacks really black and the brights really bright. Can the reproduction hit the same volume as the original without distorting the sound. And so on.

With a good set up there's simply more there, there. You can hear more music in a recording you previously thought you already knew. A tired analogy is that you can close your eyes and imagine more easily that you're on the balcony or on the floor and pick out the locations of each of the instruments, forget you are in the living room and feeling like you're in the concert hall/club.

Well anyway, that's just a start. Digital is a huge advance (and cost savings because moving bits around without loss is dead easy). So you can forget about worrying about a lot of the stuff in the middle of the chain and focus on three important things:

1. The quality of your digital to analog conversion (DAC)

2. The quality of your amps

3. The quality of your speakers.

In my case, based on the research I've done, the DAC in the AX is supposed to be pretty decent, better than the DAC in an iPod or built-into a Mac or PC. And since the AudioEngine 5s are self-powered, they include both amps and speakers, making that easy too. I know that I can (and probably will) build a much better system, starting with the DAC, which turns out to be a lot harder to get right than you might think (analog is always such a pain in the ass you know? Why can't we have digital speakers???).

Anyway, enough for now.

Comments: 4 (view/add your own) Tags: (none)

the best web user experience on the planet

Posted by Simon on March 05, 2008 at 01:10 AM

Facebook. Oh I know, it's not multi-coloured, it's not in your face, it's not made by 37signals or anything like that. It's just GOOD. Facebook actually uses every trick in the book—including drag and drop for God's sake—but you don't even notice. There is so much information going by on the average user's screen that they manage to attain an insane information density without driving users up the wall. Their layout it simple and elegant. They manage to integrate tons of third party applications made by a variety of people with no design sense, seamlessly into the overall system. They give you tons of notices and they are visible without being spammy. They are changing and updating all the time. They let the content do the talking.

But all people do is complain.

Comments: 6 (view/add your own) Tags: (none)

Weblog Archives