<?xml version="1.0"?>
<rss version="2.0">
<channel>
  <title>Coding the Architecture - qcon tag</title>
  <link>http://www.codingthearchitecture.com/tags/qcon/</link>
  <description>Software architecture for developers</description>
  <language>en</language>
  <copyright>Coding the Architecture</copyright>
  <lastBuildDate>Mon, 21 May 2012 09:41:00 GMT</lastBuildDate>
  <generator>Pebble (http://pebble.sourceforge.net)</generator>
  <docs>http://backend.userland.com/rss</docs>
  
  
  <item>
    <title>QCon London 2010</title>
    <link>http://www.codingthearchitecture.com/2010/03/17/qcon_london_2010.html</link>
    
      
        <description>
          &lt;p&gt;
After running the abridged version of the software architecture for developers course at QCon London on Monday with Simon, I returned for the conference &#034;proper&#034;.
&lt;/p&gt;
&lt;p&gt;
QCon felt quite diverse this year, running tracks on Agile, Java, .NET, architecture, craftsmanship, design, web and mobile development, testing, and more. As such, it’s quite hard to come away with some sort of over-arching feel for what’s driving the industry at the moment. Perhaps that’s really the take-away message this year: that there are numerous movements bubbling under, but a growing sense of pragmatism over technology choice and process adoption.
&lt;/p&gt;
&lt;p&gt;
However, a few candidate themes were discernible that might constitute some sort of zeitgeist. 
&lt;/p&gt;
&lt;p&gt;
Firstly there was the contended issue of software craftsmanship. At its heart there was a suggestion that this is about being proud of the software we produce and developing techniques to enable, and perhaps enforce, the delivery of “good code”. Around the edges was the suggestion that it was describing a walled garden, wherein development became inbred to the detriment of broader collaboration. 
Despite primarily being a developer, I found myself disagreeing with the software craftsmanship argument more than I expected. The argument seemed to be predicated on the assertion that we simply knew that we had a lot of bad code and that bad code was, well, bad. It took other tracks to present any evidence of there having been no improvement in software project success rates over the last decade, which may simply be bad science anyway! In a successful bit of scheduling there were talks representing both sides of the argument, so this is definitely a topic to keep watching.
&lt;/p&gt;
&lt;p&gt;
The craftsmanship track was also complemented by the development and operations track. This presented a view of development, deployment and production support disciplines as a partnership, ideally wherein they were part of the same process. Craftsmanship in the output of this sort of team feels like a more valuable ambition, where the notion of code quality reflects its ability to survive outside the bubble of our QA processes.
&lt;/p&gt;
&lt;p&gt;
The Agile movement also came under some scrutiny in the Agile Evolution track. There was (finally!) a pragmatic view of it presented as an industry that has seemingly sprung up off the back of some well-intentioned recommendations. In a somewhat ironic retrospective, we see how Agile has caused us to throw away things that we have since come to reinvent, while clinging to rituals regardless of their real value; “we have ADHD, retrograde amnesia and OCD,” says Keith Braithwaite. Rachel Davies, author of “Agile Coaching”, referred to &#034;w-agile&#034;: mini-waterfall with daily stand-ups, the point at which many attempts at agile adoption stall. However, it was refreshing to see this recognised as being a good start and perhaps as a reminder that it’s not a &lt;em&gt;particular&lt;/em&gt; process that’s the goal, but continuous improvement.
&lt;/p&gt;
&lt;p&gt;
There was a huge amount in addition to this at the conference -- certainly a couple of consistent technical themes that are worth tracking down on the QCon site. In particular, Dan Ingalls provided a reminder of the enjoyment we can get from developing software and that we shouldn&#039;t lose sight of this in our work.
&lt;/p&gt;
        </description>
      
      
    
    
    
    <comments>http://www.codingthearchitecture.com/2010/03/17/qcon_london_2010.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2010/03/17/qcon_london_2010.html</guid>
    <pubDate>Wed, 17 Mar 2010 11:24:34 GMT</pubDate>
  </item>
  
  <item>
    <title>Upcoming events</title>
    <link>http://www.codingthearchitecture.com/2010/03/03/upcoming_events.html</link>
    
      
        <description>
          &lt;p&gt;
Just a short post to provide a rundown of the events that we&#039;ll be speaking at over the next couple of weeks.
&lt;/p&gt;

&lt;table width=&#034;100%&#034; cellspacing=&#034;16&#034;&gt;

&lt;tr&gt;
&lt;td align=&#034;center&#034; valign=&#034;top&#034;&gt;
&lt;a href=&#034;http://www.qconlondon.com&#034; target=&#034;_blank&#034;&gt;&lt;img src=&#034;http://www.codingthearchitecture.com/images/qcon.png&#034; alt=&#034;QCon London 2010&#034; border=&#034;0&#034; width=&#034;180&#034; /&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;
&lt;a href=&#034;http://qconlondon.com/london-2010/speaker/Kevin+Seal&#034; target=&#034;_blank&#034;&gt;Kevin&lt;/a&gt; and &lt;a href=&#034;http://qconlondon.com/london-2010/speaker/Simon+Brown&#034; target=&#034;_blank&#034;&gt;I&lt;/a&gt; are presenting a one-day tutorial at QCon London 2010 called &lt;a href=&#034;http://qconlondon.com/london-2010/presentation/Software+Architecture+for+Developers&#034;&gt;Software Architecture for Developers&lt;/a&gt;, which covers the majority of the content from our two-day training course without the practical case-study exercises. Following this, Kevin is presenting a session for the &#034;Cool Stuff with Java&#034; track about &lt;a href=&#034;http://qconlondon.com/london-2010/presentation/MorganDirect%3A+OSGi+and+industrial-strength+Swing&#034;&gt;OSGi and industrial-strength Swing&lt;/a&gt;.
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td align=&#034;center&#034; valign=&#034;top&#034;&gt;
&lt;a href=&#034;http://www.softwarearchitecturefordevelopers.com&#034; target=&#034;_blank&#034;&gt;&lt;img src=&#034;http://www.codingthearchitecture.com/images/skillsmatter.gif&#034; alt=&#034;Training at Skills Matter&#034; border=&#034;0&#034; width=&#034;180&#034; /&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;
I&#039;m running &lt;a href=&#034;http://www.softwarearchitecturefordevelopers.com&#034; target=&#034;_blank&#034;&gt;our two-day training course&lt;/a&gt; at Skills Matter in London and, as I mentioned at the start of the year, this has been enhanced to include more content about the actual process of architecture, with a focus on coming up with a high-level software design in a few hours rather than a few weeks. You can &lt;a href=&#034;http://www.softwarearchitecturefordevelopers.com/preview.html&#034; target=&#034;_blank&#034;&gt;preview the slides&lt;/a&gt; and there are a few places remaining if you want to come along.
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td align=&#034;center&#034; valign=&#034;top&#034;&gt;
&lt;a href=&#034;http://wheredoyoustart.eventbrite.com&#034; target=&#034;_blank&#034;&gt;&lt;img src=&#034;http://www.codingthearchitecture.com/images/iasa-uk.png&#034; alt=&#034;IASA UK&#034; border=&#034;0&#034; /&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;
I&#039;m running &lt;a href=&#034;http://wheredoyoustart.eventbrite.com&#034; target=&#034;_blank&#034;&gt;a session at the IASA UK Chapter&lt;/a&gt; that will look at where to start with designing a software system from a blank sheet of paper. The focus here is on pragmatic software design without the need for lots of process or expensive modelling tools.
&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td align=&#034;center&#034; valign=&#034;top&#034;&gt;
&lt;a href=&#034;http://www.devweek.com/sessions/conference3.asp&#034; target=&#034;_blank&#034;&gt;&lt;img src=&#034;http://www.codingthearchitecture.com/images/devweek2010.jpg&#034; alt=&#034;DevWeek 2010&#034; border=&#034;0&#034; width=&#034;180&#034; /&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;
Finally, I&#039;m running &lt;a href=&#034;http://www.devweek.com/sessions/conference3.asp&#034; target=&#034;_blank&#034;&gt;two sessions at DevWeek 2010&lt;/a&gt;; one called &#034;Improving quality with an automated build process&#034; (it has a .NET focus) and one called &#034;A developer’s guide to load testing&#034; that covers the basics for evaluating architectures where performance and/or scalability is important.
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;

&lt;p&gt;
It&#039;s going to be a busy couple of weeks, but I&#039;m planning on spending some time in the audience at both QCon and DevWeek. If you want to meet or catch-up, feel free to send me an e-mail or a message via &lt;a href=&#034;http://twitter.com/simonbrown&#034; target=&#034;_blank&#034;&gt;Twitter&lt;/a&gt;.
&lt;/p&gt;
        </description>
      
      
    
    
    
    <comments>http://www.codingthearchitecture.com/2010/03/03/upcoming_events.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2010/03/03/upcoming_events.html</guid>
    <pubDate>Wed, 03 Mar 2010 22:49:31 GMT</pubDate>
  </item>
  
  <item>
    <title>Podcast #2 : QCon revisited</title>
    <link>http://www.codingthearchitecture.com/2008/03/25/podcast_2_qcon_revisited.html</link>
    
      
        <description>
          &lt;p&gt;
&lt;a href=&#034;http://www.codingthearchitecture.com/2008/03/06/the_first_cta_podcast.html&#034;&gt;As promised&lt;/a&gt; the 2nd CTA podcast is a roundtable discussion between some of the CTA contributors - namely &lt;a href=&#034;http://www.codingthearchitecture.com/authors/sbrown/&#034;&gt;Simon Brown&lt;/a&gt;, &lt;a href=&#034;http://www.codingthearchitecture.com/authors/sdalton/&#034;&gt;Sam Dalton&lt;/a&gt; and &lt;a href=&#034;http://www.codingthearchitecture.com/authors/kseal/&#034;&gt;Kevin Seal&lt;/a&gt;. In this podcast we discuss some of the themes emerging from the recent QCon conference held in London and our views on those themes.
&lt;/p&gt;

&lt;p&gt;
The podcast can be downloaded &lt;a href=&#034;http://static.codingthearchitecture.com/podcasts/podcast-march2008.mp3&#034;&gt;here&lt;/a&gt; or you can &lt;a href=&#034;http://www.codingthearchitecture.com/tags/podcast/rss.xml&#034;&gt;subscribe&lt;/a&gt;. Full show notes follow below:
&lt;/p&gt;

&lt;h3&gt;1. Introduction&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;QCon Conference London detail can be found &lt;a href=&#034;http://jaoo.dk:80/london-2008/conference/&#034;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;2. Monitoring and Management (0:27)&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Roll your own vs. &#034;off the shelf&#034; monitoring&lt;/li&gt;
&lt;li&gt;Asynchronous monitoring&lt;/li&gt;
&lt;li&gt;&lt;a href=&#034;http://www.jinspired.com&#034;&gt;JXInsight&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The need for an System Architect and an overall understanding of WHAT to monitor and a holistic view&lt;/li&gt;
&lt;li&gt;Including Monitoring NFRs upfront in SAD&lt;/li&gt;
&lt;li&gt;Monitoring the monitoring vs. best effort&lt;/li&gt;
&lt;li&gt;eBay and 1.5TB of monitoring and logfile information per day&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;3. Rehashing Refactoring (11:56)&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Refactoring now mainstream, now emphasizing at the micro-level&lt;/li&gt;
&lt;li&gt;Code-debt - how can you measure it?&lt;/li&gt;
&lt;li&gt;Refactoring is not something to be &#034;saved up&#034;&lt;/li&gt;
&lt;li&gt;Lots of rearchitecture projects sold as refactoring&lt;/li&gt;
&lt;li&gt;Sometimes starting again is a better solution than large scale refactoring&lt;/li&gt;
&lt;li&gt;Why do things end up in such a mess so often?&lt;/li&gt;
&lt;li&gt;Need to get back to writing code for humans to understand&lt;/li&gt;
&lt;li&gt;Worry about emphasis on low-level code optimizations rather than architecture&lt;/li&gt;
&lt;li&gt;Is refactoring its own worst enemy being referred to as a separate discipline to regular software development?&lt;/li&gt;
&lt;li&gt;We are our own worst enemies - we (especially the architects) need to stand up for the quality of our code - stop allowing ourselves to be convinced to make shortcuts&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;4. The Return of the Architect? (25:08)&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Thinking about performance, monitoring etc upfront&lt;/li&gt;
&lt;li&gt;&lt;a href=&#034;http://www.terracotta.org/&#034;&gt;Terracotta&lt;/a&gt;, &lt;a href=&#034;http://www.oracle.com/technology/products/coherence/index.html&#034;&gt;Coherence&lt;/a&gt;, &lt;a href=&#034;http://www.gigaspaces.com/&#034;&gt;Gigaspaces&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#034;http://www.codingthearchitecture.com/2007/03/15/qcon_open_terracotta.html&#034;&gt;Kevin&#039;s views on Terracotta&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;How much performance could you squeeze from a system in 2 weeks with code changes alone?&lt;/li&gt;
&lt;li&gt;Real-time VMs and performance improvements&lt;/li&gt;
&lt;li&gt;The benefits of continuous performance testing&lt;/li&gt;
&lt;li&gt;Premature optimization&lt;/li&gt;
&lt;li&gt;Understanding a system&#039;s deficiencies can be as valuable as fixing them&lt;/li&gt;
&lt;/ul&gt;
        </description>
      
      
    
    
    
    <comments>http://www.codingthearchitecture.com/2008/03/25/podcast_2_qcon_revisited.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2008/03/25/podcast_2_qcon_revisited.html</guid>
    <pubDate>Tue, 25 Mar 2008 10:23:20 GMT</pubDate>
  </item>
  
  <item>
    <title>Architecture tutorial @ QCon London 2008</title>
    <link>http://www.codingthearchitecture.com/2008/02/29/architecture_tutorial_qcon_london_2008.html</link>
    
      
        <description>
          &lt;p&gt;
Just a quick note to say that, in just over a week, &lt;a href=&#034;http://www.codingthearchitecture.com/authors/kseal/&#034;&gt;Kevin Seal&lt;/a&gt; and myself are running an all-day tutorial at &lt;a href=&#034;http://qcon.infoq.com/london/conference/&#034;&gt;QCon London 2008&lt;/a&gt;. Entitled &lt;a href=&#034;http://qcon.infoq.com/london/presentation/Coding+the+Architecture%3A+From+Developer+To+Architect&#034;&gt;Coding the Architecture : From Developer to Architect&lt;/a&gt;, this tutorial explains what architecture is and how to architect a software system.
&lt;/p&gt;

&lt;blockquote&gt;
This session is an interactive introduction to software architecture and what it means to be a software architect. It&#039;s aimed at software developers who are looking towards their first software architect role, as well as architects that are new to the role. By attending this session you will gain:
&lt;ul&gt;
&lt;li&gt;An understanding of what it means to be a software architect and the responsibilities associated with the role.&lt;/li&gt;
&lt;li&gt;An understanding of the trade-offs that are made when making architectural decisions.&lt;/li&gt;
&lt;li&gt;Some experience of what it feels like to be an architect on a bespoke software development project; including gathering non-functional requirements, determining the drivers for architecture and defining an architecture.
&lt;li&gt;An understanding that, as a software architect, it&#039;s okay to do some coding.&lt;/li&gt;
&lt;/ul&gt;
The session is interactive; with a combination of presentation, group discussion and group working. Throughout the day you&#039;ll be solidifying everything you learn by defining the architecture for a small software system. The overall goal is that you can take the experience gained here and apply it to your own projects. 
&lt;/blockquote&gt;

&lt;p&gt;
This should be quite a fun day and we&#039;re really looking forward to it. If you&#039;re reading this and would like to attend but can&#039;t, do get in touch and maybe we can sort a re-run out.
&lt;/p&gt;
        </description>
      
      
    
    
    
    <comments>http://www.codingthearchitecture.com/2008/02/29/architecture_tutorial_qcon_london_2008.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2008/02/29/architecture_tutorial_qcon_london_2008.html</guid>
    <pubDate>Fri, 29 Feb 2008 14:40:00 GMT</pubDate>
  </item>
  
  <item>
    <title>QCon: Open Terracotta</title>
    <link>http://www.codingthearchitecture.com/2007/03/15/qcon_open_terracotta.html</link>
    
      
        <description>
          &lt;p&gt;There have been numerous presentations at &lt;a href=&#034;http://qcon.infoq.com&#034;&gt;QCon&lt;/a&gt; that I&#039;ve taken things from; presentations I&#039;ve thought it might be worth distilling and replaying to others. However, Ari Zilka&#039;s talk on Open Terracotta got me excited (and I know I&#039;m not alone) - possibly because I might be able to realise and demonstrate some pretty clear benefit without having to do much work at all. Ideal!&lt;/p&gt;
&lt;p&gt;Open Terracotta ( &lt;a href=&#034;http://www.terracotta.org&#034;&gt;www.terracotta.org&lt;/a&gt; ) is essentially an open source clustering solution for Java. However, rather than presenting an API for sharing data between nodes, Terracotta works transparently against the heap. This makes it more like sharing memory between VMs, and that sounds a lot like a silver buller for many clustering requirements.&lt;/p&gt;
&lt;p&gt;Ok, it won&#039;t solve everything as there are problems inherent in distribution or common resources that exist regardless of the solution. But as a proposition it&#039;s very interesting: if VMs share memory (or, more accurately, transparently simulate shared memory, even down to the semantics of locking), that frees the developer from worrying about numerous distribution concerns. Indeed, it permits very simple paradigms that are employed in-process (such as locking and trivial object identity) to be leveraged regardless of the target environment. That&#039;s got to be a good thing!&lt;/p&gt;
&lt;p&gt;I had to think about it for a bit because it sounded too good to be true - is this analogous to having a distributed VM? In theory it could be, in practice there&#039;s obviously a choice to be made about what to cluster. Ari was ready to admit that this sort of idea isn&#039;t new - Sun and IBM apparently tried using shared memory for multiple VMs without much success. This, however, seems to be real. Runtime optimisation and monitoring just make it sound even better.&lt;/p&gt;
&lt;p&gt;There are several examples of where this sort of technology would have been valuable on real projects I&#039;ve worked on in the past few years. At the moment I can&#039;t wait to take it for a test drive on something stupid like a clustered Swing application before looking forward to an enterprise project that presents an acid test.&lt;/p&gt;
&lt;p&gt;If anyone else has any opinions or concerns about this then it&#039;d be really great to hear about them.&lt;/p&gt;
        </description>
      
      
    
    
    
    <comments>http://www.codingthearchitecture.com/2007/03/15/qcon_open_terracotta.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2007/03/15/qcon_open_terracotta.html</guid>
    <pubDate>Thu, 15 Mar 2007 23:44:00 GMT</pubDate>
  </item>
  
  </channel>
</rss>

