Americká žádost o radar předem vítala český souhlas

Posted in News (August 23, 2007 at 4:22 am)

Americká nabídka začít jednat o stavbě radaru v Česku předem vítala “prozatímní rozhodnutí” české strany na dislokaci tohoto zařízení a také rozhodnutí Prahy, že Spojené státy mohou okamžitě začít s přípravou radarového stanoviště.

Peugeot 205 3dv - Nabídněte

Posted in Live (August 22, 2007 at 4:38 am)

Nabízím spoustu náhradních dílů na P205, motor, skla, dveře, kapotu, různé plasty, topení, nádrž…… Nejlépe vše najednou. LEVNĚ!!!! …

Koupím displej k Aspire 5112 - Dohodou

Posted in News (August 21, 2007 at 4:56 am)

Koupím displej k notebooku Acer Aspire 5112, popř. od modelu, který ho má stejný(stačí mi samotný panel). Dost spěchá, cena dohodou

Česko spojuje s Rakouskem dalších osm přechodů

Posted in Live (August 20, 2007 at 4:07 am)

Na hranici s Rakouskem přibylo osm přechodů, sedm z nich na jihu Čech. Vznikly na turistických stezkách, takže rekreanti i místní obyvatelé je mohou ještě v této letní sezóně využívat po celé trase. Informovala o tom mluvčí krajského úřadu Maria Ptáčková.

K létu patří i zmrzlinové drinky

Posted in Live ( at 4:07 am)

Tam, kde se zkříží umění cukrářské s dovednostmi mistrů barmanů, vzniká jemný, lehce napěněný nápoj se zmrzlinou, delikátně osvěžující chuti. A má také další báječnou vlastnost.

V USA začali prodávat Apple TV

Posted in News (August 19, 2007 at 4:19 am)

Americká společnost Apple začala prodávat nové multimediální zařízení Apple TV. Díky přístroji je možné na televizní obrazovce sledovat filmy, přehrávat hudbu a prohlížet fotografie, které si uživatel uložil na počítači. Apple TV pracuje prostřednictvím bezdrátového spojení a podle výrobce je schopen přenést na obrazovku obsah skoro v takové kvalitě jako přehrávač DVD.

Business as usual

Posted in Live ( at 4:19 am)

Jeffrey Zeldman:

What exactly is the crisis in web standards? People assure me there is one. But they can’t be bothered to explain.

“What appears to be a crisis is often merely the end of an illusion.”

Can you remember a time at which web standards were an even remotely complete and accurate description of the workings of the existent web? Me neither.

The web has thrived anyway.

There is in fact a crisis; as Zeldman asserts, it is in fact not a crisis of the web. It is a crisis of web standards and has existed for as long as the web has existed. It hasn’t prevented the web from working, so we have grown accustomed to it. To the point that Zeldman fails to see it.

Caveat commentor

Posted in Live ( at 4:18 am)

In programming, I’ve come to see the urge to comment as a sign of danger.

Sometimes comments are necessary, but it’s easy to abuse them as a crutch. They give you a way to lapse into fault-tolerant human language in an environment where precise, complete and unambiguous expression is required. It’s tempting to write some muddled code without a full understanding of the problem and then use comments to try to explain the inherent confusion. (Note that I regard comments as distinct from developer documentation. Javadoc, POD, Python docstrings et al follow different rules from comments.)

I find comments necessary in two cases:

  1. The code deals with an intrinsically hard concept; no matter how clearly it’s written, it will be hard to follow.

    Here, a comment will help the poor wretch who comes after you to catch on faster.

  2. The obvious way of writing something is wrong, but that’s not obvious until you try it or until after you had to fix the bug.

    Here, a comment will extinguish any inappropriate urge to refactor in the poor wretch who comes after you. While you’re at it, write a testcase and reference it from the comment you leave.

If you are not dealing with either of these circumstances, then I find that in general, an urge to comment is a sign that you do not have enough identifiers. If you have a complex expression, use temporary variables to split it up, and make sure to name the temporaries well so that the code explains itself. If you have a “we frobnicate the veeblefitzer here” style comment leading a block of code, then extract that block into a frobnicate_veeblefitzer function instead. In general, rather than writing a comment, you should find a way to bake its essence into an identifier in your code.

Comments rot when code is maintained; they can neither be debugged nor can they be refactored at once with the code they pertain to. Avoiding sideband channels in favour of making the information part of the code is important to ensure that the information remains accurate.

    When the code and the comments disagree, both are probably wrong.

    —Norman Schryer

[NB: it’s another matter entirely if the programmer in question writes muddled code and then doesn’t comment it. In that case, nothing I said here is applicable in the first place. The presence of an intact and well-developed sense of readability, with an associated urge to comment, is a precondition for using self-same urge as a guide in any way.]

Moyles: Holiday Podcast No.2. 03 Aug 07.

Posted in Live (August 18, 2007 at 4:25 am)

Chris Moyles and the team are away on holiday for two weeks. But just in case you’re missing them here’s a special holiday podcast full of the usual fun and games…here’s Episode No.2.

The Don’t Repeat Yourself Principle and the Wormhole Anti-Pattern

Posted in News ( at 4:25 am)

