Archive for the ‘creativity’ Category

Because everyone does it

August 13th, 2015

Reading the excellent article on (well, against) the hamburger menu made me realise there is a huge trap (or emergency exit to some) in any discussion on design (or standards, rules, behaviour … pick your favourite) — one phrase will stop the flow of creativity and divert the focus from the original objective.

“Because everyone does it” is a cheap double-edged sword to underline your point in lack of a better (if any) argument.

“Because everyone does it”, when not ignored, is the simplest way without offending someone personally to bring  any discussion to a new level. Yet down, not up.

Rise of the hacks (commodification vs. democratization)

November 3rd, 2014

There is no such thing as democratization of technology. If you think about it, this is quite obvious. Everything being sold as democratization of technology is commodification with glitzy marketing sprinkled on top.

What happens at the development level is that saturation has been reached, a specific kind of technology itself has matured and the only thing that’s left to do is increase the level of integration. This, however, comes with a cost. One example that everybody (in the western world) experiences every day is computer (including smartphones). You see, back in the days of DOS (and, before the Apple historians start howling in protest, the Apple II), when there was no such thing as a Graphical User Interface, processing power, or rather the lack thereof, was a huge (or tight – sic!) bottleneck (as were memory and basically everything, but that’s not my point…), so programmers would have to work very hard to develop and optimize their code so it would execute as fast as possible. This was a paramount objective since the beginning of the PC era which lasted until the mid-90s when the 486 and Pentium came along. Back then, Michael Abrash, who worked for companies such as Microsoft and id software (at which he played an important role in developing the game-changing (sic!) Quake engine), wrote:

GUIs, reusable code, portable code written entirely in high-level languages, and object-oriented programming are all the rage now, and promise to remain so for the foreseeable future. The thrust of this technology is to enhance the software development process by offloading as much responsibility as possible to other programmers, and by writing all remaining code in modular, generic form. This modular code then becomes a black box to be reused endlessly without another thought about what actualy lies inside. GUIs also reduce development times by making many interface choices for you. That, in turn, makes it possible to create quickly and reliably programs that will be easy for new users to pick up, so software becomes easier to both produce and learn. This is, without question, a Good Thing.

The “black box” approach does not, however, necessarily cause the software itself to become faster, smaller, or more innovative; quite the opposite, I suspect. I’ll reserve judgement on whether that is a good thing or not, but I’ll make a prediction: In the short run, the aforementioned techniques will lead to noticeably larger, slower programs, as programmers understand less and less of what the key parts of their programs do and rely increasingly on general-purpose code written by other people. (In the long run, programs will be bigger and slower yet, but computers will be so fast and will have so much memory that no one will care.) Over time, PC programs will also come to be more similar to one another-and to programs running on other platforms, such as the Mac-as regards both user interface and performance.

Again, I am not saying that this is bad. It does, however, have major implications for the future nature of PC graphics programming, in ways that will directly affect the means by which many of you earn your livings. Not so very long from now, graphics programming-all programming, for that matter-will become mostly a matter of assembling in various ways components written by other people, and will cease to be the all-inclusively creative, mindbendingly complex pursuit it is today. (Using legally certified black boxes is, by the way, one direction in which the patent lawyers are leading us; legal considerations may be the final nail in the coffin of homegrown code.) For now, though, it’s still within your power, as a PC programmer, to understand and even control every single thing that happens on a computer if you so desire, to realize any vision you may have. Take advantage of this unique window of opportunity to create some magic!

Which has proven to be still holding true 15 years later. And we see this not only in software, but also in hardware, as I mentioned before. Likewise, a new generation of users pops up, which I refer to as hacks. A hack is not necessarily a bad person, but easily perceived as such by the established players in a given area of competition. You see, broadcast engineering used to be (and still is, when keeping a technical minimum standard) a very complex field, which is why it’s still engineering and not play-as-you-go. Nevertheless, there are companies which go the aforementioned way of integrating mature technology and bringing it to the market for a price “everyone” can afford. Which correlates to the frameworks Abrash talks about, it is not a bad thing. The bad thing is that people buying this technology think it keeps up with the standard, which it does on the paper, but it’s just not as reliable, durable and serviceable as “the proper stuff” is. Nevertheless its users enter into the competition with the established players, which in a market, which is largely driven by price, creates unreasonable expectations which in return lead to ludicrous pressure within companies who see their market share flounder.

This is largely because people, in general, know less about more, which is based on the assumption that you don’t have to know how something works, you just have to know how to use it, which ironically enough, is propagated by the aforementioned pressurized companies—expert knowledge is costly, and costs are to be driven down, not up. And so the cycle is completed, as there are now even more hacks competing with other hacks about price, while the customer acts as a catalyst to all of this.

