Thursday, September 16, 2010

Two Ideas

Here are two ideas:

1. Trilingual travel books. Lots of people both in and out of the US speak the language of their home country and English as a second language. When they visit a foreign country it is likely they will speak English there since they will find more English speakers than speakers of their primary language. So it is useful for their tour book to have English names and descriptions. However, even if the person is very fluent in English it is likely that there will be many places in the foreign country they learned about growing up in their primary language and don't know the English for it. In addition to sites, this would likely be true for foods and other aspects of travel. So it is useful for the tour book to also include names in the reader's primary language. And of course any good tour book will include the names in the language of the destination country.

This isn't just a crazy theory - a coworker borrowed a tour book and mentioned how he had a tough time find what he's looking for because he only knows the Chinese name (and his English is approaching native speaker). When I suggested a tour book in Chinese he pointed out that he'd be speaking English in the country so a Chinese tour book wouldn't do it either.

I think the major obstacle is a company that has all the content would have to do this or give someone permission to use their content. Also tough would be that this would require the creation of a huge number of books - perhaps it is an idea better suited to a website that allows the user to pick a destination country and all the languages they want the information in - or maybe ebooks are the answer.

2. Certified store for Android apps. Any app going into the Apple app store has to be approved by apple which is both the store's biggest advantage and biggest disadvantage. My understanding is basically anything can go up on the Android store. Seems like an opportunity for someone trusted to check Android apps for security issues (and if trying to mimic apple - occasionally dismiss apps for no reason) and then put them up for sale in a special store. I was thinking that the developers might have to send them the source code, but iOS developers don't send the code to Apple so it should be possible to do the security checks with binaries only.

Semi-related idea - why isn't there an app store equivalent for desktop/laptop computers?

Tuesday, August 31, 2010

Creativity

I'm going to talk about myself for a bit, since that's what I get to observe, but I'm trying to get to a broader point not just spout off about myself.

I feel like there's a "traditional" image of the path to creativity. A bunch of somewhat wacky looking people tossing a ball around while brainstorming in an office shaped like a castle or sitting in a hot springs on some company retreat (ok, maybe that's several images all jammed together). And part of the image is that those people are part of some cross disciplinary team or each has some broad range of work and life experiences. Think of the creativity posters with pictures of an old Einstein with crazy hair.

I've filled several invention disclosures at work. Some of which are working through the process to become patents. I'll admit that while each to the best of my knowledge is an original and useful idea, none of them is going to transform an industry or anything close to that. But I like to think that to have an original useful idea in a field that has been around a while and has a decent amount of competition takes some creativity.

I was thinking about what lead up to each of these inventions. Since I've never been to a meeting where a ball was tossed around and definitely never been to a company retreat with hot springs none of those were involved in the process. In fact the common theme in each case is either independently or in collaboration with one or two other coworkers I was digging deeply into the details of some aspect of a circuit I was working on. And in each case as I reached a certain level of discovery and understanding the new idea just flowed. And it was a single clear idea, not a giant list of brainstormed ideas. Each of these situations seemed almost the exact opposite of the "traditional" image of creativity.

Going back to Einstein for a moment. The old man with crazy hair really didn't do much. It was when he was a clean cut, suit wearing, patent clerk that he came up with mind blowing advances in physics. I will admit that I don't know a ton about Einstein, but my understanding is that most of his advancements came from thought experiments on his own, not brainstorming or even collaboration.

For my own example I wonder if while I'm being creative, maybe I'm not hitting a higher level of creativity that the "traditional" example would help me achieve. The higher level could be just how new the idea is, or could be the difference between creativity on the level of circuit details vs large system changes. However, that doesn't hold together when the Einstein example is considered.

I guess the answer is probably just that creativity is a large, poorly defined concept so different types of creativity require different approaches. And different people get to creativity by different means. In addition, crazy looking Einstein makes a better poster and a multidisciplinary teams going rafting makes a better story than an engineer focusing on a computer screen late at night. So those are the images of creativity that are spread.

Was that obvious? Is there something I missed? Am I over valuing engineering creativity - is a pixar writer so much more creative than a chip designer that the comparison doesn't even make sense? Does a pixar writer actually follow the "traditional" path or is that just a false image? Is "traditional" path really more about how to get a team to collaborate than how to maximize individual creativity?

Most of my random ramblings are just that. But in this case I'm actually reevaluating which assignments at work I want based on this idea. The "traditional" image of creativity that I have says bounce from area to area picking up broad knowledge to allow cross-pollination of ideas. But now I'm thinking that while breadth shouldn't be ignored, my own path to creativity is to go further in depth.

Saturday, August 07, 2010

RFCALC

My previous post about iphone programming included some complaining about the development environment. Well I'll admit I had the expectation that I should be able to just sit down, crank out some code, and submit it (as if I was using a program instead of creating one). I realize that was expecting a bit much. Once I bothered watching a few lectures of the Stanford iPhone programming class, looking at some more example code and finding apple's class definitions I realized that apple actually makes iPhone programming very easy. And once I got into it I realized that a lot of it, especially graphics, is much easier than I anticipated.