Getting back on track with the "Maintainability" series of posts.  I'm doing this way too late at night, so the coherence might be lacking. Don't Repeat Yourself Don't Repeat Yourself (DRY) is a statement exhorting developers to avoid duplication in code.  Duplication isn't always the easiest thing to spot or even prevent.  From the Pragmatic Programmers: DRY says that every piece of system knowledge should have one authoritative, unambiguous representation. Every piece of knowledge in the development of something should have a single representation. A system's knowledge is far broader than just its code. It refers to database schemas, test plans, the build system, even documentation. Duplication is an obvious problem for maintenance, but there's a secondary meaning to the DRY Principle.  When I'm adding an all new feature to a system with new classes, database mappings and tables, new screens, web services, etc. I want to make the change with the fewest steps possible with a minimum of repetition.  I want to tell the system what I want to happen, and I want to say it only once.  More on that second meaning later.   Duplication Retards Change For the upcoming (soon, knock on wood) StructureMap 2.0 release, I got in and added support for generic templated types.  It was nasty.  It wasn't really nasty because of Generics, it was nasty because I blundered with this innocuous looking code:     return _pluginType.FullName; In some spots it was useful or necessary to identify a .Net Type with a string value and early on I fell into using the full class name as a convention.  I then promptly duplicated that simple Type.FullName logic over 70 times in the codebase.  Flash forward 3 1/2 years to the new Generics support, and I needed a way to go from a string to a type.  The obvious answer was to finally change to using assembly qualified names.  It took me about 6-8 hours total to make that one little change because of the stupid amount of duplication I had introduced with the FullName logic. Some other cases: Multiple applications, or even subsystems of the same system, reading and writing to a shared database.  You almost inevitably end up with duplicated work to read, write, validate, and interpret the exact same data.  Think about a column in a database that represents the status of some sort of work item.  The logical entity represented by this row has different constraints and business rules depending upon what the value in that status column.  If you have more than a single piece of code that "knows" how to interpret that status value, you have duplication, and a particularly pernicious sort of duplication because it's hard to spot by looking at any one codebase.  Just as a warning, coding in a data-centric manner can open the door to a great deal of harmful duplication.  Ask yourself, if the database structure or status field changes, how many other pieces of code have to be changes?  Reading and writing values from the HttpContext in ASP.Net.  This little bit of code represents a great deal of potential duplication (even if you eliminate the Magic Number Antipattern):  string something = (string) HttpContext.Current.Session["something"];  What if you want to change your state management strategy altogether?  You'll have to change every single piece of code that dipped directly into HttpContext. In .Net applications, you often need to use a subclass of System.Text.Encoding when converting byte arrays to strings or vice versa.  In an application I worked with there were 67 different references to the ASCIIEncoding class.  Why do I distinctly remember this number you might ask?  Because we needed to localize the application to a Unicode encoding and I found out quickly that the change was going to lead to considerable change and effort to hunt down and make all the necessary changes.  If the character conversion code had been more centralized into some sort of helper class, that change could have been easier.   Stop Duplication in its Tracks The worst case I've ever observed was a factory automation system.*  The system was originally built to pull upcoming factory build jobs from a MQSeries queue, go through a series of business rules, then determine the proper routing and push the new directions to other MQSeries queues.  Fine and dandy, until the day that the factory needed to start the basic process manually from a client application on the factory floor.  The developers decided to recreate the business rules portion of the existing code, rule by rule, and created a new implementation of the business rules for the new client.  I spent some time learning about both components, and it was very apparent that the new code was better structured, but trouble was right around the corner.  It's easy to guess what happened next.  Those particular business rules were volatile, but only now you had to make functionally equivalent rules changes in two very different components.  The system became harder to maintain and extend. The duplication was created purposely because the team felt that the original code was just too hard to reuse because the business rules and the workflow was deeply intertwined with the code that called into MQSeries.  They didn't have any test automation to catch regression bugs, and the system was hard to deploy, so modifying the existing code was quite risky.  If the original code had been much more orthogonal between business rules and the communication infrastructure, they might have been able to simply write some new glue code to interact with the existing code.  If the system had been backed up with a software ecosystem of effective build automation and comprehensive test automation coverage, the team would have been much better positioned to morph the existing code into a structure that would allow for reuse between both the automatic MQSeries mechanism and the newer manual client process. Part of the reason duplication creeps into code is the ease of copy/paste/modify operations to create new code.  Runaway "IDE inheritance" (copy/paste/edit coding, I couldn't find a link) can lead to a system that's very difficult to maintain.  Sometimes developers do the copy/paste/modify trick because the original code isn't quite what they need in the second case.  It definitely requires some skill and experience, but in the "not quite what I need" case, I'd much rather a developer take a little time to refactor out the common pieces first before making the second set of changes.  Refactoring is perhaps more work than copy/paste in the short term, but stamping out duplication can only help in the longer run.  Refactoring is an invaluable skill that's well worth your time.   The Wormhole Anti-Pattern Bill Caputo wrote a good description of the Wormhole Anti-Pattern that so commonly afflicts enterprise software systems.  Roughly stated, I would define the wormhole as all of the stages a piece of data goes through to get from the database to the screen or service interface and back again.  When the wormhole gets long and involved, your development work is going to be a struggle — hence the "Anti-Pattern" designation. As an almost canonical example, my first official job in software was supporting a data integration between a third party engineering application and a downstream construction application.  Between the two databases, a flat file report, two rule files, and the Tibco definitions, I counted 8 different variable names and mappings for a single piece of data along the data exchange.  The big problem was that I had to change that mapping pretty frequently — and that meant following the path through all 8 steps.  Needless to say, that code was very difficult to troubleshoot and modify.  Of course I made all of the modifications in production to support ongoing engineering projects because there wasn't any such thing as a development environment;)  If you're a thrill seeker, nothing is more exciting than coding in the production environment while it's live. To apply the Wormhole Anti-Pattern to your architecture efforts, think about how many steps you would have to go through to get a new element on a screen persisted in the database.  Or to add a new feature to your application.  If the thought of jumping through a lot of Xml configuration hoops or database metadata setup or the sheer number of changes gives you pause, you may be exhibiting the Wormhole Anti-Pattern.  At that point you need to start working towards eliminating or combining some of the steps to shorten your wormhole. Just for comparison, we had to add some fields to a screen after it was built one week.  Here is the wormhole we have to go through on my current project.  I've had worse, but this is more than enough: Element on the screen Property on a Domain class Property on at least one Data Transfer Object (DTO) Mapping from  DTO to Domain class in the client Repeat on the server side, but differently Change unit tests Add new field to FitNesse tests   In line with the Wormhole Anti-Pattern, you might also check out the Shotgun Surgery code smell.  If you constantly make a repetitive set of changes to the same classes anytime one changes, it might be a sign that you should shorten your Wormhole by collapsing the class structure down into fewer pieces to consolidate related code into a more cohesive structure.  Your goal is to enable changes to your application to be made in fewer mechanical steps.   I only want to tell you this once! Going back to the previous section on The Wormhole Anti-Pattern, the second, more proactive goal of the DRY Principle is to express changes in as few steps and places as possible.  My thinking in regards to the quality of a  system architecture has changed quite a bit from my brief exposure to Ruby on Rails. From Nico Mommaerts, One of the selling points of Rails is that it is built with the DRY principle in mind. DRY stands for Don't Repeat Yourself, meaning that every piece of your system is described once and only once, which should make development and maintenance a lot easier since there is no need to keep multiple parts of the code in sync. Hand in hand with DRY goes 'Convention over Configuration', another one of Rails' core philosophies. Rails uses a set of code and naming conventions that when adhered to eliminates the need for configuring every single aspect of your application. Only the extraordinary stuff needs to be configured, like legacy database schemas or other resources you don't control. Using these two philosophies, DRY and 'Convention Over Configuration', Rails lets you write less code AND more features in the same time as with a typical Java or .NET application, with easier maintenance afterwards. Even if you're never going to code in Ruby or build web applications, take a look at how Rails puts the various pieces together to eliminate repetition in code and configuration.  A good design allows for minimizing the amount of repetitious information. DRY-ing out StructureMap After seeing how Ruby on Rails works, it made StructureMap feel just a little shabby in some places.  Here's a specific example, one of the features in StructureMap is the ability to define configuration profiles and easily switch between them.  Typically, I like to use this feature to handle environmental differences between development, testing, and production.  There's a lot more to the functionality, but for now let's just look at the configuration needed for just a single IService today.  Look how ugly this is in general (couldn't get CopyAsHtml to format this for some reason), and the duplicated information between the Profile nodes, the PluginFamily nodes, the Plugin nodes, and the Instance nodes.<StructureMap MementoStyle=’Attribute’ DefaultProfile=’Development’> <Assembly Name="SomeAssembly"/> <Profile Name="Production"> <Override Type="SomeAssembly.IService" DefaultKey="Production"/> </Profile> <Profile Name="Testing"> <Override Type="SomeAssembly.IService" DefaultKey="Testing"/> </Profile> <Profile Name="Development"> <Override Type="SomeAssembly.IService" DefaultKey="Development"/> </Profile> <PluginFamily Type="SomeAssembly.IService" Assembly="SomeAssembly"> <Plugin Type="SomeAssembly.ConcreteService" Assembly="SomeAssembly" ConcreteKey="Concrete"/> <Instance Type="Concrete" Key="Production"> <Property Name="host" Value="PROD-SERVER"/> <Property Name="port" Value="5050"/> </Instance> <Instance Type="Concrete" Key="Testing"> <Property Name="host" Value="TEST-SERVER"/> <Property Name="port" Value="5050"/> </Instance> <Instance Type="Concrete" Key="Development"> <Property Name="host" Value="localhost"/> <Property Name="port" Value="2000"/> </Instance> </PluginFamily></StructureMap>
A major part of my work for StructureMap 2.0 has been ease of use, and that has meant eliminating the duplication and mechanical steps in configuration.  Below is the exact equivalent of the profile in StructureMap 2.0:
 
