NRW Conf 2015

Since more than a decade just community (a non commercial organization that I co-founded) organizes the NRW Conf. This year the attendee numbers increased again slightly which means we cannot grow anymore (because of fire prevention the upper limit is fixed) as long as we stay in the same location (die Börse). But the attendees love it and so do we.I’d like to thank all sponsors, attendees, speakers and stuff for making it such a great event!The biggest achievement this year: We finally have the chance to provide the recorded sessions!We are on channel9: https://channel9.msdn.com/events/community-germany/NRW-Conf-2015Thanks to Microsoft for helping us!Here are my slides: http://www.slideshare.net/lennybacon/nrwconf-de-defensive-programming-resilience-patterns-antifragilityHope to see you next year at NRW Conf

NET Developer Days 2015, PL

Last time I was in Poland was 2006 for the Microsoft Technical Summit. This years October I was invited by the amazing Maciej Pilecki and his company DataMaster who organize the .NET Developer Days Poland.They did an amazing event with an international speaker line up. They got two Scotts (Hanselman and Hunter) and even managed to bring me and my former boss Clemens together (warning the distance between our home places is about 60 Km!). And they have some more Scottsplans for next year.I was really jealous on the attendees of the conference. Because as an attendee you got the coolest conference shirt that I’ve seen so far, honestly. Look at that:The most awesome conference shirt I’ve ever seenThe venue was really nice. The main stage was huge and really professional equipment and skilled staff. The StageThe slides for my session can be found here: http://www.slideshare.net/lennybacon/net-developer-days-2015-pl-defensive-programming-resilience-patterns-antifragilityThe night before the conference I attended the speaker appreciation dinner. Just wow - Thanks Maciej!Maciej The conference ended in a rally nice party at a underground style club. Nice.I really enjoyed being there and talking to so many nice and interesting people (for instance Oliver of lemon).So what’s left to say: Wherever you may come from. Check out their twitter and on facebook and let’s see next year in Warsaw!

Network 2015, UA

It had been ten years ago, since I was the last time in the Ukraine. Back then in Kiew I held an architects workshop together with Michael teaching Service Oriented Architectures with the Microsoft .NET Framework 3.0, Windows Communication Foundation (WCF) and Windows Workflow (WF). I can remember that I lost my luggage (bad) and the nice people, good questions and superb feedback we received (definitely good).Nataly Potapova, of Sigma Software, contacted me to ask If I would like to become one of the speakers for the Network conference. Because of the political situation I had some doubt to go – but in the end I decided to go for following reasons. My past experience were very good.I wanted to help them to do something *normal*.I currently have something to tell. The speakers page filled up with people from around the globe. I already knew Hadi Hariri and Juval Lowy and was looking forward to meet Lee Brandt and David “Dot Net Dave” McCarter from the US.On the flight I met Lee and Dave. And I felt kind of sorry for Dave – This time his luggage was lost. Nataly, Vera and Alina - conference team - were already waiting for us. After we arrived at the Hotel they told us that a guide is waiting and we are about to do a city tour. A very, very welcome alternative to the usual business trip where you have been to al those fascinating places all over the world and just know the airport, a cab, the hotel and hopefully a good restaurant. The guide told us about history since the dark ages. That Lviv is the Coffee Mekka of Ukraine – You got me at this . Visited the Chocolate Museum. Just passed the Masochist Café! And finally had a burning coffee in the coffee mine. The next day was conference started. There was no entrance fee. About 400 seats and free non-alcoholic drinks and food: Wow! My lecture (Defensive Programming, Resilience Patterns and Antifragility) was the first after the introduction words. The talk went well and the questions of and the discussion with the audience was really joyful. My topic was really haunting as it seems.The next in the row was Hadi with his online speech about HTTP2. It was actually the first *remote talk* that I attended. In general not bad at all. But during the Q&A after the session I missed *seeing* the speaker.After that Dave rocked *Code Contracts*. As he had lost his luggage he was not able to *perform* in his usual outfit. Also remarkable to know is that his slides are about 1.5 GIGs of size. There is Video, animations, explosions… So I definitely got to see him doing the *full* show on stage at some day . Lee’s slides about how to write better and more professional java script code created a fascinating psychedelic effect in my camera – sorry Lee, better pictures next time. I really liked the way he picked up the average .NET developer. I haven’t had the time to watch Juval’s online speech because I was in a discussion with a few attendees.The conference ended with networking and party. If you have the chance next time, Network conference is worth a visit! After the party the speakers were invited by Vladimir, the leader of the Sigma office in Lviv, to the speakers dinner and met some other Sigma guys there. I’m still laughing at Vlad’s (That’s not Vladimir!) jokes.To sum it up: I have almost never seen such an dedicated conference team and welcoming hospitality. So I’d like to say thank you very much. I hope to see you guys again next year.

How not to do support: eBay

