17 July 2008

What's going on with Apple's apps and Vista?

I noticed it quite by random, but it really bugs me. Apple should know better, and they should be able to synchronize their teams better, even if I am sure that they consider working on windows quite a punishment. So here we go with a picture:



Why does Safari looks that horrible, while iTunes looks that nice? I like to know. It does show that nobody is untouchable and good UI is an eternal vigilance. A consistent look is really needed and this ain't it.

(oh btw, that is, from top to bottom, Vista, iTunes, and Safari)

13 July 2008

More about C++ and programming

What is this? Yet another post? This quickly after the last one? Most people surely most have *completely* missed that I have posted something anyways :) Well, bad bad jokes aside. I remember one more major thing that bothers me about C++ and other languages. I think that it might be related to static vs. dynamic, but I'll leave *that* discussion for later. Here it comes, hold on to your hats ladies and gentlemen...

Change.

Yeah, it is that simple. C++ hates change, it breaks and creeks and the architecture gets stale and bad bad bad things happen. It is really closely related to the last post, because it is about fighting the language. The problem of the problem is that almost always you loose. Refactoring turns into a nightmare. Most often because of management (The Management, a.k.a. the root of all failures), second most often because of the language, and only a few brave and lucky make it in the end.

A language should be ready to be the instrument of molding your solution into whatever it needs to become, an ever changing dance between new problem and new solution.

I am looking at Obj-C, Python, Lisp, etc because of exactly that. We'll see where my journey takes me :)

12 July 2008

What makes C++ wrong?

So, what is it, in my humble opinion, that makes C++ wrong then? It is not something specific in the language, even if I am sure one can discuss particulars for days on end:) It's all quite simple, when you step back a few steps and look at what happens when you develop in C++ one can notice that there are two different activities. Solving the problem at hand, and fighting with the language. The first one is vital to any programming, it's the very point of it after all. It's what you should spend time on, and that is what makes it all worthwhile.

So what is that second thing? Fighting the language? That is everything you do that doesn't really solve your problem, but rather the language getting in your way. It's stuff like compatibility issues, low level technicalities, compiler peculiarities, refactoring woes, and the list goes on. I am sure that most C++ developers could collectively make it a huge and comprehensive list. I won't, I will leave that up to you dear reader:)

So the problem with C++ is that I am fighting it more than I am solving my problems. I am sure all languages involves some fighting, the question is how much. I will leave the subject prematurely without any proper analysis or similar, because I want you, the poor sod who decided to read my blog, to think about this yourself and form your own opinion.

Myself I am happily going to discover how much fighting I will have to do with Obj-C, Python, Lisp, etc. I am happy that I do know C++ though, because it has made me a battle hardened veteran in the legions of the Code Marines. I feel confident that I can be victorious in any future battle now. I fought the battle of the valley of C++ and I survived!

07 April 2008

Why do good engineers work for bad companies?

Time for *gasp* another post again. I've had tons of things to blog about, yet none I have written down. But now it's time again. The basic idea is that the majority of developers out there seem to be quite frankly bad engineers. They don't care about neither the art nor the product. They are there for the money and honestly could care less. It is not them that I am going to discuss today, I will leave them be to fend for themselves. The group I am interested in is the good engineers. So what the heck do I think is a good engineer then? Let's see.

A good engineer cares about the art, about state of the art, and balances that with the product to find a sweet spot where you are proud of what you have achieved. A good product by good engineering. It has a certain beauty, a certain simplicity and ingenuity. It serves a purpose and does it well. All good engineers have an idea of this, even if it differs from person to person exactly how to achieve it and what the end result should be. So let's focus on these good engineers, those who make a difference.

Next let's define, for the sake of my ramblings, a bad company. A bad company is led by those who do not know nor understand the product they are making. They are very much in it for the money. They might be bad, they might pay good, but they do not care about what the engineers think. More often than not the care more about getting corporate jets, mistresses, reenacting German dungeon porn, living in luxury, shorting schedules, make wild claims, change the product, and put their noses where they do not belong. Simple a pretty crappy environment for a good engineer.

So why do these good engineers work at companies that really only destroys the chances to make great products? We all know the companies, so I won't start to enumerate the worst cases even. I have a few theories. One is the money/laziness theory. They stay because they are good engineers, but lazy. They stay for the money and they don't want to move. They might be bad at getting connections to get new jobs. Basically they need a kick in the butt to vacate the bad company and move on.

Next we have the ones that care about the product and wants to make it great. They are filled with ideas and good engineering principles and knows how to do the right thing™. Management on the other hand do not and constantly tries to save a quick buck and ends up with a much worse product. They have impossible short schedules and requirements from hell. The engineer on the other hand really want the product to be great, so they stay and fights management and turns more and more bitter and jaded. This category of engineers needs to realize that things are never going to change for the better at a company like this, or the chances of it happening are very slim. For every Apple rising out of the ashes there are tons of companies that do not. Again these engineers need to jump ship and move on!

Those are my two, to date, theories. I am sure there are other theories and I am very interested in them, so you have to tell me:)