The only solution, of course, is to step away from the idea that every battle must be won at any cost. And to step away from the assumption that your customer’s only decision factor is price. It is in many cases, but my experience is that customers always appreciate service over price. And in my area of work, you’re only able to offer good service if you’re competent, able to fix problems, being a professional.

Professionals are able to create magic time and time again, hacks are not, or only by accident.

Scope

August 16th, 2014

Every decision we are about to make depends on our scope relevant to it. Which is why you get a variety of answers/solutions to exactly the same question/problem depending on whom you ask. Some answers/solutions encompass others, some are completely different, but none of them are wrong in their own scope.
This is overlooked very often, because it’s easier to assume a mutual implicit understanding and worldview, but that’s rarely the case.
Hence we must define the scope on which a certain decision will be judged, because if there is a divergence in the scopes of decision and evaluation, the oddities of judging any decision as wrong or bad go way up, which leads to wrong conclusions about the competence or even personality of the decision-maker.

How to delight an engineer

July 29th, 2014

If you happen to work with engineers and they’re mostly unhappy with the way they’re being asked about potential projects, or if you’re an engineer in this very situation and your colleagues don’t seem to get it, here’s a simple how-to:

Step 1: Describe what the product or service is like when it’s finished, as precisely as you can, from A to Z. Put in the effort to sketch out the interface (if there is one), who does what in which particular order, who needs to know when something has happened, etc. Imagine how people will use it and what their expectations might be. Try to put yourself in every party’s shoes and walk through the whole thing. Think of legal constraints. Write everything down. (Use flowcharts whenever possible. Engineers love flowcharts.) Yep, that’s a lot, but believe me, it’s worth it.
Step 2: Define process boundaries. What is supposed to happen, what must not happen under any circumstance?
Step 3: Define development constraints. What is the budget? How much time is there to get this done?
Step 4: Have a meeting with the engineer(s) and give them all of what you have worked out so far, and they should be able to tell you what you need to know (can we do this in the quality proposed, considering all boundaries and constraints?) on the spot.

Bonus: How to delight engineers and non-engineers alike
Say Thank You, even if the answer you get is not what you were expecting.

The generation myth

September 9th, 2013

Originally I intended to call this post “The Generation Y myth”, based on the article in the German Wikipedia and the links it refers to. But as it happens, I stopped for a second and looked it up in the English Wikipedia, and this article creates a different image. Which is quite amazing, isn’t it? One would think “we call tomatoes tomatoes because they’re tomatoes”, right? But that’s obviously not the case. But why is that?

All this generation think is pretty much made up. Yes, there are sociological and socio-economical trends or shifts, but it’s unlikely to find them represented in groups specified by their age only. (The characteristics are to a much greater extent influenced by factors as social status, educational background, location, peer influence, etc.) It is rather the desperate attempt to coin a catchy term for something that is hard to explain otherwise. Had Robert Capa in his photographic works and Douglas Coupland in his novel not created and established the term “Generation X”, we probably wouldn’t be talking about it.

My problem with this is not that the term itself exists, but that it’s being exploited to spread rubbish ideas, and because it’s a catchy term, the idea is highly sneezable, hence the spread goes through the roof. And as in many cases I’ve encountered, the rubbishness stems from the desire to create (counter-)icons, (anti-)heroes and poster children. The big mistake people easily fall for is that not one single generation has been exactly the way its icons, heroes, poster children or opposites thereof were. There are always ideas, schools of thinking, and, as a consequence, altered behaviour changing over time, and yes, these are more easily adopted or rather quicker surfacing in the younger generation. But it doesn’t turn them into stereotypes.

What I have experienced though is that, not surprisingly, media coverage tends to present the facts in a way the majority of their audience prefers. A magazine with mainly upper middle class subscribers will present “the facts” in a fashion the audience will be pleased with, as if to say “well done” or “you need to keep up with the Joneses” (which is even likelier, because it’s helping to boost the economy when you send your kids to private schools, pay for their piano lessons, have them join the Scouts and so forth).

It’s the satisfaction of the needs of one group of society. What worries me is those who get left behind because they don’t fit in there, and that judgement is made quite likely by decision makers who just happen to be in that very group highly influenced by these specific media or people knowing that this group is receptive to a certain kind of “facts”.

(And ironically, this is the hour when media catering to a different audience are ready to cry foul, because that’s also a need from waiting to be satisfied.)

So, what is there to do? Well, the only solution which is equally fair to everyone is to treat everyone as the individual they are in the first place, with strengths and weaknesses, and to judge and develop them accordingly because of their individual performance and merit, not by a fad that has been attributed to them by someone who never knew them in the first place.

De-Interlacing roundtrip

August 30th, 2013