<StructureMap MementoStyle="Attribute" DefaultProfile="Development">

 
  <Assembly Name="SomeAssembly"/>
 
  <Profile Name="Production">
    <Override Type="SomeAssembly.IService">
      <Instance PluggedType="SomeAssembly.ConcreteService,SomeAssembly" host="PROD-SERVER" port="5050"/>
    </Override>
  </Profile>
 
  <Profile Name="Testing">
    <Override Type="SomeAssembly.IService">
      <Instance PluggedType="SomeAssembly.ConcreteService,SomeAssembly" host="TEST-SERVER" port="5050"/>
    </Override>
  </Profile>
 
  <Profile Name="Development">
    <Override Type="SomeAssembly.IService">
      <Instance PluggedType="SomeAssembly.ConcreteService,SomeAssembly" host="localhost" port="2000"/>
    </Override>
  </Profile>
 
</StructureMap>
 
All I really did was enable a user to make all the configuration inline in the Profile node itself.  Just doing that took down the number of moving parts and centralized the semantic meaning of the profile configuration into one spot instead of being spread out throughout the Xml file.  The underlying model of StructureMap is unchanged, only the configuration code got more sophisticated to streamline the user experience.
 
 
More than the Code
Anytime you talk about improving the way you create software it's very hard to treat coding, design, process, and infrastructure as separate topics because they're all tightly intertwined.  You definitely want to apply the DRY Principle to your change management.  Here are a couple examples of what I mean:

Long lived code branches.  A temporary branch that's short lived for production support or a risky change is one thing, but a long lived branch essentially represents a whole new system.  I've seen a couple smaller product companies jeopardize their very existence by maintaining and extending customer specific branches of their system.  Hot fixes and newly demanded features often had to be implemented several different times on somewhat divergent versions of the same code.  Long lived branches need to be treated as a last resort.  If there's any possible way to arrange your system to allow for customer specific features and customizations while maintaining one version of the core code, your company will be far better off.  Microkernal designs with IoC engines (like StructureMap) can help.  Orthogonal code will help by creating plenty of seams to allow for customization.  Build and test automation makes changing code much less risky.
WSDL or XSD schemas for integration.  We hit this on my current project.  Our new .Net client communicates with the existing Java server platform by sending Xml messages over a stateful socket.  Quite naturally, we devolved into using XSD schema's to describe the contract of the messages.  Great, we use the XSD.exe tool in .Net to codegen DTO classes on one side, and JAXB to do the same on the Java side.  Both codebases need to have a copy of the XSD's, and that's what we did.  A copy in the .Net SVN repository and another in the Java CVS repository.  Needless to say, any change in schema from either side requires the XSD's to be copied back and forth.  This situation has caused us no small amount of pain from mismatches in the Xml definitions.  One way or another, the XSD definitions from .Net to Java need to be locked together automatically to shut down the potential discrepancies.
 
 
The Highlander Puts it all into Perspective
Bellware thought this was an awful analogy, so I absolutely have to use it.  If you're a big fan of the cult movie Highlander (and who isn't?), this will put it all into perspective.  The main characters in the movie were all striving to be the last one standing to win the "Prize."  As Christopher Lambert and Sean Connery intone constantly throughout the movie, "there can be only one!"
The Don't Repeat Yourself Principle is "There can be only one!" (expression of any rule or functionality that could conceivably change)
Unfortunately I've been on and seen a couple projects where the basic architecture just didn't allow for outwardly small changes to be made efficiently.  A nasty case of a Wormhole, plus clumsy or inefficient build processes, can make the simple addition of an extra piece of information from persistence to user interface turn into a living hell.  In the Highlander, there is a scene where the bad guy, the "Kurgan" played by Canadian character actor extraordinaire Clancy Brown, wins a sword duel and disembowels Sean Connery's character.  As the Kurgan twists the sword to inflict more pain he utters the line "it hurts, doesn't it!"  When a request for a small change comes across your desk and all you can think about is all of the painful and tedious work it will take to get that change done, that's what I call the "Kurgan Moment."
To wrap up, the Highlander and DRY good, Kurgan and Wormhole bad.
 
 
Appropos of nothing here, Locke is easily the best character on Lost.
Share this post: Email it! | bookmark it! | digg it! | reddit!| kick it!

