In google we must have faith

Google released a pretty sizable update to it’s algorithm last week, this along with an earlier change that Matt Cutts describes as targeting duplicate content, seems to show what Google think the web should be like. You should produce engaging original content, presenting other peoples information - however nicely - is bad, well not good.

They say that 84% of the sites that have been affected by this change were flagged as spam by their users anyway and that they are pleased with the results - other people are not so pleased as this guardian article shows. The Google spam team have a hard job, identifying pages and sites that contain information that will not be relevant to their users and other teams have the task of rewarding sites that produce information that users want. However there are a lot of sites out there that use content from other places, how many sites use Wikipedia text, it’s creative commons after all. Many sites have built their entire business around traffic from Google and so when Google turns around and takes some of that traffic away it’s not surprising that they are pissed off, after all they’ve probably put in a lot of effort creating their website.

Now I agree with Google, the Internet should be about contributing to the net, not stealing other peoples work and passing it off as your own somehow so that people can click on adverts, that faceless Wikipedia editor didn’t do it so that you could make money - I know that makes me slightly hypocritical but I don’t think that anyone could disagree with the statement?

On the other hand with great power comes great responsibility and Google may have trodden on some peoples toes here, the rankings may come back as people actually click on the links but maybe Google has the foresight to see that the greater gain will be that these sites refocus on quality content and we have a better Internet - that would be a good thing, no?

Why indeed? Stroustrup, new developers and accreditation.

In software development there’s not many times that you can disagree with Bjarne Stroustrup but I’m not sure I agree with his article “What Should We Teach New Software Developers? Why?”

I agree that the teaching in Universities isn’t aimed at industry enough and that some things just aren’t taught enough, well emphasized enough perhaps. At university I was taught Java in what seems to me now an awful way, teaching procedural programming in the Java language is just not sane - especially to extend it four weeks later to full OO and expect everyone to start writing properly structured programs. Code style was never taught, and efficiency wasn’t top of anyone’s priorities. It was all geared to getting the job done - a typical attitude in research.

However I consider myself a reasonable developer, I can write tidy efficient code - even in c++ - so I must have learnt it somewhere, which must be either in my own time or work (I think both have played their part) and it wouldn’t take much to add it to the material covered in the programming courses. However teaching things like Unit testing, effective code review technique and build systems just won’t happen at university, these things have to be learnt on the job, no one is going to take the unit testing course if they can pick robotics are they?

As for his suggestion that there should be some form of accreditation for Software engineers, well he can sit in his tower saying all of that but some of us struggle to make it through University financially - having to take a whole set of accreditation exams after that would exclude many people - me included - from entering the profession. That’s in addition to the extra time that this would require, you’d effectively be making people choose between a research career or a professional one as those that do Masters/Research qualifications would then have to get another accreditation before they can start practising professionally.

What would an accreditation scheme do for the profession anyway? Well I think that software engineering is one of the most innovative jobs out there and a formal qualification structure would halt that in it’s tracks. Every accredited engineer would have to follow a strict set of guidelines that would be agreed on by committees that people like Bjarne Stroustrup would sit on and if they strayed from this they would be struck off. Yes it would mean we inside the circle could earn more money but isn’t this why we all hate lawyers? How many start-ups would employ chartered software developers I wonder?

Maybe I missed his point.

Good Hunting

Is the scourge of developers finally on the way out?

Google announced over the weekend that it’s going to stop supporting IE6 in some of it’s web applications. I bet many developers are hoping that this message will finally get through to those *still* using it that there is better technology out there and the should upgrade.

I know that the majority of these users are probably corperate users where they don’t have a choice but if the figures of 20% are still true that is a lot of ancient browsers out there that cause almighty headaches for anyone developing websites now days. Personally as most of the people who visit this site use firefox >46% and I’ve only had 2 visits with IE6 I don’t do anything special but I know that it’s important for proper sites to keep supporting it while people keep visiting them with it.

Imagine the amount of development effort and money that could have been saved if everyone had upgraded two years ago… Come on people give it up!

Good Hunting

Boost Documentation

Now I like the boost libraries, they let you do almost anything in C++ and make most things an order of magnitude easier, iff you know how the library works.

void rant() {

Some libraries have brilliant documentation but most provide just the wrong level of detail. Enough information to know that you’re almost doing it right but it still won’t compile and/or it segs in the most obscure way. The Interprocess library is my latest target - it has a lot of examples and a lot of hints and seemingly lots of functionality, I’m not saying that I want the authors to leave a breadcrumb trail for every possible way of using the library but if you’re going to give examples, explain them properly! And tell me what the functions do on the same pages that you talk about them.  Tell me how memory mapped files differ from shared memory, it doesn’t have to be overly simple - I’m using boost, I probably know what I’m doing!

I’m not even going to mention the python docs (though they have improved massively in the last few versions).

}

Good Hunting

Wolfram Alpha

A while ago wolfram research announced that they were developing Wolfram Alpha, a computational knowledge engine that could answer questions on the internet. As this is exactly what we do at True Knowledge we were quite interested in how this all worked and how well it worked. Wolframs knowledge engine is written in mathmatica, a language that was developed at wolfram research whereas True Knowledge are using more standard languages, our core knowledge engine is written in C++ and runs on reletively tame comodity hardware whereas wolfram uses some serious kit - as can be seen on YouTube

Wolfram Alpha has been getting a lot of publicity recently - helped in part due to its founder Stephen Wolfram - and most of it has been encouraging for them and the space in general. Their lauch on Friday was hit with a few snags but they seem to have got the system up and running - well I’ve been able to give it a try anyway. From my experience it seems to be pretty good at factual based questions such as how old/what is but it hasn’t been able to ask any questions that involve an extra step of reasoning over working out what was in the question - apart from obvious cases. That happens to be one of the very things that the True Knowledge system is very good at for example try the ‘Who was prime minister when micheal schumacher was a teenager’ question that I had in my True Knowledge API lauch post, the wolfram page for that is still spinning three minutes later. When they do give a response it does tend to have lots of information about the answer rather than a simple answer though. For example try ‘Halstead uk’, you get the population, weather information etc… 

One of the main differences is the fact that you can’t add information or knowledge to Wolfram, True Knowledge builds on user generated content, much like wikipedia, this means that when it can’t answer but does understand, it can let you add the required information and then the question can be answered, whoever asks.

Give them both a try and see what you think!

Good Hunting

 
  
  • Categories

  • Recent Tweets

  • Comments