Português English

Blogs

2010.03.23

Alone or Around Others?

The idea of working all alone seems pretty tempting: nothing to distract your thinking process, no stress from the jerk on the cell phone. Just quiet.

Too quiet.

Sometimes my mind gets distracted by the silence – I find myself wondering where everyone is. So, like some other people who work from home I put on the television. Sometimes that does the trick, but at other times I just really wish there were some people around. Not co-workers, not people I know, but just (quiet) people as background noise. I worked from a café the other day and I got so many things done, so many ideas just popped up in my mind. The ambient noise was a catalyst of sorts.

What about you? Are you more productive at home, working alone, or when you’re around others?

2010.03.05

Is It a Game?

I could not (but I really wanted) play Heavy Rain. The core feature is the very flexible story. Players can end up with a very different experience. It’s focused in the storytelling and reviews say that the lack of game over… the story always progresses.

_Lack of game over? Where is the challenge?__ ;Ok, here we go: Heavy Rain is a game? A more profound question: what is a game? This is the difference between a game and a puzzle? Or a simple challenge?

So let me define:

  • Movies and books are not games. Games are interactive
  • Jigsaws and puzzles are not games. Games must have multiple players;(even if they have different role). Not that we could assume that an AI could be considered a player as well
  • Racing and swimming are not games. Gamers must interfere in the performance;of the other players
  • Toys and sandboxes are not games. Games must have rules and objectives

So, games should be interactive, multiplayer, competitive, defined by rules and they have a goal. Clark Abt defines _“A game is an activity among two or more independent decision-makers seeking to achieve their objectives in some limiting context”.

The curious thing is that if we take this concept to actual games, mane famous video games are not… games. Sim City, The Sims, Monkey Island, City Ville, Portal, World of Goo and Heavy Rain and several others fail in at least one aspect that makes a game.

Knowing this is a good way to correct position products against each other.

2010.01.15

GTD

Getting Things Done (GTD) is an organizational method created by David Allen, described in a book of the same name. The Getting Things Done method rests on the principle that a person needs to move tasks out of the mind by recording them externally. That way, the mind is freed from the job of remembering everything that needs to be done and can concentrate on actually performing those tasks.

I read the book and love it. It balances theoretical reasoning and practical attitudes. It says explicitly that it is not about a computer program or a special type of notebook. You are free to use any system you want. Webmail, Outlook, notebook, folders, color tags… you decide. But the book is smart enough to give you hints about using them, just for the sake of starting soon and being practical.

It at least opens the mind to be more productive in our ordinary life. Just don’t go crazy thinking about it all the time because, paradoxically, it can be really nonproductive.

PS: I recommend you strive to use itfor 3 months, forcing yourself. It’s easy to start but because it requires a new mindset, keep using the system harder and harder with time.

2009.12.30

2009 Art Review

2009 was a great year. I had the opportunity to watch/play/read/listen several great games, films and books. This list is what I could remember.

Games

Most, but not all, I finished

  1. Braid – PC
  2. Broken Sword: Shadow of the Templars – Wii
  3. The Beatles: Rockband – Wii
  4. Dawn of Discovery – Wii
  5. de Blob – Wii
  6. Dragon Age – PC
  7. Drakensang: The Dark Eye – PC
  8. Machinarium – PC
  9. Neverhood – PC
  10. Planescape Torment – PC
  11. Race Driver: GRID – PC
  12. Torchlight – PC
  13. The Witcher – PC

Movies

  1. 5cm Per Second
  2. Akira
  3. Amadeus
  4. Army of Shadows
  5. Citizen Kane
  6. Cowboy Bebop
  7. The Discreet Charm of the Bourgeoisie
  8. Doctor Zhivago
  9. Drag Me to Hell
  10. Ghost in The Shell
  11. The Hangover
  12. Helvetica
  13. Home
  14. The Hurt Locker
  15. Lady Vengeance
  16. The Manchurian Candidate
  17. Oldboy
  18. The Sinning
  19. Star Trek
  20. Sympathy for Mr. Vengeance
  21. Tokyo Godfathers
  22. Up

Books

Some of them I used the audiobook

  1. David Allen – Getting Things Done
  2. David Allen – Making It All Work
  3. Malcolm Gladwell – The Tipping Point
  4. Malcolm Gladwell – Blink
  5. Malcolm Gladwell – Outliers
  6. Peter F. Hamilton – Fallen Dragon
  7. Peter F. Hamilton – The Dreaming Void
  8. Peter F. Hamilton – The Temporal Void
  9. Raymond Kurzweil – The Age of Spiritual Machines
  10. Stephen King – The Dark Tower: The Waste Lands
  11. Stephen King – The Dark Tower: Wizard and Glass
  12. Umberto Eco – Foucault’s Pendulum

And 2010 might be even better.

Data: storage, display and custom structure feature
2009.08.11

Data: storage, display and custom structure

Creating GUI is no easy task. But creating GUI creators is an even more complex task. Almost a nightmare. But the long road walked by GUI creation programs, we already know some things that are good and some things that are bad.

Drag and drop

Quite a long time, desktop IDE’s acknowledged that letting developers create GUI with some kind of drag and drop interface were critical. That were because GUI were less and less created by programmers but more and more by designers, that have little knowledge and patience to deal with programming code. It also facilitates the adoption by beginners.

Designer-driven script

A too designer/beginner driven interface for creating GUI might also not be a good choice. The whole customization and generalization possible by programming is lost. It’s too case-by-case development. It’s not cost-efficient. That’s why a middle term is needed. Some kind a language that is easy enough for designers but programmable. Drupal CMS uses the Form API, a PHP array that will be used to create HTML forms. It’s quite easy to be used by newbies. I heard that QT is preparing some custom language for creating their UI too.

UPDATE (2010-10-03): Qt revealed QML.

Data storage display and custom structure content 2100.jpg

“Lorem ipsum/123” preview

Most GUI element have a fixed set of parameters. But sometimes the GUI should be generated on the fly. Developing GUI like this is very trial-and-error. To facilitate the creating phase, its critical to be possible to see it working with some generic data.

Widget or data separation

The UI 101 rule is to separate the data to the layout. But it is important to let the users change any of them. For example, the user can enter his birth year by a text field or a dropdown list, or some nice JS calendar. This example show how to change the widget, the GUI element. However, the user might need to change the data type. If the birth year was originally text, the user might decide to change it to integer number. The challenge here is to convert saved data. But for most cases, it is feasible.

Data storage display and custom structure content 2102.jpg

Context

Developers of both desktop and internet applications are experiencing a quite interesting phenomenon: the same application must have several outputs, like netbook version or mobile sites. With the rise of HTML5, sites now might need multiple different outputs. Also, we must have different outputs when we are creating, viewing or update content. The concept of multiple contexts might be anticipated by the GUI creators.

Custom data structures

Integers, float numbers, strings… all developers know these data types. But they know that in some cases it is needed a more complex data types; combination of primitives. Some programming languages have structures and objects to address this idea. But GUIs can also be the combination of multiple primitives. Imagine a “password_checker” GUI element that is, in fact, two form fields that will check if the user typed the password correctly or an “address” element that is, in fact, a group of *country, province and city* fields. Users might be enabled to create and edit these type of custom data structures.

UPDATE (2009-10-05): I just saw an issue posted against CCK module called State of the multigroup module. It has close relationship with this post. Curious is that it is more a hack than a core idea.

Woman filling out form, close up
Woman filling out form, close-up

Bruno MASSA