Martin @ Blog

software development and life.

Flower

Archive for the ‘English’ Category

A startup in a weekend

Two guys decided this weekend to create a startup in a weekend. They created a new webservice, called Tweetburner which can be used for creating sort url’s to webpages for use on Twitter. This is not a very innovative idea, but they added a tracking system which makes it possible to create rankings of the most popular links.
The way they created this new service is the most intersting, since they used weblogs (another one) and http://www.twitter.com/tweetburner”>Twitter intensively. This resulted in a large number of new users and new ideas they probably didn’t get when they developed it without publishing about it. I think this is a great way of creating a new service. A similar example is the creation of Fav.or.it, on which the creator also blogged a lot before the service was released to the public. This resulted in a rather large group of people knowning of this new service even before there was a ready-to-use product.
Via Erwin Blom.

Pulse for Eclipse

Since a few days I’m using Pulse. This is a service which providers the possibility to use a shared profile for Eclipse. You can either use this service anonymously or as a registered user. In the latter case, you create an account and can select a generic profile for Eclipse, targeted at a specific audience. For example PHP developer or J2EE developer.
Then you can start your profile after which the required software (Eclipse and the plugins required for your profile) are downloaded. You can customize your profile, which also includes the Eclipse preferences such as the size of your font in the editor etc., but also other plugins which aren’t yet part of Pulse.
The most interesting part is when you use another computer. There you can just login to Pulse, click ‘start your profile’ and presto: on this computer the same Eclipse as you normally use is downloaded and configurered according to your preferences! It is even possible to share profiles within for example development teams, in order to let everybody use the same development environment.

IE8 will be more standard compliant?

According to IEBlog, Microsoft changed its opinion on the standard compliance of Internet Explorer 8. The browser will now probably break compatibility with IE7 and will be more standard compliant thant the previous versions of IE.
Untill now, the company opted for a ‘switch’ which made IE8 more standard compliant, but in the default mode it would emulate the behaviour of IE7. I think the new approach is a good move of MS.

Merry Christmas!

I didn’t write much here for a pretty long time. Of course, I have my reasons for not to do so. Last month, my girlfriend broke up and as a result I had to move to another apartment. Needless to say, this was a difficult period, but currently, I have the feeling everyting is getting better now. At least I have my own place now, which makes things less difficult. Unfortunately, I don’t have an Internet connection yet at my new place, so I won’t write much here the coming weeks.

I want to wish everybody merry christmas and a happy 2008!

Funny way to indicate Windows systems

Due to the fact that Apple (and Linux distributions as well) may not use the Windows logo because of copyright restrictions, Apple had to find another way to represent Windows system when browsing the network. In my opinion they found an alternative which is accurate and funny in the same time:
OS X Windows machine representation

Of course, some people are insulted by this way of representing a Windows system. They claim that Apple degrade all systems not running OS X as inferior. I agree with Jakub Steiner who claims that it is a very recognizable. I think it is cool.

HTML Purifier

Kore Nordmann explains why in his opinion one shouldn’t use BBCode for comments and forums. I think he has a point, but it only holds when the BBCode is parsed using regular expressions, as he explains in another article. Actually, you’re not really parsing the BBCode when using regular expressions, because it is pattern matching. He explains why it makes no difference to use HTML syntax instead of BBCode syntax. Obviously, he has a very good point, because the BBCode syntax is not well defined, while HTML syntax – especially for the things that normally are allowed in blog comments or on forums – are well defined and known by many people.

An intresting observation is that, even despite the good explanation of the problem with BBCode – a false sense of security when parsing it with regexps – is that people demonstrate in the comments that they really don’t understand it. For example, one comment states that it is almost impossible to block all not allowed HTML using blacklists… Obviously, one shouldn’t use blacklists, but whitelists. By default, all < and > should be replaced by &lt; and &gt;.

HTML Purifier is a library that parses HTML and uses a whitelist to allow certain HTML tags and attributes. Why should one develop something like this from scratch when there is alreay a library available?