PRONAJMU BYT V BRNĚ - 8 000

Posted in Live (August 17, 2007 at 4:35 am)

Pronajmu plně zařízený byt 2+kk v Brně-Králově Poli.Byt se nachází v klidné ulici,v cihlovém domě.Vhodný pro dva studenty či pracující.Byt volný od 1.srpna 2007.Cena 8.000kč/měsíc,včetně inkasa. …

Back in Dublin

Posted in Uncategorized ( at 4:35 am)

We had two days in Dublin while Matt and Kat were at work, so we did a bit of exploring.

The first day we went to Phoenix Park, a park created by King Charles Ii’s man-on-the-ground as a hunting park in the late 1600s. The park is still the home of a herd of wild Fallow deer. We saw droppings, keep-off-the-deer signs, but no deer. The visitor centre suggested we go stand on the Papal Cross (a hilltop memorial to the fact that Pope John Paul Ii once gave mass there - to one million people!), which lead us finally to our prize.

We then went to the Guinness Storehouse, and did the big tour. I tried some Guinness (to which Greig said “Wow… Just… WOW!” in a later text) - it didn’t seem to taste like whatever it is in beer that makes me sick, but it still wasn’t enough to make me want to drink the free pint that we were given in the cafe at the top of the building. Want to like the stuff, just can’t.

The next day we caught the DART regional train around the city. We went first to the Bree end of the line, where there’s some nice beaches and a little coastal village feel. We then went back into central Dublin and had lunch with Matt at Google. Of course my non-disclosure agreement prevents me from telling you anything (read: I still don’t know what he does), but I will mention that it was Mexican day, I ate too much, the ice-cream was fantastic, and I’d be twice my weight in a month if I got a job there.

The port in the other direction is Howth - more fishing and sailing here than beachfront, but still some fantastic views. I think this is the smallest dog I’ve ever seen outside Paris Hilton’s handbag! The Irish president lives in Phoenix Park, but I hear Bono has a house at Howth.

We had an 8am flight so arranged a taxi for 6:30am - of course, the taxi driver decides to pass someone on the left and pops a tyre on the way. We were not impressed.

I’d like to thank Matt and Kat for opening their apartment to us and being incredibly generous and hospitable during our visit. I’m sorry we didn’t bring any Pineapple Lumps!

Belfast

Posted in travel ( at 4:35 am)

Monday was a bank holiday in Ireland, so Matt and Kat had the day off.  We decided we’d catch a train up to Northern Ireland for the day.  Cathy’s question of the day was “I wonder how much they pay Stephen Hawking to do the train announcements”.  €34 one way if we bought at the train station, or €18 return on the Internet!

The biggest attraction in Belfast is the beautiful City Hall, which we took a tour of.  We all got to sit in the Lord Mayor’s chair, but the chair the Queen sat in was out of bounds.

There are two areas we were told to look out for street art; the first was the Falls Road area, where there’s lot of protest art and a very anti-Bush, don’t-meddle-with-the-world feeling.  You have to walk through some pretty dismal streets to get to Shankill Road, where you’re immediately greeted with more British flags than you have ever seen before. It’s safe to assume we’re not in the Republic any more.  It’s a working class Protestant suburb, and I think they like the Queen here more than they do in England.  Patriotism is such an odd concept, but people really want to identify with somewhere.

Belfast had a huge shipbuilding industry around the turn of the century.  They built the Titanic here, but I’m not sure why they’re proud of it.

Here’s Tom climbing a fish.

We still laugh every time we hear an Irish person say ‘potato’.  Apparently everyone else has heard this twice, but I haven’t.

A nice meal topped off an excellent day.  The train ride home was quiet and full of sleeping people.

I’m now exactly 10 days behind on uploading photos and writing about the trip!

Dublin

Posted in travel ( at 4:35 am)

Liverpool has renamed its airport “Liverpool John Lennon Airport” in honour of it’s most famous dead guy. They had security people to stop us from being able to drive anywhere near the terminal, who very happily stepped aside when we told them we were lost and needed to know where the long term car parking was. At this point we had to leave the goat behind and head off to the Republic of Ireland.

Cathy would like to inform you that there was a midget on the plane.

A friendly taxi driver lead us into Dublin central, where we caught up with Matt and Kat. Matt moved here in April to work for Google, and Kat hasn’t been working illegally for the last month at all.

I’m told that Saturday was the only interruption in 50 straight days of rain, and of course we arrived Sunday morning. We decided to go the Jameson’s distillery tour, which was interesting, although the guide moved us from room to room as if he was being paid by how many tours he did in a day. In Dublin, the most popular way to drink your Jameson’s is with cranberry juice; I had mine on the rocks, and it tasted far nicer than I remember it from last St. Patrick’s Day.

