"Early-stage theories"
Trevor Blackwell of Y Combinator has a nice post on how start-up founders need to be like people developing early-stage theories. Kinda hard to explain, but it's quite good.
building and refining my views
Trevor Blackwell of Y Combinator has a nice post on how start-up founders need to be like people developing early-stage theories. Kinda hard to explain, but it's quite good.
Posted by
James
at
2:02 pm
0
comments
As I've mentioned before, I think most discussions of simplicity are, well, major oversimplifications.
When people say the problem with certain systems is 'complexity' and that the solution is 'simplicity' what they really mean is actually specific sorts of complexity are the problem, and specific sorts of simplicity are the solution. I don't even think the issue is really best understood as a matter of of 'complexity' or 'simplicity', but that's another matter.
In 'Simplicity is Complicated', Avdi Grimm tries to tease out various different sorts of simplicity. He also talks about the tradeoffs that can be involved in each type.
These are the types he talks about
Posted by
James
at
10:12 pm
0
comments
Labels: computing, simplicity
Here's an idea for a rhythm game for the iPhone that exploits the phone's multi-touch capabilities.
Most rhythm games involve pressing or tapping on one of a fixed set of positions. In Guitar Hero those positions are button positions, in Dance-Dance Revolution they're floor tiles, and so on.
Touch-screens let the taps be anywhere on the screen. Like in Elite Beat Agents on the DS where circular markers pop up on the screen showing you where to tap. The sequence of places to tap usually follow a spatial pattern - eg in a line or an arc. Following these patterns around adds some interest to the game. It's more dynamic. Rhythm and movement work well together.
On a multi-touch screen you could have a different style of game. It could have the user make multiple touches at once, where the had to simultaneously tap points in a particular spatial pattern. It might get them to simultaneously tap three points arranged in a line, then simultaneously tap four points arranged like the end points of a cross. The focus would be on the progression of spatial configurations.
And just like how Elite Beat Agents also sometimes made the player slide the stylus along a path, this game could make the use simultaneously slide fingers across multiple paths. For example, where their fingers start out at like the four corners of a box and have to simultaneously slide towards the box's center.
I'm imagining something where it's like the players fingers are performing a dance. Something a bit like twister for your fingers, but rhythm elements to it. Maybe you could call it Finger Dance.
(this is the first time I've composed a post on my iPhone - nice use of a bus trip)
See this video:
Courier User Interface from Gizmodo on Vimeo.
Posted by
James
at
4:35 pm
0
comments
Labels: computing, miscDevelopmentsAndAdvances
update, 25.8.10: here is a related blog post by Andy Brice, "10 things non-technical users don’t understand about your software": 1. Copy and paste, 2. The difference between web and native applications, 3. Data storage, 4. The jargon you use, 5. Right click, 6. Concurrency, 7. What changes can be reversed, 8. The need for backups, 9. That they should read the documentation, 10. Problem exists between keyboard and chair" (discussion on Hacker News)
"selecting vs highlighting": This one is really technical for the layperson because it isn’t what they first think. I often make the mistake of telling people to "select" a piece of text instead of "highlight" it. To them, "select" has to do with tangible objects on the screen like pictures whereas "highlight" has to do with text selection. I probably say "select" because on Mac OS X (the OS I use) text really does act like any other object. It can be dragged and manipulated like everything else, and this behaviour is much more obvious than on Windows. I might also say it because I understand some of the mechanics behind the way applications are made and, of course, the primary language of Mac apps is (Object)ive-C.The scrollbar:
"Why do I pull it down to make the screen go up?"
Many users don’t understand that computers can run multiple simultaneous tasks. Users tend to see programs (from opening to use to closing them) as a linear process they must step through properly, forward and backward. i.e. Start > All Programs > Microsoft Office > Word > now I need to get "on the Internet" > Close ("X out of") Word > Start > All Programs > Internet Explorer. Rinse and repeat.
Many people don’t realize that programs are opened in a Window on top of their desktop. I can’t recount how many times I had a small web browser window open on a 30? display only to have people say "Wow your screen is very small," only to have them change to "WOW! That is a big screen!" once I’ve pressed the maximize button.<
I find both of these concepts tie nicely together in showing that users are somehow trained to have a sort of "tunnel vision" when using programs. I think the classic desktop GUI was originally centered around completing tasks in a modal or linear fashion, discouraging people from unlocking the true powers of multitasking. I find this helps to explain why multiple (physical) monitors/displays is a great way to improve efficiency in the workplace versus concepts like "spaces" on Mac not being as effective (in a mainstream sense) as they could be.
Posted by
James
at
5:29 pm
3
comments
Labels: communication, computing
Paul Graham considers the following issue: When writing, the plain truth (as you see it) will often be offensive to people. You can try and avoid this, but it doing so means being less concise, because you have to add disclaimers and write more indirectly. Is this worth it?
Maybe not. Maybe I'm excessively attached to conciseness. I write code the same way I write essays, making pass after pass looking for anything I can cut. But I have a legitimate reason for doing this. You don't know what the ideas are until you get them down to the fewest words. The danger of the second paragraph is not merely that it's longer. It's that you start to lie to yourself. The ideas start to get mixed together with the spin you've added to get them past the readers' misconceptions. [4](my emphasis).
That's not even the worst danger. I think the goal of an essay should be to discover surprising things. That's my goal, at least. And most surprising means most different from what people currently believe. So writing to persuade and writing to discover are diametrically opposed. The more your conclusions disagree with readers' present beliefs, the more effort you'll have to expend on selling your ideas rather than having them. As you accelerate, this drag increases, till eventually you reach a point where 100% of your energy is devoted to overcoming it and you can't go any faster.
Posted by
James
at
5:30 pm
0
comments
[update: 15.10.09: four and a half weeks after I originally purchased the music they finally managed to make the download available to me.]
[update: 4.10.09: over three weeks since I purchased the music and I still can't access it. I've had more correspondence with Bleep: twice they've wrongly said the problem was fixed when in fact nothing had changed. Then they said there was a bug in their system. They refunded me the money then. But since I still own the copy I purchased from them, it'd be throwing my money away to go purchase it elsewhere, so I'm still effectively prevented from being able to listen to the music until they get their act together. And refunding me the money doesn't address all the wasted time and frustration I've had to go through. It was a week ago when they told me about the bug in their system, and I haven't heard from them since. If they had any decent customer service, they could easily find an alternative way to get the music to me].
Posted by
James
at
4:59 pm
4
comments
Labels: xMusic
When will we be able to pay for everything with our mobile phones?
I'd love to be able to do that. The store person would tell you the cost, that'd flash up on your phone's screen, you could accept it and it'd all be done. You'd get an electronic recipt, and you could automatically feed the purchase into whatever software you like to keep track of your expenses, which could streamline the process of budgeting.
The potential benefits are pretty obvious, and I know there must be a lot of people working on this kind of thing, so I'm wondering what sorts of barriers there are to getting it out there. It might involve technical issues, though I suspect it might have more to do with things like cost and business models. And given that, how long might it take until the technology is out there?
Posted by
James
at
10:45 pm
0
comments
Labels: thoughts
YikeBike
A compact electric bike that can be folded up quite small. Looks like they're intending to sell them in 2010. website here
Being ridden
Being folded up
Posted by
James
at
5:52 pm
0
comments
Labels: humourFunInteresting
Quick sketching....
Here's a major criticism that I think can be applied to how most arguments are made. If we say the structure of the argument is like
if A, B and C then Xmy criticism is that people primarily try to justify the argument by justifying the then part.
Posted by
James
at
9:52 pm
0
comments
Labels: effectivePerceptionAndReasoning, thoughts
Signal vs Noise looks at why traditional copy-editing marks are more effective than how revision changes are shown in Word's Track Changes feature.
I think Track Changes is symptomatic of a more general shortcoming of all existing software: they’re hopeless when it comes to annotations.
Most software simply has no support for adding annotations to bits of your information (in your address book, your image files, your calendar, email, etc etc.). There might be a separate ‘note’ field, but that’s nothing like being able to add real annotations, like you can do on paper.
As the linked post points out, annotations should stand out as separate from what they are annotating, but I don’t know of any existing software that gets this aspect of annotations right.
Also, with hand-written annotations you can use subtle details, like the positioning of the annotation in relation to what it applies to or the size of the annotation text, to convey information, and software annotations are poor in this regard (though it'd definitely be worth investigating how to make it better). Certainly this is one area where pen input would be useful.
Posted by
James
at
5:41 pm
0
comments
Labels: communication, computing, thoughts
I think Vim is a great text editor and one that's well worth learning. But it's certainly a bit of effort to learn all the commands and get used to working in different modes. A lot of people seem to be put off by that initial frustration.
You're editing a file and there'll be something, often fairly simple, that you want to do but don't know how. And while the Vim help is quite good it can be hard to find info on the specific thing you want to do, so it’s easy to get stuck. At least that was the situation 10-15 years ago. But these days you can just put details of what you’re trying to do into Google and you’ll likely get a good answer. And the net contains a number of Vim cheatsheets.
Of all the editors, Vim probably has the largest initial hump to get over before getting to proficiency, but also one of the largest payoffs for doing so, and the internet is making it a lot easier to get over that hump. And for that reason we might see a resurgence in its use.
Posted by
James
at
1:52 pm
0
comments
Mangalam's Vegetarian Moussaka
Tastes very nice.
Ingredients
Posted by
James
at
2:27 pm
0
comments
Labels: recipe
If you want to backup your Winamp song ratings and playcounts, as well as the playlists you create within the Media Library, this is how you can do it. You can back it up so you don't lose the information when you get a new computer and reinstall Winamp onto it.
I got this information from here and here
The files are in this directory:
%appdata%\Winamp\Plugins\ml(On Win2k/XP, %appdata% is
C:\Documents and Settings\(username)\Application Data\
On Vista, it is
C:\Users\(username)\AppData\Roaming\)
main.dat # ratings and play counts
main.idx # ratings and play counts index file
recent.dat # play history
recent.idx # play history index file
*.m3u8 # playlists stored in the media library
playlists.xml # list of the playlists stored in the media library
Posted by
James
at
1:27 pm
4
comments
Labels: computing, potentiallyUsefulInfo, xMusic
Quick sketching....
You could have a game to teach people regular expressions. It might even actually be fun. I don't know if anything like this has already been done (a very quick look doesn't seem to show anything like it), but here's one way it could be done.
It might be a war between alien forces. You are commanding one side.
The enemy march in a single line in from the right side of the screen, and as the commander of your side your goal is to stop their troops reaching the left side of the screen. You can send out troops from the left side to attack the right side.
There are some number of diff types of enemy troops, and at your disposal you have specialist troops, each one of which can pick of a particular type of enemy troop.
So if the front of their line of troops is a 'green' alien, you send out a 'green' soldier. your troops will always win, as long as you send out the right type.
So you could just play by sending out the right sequence of troop colours...
But then their troops start moving faster and it gets harder to take our their troops one by one.
Luckily there are patterns in the troops... the front of their line might be one green soldier, followed by five blue soldiers, ending with a red soldier
So if you can set up a single command for 'one green', 'one or more blue', 'one red'.
What i'm talking about so far is like a regular expression where you are matching specific characters; they can also match classes of characters, like 'whitespace' or 'word characters' or you can have character classes...
And the game could gently introduce the ability for the player to have such higher-level control... e.g. some of the enemy might be carrying shields... blue ones with shields, red ones with shields and so on... so your 'attack specification' could allow the player to deal with more abstract classes like this.
Ideally, the game would give the player a gentle ramp up to the sort of abstraction regular expressions afford. the player could handle things fully manually... by manually specifying the pattern to meet... and then they would appreciate the ability to handle it in a higher-level way.
The player should be rewarded by being able to take out as many enemy as possible in the one command (the one reg-ex)... the more they take out, the more spectacular it should look, and perhaps the more points they would get (if there were points).
Here's some other ideas.
I can even imagine building a 'search and replace' mechanism into the game... perhaps the 'search' pattern could be use to specify what to target and the 'replace' pattern what weapons to use on each of those targets.
In addition to the idea of a game based around the idea of regular expressions, I might be actually use them to provide powerful input mechanisms in existing sorts of games... real-time strategy games strike me as a possibility.
Posted by
James
at
2:47 pm
4
comments
Here’s an idea for how a computer operating system could enable you to quickly switch between windows. The idea is that you could press a some key or key combination to indicate you wanted to switch windows, and then you could specify which window simply by shifting the mouse pointer from its current position just a little bit in the direction of the window you wanted to switch to.
The operating system would guess which window you wanted to switch to and make it flash or something. If it had the one you wanted, you could press the mouse key and that window would get the focus. I think the system would have to figure out which window was, overall, most in the direction you've gestured.
If it didn't select the one you wanted, you’d move the mouse again to try to make it clearer which window you wanted. How would this work? Imagine that you’d moved the mouse to the right to indicate a window to the right, but you the one you actually wanted was further to the right of the one the system guessed.
To indicate that other one, you could just move the mouse a bit more to the right and it’d figure out you meant the window more to the right. Whatever the subtleties an actual implementation would have to deal with, I think there’s a good chance you could figure out a workable solution.
(On windows, instead of simply pressing a key, you could press and hold down the Windows Key and move the mouse pointer and then release the key once it has seleted the one you want).
As different approach, instead of gesturing direction, pressing the ‘switch windows’ could bring up, at the place where the mouse pointer was, a small schematic map of the desktop indicating all of the windows’ locations. Mousing over a window on that map would highlight the actual window it corresponds to; clicking it would switch to that window.
Posted by
James
at
11:35 am
0
comments
Some more photoshopped pictures of birds with added arms, thanks to the good people on the Something Awful forums.
When I see a picture of a bird now without arms, like this one, my brain is thinking "amputee":
Here they are:
Posted by
James
at
4:06 pm
2
comments
Labels: humourFunInteresting
Over on the Something Awful forums, Paradox86 said "It's pretty simple. A friend and I agreed that birds are pretty pissed that they don't have arms. We decided this should be fixed."
Yes, this is what the world has been needing. Pictures of birds with arms. Yet it is somehow strangely compelling - there's some pretty brilliant stuff there... here's a handful of them:
Posted by
James
at
4:59 pm
1 comments
Labels: humourFunInteresting
Doing an assignment, writing a book, losing weight -- whatever the task is, there's no doubt that it can be hard to get things done. Here's some rough notes -- that I'd like to clean up sometime -- on ideas to make it a bit easier.
Posted by
James
at
11:00 pm
0
comments
Labels: potentiallyUsefulInfo, thoughts