Accessing properties in PHP objects

Today, I stumbled upon a weblog post of Jeff Moore on the way properties of objects should be accessed in PHP. Accidently, I thought a little about this problem myself last week because I’m working on a small project which uses a large number of data objects. Jeff Moore argues that you should not use $object->set($name, $value) or $object->get($name) to modify properties, because it does not add anything. I agree completely with that (and I’ve never used this technique myself). He recommends accessing properties directly or using setXxx($value) and getXxx() to access properties (where Xxx is the name of the property).
An intresting discussion arises in the comments where some people argue to use getter and setter methods, while others defend direct accessing the properties. I’m not sure on which side I am standing, but I think it depends on the purpose of your class.

For example, in a hobby project I’m currently working, I have quite a number of data objects (in fact models) which are generated dynamically using some kind of object-relational mapper. The properties of the objects are the fields of the table in the database the object is representing. I think in such a case, it is valid to access the properties directly. Other languages and frameworks (e.g. Ruby on Rails) use a similar strategy. I think it is also valid to use this technique, because since PHP 5, the language provides magic methods (__set and __get) which enables the developer to override the properties when necessary. This way, it is possible to modify the implementation without breaking the API of the class and as such keep the objects’ loose coupling. I think classes which are more behavioural (and not a representation of data) it makes more sense to use setter and getter methods, because you hide the implementation completely.

Room 11

Yesterday evening, we visited a performance of the Dutch band Room Eleven in the Effenaar. Room Eleven is a relatively new band (their first album was released in 2006) and consists of very skillful artists. I think it was one of the best concerts I’ve been to, and I can really recommend them. In my opinion there are not very much good bands in the Netherlands, but this one is the exception to this rule. They play a mix of Jazz, Funk, Bossa Nova and pop, but has also some influences from other styles, like gipsy music. It’s very refreshing and the passion for music really flows through the venue. The singer, Janne Schra, who apparently also write most of the music, has a very strong voice ranging from very intimate to really high notes. The other musicians, a guitarist, drummer/percussionst, bas player (who actually plays on an acoustig bass!) and keyboard player (using a Rhodes, Hohner and grand piano) are really good. I recommend buying their album Six White Russians and a Pink Pussycat.

You can listen to some examples on Last.fm.

Dutch Design Week 2007

This week is the Dutch Design Week 2007 in Eindhoven, the Netherlands. Throughout the entire city are exhibitions and lectures on topics related to art and design. The most interesting locations during this week are Strijp S, an industrial complex consisting of former Philips factories and now transformed into a center for artists and cultural activities, the Witte Dame, also a former Philips factory and currently the home of the Design Academy and the campus of the Eindhoven University of Technology. Last Tuesday, I visited the Dutch Design Week with some Industrial Design students which I happen to know. I think it is very inspiring to see the idea’s of other people with regard to design and art. Strijp S was the most intersting in my opinion, but the graduation gallery of the Design Academy also had some inspiring ideas.

We also visited Little Mountain. This is a creative environment for starting design companies (mostly individual designers). The interesting part of this, is that it is a commercial company providing low-cost facilities for young designers. The people which have their office here, do not only pay rent, but also has to commit four hours a week on projects in which all companies in the building participate.

Obviously, I made some pictures of the various exhibitions, which can be found in the gallery.

Dutch Design Week 2007 Flying drawers

Mac mini EOL?

According to AppleInsider the Mac mini is nearing end-of-life this month. The site reports that Apple resellers do not get new supply of the mini computer. I wonder if the Mac mini will dissappear completely from Apple’s product list, or that a replacement will be announced. The Mac mini is a nice computer for people to get familiar with Mac OS X without paying a premium price. The current models are quite fast and should be at least sufficient for most people who only use their computer for browsing the Internet, editting family pictures and doing some word processing. The first generation Mac mini’s, the ones with the G4 processor, were a little slow, but the current models have Core Duo processors, which are identical to the ones in the MacBook. Only time will tell, I guess.

You are currently browsing the archives for the English category.