It dried up while we were at the distillery (the healing powers of whiskey) and we wandered around St Stephens Square and the Iveagh Gardens, a little hidden garden which Katt had heard there was a maze in. We found the maze in the end, and as you can see, it was particularly challenging.

Matt took us to a bordello for dinner. Well, kind of. We had drinks and dinner at a brew-pub called The Porterhouse, who (probably rightfully, seeing as everything else is owned internationally) claim to be Ireland’s biggest brewery. Greig would have spooged. It was just next to a club called Lillies Bordello, and had confusing signs. Cathy drank a 14% ABV lager beer named Samiklaus and faked drinking some vinegar in a rather convincing manner.

links for 2007-07-20

Posted in Links ( at 4:34 am)

Chinese dolphin ‘probably extinct’

Posted in Live (August 16, 2007 at 4:52 am)

Read full story for latest details.

Sapphire Atlantis ATI Radeon X1950 XT - 4 500

Posted in Live ( at 4:52 am)

Mám tu jednu GK k prodeji Sapphire Atlantis ATI Radeon X1950 XT 256MB VIVO, PCI-E
v provozu cca 4 měsíce+24 záruka,doklad org. balení atd. Cenu bych si představoval 4500,- …

Motorola W220 - 1 000

Posted in Live (August 15, 2007 at 4:45 am)

Prodám mobilní telefon motorola w220, měsíc starý, v záruce, cena 1000,- Kč. Bojkovice (UH). …

Sam and Zoe’s wedding

Posted in travel, sam ( at 4:45 am)

The primary reason for my big trip was to come to my friend Sam’s wedding, where I’d been invited to stand as his best man.

For the days leading up to the wedding, there was a bit of planning and preparation to do; I had to try on and deliver suits, learn how to move flowers, make name cards for tables, and jot down notes for a speech!

On the day, we had about 10 people get ready at our place, groom included, so lots of behind the scenes photos let you know what is involved. I’ve been told it was worse for the bridesmaids, because they couldn’t reach where the dresses were hanging.

The groom was very nervous leading up to the ceremony and very happy afterwards. As the bride and groom went on a horse and buggy ride, we were left to entertain ourselves with some croquet.

The “wedding breakfast” started around 3:30pm, where speeches, drinking, dancing and entertainment followed. You can’t exactly have a wedding for Sam without Tui and a band playing Exponents covers; unfortunately I could only fix one of these things, so James and I got up with the band and belted out a totally unplanned and unrehearsed version of “Why Does Love Do This To Me”. I couldn’t hear myself singing over the row of dancing Kiwis.

It had been a long day for many people by this point, so I didn’t join the after-wedding party at the Crowne Plaza. I’m somewhat glad I didn’t.

(Wordpress gurus who can suggest a better way of aligning the photos in this post are especially invited to comment.)

Nottingham

Posted in travel ( at 4:45 am)

We stayed at a pretty shady feeling backpackers (with no blinds on the dorm windows), and headed up to Sherwood Forest the next day.

Tom being Peterkin'dLady Luck had granted us a Robin Hood Festival during the time we were there. Unfortunately there wasn’t any jousting that day, but we had medieval music and faerie dancing, and then Peterkin the Fool: a street performer who decided to get Tom up to help him, and shoved his codpiece into Tom’s neck.

Sheriff and HoodThere was then a skirmish in the park with actors playing the parts of the Merry Men and the Sheriff’s bunch. I was cheering loudly in favour of taxes, law and order, as imposed by the King’s appointed representative, but for some reason all the kids wanted the outlaws to win, and such they did.

Afterwards we wandered down to the fairground, past a small cricket club, and back to the road.

Small windy A-roads took us through lots of little towns on the way to Sheffield. Most English cities seem to have ring roads around them (you know, like Hamilton is going to have in 10 years time?), but some have two ring roads and don’t make it clear which one you’re on. Once we learnt this we found out where to go…

The pictureque Snake Pass links Sheffield and Manchester, a windy and picturesque route over the hills. We drove through the humourous-sounding Glossop to Manchester, and took a big motorway around the outside of the city.

Manchester to Liverpool is very simple on the M62; we missed an important turn upon arriving in Liverpool and got lost, but a couple of stops for snacks and some directions later, we found our hostel.

We didn’t hold out a lot of hope for the “Beatles Brian Epstein HoAnfield FCstel” as it was the only thing with rooms left when we had booked, but it was fantastic. It’s just been taken over by a Kiwi couple from Balcultha, who are overseeing a new garden going in the back. Aside from the fact it’s in the shadow of Anfield, the Liverpool FC stadium, it was a really great place to stay.

Liverpool

Posted in travel ( at 4:44 am)

We were feeling good after having met the friendly Liverpool hostel staff on Friday night: unfortunately it was all downhill from there. No pub would serve us dinner at 7:30pm. We almost got egged, possibly for not having the Liverpool FC supporter haircut. We just grabbed a curry and headed back to the hostel.

Saturday, again, not so pleasant. Caught the bus into town (the driver was angry at us asking if we were at the right stop and told us what he thought in his thick Scouser accent).

The attractions were OK - we went to the official-esque Beatles exhibition, with an audio guide narrated by John Lennon’s sister. You weren’t allowed to take photos, so of course I have a heap. That rule is silly. The Tate Gallery passed the “does it have art from people I know” test, with a Picasso and a Warhol among others. My record players wouldn’t have been out of place in the modern art gallery.

Spotted outside The Beatles StoryLiverpool is a city of bad haircuts. It also has “Emo Square”. If Birmingham has the highest proportion of jewelers, I’m sure Queen Anne Square in Liverpool has the highest proportion of emos I’ve ever seen. They radiated out from a central pod of blackness and woe, in a star-like pattern; the ones on the furthest reach weren’t even wearing any black!

Some cool graffiti though.

Another trip to try and find dinner at a pub was even more futile. The pub over the road from Liverpool FC seemed it was closed to the public for a 10th birthday party. The one place we’d found the day before that served food closed the kitchen even earlier on a Saturday. We wanted to watch the cricket so we headed to a sports bar, but 2 mins before the final started, they changed to some second string football game (something as relevant as a 1974 replay a game of Yorkshire Under 14s),

