This book was sitting on my shelves for nearly two months and I finally read it. It’s written by Nathan Yau, the guy behind FlowingData.
Visualize this starts of with a intro into one of my favorites topics, i.e. data collecting and cleaning. Yau uses Python, which is a great choice for such tasks. Chapter after chapter he introduces new tools (e.g., Illustrator, R, Google Maps) and shows how to get started with them. I think that pretty much resembles the book. It’s about how to get started in data visualization and its tools.
One critique is that the target group isn’t clear, is it for programmers or graphic designers or statisticians? It’s got a bit for everybody but no thorough path through the book. The examples are quite good and I love it that he shows different steps of creating graphics. The paper and print quality is really good, which is really important for books about graphics and visualization.
All in all, I’m quite happy with this book. It shows how to start and is written by someone who is more connected to the open source/internet world than to academia or corporate one which it quite cool because you don’t have to invest in expensive software to try the examples out.
What is it about?
Most people are mediocre at their job. Some are not like Chad Fowler how talks about being remarkable. This doesn’t only apply to programmers, it applies to every kind of occupation.
What can I learn?
Don’t be a jerk: This one is actually a pretty important thing to learn for programmers. I know a lot of them and many think that people who don’t understand how to program are inferior. They like their tech talk and they isolate their selves from the rest of the company. I don’t know if people can learn this that fast but maybe it’s an beginning. Stop talking tech talk if you talk with non-tech people. They don’t care about every minute detail. They got problems and want them solved. Think more about them and how you can solve their problems.
Learn about business: The next step is to open yourself to new areas like business. You may laugh about sales persons but they make the money. You don’t have to be friends with business people, however it is recommended. Learn about what they are doing. How that accounting work. What do the marketing people do? This insight is extremely valuable among software devs because most of them know a thing about such stuff. You will learn about new problems, new solutions and new persons.
Market yourself: If you realized that there are people out there who actually appreciate if you help them solve their problems and became less a jerk, then it’s maybe time to market yourself actively. An easy way is to start a blog. Write about what you doing, about solutions for problems that you encountered. A big blog will often lead to some invitations to conferences or book deals.
A great book for every specialist. It doesn’t matter if you’re a biochemist, software dev or designer, a lot of tips will help you to build a remarkable career for yourself.
GUI/UIs are important. It’s often crucial.
People use Kate instead of emacs or vim although vim and emacs are more powerful. But using emacs/vim is not that intuitive as using Kate.
There are many other comparisons. So, why do (open-source) developers neglect the UI?
From my point of view, making UIs is kind of boring. Mostly, it’s redundant, time-consuming and not decently abstracted.
Redundancy: Sometimes you’ve made a proper simple CLI. It works really fine but not for your users.
Time-consuming: Some clever frameworks generate parts of the UI for you. That’s pretty nice. Though, if you don’t have a suitable framework and your data isn’t modeled correctly you have to do it manually.
No decent abstraction: I think that’s a deciding point. Which UI is right? Which UI is wrong? If you are working on a DBMS you know which output is right or wrong. If SELECT user_id FROM user returns nothing although there are thousand entries, you know that is wrong. Its behavior is bad. But you don’t know if it’s bad if you put the calculate button on the left or on the right. There aren’t really metrics for UIs.
So, what can we do? Delegate the work. Look for someone who loves creating UIs. If you are working in a large (software) company there are probably UI-Designers. In open source projects UI-Designers are rare. Maybe because most open source projects don’t attract designers. Many websites are simple and pragmatic and designers aren’t attracted. It’s a vicious circle.
Time for intervention. Looking for someone on a flashy graphics board and maybe introducing him into the basics of a graphic framework.
They will love it because they are working on a great project and you will love it because you can concentrate on the code.
Update Here’s an article and some great comments about visual artists in open source: Pin Stack.