It’s quite amazing that hi-quality de-interlacing of video footage is still an issue not easy to be adressed, especially when it comes to encoding for web and mobile. The basic problem is that your footage inevitably loses sharpness, but it depends on the quality of your de-interlacer how much aliasing you will end up with. And just to make sure: for web and mobile (and Windows Media Player..), always de-interlace your video. TVs, in most cases, handle interlaced H.264-encoded MP4 files quite well.

In my recent case I had some interlaced 1080i footage in DNxHD 120 which was being edited in Avid Media Composer 5.5.x and should be encoded to 720p25 and 1080p25 for mobile devices, and of course PC desktop playback. As it turns out, this version does a horrible job when it comes to aliasing, because the algorithm seems to be line-averaging only, no matter if your export from interlaced to progressive or import the interlaced footage to a project with progressive video setting. Though it takes ages, the edges of graphics, the part that is always the hardest to process for the computer but the easiest to spot for the viewer, are always quite jagged. So this was a no-no.

Why would you re-import the “baked” edit anyway? Well, I tried this because Adobe’s Media Encoder CC, which has the benefit of being a blazing fast encoder, also doesn’t offer any user-selectable de-interlacing algorithms. It just does its line averaging thing too, with equally inferior results. No-no.

So I gave Apple’s Compressor (I still use version 3 from Final Cut Studio 2) a shot, well knowing that the “better (motion adaptive)” algorithm yields good results but can be horribly slow (more on de-interlacing with Compressor here). And it was. On my 2011 Mac mini (on steroids) the encoding of a 30 second clip to a 10Mbit/s H.264 took 2 solid hours. With 130 clips in the pipeline, this was no approach worth pursuing.

Hence… putting each tool only to the function it’s best at, a working and quite fast approach with good results looks like this:

  • Export interlaced edit from Avid MC in DNxHD 120 (in my case, using a QuickTime mov container). Works in about half-real-time.
  • Either manually or by folder action, use Compressor only to de-interlace with motion adaption, again to QuickTime with DNxHD 120. This works in real-time speed.
  • Using a watch folder, process the Compressor output with AME CC to get your MP4’s. With parallel coding of two files, this is about 1/10th real time when using a 2-pass setting with a reasonably high bit rate.

Which is why dedicated encoding solutions make sense, if you need high throughput. For occasional use, it’s still good to know how to work this out on your machine.

P.S. Yeah, I know. HandBrake. Let’s just say I have my reasons for not using it a lot. One day, maybe. Then I’ll post an update saying how wrong I was yada yada.

Achievement

July 12th, 2013

What we achieve is the compelling result of what we begin and persist with.

Projects are doomed when…

July 6th, 2013

… there is no desire to assign or take responsibility right from the start.

… there is no desire to make it happen.

… there is no desire to do it better than the last time.

… there is no desire to keep the staff involved as happy as your superior and/or your client.

… as a consequence of the four items above, there is a lack of planning.

… as a consequence thereof, each step of execution becomes an iteration of the whole process.

… the manual or protocol being followed is outdated and/or doesn’t match the requirements of this project.

 

Projects are not doomed when people are (being perceived as) stupid (read: either not smart or not knowledgeable).

Projects are doomed when people don’t care enough.

Opposing Forces

March 11th, 2013

Have you ever felt the pain of unfulfilled potential? I’m referring to the (at first) external one, a circumstance that causes you a regular dissatisfaction with the status quo. This can range from a design you believe needing to be done better or changed, to issues of society and politics. And what did you do, assuming you’re not in charge of this particular thing? In those cases when you have some relationship (preferably a good one) with the person in charge, you might tell them what you’re thinking. And their answer might be “Well thanks for the input (, we’ll consider it / , but that’s just your opinion).” And if this becomes a routine, chances are the external pain becomes an internal one. You come to believe this is wrong and really needs to be changed. You believe changing this is your mission. But there’s a problem.

You’re afraid. The severity may vary, but what’s stopping you from dedicating yourself to this mission is your need for safety (i.e., fear of failure). Once you stick out your head, someone might whack it. You might be shunned by your tribe at the workplace for making trouble. Or, if you’re considering taking it one step further and doing this as full-time business on your own, you’re not going to have enough clients. So now that you’re between a rock and a hard place, what do you do?

There is really just one question you really need to answer (and if you can’t, you’re not going anywhere). This crucial question is: What’s your vision? Unless you can abstract this one issue that caused your dissatisfation (“this is broken”) to a positive vision (“this is ideal”) that you absolutely believe in, that you need to pursue no matter what, what’s in your mind is not a vision, it’s just a single self-assigned task. And that is not a foundation for a business, simply because you can’t sell it (more often than this one time). The only thing you can sell then is your time, and that’s freelance work. That way you’re not Turning Pro in this particular area, you’re still an amateur that does this kind of stuff for a living. Or as a hobby. Because you’re not defining the standard. Either does your client, or you’re avoiding the risk of really putting yourself out there.