The people next to us at the bar seemed to suggest we should order beer using only the words “pint”, “bitter” and “lah-gah”. I asked for a bourbon and coke. “Scotch and coke?” “Bourbon and coke”. “Scotch and coke then”. erm, sure. Whatever. Something about my hunger and the double strength of this drink caused me instantly to become Three Beers Awesome, and when Cathy spilt his own pint, we decided to just cut and run. We were just drunk enough that this was funny on the way home.

A real Southern Man doesn't like being man-touchedRussell was wearing his Highlanders shirt back at Epsteins so I hassled him for not supporting Canterbury and we had a few more drinks in our room. Dinner was leftovers and a pizza we bought from one of four takeaways (we bought it from the Pizza/Chinese/Fish’n'Chips/Kebab store, rather than from the Fish’n'Chips/Chinese/Kebab/Pizza or Kebab/Fish’n'Chips/Pizza/Chinese stors next to it). The chap there was a very friendly Moroccan gent. With one exception, everyone friendly we met in Liverpool wasn’t from there.

To paraphrase someone we heard later in the trip (sssh, you’re supposed to believe I’m writing this live), the best thing about Liverpool is the road to the airport.

Excited

Posted in Live ( at 4:44 am)

This night I watched the footage (part 1) of Simon Peyton-Jones’ talk (part 2) from OSCON 2007 titled “A Taste of Haskell.”

I don’t remember the last time was this excited about anything programming-related. This is despite the fact that I already knew I like Haskell, that I already wanted to get into it, that I knew a little about most of the things Simon explained, and that he didn’t go into any one of them in any great depth. But maybe the fact that I didn’t need to make large mental leaps in order to follow his exposition actually contributed to its effectiveness for me.

In any case, if you need me, I’m going over there to play around. But you should be watching Simon’s presentation anyway. (Yes, it’s long. Do it anyway, it’s worth the time.)

Note: the footage has two parts (before and after the break), and blip.tv offers them in QuickTime format as well as Flash video; whereas O’Reilly’s conference site links only to the first clip and offers only Flash. So use the direct links I provided, not the link on the session description page.

Driving to Nottingham

Posted in travel ( at 4:44 am)

You know how I said the motorways are good? They are, but it gets a bit confusing from that point onwards. There are three sets of roads that are important enough to be given numbers: the motorways (M), the A roads and the B roads. A roads are similar to state highways in NZ, and range from three lanes in each direction, completely separate, to half a lane winding through villages. You can’t establish this from the map. When trying to plot a route between two towns, given a map book, Tom will pick a nice direct path on an A road, but it’s a lottery as to what kind of road it will be.

We drove past Rodbaston in Staffordshire. The ghost of Edgbaston is everywhere. We also drove through Loxley on the way to Nottingham; that’s where legend, or the new BBC TV series that no-one really liked, has it that Robin Hood is from.

We suspected we’d find demolition in Derby; we also hoped to find dinner and somewhere nice to eat it. This was our first experience of the British take-away chipper (you want to put vinegar on my chips? Why?) Derby has a river flowing through it, but you can’t actually access it anywhere: Pride Park isn’t a park, it’s a stadium. Parking isn’t available for less than 1 week and 10 quid, and again, the one-way roads aren’t adequately signposted for idiots like me.

Mixed messagesThe road to Nottingham was a nice big A-road. We had booked a hostel but had no idea where it was, so we needed to find some Internet (thanks again to the national wireless ISPs “Belkin” and “Linksys” for providing me the facility to talk to you all). Even with two sets of instructions, we ended up 5 miles further up the road than we needed to be before turning around.

Prodej OV 3+1 Staré Brno - 2 500 000

Posted in Live (August 10, 2007 at 4:56 am)

OV 3+1 na ulici Hlinky, u Mendlova nám. CP 72 m2, ve zvýšeném přízemí Pokoje se samostatnými vstupy, balkon. Byt je ve standardu (vhodná modernizace). Možnost platby HÚ. Volné od 1. července 2007. RK, tel. 774 291 776.

New car

Posted in travel (August 9, 2007 at 7:38 am)

It’s a bit boring doing a tour without wheels. Sam only has a two-seater car, and we are three (and two and a half suitcases). As much as I protested that Cathy could just hang onto the soft-top at 90 miles per hour down the motorway, we had to make alternative transport arrangements.

Most private car sales here are conducted by way of the Auto Trader website or eBay. A good thing with the postcode system is that you can tell it where you are, and it can figure out with reasonable accuracy how far away other things are. We searched for cars within 10 miles of our current location and ended up looking at a 1993 Vauxhall Cavalier.

Car pictureIt’s probably not the best thing to do to buy the first car you see, but it seemed a good price and an honest seller, so we bought it and drove off into the sunset.

We’ve nicknamed the car “The Goat”, because the reg is L437 MEW, and goats mew. It turns out that goats don’t actually mew, kittens do; but we can hardly rename it retrospectively, and we’re too tough to drive around in a kitten. We could alternatively buy the personalised plate “BLEAT” - personalised plates aren’t very big here, so it’s probably available.

Car insurance is compulsory in the UK, and if you watch any television you’ll be reminded of this with at least three spots in every ad break. A quote online for 3rd party insurance worked out about £250-£300 - not much less than the value of the car! After buying the car I rang the AA and asked them for a quote, which worked out at £1300. I asked them if they were having a laugh, and they suggested that my quote online was much more realistic. Turns out your international license and driving history counts for almost nothing: so a temporary 135 pound for the month has to do.

I’ve never owned a car before - Mum owned my (her) old beige Corolla and I’ve had a work vehicle ever since. It’s interesting being a member of the Landed Gentry all of a sudden.

Anyone want to buy a car? Available from the end of the month, only one more owner than it had in July.

Birmingham

Posted in travel ( at 7:37 am)

Now we had a car, we could get out of Cambridge; we decided we’d pick the next interesting looking town in a Northwards direction, and booked a hostel in Birmingham.

