Tag: developer

BMW embrace Open Source for In Car Entertainment

BMW is looking pioneer a move away from proprietary systems used for in-car entertainment systems, allowing developers to build plug and play applications especially for their cars. This could be extremely good news for the open source community and another ‘notch in the bed post’ in the fight against closed source systems.

When a manufacturer or software provider uses closed source systems those systems are then not open to modification and customisation by it’s user. A user is essentially restricted by what that manufacturer or provider allows you to do, which is often not a lot. Closed source systems don’t allow interaction with other company’s products and whilst this may be preferable to that company, as it ties the user to their products it doesn’t really benefit the consumer leaving them frustrated and annoyed.

Apple’s iPod is a great example of this problem. Originally Apple didn’t allow interaction between their product and 3rd party products. This meant that a Linux user couldn’t use an iPod as they had no method of song management because iTunes is not compatible with Linux Operating Systems. Similarly if you had an iPod dock to play your music out loud, you couldn’t use that dock to play music from a 3rd party MP3 player. This has since changed as many developers and hardware providers have found ways of ‘hacking’ into the iPod and forcing it to be compatible with their systems.

“We were convinced we had to develop an open platform that would allow for open software since the speed in the infotainment and entertainment industry requires us to be on a much faster track,”

said Gunter Reichart, BMW vice president of driver assistance, body electronics and electrical networks.

“We invite other OEMs to join with us, to exchange with us. We are open to exchange with others.”

A great example of the power of Open Source systems that most of us can relate to has to be the Mozilla Firefox Internet Browser software. Thousands of add ons have been developed by a thriving community of developers to enhance the functionality of the browser and talking from personal experience, I simply cannot use other web browsers as they just don’t provide what I need.

Well done BMW, lets hope you can convince the other manufaturers to follow your example.

Make Sense of Your Notes: Muji Chronotebook

Muji Chrononotebook

Muji Chrononotebook

Quote

Because of the numerous hours in a day (and various other constraints), the lines in a diary are typically very narrow. They are also usually equally distributed (somewhat). But our information is a hierarchy. Some are more important to us. Some we feel happier about. We want to highlight stuff that’s important to us. We want to write things that are more important in BIGGER sizes. Our lives cannot be so easily and clearly divided into equal parcels

Normally when we make notes they follow the same pattern, you start at the top of the page and work your way downwards adding notes. The Chronotebook allows you to organise your notes using time. Not only can you use it to sort your thoughts, you can also use it to keep an eye on the length and time of any particular event.

Being a developer who uses nothing but relational databases all day, I tend to organise my notes using my own simplified UML structure, something my colleagues find mystifying! Everyone is unique, however I find that my method allows me to analyse a problem or scenario as I am making notes which helps me understant the situation before I sit down and properly think about it. However I have to be careful that I don’t spend too much time thinking about how I am going to make notes, rather than listening to what the client is actually saying!

The Chronotebook won the Muji Award International Design Competition for 2007, find out more at the link above…

Programming Gives You Real Life Bad Habbits…

Quote

It may be cliche, but it seems that people who get good at writing software are motivated by laziness. If everyone was as constructively lazy as a good programmer is, the whole world would be more efficient.

[..]

I wish I could grep my keys.

[..]

Programming teaches you that the universe is predictable and deterministic. I’ve personally found that this has shaped my expectations and fed my impatience with people and things that are not.

There’s a positive side to this – I think that spending time in an environment where you can’t “fudge” the answer or bullS**t your way through (you can’t “kind-of” sort a set of integers, and it won’t sort unless you tell the computer exactly what to do, and correctly) has sensitized me to b.s. in other environments, from commercials to claims about tax cuts – I just find it much more obvious when people are clearly hand-waving/fudging an answer.

If you are a bit geeky, you will be lol for hours!

What does the offshoring backlash tell us?

Quote

After 2 years of excuses, laziness, constant turnover (complete waste of training time when the guy/girl buggers off and leaves you with a new muppet), terrible or copied-from-Google code, never-ending bugs, headaches, baffling phone calls where no-one understood each other, emails that promised to “do the needful” but went ignored, applications that just didn’t work, MILLIONS of dollars, and much, much more……. we had enough, and told the Indian coding behemoth we’d had enough and brought our dev team back in house.

Saying that things go more smoothly is a massive understatement. Don’t know why we bothered. Oh yes, some spreadsheet said it would be cheaper.

When writing software the developer needs to be in constant communication with both the project manager and the author. Out-sourcing your coding just doesn’t work. In my experience a programmer often has a completely different take on how to solve a problem to most other people, they will often find the simplest and most efficient way of producing software, which while it sounds good is often not the best method.

Any well rounded developer knows that sometimes the specs given to them can be illogical or not well thought through by an author or project manager that doesn’t fully understand the coding process. This means that the full team building a particular piece of software need to be flexible to some degree and this cannot be acheived when outsourcing.

It doesn’t even have to be incomplete specs that will upset the process, clients love to change their minds, especially when they see a prototype of their software. Things I hear all to regularly are ‘can we move that to there’, ‘what if we swapped this round’ or the dreaded ‘Oh, actually I don’t need that bit any more…’

So on paper it may look like it is a lot cheaper to outsource, but in the long run the lack of communication, understanding and flexibility will have you wishing you had seen sense when that email from an asian coding beast offering you the chance to slash your development costs drops into your inbox.

Hug A Developer today

For all developers everywhere, we all share the pain…