Thursday, June 28, 2007

Old fashioned learning

Jeff Atwood brought up a subject of lerning today that made me think of the exam I just went to. The notion in his post is about how you learn to learn in college, but also touches on the subject of why todays students are not taught how to use the possibilities of the net. And it is here that my story begins.

Just recently I finished up a course in Efficient AI on ITU. It was a really good course that taught advanced algorithms in many different aspects of the field of AI. During the course we had some smaller programming assignments, and finally the course ended up in an exam. And here the timetrap suddenly clasped. The exam was a four hour written exam. Written as in paper and ball point pen. Now why is it that they can't provide us with some computers for writing our answers? I mea, we are at the Copenhagen IT-University for crying out loud! Is it because we could use the computer to solve the exam? Hardly, if they made sure no compilers were installed on the machine. Heck, if it is a logistics problem - make us bring our own machines. I mean - we were allowed to have every written note we could think of, as well as all the printed material we could carry in there with us. Might as well have brought it in electronic form and save several hectars of fine swedish forest in the process. Of course - then they could not have checked for compilers, but really - it is a course teaching algorithms used in programming, so if you are capable of writing programs to solve tre problems you were gven - is that not a display of your understanding the curriculum? Even if you brought in third party libraries, and had access to the internet you still had to have SOME clue of what they were talking about in the exam questions in order to solve the problems.

I can imagine the kinds of answers to my questions I would get if I posed them to the faculty staff. Most answers would probably be in the region of preventing cheating anf judging people fairly. And while I do acknowledge that some precautions should be taken against people shamelessly copying others work, it would not be that hard to take some electronic countermeasures against it. We are seated in a controlled environment after all. But my main problem is that I think that in the name of paranoia they are making the environment way to controlled - way too far away from an environment where the skills that are taught are to be used.

My proposition is therefore more along the lines of opening up. Giving students the tools they would normally use for the kinds of problems proposed. Yes, even the internet - logging whatever needed to satisfy big brother. The problems could then be made accordingly harder, perhaps requiring a bit of programming or a making the problems easier to solve with programming, but not impossible without. I bet that at the end you would still see the students that have paid attention during the course and prepared properly for the exam being the ones that end up with the good grades. And in the process you would have made sure that the skills related to solving problems in real life - like finding examples and articles on the net - are being kept alive and not treated as "bad stuff".

Luckily my hand got out of its cramp before I got to the celebration beers. And yes, I did get a really good grade. :)

Wednesday, June 27, 2007

How not to keep customers

Having read a lot of posts just like this at the ZMans, I now have my own story to share. Forgive me if this post is badly worded, because right now I am still angry with them for their inexplically bad service. I just got of the phone with the mobile company 3, where I have had a mobile data service for my computer for some time now. The service is being provided via a PCMCIA card with a SIM card in it. The connection is quite OK, and the service is working fine. Now the problem is that since I got my newest laptop, I haven't been able to use the card, since the laptop does not have a PCMCIA slot (it uses Express card instead). Well, I saw that the company had introduced a new series of adapter - a USB adapter - which I would be able to use. So with a hope of getting the thing working again on my machine I call up their sales service, as they do not have any e-mail service what-so-ever. Welcome to the new millennium. And this is from a company that takes pride in introducing next-generation technology.

After wating for a good five minutes - I know, I am lucky - listening to incredibly bad and loud music, I finally get a hold of a female salesperson. After explaining my problem, she puts me on hold for another couple of minutes. When she comes back, she explains to me that it is not their fault that I have chosen to buy an incompatible machine - and since I have been using their product there is no way that they can sell it again. Bottom line - they will not be able to help me with anything. The incredible thing with this is that they are in no way interested in finding out who I am. I could have been a large customer for all they knew. I start explaining that I find that to be incredibly bad service and she just cuts me off. So I ask her to help me with cancelling my subscription. Of cousre she can't do that as she is in SALES, and has to transfer me through music hell to another department.