Birmingham (B’ham or Burrr-mingum to the locals) is described as the “second city” of England: it’s mostly a working-class industrial town, but it’s grown and picked up a little bit of culture on the way. (The surrounding area is called the Black Country, possibly due to the coal dust, and nothing to do with Jamaican residents). I sent a message to my old workmate Peter, who is from around these parts, asking what he suggested we do: he said “avoid Spaghetti Junction”, and gave a list of interesting things to do.

Finding it wasn’t too hard: the motorway system is really good here. We didn’t actually see any spaghetti, but we did manage to find our hostel without too much trouble.

We drove into town the next morning. Without maps or any real idea of what to do, it’s a bit hard to plan your itinerary. We ended up finding signs pointing us to the Jewellery Quarter, an area which probably has the highest concentration of jewellers in the world.1 As exciting as it might sound, the Museum of the Jewellery Quarter, an old factory immaculately preserved by way of them just running out of money and shutting down in 1981, was a really interesting place.

Canal boatsWe then headed down to Brindleyplace, a canal-side shopping district, and checked out the canals around the Gas Street Basin.

Driving back to the hostel at this point, we saw a sign for the botanic gardens, and thought we’d fill some time by checking it out. What a mistake that was! There are nice brown signs pointing to all the tourist attractions, but as you get closer and closer, they get smaller and smaller, and the sign at the actual entrance is about the size of a postage stamp. This led to me driving right past the gardens, and going in a big circle around Edgbaston until finding new signs that pointed back to the gardens. 30 mins later, we were back where we started, and found out that it was going to cost us £6 each to get into the gardens. Poor Kiwi men can neither afford or justify £6 to look at some poncy flowers, so away we went again.

It was this experience that first taught us an important truth about England. Ignore what the Romans tell you; all roads lead to Edgbaston. This suburb of Birmingham is the centre of the universe. No matter where you go, you end up there. If you are there, you’ll drive out, and find yourself back again within 15 minutes. Especially if you’re not from round ‘ere, and trying not to get killed when turning right and not giving way to left-turning traffic, it’s all a bit too much, and sometimes you end up driving the wrong way down one way roads…

The next day we headed out to Cadbury World (past Edgbaston) in the suburb of Bourneville. This suburb actually started out as a farm that the Cadbury family decided to establish a factory in, and set up for all their staff. They seem very keen to point out that they were a fantastic employer 150 years ago! The tour was good, if not a little too geared at the children in places, and chocolate was in plentiful supply.

Next stop was the Air Force museum in Cosford. To continue on from here, we had to drive back in the direction of Edgbaston.

See the whole Birmingham gallery here.

  1. I should point out two things about advertising here. Every claim you make needs to be substantiated: any time a TV ad says “Surveys show that”, a footnote on the screen will tell you how many people were sampled, and what they were paid to make such outrageous claims. Anything that isn’t backed by such research introduces the word “probably”, such as “Probably the best beer in the world”. You are allowed to make direct comparisons (there are great big signs at Tesco claiming exactly how many products are cheaper there than Sainsbury’s and Asda), but there are still ads that say “50% better than the leading brand”, without acknowledging what the leading brand is. []

prodám sloupovou vrtačku vs 32 a - 39 000

Posted in Live ( at 7:32 am)

prodám sloupovou vrtačku vs 32 a,v dobrém stavu ,svěrák ,plně funkční,cena 39000,-kč …

ERI K750i rozšířené ztlumení hudby HCE-26 k HCA-60 - ACMSERK750054

Posted in for sale, Panasonic, Osobní HF ( at 7:28 am)

CZK 837.00
October 5, 2007

Hmotnost (g) :  
Rozměry (mm) :  
Rozhraní :  
Doba hovoru (hodin až) :  
Pohotovostní doba (hodin až) :  
Typ nabíječky :  
Kapacita baterie :  
Obsah prodejního balení :  
Provozní teplota :  

ERI K750i rozšířené ztlumení hudby HCE-26 k HCA-60

blinkos

Posted in Live ( at 7:25 am)

science

http://fuckingmachines.vsaosu.com
http://bdsm.warrenthrockmorton.com
http://boys.campuslifehauntedhouse.com
http://free-sofware-download.robertlangestudio.com
http://gloryhole.delsolproductions.com
http://enlargement.warrenthrockmorton.com
http://breast-enhancer.groundupprojects.com
http://cameras-online.equipelegendre.org
http://free-hentai.co-starvii.com
http://free-hentai.delsolproductions.com
http://anime.causeisaidso.com
http://anime-games.campuslifehauntedhouse.com
http://manga.delsolproductions.com
http://3d-sex.equipelegendre.org
http://wiredpussy.causeisaidso.com
http://hgh.hdbservicesgroup.com
http://sex-webcam.co-starvii.com
http://stop-body-hair.rays-place.us
http://17-teen-video.tunbridgewellscc.org
http://black-porn-sites.avicella.net
http://breast-enlargement-pill.hdbservicesgroup.com
http://penis-enlargement-pill.perryparkcc.net
http://bukkake-movies.avicella.net

Gps navigaceTomtom

Posted in Live ( at 7:25 am)
Gps navigace Tomtom
Gps navigace
very useful, actually

links

Posted in Live ( at 7:23 am)

http://www.robertlangestudio.com
http://www.rays-place.us
http://www.midnightrush.com
http://www.legaleaseofohio.com
http://www.hudsontheatrenyc.com
http://www.hdbservicesgroup.com
http://www.groundupprojects.com
http://www.equipelegendre.org
http://www.equinedezigns.com
http://www.delsolproductions.com
http://www.co-starvii.com
http://www.causeisaidso.com
http://www.campuslifehauntedhouse.com
http://www.movie-poster.name
http://www.humandoorway.com
http://www.salimafc.net
http://www.iraqaudit.org
http://www.haiku-headlines.com
http://www.avicella.net
http://www.audiblemcs.com
http://www.add-productions.com
http://www.warrenthrockmorton.com
http://www.perryparkcc.net
http://www.scrapbooksbypamela.com
http://www.shonenjump.org
http://www.sinajj.com
http://www.smrca.net
http://www.tunbridgewellscc.org
http://www.vsaosu.com