Version 3.0 (I'm being a little generous with version numbers, but at least I started with version 1) is submitted for review now and should be on the store soon. When I first started the app several coworkers suggested I make a smith chart tool and I said that the graphics would be too much of a pain. So I'm fairly excited that version 3.0 has a smith chart tool. And, maybe it is just because I made it, but I think it is in some ways better than the smith chart tool I have on my computer at work.

I decided to try adding iAds to the app (that was added in version 2.0). So far there are just two ads that run and I'm not really making money off it. But it was kind of cool to have the first app I've seen that uses iAds. And what I like about it is I get to see how many requests for ads occur so I get some sense of if the app is just being downloaded or if people are actually running it. Based on that the number of people using it must be much smaller than the number downloading it, but there's still a decent number of people using it and in surprisingly large number of countries.

Of course now that I'm getting (somewhat) used to objective-c and have some code built up I'm running out of ideas for what to do with it next.

I've been thinking a bit about why I've been enjoying iPhone programming so much. I think part of it is that I like engineering and design and while work sometimes fulfills that role, work projects can have very long stretches between successes. On the other hand, programming, well maybe just hobbyist level programming, allows me to make something and see it work over the course of a few hours to a few days. Far faster than even hobbyist level electronics design.

This is biggest program I've worked on in quite a while, most of my coding since graduation has been limited to single page perl scripts. So it has been cool to come up with the higher level structures (even though I'm sure it is pretty basic even compared to school projects). In particular it is great when all of the underlying objects have been built up so that a few lines of code can add a ton of functionality.

Saturday, July 31, 2010

Wikipedia and knowledge

This interview with one of the founders of wikipedia is in general somewhat interesting. But what really caught me was what he had to say about how experts are viewed:

Why did you feel so strongly about involving experts?

Because of the complete disregard for expert opinion among a group of amateurs working on a subject, and in particular because of their tendency to openly express contempt for experts. There was this attitude that experts should be disqualified [from participating] by the very fact that they had published on the subject—that because they had published, they were therefore biased. That frustrated me very much, to see that happening over and over again: experts essentially being driven away by people who didn't have any respect for those who make it their lives' work to know things.

Where do you think that contempt for expertise comes from? It's seems odd to be committed to a project that's all about sharing knowledge, yet dismiss those who've worked so hard to acquire it.

There's a whole worldview that's shared by many programmers—although not all of them, of course—and by many young intellectuals that I characterize as "epistemic egalitarianism." They're greatly offended by the idea that anyone might be regarded as more reliable on a given topic than everyone else. They feel that for everything to be as fair as possible and equal as possible, the only thing that ought to matter is the content [of a claim] itself, not its source.


I thought that fit in very well with all the discussion of wikileaks and the idea of getting information with no knowledge of the source. See the great New Yorker Piece about wikileaks and the slate article claiming transparency means revealing sources. While I somewhat agree that getting a bunch of data without knowing the source is questionable, I do think wikileaks is a very cool idea (although it would say more about the site if the dominate story didn't always become the site rather than the info it is disclosing).

Hm, I feel like there's some clever conclusion to be reached, but I don't feel like thinking that hard right now. But I do think that it is common for people to look at a subjects like economics, global politics, climate change, and health/medicine and try to evaluate the facts for themselves while dismissing the opinions of experts, and on the other side blindly trusting experts without doing any of their own checking (as a person I include myself in this).

For example, recently people are rather unhappy with economic experts, but listening to amateur economists explain why they know better than the expert consensus, possibly based on some document that sounded like fact to them, gets rather absurd.

Saturday, June 19, 2010

My iPhone App

My iPhone App was just accepted by Apple and is now in the App Store! The app's name is rfcalc (radio frequency calculator).

It still needs a lot of work, in fact there's a mistake in it that even shows up in the screen shot. But I'm excited that it got it to the point of being accepted so now I can build on it.

The app is aimed at RF electrical engineers, which is a fairly small target audience, but it also means that as far as I can tell there aren't other apps that do the same thing. The idea is to have a whole list of calculators for common calculations done by RF engineers. Right now there's just one that goes between impedance as a complex number and the equivalent series and parallel components. Fairly simple, but I've actually already used it a few times at work.

Saeed was nice enough to write some code that I used as a guide to get me going and most of the code for the interface is just a few pieces of example code I found online and hacked together. One of the most interesting moments was when I first used the app on my phone instead of the iPhone simulator on the computer and realized that I kept trying to scroll the window even though I knew I didn't include scrolling. I guess that'll be the first item for version 0.2.

It is also interesting to see the difference between how apple treats developers and users. Considering that most apple programs are installed by dragging a file to a folder, I was very surprised that it took me hours just to figure out how to get all the certificates set up so that I could submit the app to the store. On one hand I did ignore their extensive set of tutorials, but on the other hand since when do apple products require a manual for basic use. That's just one example of everything I found more difficult than expected along the way; although, I did go from never having seen object-c to submitting my app to the store in about a week so maybe I shouldn't complain. But I will complain about the iPhone keyboard - they have several keyboards that can be used in an app, but don't seem to want developers to modify them. A custom keyboard would do a lot to improve the interface of this app.

Oh, and this all means that I did pay the developer fee so if any of you develops a free app and wants to put it on the store without paying the fee let me know.