MessiahAndrw wrote:
onlyonemac wrote:
My goal is to write an operating system completely from scratch without being influenced by previous designs (already it's too bad that nobody can break free of the traditional window-based GUI concepts).
That's what I want to do to. I like to think that we live in the past/future/alternative steam-punk universe - and that I've never used a computer before, but we have this mysterious machine with a screen that has the ability of doing calculations, simulating virtual worlds, manipulating media. These mysterious machines are all connected together to form a global sharing network.
Now, imagine with your eyes closed - how would that machine work? How is the crazy steam-punk mathematician running his algorithms on it, and sharing his results with his colleges? How would the school child do his homework or the parent access the news on this fantastical device?
Sounds cool
I don't exactly remember where I read this, but there was this guy (I think it was in a book or maybe in a presentation about starting a bussiness), which noted that this approach doesn't really work well. People are often unconsiously influenced by implicit assumptions they are not fully aware of. Instead he/she propsed the exercise to think about something, then think of all the normal practices or assumptions you can make about it, and then try to come up with something that does it different. As an example the Apple store was compared against normal technology stores.
My (fairly standard) example: of a cafe:
- There are waiter which take orders
- There is a bar where you can go to to make orders
- There are tables to sit, or you can sit at the bar
Or even more implicit assumptions:
- People can choose what they drink, but not how much they pay
- People sit down whenever there is place and leave whenever they want (I mean this as opposed to using a bowling lane, where you reserve the lane in front)
- People pay in money
- People only buy drink and/or food
- You usually don't go alone to a cafe
- You sit with friends on one table
- There is not a lot of interaction going between different tables/groups of people
(I think you get the picture by now, I just wanted to show there are a lot of things you can change if you want!)
Now that you're aware of all the assumptions, you can more easily discard them (of course, you don't have to, but now you can, at least for the assumptions you noticed). I absolutely LOVE this exercise, as it kind of reduces something people would call creativity (coming up with a twist on something or a new creative idea) to analytical thinking (noticing properties associated with something, which I tend to be better at). If I actually wanted to start a cafe, I would have 5 or 6 interesting alternatives to your everyday-standard cafe (please don't get the illusion that they would all be succesful, but I think at least some of them would).
Basically the same thing can be done for OSes
(although I doubt it works as well as for a cafe, as OSes are complicated and the different parts have to work together)