Roland Weigelt

Born to Code

  • How to Create a Thumbnail for a File in Windows

    Recently I had to create thumbnails for various file types and it took me some time to search the web for a solution that works and doesn’t require the discontinued Windows API Code Pack.

    Daniel Peñalba‘s answer to a question titled “Extract thumbnail for any file in Windows” on StackOverflow works beautifully (tested on Windows 7 and 8.1): http://stackoverflow.com/questions/21751747/extract-thumbnail-for-any-file-in-windows .

    I didn’t find it immediately because of the use of the word “Extract” instead of “Create”, so maybe I can give it some more Google juice with this blog post.

  • Emaroo 1.6.0 Released

    Emaroo is a free utility for browsing most recently used (MRU) lists of various applications. Quickly open files, jump to their folder in Windows Explorer, copy their path - all with just a few keystrokes or mouse clicks.

    ScreenShot400x238

    Emaroo 1.6.0 adds support for Photoshop CC 2014 and fixes an issue with the MRU list of Notepad++.

    You can download it now on www.roland-weigelt.de/emaroo.

    For examples of how Emaroo can speed up working with files, take a look at the “Why Emaroo?” section of the blog post announcing version 1.4.0.

  • Looking Back at UX Lx 2014

    The User Experience Lisbon (short: UX Lx) is a three-day conference taking place in Lisbon, Portugal (Lisbon’s abbreviation “Lx” is derived from the former Arabic name al-Lixbûnâ used in the early middle ages, by the way).

    The conference consists of two days of hands-on workshops and a day of talks. Featuring internationally renowned speakers, the UX Lx draws attendees from all over the world. According to the organizers 40 countries were represented in this year’s UX Lx 2014 that took place from June 4 to June 6 and marked the third time I attended.

    Day 0

    The traditional welcome party on the evening before the first day is good way to meet other attendees. Because not all tickets sold are actually for all three days and some attendees attending the first day come to Lisbon in the morning, the party isn’t crowded. And with the very open atmosphere of the UX Lx in general, it doesn’t take much time to somehow get involved in a conversation.

    Day 1

    Workshop: Designing for Change

    Christina Wodtke spoke about the psychology of change, why users resist it and how to introduce changes to a software and its feature set without steamrolling over the existing user base. In the hands-on part, groups worked on designing a new feature to a travel application. It is always interesting when you start working on a common goal with complete strangers, each of which brings a very different background to the table. For me, that’s a very important aspect of the UX Lx.

    20140608_Workshop1

    20140608_Workshop2

    The first workshop uncovered one general problem of the UX Lx conference, the half-day format of the workshops. Year after year it seems that many speakers usually give full-day workshops at other occasions and strip them down to fit into three hours at UX Lx. At three of four workshops I attended, the speakers ran into time problems and noted something along the lines “usually this workshop is longer…”.

    Lightning Talk: From Lo-fi to Hi-fi - A walk-through of prototypes

    Péter Polgár presented various types of prototypes and did a solid job overall. The use of a zooming mind map presentation tool felt a bit gimmicky though and didn’t really help the talk.

    Workshop: Experts Reviews for Experts

    It’s always great to hear a speaker whose experience is measured in decades, not years or even months. Rolf Molich is one of these few. His workshop was well-prepared, perfectly timed and he even brought his own evaluation forms. Molich gave an introduction to “experts reviews”, where UI/UX experts (with enough actual experience in the field) review a user interface. He also presented studies that have shown that these experts reviews can deliver good results (i.e. can find serious usability issues) in comparison to usability tests and are very competitive in terms of manpower and time.

    In various exercises we analyzed user interfaces of growing complexity and discussed and prioritized our findings in work groups.

    Conference Dinner: Buffalo Grill

    During my first visit I didn’t book any of the conference dinners, last year I found out that I missed a great opportunity to talk with other attendees. This year, I again booked all three of them.

    The barbecued meat at the Buffalo Grill was really great. The restaurant itself turned out to be a bit loud because of the bare walls, though. And some attendees single-handedly raised the noise-level by being audible across the whole room, causing everybody else to raise their voice. Still, I had some very interesting conversations.

    Day 2

    Workshop: Collaborative Research

    The workshop by Erika Hall mainly dealt with techniques for interviewing (potential) users and how to gather insight from the statements of the users. In the exercises we practiced this by interviewing each other, switching roles along the way.

    Interesting how (in my opinion) I really totally sucked at conducting the interview compared to the others in my group, but at the same time how I was much better able to extract the core insights, dividing seemingly related but in fact orthogonal statements. A sign how different the backgrounds of the attendees were. Everybody I talked to during the conference was really smart, yet excelled at different abilities.

    Lightning Talk: Fun, Confusion, Fear and Basketball

    What a strange title – who, right in their mind, would give a talk such a strange title? Oh wait, it was me.

    In my first session in English at an international conference I spoke about my hobby project of writing software for rear projection screens and LED advertising system. The “confusion and fear” part of the title alluded to the usability problems that I ran into while using the software in high-pressure situations in the arena – situations that were notably different from the calm atmosphere of testing the software at home.

    My talk about stumbling blocks and lessons learned was well-received and it’s nice when people walk up to you even a day later and tell you how much they liked it.

    The slides can be found here: http://www.slideshare.net/RWeigelt/fun-confusion-fear-and-basketball-ux-lx-2014

    Workshop: Designing for Discovery with Faceted Navigation

    This workshop with Jim Kalbach about faceted navigation started out really promising and I’m sure that the full-day version rocks. I really enjoyed the talk parts and the many examples, starting from early history (even though in the back in may head I knew that the timing was off). The half-day version turned out OK, but exercises had to be cut towards the end.

    Conference Dinner: Populi

    The restaurant on the second day was in downtown Lisbon; transportation to the Populi was provided via buses, the way back wasn’t a problem either with a Metro station in front of the restaurant. Also a bit loud, but again lots of interesting conversations.

    Day 3

    The third day of the UX Lx conference featured the following sessions:

    Mike Monteiro: How Designers Destroyed the World

    A passionate talk about the responsibility towards “the world” that designers have when they design a feature (that e.g. breaks the user’s trust), an advertising campaigns (cigarettes, anyone?) or something else that may do harm.

    Kate Rutter: How Designers Can Build a new World

    Designers and entrepreneurship – a well-delivered talk that didn’t really catch me, partly because I don’t envision myself to be part of the target audience for this talk.

    Russ Unger: Things I've learned from leading UX Designers

    Not exactly my area of interest, but very honest presentation. Slides are here: http://de.slideshare.net/runger/ux-lisbon-things-ive-learned-and-am-still-learning-from-leading-ux-designers.

    Jason Grigsby: Adaptive Input

    Great talk about the challenges of unifying user interfaces to be used by mouse or touch at the same time. The key sentence: Input matters more than screen size. The slides: https://speakerdeck.com/grigs/adaptive-input-uxlx.

    Christina Wodtke: The Mechanics of Magic

    Christina spoke about the power of games to create emotions, and at the same time warned about the dangers of gamification. The hunt for badges and a place on a leaderboard may initially provide some sort of incentive to use a system. In the end the metrics will either make people game the system – or no longer care. In both cases the original intrinsic motivation is finally killed off, with the end result being highly undesirable.

    Bill DeRouchey: History of the Button

    I really enjoy everything related to the history of computing in general, and looking back at the history of something as simple as a button is a really worthwhile  topic. A talk that explains a (mechanical) button as an “abstraction of movement” definitely hits a certain vibe with me. An inexcusable lapse though was presenting the Mac in 1984 as the starting point of the button in user interfaces (or at least giving the impression on the slides). Not cool.

    Jess McMullin: Citizen Experience Design and You!

    Well-presented, but didn’t really work for me.

    Margot Bloomstein: Content strategy for slow experiences

    The talk started out a bit slow (how fitting) before it came to the point and suddenly it all made sense. Increasing the perceived performance of a system is one point. But there are actual use cases for creating deliberately slow experiences that people perceive as thorough and valuable, for example when buying specific equipment (cameras, outdoor clothing).

    The slides: http://slideshare.net/mbloomstein/content-strategy-for-slow-experiences-at-uxlx

    Steve Baty: (Re)framing - The first step towards innovative ideas

    The three days finally took their toll and it seems my mind wandered off during that talk, right now I cannot remember what it was about. I only remember that when the talk was finished, I wondered whether the next talk could keep me awake. Little did I know.

    Jared Spool: UX Strategy Means Business

    My personal highlight of the day and a strong way to end the day. This was exactly the kind of session for broadening the personal horizon I am looking for when visiting the UX Lx conference.

    Robert Sterry blogged about the session, the slides by Jared Spool are available as a PDF file.

    Sunset Boat Cruise

    Like last year, the weather didn’t like us. But also like last year, at least it stopped raining towards the end. And it was a lot of fun nevertheless.

    20140608_SunsetCruise

    Conference Dinner: Portugália

    The weakest of the three restaurants; not just my personal opinion, but also of others I talked to. When a woman makes a remark about the not exactly huge portion size, you know something went wrong. And many of those who chose the chocolate mousse for dessert simply didn’t get it (no longer available, sorry).

    The conversations at the table I sat at weren’t so much about UX, but more about topics ranging from the upcoming FIFA World Cup or Basketball in Germany and Lithuania up to the fall of the iron curtain and how it was experienced by people from different nations. I enjoyed it very much.

    Final Thoughts

    In a time of virtually endless content on the Internet, it becomes increasingly harder to justify a (physical) visit to a conference. In the case of the UX Lx, it’s not just about the pure content. It’s also about getting inspired (which is much harder viewing a video on a computer screen) and communicating with other attendees. The evening activities give you enough time for longer conversations that go beyond what is possible at the lunch table or during the breaks. And the openness of the attendees makes it really easy.

    So will I attend next year? If time permits, yes.

  • New Blogging Platform!

    My blog has been moved to Orchard CMS as the new blogging platform. I have been able to play around with a beta version of the site in the last weeks and the first impression is pretty good. While I have tweaked the features to resemble what the old blog offered, I haven’t found the time yet to work on the styling (which I don’t want to recreate on the new platform anyway).

  • Clippy for ReSharper

    You know, it’s that day again when April fool’s jokes appear all over the web – and the guys from JetBrains have one, too: They announced Clippy for ReSharper.

    20140401_Clippy

    But instead of just slapping together a few faked screenshots for their blog post, they actually wrote a ReSharper extension that you can download from the Visual Studio Extension Gallery (ReSharper 8.1 or 8.2 required).

    The extension replaces the default context menu, e.g.

    20140401_Default

    While I cannot imagine anybody actually using Clippy in their daily work, I really like this nice little piece of software.

  • dotnet Cologne 2014 – ausgebucht in 30 Minuten!

    Gestern Mittag um 12:00 wurde die Anmeldung für die dotnet Cologne freigeschaltet, 30 Minuten später waren alle Teilnehmerplätze belegt!

    Letztes Jahr gingen 310 Karten in den Verkauf, die in 4 1/2 Stunden vergriffen waren. Dieses Jahr konnten wir im Komed einen der kleineren Vortragsräume durch einen neu geschaffenen, größeren Raum ersetzen sowie weitere Flächen anmieten. Aber die 30 zusätzlichen Plätze waren nur ein Tropfen auf den heißen Stein…

    Wer auf den vorderen Plätzen der Warteliste steht, darf sich aber durchaus berechtigte Hoffnung machen. Von den 40 Karten, die den Sponsoren theoretisch zur Verfügung stehen, werden erfahrungsgemäß nicht alle genutzt (und gehen auch früh genug wieder zurück an uns). Und dann gibt es eine ganze Reihe von Teilnehmern, die entweder stornieren oder aber schlichtweg nicht bezahlen. Also: Es besteht noch Hoffnung!

  • Anmeldung zur dotnet Cologne 2014 am 12.3.2014 um 12:00

    dnc14_banner_468x60

    Am 9. Mai 2014 findet zum sechsten Mal die dotnet Cologne statt.

    Die Anmeldung wird am 12. März 2014 um 12:00 freigeschaltet.

    Es empfiehlt sich, vorher einen Account anzulegen bzw. einen evtl. noch aus dem Vorjahr existierenden Account zu überprüfen (z.B. um die eingetragene Email-Adresse zu aktualisieren).

    Im Vorjahr war die dotnet Cologne 2013 in 4 1/2 Stunden ausverkauft, man sollte also mit der Anmeldung nicht zu lange warten.

    Sind alle Plätze belegt, werden die folgenden Anmeldungen auf eine Warteliste umgeleitet (first in, first out). Da es erfahrungsgemäß einige Stornierungen und den einen oder anderen Rückläufer von Sponsorentickets gibt, haben die vorderen Positionen auf der Liste gute Chancen nachzurücken.

    Weitere Infos zur dotnet Cologne 2014 auf http://dotnet-cologne.de

  • A C# Feature I’d Really Like to See in a Future Version

    In C#, if you declare a variable somewhere inside curly braces, that variable cannot be accessed from the outside. Examples are (private) member variables inside a class, (local) variables inside functions or statement blocks in general.

    What I really would like to see in a future version of C# are variables that can only be accessed within a property declaration. Then it would be possible to write something like this:

    class MyClass
    {
        public string MyProperty
        {
            string _myProperty; // only accessible from within MyProperty
    
            get
            {
                DoSomething();
                return _myProperty;
            }
            set
            {
                _myProperty=value;
                DoSomethingElse();
            }
        }
    }

    Looks like other people had the same idea, the feature is already suggested on UserVoice. The original author of the suggestion had a different reason for the suggestion (citing documentation requirements); the benefit that I and another commenter see is the additional encapsulation. By declaring the variable the way it is shown above, you could express the intent that the backing field isn’t intended to be accessed directly, helping other people reading the code (or yourself in a couple of weeks…).

    If you agree that the feature would be a valuable addition to the C# language, it would be nice if you could vote for it on UserVoice.

  • dotnet Cologne 2014 am 9. Mai 2014

    dnc14_banner_468x60

    Am 9. Mai 2014 findet zum sechsten Mal die dotnet Cologne statt, wie in den Vorjahren im Komed im Mediapark Köln.

    Diese von Stefan Lange und Melanie Eibl (dotnet Köln/Bonn e.V.), Albert Weinert (.net user group Köln) und mir (Bonn-to-Code.Net) organisierte Konferenz hat sich im Laufe der Jahre zum größten deutschen Community Event rund um Entwicklerthemen im Microsoft-Umfeld entwickelt. Die 350 Teilnehmer-plätze sind jeweils in kürzester Zeit belegt, die Konferenz immer Wochen im Voraus ausgebucht.

    Wer einen Eindruck von der Konferenz erhalten möchte, dem empfehle ich das foldende Video auf YouTube, dass anlässlich der dotnet Cologne 2012 entstanden ist: http://youtu.be/NYfsaMKHeoU

    Das Erfolgsgeheimnis ist eigentlich keines – wir, hauptberuflich in der Software-Entwicklung tätig, organisieren in unserer Freizeit einfach eine Konferenz, die wir selbst gerne besuchen würden. Und egal wie groß die Begeisterung nach einer Konferenz auch ist (das überwältigend positive Feedback motiviert natürlich auch ungemein), schauen wir uns alle Kritikpunkte und Verbesserungs-vorschläge immer sehr genau an. So schaffen wir es, Jahr für Jahr noch einen Tick besser zu werden und auch für die dotnet Cologne 2014 haben wir wieder ein paar Details überdacht. Aber dazu mehr in einem der kommenden Blog-Einträge.

    Wann kann man sich anmelden?

    Die Freischaltung der Anmeldung ist für März geplant und wird frühzeitig auf der Website, auf Twitter und Facebook bekanntgegeben.

    Was wird es kosten?

    Unser Ziel ist es, die Preise vom Vorjahr anzubieten, insbesondere den Super-Early-Bird für nur 25,- Euro.

    Sprecher gesucht!

    Eine erste Runde des “Call for Papers” ist bereits gelaufen und die ersten Sprecher und Vorträge sind online. Wir sind aber weiter auf der Suche, um die sechs Tracks mit interessanten Sessions zu füllen. Von der Einführung bis zum Deep Dive, vom Mainstream bis zum Spezialthema – wer Interesse hat, die dotnet Cologne 2014 mitzugestalten, findet hier alle Infos dazu.

    Sponsoren gesucht!

    Es macht uns schon ein wenig stolz, wenn Sponsoren kurz nach einer Konferenz bereits ihre Teilnahme für das nächste Jahr ankündigen. Insbesondere die Sponsoren mit Ständen im Ausstellungsbereich zeigen sich begeistert von den Möglichkeiten, mit den Teilnehmern ins Gespräch zu kommen und nicht zuletzt davon, wie qualifiziert das Publikum ist. So sind wir im Bereich der Platin-Sponsoren auch bereits ausgebucht.

    Wer 350 Entwicklern sein Produkt, seine Dienstleistung oder ggf. seine Firma als Arbeitgeber vorstellen möchte, kann sich an Melanie Eibl (Melanie.Eibl [at] dotnet-koelnbonn.de) wenden. Wir bieten eine Vielzahl von Sponsoring-Möglichkeiten, von der Software-Lizenz für die Verlosung bis hin zu Ständen vor Ort. Melanie schickt dann unsere Informationsbroschüre und beantwortet alle Fragen zum Thema Sponsoring.

  • Emaroo 1.5.0 Released

    Emaroo is a free utility for browsing most recently used (MRU) lists of various applications. Quickly open files, jump to their folder in Windows Explorer, copy their path - all with just a few keystrokes or mouse clicks.

    ScreenShot400x238

    Emaroo 1.5.0 is now out, adding support for Photoshop CC and Notepad++.

    You can download it on www.roland-weigelt.de/emaroo.

    For examples of how Emaroo can speed up working with files, take a look at the “Why Emaroo?” section of the blog post announcing the previous version.