Take this blog for instance. Four years ago, I was dissatisfied with a lot of things I had experienced during my career in the media business, and not only did I want to get it off my chest, but propose alternatives. I saw no use in putting blame on anyone, but also I had little leverage to change the things bothering me. Worse, I did not spend the time developing a clear vision of what I wanted, hence I did not fully commit to this cause. I was so petrified by the thought of being kicked out for making preposterous suggestions, I didn’t even try. The result is obvious. But I’m not unhappy (though I was for a while). Now this is a place where I can say things I think to be worth saying, still giving everyone the opportunity to benefit from my (smart ass) thoughts.

And at this early point in my life, I regard this question as either-or:
If you’re unhappy with the status quo and have a complete vision of how your knowledge, abilities and personality can make the world better, and you profoundly believe in it, get started. Don’t rush. It’s better (and harder) to work continuously at a constant pace. Without the unshakable belief in your vision you will most likely fail within less than a year. Not because of “them”, but because your fear wins by constantly sabotaging you in every way possible. My favourite example of someone having accomplished this is (no surprise here) Steve Jobs.
The alternative is letting go off the pain and focusing on issues you have a realistic chance of changing for the better. But it’s not unlikely that your mind will in magnetic fashion be drawn to the notorious “What would my life be if….?”. You have an answer for that now.

This might Change your Life

February 18th, 2013

Life Philosophies

“Modern” thinking says people ought to create a balance between “work” and “life”. I disagree, because it just so happened (under a combination of circumstances that has been unique in my life) that I realised how my philosophy of life in its entirety is different from other people’s. What’s more, I believe that both don’t play well with each other, which—whatever yours is—might cause you “not getting her/him”.

To the left there is the “classical” philosophy that your time is comprised of work and, or rather versus life. Yet as pointed out by Clay Shirky and Seth Godin, this is not as natural as we think, but a by-product of the industrial revolution, the invention of the factory—a place built for people with the lowest possible skill (so the factory owner doesn’t have to pay much) to perform labour as dispensable and exchangeable machine parts. And with work organised in shifts, people suddenly had free time, and with money on their hands, they could buy stuff their and other factories had churned out. (It’s worth noting the euphemistic term “recreation” implies that something must have been destroyed before.)

And I wonder, how would you balance that? I mean, really?
There are so many counteracting “forces” at work the balancing act itself can wear you out. I’m not going into detail here too much (please refer to the aforementioned books for that, I really recommend them), but just consider the fact that 8 hours of work a day allow for 16 hours of recreation yet many people feel it’s insufficient. How come? How about all the media, the advertising, all stacked up to persuade you that your happiness is just that one thing you don’t have yet away.
It’s a carrot on a stick.

Now I would ask you to forget this whole concept of life for a moment and ask yourself: What is it that you actually do all day?
And I should add that if you are working in an actual factory, moving boxes around, adding or removing parts to and from a conveyor belt, and feeling comfortable with it because it provides a certain level of safety, this might not be for you. But these jobs are fading, though not completely. It’s only important to me to clarify even though your “workplace” may be organised like a factory (and quite intentionally so), it’s different from an actual one. Stay with me for a couple of seconds.

For all non-factory-labour jobs—and this includes farming, just so you know—I propose they are not much different from the rest of your day. You create, you educate (learn and teach), you connect, and yes, you consume. Sometimes you do two or three of these at the same time (not all, because I believe creating and consuming are mutually exclusive). And in everything, there is a certain opportunity.

gulf of opportunityThere is little opportunity in consuming, I believe, because it’s self-centric and the best you can get out of it is either the pleasure of a good product or the satisfaction of a good bargain. But the gulf widens as the activity becomes harder, because educating, connecting and creating are a lot more challenging than consuming. Yet for connecting and educating there are some boundaries of opportunity (most of them physically). And yes, the opportunities of creating something (and that includes shipping) are limitless.

And for me, for the past few years, this has permeated each day of my life without me being aware of it. No separation between “work” and “life”. This is what I do all day. “Work” is only defined that there is a certain group of people in certain spots that are involved in these activities, repeatedly, and I receive money in exchange for that. The only restriction is that the choice of what you’re doing is not always up to you.
But in my unpaid activity time, I get to choose to do whatever I’m comfortable with, and quite unsurprisingly the things I busy myself with during that time are not much different.

This can create a rewarding cycle, an emotionally positive feedback loop for you. And isn’t happiness just that? (Yes, it requires work, in terms of daily effort. Self-complacent idleness will not make you happy for long.)

(And yes, I’ve shamelessly mimicked Hugh MacLeod‘s style for my graphics. Because I admire his art.)