Here things go smoothly, and I cancel my subscription from the first available date - which by the way is January 15th 2008. And here comes the really good part, because he informs me that the reason they can't help me is because my subscription is still in their 18 month binding period!!! WTF! So if I had been a customer for more than that they could have done something...

I am just confounded by this. Giving extra bad service to "new" customers just seems like such a bad idea. I could maybe have been persuaded to extend my service with them if I had gotten better service. Now they are instead blacklisted as a company I will never ever do business with again.

So if you are reading this I can not reccommend you to do business with them either. Maybe it works for you now - but if you get into a pinch with their technology, don't expect any help.

Thursday, June 21, 2007

A trip to the Castle

In the past week I have been fiddling a bit with the Castle frameworks, because I just had to see what they were up to with Monorail, their Rails for .NET framework. While i think the ideas behind Monorails, and what they have made are technically excellent. There are some things that bug me. I am irritated by the lack of a proper view engine. I think that both NVelocity and Brail are downright messy to look at. Giving me all sorts of ASP like creeps. The ability to use WebForms is in that regard extremely promising, being BOBW - but the limitations they have right now are somewhat prohibiting. Granted, I haven't taken it for a spin yet too see how bad it really is, so I can't be trusted as a real source. I need to do that some day soon.

But anyway, in the process of Monorailing along, I discovered one great little gem. The ActiveRecord. This is a small framework that glues NHibernate and Monorail together, offering a smooth ride through database country. And that one rocks. I haven't used NHibernate much, cause making all those pesky XML files and lugging then along when doing whatever just turned me off big time. But this little bugger just removes all of that and makes it a joyous ride. It even generates the database for you if you're lazy! 8)

So, the latest thing I am working on is using ActiveRecord and plain old ASP.NET, and it is great. Looking for a tutorial to get started are ya? Well - that is already done - head over to Castle and get going!

The next step of Dovization

You have pobably seen the cool but old Dove film on how people were transformed from "ordinary people" into "super models" for use in a commercial. Pretty cool stuff. But this video shows promise of taking that to a whole new level. This will probably make Gibsons virtual actors come true sooner than we think.

Thursday, June 07, 2007

Randomness of Random

Stumbled on this post on random numbers in games, and found it cool. It used to irritate me to the point of lying awake that my random numbers just weren't that - that was back in the old Speccy days. But now, knowing the pain randomness brings to TDD, I am entirely happy with the fact that random numbers (like friendly fire) aren't.

BTW, while you are at it, post some songs wishes for Rock Band. I am so looking forward to this game. It will take my Guitar Hero addiction to a whole new level probably. Last major GH thing - 5 stars on YYZ (Medium). Didn't thik I'd get it when the song was over, but it cam home by a small margin. The question is if I can get those 3 stars on Woman (Hard) BEFORE I 5 star every song on medium...

Microblogging

So, at Reboot this year I learned that microblogging is the new, new thing. Since Twitter does not have an SMS interface near DK, I am into Jaiku. So you can join me here.

Back to strongarming, eh?

I have been following the Cansdale vs. Microsoft case for a while. And Jamies post today did it for me. The way Microsoft is acting here disgusts me. He has been pouring hours into making an awesome add-on for their product, which is helping both professional and the open community in deveopling better products. And they are strongarming him on vague grounds because their product is not as "flawed" as they claim.

A signal is sent to the entire open source/add-on community that spending your time supporting their product is a bad idea. Just another brick in the yellow brick road that could lead "alpha geeks" away from MS - as have been the community buzz for a while now.

Well this has done it for me as well. I installed SharpDevelop and will be working with that from now on. The new version is actually awesome, i just need to find out how to enable a shortcut for run tests, as this is the way I work with TestDriven.NET today... It doesn't seem to work. Oh, and I have to figure out how to make XNA projects with SharpDevelop as well - then it is a total bye bye.

Maybe Jamie could be convinced to make TestDriven.NET's features in SharpDevelop instead. Their TDD tools are not that good. :o)

 

kick it on DotNetKicks.com