As a software developer I know software can contain or contains bugs – that is very likely. I accept that. Looking at the (german) ebay support site they do not. There are quite a few *know issues* around buying or selling as well as a searchable *knowledgebase*. But there is no way to tell them if something else is wrong. And don’t try to call them – a bug is out of scope for the call center. This feels arrogant to me as a *customer*. Here is what happend (Just in case ebay is interested in …) The details of a bought article: The customer support page: In short: (19 || 20 ) != 22 Hope this helps!

Are SCM check-out’s contemporary?

My VCS story began with Microsoft Visual Source Safe. I was happy... I had my files versioned. I could view differences in file versions. I could restore previous versions. I could view the history of a file. ... until the IDE started to crash, I had corrupted files and so on. http://www.flickr.com/photos/nesster/5823554695/ So I gave CVS and then SVN and TFS a try. I was happy... I could work with branches I could version source code “over HTTPS”. I could view file versions over HTTPS. ... until I saw a GIT introduction on the .NET Open Space presented by Alexander Groß. I was shocked about how I had worked before! He showed that it is not necessary to explicitly check-out and check-in files. I almost all areas of software development we try to align with business and to focus on the features that help or supports users or customers at their processes (E.g.: OOD, DDD, etc...). So why should I commit a change set just because I want to rename a file a second time? That is not a feature. It’s not even the result of a refactoring. Its just to satisfy the tool. Here are a few reasons why: Refactoring is an important part of the process to maintain a healthy and high quality code base. It means changing the structure... Naming I one of the hardest disciplines in software development. I don’t thing it helps anybody when there is an additional burden called the check-in. From my experience It holds people back from improving the code. 2010 I moved into the DVCS world. I started with HG and later moved on to GIT. I am happy... I can focus on the features. The SCM understands branching The SCM understands refactoring The SCM understands merging Last year on the NRW Conf my friend Ilker Cetinkaya held a lecture about commit messages. In his opinion the commit message should tell a story and answer the questions: What, why & how. He sowed really nice examples of commit messages almost equal to a blog post or a developer diary. Focusing on the Feature (LOB) and providing details about the technical realization. Markdown is an ideal format here. I cannot agree more. After the conference we discussed non-feature-commit-messages and agreed there should just be one: “Rechnerwechsel” the German term for “Switching the Machine”. When I join a project of a customer I sometimes still see SCM systems that still require explicit check-ins. My pleading Let developers focus on the features to deliver better results. Everybody has just 100% to give. Don’t take even a few percent of the developer productivity to hassle with a SCM just for the SCM. Version control exists to support people. Not to change the way people work: The motivation and empowerment of programmers has a direct and strong relationship to the quality of  the software.

Asynchronicity rules the world

Designing architecture for a scalable system always involves thinking asynchronous parts. For example: placing an order to a system. At first sight this process of course requires feedback. What happens if the order is invalid because it contains incorrect data? Especially for the non-technical stakeholders it is hard to imagine how this can be accomplished. Therefor it is always helpful to have an example that is taken from the non- technical world. I often tend to take examples from the gastronomy branch. Its plain clear why: everybody has to eat. Have you ever you ever ordered a menu in a fast food restaurant? Did it ever happen to you that at least one part of the menu was not on stock? What happens in that situation? Do you stay waiting in the queue - blocking other people from placing their order and blocking business to be made by stopping the sale of more food? No! What you get instead of the missing piece is information that indicates that they still owe you. When the missing part is ready you can exchange the information for the missing menu part. How the exchange is instantiated depends on the restaurant. In most coffeehouse’s they will call your name, prior written on the cup; others will deliver to your desk. A question of culture, communication and message exchange patterns (MEPs).

Adobe, trust, WTF

Mixed language content was in the past a good indicator for phishing – just not as professional as the real provider. Today I received an e-mail by Adobe that asks me to change my password, as they were being hacked in the past and beside passwords (not even hashes? what the hell), program code as well as certificates have been stolen or compromised. I was a bit scared that Adobe now offers a mixed language site especially after what happened to them…  

PHP und WCF Interop Web Cast

Interoperabilität gehört (fast) zu meinem täglichen Brot :-) Und zwischen Web Services ist das ja auch ganz normal. Ich freue mich daher sehr, dass Microsoft das Thema auch auf dem Schirm hat. Mit dem “Evangelist mit dem Hut” habe ich mich vor ein paar Tagen zusammengesetzt und wir haben einen Web Cast aufgenommen. Jan hat danach noch ein Video-Interview mit mir gemacht, was er in seinem Blog gepostet hat.  Web Cast: PHP - WCF Webservice Interoperabilität MSDN TV: Interview Der Evangelist mit dem Hut a.k.a. Jan Schenk

Architecture.NET Open Space 2009

Der Eventsommer geht weiter… am 5. und 6. Juni fand der erste Architecture.NET Open Space 2009 in Düsseldorf statt. Ein sehr interessantes Format und sehr interessante Themen. Lars, bitte im Winter 2008 gleich nochmal :-) btw. Lars wird unsere Usergroup am 02.07.2009 besuchen…