new

Posted in Live ( at 7:23 am)

http://behindggz.marzoweb.com
http://havej.marzoweb.com
http://seemedmcf.marzoweb.com

http://www.abtgp.com/archive.htm

Flashback

Posted in Live ( at 7:18 am)

When I tell people what I do for a living — which, for the record, I try not to do; mostly I tell people that I’m a merchant banker and leave it at that; when you say “merchant banker,” I’ve found, there are no follow ups — but for the times when I actually tell people that I write and produce television comedies, what I hear back is either “You should do a sitcom about everybody in the payroll department. Crazy.– Crazy funny,” or something a little more aggressive and challenging, like “So what do you do now.– Sit around and live off of your Cheers residuals.”…

James Robertson asks “where’s the social networking value?”

Posted in Social Media, Social networking, Twitter (August 7, 2007 at 2:30 am)

In a good “can you please cut through the Scoble hype” post, James Robertson notes that he heard all the Twitter hype, then all the Jaiku hype, then all the Pownce hype, and now is hearing all the Facebook hype and wants to know what’s in it for him. The A.Connector podcast talks about the same thing and tells you what value he gets out of these things.

OK, let’s turn on the cynical hat for a moment and stop the hype.

First of all, let’s group Twitter/Jaiku/Pownce together. They are quite different from Facebook, even if there’s a component like those inside Facebook (and the Pownce Facebook app is working again).

Now, none of these things has ANY value if you don’t know anyone on them. They only have value if someone you care about interacting with are on them. I assume that James has friends/family/coworkers/etc who he wants to interact with.

On all of these it’s fun to chat with people. Over on Twitter I’ve been talking with a bunch of people. Plus lots of other people who don’t even know I’m listening posted funny videos.

So, what’s the value?

These things bring interesting things into my life.

Why one over the others?

1. More people you know are on one over the others.
2. You like the way one works better than the others (lately people have been saying Pownce is better in that department than the others).
3. You need a feature the others don’t have. Pownce lets you send music files to other members, for instance. Twitter has an API and was earlier, so it has lots of apps built on top of it. Jaiku is a better aggregator (you can bring in messages from the others, along with blogs and other RSS feeds).

Now, about Facebook, well, it has almost instantly replaced my business card collection AND my contacts over on Outlook. Now if I want to talk with someone I go to Facebook and look them up.

But then you add the application platform to Facebook and you have a whole new beast. That brings a LOT of value and an INCREASING set of values. Today, for instance, the Google Reader app was updated again. There’s nothing else like it on the Internet. So if you want to see what the most popular feed readers are, and what the most popular thing that they are reading, you gotta join Facebook. No alternatives.

Well, OK, the most popular thing in the past 12 hours? Read/Write Web’s list of 10 Facebook Apps for work.

My winner? Facebook. If you join only one that’s gotta be the one — you’ll get value out of that even if you don’t have any friends (and, if you read me, you’ll always have me as a friend). Then try out the others and see which one you like and/or if you get any value out of it.

UPDATE: Jim Long has a good post on this topic where he posits that social networks are the new TV.

UPDATE 2: Steve Rubel says we’re like a million monkeys. Is more interested in what people do with technology rather than the latest “shiny object.” Funny, that post is the culmination of a bunch of Twitter posts back and forth. Turns out that Facebook’s email really pisses Steve off. So, what am I going to do? Send him one, of course! ;-)

UPDATE 3: Shaine Mata kept notes on this afternoon’s Twitter session between Rubel and me and others.

Acer Travelmate 270, Pentium M 1,7GHz - 8 700

Posted in Live (August 6, 2007 at 2:23 am)

, 512MB, 40GB HDD, grafika až 64MB, FDD, DVD-RW, LPT, 3xUSB, Firewire, baterie zhruba 1h. …

Renault Megane - 240 000

Posted in Live ( at 2:23 am)

Renault Megane N1 – 287 000 ,-KČ(při rychlém jednání sleva) r. v. 2004 Dynamigue Comfort GrandTour 1.5 DCI 100 K, najeto: 89 000km První majitel, barva šedá boreal metal, klimatizace, posilovač řízení, litá kola 205/55/16, el. ovládání předních …

Man Takes Out 6 Cell Towers In Tank Rampage

Posted in Live (August 5, 2007 at 2:21 am)

If this stuff happened in the US more often, may be cell carriers would get the message, or at least legislation would come around to neuter their “we own you” contracts they make us sign to use their service.

Havok154

Interview with Fake Steve Jobs

Posted in Live (August 4, 2007 at 2:34 am)

Xeni Jardin:
CNET’s Daniel Terdiman interrogates Fake Steve Jobs on the launch of the iPhone:


[Q] So, AT&T? I mean, seriously. AT&T?

[A] Fake Steve: Yeah. Agreed. I know. And look how they’ve (messed) it all up already, just in the first three days. F—–g frigtards. You wouldn’t believe the phone calls I’ve been having with those idiots. Well, maybe you would. I called that jackass CEO, got his receptionist, and she asked me what I was calling about. I told her the iPhone, and she told me I had to dial a different number, 800 something or other. I’m like, lady, I’m f—–g Steve Jobs, and she says, “Sir, I don’t care who you’re f—–g, you can’t just call up and get our CEO.” Unreal.

Link

A preview of TodBits.TV

Posted in Uncategorized ( at 2:33 am)

Here’s the 30-second commercial we produced for Alliance Atlantis for the show, which airs this Friday night at 7pm PT/10pm PT from our new studios.

The music you hear in the promo is from Derek Miller… check him out at http://www.penmachine.com

Community Development

At OSS Watch we’ve been focusing on community development recently, that is getting people up to speed on how to build a community around a project (usually a software project, standardisation effort or similar).

We’ve started a Community Development mailing list, the discussions have mainly focused, so far, on RSS and on the use of Google Analytics in education.

I’ve also written an extensive piece on how to improve a page on Wikipedia.

Next Page »