Oh, and I almost forgot something, you have to make money after you have left the bad company. So how to find a good company? Really research what the board of directors is up to, make sure the company really knows what they are doing, talk to their engineers to see if they are jaded and bitter or energetic and hopeful. Don't sell yourself to a bad company again!

The other option (besides your parents basement, cold pizza, and the lamest computer game on earth all day) is to have an idea you believe in and start your own business, and only hire good engineers (leave the bad ones to the bad companies...). Probably harder, but the rewards all the sweeter!

Good luck all good engineers and let the comments in :)

03 October 2007

New Look, and... the iPhone!

First of all, the new look introduced with the iPhone, and then moved over to the iMacs, will it move over to the laptops and screens as well? You know the one with the black around the LCD. I am quite curious about it. I would have imagined tons of MacBooks turned aluminum with iMacish look to have been photoshopped and featured in every single Mac related news collector. Strangely this haven't happened.

One thing I do hope though is the return of more colors. I so would like a blue or green MacBook myself. White is a bit sterile, black is awful, and the brushed aluminum thing isn't really my thing. I like colors. I really do miss the transparent plastic iMac look. Same with the PowerMacs. I crave more color.

Which just reminded me of something different. How come PC cases are so awful? Just about all of them are really awfully looking, and none look really good. You'd think there would be a market out there, or could it be that simply nobody with the capital out there cares at all about the customers?

Now to the iPhone. There has been more written about it than what I care to ever read. Ever. Way too much from people with zero clue about what they are talking about. So with that in mind, why the heck will I write about it as well? Well, first of all I do have a clue. Second of all I do think that I might actually have a point to make.

I think that the locked down state of the v1.0 of the iPhone makes a lot of sense. Making a security model for a mobile device is not at all the same as making one for a computer. OS X is a computer OS. It makes a lot of sense to have 3rd party applications, but not if they can screw your iPhone over really easy, and the iPhone is a much better target for viruses and malware than a Mac is.

The iPhone is an appliance, just as your microwave. You are not suppose to hack it, open it up, or fiddle around with it. It doesn't try to be the perfect device for everyone, but rather to be the perfect device in itself. If you try to put everyones favorite functionality into it it will burst out of it seams and turn into every other horrible mess of too much features. People are upset because their special piece of functionality isn't there. They want it to do things it doesn't. They wished that it was a computer, a Newton, a PocketPC device made by Apple, etc.

They are all obviously going to be disappointed. The iPhone is just an iPhone. An iPod you can call and SMS with, especially now with the iPod touch released. But that is what makes it so great. It really is an appliance. It really doesn't need to do more. You don't want games in your microwave now do you?

But what I do find interesting is that there is more internet buzz about something you shouldn't be able to do, 3rd party iPhone apps, than something you can do, 3rd party apps for all the other mobile devices out there. Maybe, just maybe, they are screw enough to build up a need this way. It reeks WAY too much of conspiracy theories. But remember what they say, just because you are Paranoid doesn't mean they are not out to get you...

27 September 2007

Discoveries

I wonder how many little nifty things that I have missed in OS X. Now and then I find some pretty darn nifty stuff, just out of nowhere really. Today's uncovered gem is one quite simple little thing. I happened to press Command when clicking on the titlebar (whatever is that called in Apple speak? I seem to never know:) ) on a Quicktime window I noticed a little drop down. Funny thing, it actually showed where the file I was playing was, and then each consecutive item was one folder closer to the root.

I gingerly tried it in a few other apps, some didn't react, but the finder sure did, and so did Safari. Very very nifty indeed. So the question I am asking myself is, am I really using OS X to its fullest potential? What other really useful little tidbits am I missing out on? I want to know, I crave the knowledge engraved on long lost tablets, the wisdom in tomes of dark magic, and quite possibly that nice page Apple page (http://www.apple.com/pro).

I think that I am just going to post the little interesting hidden features I find along the ride. So stay tuned, but don't hold your breath :)

19 August 2007

The cult of white

What is up with me and white plastics? Have I fallen in love with the 60s all over again? Surely not, I hate the look of industrial design from back then. But I like white plastics, because I have a lot of electronics in white plastic. I have my trust macbook (and I secretly wish they made 15.4" macbooks with all the goodies from a macbook pro, but with the design of the macbook, in white, not freaking fugly black!). I have the white Sony Ericsson M600i and I wish they could have kept the look for the P1i, because it is metallic and black.

Let's go on. Did I pick a black or a pink Nintendo DS (awsome gaming machine!), noooo. I promptly went for the white one. White plastic covering really entertaining electronics. Nice clean design. Same goes with the iPod on its way to yours truly. White. Found the pattern yet? But it might just be that I don't want things in black. I don't like the black HP at work for instance. It's not nice looking at all.

I do love the look on the iPod mini, I would love a green or blue macbook pro. Or a green or blue plastic macbook. But since I have the white macbook it seems like I am drawn towards the same look in other devices.

Which leads me to the iMac. Nice new design and all, but I am looking forward to the next *BIG* change in design from Apple. I honestly miss the first iMac and the old PowerMacs. I like that they are colorful and fun. Is the mac turning too serious? Too Pro? Maybe. We'll see what happens next:)