<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-19660677</id><updated>2012-01-24T18:35:17.805-08:00</updated><title type='text'>Real World Software Architecture</title><subtitle type='html'>Real World Software Architecture is dedicated to providing information and experiences from the field of Software Architecture.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default?start-index=101&amp;max-results=100'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>577</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-19660677.post-1951588775407278998</id><published>2012-01-24T18:30:00.000-08:00</published><updated>2012-01-24T18:35:17.813-08:00</updated><title type='text'>XAML Developer Reference Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I have read a lot of the WPF and Silverlight books out there and there are some good ones. The difference I find with this book is that it is XAML centric so the scope is more isolated. A few months ago a fellow developer of mine had to build some XAML forms to integrate with a third party shell. This book would have been the right level of information he needed to knock the project out.&lt;br/&gt;&lt;br/&gt;The first chapter offers an overview view of XAML. The introduction is followed by 8 more chapters and two appendices. The chapters include Object Elements and Attributes, XAML Properties and Events, Markup Extensions and Other Features, Resources, Styles, and Triggers, Layout and Positioning System, Form and Functional Controls, Data Binding, and Media, Graphics, and Animation.&lt;br/&gt;&lt;br/&gt;Each chapter goes in-depth into the topic at hand. Each topic is defined and then demonstrated through a practical example. There are not 10 examples showing the same thing, and they are explained in a way that makes them easy to understand.&lt;br/&gt;&lt;br/&gt;The authors also do a good job of making use of tables, screenshots, and diagrams without going overboard. I have seen a few books that went way overboard.&lt;br/&gt;&lt;br/&gt;The two appendices are Major Namespaces and Classes and XAML Editors and Tools. The Major Namespaces appendix give a nice list of all the major namespaces in Silverlight and WPF. It includes the class and the description and makes for a nice summary of the available tools found in each library.&lt;br/&gt;&lt;br/&gt;The author does a good job of pointing you to additional information by including links where appropriate.&lt;br/&gt;&lt;br/&gt;Although the author touches on the Silverlight Toolkit, I would have liked to see more coverage and coverage of the WPF Toolkit features.&lt;br/&gt;&lt;br/&gt;The downloadable code is all there, but is a little confusing some places. Most of the samples are in projects and those ore well organized, but they also include text file snippets. The author names the snippet files by number, but the book does not label them at all. An example is chapter 9 has 33 snippets of code which is nice, but you have to use a file searcher to find the one you want. Not that big of a deal, and I would rather have them, than not.&lt;br/&gt;&lt;br/&gt;I found the authors writing style made the book an easy cover to cover read. The book also includes a nice index which helps to make it a nice reference.&lt;br/&gt;&lt;br/&gt;I think this book is perfect for those people looking to get into WPF, Silverlight, or XAML for Windows (Windows 8) development. It gets you up to speed fast on the ins and outs of XAML. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/073565896X/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=073565896X"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=073565896X&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=073565896X" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/073565896X/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=073565896X"&gt;XAML Developer Reference&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=073565896X" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-1951588775407278998?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/1951588775407278998/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=1951588775407278998&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1951588775407278998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1951588775407278998'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2012/01/xaml-developer-reference-book-review.html' title='XAML Developer Reference Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-2083462719144095711</id><published>2012-01-22T07:00:00.000-08:00</published><updated>2012-01-22T07:05:24.855-08:00</updated><title type='text'>Continuous Integration in .NET Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I still remember the first time I was on a project that used NAnt and CruiseControl.NET. It was years ago and both were new tools with plenty of bugs. The project manager took one of the team's architects and dedicated him to getting CI up and running. I didn't work with him for another 9 months. It was a complete nightmare. Every morning was dedicated to finding out why the builds failed, fixing the issue, and then manually rerunning the builds until successful. Then it was off to show management the new build reports. It didn't take long for them to not want to be hassled with the process. A year after it all began the code base was removed from the CI process and went back to manual builds.&lt;br/&gt;&lt;br/&gt;Not a very good story to start the review of a book on CI that I highly recommend you read. Times have changed, the tools have improved, and with books like this available you have no reason to not give CI a go. You may have plenty of excuses, but no reasons. Luckily this book contains a nice summary of excuses commonly used and does a nice job of debunking them.&lt;br/&gt;&lt;br/&gt;The book starts off with a chapter titled Understanding continuous integration which gives a nice overview of CI and introduces the CI tools. They include source control, CI server, feedback mechanism, build manager, unit test framework, documenting, and code-analysis tools.&lt;br/&gt;&lt;br/&gt;The book continues with chapters on Setting up a source control system, Automating the build process, Choosing the right CI server, Continuous feedback, Unit testing continuously integrated code, Performing integration, system, and acceptance testing, Analyzing the code, Generating documentation, Deployment and delivery, Continuous database integration, and Extending continuous integration.&lt;br/&gt;&lt;br/&gt;One of the things I like about the book is that it is .NET centric and not Microsoft centric. It introduces the Microsoft tools, other vendor's tools, and open source tools. For example Subversion, TFS, SourceSafe, Git, and Vault are introduced as source control options, Nant and MSBuild are introduced as build tools, and CruiseControl.NET, TFS 2010, and TeamCity as CI servers.&lt;br/&gt;&lt;br/&gt;The authors do a great job of providing in-depth examples of the different tools and technologies. The example's accompanying downloadable code is very well organized and usable.&lt;br/&gt;&lt;br/&gt;Although implementing CI can be a big change for a team, this book will definitely help educate you and your team on all the different tools available in the context of .NET projects. That give a big advantage when planning your team's path to CI.&lt;br/&gt;&lt;br/&gt;All in all I highly recommend using CI on your projects, but I recommend reading this book first even more. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1935182552/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1935182552"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=1935182552&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1935182552" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1935182552/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1935182552"&gt;Continuous Integration in .NET&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1935182552" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-2083462719144095711?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/2083462719144095711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=2083462719144095711&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2083462719144095711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2083462719144095711'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2012/01/continuous-integration-in-net-book.html' title='Continuous Integration in .NET Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-8348013778568061806</id><published>2012-01-16T17:29:00.000-08:00</published><updated>2012-01-16T17:30:29.565-08:00</updated><title type='text'>Experiences of Test Automation: Case Studies of Software Test Automation Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;Every once in a while a book is put together that should be read by every person with a relationship to software development. This book is one of them. Everyone dreams of automating their software testing, but few make it a reality. This down to earth book is the stories of 28 teams that went for it. It includes both successes and failures. That is not something you see everyday.&lt;br/&gt;&lt;br/&gt;Many books simply provide you the success path. This book also provides you with the steps you could possibly be taking that could lead to failure helping you to change your path before fully failing.&lt;br/&gt;&lt;br/&gt;The book starts with a nice overview of the case studies and an introduction to the key issues addressed by the case studies. Besides each case study being summarized, it also includes introducing the topics and pointing out the chapter they can be found in. They are broken down into management and technical issues.&lt;br/&gt;&lt;br/&gt;The management issues include Objectives for Automation, Management Support, Return on Investment and Metrics, Automation in Agile Development, Skills, Planning, Scope, and Expectations, Relationships with Developers, Triggers for Change and Getting Started, Tools and Training, and Political factors.&lt;br/&gt;&lt;br/&gt;The technical issues covered include Testware, Abstraction, Architecture, Test Execution Tool, Automation Standards, Reusability, Documentation, Flexibility, Results and Reporting, Testing the Tests, What to Automate, Failure Analysis, and Finding Bugs.&lt;br/&gt;&lt;br/&gt;The book includes a really nice table of Case Study Characteristics. Some of the characteristics include location, lifecycle (process used), number of team members, time span, tool types, pilot done, ROI measured, was it successful, and is the project still going on. This table really helps you hunt down topics you are interested in reading about first. The index of this book is really nice also. I mention that because I have seen some books lately where the publisher didn't want to foot the bill for a nice one. That can be very aggravating.&lt;br/&gt;&lt;br/&gt;The book's last chapter is titled Test Automation Anecdotes. It is filled with experiences from the field that the authors felt were worth repeating, but did not constitute an entire chapter.&lt;br/&gt;&lt;br/&gt;The book also has a nice table in the appendix that lists all the tools mentioned in the book. It includes which chapter they are in, where or not they are open source, and a link to the tool owner's website.&lt;br/&gt;&lt;br/&gt;I have repeatedly seen attempts at test automation fail for a verity of reasons. This book included them all from lack of management support, to believing the tool is all you need, to trying to automate tests without documenting them, to trying to automate every test. It the level of difficulty and effort is almost always underestimated. This book definitely puts the level of effort into perspective.&lt;br/&gt;&lt;br/&gt;Almost every story's environment is unique. I really like the way the stories provide solutions to problems that could not be solved by simply purchasing a tool. These solutions are not the industry's best practice solution, but rather home grown solutions to problems unique to their environment. Now that this book is out they may become best practice solutions? The primary thing they do is make you think out of the box. It is really refreshing to read such a real world book.&lt;br/&gt;&lt;br/&gt;Every story is well written and well edited. This is one of the best resources available for helping expand your experience level without having to make the mistakes to learn from along the way. I wish this same format would be done with just software projects in general. That is with the same level of honesty. I see failing projects constantly being touted as successes. Buggy, over budget, late projects, are not a success. Kudos to those authors who stepped up to write about the failed projects!!!&lt;br/&gt;&lt;br/&gt;The authors come from a wide range of technologists. You can check out the 28 case study summaries on &lt;a href="http://www.dorothygraham.co.uk/automationExperiences/"&gt;&lt;strong&gt;the author's web site&lt;/strong&gt;&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;I only have one word of warning. These stories suck you in. You may find yourself saying "Just one more", and then suddenly look at the clock and realize it is 3 am.&lt;br/&gt;&lt;br/&gt;All in all I highly recommend this book to everyone in the business of building software. Before you attempt to automate your testing, read this book! &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321754069/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321754069"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0321754069&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321754069" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br /&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321754069/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321754069"&gt;Experiences of Test Automation: Case Studies of Software Test Automation&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321754069" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-8348013778568061806?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/8348013778568061806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=8348013778568061806&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8348013778568061806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8348013778568061806'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2012/01/experiences-of-test-automation-case.html' title='Experiences of Test Automation: Case Studies of Software Test Automation Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-2978260703136389201</id><published>2012-01-13T10:12:00.000-08:00</published><updated>2012-01-13T10:13:01.362-08:00</updated><title type='text'>Building Enterprise Systems with Open Distributed Processing Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This is a very well put together book. It includes a single example company that the book grows and changes throughout the book. Sometimes examples get on my nerves. They are either too lightweight to mean anything, or sometimes too complex, and end up distracting you to the point of not wanting to continue read the book. The authors do an awesome job with the case study in this book. It really made it an enjoyable read.&lt;br/&gt;&lt;br/&gt;The book begins with a nice introduction to ODP. It introduces viewpoints, viewpoint languages, viewpoint correspondences, fundamental concepts, and UML4ODP.&lt;br/&gt;&lt;br/&gt;After a nice introduction to ODP the book has a chapter covering each viewpoint. They include the Enterprise Viewpoint, Information Viewpoint, Computational Viewpoint, Engineering Viewpoint, and the Technology Viewpoint. This part ends with a chapter titled Correspondences—Joining It All Up. The correspondences link the viewpoints together providing traceability between the viewpoints.&lt;br/&gt;&lt;br/&gt;The third part of the book is dedicated to showing how the ODP can help resolve common issues and risks when developing distributed systems. This section has some really practical advice in it. The chapters in this part of the book are Conformance—Does It Do the Right Thing?, Transparencies—Hiding Common Problems, Policies—Tracking Changing Requirements, Federation—Talking to Strangers, Using Existing Products, and System Evolution—Moving the Goalposts.&lt;br/&gt;&lt;br/&gt;The forth part of the book is about the theoretical basis of ODP and the tools used with ODP. It includes the following chapters- Modeling Styles, Sharp Tools, and A Broader View.&lt;br/&gt;&lt;br/&gt;The book includes two appendices. One of them is an abbreviated version of the Specification created for the example used in the book. There is an online version of this specification available that includes the entire specification.&lt;br/&gt;&lt;br/&gt;My one complaint about this book is that it did not include the entire specification in the appendix. I hate buying a book only to have to print a bunch of extras to get the full benefit. The author says there were space limitations. This book is no where close to being to big to print, and at the price the publisher is charging for the book, it should have been included. I won't ding the book for this. It is not the author's fault the publisher decided to cut corners and penny pinch.&lt;br/&gt;&lt;br/&gt;Over all I think the book offers valuable information. Using viewpoints (or views) is a best practice that is used throughout many enterprise and software architecture practices and processes. This book does a great job of showing the power viewpoints have when trying to approach different stakeholders. It also does a great job of showing the importance of tractability between the viewpoints.&lt;br/&gt;&lt;br/&gt;A big plus for the book is that the models are available online and can be opened with Magicdraw's reader. I would love to see a SPARX EA version of them posted.&lt;br/&gt;&lt;br/&gt;I highly recommend this book to the software and enterprise architect looking to improve their modeling and design skills. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1439866252/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1439866252"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=1439866252&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1439866252" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1439866252/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1439866252"&gt;Building Enterprise Systems with ODP: An Introduction to Open Distributed Processing&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1439866252" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-2978260703136389201?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/2978260703136389201/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=2978260703136389201&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2978260703136389201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2978260703136389201'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2012/01/building-enterprise-systems-with-open.html' title='Building Enterprise Systems with Open Distributed Processing Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-8210941288278291974</id><published>2012-01-04T09:17:00.000-08:00</published><updated>2012-01-04T09:18:01.857-08:00</updated><title type='text'>Dependency Injection in .NET Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;Uhg. Sometimes my ability to be a complete ignoramus really annoys me. When I first saw this book on the upcoming list of books to be published I thought, "That sucks, I just got done reading Dependency Injection by Dhanji R. Prasanna last year. I don't need to read the .NET version", and so I ignored this book.&lt;br/&gt;&lt;br/&gt;As time went on I saw all the great reviews coming out about the book and it made me curious. A buddy of mine had purchased it and I know that Manning gives ebooks with there book purchases, so I asked to borrow it. I ordered the book the next day.&lt;br/&gt;&lt;br/&gt;I have nothing bad to say about Dependency Injection by Dhanji R. Prasanna, it was a great book. The difference is this one spoke my language of choice, .NET. It made the read so much better for me. Plus all the coverage of the popular DI Containers for .NET rocks.&lt;br/&gt;&lt;br/&gt;This book is broken down into 4 parts the first part introduces DI. Part two is a catalog of patterns, anti-patterns, and refactorings. Part three covers Object Composition, Lifetime Management, and Interception. Part four covers all the popular DI .NET Containers which include Castle Windsor, StructureMap, Spring.NET, Autofac, Unity, and MEF.&lt;br/&gt;&lt;br/&gt;One of the coolest things about the book is that it uses poor man's DI in the first 3 parts of the book to teach you how it all works, and then covers the popular DI .NET Containers in details to help you be more productive.&lt;br/&gt;&lt;br/&gt;Coverage of the popular DI .NET Containers is nice deep coverage which also highlights the advantages and disadvantages of each one. Each popular DI .NET Container gets its own chapter. There are also some nice feature and lifestyle comparison charts to help you zero in on which DI Container will fit your needs.&lt;br/&gt;&lt;br/&gt;The chapter on Object Composition is pretty cool too. It include coverage of console applications, ASP.NET MVC, Windows Communication Foundation, Windows Presentation Foundation, ASP.NET (Web Forms), and PowerShell.&lt;br/&gt;&lt;br/&gt;The chapters on patterns and anti-patterns are a really big help in making sure you are using DI correctly. The patterns covered include Constructor Injection, Property Injection, Method Injection, and Ambient Context. The anti-patterns covered include Control Freak, Bastard Injection, Constrained Construction, and Service Locator. Both include nice code samples.&lt;br/&gt;&lt;br/&gt;The chapter on DI refactoring covers mapping runtime value to abstractions, working with short-lived dependencies, resolving cyclic dependencies, dealing with constructor over-injection, and monitoring coupling.&lt;br/&gt;&lt;br/&gt;This book is packed with diagrams that help you visualize the topic at hand. The author includes just the right amount.&lt;br/&gt;&lt;br/&gt;Over all I found this author's writing style made the book a nice cover to cover read, but I will also be keeping it near to use as a reference. I have been on projects that use Castle Windsor, StructureMap, Unity, and MEF, so having coverage of each handy will be nice.&lt;br/&gt;&lt;br/&gt;All the downloadable code is very well organized and usable.&lt;br/&gt;&lt;br/&gt;This book is not only about DI, it is about proper object oriented programming. Every .NET architect and developer should read this book. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1935182501/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1935182501"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=1935182501&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1935182501" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1935182501/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1935182501"&gt;Dependency Injection in .NET&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1935182501" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-8210941288278291974?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/8210941288278291974/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=8210941288278291974&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8210941288278291974'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8210941288278291974'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2012/01/dependency-injection-in-net-book-review.html' title='Dependency Injection in .NET Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-3229046785848230557</id><published>2011-12-31T21:30:00.000-08:00</published><updated>2011-12-31T21:32:05.781-08:00</updated><title type='text'>.NET Architecture and Development Book Recommendations for 2012</title><content type='html'>Another year has gone by. Happy New Year everyone. It is time to update my book recommendation blog.&amp;nbsp; There have been a ton of books come out this year both good and bad. &lt;br/&gt;&lt;br/&gt;Be sure to check out the Shiny Turds book section which lists books that do not Cut the Mustard *-Do not Buy-* section. It is the last in the list.&amp;nbsp; I have added books to most sections and deleted some of the older ones that do not have much value in today&amp;#39;s market.&lt;br /&gt;&lt;br /&gt;These are all books we use, or plan to use when they are released in the very near future.&amp;nbsp; We have reviewed a lot of them here on this blog and on Amazon.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Software Process Engineering&lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321635841" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=3642125778" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0986519405" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321685857" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321711505" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321357485&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0071605479&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0470012706&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321321278&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321166094&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0471274550&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0131914510&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321202945&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321321308&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321369459&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0201571692&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1590597745&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321422775&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0470257636&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Product Line Engineering&lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=364206986X" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0521767229" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1420068415&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0201703327&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0201775956&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0471202843&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=3540243720&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Software Architecture &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=3642197353" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321717295" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=032171833X" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=1439866252" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=354085231X" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=3540926704" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=3642202780" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0321552687" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0984618104" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470167742" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0321357485" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1420045695" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=073562609X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=073562710X&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1420085751" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321154959&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=3540287132&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0470059028&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470447613" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=908753230X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=3642013090" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;SOA: Service Oriented Architecture &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=032154420X" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0131465759&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0136135161&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0131858580&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0596526997&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0132344823&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0596529554&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Component Development &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0596102070&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0201745720&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Coding Guidelines &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321543734" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=032143482X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0321246756" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=047043452X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470179791" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0735621721&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0735619670&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0201485672&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321213351&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0131177052&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0131016490&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Frameworks &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321246756&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1590592883&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=032143482X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Patterns &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=1935182501" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470292784" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=184968054X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=193398855X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=073562609X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0470059028&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321213351&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0596007124&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0201633612&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321127420&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0131857258&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321247140&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0131495054&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321200683&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=059652773X&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;OOAD &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321774078" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0521764149" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0321509366" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0132350882" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0131489062&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321321278&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0131857258&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0521540186&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0596008678&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Brownfield Development &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1933988711" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0131177052" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Scalability &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0137030428" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0596518579" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0735618518" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470462531" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Security &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0071613749&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0979958717&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=B000MAHBQO&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=B001CPQN4E&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0596527063&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=032150917X&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0470170778&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0735618909&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=007149426X&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0735622140&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0735618429&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321335724&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;.NET 4.0 and VSTS 2010 &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=1449312942" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0735651590" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0672335522" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0735645566" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0735640572" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0470943327" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321606787" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=073565610X" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430225491" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0596800959" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430227214" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430225297" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0596807260" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470484268" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0735627045" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430272058" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0672331195" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0596805489" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430227036" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;SharePoint&lt;/strong&gt;&lt;br /&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321769597" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=184968006X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470533331" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430228652" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470529423" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0321718313" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470584637" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470481897" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;.NET 3.5 and VSTS 2008 &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1590598938&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1590598849&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1590599551&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1590597893&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1933988169&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=059652028X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;ASP.NET, AJAX, MVC, and Silverlight &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321752139" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321810414" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0735643385" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=1430234040" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=1617290319" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0596805527" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=1439825947" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0470743654" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1935182374" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430229799" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1847199844" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430229918" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430223839" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430223812" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430228865" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430225297" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430215674" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430216301" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;SQL Server and T-SQL &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0672330563" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=143020866X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=193398872X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470257016" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470257024" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=143021001X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1590599802" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470496924" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=143021807X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470247983" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0071548084" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430224231" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0470640383" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=1590599314" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Shiny Turds Books that do not Cut the Mustard *-Do not Buy-* &lt;/strong&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0735659273" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1430219505&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0470385405&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0321554167&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=047017708X&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0672330245&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1590597028&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0735625638&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1590599004&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470534044" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1430272074" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470650923" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1597495786" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=1848211821" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=0470481978" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;iframe frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=10FE9736YVPPT7A0FBG2&amp;amp;asins=143981628X" style="width: 120px; height: 240px;"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-3229046785848230557?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/3229046785848230557/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=3229046785848230557&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3229046785848230557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3229046785848230557'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/net-architecture-and-development-book.html' title='.NET Architecture and Development Book Recommendations for 2012'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-6702201478146190248</id><published>2011-12-28T16:57:00.000-08:00</published><updated>2011-12-28T17:07:31.062-08:00</updated><title type='text'>Decision Management Systems: A Practical Guide to Using Business Rules and Predictive Analytics Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;There are not too many systems being created today that I would consider more than interfaces to a data structure. Meaning most systems today rely on people to provide the intelligence behind them. The systems themselves are viewed as a necessary evil by the people who use them. I find this to be especially true in organizations with a long history. Their attitude is they were built by people, and people will continue to be their most valuable asset.&lt;br/&gt;&lt;br/&gt;The author of this book challenges us to take our systems to the new level of existence. One where they are responsive partners in the company along with the people who use them. Responding in real-time to customers and users of the system. Decision Management Systems are intended to be active participants in optimizing your business.&lt;br/&gt;&lt;br/&gt;The decisions focused on in the book are strategic, tactical, and operational. The decisions characteristics are they should be repeatable, non-trivial, measurable business impact, and a candidate for automation.&lt;br/&gt;&lt;br/&gt;One of the things I really like about this book is that the author does a great job of providing real-world easy to understand examples that show you how the theory being explained can be applied.&lt;br/&gt;&lt;br/&gt;The first part of the book builds the case for decision management systems. The second part of the book covers building decision management systems, and the last part of the book discusses the enablers for decision management systems.&lt;br/&gt;&lt;br/&gt;Part one shows us what type of impact decision management systems can have on our businesses, and the characteristics of decision management systems. It gives a ton of real-world examples.&lt;br/&gt;&lt;br/&gt;Part two covers discovering and modeling decisions, designing and implementing decision services, and monitoring and improving decisions.&lt;br/&gt;&lt;br/&gt;Part three cover the different decision management system enablers which includes people, process, and technology enablers. One of the things I liked in this section is the author introduced the Agile Business Rule Development (ABRD). The ABRD is a practice to implement business application using business rule management system and rule engine technology.&lt;br/&gt;&lt;br/&gt;Another thing I really liked is that the author has an &lt;a href="http://www.decisionmanagementsolutions.com/" target="_blank"&gt;&lt;strong&gt;awesome web site&lt;/strong&gt;&lt;/a&gt; that provides additional material. It includes some nice white papers and webinars. Check out the material their for a preview of what you'll find in the book.&lt;br/&gt;&lt;br/&gt;The author's writing style makes these a really easy cover to cover read. The book is very practical and realistic. It is the way systems should be thought about.&lt;br/&gt;&lt;br/&gt;Over all if you are in IT, I highly recommend reading this book. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0132884380/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0132884380"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0132884380&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0132884380" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0132884380/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0132884380"&gt;Decision Management Systems: A Practical Guide to Using Business Rules and Predictive Analytics&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0132884380" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-6702201478146190248?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/6702201478146190248/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=6702201478146190248&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6702201478146190248'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6702201478146190248'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/decision-management-systems-practical.html' title='Decision Management Systems: A Practical Guide to Using Business Rules and Predictive Analytics Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-7889807864075641861</id><published>2011-12-27T10:16:00.001-08:00</published><updated>2011-12-27T10:16:33.769-08:00</updated><title type='text'>Model-Based Development: Applications Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This book has been one of the most enjoyable reads I have had in a long time. The introduction and the first chapter was a walk down memory lane. It was nice coverage of how we got to where we are today in the software development world.&lt;br/&gt;&lt;br/&gt;Each chapter goes into a deep explanation of the topic being covered. There are three parts in the book. I list them below with the chapters in each.&lt;br/&gt;&lt;br/&gt;Part I: The Roots of Object-Oriented Development- Historical Perspective, Object Technology, Generalization, Inheritance, Genericity, and Polymorphism, MBD Road Map, Modeling Invariants, and Application Partitioning.&lt;br/&gt;&lt;br/&gt;Part II: The Static Model- Classes, Class Responsibilities, Associations, Referential and Knowledge Integrity, Generalization Redux, and Identifying Knowledge.&lt;br/&gt;&lt;br/&gt;Part III: The Dynamic Model- The Finite State Machine, States, Transitions, Events, and Actions, Developing State Models, and Abstract Action Languages.&lt;br/&gt;&lt;br/&gt;This book is great for the beginning programmer and the experienced one. If you are new to object oriented programming, this book will take you through the history that forms its foundation giving you a complete understanding of the current state of modern object oriented programming. If you are a veteran, you will enjoy the perspective given to the different topics. They will help will help you articulate object oriented topics to your stakeholders.&lt;br/&gt;&lt;br/&gt;The coverage is deep on all the topics. The author uses examples and always gives an indepth explanation as to why something is done, not just how.&lt;br/&gt;&lt;br/&gt;When I first saw this book my initial reaction was, "Who cares, another science fiction book about magical tools that generate code for you". This book is not about code generation at all. It is about the principles and the disciplines it takes to create models that are detailed enough to generate code. Most of the book concentrates on analysis level models.&lt;br/&gt;&lt;br/&gt;It is also not a book on how models map to code. You don't see code in this book.&lt;br/&gt;&lt;br/&gt;I wish I could point out some favorite parts of this book, but I can't. The entire book is excellent. The level of detail the author goes into explaining the ins and outs of object oriented topics is really amazing.&lt;br/&gt;&lt;br/&gt;If you are a programmer, or want to be one, of any language, you must read this book. There is not another one like it out there. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321774078/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321774078"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0321774078&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321774078" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321774078/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321774078"&gt;Model-Based Development: Applications&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321774078" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-7889807864075641861?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/7889807864075641861/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=7889807864075641861&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7889807864075641861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7889807864075641861'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/model-based-development-applications.html' title='Model-Based Development: Applications Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-2822466630964364358</id><published>2011-12-20T09:41:00.000-08:00</published><updated>2011-12-20T09:42:57.624-08:00</updated><title type='text'>Sams Teach Yourself Java in 24 Hours (Covering Java 7 and Android) (6th Edition) Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;If you want a well rounded introduction to JAVA 7, look no further. This book touches on all the things you would expect in an introduction to a programming language.&lt;br/&gt;&lt;br/&gt;The book is broken down into six parts and a set of appendices. I have listed the chapters by part below.&lt;br/&gt;&lt;br/&gt;Part I: Getting Started- Becoming a Programmer, Writing Your First Program, Vacationing in Java, and Understanding How Java Programs Work.&lt;br/&gt;&lt;br/&gt;Part II: Learning the Basics of Programming- Storing and Changing Information in a Program, Using Strings to Communicate, Using Conditional Tests to Make Decisions, and Repeating an Action with Loops.&lt;br/&gt;&lt;br/&gt;Part III: Working with Information in New Ways- Storing Information with Arrays, Creating Your First Object, Describing What Your Object is Like, and Making the Most of Existing Objects.&lt;br/&gt;&lt;br/&gt;Part IV: Programming a Graphical User Interface- Building a Simple User Interface, Laying Out a User Interface, Responding to User Input, and Building a Complex User Interface.&lt;br/&gt;&lt;br/&gt;Part V: Moving into Advanced Topics- Creating Interactive Web Programs, Handling Errors in a Program, Creating a Threaded Program, and Reading and Writing Files.&lt;br/&gt;&lt;br/&gt;Part VI: Writing Internet Applications- Reading and Writing XML Data, Creating Web Services with JAX-WS, Creating Java2D Graphics with Xrender, and Writing Android Apps.&lt;br/&gt;&lt;br/&gt;Appendixes- Using the NetBeans Integrated Development Environment, Where to Go from Here: Java Resources, and This Book's Website.&lt;br/&gt;&lt;br/&gt;The downloadable code is very well organized and usable. The author's website also contains links to the JDK 7.0 and NetBeans 7.0.&lt;br/&gt;&lt;br/&gt;I really like that the author chose to use NetBeans. I don't get to use that editor much, but I really like it.&lt;br/&gt;&lt;br/&gt;The book only has one chapter on Android, but it includes a nice appendix on how to set up the Android development environment. They are enough to get you started.&lt;br/&gt;&lt;br/&gt;One of the things I liked about this book is that it is in color. I wish all books were printed in color these days.&lt;br/&gt;&lt;br/&gt;The author's writing style made this not only an easy read, but a fun one. I really enjoyed picking it up and blasting through a chapter over lunch for the past few months.&lt;br/&gt;&lt;br/&gt;Over all, if you are looing to get into Java programming, this book is a great place to start.&lt;br/&gt;&lt;br/&gt;&lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a href="http://www.amazon.com/gp/product/0672335751/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0672335751"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0672335751&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0672335751" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a href="http://www.amazon.com/gp/product/0672335751/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0672335751"&gt;Sams Teach Yourself Java in 24 Hours (Covering Java 7 and Android) (6th Edition)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0672335751" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-2822466630964364358?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/2822466630964364358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=2822466630964364358&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2822466630964364358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2822466630964364358'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/sams-teach-yourself-java-in-24-hours.html' title='Sams Teach Yourself Java in 24 Hours (Covering Java 7 and Android) (6th Edition) Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-9130614409609316265</id><published>2011-12-16T16:53:00.000-08:00</published><updated>2011-12-16T17:04:18.687-08:00</updated><title type='text'>SharePoint 2010 Development with Silverlight Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I have done a lot of SharePoint custom development and I see Silverlight as the answer to the horrible web part programming model Microsoft has made available in SharePoint. I have yet to see anyone write SharePoint web parts that aren't spaghetti code. Every major web part implementation I have seen has been a big ball of mud, and I have seen a lot. I moved to Silverlight for web parts as soon as I could. It is a great programming model.&lt;br/&gt;&lt;br/&gt;Microsoft continues to play the top secret game with regards to Silverlight so rumors of lack of browser support in the next year or two are being allowed to flourish. I am not willing to tell customers they should spend a year or two investing in Silverlight just so they can start over when they finally start reaching maturity. So for now, because of Silverlight, SharePoint custom development is off my future list of recommendations as well.&lt;br/&gt;&lt;br/&gt;So then, why read and recommend this book? The current enterprise I am working in uses Silverlight for web part development. There is no plan to change that. If for some reason I end up in another enterprise that wants custom web parts developed and they want me to do it, it will be in Silverlight or nothing. Although it appears Microsoft has abandoned Silverlight, until they offer something along the same lines for SharePoint web part development I am sticking with Silverlight.&lt;br/&gt;&lt;br/&gt;Because of that, I decided to purchase this book. I am now really glad I did. It is a great book.&lt;br/&gt;&lt;br/&gt;The book is broken down into three parts. I have listed them and the chapters they contain below.&lt;br/&gt;&lt;br/&gt;Part 1 Getting Started - Getting Started with SharePoint and Silverlight, Introduction to SharePoint Development, and Introduction to Silverlight Development.&lt;br/&gt;&lt;br/&gt;Part 2 SharePoint and Silverlight Development - A First Look at Silverlight in SharePoint, Web Part Development, Expression Blend, Data Binding, and Sample Data, Accessing SharePoint Using the HTML Bridge, Accessing SharePoint Data with the Client Object Model, Accessing SharePoint Data with WCF Data Services, Accessing SharePoint with Web Services, and Accessing External Data.&lt;br/&gt;&lt;br/&gt;Part 3 Building Solutions - Windows Phone 7 SharePoint Applications, Creating Silverlight Navigation, SharePoint and Silverlight in the Cloud, and Creating a Silverlight Field Control.&lt;br/&gt;&lt;br/&gt;The author has a really nice writing style which makes the book an easy cover to cover read. It will also make a nice reference.&lt;br/&gt;&lt;br/&gt;The downloadable code is very well organized and usable except for the Chapter 2 folder. That folder is missing some of the examples.&lt;br/&gt;&lt;br/&gt;One of the things I like about this book is how current it is. The author provides Silverlight 5 examples as well as Silverlight 4 examples. He makes a point to cover several new features including debugging data binding, binding data to style setters, implicit data templates, and using the browser control.&lt;br/&gt;&lt;br/&gt;Another thing I like is that the author makes use of Expression Blend. If you are developing with XAML, Blend needs to be part of the toolkit you master.&lt;br/&gt;&lt;br/&gt;The book also shows you how to get started with Bing Maps, Azure, SketchFlow, and Windows Phone. Overall I found the book to be just down right cool.&lt;br/&gt;&lt;br/&gt;I have been developing Silverlight web parts for a while now. There has not been very much information published that shows you how to get the most out of the tools and features available. That is until now. This book will take you to the next level of using SharePoint and Silverlight together. I can say that it did that for me.&lt;br/&gt;&lt;br/&gt;All in all I highly recommend this book to Silverlight and SharePoint developers and architects. It is a must have!!!&lt;br/&gt;&lt;br/&gt;&lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321769597/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321769597"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0321769597&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321769597" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321769597/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321769597"&gt;SharePoint 2010 Development with Silverlight&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321769597" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-9130614409609316265?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/9130614409609316265/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=9130614409609316265&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/9130614409609316265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/9130614409609316265'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/sharepoint-2010-development-with.html' title='SharePoint 2010 Development with Silverlight Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-6188927298210819608</id><published>2011-12-14T18:24:00.000-08:00</published><updated>2011-12-14T18:25:45.537-08:00</updated><title type='text'>Essential Windows Phone 7.5: Application Development with Silverlight Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This book this book starts with a great introduction to the windows phones. It introduces Metro design language, hardware specifications, input patterns, the application lifecycle, out of the box services, live tiles, and the marketplace. By the time you are done with the introduction you have a solid understanding of the windows phone context.&lt;br/&gt;&lt;br/&gt;The book continues with ten more chapters. They include Writing Your First Phone Application, XAML Overview, Controls, Designing for the Phone, Developing for the Phone, Phone Integration, Databases and Storage, Multitasking, Services, and The Marketplace.&lt;br/&gt;&lt;br/&gt;The author has a really nice writing style which makes the book an easy cover to cover read. It will also make a nice reference.&lt;br/&gt;&lt;br/&gt;There are a bunch of tables, screenshots, and diagrams that really help explain the topic at hand. The author does not go overboard with them like some books I have seen that use them for filler.&lt;br/&gt;&lt;br/&gt;One of the things I like about the book is that the author does a great job of switching between Visual Studio and Expression Blend at appropriate time. Not too many authors do that and I wish it was done more often. If you are developing with XAML, Blend needs to be part of the toolkit you master.&lt;br/&gt;&lt;br/&gt;Another thing I like is the author shows you us how to take advantage of built in features like the camera, email, making a call, media player, and search.&lt;br/&gt;&lt;br/&gt;The book also covers the Silverlight for Windows Phone Toolkit controls including AutoCompleteBox, ContextMenu, DatePicker, TimePicker, ListPicker, LongListSelector, PerformanceProgressBar, ToggleSwitch, ExpanderView, PhoneTextBox, and WrapPanel.&lt;br/&gt;&lt;br/&gt;In chapter 7 the book covers all the integration tasks that are included with Windows Phone 7.1. It covers all the Launchers and all the Choosers.&lt;br/&gt;&lt;br/&gt;The downloadable code is very well organized and usable.&lt;br/&gt;&lt;br/&gt;All in all if you are considering Windows 7.5 development you owe it to yourself to get this book, digest it, and then keep it by your side. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321752139/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321752139"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0321752139&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321752139" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321752139/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321752139"&gt;Essential Windows Phone 7.5: Application Development with Silverlight&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321752139" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-6188927298210819608?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/6188927298210819608/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=6188927298210819608&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6188927298210819608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6188927298210819608'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/essential-windows-phone-75-application.html' title='Essential Windows Phone 7.5: Application Development with Silverlight Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-4357873678823645924</id><published>2011-12-11T14:21:00.000-08:00</published><updated>2011-12-12T13:48:13.749-08:00</updated><title type='text'>Microsoft SharePoint 2010 Power User Cookbook Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This book is great for the SharePoint end user. I kind of think of it like the top 70 FAQs about SharePoint found all in one place.&lt;br/&gt;&lt;br/&gt;Although this book is a little out of context for the books I usually read about SharePoint, I was looking for a book to recommend to the user's of the SharePoint 2010 environments I working. I am currently upgrading a 2007 environment to 2010, so the users are going to need a good reference for common tasks. This book fits the bill.&lt;br/&gt;&lt;br/&gt;The book is broken down into different topics by chapter. The chapters are listed below.&lt;br/&gt;Chapter 1: Getting Started—SharePoint Essentials&lt;br/&gt;Chapter 2: Working Together—Using SharePoint to Collaborate&lt;br/&gt;Chapter 3: SharePoint as the Data Hub—Storing and Integrating Data&lt;br/&gt;Chapter 4: SharePoint Document Management Deep Dive&lt;br/&gt;Chapter 5: Getting the Message Out—Using SharePoint to Communicate&lt;br/&gt;Chapter 6: Where's My Stuff?—Finding Things with SharePoint&lt;br/&gt;Chapter 7: Gaining Insights—Using SharePoint for Business Intelligence&lt;br/&gt;Chapter 8: Automating Business Processes—Recipes for Electronic Forms and Workflows&lt;br/&gt;Appendix: Joining the Dots—Creating Composite Applications&lt;br/&gt;&lt;br/&gt;The individual topics are far too many to list but to give you an idea of what the chapters look like I have listed two of them below.&lt;br/&gt;&lt;br/&gt;Chapter 2: Working Together—Using SharePoint to Collaborate&lt;br/&gt;◦Introduction&lt;br/&gt;◦Creating a Team Site&lt;br/&gt;◦Adding users to a Team Site&lt;br/&gt;◦Adding a new page to a Team Site&lt;br/&gt;◦Adding a link to the Top link bar of a Team Site&lt;br/&gt;◦Adding a slide library to share PowerPoint slides&lt;br/&gt;◦Adding a slide to a presentation from a SharePoint slide library&lt;br/&gt;◦Creating and tracking a discussion item&lt;br/&gt;◦Managing a Team Site Calendar with Outlook 2010&lt;br/&gt;◦Creating a task and assigning it to another user&lt;br/&gt;◦Using the datasheet to bulk-edit tasks in a task list&lt;br/&gt;◦Managing a SharePoint task list in Outlook 2010&lt;br/&gt;◦Creating a SharePoint contact list and connecting it to Outlook 2010&lt;br/&gt;&lt;br/&gt;Chapter 4: SharePoint Document Management Deep Dive&lt;br/&gt;◦Introduction&lt;br/&gt;◦Uploading an existing document to a document library&lt;br/&gt;◦Uploading multiple documents to a document library&lt;br/&gt;◦Creating a new document in your My Site&lt;br/&gt;◦E-mailing a link to a document in SharePoint&lt;br/&gt;◦Downloading a copy of a document&lt;br/&gt;◦Creating an alert on a document to be notified when it is updated&lt;br/&gt;◦Requiring users to check out a document before they can edit it&lt;br/&gt;◦Enabling versioning on a document library&lt;br/&gt;◦Publishing a major version of a document&lt;br/&gt;◦Restoring a previous version of a document&lt;br/&gt;◦Enabling content approval on a document library&lt;br/&gt;◦Take SharePoint documents offline using Outlook 2010&lt;br/&gt;◦Co-authoring an important document&lt;br/&gt;◦Use content types to store different types of document in the same document library&lt;br/&gt;&lt;br/&gt;Each topic begins with a Getting Ready section that tells you which SharePoint version the task can be done on. It then has a How to do it section that explains how to accomplish the task at hand. This section not only contains written instructions but also usually includes detailed screenshots.&lt;br/&gt;&lt;br/&gt;Then there is a How it works section that explains how the steps taken work behind the scenes. There is then a There's more section and a See also sections that provide more information about the topic and other resources to read.&lt;br/&gt;&lt;br/&gt;The book does a really good job of combining the right amount of written instructions, screenshots, and background on each topic. Some books go way overboard with screenshots, or do not provide enough of them. This book has just the right amount.&lt;br/&gt;&lt;br/&gt;The author's writing style makes for an easy read. They do a good job of making the topics understandable.&lt;br/&gt;&lt;br/&gt;All in all I highly recommend this book to SharePoint end users.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;You can get it on Amazon &lt;a target="_blank" href="http://www.amazon.com/gp/product/1849682887/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1849682887"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1849682887" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;/strong&gt;, or read more about it on the Packt site &lt;a target="_blank" href="http://www.packtpub.com/microsoft-sharepoint-2010-power-user-cookbook/book"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1849682887/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1849682887"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=1849682887&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1849682887" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1849682887/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1849682887"&gt;Microsoft SharePoint 2010 Power User Cookbook&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1849682887" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-4357873678823645924?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/4357873678823645924/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=4357873678823645924&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/4357873678823645924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/4357873678823645924'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/microsoft-sharepoint-2010-power-user.html' title='Microsoft SharePoint 2010 Power User Cookbook Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-4186918057767471997</id><published>2011-12-09T16:20:00.001-08:00</published><updated>2011-12-09T16:20:47.536-08:00</updated><title type='text'>Data Integration Blueprint and Modeling: Techniques for a Scalable and Sustainable Architecture Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;Data integration is a complex, detailed, sometimes excruciating boring activity, which is not an activity for the light at heart.&lt;br/&gt;&lt;br/&gt;This book does a great job of digging into the details of the data transformations. It is not just a high level look at data integration, it gets into the weeds.&lt;br/&gt;&lt;br/&gt;The book is broken down into three parts. I have listed them and the chapters they contain below.&lt;br/&gt;&lt;br/&gt;Part 1 Overview of Data Integration - Types of Data Integration, An Architecture for Data Integration, A Design Technique: Data Integration Modeling, and Case Study: Customer Loan Data Warehouse Project.&lt;br/&gt;&lt;br/&gt;Part 2 The Data Integration Systems Development Life Cycle - Data Integration Analysis , Data Integration Analysis Case Study, Data Integration Logical Design, Data Integration Logical Design Case Study, Data Integration Physical Design, Data Integration Physical Design Case Study, Data Integration Development Cycle, and Data Integration Development Cycle Case Study.&lt;br/&gt;&lt;br/&gt;Part 3 Data Integration with Other Information Management Disciplines - Data Integration and Data Governance, Metadata, and Data Quality.&lt;br/&gt;&lt;br/&gt;It also includes four appendices - Exercise Answers, Data Integration Guiding Principles, Glossary, Case Study Models.&lt;br/&gt;&lt;br/&gt;The thing I like most about this book is the way the authors follow each new topic chapter with a case study chapter. They introduce the theory and best practices and then they bring that to life through a real world case study.&lt;br/&gt;&lt;br/&gt;Another thing I like about the book is that it is down to earth and very realistic. I have recently been on a MDM project. There are a lot misleading resources out there. The same can be said for data integration. The theme of the misleading resources is, "Buy this tool, install it, and push the magic button, and watch the fairy dust do its magic." Tools are important, but they are only a small piece of the puzzle. Without the proper process and governance in place the tools are worthless. This book does a great job of covering the importance of data governance.&lt;br/&gt;&lt;br/&gt;Another key is upper management support. Projects like these and MDM don't get done without upper management backing. Thinking that you can build it and they will come is just a path to self destruction.&lt;br/&gt;&lt;br/&gt;The book also acknowledges and addresses the key difficulties with data integration projects. One I always dread is reverse engineering source systems. They are never documented and if they are the documentation is out of date. You must go from person to person and suck the information out of their heads.&lt;br/&gt;&lt;br/&gt;Subject matters experts not only need to be identified, but they need to be given the time to help the project. This is always a problem, but with out upper management's support, it becomes impossible. The experts are usually the only source for all the maintenance issues going on.&lt;br/&gt;&lt;br/&gt;The book has a ton of diagrams and tables that help with understanding the topic at hand. The authors do a great job of using them to visually get their points across. The book is also loaded with great real world example diagrams and data represented in tables that make the process they are covering easier to understand. It's like getting to go through a data integration project.&lt;br/&gt;&lt;br/&gt;All in all I highly recommend this book to anyone in IT. Data integration is part of all IT projects. Managers, architects, DBAs, CIOs, developers, testers, and business users would all benefit from reading this book. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0137084935/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0137084935"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0137084935&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0137084935" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0137084935/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0137084935"&gt;Data Integration Blueprint and Modeling: Techniques for a Scalable and Sustainable Architecture&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0137084935" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-4186918057767471997?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/4186918057767471997/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=4186918057767471997&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/4186918057767471997'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/4186918057767471997'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/data-integration-blueprint-and-modeling.html' title='Data Integration Blueprint and Modeling: Techniques for a Scalable and Sustainable Architecture Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-8899381237140801658</id><published>2011-12-09T14:47:00.000-08:00</published><updated>2011-12-09T14:53:50.240-08:00</updated><title type='text'>Silverlight 5 was Killed Last Year and then Released Today</title><content type='html'>Woo Hoo...  or who cares?  I'll download it, play with it, but none of my customers will use it until Microsoft starts talking about its future.&lt;br /&gt;&lt;br /&gt;Check out &lt;a href="http://realworldsa.blogspot.com/2011/11/microsoft-moved-my-cheese-again-and-i.html"&gt;Microsoft moved my cheese again and I don't really care to find it.&lt;/a&gt; for all my thoughts on Microsoft.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-8899381237140801658?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/8899381237140801658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=8899381237140801658&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8899381237140801658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8899381237140801658'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/silverlight-5-was-killed-last-year-and.html' title='Silverlight 5 was Killed Last Year and then Released Today'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5835140857548625541</id><published>2011-12-07T16:11:00.000-08:00</published><updated>2011-12-07T16:12:08.726-08:00</updated><title type='text'>The CERT Oracle Secure Coding Standard for Java Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I really like the CERT books. This one is no different, however, it is not one to read from cover to cover, at least not for me. It contains a catalog of rules for programming secure java code. What I have been doing is using it to look up rules about topics found in other resources that I have been using to learn the java environment.&lt;br/&gt;&lt;br/&gt;Although the book contains a great index, there is an online version of this book which is really nice. It contains a really sweet search. I have been using that a lot to find the topics I am interested in, marking them in the book, and then reading about them in the book. The online version of the book contains all the code samples found in the book.&lt;br/&gt;&lt;br/&gt;The is a nice introduction that you will want to completely read. It gives a really nice overview of java programming security issues and introduces the concepts that can make it safer. The concepts in this chapter introduce the chapters that contain the details rules.&lt;br/&gt;&lt;br/&gt;After the introduction the book contains the following chapters. Input Validation and Data Sanitization, Declarations and Initialization, Expressions, Numeric Types and Operations, Object Orientation, Methods, Exceptional Behavior, Visibility and Atomicity, Locking, Thread APIs, Thread Pools, Thread-Safety Miscellaneous, Input Output, Serialization, Platform Security, Runtime Environment, and Miscellaneous.&lt;br/&gt;&lt;br/&gt;There are a ton of nice code samples which show the commonly implemented noncompliant solutions and then the compliant solutions. I mentioned above they are all available online.&lt;br/&gt;&lt;br/&gt;Although there is a free online version, I am not one to read e-books or anything on the computer I don't have to. I am on it way too much to want to read on it when I don't have to.&lt;br/&gt;&lt;br/&gt;I find the author's writing style makes the book an easy read. It is also in a very nice format. Each chapter starts with a list of the rules it covers and a risk assessment summary. They then cover the rules and end with related guidelines and bibliography.&lt;br/&gt;&lt;br/&gt;The thing I like most about the book is that although it makes it clear that it does not cover Design and Architecture, Content, Coding style, Tools, and Controversial Rules, I still believe all these areas will improve if you use the advice found in book.&lt;br/&gt;&lt;br/&gt;All in all I highly recommend this book to every java programmer. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321803957/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321803957"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0321803957&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321803957" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321803957/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321803957"&gt;The CERT Oracle Secure Coding Standard for Java (SEI Series in Software Engineering)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321803957" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5835140857548625541?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5835140857548625541/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5835140857548625541&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5835140857548625541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5835140857548625541'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/cert-oracle-secure-coding-standard-for.html' title='The CERT Oracle Secure Coding Standard for Java Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-2890600810005052551</id><published>2011-12-05T09:24:00.001-08:00</published><updated>2011-12-05T09:24:20.084-08:00</updated><title type='text'>Software Architecture: A Comprehensive Framework and Guide for Practitioners Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This book is truly a holistic view of software architecture.&lt;br/&gt;&lt;br/&gt;This book structures the book around an Architecture Orientation Framework. The framework is based on open question words. A chapter has been dedicate to each. The framework provides a nice common vocabulary that makes team communication easier.&lt;br/&gt;&lt;br/&gt;The chapters of the book include Architectures and Architecture Disciplines (WHAT), Architecture Perspectives (WHERE)' Architecture Requirements (WHY), Architecture Means (WITH WHAT), Organizations and Individuals (WHO), and Architecture Method (HOW).&lt;br/&gt;&lt;br/&gt;Each chapter is laid out in the same logical format. They start with a nice concept map that puts the elements of the chapter into a nice contextual overview. They continue with the body of the chapter and end with a summary and a nice further reading section. Chapter 8 is unique in that it has a ton of really nice checklists to help you assess the various requirements of an architecture.&lt;br/&gt;&lt;br/&gt;There are a ton of topics covered in this book. Some of them are Zachman Framework, Reference Model for Open Distributed Processing, 4+1 View Model, Open Group Architecture Framework, Requirements Characteristics and Types, Organizational Requirements, System Requirements, Qualities and Constraints, Requirements in the Context of Architecture, Loose Coupling, High Cohesion, Separation of Concerns, Abstraction, Modularity, Traceability, Procedural Approaches, Object Orientation, Component Orientation, Model-Driven Software Development, Aspect Orientation, Tactics, Styles, Patterns, Layered Architectures, Dataflow Architectures, Repositories, n-Tier Architecture, Rich Client versus Thin Client, Peer-To-Peer, XML and Other X Standards, Databases and Persistence of Business Objects, Architecture and Development Processes, Architecture Method, and Maintaining the Architecture.&lt;br/&gt;&lt;br/&gt;Software Architecture is necessary for building complex software applications. All software has an architecture. You can either plan that architecture, or just let it happen. The later delivers chaos and legacy software every time. I have seen a lot of teams out there in denial. They deliver software that is over budget, well past promised dates, and so buggy more team members are required to maintain it than were needed to build it.&lt;br/&gt;&lt;br/&gt;This book can help you get a clear understanding of what software architecture is all about. It can help you move past the emerging architecture mess and onto a planned one. One that has the right amount of supporting documentation that keeps the software from being legacy software the day it is delivered.&lt;br/&gt;&lt;br/&gt;One thing I like about this book is that it is not a reinvention of the wheel. The authors do a great job of incorporating industry best practices that have withstood the test of time, as well as included all the newer elements of software architecture that have come about in recent years.&lt;br/&gt;&lt;br/&gt;I have 15 years of software architecture experience and have read tons of other books on the subject. This one will stay near me on all my gigs. It not only makes a good cover to cover read, it also works great as a reference.&lt;br/&gt;&lt;br/&gt;All in all I highly recommend this book to any software architect. The book is good for all levels of experience. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3642197353/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=3642197353"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=3642197353&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=3642197353" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3642197353/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=3642197353"&gt;Software Architecture: A Comprehensive Framework and Guide for Practitioners&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=3642197353" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-2890600810005052551?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/2890600810005052551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=2890600810005052551&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2890600810005052551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2890600810005052551'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/software-architecture-comprehensive.html' title='Software Architecture: A Comprehensive Framework and Guide for Practitioners Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-6127516067100421838</id><published>2011-12-01T09:04:00.000-08:00</published><updated>2011-12-01T11:51:39.327-08:00</updated><title type='text'>Java for Programmers (2nd Edition) Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I have had several Deitel books in the past and I would say my biggest disappointment with this one was finding out that there were no Deitel bugs to find on the cover. I have not had a Deitel book for a while and really enjoyed having one back in my hands.&lt;br/&gt;&lt;br/&gt;If you have never owned a Deitel book, you owe it to yourself to get one sometime. If you are a Java developer, or want to be a Java developer, I would recommend starting with this one.&lt;br/&gt;&lt;br/&gt;I am from the .NET camp and I am doing my best to go all out learning Java. This book has definitely helped with that goal.&lt;br/&gt;&lt;br/&gt;This book covers a ton of information. Some of the topics covered Classes, Objects, Methods, Strings, Control Statements, Arrays, ArrayLists, Object-Oriented Programming, Exception Handling, GUI Components, Graphics, Java 2D, Regular Expressions, File Serialization, Streams, Object Serialization, Generic Collections, Generic Classes, Generic Methods, Applets, Java Web Start, Multithreading, Networking, Accessing Databases with JDBC, JavaServer Faces, Web Services, and UML.&lt;br/&gt;&lt;br/&gt;This book is for the advanced programmer as well as the person new to programming. It teaches a lot of the basics and does a great job of introducing Object-Oriented Programming. There are a ton of code samples and diagrams to help explain the topics. They did a really good job explaining potentially confusing topics like multithreading, streams, and generics.&lt;br/&gt;&lt;br/&gt;The downloadable code is great. All the samples in the book are organized very well and all the code is usable. There are also several full case study projects included.&lt;br/&gt;&lt;br/&gt;I like that the book uses the NetBeans IDE with its examples. I had not used the NetBeans IDE that much and found it to be pretty sweet.&lt;br/&gt;&lt;br/&gt;Another thing I like about the book is the sidebars. They have several different types throughout the book. They include Good Programming Practice, Common Programming Error, Error-Prevention Tip, Performance Tip, Portability Tip, Software Engineering Observation, and Look-and-Feel Observation. They help to point out the important takeaways in a given section.&lt;br/&gt;&lt;br/&gt;If you take the time to read this book from cover to cover, you will definitely learn the ins and outs of Java SE 7. The authors writing style makes it a nice cover to cover read, but they also did a great job of making it a nice reference. They did a really good job on the index, which is not the case with a lot of books coming out today. &lt;br /&gt;&lt;br /&gt;All in all I highly recommend this book as a learning resource for Java.&amp;nbsp; It covers a ton of topics and covers them in detail with plenty of examples.&amp;nbsp; I would expect to find this in any good Java programmer's library.&lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0132821540/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=0132821540"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0132821540&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0132821540&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0132821540/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=0132821540"&gt;Java&amp;#8482; for Programmers (2nd Edition) (Deitel Developer Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0132821540&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-6127516067100421838?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/6127516067100421838/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=6127516067100421838&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6127516067100421838'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6127516067100421838'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/12/java-for-programmers-2nd-edition-book.html' title='Java for Programmers (2nd Edition) Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5532411312785870204</id><published>2011-11-29T09:44:00.000-08:00</published><updated>2011-11-29T10:08:14.510-08:00</updated><title type='text'>Java Performance Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;Being new to Java I am interested in finding out the low level nettigritty details of the Java HotSpot VM. This book was definitely the right choice for that.&lt;br/&gt;&lt;br/&gt;I must admit being a veteran .NET developer helped when digging into the different concepts and there are a ton of them. One of the things I really liked about the book is that although it leaned towards Oracle, it also included Windows and Solaris.&lt;br/&gt;&lt;br/&gt;There are 12 chapters. Chapter 1: Strategies, Approaches, and Methodologies, Chapter 2: Operating System Performance Monitoring, Chapter 3: JVM Overview, Chapter 4: JVM Performance Monitoring, Chapter 5: Java Application Profiling, Chapter 6: Java Application Profiling Tips and Tricks, Chapter 7: Tuning the JVM, Step by Step, Chapter 8: Benchmarking Java Applications, Chapter 9: Benchmarking Multitiered Applications, Chapter 10: Web Application Performance, Chapter 11: Web Services Performance, and Chapter 12: Java Persistence and Enterprise Java Beans Performance.&lt;br/&gt;&lt;br/&gt;The book ends with two great appendices. HotSpot VM Command Line Options of Interest and Profiling Tips and Tricks Example Source Code.&lt;br/&gt;&lt;br/&gt;The authors do a great job of introducing a lot of different tools as well as the useful commands lines needed for performance monitoring, profiling, and tuning. Although there are a few that only work on Solaris and Linux the author provides alternatives for Windows and Mac users where possible. They do a great job introducing VisualVM and NetBeans Profiler. The coverage of Adaptive Tuning and Garbage Collection in these sections was really great.&lt;br/&gt;&lt;br/&gt;The chapters on Benchmarking are great. This is often an overlooked process. It is really important to have proper benchmarks in place so when performance issues creep up you have a baseline to narrow the problem down with. I have seen plenty of enterprises without them and when performance issues come up they are looking for a needle in a haystack… in the dark.&lt;br/&gt;&lt;br/&gt;The web application and web service chapters are also packed with great advice. Although Glassfish is used a lot of the advice applies to most application servers.&lt;br/&gt;&lt;br/&gt;I really like Appendix A: HotSpot VM Command Line Options of Interest. It contains a really nice list of the HotSpot command lines options that are related to performance.&lt;br/&gt;&lt;br/&gt;My one gripe is that Appendix B contains some really nice code examples, but it does not appear there are any plans to make the code available for download.&lt;br/&gt;&lt;br/&gt;I found the authors writing style made the book a really easy read especially for such low level complex topics.&lt;br/&gt;&lt;br/&gt;All in all if you have anything to do with Java development this book has got to be on your shelf.&lt;br/&gt;&lt;br/&gt;&lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0137142528/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0137142528"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0137142528&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0137142528&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0137142528/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0137142528"&gt;Java Performance&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0137142528&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5532411312785870204?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5532411312785870204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5532411312785870204&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5532411312785870204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5532411312785870204'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/11/java-performance-book-review.html' title='Java Performance Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-3519281529617002676</id><published>2011-11-27T07:45:00.000-08:00</published><updated>2011-11-29T10:43:47.854-08:00</updated><title type='text'>Microsoft moved my cheese again and I don't really care to find it.</title><content type='html'>Over the years Microsoft has not only moved my cheese, they have also quite often eaten it.&lt;br /&gt;&lt;br /&gt;I used to stay tuned into what Microsoft was saying about its direction, but over the last year or so their attitude of keeping things hush hush until the last second has disconnected me from them.  Now I find I am rather enjoying not being tuned in.  &lt;br /&gt;&lt;br /&gt;I have been finding life much easier not pushing Microsoft down people's throats and a lot less disappointing.  If I never experience the level of anguish Silverlight, Workflow, UML, MSF, DSL, and DNA caused me again, I will probably have 5 to 10 years added to my life.&lt;br /&gt;&lt;br /&gt;With Window 8 and Metro around the corner, in the past I would find myself much more excited.  Truthfully, I am not.  I want to be, but Microsoft has put such a bad taste in my mouth, I just don't want to follow them down another road to nowhere.  Sure, I downloaded it the second it was available and started playing with it, but I am not putting any real energy into thinking about its potential.  I have done that way too many times over the years to know Microsoft's bleeding edge will drain you like a Vampire. &lt;br /&gt;&lt;br /&gt;My title on my resume and blog has been changed from .NET Software Architect to just Software Architect for several months now.  Officially I am currently filling the role of an Enterprise Architect, but my passions are Software Process Engineering and Software Architecture, so that is primarily what I spend my free time learning more about.&lt;br /&gt;&lt;br /&gt;With a major Java project on the horizon I have been burying myself in getting familiar with the Java world.  I find I like the freedom that comes with it.  Sure Oracle is at the top of the food chain, but there are a lot more options in Java especially the ability to choose your IDE.  There are a lot more open source tools that are mature in the Java world too.&lt;br /&gt;&lt;br /&gt;I do a lot with SharePoint custom development, but with the downfall of Silverlight I don't have much interest in that.  I saw Silverlight as the answer to the horrible web part programming model.  I have yet to see anyone write SharePoint web parts that aren't spaghetti code.  Every major web part implementation I have seen has been a big ball of mud, and I have seen a lot.  I moved to Silverlight for web parts as soon as I could.  It was a great programming model.&lt;br /&gt;&lt;br /&gt;Microsoft continues to play the top secret game with regards to Silverlight so rumors of lack of browser support in the next year or two are being allowed to flourish.   I am not willing to tell customers they should spend a year or two investing in Silverlight just so they can start over when they finally start reaching maturity.  So for now, because of Silverlight, SharePoint custom development is off my list of recommendations as well.&lt;br /&gt;&lt;br /&gt;I am back to square one with regards to recommending internal enterprise applications be implemented with WPF for now, and then XAML for Windows on Windows 8.  No more browser context to have to worry about except for the external applications that will be ASP.NET or MVC.  If I get to control the requirements for the users desktops of the external applications, they will also be done with WPF and XAML for Windows.  I have not been a fan of browser applications and that isn't going to change with HTML5.  They are still going to be big balls of mud architectures implemented with a quagmire of spaghetti code.&lt;br /&gt;&lt;br /&gt;I do think Metro will do well on phones and slates, but I also think they are just as lost as ever when it comes to direction with their development platform.  Too many cooks in the kitchen have taken what could have been a great platform for development and added way too many ingredients then tried to cover them up with more ingredients without telling us.  I think Metro will mainly do well because a lot of people have a lot invested in Microsoft and those people need it to do well.  They will invest in it with blinders on and that perceived success will be interpreted as a success.&lt;br /&gt;&lt;br /&gt;I am not the only one missing cheese.  Right now I feel Microsoft is still desperately searching for the cheese that Steve Jobs has been eating up for the past several years.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;UPDATE:&lt;/strong&gt;&lt;br/&gt;I highly recommend reading Kevin Hoffman's excellent follow up to this post &lt;a target="_blank" href="http://www.kotancode.com/2011/11/29/microsoft-and-the-movement-of-cheese/"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-3519281529617002676?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/3519281529617002676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=3519281529617002676&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3519281529617002676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3519281529617002676'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/11/microsoft-moved-my-cheese-again-and-i.html' title='Microsoft moved my cheese again and I don&apos;t really care to find it.'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5922587979048711171</id><published>2011-11-25T19:09:00.001-08:00</published><updated>2011-11-25T19:10:26.565-08:00</updated><title type='text'>Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I still remember the first few pages of &lt;a href="http://www.amazon.com/gp/product/0201615932/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0201615932"&gt;Managing Software Requirements: A Unified Approach (The Addison-Wesley Object Technology Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0201615932&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;. I was in BWI waiting on my daughter's flight to arrive. The book opened with such a great beginning I knew I was going to love it. In a nutshell what I heard the authors say was we have years of experience that you don't, let us show you what we have learned so you don't have to repeat our mistakes. That is my number one reason for reading books. The message at the beginning of this book is the same.&lt;br/&gt;&lt;br/&gt;I feel this is the first complete book on what an enterprise level agile process should look like. What baffles me is the number of enterprises I have been in that have not come close to implementing 10% of the process this book outlines, yet they call themselves agile and lean. The one thing this book brings to light is just how complex and advanced agile processes are. Like the book says, "it is not easy, it is agile".&lt;br/&gt;&lt;br/&gt;This book has the caveat that certain skills are required for the agile teams to be successful. I agree with that completely. The thing I have a hard time with is the fact that agile processes assume such skill sets are readily available. They aren't. That is why I see such a mess in 90% of the attempts I have seen when enterprises attempt to go agile. Almost all of them will claim to be successful at implementing their agile processes, but budgets and bugs don't lie. Agile does not equate to simple or easy, actually the opposite is true.&lt;br/&gt;&lt;br/&gt;So then does that mean agile methods should be avoided and this book is not worth reading? Absolutely not. It is one of the few books that may just help you implement a successful agile enterprise environment. If nothing else, it does not pull punches, so it will enlighten you as to just how difficult it is to pull it off. It is a must read for anyone out there claiming to be running an agile enterprise.&lt;br/&gt;&lt;br/&gt;This book is unique in that it provides a complete view of all the roles throughout the enterprise that are involved with the process and does a great job of defining the activities they are involved with. The book calls the process Agile Enterprise Big Picture: Scaled Agile Delivery Model, or the Big Picture for short. The process has three levels, the Team level, the Program level, and the portfolio level.&lt;br/&gt;&lt;br/&gt;The book starts out with a really cool overview of software development process models. The chapter goes from Waterfall to Spiral, RAD, RUP to Crystal, Scrum, XP, FDD, DSDM, Open UP, Kanban to Enterprise-Scale Adaptive Processes.&lt;br/&gt;&lt;br/&gt;The rest of part one dedicates four more chapters to introducing the Agile Enterprise Big Picture: Scaled Agile Delivery Model (the Big Picture).&lt;br/&gt;&lt;br/&gt;The book has three more parts, one for each process level. The Team level, the Program level, and the portfolio level. Each part has several chapters that drill deep into the details of each level.&lt;br/&gt;&lt;br/&gt;One of the things I really like about the book is that it acknowledges the importance of software architecture. It does not go along with the common agile "emergent architecture" view. The book advocates intentional architecture. It also acknowledges project managers and doesn't just drop them from the picture.&lt;br/&gt;&lt;br/&gt;Another thing I really like is that modernization is realized through the architectural epics. Modernization strategies are usually nonexistent in most enterprises until they find it is too late. Then they are implemented in a haphazard way creating so much more damage than necessary. This book makes modernization strategies first class citizens through architectural epics.&lt;br/&gt;&lt;br/&gt;If you are in an enterprise environment and you are attempting to implement agile processes, this book is the book to have. Agile requires experience. This book is filled with experience from the trenches. The book is written well and the author's writing style makes it an easy read. As easy as you can make a topic that is so complex.&lt;br/&gt;&lt;br/&gt;This books takes all the activities, artifacts, roles, responsibilities, and processes that have always made a successful software development project using classic software development processes such as the unified process and the RUP, and repositions them in their agile context.&lt;br/&gt;&lt;br/&gt;All in all I highly recommend this book to anyone working in an enterprise level software development environment. The developer, project manager, tester, software architect, process engineer, business analyst, scrum master, product owner, project sponsor, CIO, CFO, and CEO could benefit from reading this book, even if you are not in an agile shop. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321635841/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0321635841"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0321635841&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321635841&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321635841/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0321635841"&gt;Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise (Agile Software Development Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321635841&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5922587979048711171?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5922587979048711171/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5922587979048711171&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5922587979048711171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5922587979048711171'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/11/agile-software-requirements-lean.html' title='Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5316783284561556581</id><published>2011-11-12T06:18:00.000-08:00</published><updated>2011-11-12T06:19:05.877-08:00</updated><title type='text'>Service Design Patterns: Fundamental Design Solutions for SOAP/WSDL and RESTful Web Services Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I have been a fan of the Martin Fowler Signature Series for a long time. This book fit into the series great and filled in a missing link in the series.&lt;br/&gt;&lt;br/&gt;One of the things I liked seeing was that the author does not think web services are a silver bullet. Right off the bat he warns that web services should be reserved for situations which out-of-process and cross-machine calls "make sense".&lt;br/&gt;&lt;br/&gt;The book is broken down into seven chapters, an appendix, and a nice glossary. The chapters include From Objects to Web Services, Web Service API Styles, Client-Service Interactions, Request and Response Management, Web Service Implementation Styles, Web Service Infrastructures, Web Service Evolution, and an appendix Reference to External Patterns.&lt;br/&gt;&lt;br/&gt;I felt the book worked at the right level of abstraction digging into details when needed to shed a deeper light on the subject at hand.&lt;br/&gt;&lt;br/&gt;Each chapter contains several related patterns. Each pattern answers a primary question. For example chapter one Web Service API Styles cover the following 3 patterns that answer the question that follows below.&lt;br/&gt;&lt;br/&gt;RPC API - How can clients execute remote procedures over HTTP?&lt;br/&gt;&lt;br/&gt;Message API - How can clients send commands, notifications, or other information to remote systems over HTTP while avoiding direct coupling to remote procedures?&lt;br/&gt;&lt;br/&gt;Resource API - How can a client manipulate data managed by a remote system, avoid direct coupling to remote procedures, and minimize the need for domain-specific APIs?&lt;br/&gt;&lt;br/&gt;The other patterns covered in the book include Request/Response, Request/Acknowledge, Media Type Negotiation, Linked Service, Service Controller, Data Transfer Object, Request Mapper, Response Mapper, Transaction Script, Datasource Adapter, Operation Script, Command Invoker, Workflow Connector, Service Connector, Service Descriptor, Asynchronous Response Handler, Service Interceptor, Idempotent Retry, SOA Infrastructures, Breaking Changes, Versioning, Single Message Argument, Dataset Amendment, Tolerant Reader, and Consumer-Driven Contract.&lt;br/&gt;&lt;br/&gt;Like the other pattern catalogs the book contains an &lt;a target="_blank" href="http://www.servicedesignpatterns.com/" style="font-weight: 700"&gt;online catalog of the patterns&lt;/a&gt; in the book. Although the online catalog gives you an overview of each pattern, the book contains a lot more detail about each one. I like the online catalogs. I often visit them to spark my memory about the patterns that I have read about in the books.&lt;br/&gt;&lt;br/&gt;I like that the book limited its scope to the fundamental patterns relevant to web service design. It does not try to be all encompassing, which I think made it better than if the author had tried to be. The book does not cover enterprise integration patterns, workflow or orchestration, security, event-driven architecture, or choreography. The book does include a nice reference to external patterns in the appendix that provides a summary and where to go for more information.&lt;br/&gt;&lt;br/&gt;I think each pattern is explained really well and the examples used do a great job of showing a possible implementation. I liked the end of chapter 7 where the author provides a nice summary about how each pattern hinders or promotes evolution.&lt;br/&gt;&lt;br/&gt;The book also includes a nice glossary that provides quick reference to additional information on topics mentioned in the book.&lt;br/&gt;&lt;br/&gt;The author does an awesome job of providing examples in different technologies throughout the book. The author uses a nice mixture of .NET and Java technologies. Some of the technologies used are JAX-WS, JAX-RS, JAXB, JSON, XML, Xpath, XSLT, WSDL, DataContractSerializer, XmlSerializer, and WCF. To top it off the author's writing style makes the reading really easy.&lt;br/&gt;&lt;br/&gt;All in all I think every architect and developer should have this book on their shelf. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/032154420X/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=032154420X"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=032154420X&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=032154420X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/032154420X/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=032154420X"&gt;Service Design Patterns: Fundamental Design Solutions for SOAP/WSDL and RESTful Web Services&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=032154420X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5316783284561556581?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5316783284561556581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5316783284561556581&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5316783284561556581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5316783284561556581'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/11/service-design-patterns-fundamental.html' title='Service Design Patterns: Fundamental Design Solutions for SOAP/WSDL and RESTful Web Services Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-8416690501310692090</id><published>2011-11-08T18:43:00.000-08:00</published><updated>2011-11-08T18:45:14.718-08:00</updated><title type='text'>Essential Skills for the Agile Developer: A Guide to Better Programming and Design Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I have been a fan of the Net Objectives books since the first edition of &lt;a target="_blank" href="http://www.amazon.com/gp/product/0321247140/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0321247140"&gt;Design Patterns Explained: A New Perspective on Object-Oriented Design (2nd Edition)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321247140&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;. That is still my favorite design patterns book.&lt;br/&gt;&lt;br/&gt;When it comes to the agile movement I still remain torn. I watch it change and shift the industry's development processes to improve the customer satisfaction delivered by software teams successfully executing the processes, while at the same time I watch more teams use it as an excuse for the chaos they live in.&lt;br/&gt;&lt;br/&gt;The good news is books like this one offer sound advice on achieving agility. The bad news is the agile team members I mentioned above that are living in daily chaos never pick them up. They are too busy putting out the day's hottest fire.&lt;br/&gt;&lt;br/&gt;Moving a team that cannot produce using waterfall or RUP to a shiny new agile process will do nothing but make them produce crappier software. An inexperienced team that can't produce quality software with one process won't start producing quality by claiming to be agile.&lt;br/&gt;&lt;br/&gt;I tell you all that because I want you to understand where I come from when it comes to agile methodologies. I am not an Agile Movement Zealot, but I find the guidance provided by this book very valuable.&lt;br/&gt;&lt;br/&gt;The book has chapters on Programming by Intention, Separate Use from Construction, Define Tests Up Front, Shalloway’s Law and Shalloway’s Principle, Encapsulate That!, Interface-Oriented Design, Acceptance Test—Driven Development (ATDD), Avoid Over- and Under-Design, Continuous Integration, Commonality and Variability Analysis, Refactor to the Open-Closed, Needs versus Capabilities Interfaces, and When and How to Use Inheritance.&lt;br/&gt;&lt;br/&gt;The book ends with three Appendixes- Overview of the Unified Modeling Language (UML), Code Qualities, and Encapsulating Primitives.&lt;br/&gt;&lt;br/&gt;Each topic is considered a Trim Tab. According to Wikipedia Trim tabs are small surfaces connected to the trailing edge of a larger control surface on a boat or aircraft, used to control the trim of the controls. Boats with outboard engines will often have trim tabs attached to the lower unit of the engine. Many airplanes (including gliders) have trim tabs on their elevators, as a simple method of providing trim in the longitudinal axis. Richard Buckminster “Bucky” Fuller used of trim tabs as a metaphor for leadership and personal empowerment. The authors of the book say they are the actions and insights that give the most understanding with the least investment.&lt;br/&gt;&lt;br/&gt;The first chapter, programming by intention is one topic that still is kind of weird to me. Every explanation of what it is could just be classified as common sense to me. I agree with everything that goes along with programming by intention, I just don't understand why or how you would not program like that.&lt;br/&gt;&lt;br/&gt;Separate Use from Construction is a nice perspective on the reasons for using dependency injection, ORM mappers, and not over designing when using such tools.&lt;br/&gt;&lt;br/&gt;Define Tests Up Front explains why testing is not just about testing, but also about code quality.&lt;br/&gt;&lt;br/&gt;Shalloway’s Law and Shalloway’s Principle is all about reducing redundancy.&lt;br/&gt;&lt;br/&gt;I am glad the book includes the chapter on Commonality and Variability Analysis. It is just as valuable today as it was when it appeared in the first edition of &lt;a target="_blank" href="http://www.amazon.com/gp/product/0321247140/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0321247140"&gt;Design Patterns Explained: A New Perspective on Object-Oriented Design (2nd Edition)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321247140&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;.&lt;br/&gt;&lt;br/&gt;The best thing about this book is that each subject is truly the actions and insights that give the most understanding with the least investment. Each chapter is a little nugget of wisdom that has been tested over time. The book is all about one of the cores that allows agility to be a reality on a project and that is great programming practices.&lt;br/&gt;&lt;br/&gt;Over all I found the book a very easy and enjoyable read. I highly recommend it to developers of all languages. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321543734/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=0321543734"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0321543734&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321543734&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321543734/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=0321543734"&gt;Essential Skills for the Agile Developer: A Guide to Better Programming and Design&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321543734&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-8416690501310692090?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/8416690501310692090/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=8416690501310692090&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8416690501310692090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8416690501310692090'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/11/essential-skills-for-agile-developer.html' title='Essential Skills for the Agile Developer: A Guide to Better Programming and Design Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-3737862736345228028</id><published>2011-11-03T10:24:00.000-07:00</published><updated>2011-11-03T10:49:10.753-07:00</updated><title type='text'>Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives (2nd Edition) Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;Some might look at my book collection and think I have hoarding issues. If I had to pick just one Software Architecture book to keep, this would be the one.&lt;br/&gt;&lt;br/&gt;This is the second edition of one of the best books written on software systems architecture. If you are in the software development industry, you should read this book. If you are a Software Architect, you must read this book.&lt;br/&gt;&lt;br/&gt;This book covers a vast amount of material but it ties it all together in a way that paints a complete picture of what software systems architecture is all about.&lt;br/&gt;&lt;br/&gt;The book starts out covering architecture fundamentals. There is a chapter on Software Architecture Concepts, Viewpoints and Views, Architectural Perspectives, and The Role of the Software Architect.&lt;br/&gt;&lt;br/&gt;It then presents a process for software architecture and explains all the elements involved with the process. This part of the book contains chapters on The Architecture Definition Process, Concerns, Principles and Decisions, Identifying and Engaging Stakeholders, Identifying and Using Scenarios, Using Styles and Patterns, Producing Architectural Models, and Evaluating the Architecture.&lt;br/&gt;&lt;br/&gt;Next is a viewpoint catalog. The part of the book goes into the details of the different viewpoints the authors recommend considering as part of you architectural analysis. The viewpoints include Context, Information, Functional, Concurrency, Information, Development, Deployment, and Operational. Each viewpoint is a separate chapter. This section ends with a chapter that show how to achieve consistency across views.&lt;br/&gt;&lt;br/&gt;After the viewpoint catalog the authors present a perspective catalog. Perspectives ensure that quality properties that cross several views are accounted for and analyzed. The perspective catalog includes Security, Performance and Scalability, Availability and Resilience, Evolution, Accessibility, Development Resource, Internationalization, Location, Regulation, and Usability.&lt;br/&gt;&lt;br/&gt;The book ends with a chapter that ties everything together and a nice appendix that shows the relationship of the author's Viewpoints and Perspectives to other processes. They include Kruchten 4+1, RM-ODP, Siemens, SEI's Views and Beyond, Garland and Anthony, IAF, Zachman, and TOGAF.&lt;br/&gt;&lt;br/&gt;I am lucky they came out with a second edition because my first edition is getting pretty beat up. It has scribbling from tons of different projects in it. The first edition has not left my side since I purchased it and this second edition won't leave my side either.&lt;br/&gt;&lt;br/&gt;One of the things I like about this book is that the authors complete the picture. They don't say here is one example of a pitfall, concern, or tactic, they present a nice long list that really helps lead you through the process. Keeping this book handy helps me think of things I am sure to overlook.&lt;br/&gt;&lt;br/&gt;Another thing I like about this book is that it is not a reinvention of the wheel. The authors do a great job of incorporating industry best practices that have withstood the test of time, as well as included all the newer elements of software architecture that have come about in recent years.&lt;br/&gt;&lt;br/&gt;If you have the first edition, the second edition is worth getting. There is updated information scattered throughout the book as well as a new Context viewpoint. There has been 132 pages added.&lt;br/&gt;&lt;br/&gt;I said this about the first version and it still holds true with the second edition… Even if you are not an architect it is a great book to buy so you understand what to expect out of one. I may buy a few extra copies to give out on projects so they understand why I am supposed to be there. Anyone reading this book should have a great and complete understanding of architecture and the value it adds to a project. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/032171833X/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=032171833X"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=032171833X&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=032171833X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/032171833X/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=032171833X"&gt;Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives (2nd Edition)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=032171833X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-3737862736345228028?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/3737862736345228028/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=3737862736345228028&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3737862736345228028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3737862736345228028'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/11/software-systems-architecture-working.html' title='Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives (2nd Edition) Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-1061385075751908876</id><published>2011-10-27T13:30:00.000-07:00</published><updated>2011-10-27T13:31:15.850-07:00</updated><title type='text'>Programming Reactive Extensions and LINQ Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This book ended up being half the size it was advertised at when I pre-ordered it back in September. Amazon was kind enough to make up for it. I thank them. The author and the publisher also apologized for the miscalculation.&lt;br/&gt;&lt;br/&gt;Although it is small this book gets 5 out of 5 stars. I recommend this book to anyone who wants to learn Reactive Extensions. The book does a great job of introducing a potentially confusing topic.&lt;br/&gt;&lt;br/&gt;I have already spent a lot of time digging through Rx. If I had not already delved heavily into Rx, this book would have been perfect for me. I actually wish I had been introduced through this book instead of having to hunt down fragments of information all over the web. As I started reading the book I liked it so much I revisited all the topics I already knew and was happy the book provided me with some new information I had not seen before.&lt;br/&gt;&lt;br/&gt;The book starts out with an introduction to Rx and LINQ and also introduces Enumerable and Observable collections. The book continues with two chapters titled Core LINQ and Core RX where it digs deep into each topic's syntax, most useful operators, IEnumerable and IObservable. The next chapter Practical Rx provides some examples of real world use and digs deeper into some of the more advanced features.&lt;br/&gt;&lt;br/&gt;Chapter 5, Inside Rx, continues introducing more of the advance operators like Window, Buffer, When, And, Then, OnCompleted, and OnError. Chapter 6 in a chapter on using LINQ to SQL that includes a small Windows Phone 7.1 SDK sample that is pretty cool. The next chapter is Rx for JavaScript followed by one tilted ReactiveUI and then a small one tilted Testing with Rx.&lt;br/&gt;&lt;br/&gt;The ReactiveUI chapter could be confusing. It is not very clear without all the downloadable code and although the chapter discusses the ReactiveUI Library, the book never really elaborates on the fact that it is available for download on github. ReactiveUI is pretty sweet and you should spend the time to get your head around it.&lt;br/&gt;&lt;br/&gt;One of the things I like about he book is the authors make use of LINQPad. I find myself using LINQPad as much as I do Visual Studio. I use it for data analysis instead of SQL Server Management Studio. If you find you like LINQPad, get the subscription to enable IntelliSense. It is well worth it.&lt;br/&gt;&lt;br/&gt;The bad news about the code is all the code from the book is currently not available. The good news about the code is some of it is on github and the authors plan on making it all available. The great news about the code is that they are enabling it for LINQPad.&lt;br/&gt;&lt;br/&gt;I really found this book to be an enjoyable read. The authors did a great job of shortening the Rx learning curve. The way they explain things make the complex things easy to understand.&lt;br/&gt;&lt;br/&gt;I highly recommend this book to anyone interested in learning how to use Rx. By the way, that should be every .NET developer out there. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1430237473/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1430237473"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=1430237473&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1430237473&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1430237473/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1430237473"&gt;Programming Reactive Extensions and LINQ&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1430237473&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-1061385075751908876?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/1061385075751908876/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=1061385075751908876&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1061385075751908876'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1061385075751908876'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/10/programming-reactive-extensions-and.html' title='Programming Reactive Extensions and LINQ Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5322242015302838662</id><published>2011-10-25T10:16:00.001-07:00</published><updated>2011-10-25T10:16:55.940-07:00</updated><title type='text'>Effective Project Management Traditional, Agile, Extreme Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I am not a project manager but as an architect I find I am usually managing a project and the team assigned to it. More often than not, a real project manager is not available.&lt;br/&gt;&lt;br/&gt;I bought this book to find out what the latest project management best practices are. I own the 4th edition of this book and really liked it.&lt;br/&gt;&lt;br/&gt;This book starts out defining what a project is and what project management is and then it covers the PMBOK Process Groups and Knowledge areas in great detail. After that it covers different types of life cycles like Agile, Extreme, and Traditional. He then covers topics like Portfolio Management and Process Improvement.&lt;br/&gt;&lt;br/&gt;What I liked most about the book was the detail he goes into. This book contains a vast amount of information. He does a good job of providing summary overviews of what will be covered and then covering it in detail.&lt;br/&gt;&lt;br/&gt;I will admit the quantity of information can become overwhelming at times. There is a ton of it.&lt;br/&gt;&lt;br/&gt;One of the things I really like is that the author has created accompanying presentations. They are ready to use for training so your Project Support Office could use them for training across your enterprise.&lt;br/&gt;&lt;br/&gt;One of my favorite chapters was Managing Distressed Projects. It offers great insight into how projects become distressed as well as great advice on how to get your head above water again.&lt;br/&gt;&lt;br/&gt;On a decent size project I prefer to have a good project manager that I can partner with, it just makes the projects ten times more enjoyable. Mainly because I get removed from a lot of the politics.&lt;br/&gt;&lt;br/&gt;Notice I said a good project manager above. I have had my share of bad ones and they can make the project pure misery.&lt;br/&gt;&lt;br/&gt;I haven't met many project managers armed with the knowledge and the tools found in this book. I wish there were more. If you are a Project Manager, I beg you to read this book. If you are a CIO, Architect, Developer, or any other stakeholder on project large enough to have a Project manager, it would be good for you to read this book so you know what the project manager is working to accomplish during different phases of the project.&lt;br/&gt;&lt;br/&gt;All in all I think anyone involved with decent size software development project should read this book. It will definitely help improve your project's effectiveness accomplishing adding business value. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/111801619X/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=111801619X"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=111801619X&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=111801619X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/111801619X/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=111801619X"&gt;Effective Project Management: Traditional, Agile, Extreme&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=111801619X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5322242015302838662?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5322242015302838662/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5322242015302838662&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5322242015302838662'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5322242015302838662'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/10/effective-project-management.html' title='Effective Project Management Traditional, Agile, Extreme Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-8352707324868162239</id><published>2011-10-24T10:08:00.000-07:00</published><updated>2011-10-24T10:09:22.284-07:00</updated><title type='text'>Microsoft SharePoint 2010 Development with Visual Studio 2010 Expert Cookbook Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;"Expert Cookbook" are the last two words in the title for a good reason. This book is for the advanced SharePoint developer. The book is a collection of small recipes that dig into some of the more advanced SharePoint 2010 programming topics. It does not mess around with introductions to topics, it just jumps right into the details of the solution.&lt;br/&gt;&lt;br/&gt;The book includes chapters on List and Event Receivers, Workflows, Advanced Workflows, List Definitions and Content Types, Web Parts, Web Services and REST, and Working with the Client Object Model.&lt;br/&gt;&lt;br/&gt;The author has made the code available for download. It is well organized and very usable, except for to old folders of code left in the upload. I just ignored them. You do need SharePoint 2010 on your Visual Studio 2010 development box.&lt;br/&gt;&lt;br/&gt;The books examples build on one another so the best way to read this book is from cover to cover. The author has a nice writing style so that is not difficult to do.&lt;br/&gt;&lt;br/&gt;I like that the examples where kept simple. It allows you to follow along and learn the technology, instead of having to learn the logic behind the sample. This also kept the sections of the chapters short and fast to read. The downside to this was that the examples were not all clean enough to be used as is.&lt;br/&gt;&lt;br/&gt;An example of this would be when the author shows you how to do list item validation and create a custom error page. The user is told they entered incorrect data, but then all the data they entered is lost without a chance to correct the mistake and resubmit.&lt;br/&gt;&lt;br/&gt;The thing I liked most about this book is that it get directly to the subject and stays there. It does not have a bunch of filler text and other non-sense that you find in a lot of books these days.&lt;br/&gt;&lt;br/&gt;I also liked the solutions presented worked. The downloadable code needed the expected changes, like URLs, but it worked.&lt;br/&gt;&lt;br/&gt;If you are a serious SharePoint 2010 developer, you should take the time to read this book.&lt;br/&gt;&lt;br/&gt;You can read more about it &lt;a target="_blank" href="http://www.amazon.com/gp/product/1849684588/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1849684588"&gt;here&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1849684588&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; and &lt;a target="_blank" href="http://www.packtpub.com/microsoft-sharepoint-2010-development-with-visual-studio-2010-expert-cookbook/book"&gt;here&lt;/a&gt;. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a href="http://www.amazon.com/gp/product/1849684588/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1849684588"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=1849684588&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1849684588&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a href="http://www.amazon.com/gp/product/1849684588/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1849684588"&gt;Microsoft SharePoint 2010 Development with Visual Studio 2010 Expert Cookbook&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=1849684588&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-8352707324868162239?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/8352707324868162239/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=8352707324868162239&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8352707324868162239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8352707324868162239'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/10/microsoft-sharepoint-2010-development.html' title='Microsoft SharePoint 2010 Development with Visual Studio 2010 Expert Cookbook Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-8504345128120964654</id><published>2011-10-06T10:25:00.000-07:00</published><updated>2011-10-07T06:12:19.334-07:00</updated><title type='text'>12 Essential Skills for Software Architects Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;The two things I like least about being a software architect is doing documentation and exercising social soft skills. On a lot of projects there comes a time when there is nothing I want to do more than explain to a business user why they are wrong. Dead wrong. We all know that does not fair well with the egos most business users have, and does not fair well with your potential future on the given project. This book contains information that will show you how to use different skills to help you graciously handle the harder conversations.&lt;br/&gt;&lt;br/&gt;This book is broken into three sections which cover, relationship skills, personal skills, and business skills.&lt;br/&gt;&lt;br/&gt;Relationship skills has chapters on leadership, politics, gracious behavior, communication, and negotiation.&lt;br/&gt;&lt;br/&gt;Personal skills has chapters on context switching, transparency, and passion.&lt;br/&gt;&lt;br/&gt;Business skills has chapters on pragmatism, vision, business knowledge, and innovation.&lt;br/&gt;&lt;br/&gt;I think the author does a great job covering the necessary soft skills for an architect. I really like the way the author shows the different skill levels using the technical glass ceiling.&lt;br/&gt;&lt;br/&gt;The author's main point with context switching is that you must be able to do it and he provides some great tips on getting good at it. Another perspective that I find important is understanding how much time it wastes no matter how good you get at it. You also need to be aware that your team members may not be good at it. If you don't have a good project manager on the team running interference and limiting context switching, it falls on the architect to run interference. I find it more important to manage context switching than it is to attempt to master it.&lt;br/&gt;&lt;br/&gt;Another thing I found with the book is it is all about the positive. That is not bad, but in the real world everything is not always positive and does not always end on a positive note. In the consulting world you are bound to end up with a teammate that is either not qualified for the role they are in or they are not mature enough for the position they are in. Although the ideal situation is to mentor them into becoming the ideal employee, time and budget constraints don't always allow for that. You will need to recommend having them replaced if you want to do right by your client. This is a much rarer situation in a full time employee environment. In those environments employees are not as disposable. Consultants are expected to hit the ground running.&lt;br/&gt;&lt;br/&gt;Overall I found the book's content all great advice, but I find it more useful in a full time employee setting than in a consulting setting. As an employee I have to get along with everyone, I need to play political game, and I have to get deeply involved in the business. I am there for the long haul.&lt;br/&gt;&lt;br/&gt;As a consultant I am not there for the long haul, I am there to accomplish a mission with a limited scope and usually with limited resources. I usually always start with all the advice in the book with regards to educating the business, playing some politics, and negotiating, but with limits. Those limits are in place to ensure a successful engagement. I find that I do not always have the luxury to of being politically correct or always being gracious. As a consultant you can get away with it since you are a high priced outside resource not considered part of the family, and in many cases babies need to be called ugly as graciously as possible.&lt;br/&gt;&lt;br/&gt;I am not saying I disagree with anything in this book. I think it is all great valuable advice and dead on. I just think there is a little more to the story. That said, this book is the place to start learning the soft skills needed to become a successful software architect.&lt;br/&gt;&lt;br/&gt;I think the book would be great for anyone who wants to improve relationship, personal, and business skills. Although the book is written in the context of Software Architecture, anyone could benefit from the advice in the book. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321717295/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=0321717295"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0321717295&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321717295&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321717295/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=0321717295"&gt;12 Essential Skills for Software Architects&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321717295&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-8504345128120964654?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/8504345128120964654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=8504345128120964654&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8504345128120964654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8504345128120964654'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/10/12-essential-skills-for-software.html' title='12 Essential Skills for Software Architects Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-6467836342832433176</id><published>2011-10-04T09:46:00.001-07:00</published><updated>2011-10-04T09:47:12.400-07:00</updated><title type='text'>Java The Complete Reference, 8th Edition Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This is a great place to start learning Java. I think the book is good for beginners to start learning Java, as well as great reference for those experienced with Java.&lt;br/&gt;&lt;br/&gt;The book does not use an IDE to create, compile, and run the programs. It uses javac and java commands to compile and run. I used both the SDK command lines and the IntelliJ IDEA Community Edition to compile and run the programs. Both worked fine, but I also have an interest in learning to use IntelliJ IDEA.&lt;br/&gt;&lt;br/&gt;The book covers the Java language, the Java Library, Software Development with Java Beans, Swing, Servlets, and ends with building 2 sample applications.&lt;br/&gt;&lt;br/&gt;The book covers Data Types and Operators, Control Statements, Classes, Objects, Methods, Packages, Interfaces, Exception Handling, Inheritance, I/O, Multithreading, Enumerations, Autoboxing, Static Import, Annotations, Generics, Applets, Events, AWT and Swing, Java's Documentation Comments, Varargs, Networking, Collections, Concurrent API, JavaBeans, and servlets.&lt;br/&gt;&lt;br/&gt;All the code is available for download and is very well organize and usable. It is separated by chapter.&lt;br/&gt;&lt;br/&gt;My favorite part of the book was that it spent a lot of time on UI topics. There were several good chapters on AWT and Swing. I also like the author's writing style. The book is a nice read as well as a good reference.&lt;br/&gt;&lt;br/&gt;My main complaint about this book is that it includes almost all of the &lt;a target="_blank" href="http://www.amazon.com/gp/product/0071606327/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0071606327"&gt;Java, A Beginner's Guide, 5th Edition&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0071606327&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;. Anyone beginning Java would obviously start with &lt;a target="_blank" href="http://www.amazon.com/gp/product/0071606327/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0071606327"&gt;Java, A Beginner's Guide, 5th Edition&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0071606327&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;, but if I was to do it again, I would not bother with &lt;a target="_blank" href="http://www.amazon.com/gp/product/0071606327/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0071606327"&gt;Java, A Beginner's Guide, 5th Edition&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0071606327&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;. The only advantage the &lt;a target="_blank" href="http://www.amazon.com/gp/product/0071606327/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0071606327"&gt;Java, A Beginner's Guide, 5th Edition&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0071606327&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; book offers is that it is more of a tutorial oriented book. It has little extras like self-tests and hands on exercises.&lt;br/&gt;&lt;br/&gt;My main complaint leads to my second complaint. I would have liked to see more on Servlets. There is a chapter that introduces them and then they are used in the sample applications, but I would have liked to see a lot more on them. I know the book is already huge, but if the Java, A Beginner's Guide, 5th Edition was not included in it, there would have been plenty of room for more on Servlets.&lt;br/&gt;&lt;br/&gt;I have a C# background so the concepts and syntax were not that hard to pick up. What I needed was an overview of the libraries that are available with Java. I felt I got what I needed to jump start my Java learning path. I will be keeping this book handy to use as a reference in the future.&lt;br/&gt;&lt;br/&gt;All in all I find this a great book for the beginner and the experienced Java programmer. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0071606300/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=0071606300"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0071606300&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0071606300&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0071606300/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=0071606300"&gt;Java The Complete Reference, 8th Edition&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0071606300&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-6467836342832433176?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/6467836342832433176/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=6467836342832433176&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6467836342832433176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6467836342832433176'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/10/java-complete-reference-8th-edition.html' title='Java The Complete Reference, 8th Edition Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-6436513571816578398</id><published>2011-09-28T17:17:00.000-07:00</published><updated>2011-09-28T17:22:14.519-07:00</updated><title type='text'>Agile Software Engineering with Visual Studio Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I own the first version of this book and was looking forward to the second version. I would say if you want to get familiar with doing Scrum with TFS this is the book you want. It really does not cover the other templates at all. I am not saying that is bad, but it is not what I expected or wanted. I already have read enough on Scrum to last me a lifetime. I wanted to see more on the other templates.&lt;br/&gt;&lt;br/&gt;All that said, if you have not had the opportunity to get familiar with Scrum this is a great place to get started, especially if you use TFS.&lt;br/&gt;&lt;br/&gt;The book starts out with an introduction to agile, Scrum, and Visual Studio. It then digs into Scrum and TFS with chapters on Product Ownership, Running the Sprint, Architecture, Development, Build and Lab, Test, Lessons Learned at Microsoft Developer Division, and Continuous Feedback.&lt;br/&gt;&lt;br/&gt;My favorite chapters were Development, Build and Lab, and Test. The author did a great job of showing all the different features available in TFS and Visual Studio that enable continuous integration, automating testing, and detecting programming errors early. The chapters go into enough detail to give you a really good understanding of the tools available and when to use them.&lt;br/&gt;&lt;br/&gt;The architecture chapter did a good job of showing how to take advantage of the tools in Visual Studio for reverse engineering existing applications. It does not however show you how to use them to architect an application. Instead the author plays the "Emerging Architecture" trump card, and writes it off to it not being needed in agile processes. I guess this is ok, because the tools in Visual Studio are not ready for prime time when it comes to designing an Architecture. They are good for reverse engineering an application. I wholly disagree with the "Emerging Architecture" agile approach and believe it contributes to most of the messes that come out of teams claiming to be agile, but I won't ding the book for it since it is after all what agile prescribes.&lt;br/&gt;&lt;br/&gt;One thing I noticed is there are quite a few typos. They are no big deal, just very obvious ones which was strange.&lt;br/&gt;&lt;br/&gt;Personally I think the book should have been titled "Developing with Visual Studio and TFS using the Scrum Template". That is not a bad thing if that is what you want. The book is well written and an easy read. I think is does what it set out to do and it does it well. It is a top notch book.&lt;br/&gt;&lt;br/&gt;I highly recommend it to anyone looking to learn Scrum and wants to use the TFS tool set to enable your team to accomplish your mission. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321685857/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0321685857"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0321685857&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321685857&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0321685857/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0321685857"&gt;Agile Software Engineering with Visual Studio: From Concept to Continuous Feedback (2nd Edition) (Microsoft .NET Development Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=0321685857&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-6436513571816578398?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/6436513571816578398/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=6436513571816578398&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6436513571816578398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6436513571816578398'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/09/agile-software-engineering-with-visual.html' title='Agile Software Engineering with Visual Studio Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-6070202348355654622</id><published>2011-09-27T10:03:00.000-07:00</published><updated>2011-09-27T10:04:34.710-07:00</updated><title type='text'>Java, A Beginner's Guide, 5th Edition Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;Let’s first set the context of my normal skillset. I am a .NET Software Architect and Developer. I have been 100% in the .NET world since 2001 (with a very little sprinkling of VB6). I recently decided to expand my skillset into the Java and iOS world. This is the first book on my long journey into the world of Java.&lt;br /&gt;&lt;br /&gt;I think this book is great for the person who is new to Java and new to programming.&lt;br /&gt;&lt;br /&gt;Although the book does not use an IDE to create, compile, and run the programs, that does not take away from the book's learning quality.&lt;br /&gt;&lt;br /&gt;I used both the SDK command lines and the IntelliJ IDEA Community Edition to compile and run the programs.&lt;br /&gt;&lt;br /&gt;The book covers the core language in-depth, has a short chapter on Swing, briefly introduces applets, but does not touch on Servlets.&lt;br /&gt;&lt;br /&gt;The book covers Data Types and Operators, Control Statements, Classes, Objects, Methods, Packages, Interfaces, Exception Handling, Inheritance, I/O, Multithreading, Enumerations, Autoboxing, Static Import, Annotations, Generics, Applets, Events, introduces Swing, and using Java's Documentation Comments.&lt;br /&gt;&lt;br /&gt;All the code is available for download and is very well organize and usable. It is separated by chapter.&lt;br /&gt;&lt;br /&gt;The one thing I don't like is that almost this entire book is included with &lt;a href="http://www.amazon.com/gp/product/0071606300/ref=as_li_ss_tl?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=0071606300" target="_blank"&gt;&lt;strong&gt;Java The Complete Reference, 8th Edition&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0071606300&amp;amp;camp=217145&amp;amp;creative=399373" style="border: none !important; margin: 0px !important;" width="1" /&gt;&lt;/strong&gt; which I started to peruse about half way through this one. Buying both was a waste of money. If you simply want to learn the syntax, buy this book, but if you plan on buying Java The Complete Reference, 8th Edition, don't waste your money on this one. Just get &lt;a href="http://www.amazon.com/gp/product/0071606300/ref=as_li_ss_tl?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=0071606300" style="font-weight: 700" target="_blank"&gt;Java The Complete Reference, 8th Edition&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0071606300&amp;amp;camp=217145&amp;amp;creative=399373" style="border: none !important; margin: 0px !important;" width="1" /&gt; .&lt;br /&gt;&lt;br /&gt;The only advantage the Java, A Beginner's Guide, 5th Edition book offers is that it is more of a tutorial oriented book. It has little extras like self tests, hands on exercises, and outtakes called Expert-Q and A.&lt;br /&gt;&lt;br /&gt;I can recommend the book for anyone new to programming or wants to learn the Java syntax, except maybe for the experienced C# developer. For them I would recommend going straight for &lt;a href="http://www.amazon.com/gp/product/0071606300/ref=as_li_ss_tl?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=0071606300" style="font-weight: 700" target="_blank"&gt;Java The Complete Reference, 8th Edition&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0071606300&amp;amp;camp=217145&amp;amp;creative=399373" style="border: none !important; margin: 0px !important;" width="1" /&gt;. Although I think the book is great, it was not difficult to grasp everything in it at a very accelerated rate. I already understood all the concepts and really only need to compare syntax. I am learning much more from the Java The Complete Reference, 8th Edition because it covers more of the Java Library and other topics.&lt;br /&gt;&lt;br /&gt;So, I would absolutely recommend this book for those that like things like self tests, hands on exercises, and outtakes called Expert-Q and A. I would also recommend this book to those that do not plan on buying &lt;a href="http://www.amazon.com/gp/product/0071606300/ref=as_li_ss_tl?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=0071606300" style="font-weight: 700" target="_blank"&gt;Java The Complete Reference, 8th Edition&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0071606300&amp;amp;camp=217145&amp;amp;creative=399373" style="border: none !important; margin: 0px !important;" width="1" /&gt;. It is a really well put together book and an excellent Java resource. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a href="http://www.amazon.com/gp/product/0071606327/ref=as_li_ss_il?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399369&amp;amp;creativeASIN=0071606327" target="_blank"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;amp;Format=_SL110_&amp;amp;ASIN=0071606327&amp;amp;MarketPlace=US&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;tag=realworlsofta-20&amp;amp;ServiceVersion=20070822"&gt;&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0071606327&amp;amp;camp=217145&amp;amp;creative=399369" style="border: none !important; margin: 0px !important;" width="1" /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/gp/product/0071606327/ref=as_li_ss_tl?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399369&amp;amp;creativeASIN=0071606327" target="_blank"&gt;Java, A Beginner's Guide, 5th Edition&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0071606327&amp;amp;camp=217145&amp;amp;creative=399369" style="border: none !important; margin: 0px !important;" width="1" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-6070202348355654622?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/6070202348355654622/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=6070202348355654622&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6070202348355654622'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6070202348355654622'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/09/java-beginners-guide-5th-edition-book.html' title='Java, A Beginner&apos;s Guide, 5th Edition Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-6535517693368095773</id><published>2011-09-20T18:54:00.001-07:00</published><updated>2011-09-20T19:40:30.402-07:00</updated><title type='text'>Good News about Silverlight and WPF for a Change</title><content type='html'>Most of my posts lately have only been delivering bad news about BUILDS affects on our Silverlight and WPF projects. Instead of dropping 2 Silverlight and 1 WPF project, we will only be dropping one Silverlight project. I am lucky enough to work with some very bright people.&lt;br /&gt;&lt;br /&gt;We have decided to push forward with the one of the Silverlight projects and the WPF project in order to introduce XAML into the environment. With METRO on the horizon you will have no choice but to learn XAML. The HTML/JS/CSS may pay off for the goal of attracting hobbyist and college kids, but it is going to make a heck of a lot of messes. Plus the Silverlight will run fine in the desktop browser. At least as of today it will.&lt;br /&gt;&lt;br /&gt;XAML will be the only realistic choice for real development for METRO apps. The HTML/JS/CSS environment is messy as messy can get. I wish it would just be outlawed.&lt;br /&gt;&lt;br /&gt;So that is good news for me and the teams I work with, but what about the community at large? Why is Microsoft not giving a solid answer about Silverlight?&lt;br /&gt;&lt;br /&gt;Were you ever in one of those situations where you knew something about a friend, but didn't want to break the news to them because you knew it would upset them, or even damage your friendship?&lt;br /&gt;&lt;br /&gt;They are intentionally not answering, because they don't have an answer anyone wants to hear. Except maybe the Silverlight haters. They know the party is over, but want it to continue as long as possible.&lt;br /&gt;&lt;br /&gt;They don't want to shut down all the books coming out, or hurt their next release. The truth is Silverlight will be fine on the desktop side of METRO, at least it is now, but they aren't planning on delivering any good news, so instead they will just deliver none.&lt;br /&gt;&lt;br /&gt;I know there are a lot of people out there saying "If they have not mentioned it, that means all is well". That just makes absolutely no sense what so ever. How hard is it to deliver some good news about Silverlight, or to include a session on it. Especially since the message was "We will give you news about Silverlight at BUILD"? They have no good news, so they aren't delivering any.&lt;br /&gt;&lt;br /&gt;So what does that all mean? Do you listen to me. I wouldn't. I am just some clown who digs programming. I would determine for yourself what direction to take. Stop asking Microsoft for direction, because you aren't going to get any while the news is potentially bad news. If the situation changes, expect Silverlight Fire Starter II. Until then, download the tools, fire them up, and then see for yourself what is possible.&lt;br /&gt;&lt;br /&gt;I am personally still moving ahead with learning more about Java (got 2 of the new Java books and the CSS books I ordered &lt;a href="http://realworldsa.blogspot.com/2011/09/microsoft-windows-8-metro-and-build.html" target="_blank"&gt;&lt;strong&gt;shown in this blog &lt;/strong&gt;&lt;/a&gt;today), HTML5 (enough to keep it off my projects), and iOS (curious about how the other side of the force lives). I am also however moving forward with learning about METRO and XAML for Windows. I am not keeping all my eggs in the Microsoft basket anymore. They are a corporation with a major case of ADHD and I can't trust them to do the next right thing anymore.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-6535517693368095773?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/6535517693368095773/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=6535517693368095773&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6535517693368095773'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6535517693368095773'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/09/good-news-about-silverlight-and-wpf-for.html' title='Good News about Silverlight and WPF for a Change'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5425274162141551728</id><published>2011-09-17T19:32:00.000-07:00</published><updated>2011-09-17T21:42:15.896-07:00</updated><title type='text'>Microsoft Windows 8 METRO and BUILD- The Good, Bad, Ugly, and WWTD</title><content type='html'>&lt;div&gt;&lt;table style="width: 100%;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;font color="#ff6666"&gt;&lt;strong&gt;The Ugly-&lt;/strong&gt;&lt;br /&gt;&lt;/font&gt;Can be summarized in the sad story behind how they handled Silverlight and WPF. The way they handled decommissioning Silverlight by choosing not to communicate about it is simply sad.&lt;br /&gt;&lt;br /&gt;My dog thinks that if he looks the other way and can't see you, you can't see him either. Not mentioning Silverlight for the past year did not kill it, it simply left everyone wondering why Microsoft chose to look the other way.&lt;br /&gt;&lt;br /&gt;Why could there not be a session called "The Future of Silverlight and WPF"? Even if the session was all about porting the technology to XAML for Windows that would have been so much better than simply not mentioning it.&lt;br /&gt;&lt;br /&gt;&lt;font color="#ff6666"&gt;&lt;strong&gt;The Bad-&lt;/strong&gt;&lt;br /&gt;&lt;/font&gt;Microsoft considers the enterprise line of business environment owned by them and not losable. Their full attention is on the mobile world. They not only do not own that, they don't even own part of it.&lt;br /&gt;&lt;br /&gt;I have to help evaluate enterprise products quite often and I am finding more and more situations were only Java products are available. At least all the products in the quadrant of the Gartner quadrants that counts.&lt;br /&gt;&lt;br /&gt;I have been putting it off for a long time, but I can't put it off any longer. I will be getting more familiar with Java. We need RIA and client applications in order to achieve the performance required by internal enterprise applications. Because Microsoft is making it so difficult to get them in the door, even in Microsoft shops, I don't have a choice but to get familiar with the products coming out that support our needs.&lt;br /&gt;&lt;br /&gt;Beyond Java I will also be learning the ins and outs of HTML5/JS/CSS. I will have to if for no other reason than to know enough about them to keep them off my projects when not appropriate. I certainly won't be using them for METRO apps while XAML still exists, and using them on the web is anybody's game, not just Microsoft's. If I had to use HTML5/JS/CSS, I would probably look at Dreamweaver first.&lt;br /&gt;&lt;br /&gt;Their attention is also on windows 8 and getting some of the private cloud and virtualization business.  That is good in my book, but believe it will breed fear in most enterprises.&lt;br /&gt;&lt;br /&gt;The enterprises I work with were just starting to consider accepting Silverlight and WPF into their ASP.NET world. Microsoft stopped that from happening by not communicating over the last year about their intentions, and then by not even mentioning it in the sessions at BUILD.&lt;br /&gt;&lt;br /&gt;Most places I have experience with will not be touching Windows 8 unless METRO can be disabled on the desktop. It is silly to think you would have to work in such an environment on a desktop.&lt;br /&gt;&lt;br /&gt;I could not get Visual Studio 2010 Premium to run correctly on the developer preview. Hopefully the next releases allows it to run right. After I installed it my Visual Studio 2011 Express environment was trashed too. I had to use the handy reset button and start over.&lt;br /&gt;&lt;br /&gt;&lt;font color="#ff6666"&gt;&lt;strong&gt;The Good-&lt;/strong&gt;&lt;br /&gt;&lt;/font&gt;The individual hobbyist and cutting edge companies have a great chance to prosper. If Microsoft can get some of the mobile market share, those that stick with them will have some unique opportunities.&lt;br /&gt;&lt;br /&gt;It is possible Microsoft will get some of the mobile market share now.  It was hopeless before.&lt;br /&gt;&lt;br /&gt;Personally I plan on moving forward with XAML development. It is the only client library from Microsoft that I actually like to use. I won't be trying to push it into enterprises anymore, but I will be continuing to use it.  I really really dig it.  It is a sweet environment and really fun to code in.&lt;br /&gt;&lt;br /&gt;It is good Microsoft finally pushed me hard enough to hear the pop (my head coming out of my butt). I have already used the money I that I had planned to use on Silverlight 5 and other Microsoft .NET books on 2 new HTML 5 books, 3 Java books, and 2 new Software Architecture books coming out.  I listed them below.&lt;br /&gt;&lt;br /&gt;This may also be the first year I don't dump 5 grand on MSDN.  I may get a MacBook instead that way I have access to buying and using their &lt;a href="http://developer.apple.com/xcode/index.php" target="_blank"&gt;&lt;strong&gt;development tools&lt;/strong&gt;&lt;/a&gt; too. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;font color="#ff6666"&gt;WWTD- What Would Tad Do?&lt;/font&gt;&lt;/strong&gt;&lt;br /&gt;My advice to those that are using Silverlight and WPF is to continue using it. If it was my call, I would use it on the current projects it just got booted off of that I am involved with as well as all my future project that it makes sense on. I would not use it for external web facing applications that you want to far be reaching (that has been the case for some time now), but internal enterprise applications benefit from it tremendously.&lt;br /&gt;&lt;br /&gt;Microsoft did a really crappy job of telling you that you can continue to develop with Silverlight and WPF. I understand if you don't want to put your neck out for it anymore on your gigs, but I would keep learning it.&lt;br /&gt;&lt;br /&gt;I would also take this time to think about the direction of your career. For a long time I was only willing to learn Microsoft technologies. That way I could be specialized in them. Right now they are way to vague for me to continue to do that. Below are the books I ordered and preordered over the weekend. I plan on branching out.  A buddy suggested looking into &lt;a href="http://en.wikipedia.org/wiki/Google_Dart" target="_blank"&gt;&lt;strong&gt;Google Dart&lt;/strong&gt;&lt;/a&gt;, so I will be doing that also.&lt;br /&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.amazon.com/gp/product/0071606327/ref=as_li_ss_il?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399369&amp;amp;creativeASIN=0071606327" target="_blank"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;amp;Format=_SL110_&amp;amp;ASIN=0071606327&amp;amp;MarketPlace=US&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;tag=realworlsofta-20&amp;amp;ServiceVersion=20070822" /&gt;&lt;/a&gt;&lt;img style="margin: 0px !important; border: currentColor !important;" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0071606327&amp;amp;camp=217145&amp;amp;creative=399369" width="1" height="1" /&gt;  &lt;a href="http://www.amazon.com/gp/product/0071606300/ref=as_li_ss_il?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=0071606300" target="_blank"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;amp;Format=_SL110_&amp;amp;ASIN=0071606300&amp;amp;MarketPlace=US&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;tag=realworlsofta-20&amp;amp;ServiceVersion=20070822" /&gt;&lt;/a&gt;&lt;img style="margin: 0px !important; border: currentColor !important;" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0071606300&amp;amp;camp=217145&amp;amp;creative=399373" width="1" height="1" /&gt;  &lt;a href="http://www.amazon.com/gp/product/007163360X/ref=as_li_ss_il?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=007163360X" target="_blank"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;amp;Format=_SL110_&amp;amp;ASIN=007163360X&amp;amp;MarketPlace=US&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;tag=realworlsofta-20&amp;amp;ServiceVersion=20070822" /&gt;&lt;/a&gt;&lt;img style="margin: 0px !important; border: currentColor !important;" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=007163360X&amp;amp;camp=217145&amp;amp;creative=399373" width="1" height="1" /&gt;  &lt;a href="http://www.amazon.com/gp/product/1430239603/ref=as_li_ss_il?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=1430239603" target="_blank"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;amp;Format=_SL110_&amp;amp;ASIN=1430239603&amp;amp;MarketPlace=US&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;tag=realworlsofta-20&amp;amp;ServiceVersion=20070822" /&gt;&lt;/a&gt;&lt;img style="margin: 0px !important; border: currentColor !important;" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=1430239603&amp;amp;camp=217145&amp;amp;creative=399373" width="1" height="1" /&gt;  &lt;a href="http://www.amazon.com/gp/product/1430237805/ref=as_li_ss_il?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=1430237805" target="_blank"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;amp;Format=_SL110_&amp;amp;ASIN=1430237805&amp;amp;MarketPlace=US&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;tag=realworlsofta-20&amp;amp;ServiceVersion=20070822" /&gt;&lt;/a&gt;&lt;img style="margin: 0px !important; border: currentColor !important;" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=1430237805&amp;amp;camp=217145&amp;amp;creative=399373" width="1" height="1" /&gt;  &lt;a href="http://www.amazon.com/gp/product/1593272863/ref=as_li_ss_il?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=1593272863" target="_blank"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;amp;Format=_SL110_&amp;amp;ASIN=1593272863&amp;amp;MarketPlace=US&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;tag=realworlsofta-20&amp;amp;ServiceVersion=20070822" /&gt;&lt;/a&gt;&lt;img style="margin: 0px !important; border: currentColor !important;" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=1593272863&amp;amp;camp=217145&amp;amp;creative=399373" width="1" height="1" /&gt;  &lt;a href="http://www.amazon.com/gp/product/1449399037/ref=as_li_ss_il?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=1449399037" target="_blank"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;amp;Format=_SL110_&amp;amp;ASIN=1449399037&amp;amp;MarketPlace=US&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;tag=realworlsofta-20&amp;amp;ServiceVersion=20070822" /&gt;&lt;/a&gt;&lt;img style="margin: 0px !important; border: currentColor !important;" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=1449399037&amp;amp;camp=217145&amp;amp;creative=399373" width="1" height="1" /&gt;  &lt;a href="http://www.amazon.com/gp/product/0321717295/ref=as_li_ss_il?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=0321717295" target="_blank"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;amp;Format=_SL110_&amp;amp;ASIN=0321717295&amp;amp;MarketPlace=US&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;tag=realworlsofta-20&amp;amp;ServiceVersion=20070822" /&gt;&lt;/a&gt;&lt;img style="margin: 0px !important; border: currentColor !important;" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0321717295&amp;amp;camp=217145&amp;amp;creative=399373" width="1" height="1" /&gt;  &lt;a href="http://www.amazon.com/gp/product/032171833X/ref=as_li_ss_il?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=032171833X" target="_blank"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;amp;Format=_SL110_&amp;amp;ASIN=032171833X&amp;amp;MarketPlace=US&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;tag=realworlsofta-20&amp;amp;ServiceVersion=20070822" /&gt;&lt;/a&gt;&lt;img style="margin: 0px !important; border: currentColor !important;" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=032171833X&amp;amp;camp=217145&amp;amp;creative=399373" width="1" height="1" /&gt;  &lt;a href="http://www.amazon.com/gp/product/0321685857/ref=as_li_ss_il?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399369&amp;amp;creativeASIN=0321685857" target="_blank"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;amp;Format=_SL110_&amp;amp;ASIN=0321685857&amp;amp;MarketPlace=US&amp;amp;ID=AsinImage&amp;amp;WS=1&amp;amp;tag=realworlsofta-20&amp;amp;ServiceVersion=20070822" /&gt;&lt;/a&gt;&lt;img style="margin: 0px !important; border: currentColor !important;" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0321685857&amp;amp;camp=217145&amp;amp;creative=399369" width="1" height="1" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5425274162141551728?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5425274162141551728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5425274162141551728&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5425274162141551728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5425274162141551728'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/09/microsoft-windows-8-metro-and-build.html' title='Microsoft Windows 8 METRO and BUILD- The Good, Bad, Ugly, and WWTD'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-2333061031818689283</id><published>2011-09-16T09:36:00.000-07:00</published><updated>2011-09-16T09:38:32.811-07:00</updated><title type='text'>The Political Side of Silverlight’s Death</title><content type='html'>Let us say MS supports Silverlight for the next 10 years. That is great. But that means nothing to the customers I work with. Microsoft's poor communication over the past months built the coffin and BUILD put the nails in it when it was not even listed as a product. I lost a contract about 9 months or a year ago because of Bob M.'s comments, rebooted two Silverlight and one WPF project because of BUILD.&lt;br/&gt;&lt;br/&gt;I just restarted planning a major initiative that was to include a WPF interface, a Silverlight interface, an MVC interface, and an ASP.NET interface. It was luckily only a few weeks underway. Guess what NO ONE, including me, is willing to continue with Silverlight and WPF. They may not be dead @ MS as far as support goes, but MS killed them for us this week with their lack of support for them.&lt;br/&gt;&lt;br/&gt;Silverlight and WPF are no longer on my available technologies list for use until I see explicit Microsoft support for XAML beyond the METRO junk, and not just the Silverlight evangelist's requests we accept implicit Microsoft support . This is not a technical or emotional decision, it is a political one. I respect Jeremy Likness, John Papa, Pete Brown, Laurent Bugnion, but I can’t make recommendations based on their passion for a technology Microsoft is not supporting.&lt;br/&gt;&lt;br/&gt;Like I said above, not using it is not an emotional or technical decision. It is political. I could handle the politics when I had Microsoft’s support, but that is gone now. The emotions come into play with how ticked off I am Microsoft handled it this way.&lt;br/&gt;&lt;br/&gt;I have pushed Silverlight very hard. I have been selling it over the past year without any support from Microsoft. The end result of Microsoft’s lack of communication and now with the clear message BUILD sent, by MS having no good communication for SL, has killed the battle for me. I lost, and I can’t say that I care. I am tired of the unclear communication creating so much havoc and making my life so difficult. I wasted a heck of a lot of time fighting a battle that MS clearly didn’t want me fighting in the first place.&lt;br/&gt;&lt;br/&gt;I am sure I will personally be using XAML for windows. Actually I already am. I download the preview as soon as it was available. &lt;a target="_blank" href="http://realworldsa.blogspot.com/2011/09/metro-microsofts-embarrassing-try.html"&gt;I am not happy with it&lt;/a&gt;. I think it is the result of lack of leadership and a clearly lost battle in the mobile market. I will not be fighting for XAML anymore in the environments I go into, unless they already use it. For the past few years nowhere I went used it until I arrived and sold them on it. One of my friends who has not had time to keep up with XAML, said that he is now glad he didn’t. I have had to fight for it everywhere I went. I got it started in a lot of places, but I can’t say that that was wise of me.&lt;br/&gt;&lt;br/&gt;We just officially nixed another Silverlight Project that was using the MVVM Light toolkit. That is two SL and one WPF app this week. We are starting over with MVC. The only thing left alive is our Silverlight SharePoint web parts. I will keep them alive since I mainly support them.&lt;br/&gt;&lt;br/&gt;I believe Silverlight within a year it will be known as the “S” word, and we won’t be using it anywhere except in conversations about how painful Microsoft made that initiative.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-2333061031818689283?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/2333061031818689283/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=2333061031818689283&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2333061031818689283'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2333061031818689283'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/09/political-side-of-silverlights-death.html' title='The Political Side of Silverlight’s Death'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-3274865384044993222</id><published>2011-09-15T11:42:00.000-07:00</published><updated>2011-09-15T11:44:51.251-07:00</updated><title type='text'>METRO = Microsoft's Embarrassing Try Recreating iOS</title><content type='html'>So, after spending a few days playing with the preview and watching more sessions, I can say my current mindset is summed up in the image below.&lt;br/&gt;&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td style="text-align: center"&gt;&lt;img src="http://www.softwareprocessengineering.com/ld/m.jpg" alt="" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;I do not see this reinvention like their last one. Instead of introducing cutting edge .NET tools to their legacy VB6 developers, they are introducing legacy tools to their legacy .NET developers.&lt;br/&gt;&lt;br/&gt;I would not think I would have to explain to someone that they just stepped in dog crap. Download it and sniff it yourself. If you are drinking their Kool-aid, more power to you. I respected the violinists in the titanic movie too. I may even be one of them.&lt;br/&gt;&lt;br/&gt;I see a lot of Silverlight authors pleading the "&lt;a target="_blank" href="http://csharperimage.jeremylikness.com/2011/09/if-silverlight-is-dead.html"&gt;&lt;strong&gt;Silverlight is alive and well case&lt;/strong&gt;&lt;/a&gt;". They have too, and I feel for them.&lt;br/&gt;&lt;br/&gt;Below is the only .NET related book I now have on pre-order... &lt;br/&gt;&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td style="text-align: center"&gt;&lt;a href="http://www.amazon.com/gp/product/1430238585/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1430238585"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=1430238585&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=1430238585&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://pre-prod.amazon.com/gp/product/1430238585/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1430238585"&gt;Migrating to iPhone and iPad for .NET Developers&lt;/a&gt;&lt;img src="http://impression-recorder-master.amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=1430238585&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br/&gt;Although I don't feel I need to explain my reasoning, since Microsoft does not feel they need to explain themselves to their customers, I will a little.&lt;br/&gt;&lt;br/&gt;Software Engineering needs focused constraints in order to allow excellence in a given context. What I see Microsoft doing by their desperate move to get their foot in the mobile market is creating a huge quagmire of context. There is no focus. Theirs is an attitude of we will be all things to all people.&lt;br/&gt;&lt;br/&gt;That is only making thinks harder. Sure it will provide a lot of job security for those of us that clean up the messes created in times like this, but I am sick of Microsoft promoting the capabilities needed for creating crappy solutions.&lt;br/&gt;&lt;br/&gt;I am actually embarrassed for the Microsoft engineers and evangelists who seem to have gone on a yearlong crack binge and ended up here with this mess. I don't care what anyone says, METRO on a desktop is simply stupid. Phones, tablets, touch screens, ok, but come on, a desktop.&lt;br/&gt;&lt;br/&gt;Hopefully I am wrong. That would be great. I have been wrong before. I stepped on a mud ball once, thinking it was something else. To my pleasant surprise I ended up with just a muddy shoe.&lt;br/&gt;&lt;br/&gt;Speaking of &lt;a target="_blank" href="http://www.laputan.org/mud/"&gt;&lt;strong&gt;Big Balls of Mud&lt;/strong&gt;&lt;/a&gt;… let's all give a round of applause as Microsoft welcomes that anti-pattern back, and gives us the tools to mindlessly implement it!!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-3274865384044993222?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/3274865384044993222/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=3274865384044993222&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3274865384044993222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3274865384044993222'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/09/metro-microsofts-embarrassing-try.html' title='METRO = Microsoft&apos;s Embarrassing Try Recreating iOS'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-1199678241325398770</id><published>2011-09-13T17:48:00.000-07:00</published><updated>2011-09-13T18:04:46.973-07:00</updated><title type='text'>Keeping Living Documentation Alive with SPARX Enterprise Architect</title><content type='html'>One of the most powerful side effects of the SPARX Enterprise Architect document publishing tools is that it enables the team to keep project documentation alive and current.&lt;br /&gt;&lt;br /&gt;I recently published an article on the &lt;a target="_blank" href="http://community.sparxsystems.com/" style="font-weight: 700"&gt;SPARX Community Site&lt;/a&gt; that has an accompanying PowerPoint and video that shows how SPARX EA can be used to provide living documentation to a project team that is always up to date.&lt;br /&gt;&lt;br /&gt;Below are two diagrams that show a preview of the PowerPoint. You can check out the entire presentation &lt;a style="font-weight: bold;" target="_blank" href="http://community.sparxsystems.com/tutorials/documentation-and-reporting/producing-living-documentation-sparx-enterprise-architect"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.softwareprocessengineering.com/ld/MilestoneSM.jpg" alt="Milestone Deliverables" /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://www.softwareprocessengineering.com/ld/Milestone.jpg"&gt;Click for Larger Image&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.softwareprocessengineering.com/ld/IterationSM.jpg" alt="Milestone Deliverables" /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://www.softwareprocessengineering.com/ld/Iteration.jpg"&gt;Click for Larger Image&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-1199678241325398770?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/1199678241325398770/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=1199678241325398770&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1199678241325398770'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1199678241325398770'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/09/keeping-living-documentation-alive-with.html' title='Keeping Living Documentation Alive with SPARX Enterprise Architect'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-4208243382129223187</id><published>2011-09-13T16:33:00.000-07:00</published><updated>2011-09-18T19:19:49.315-07:00</updated><title type='text'>Today Microsoft Killed .NET Good-Bye WCF, WPF, WF, and Silverlight</title><content type='html'>I am afraid I am not as optimistic as some of the Microsoft gurus who make their money on Silverlight and WPF. Well not all of them. My Visual Studio Magazine just arrived and John Papa (Mr. Silverlight TV) has a nice article on JavaScript Tips. I guess we will soon be seeing JavaScript TV.(&lt;strong&gt;&lt;span style="color:#ffcc99;"&gt;update 9/19/2011&lt;/span&gt;&lt;/strong&gt; - &lt;a target="_blank" href="http://johnpapa.net/ToDisney"&gt;I guess not!!  Good luck John, sounds like an awesome gig!!!)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I don't see the XAML tools in Windows 8 as first class citizens in Microsoft's development toolbox. Taking Blend and Visual Studio to HTML 5 and JavaScript land adds an acidy sour taste to my mouth.&lt;br /&gt;&lt;br /&gt;I guess the WPF Disciples (&lt;a href="http://wpfdisciples.wordpress.com/" target="_blank"&gt;&lt;strong&gt;http://wpfdisciples.wordpress.com/&lt;/strong&gt;&lt;/a&gt;) will now be the Second Class XAML Disciples.&lt;br /&gt;&lt;br /&gt;Mary-Jo sums it up well &lt;a href="http://www.zdnet.com/blog/microsoft/microsoft-to-developers-metro-is-your-future/10611" target="_blank"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;After today's BUILD keynote I would switch to JAVA in a heartbeat if I could, but I have spent too much time in a Microsoft world.&lt;br /&gt;&lt;br /&gt;I have not felt comfortable with Microsoft's leadership for a while now, and I don't see that changing anytime soon.&lt;br /&gt;&lt;br /&gt;I am glad this happened when it did. I was about to embark on a new project. It was to have a WPF interface, a Silverlight interface, an MVC interface, and an ASP.NET interface. Different modules for different contexts. It will be time to rethink the choices.&lt;br /&gt;&lt;br /&gt;My stance is, I don't need to pay $5000 a year for an MSDN to develop HTML, JavaScript, and CSS applications. I certainly don't need Microsoft to lead me down that path.&lt;br /&gt;&lt;br /&gt;I cancelled several preordered .NET books today.  One is shown below.&lt;br /&gt;&lt;br /&gt;&lt;img alt="" src="http://www.softwareprocessengineering.com/ld/c.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;It is time to take a serious look at other options. Right now I am not willing to invest my time and money in the Microsoft future they presented today. Maybe after seeing more of BUILD I will change my mind, but for now my Microsoft technology learning track is put on hold.&lt;br /&gt;&lt;table style="width: 100%;"&gt;&lt;br /&gt; &lt;tbody&gt;&lt;tr&gt;&lt;br /&gt;  &lt;td style="text-align: center;"&gt;&lt;img alt="" src="http://www.softwareprocessengineering.com/ld/m.jpg" /&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt; &lt;/tr&gt;&lt;br /&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-4208243382129223187?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/4208243382129223187/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=4208243382129223187&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/4208243382129223187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/4208243382129223187'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/09/today-microsoft-killed-net-good-bye-wcf.html' title='Today Microsoft Killed .NET Good-Bye WCF, WPF, WF, and Silverlight'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-12867439515362299</id><published>2011-09-12T09:59:00.000-07:00</published><updated>2011-09-12T10:00:36.396-07:00</updated><title type='text'>Microsoft SQL Server 2008 R2 Master Data Services Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This is the time to start learning about Microsoft's Master Data Services and this book is a great place to start. With the release of Denali we will be getting some nice improvements to the MDS toolset. We will be getting Excel tools that interface with the data, an excel add in that works with the SQL Server Data Quality Services, easier data loading, better web UI, and the ability to install the tools with the SQL Server installer.&lt;br/&gt;&lt;br/&gt;Although this book does not cover the Denali toolset, it covers everything else you will need to know in order to take advantage of them when they come out.&lt;br/&gt;&lt;br/&gt;The book starts out with an introduction to MDM. It covers Analytical MDM, Operational MDM, Transaction Hub, Registry Hub, Hybrid Hub, data governance, data stewardship, and a little of the politics and organizational changes.&lt;br/&gt;&lt;br/&gt;It then introduce Master Data Services and how to install and configure them. Next are chapters on Creating and Using Models, Version Management, Importing Data into Master Data Services, Importing Data into Master Data Services, Extracting Data from Master Data Services, Application Programming Interface, and Master Data Services Security.&lt;br/&gt;&lt;br/&gt;The thing I like most about the book is that it discusses multiple integration points with MDS. The book shows examples using BizTalk 2010, SharePoint 2010, and SSIS. The book shows you how to take advantage of both the WCF interface and assembly interfaces. The SharePoint examples include web part and workflow integration.&lt;br/&gt;&lt;br/&gt;I also like the chapter on the staging tables and the business rules. Using the staging tables can be confusing, but I thought the author did a great job of explaining them. The chapter on the business rules does a great job of introducing business rules and has a lot of hands on examples.&lt;br/&gt;&lt;br/&gt;The one thing lacking in this book as well as other MDS books is detailed examples of de-duplication and merging of records. Hopefully because the Denali tools will include an interface to the Data Quality tools the MDS books will begin to include examples. This is one of the most important parts of an MDM project, but like other MDM tools, the responsibility is placed on the developers and not handled very well by the MDM technology unless the data has already been scrubbed to a very high quality. This misconception can catch business owners off guard, believing an MDM product alone is a solution to your data problems is a big mistake.&lt;br/&gt;&lt;br/&gt;One caution I would give the reader is thinking all you need to know about MDM is how to use MDS services. This book does a great job of covering MDS services, and although it does do a good job introducing MDM, there is a lot more to an MDM project that you need to understand. The authors have a very clear understanding of this point, and they call it out to the reader. Without business sponsorship your MDM project will fail to get past the inception phase, take it from someone who has experienced this first hand. &lt;a target="_blank" href="http://www.amazon.com/gp/product/0071744584/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0071744584"&gt;MASTER DATA MANAGEMENT AND DATA GOVERNANCE, 2/E&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0071744584&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; is a great place to start learning about the full scope of an MDM project's process.&lt;br/&gt;&lt;br/&gt;This book comes with a download that includes sample data for a model you build, sample scripts, an SSIS package, a sample custom workflow, the web part project, the projects using the WCF interface and assembly interfaces, and the custom workflow solution.&lt;br/&gt;&lt;br/&gt;Over all I think this is a great choice for getting started with MDS. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1849680507/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1849680507"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=1849680507&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=1849680507&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1849680507/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1849680507"&gt;Microsoft SQL Server 2008 R2 Master Data Services&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=1849680507&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-12867439515362299?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/12867439515362299/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=12867439515362299&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/12867439515362299'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/12867439515362299'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/09/microsoft-sql-server-2008-r2-master.html' title='Microsoft SQL Server 2008 R2 Master Data Services Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5373454651073033673</id><published>2011-09-06T07:03:00.000-07:00</published><updated>2011-09-06T07:05:48.448-07:00</updated><title type='text'>PACKT Book Special on Microsoft SQL Server, SharePoint, and Silverlight</title><content type='html'>PACKT is running a special on Microsoft SQL Server, SharePoint, and Silverlight for 10 Days Only&lt;br/&gt;Throughout September Packt, a leading publisher of Microsoft books, will be celebrating...&lt;br/&gt;&lt;br/&gt;10 days of SQL Server 1st – 10th September&lt;br/&gt;10 days of SharePoint 11th – 20th September&lt;br/&gt;10 days of Silverlight 21st – 30th September&lt;br/&gt;&lt;br/&gt;Throughout these dates there will be up to 20% off SQL Server, SharePoint and Silverlight books and 30% off eBooks – for further information visit: &lt;a target="_blank" href="http://www.packtpub.com/packt-10-days-of-sql-server-silverlight-sharepoint"&gt;http://www.packtpub.com/packt-10-days-of-sql-server-silverlight-sharepoint &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5373454651073033673?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5373454651073033673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5373454651073033673&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5373454651073033673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5373454651073033673'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/09/packt-book-special-on-microsoft-sql.html' title='PACKT Book Special on Microsoft SQL Server, SharePoint, and Silverlight'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-1850647417114315947</id><published>2011-08-29T07:38:00.000-07:00</published><updated>2011-08-29T07:40:16.385-07:00</updated><title type='text'>Microsoft SQL Server 2008 R2 Master Data Services Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This is a very hands on book. It walks you through using every aspect of the current MDS tools.&lt;br/&gt;&lt;br/&gt;It starts out with an introduction to Master Data Services and then jumps right into installation and configuration.&lt;br/&gt;&lt;br/&gt;You then create an MDS Project and add a new Model to it by hand. The book does a great job of providing step by step instructions. As I went through the book I didn't get the feeling I was lost. The authors do a good job of keeping you moving forward at the right pace.&lt;br/&gt;&lt;br/&gt;The book has chapters on Starting an MDS Project, Creating Your Model, Integrating Master Data Services with Other Systems, Working with Hierarchies and Collection, Working with Master Data, Using Business Rules, Creating Versions of Data, Using Metadata, Implementing Security, Publishing Data to External Systems, and Extending MDS with Web Services.&lt;br/&gt;&lt;br/&gt;I cannot recommend using the current Microsoft MDM tools to anyone, but it can’t hurt to start learning them now. The Microsoft MDM tools are showing signs of improvement with Denali, but they still have a way to go before the product is a competitor to products like the IBM MDM stack.&lt;br/&gt;&lt;br/&gt;I can however recommend this book as a great resource for learning all about the current Microsoft MDM tools. The tools are not that straight forward to learn and this book does a great job of neutralizing the confusion and teaching you the ins and outs of the MDS tools offered by Microsoft in SQL Server 2008 R2.&lt;br/&gt;&lt;br/&gt;The authors provide a nice download that contains a sample model package, sample data in CVS files and a visual studio solution that wraps the MDS web service.&lt;br/&gt;&lt;br/&gt;All in all I highly recommend this book to anyone looking to get up to speed quickly with the Microsoft MDS tools.&lt;br/&gt;&lt;br/&gt;&lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/007175623X/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=007175623X"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=007175623X&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=007175623X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a href="http://www.amazon.com/gp/product/007175623X/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=007175623X"&gt;Microsoft SQL Server 2008 R2 Master Data Services&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=007175623X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-1850647417114315947?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/1850647417114315947/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=1850647417114315947&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1850647417114315947'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1850647417114315947'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/08/microsoft-sql-server-2008-r2-master.html' title='Microsoft SQL Server 2008 R2 Master Data Services Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-1156301756024551987</id><published>2011-08-24T06:53:00.000-07:00</published><updated>2011-08-24T06:56:02.153-07:00</updated><title type='text'>Microsoft Expression Blend 4 Step by Step Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;Being primarily an architect and developer my use of Blend can be very limited at times. I use Blend mostly for prototyping with SketchFlow and I wanted to get a refresher on the functionality I don’t use day to day.&lt;br/&gt;&lt;br/&gt;Over the past several months I have been cracking this book open over lunch (when I get a lunch) and going through all the exercises. It has been a very fun exercise.&lt;br/&gt;&lt;br/&gt;The book starts out with an introduction to Silverlight and WPF and then has a chapter on the Blend 4 IDE. The book continues with a chapter on Designing an Interface, XAML and C#, Animations and Transformations, Adding Interactivity, Creating Design Assets, Resources, Skinning Controls, Working with Data, Using SketchFlow, and Designer/Developer Collaboration.&lt;br/&gt;&lt;br/&gt;Each chapter is a lesson or a set of lessons that introduce you to the topic by creating a hands on experience.&lt;br/&gt;&lt;br/&gt;One of the things I really liked was that the book introduced Expression Design 4 in the chapter Creating Design Assets and it touched on it in another chapter. I hardly ever get a chance to work in Expression Design so this was great.&lt;br/&gt;&lt;br/&gt;The book does a great job of showing you how to work with sample data. One of the main problems we as developers always face is populating the user interface to see how it will really work when there is no data available on the project. That is no longer a problem with Silverlight and WPF.&lt;br/&gt;&lt;br/&gt;One downside is the black and white print. I have started really enjoying the color books being put out on WPF, Silverlight, and Expression Blend. Have this one in black and white did not affect the quality of the lessons, but it would have been better in color.&lt;br/&gt;&lt;br/&gt;The code was very well organized and went together well with the book. There were no errors or issues with the code. The thing I liked best about this code was that the author only supplied the base which prepared you for the lesson. That made you do the lesson instead of reading about it and skimming the code. Having to finish the samples added a lot of value to each lesson.&lt;br/&gt;&lt;br/&gt;Overall I think the author did a great job of introducing a ton of functionality that is available in Blend 4.&lt;br/&gt;&lt;br/&gt;If you are doing anything with Silverlight and WPF you owe it to yourself to get familiar with Blend, and this is the book you should start with. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0735639019/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0735639019"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0735639019&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0735639019&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0735639019/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0735639019"&gt;Microsoft Expression Blend 4 Step by Step (Step By Step (Microsoft))&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0735639019&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-1156301756024551987?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/1156301756024551987/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=1156301756024551987&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1156301756024551987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1156301756024551987'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/08/microsoft-expression-blend-4-step-by.html' title='Microsoft Expression Blend 4 Step by Step Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-6021505582647411564</id><published>2011-08-14T17:03:00.000-07:00</published><updated>2011-08-14T17:08:48.112-07:00</updated><title type='text'>Software Product Line Engineering Resource Kit</title><content type='html'>I recently decided to update the Product Line Engineering Assets I reuse from project to project. In the past I reused a baseline project that contained a folder structure and the UML stereotypes needed to do Use Cases, Feature, and Static Modeling.&lt;br /&gt;&lt;br /&gt;For those of you who are not familiar with PLE, below is a context diagram I use to explain it and some links. I also put some of the better books on the topic at the end of this post.&lt;br /&gt;&lt;br /&gt;&lt;img alt="" src="http://softwareprocessengineering.com/_ple/ProductLineEngineeringContextSM.jpg" /&gt;&lt;br /&gt;&lt;a href="http://softwareprocessengineering.com/_ple/ProductLineEngineeringContext.jpg" target="_blank"&gt;Click here for larger image.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://www.sei.cmu.edu/productlines/tools/framework/"&gt;&lt;strong&gt;Software Engineering Institute Framework for Product Line Practices Site&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;a target="_blank" href="http://www.softwareproductlines.com/"&gt;&lt;strong&gt;Software Product Lines&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;a target="_blank" href="http://en.wikipedia.org/wiki/Software_product_line"&gt;&lt;strong&gt;Wikipedia Definition of Software Product Lines&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I wanted to enhance that package a little by creating a UML Profile of the stereotypes needed to do Use Cases, Feature, and Static Modeling. Creating a profile makes them available from the toolbox and the resources tree.&lt;br /&gt;&lt;br /&gt;I also wanted to recreate an instance of a Product Line Engineering software development process using Software &amp;amp; Systems Process Engineering Metamodel (SPEM) available in SPARX. You can use it as a baseline and tweak it for your project.&lt;br /&gt;&lt;br /&gt;I may eventually populate it with the accompanying content. It was originally done in Rationale's XDE, so it mapped to RUP content. I would have to re-map it to OpenUP and other content to make it public.&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;strong&gt;The resource kit contains:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;PLE_Template_Overview.doc-&lt;/strong&gt; This document outlines the UML profile used to execute Product Line Engineering.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;PLEBase.EAP-&lt;/strong&gt; This project contains two main projects and the PLE UML Profile. One project is a Default PLE Process Instance and the other is PLE Base Folder Structure.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Process PDFs Folder- &lt;/strong&gt;This folder contain a pdf of each of the phases included in the Default PLE Process Instance. It includes:&lt;br /&gt;   -Inception.pdf&lt;br /&gt;   -Elaboration.pdf&lt;br /&gt;   -Construction.pdf&lt;br /&gt;   -Transition.pdf&lt;br /&gt;   -SPE Context.pdf&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Imports Folder-&lt;/strong&gt; This folder includes exports of the resources included in the PLEBase.EAP project. These can be used to import the different assets into your other projects. It includes:&lt;br /&gt;   -Default PLE Process Instance.xml&lt;br /&gt;   -PLEBaseFolderStructure.xml&lt;br /&gt;   -PLEProfile.xml&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Creating a UML Profile Folder-&lt;/strong&gt; This is a copy of the material originally posted to the&lt;strong&gt; &lt;/strong&gt;&lt;a target="_blank" href="http://community.sparxsystems.com/"&gt;&lt;strong&gt;SPARX EA community site&lt;/strong&gt;&lt;/a&gt;.&lt;br /&gt;   -ProfileCreationExamples.eap&lt;br /&gt;   -Creating a UML Profile in SPARX EA.docx&lt;/blockquote&gt;You can get the Product Line Engineering Resource Kit &lt;a target="_blank" href="http://www.softwareprocessengineering.com/"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The following images show the PLE UML Profile in the Resources and Toolbox that is created:&lt;br /&gt;&lt;br /&gt;&lt;img alt="" src="http://softwareprocessengineering.com/_ple/Resources.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img alt="" src="http://softwareprocessengineering.com/_ple/ToolBox.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;The following images show example diagrams that can be created using the PLE UML Profile.  They are all explained in the downloadable documentation:&lt;br /&gt;&lt;br /&gt;&lt;img alt="" src="http://softwareprocessengineering.com/_ple/StaticSM.jpg" /&gt;&lt;br /&gt;&lt;a href="http://softwareprocessengineering.com/_ple/Static.jpg" target="_blank"&gt;Click here for larger image.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img alt="" src="http://softwareprocessengineering.com/_ple/FeatureGrp.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img alt="" src="http://softwareprocessengineering.com/_ple/FeaturePkg.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img alt="" src="http://softwareprocessengineering.com/_ple/UseCaseSM.jpg" /&gt;&lt;br /&gt;&lt;a href="http://softwareprocessengineering.com/_ple/UseCase.jpg" target="_blank"&gt;Click here for larger image.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The following images show each phase of the instance of a Product Line Engineering software development process:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Inception Phase:&lt;/strong&gt;&lt;br /&gt;&lt;!--Images http://softwareprocessengineering.com/_ple/FeatureGrp.jpg--&gt;&lt;img alt="" src="http://softwareprocessengineering.com/_ple/InceptionSM.jpg" /&gt;&lt;br /&gt;&lt;a href="http://softwareprocessengineering.com/_ple/Inception.jpg" target="_blank"&gt;Click here for larger image.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Elaboration Phase:&lt;/strong&gt;&lt;br /&gt;&lt;img alt="" src="http://softwareprocessengineering.com/_ple/ElaborationSM.jpg" /&gt;&lt;br /&gt;&lt;a href="http://softwareprocessengineering.com/_ple/Elaboration.jpg" target="_blank"&gt;Click here for larger image.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Construction Phase:&lt;/strong&gt;&lt;br /&gt;&lt;img alt="" src="http://softwareprocessengineering.com/_ple/ConstructionSM.jpg" /&gt;&lt;br /&gt;&lt;a href="http://softwareprocessengineering.com/_ple/Construction.jpg" target="_blank"&gt;Click here for larger image.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Transition Phase:&lt;/strong&gt;&lt;br /&gt;&lt;img alt="" src="http://softwareprocessengineering.com/_ple/TransitionSM.jpg" /&gt;&lt;br /&gt;&lt;a href="http://softwareprocessengineering.com/_ple/Transition.jpg" target="_blank"&gt;Click here for larger image.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You can get the Product Line Engineering Resource Kit &lt;a target="_blank" href="http://www.softwareprocessengineering.com/"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1420068415&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width:120px;height:240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0201703327&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width:120px;height:240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0201775956&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width:120px;height:240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0471202843&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width:120px;height:240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=3540243720&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width:120px;height:240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=realworlsofta-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as4&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;ref=ss_til&amp;amp;asins=0521767229" style="width:120px;height:240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-6021505582647411564?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/6021505582647411564/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=6021505582647411564&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6021505582647411564'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6021505582647411564'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/08/software-product-line-engineering.html' title='Software Product Line Engineering Resource Kit'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5645299579575229531</id><published>2011-08-03T13:51:00.000-07:00</published><updated>2011-08-03T13:52:33.984-07:00</updated><title type='text'>New SPARX Enterprise Architect Learning Resources</title><content type='html'>SPARX has put up two new sites with new learning resources. They are both worth checking out. &lt;br/&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.sparxsystems.com/resources/demos/index.html"&gt;Enterprise Architect Product Demonstrations&lt;/a&gt;&lt;br/&gt;Videos and walk-throughs to help you get up to speed fast and leverage the full power of Enterprise Architect in your daily work.&lt;br/&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.youtube.com/user/SparxSystems"&gt;Enterprise Architect Sparx Systems Channel on YouTube&lt;/a&gt;&lt;br/&gt;Videos that show you haw to use the new features built into the latest version of SPARX EA. They include Using Working Sets in Enterprise Architect, Enterprise Architect Project Calendar, Customizing RTF Templates in Enterprise Architect, Business Rules in Enterprise Architect, Enterprise Architect XMI placeholders for missing external references, Win32 UI Profile and Patterns, Hand Drawn mode in Enterprise Architect, and Alternate Images - Sparx Systems Enterprise Architect.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5645299579575229531?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5645299579575229531/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5645299579575229531&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5645299579575229531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5645299579575229531'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/08/new-sparx-enterprise-architect-learning.html' title='New SPARX Enterprise Architect Learning Resources'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-6709207953217909194</id><published>2011-08-03T09:06:00.001-07:00</published><updated>2011-08-04T05:40:33.283-07:00</updated><title type='text'>Buyer beware the Microsoft Touch Mouse does not work with Visual Studio 2010 SP1 without some tweaks</title><content type='html'>I just got the mouse yesterday. Over all I like it, but may regretfully have to stop using it when in Visual Studio 2010 SP1. The scrolling does not work at all. I know Visual Studio has been plagued with this problem, but come on, this is Microsoft hardware.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I have a review on amazon &lt;a href="http://www.amazon.com/gp/product/B004HYGU18/ref=as_li_ss_tl?ie=UTF8&amp;amp;tag=realworlsofta-20&amp;amp;linkCode=as2&amp;amp;camp=217145&amp;amp;creative=399373&amp;amp;creativeASIN=B004HYGU18" target="_blank"&gt;here&lt;/a&gt;&lt;img style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; MARGIN: 0px; BORDER-TOP: medium none; BORDER-RIGHT: medium none" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=B004HYGU18&amp;amp;camp=217145&amp;amp;creative=399373" width="1" height="1" /&gt; , but wanted to get a quick warning out to developers thinking about buying it.&lt;br /&gt;&lt;br /&gt;I was hoping for interaction with the Windows 7 Phone Emulator, but there is none beyond the features available with a normal mouse. I expected it to at least work with Visual Studio.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;UPDATE 8-3-2011:&lt;/strong&gt; OK, so I gave it one more try on a third laptop. I did not have IntelliPoint 8.15 64-bit for Windows 7 on it. It installed with just the drivers. It worked in VS, but no gestures. I downloaded IntelliPoint 8.15 64-bit for Windows 7 and it gave me the gestures and VS stopped working.&lt;br /&gt;&lt;br /&gt;I repeated that on my other laptop by uninstalling IntelliPoint and the other mouse drivers. Just allowing the USB to get its drivers installed allowed me to scrollin VS, but no other getures work without IntelliPoint 8.15 64-bit for Windows 7 on it. As soon as I installed I got the gestures but VS stops working.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;UPDATE 8/4/2010&lt;/strong&gt;- In order to resolve the issue of not running in Visual Studio 2010 you must run C:\Program Files\Microsoft IntelliPoint\ipoint.exe with elevated permissions. Right click on it, open properties, go to the compatibility tab and select Run this program as administrator.&lt;br /&gt;&lt;br /&gt;What clued me in was that it did not work with the event viewer either, which was running elevated privileges also.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-6709207953217909194?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/6709207953217909194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=6709207953217909194&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6709207953217909194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6709207953217909194'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/08/buyer-beware-microsoft-touch-mouse-does_03.html' title='Buyer beware the Microsoft Touch Mouse does not work with Visual Studio 2010 SP1 without some tweaks'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-2269437239167311966</id><published>2011-07-31T16:37:00.001-07:00</published><updated>2011-07-31T16:37:51.108-07:00</updated><title type='text'>Enterprise Governance and Enterprise Engineering Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This is the last book in the Enterprise Engineering Series I had to read. It covers a ton of topics and covers them in-depth.&lt;br/&gt;&lt;br/&gt;The book starts out with a nice introduction to the author's point of view regarding Enterprise Engineering and Enterprise Governance.&lt;br/&gt;&lt;br/&gt;It then continues with chapters on Mechanistic and Organismic Perspectives on Governance, Enterprise Essentials, System Thinking, Corporate Governance, IT Governance, Enterprise Governance, and The Praxis Illustrated a case study.&lt;br/&gt;&lt;br/&gt;One of the things I like most about this book is that it combines corporate governance and IT governance under the Enterprise Governance umbrella. Most larger organizations see IT in a supporting role instead of a strategic ally, which leads to the corporate or business decisions being only partially effective. The business makes their decisions in a bubble that does not provide a realistic view of their true context.&lt;br/&gt;&lt;br/&gt;Another thing I really like about this book is that it is an engineering book. Some people may not like that. It lays down the theory as well as the implementation of practices. It is very detailed which at times can make for a difficult read if you aren't used to reading engineering books.&lt;br/&gt;&lt;br/&gt;I have been involved in logistics engineering, electronic engineering, and now software engineering, all three included having to take into account the fact that humans are part of your system.&lt;br/&gt;&lt;br/&gt;The authors have a very clear understanding that some of the elements included in the engineering of an enterprise are humans and all the little quirks that come along with them. The chapter on mechanistic and organismic perspective on governance really digs into the different perspectives you can expect to find in the minds of the members of an enterprise.&lt;br/&gt;&lt;br/&gt;The chapter on systems thinking is an important one for any sizable enterprise. &lt;a target="_blank" href="http://www.amazon.com/gp/product/0471274550/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=0471274550" style="font-weight: 700"&gt;Software Process Dynamics&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0471274550&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; is an awesome book on system thinking. The ability to see the changes you are proposing in context where dynamic relationships can be evaluated is something most enterprise architecture initiatives are missing. Using system simulation models they can get a glimps of what impact a decision will have. The only problem I have seen is that system simulation does not work well in immature environments. In order to provide an accurate model, you need to understand the environment you are modeling, and most enterprises I have seen do not have a clear understanding of their true environment.&lt;br/&gt;&lt;br/&gt;Some time ago I was involved with a technology review for a new project being developed. It was a smaller project being developed by one of the maintenance teams, but still a few months worth of work would be needed to get it in place. We approved some technology and disapproved some. We have an enterprise policy in place for the development language that should be used on any new project, so that was not discussed. We asked for more frequent code reviews because of new technology being introduced into the enterprise. We also planned to use the project as an example project for using the new technology.&lt;br/&gt;&lt;br/&gt;Three to four weeks into the project we go to the first code review and we find the application being developed in a language other than our approved language. The excuse (notice I don't use the word reason for something like this) was the support team tasked with building the application is not proficient with the current enterprise endorsed language. This pointed out just how immature our IT governance implementation is. We had untrained people supporting software, and now they were implementing new software in an unsupported language. Apparently the enterprise policy on which language to use was viewed as one to follow only if you felt like it. &lt;br /&gt;&lt;br /&gt;The saddest part of this story is that they were allowed to continue development in the unsupported language. Instead of the project becoming an example to the enterprise on how to implement the new technology, it became the tail of the elephant in the room that the EA group continues to ignore. That elephant being the lack of any real IT governance.&lt;br/&gt;&lt;br/&gt;The chapter on IT governance points out this problem explicitly. When you take a look at the criteria for evaluating an enterprise the one I am referring to above falls into the category of Incoherent according to this book. That would not be the story you would hear if you went there and interviewed the employees or managers. Instead you would hear about an award winning IT department.&lt;br/&gt;&lt;br/&gt;The point is that this book will uncover a lot issues with your current environment and it will provide you with the tools to make the changes necessary to improve. It will however be up to you to make the changes. They are not easy ones to make. It will require becoming humble, transparent, and open to change as a whole. Meaning everyone will need to be included. People will need to be retrained and those that are not teachable will need to be let go.&lt;br/&gt;&lt;br/&gt;All in all I find the wisdom in the book well worth the time and effort it takes to read and digest it. It is very valuable and topnotch information.&lt;br/&gt;&lt;br/&gt;The entire series is worth reading. It should be mandatory reading far all Enterprise Architects, CIOs, Directors, CEOs, CFOs, Software Architects, Project Managers, and anyone else who needs to understand what a healthy enterprise should look like.&lt;br/&gt;&lt;br/&gt;All four books currently in the series.&lt;br/&gt;&lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3540926704/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=3540926704"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=3540926704&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3540926704&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3540926704/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=3540926704"&gt;Enterprise Governance and Enterprise Engineering (The Enterprise Engineering Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3540926704&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table&gt;&lt;tr&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/354085231X/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=354085231X"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=354085231X&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=354085231X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/354085231X/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=354085231X"&gt;Enterprise Architecture: Creating Value by Informed Governance (The Enterprise Engineering Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=354085231X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3540926704/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=3540926704"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=3540926704&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3540926704&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3540926704/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=3540926704"&gt;Enterprise Governance and Enterprise Engineering (The Enterprise Engineering Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3540926704&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3642013090/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=3642013090"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=3642013090&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3642013090&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3642013090/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=3642013090"&gt;Enterprise Architecture at Work: Modelling, Communication and Analysis (The Enterprise Engineering Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3642013090&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3642202780/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=3642202780"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=3642202780&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3642202780&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3642202780/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=3642202780"&gt;Architecture Principles: The Cornerstones of Enterprise Architecture (The Enterprise Engineering Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3642202780&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-2269437239167311966?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/2269437239167311966/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=2269437239167311966&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2269437239167311966'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2269437239167311966'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/07/enterprise-governance-and-enterprise.html' title='Enterprise Governance and Enterprise Engineering Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-1438645630839713108</id><published>2011-07-29T10:16:00.001-07:00</published><updated>2011-07-29T10:16:45.586-07:00</updated><title type='text'>They are coming this week... Microsoft Touch Mouse</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I just got the note below from Amazon!!! Woo Hoo!!!&lt;br/&gt;&lt;br/&gt;We have good news! We're able to get this part of your order to you faster than we originally promised:&lt;br/&gt;&lt;br/&gt;"Microsoft Touch Mouse"&lt;br/&gt;Previous estimated arrival date: August 19 2011&lt;br/&gt;New estimated arrival date: August 03 2011&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/B004HYGU18/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=B004HYGU18"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=B004HYGU18&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=B004HYGU18&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/B004HYGU18/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=B004HYGU18"&gt;Microsoft Touch Mouse&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=B004HYGU18&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-1438645630839713108?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/1438645630839713108/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=1438645630839713108&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1438645630839713108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1438645630839713108'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/07/they-are-coming-this-week-microsoft.html' title='They are coming this week... Microsoft Touch Mouse'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-1771040697379979708</id><published>2011-07-27T17:20:00.000-07:00</published><updated>2011-07-27T17:21:17.285-07:00</updated><title type='text'>JavaScript: The Definitive Guide: Activate Your Web Pages Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This book has delivered exactly what I was hoping for, an in-depth look into modern day JavaScript.&lt;br/&gt;&lt;br/&gt;I rarely use JavaScript nowadays in my day to day job. I have been lucky to avoid the messy browser applications it is usually a part of the past few years. That was my primary reason for buying the book. Although I may not like it, JavaScript is here to stay, and I need to keep current with it.&lt;br/&gt;&lt;br/&gt;The book is broken into 4 parts. Core JavaScript, Client-Side JavaScript, Core JavaScript Reference, and Client-Side JavaScript Reference.&lt;br/&gt;&lt;br/&gt;The book has chapters on Lexical Structure, Expressions and Operators, Statements, Objects, Arrays, Functions, Classes and Modules, Pattern Matching with Regular Expressions, JavaScript Subsets and Extensions, Server-Side JavaScript, JavaScript in Web Browsers, The Window Object, Scripting Documents, Scripting CSS, Handling Events, Scripted HTTP, The jQuery Library, Client-Side Storage, Scripted Media and Graphics, HTML5 APIs, and then continues on with the Core JavaScript Reference and the Client-Side JavaScript Reference.&lt;br/&gt;&lt;br/&gt;The downloadable code is very well organized and usable. All the code in the book, and there is a ton of it, is available.&lt;br/&gt;&lt;br/&gt;The book is very well written and makes for a really good read as well as a great reference. It is in depth and very thorough.&lt;br/&gt;&lt;br/&gt;All in all I think this a great book. It will be on my desk for the next few years until I need to replace it with the 8th or 9th version.&lt;br/&gt;&lt;br/&gt;If you are a web developer, you need this book by your side. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0596805527/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0596805527"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0596805527&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0596805527&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0596805527/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0596805527"&gt;JavaScript: The Definitive Guide: Activate Your Web Pages (Definitive Guides)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0596805527&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-1771040697379979708?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/1771040697379979708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=1771040697379979708&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1771040697379979708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1771040697379979708'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/07/javascript-definitive-guide-activate.html' title='JavaScript: The Definitive Guide: Activate Your Web Pages Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-7883329991263515235</id><published>2011-07-15T09:46:00.000-07:00</published><updated>2011-07-15T09:53:55.915-07:00</updated><title type='text'>Communicate... because in IT, if you build it, they may not come.</title><content type='html'>Finding the perfect balance of influence between IT and the Business Owners (I will resist the urge to refer to them as B.O.) is not easy. I usually find that most projects are influenced by one or the other in an unbalanced manner.&lt;br/&gt;&lt;br/&gt;The story is usually goes like this...&lt;br/&gt;&lt;br/&gt;The business feels that technology should not be a factor in making sound business decisions. In the business owner's eyes, whatever the solution is, the IT department should be able to support the technology that comes with that solution.&lt;br/&gt;&lt;br/&gt;This is bad when a custom software package is the solution. .NET/SQL Server shops may end up with a Java/Oracle product or visa versa. Although it is possible to support every technology in the world it makes absolutely no sense to attempt to.&lt;br/&gt;&lt;br/&gt;The essence of enterprise architecture is to constrain the technical environment to make it more specialized and efficient. Along this same line, it is also the job of enterprise architecture to modernize the environment. That means a healthy continuous change in a constrained set of tools should always be taking place.&lt;br/&gt;&lt;br/&gt;If you are in IT and you are not prepared to be continuously learning, I recommend a change in career.&lt;br/&gt;&lt;br/&gt;On the flip side we have the IT team that has been more or less cut of the business decision process. They decide the business owners apparently do not know that they know what is best for them. IT decides they will just build it and the business owners will learn to love what they have been missing.&lt;br/&gt;&lt;br/&gt;I have seen this scenario happen with BI portals, data warehouses, workflow applications, reporting tool implementations, team collaboration sites, and I have seen it over and over again. If the IT team is lucky, they walk away without even getting a wrist slap, because the business decides to take advantage of some (10-15%) of the implementation.&lt;br/&gt;&lt;br/&gt;The business owners are happy with that because it is an improvement in their environment even if it is a small one. They just don't realize 85-90% of the budget was wasted because they were not involved upfront.&lt;br /&gt;&lt;br /&gt;Worse is the case when you get the wrist slap along with the refusal to look at your new application, much less use it.&amp;nbsp; You can build anything, but that won't mean people will use it.&lt;br/&gt;&lt;br/&gt;Balance in any sizable enterprise is not easy. Lack of transparency is usually as much a culprit as governance put in place to create transparency. Governance put in place to surface the activities of both sides of the table can easily be construed as red tape to be avoided at all cost. The governance ends up discouraging transparency instead of creating it.&lt;br/&gt;&lt;br/&gt;Common &lt;a target="_blank" href="http://www.amazon.com/gp/product/3642202780/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=3642202780"&gt;enterprise principles&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3642202780&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; and well defined visions and goals are a good place to start. These of course have to be agreed on by all, not just a few at the top of the food chain. Everyone should have a voice in helping to come to agreed upon enterprise principles and well defined visions and goals. Even if everyone does not agree at least they were heard and they understand the other side's point of view. Everybody agreeing to disagree, is much better than simply disagreeing.&lt;br/&gt;&lt;br/&gt;The business needs to know what is going on in IT, and IT needs to know what is going on in the business. It seems these things always come down to effectively communicating in order to remain transparent.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-7883329991263515235?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/7883329991263515235/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=7883329991263515235&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7883329991263515235'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7883329991263515235'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/07/communicate-because-in-it-if-you-build.html' title='Communicate... because in IT, if you build it, they may not come.'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-8801941682014205828</id><published>2011-07-12T09:30:00.001-07:00</published><updated>2011-07-19T16:39:35.943-07:00</updated><title type='text'>Pro ASP.NET MVC 3 Framework Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This is the perfect book for the beginner and the advanced MVC developer. It is a one stop shop for learning the ASP.NET MVC 3 Framework.&lt;br/&gt;&lt;br/&gt;It starts out with a nice little sample application that will get beginners up to speed fast. It then covers the MVC Pattern in detail and how it relates to Domain-Driven Development, Repositories, Dependency Injection, and Automated Testing.&lt;br/&gt;&lt;br/&gt;Next the is a chapter on the C# features a good MVC developer needs in their tool belt, as well as the Razor syntax. This chapter does a good job of introducing the Razor view engine.&lt;br/&gt;&lt;br/&gt;Then there is a chapter on the essential tools MVC developers should understand. This chapter covers Ninject, Unit Testing and Moq.&lt;br/&gt;&lt;br/&gt;In the next 3 chapters the authors take you through building a real application. Everything is included from the views to the repository (using Entity Framework 4.1), to the database. They also include the unit tests. The application is a complete store front and an administration site.&lt;br/&gt;&lt;br/&gt;The next part of the book includes details on individual features of the ASP.NET MVC 3 Framework. It includes chapters on URLs, Routing &amp;amp; Areas, Controllers &amp;amp; Actions, Filters, Controller Extensibility, Views, Model Templates, Model Binding, Model Validation, Unobtrusive Ajax, and jQuery.&lt;br/&gt;&lt;br/&gt;The last part of the book has chapters on Security, Authentication &amp;amp; Authorization, Deployment.&lt;br/&gt;&lt;br/&gt;I like that the authors show you how to take advantage of the tools available in Visual Studio 2010 to help get you as productive as possible.&lt;br/&gt;&lt;br/&gt;This is a very well rounded book. It covers everything a .NET Architect and Developer needs to know to build real world applications.&lt;br/&gt;&lt;br/&gt;The downloadable code is very well organized and appears usable. It is seperated into chapters and then into topics with in the chapters. It looks really nice, but most of it does not run so that is a ding to the book.&lt;br/&gt;&lt;br/&gt;All in all I highly recommend this book for anyone moving into the ASP.NET MVC 3 Framework world. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1430234040/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=1430234040"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=1430234040&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=1430234040&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/1430234040/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=1430234040"&gt;Pro ASP.NET MVC 3 Framework&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=1430234040&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-8801941682014205828?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/8801941682014205828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=8801941682014205828&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8801941682014205828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8801941682014205828'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/07/pro-aspnet-mvc-3-framework-book-review.html' title='Pro ASP.NET MVC 3 Framework Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5719045416199645250</id><published>2011-07-05T18:17:00.000-07:00</published><updated>2011-07-05T18:18:12.048-07:00</updated><title type='text'>Entity Framework 4 in Action Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This is rock solid coverage of the Entity Framework 4.0. It does not include coverage, beyond a small mention, of EF 4.1 (code first and DbContext API) or the June CTP release (enum support) of EF, but that does not take anything away from the book.&lt;br /&gt;&lt;br /&gt;The book is broken down into 4 sections - Redefining your Data-Access Strategy, Getting Started with Entity Framework, Mastering Entity Framework, and Applied Entity Framework.&lt;br /&gt;&lt;br /&gt;This book starts with a great overview of the history of data access, its issues, and how the Entity Framework can be used to address them. One of the things I like most about this section is that the authors also tell you when you should not be using O/RM.&lt;br /&gt;&lt;br /&gt;The book continues with chapters on Querying the object model, Querying with LINQ to Entities, Domain model mapping, Understanding the entity lifecycle, Persisting objects into the database, Handling concurrency and transactions, Entity SQL, Working with stored procedures, and Exploring EDM metadata.&lt;br /&gt;&lt;br /&gt;The last part of the book covers Designing the application around Entity Framework , and using the Entity Framework with ASP.NET, n-tier development, and Windows applications. It also covers Testing and performance.&lt;br /&gt;&lt;br /&gt;The book goes in depth into all the topics covered. I found the author's writing style made reading the book from front to back easy and enjoyable. It will also make a great reference.&lt;br /&gt;&lt;br /&gt;My only gripe is that I wish the printed book would have been in color.&lt;br /&gt;&lt;br /&gt;The downloadable code is very well organized and usable. The book contains samples in VB and C#.&lt;br /&gt;&lt;br /&gt;One of the things I like about buying Manning books is that I get an ebook with it. I can't stand reading ebooks, but I do like them for searching. Manning gives you the ebook, not a trial to your ebook which is great.&lt;br /&gt;&lt;br /&gt;All in all I highly recommend this to anyone just getting started with EF as well as anyone experienced with EF.&lt;br /&gt;&lt;br /&gt;&lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a href="http://www.amazon.com/gp/product/1935182188/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1935182188"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=1935182188&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=1935182188&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a href="http://www.amazon.com/gp/product/1935182188/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=1935182188"&gt;Entity Framework 4 in Action&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=1935182188&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5719045416199645250?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5719045416199645250/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5719045416199645250&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5719045416199645250'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5719045416199645250'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/07/entity-framework-4-in-action-book.html' title='Entity Framework 4 in Action Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-9060672397831661276</id><published>2011-07-04T17:58:00.000-07:00</published><updated>2011-07-04T17:59:02.722-07:00</updated><title type='text'>Enterprise Architecture: Creating Value by Informed Governance Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;After reading &lt;a target="_blank" href="http://www.amazon.com/gp/product/3642202780/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=3642202780"&gt;Architecture Principles&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3642202780&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; and &lt;a target="_blank" href="http://www.amazon.com/gp/product/3642013090/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=3642013090"&gt;Enterprise Architecture at Work&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3642013090&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; I decided I would also read &lt;a target="_blank" href="http://www.amazon.com/gp/product/354085231X/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=354085231X"&gt;this book&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=354085231X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; and &lt;a target="_blank" href="http://www.amazon.com/gp/product/3540926704/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=3540926704"&gt;Enterprise Governance and Enterprise Engineering&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=3540926704&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; as well. I am starting &lt;a target="_blank" href="http://www.amazon.com/gp/product/3540926704/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=3540926704"&gt;Enterprise Governance and Enterprise Engineering&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=realworlsofta-20&amp;l=as2&amp;o=1&amp;a=3540926704&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; now. This series is great!!! I recommend every Enterprise Architect buy the series.&lt;br/&gt;&lt;br/&gt;This book was the first of the series. It is only 145 pages long, but it is packed full of valuable information.&lt;br/&gt;&lt;br/&gt;This book puts Enterprise Architecture into context. It gives a complete picture of Enterprise Architecture.&lt;br/&gt;&lt;br/&gt;It starts with a great chapter on why Enterprise Architecture is needed and then has chapters on Positioning Enterprise Architecture, The Results of Enterprise Architecting, The Process of Enterprise Architecting, and The Enterprise Architect.&lt;br/&gt;&lt;br/&gt;One of my favorite parts of the book is the description the book gives to the Enterprise Architect role. Anyone looking to hire or become an Enterprise Architect should read this chapter. It covers basic job descriptions, competencies (e.g. dedication, authenticity, integrity, negotiation, openness, stability, etc.), responsibilities, and personality types.&lt;br/&gt;&lt;br/&gt;One of the things I didn't like about the book is that there is no index. This seems to be the case for the smaller Springer book, so I can't ding the authors for that.&lt;br/&gt;&lt;br/&gt;This is a well rounded introduction to Enterprise Architecture. It covers all the basics in depth and also provides a really nice example to show you the results of Enterprise Architecting.&lt;br/&gt;&lt;br/&gt;All in all I highly recommend this book for anyone involved in anyway with Enterprise Architecture. It will provide you a clear picture of what it involves.&lt;br/&gt;&lt;br/&gt;&lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/354085231X/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=354085231X"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=354085231X&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=354085231X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/354085231X/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=354085231X"&gt;Enterprise Architecture: Creating Value by Informed Governance (The Enterprise Engineering Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=354085231X&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-9060672397831661276?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/9060672397831661276/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=9060672397831661276&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/9060672397831661276'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/9060672397831661276'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/07/enterprise-architecture-creating-value.html' title='Enterprise Architecture: Creating Value by Informed Governance Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-7496908595995867126</id><published>2011-06-28T16:52:00.000-07:00</published><updated>2011-06-28T16:53:45.396-07:00</updated><title type='text'>Parallel Programming with Microsoft .NET: Design Patterns for Decomposition and Coordination on Multicore Architectures Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This is a book of patterns that achieve potential parallelism. It is very important concept that all developers should have a decent grasp on. The patterns teach you how to write programs that run faster when parallel hardware is available and about the same as an equivalent sequential program when it is not.&lt;br/&gt;&lt;br/&gt;The book starts with an introduction to potential parallelism, tasks, coordinating tasks, shared data, and the limits of parallelism. It then has a chapter on each pattern which include Parallel Loops, Parallel Tasks, Parallel Aggregation, Futures, Dynamic Task Parallelism, and Pipelines.&lt;br/&gt;&lt;br/&gt;It continues with some awesome appendices- Adapting Object-Oriented Patterns, Debugging and Profiling Parallel Applications, and Technology Overview. It ends with a nice glossary, references, and indexes.&lt;br/&gt;&lt;br/&gt;The book does a nice job of giving examples in PLINQ (Parallel LINQ) and TPL (Task Parallel Library).&lt;br/&gt;&lt;br/&gt;There is a great companion site located on CodePlex. You can download Answers to end of chapter questions, C#, F#, and VB code samples, Appendix B Color Figures, and a nice demo application.&lt;br/&gt;&lt;br/&gt;The book is very well written and the authors do a great job of making what would seem like a complex topic easy to understand.&lt;br/&gt;&lt;br/&gt;The thing I like most about this book is that there is no fluff. The book is all about getting you up and running, but up and running the right way with the right tools.&lt;br/&gt;&lt;br/&gt;This book is a must read for anyone considering moving into parallel programming with the .NET framework.&lt;br/&gt;&lt;br/&gt;&lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a href="http://www.amazon.com/gp/product/0735651590/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0735651590"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0735651590&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0735651590&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a href="http://www.amazon.com/gp/product/0735651590/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=0735651590"&gt;Parallel Programming with Microsoft .NET: Design Patterns for Decomposition and Coordination on Multicore Architectures (Patterns &amp; Practices)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0735651590&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-7496908595995867126?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/7496908595995867126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=7496908595995867126&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7496908595995867126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7496908595995867126'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/06/parallel-programming-with-microsoft-net.html' title='Parallel Programming with Microsoft .NET: Design Patterns for Decomposition and Coordination on Multicore Architectures Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-1727221698051635657</id><published>2011-06-27T10:16:00.000-07:00</published><updated>2011-06-27T10:22:47.840-07:00</updated><title type='text'>Architecture Principles: The Cornerstones of Enterprise Architecture Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;My first look at his book was in PDF format. My friend let me borrow his copy. I liked it so much I printed it and put it in a three ring binder. I liked that so much that I wanted something more permanent so I bought the book. The book is pretty pricy for it's size, so you are not paying for quantity, you are paying for quality and it is worth it!!!&lt;br/&gt;&lt;br/&gt;Anyone familiar with Software Architecture understands that quality attributes need to be identified, balanced against one another, and then met through tactics. Principles are a key to unlock the door that has quality attributes hidden away in some dark corner of your enterprise.&lt;br/&gt;&lt;br/&gt;As an attribute of principles, your teams will have a better understand of the quality attribute they should be targeting when they are pursuing an architectural principle.&lt;br/&gt;&lt;br/&gt;Architecture Principles are described in this book as the cornerstones in Enterprise Architecture and it definitely shows you why this is true.&lt;br/&gt;&lt;br/&gt;The lack of Architecture Principles contribute to me hearing things like this-&lt;br/&gt;&lt;br/&gt;-- We have an SDLC but we usually do not have time to follow it, so we are more agile. In other words, operating in chaos mode.&lt;br/&gt;&lt;br/&gt;-- We have coding standards but they are out of date, so we usually just depend on our individual experience to guide us. In other words, we are still using the big ball of mud anti-pattern to design and code our applications.&lt;br/&gt;&lt;br/&gt;-- We built the application now we need to figure out how to test it. In other words, we have no way of know if we met our capacity plan's performance requirements (usually this won't exist either), we can't regression test, and we are paying people to repeatedly do their best to bang away at the application and hope they find the bugs.&lt;br/&gt;&lt;br/&gt;-- We have built logging in some places but now we have to figure out how to purge and archive the logs, and get logging into the rest of the application. In other words, we find architecture and design to be unnecessary overhead so we are used to missing things like this.&lt;br/&gt;&lt;br/&gt;-- and so on and so on and so on…&lt;br/&gt;&lt;br/&gt;This book starts out with a couple chapters that introduce and define enterprise architecture. It then continues with chapters that include A Conceptual Framework for Principles, Architecture Principle Specifications, A Practical Approach, Case Studies, Architecture Principles in Context, and Summary, Conclusions and Future Work.&lt;br/&gt;&lt;br/&gt;The book ends with two appendices. One is a Principles Catalogue and the other is Architecture Principles in TOGAF. The Principles Catalogue is a really nice catalogue of 59 basic principles that can be used as a great starting point for getting started with defining your principles.&lt;br/&gt;&lt;br/&gt;One of the things I like most about this book is that it defines the essential meaning of enterprise architecture as a normative restriction of design freedom towards projects and programs (or in a positive light- it reduces design stress). In 2005 I started using what I called &lt;a target="_blank" href="http://www.corporatewebbing.com/rwsa/RestrictiveDevelopment.htm"&gt;&lt;strong&gt;Restrictive Development&lt;/strong&gt;&lt;/a&gt; as a way to propagated my architectural constraints throughout the analysis, design, and the construction phases of my projects. It was nice to see I was not off base with my line of thought.&lt;br/&gt;&lt;br/&gt;One of the things I didn't like about the book is that there is no index. There is a very small (1 page) Glossary and a thorough References section, but no index. &lt;br /&gt;&lt;br /&gt;Although this book does not say it, I believe the most important thing this book does is to bring to light that architecture principles should be explicitly defined and implemented. Just like an architecture. It exists whether or not you execute a software architecture business cycle and define it or not. You just don't know what it is and have no way of controlling and improving it. Your enterprise has principles that are guiding your enterprise, but if you do not have them explicitly defined and enforced, you are just flying blind and those invisible principles are doing the driving. &lt;br /&gt;&lt;br /&gt;This book is a must read for anyone involved with Enterprise Architecture in any way. Architecture Principles are a very very important topic and they deserve your attention &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a href="http://www.amazon.com/gp/product/3642202780/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=3642202780"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=3642202780&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3642202780&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a href="http://www.amazon.com/gp/product/3642202780/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399373&amp;creativeASIN=3642202780"&gt;Architecture Principles: The Cornerstones of Enterprise Architecture (The Enterprise Engineering Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3642202780&amp;camp=217145&amp;creative=399373" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-1727221698051635657?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/1727221698051635657/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=1727221698051635657&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1727221698051635657'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1727221698051635657'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/06/architecture-principles-cornerstones-of.html' title='Architecture Principles: The Cornerstones of Enterprise Architecture Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-8253393006225180240</id><published>2011-06-20T09:38:00.001-07:00</published><updated>2011-06-20T09:38:47.982-07:00</updated><title type='text'>Enterprise Architecture at Work: Modelling, Communication and Analysis Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;If you want to learn how to do Enterprise Architecture modeling, this book is for you. The book covers the Archimate language in detail.&lt;br/&gt;&lt;br/&gt;The book starts off with a nice introduction to Enterprise Architecture. It explains the internal and external drivers and then goes on to introduce the current state of Enterprise Architecture in the industry.&lt;br/&gt;&lt;br/&gt;It introduces EFQM, ISO 9001, COBIT, ITIL, CMMI, IEEE 1471-200, Zachman Framework, TOGAF, and MDA. There is a short introduction to each, but it is enough to put them in context.&lt;br/&gt;&lt;br/&gt;The book the talks briefly about the description languages which include IDEF, BPMN, Testbed, ARIS, UML, and ADLs.&lt;br/&gt;&lt;br/&gt;Next there is a nice chapter named Foundations. Foundations outline the fundamental ideas on which the author's approach is based. Topics include architectural complexity, describing enterprise architectures, and pictures, Models, and semantics.&lt;br/&gt;&lt;br/&gt;The last chapter before heading full steam ahead into modeling is Communication of Enterprise Architectures. The book then has chapters on guidelines for modelling, viewpoints and visualisation, architecture analysis, architecture support, and tool support.&lt;br/&gt;&lt;br/&gt;The book then has three nice size case studies and wraps up with a chapter on what is beyond enterprise architecture. The case studies are of sizable systems, they are not just three hello world projects.&lt;br/&gt;&lt;br/&gt;This book is in full color which makes the diagrams easier to understand. The book is small so it is easy to keep by your side. I like the writing style of the authors, they make it an easy and enjoyable read.&lt;br/&gt;&lt;br/&gt;This book has tons of diagram examples in it. I use Archimate when I do Enterprise Architecture models. I use &lt;a target="_blank" href="http://www.sparxsystems.com/enterprise_architect_user_guide/modeling_languages/archimate.html"&gt;SPARX EA&lt;/a&gt;, but there is also a free tool available named &lt;a target="_blank" href="http://archi.cetis.ac.uk/"&gt;Archi: Archimate Modelling&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;All in all if you are an architect you owe it to yourself to check out this book and give Archimate a shot. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3642013090/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=3642013090"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=3642013090&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3642013090&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/3642013090/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399369&amp;creativeASIN=3642013090"&gt;Enterprise Architecture at Work: Modelling, Communication and Analysis (The Enterprise Engineering Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=3642013090&amp;camp=217145&amp;creative=399369" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-8253393006225180240?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/8253393006225180240/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=8253393006225180240&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8253393006225180240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8253393006225180240'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/06/enterprise-architecture-at-work.html' title='Enterprise Architecture at Work: Modelling, Communication and Analysis Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-7365378824830474245</id><published>2011-06-09T18:44:00.000-07:00</published><updated>2011-06-09T18:45:02.901-07:00</updated><title type='text'>Handbook of Human Factors in Web Design, Second Edition Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This is a huge book and there is a ton of information covered. Some of it in depth and some at a high level.&lt;br/&gt;&lt;br/&gt;Most of the contributor's names are followed with PhD. That is not a bad thing, it is actually good, because the book does not read like it was written by people who's names are followed by PhD, but the material is PhD quality.&lt;br/&gt;&lt;br/&gt;The book reads like a collection of thesis papers that have been translated for us mere mortals to understand. It is a collection of papers gathered into sections by topic, which means the chapters do not always flow into one another, but some do build on one another.&lt;br/&gt;&lt;br/&gt;Some of the topics covered are Historical Overview of Human Factors and Ergonomics, History of Computers and the Internet, Human–Computer Interaction, Physical Ergonomics and the Web, Developing Adaptive Interfaces for the Web, Organization and Structure of Information using Semantic Web Technologies, Intranets and Intra-organizational Communication, User-Centered Methods for the Designing Web Interfaces, Task Analysis Methods and Tools for Developing Web Applications, Human Factors in Online Consumer Behavior, Analyzing and Modeling User Activity for Web Interactions, and Mobile Interface Design for M-commerce.&lt;br/&gt;&lt;br/&gt;The book is very expensive and at its current price I can't say that the information you get out of it is worth the price or not. It will depend on how much of it you end up using and how much of it is new to you.&lt;br/&gt;&lt;br/&gt;I am assuming it is so salty partly because of the construction of the book, which is very high quality. It is one of the best constructed book I have purchased.&lt;br/&gt;&lt;br/&gt;The thing I like most about the book is that its chapters are self contained. I read this book in absolutely no order at all. I picked the topic I was most interested in and started there. I continued down the list of topics that interested me.&lt;br/&gt;&lt;br/&gt;Each chapter is followed by a very extensive reference section that allows you to continue digging further into the topic if so desired.&lt;br/&gt;&lt;br/&gt;Although the book is not in color, there is a nice section of colored figures. It includes all the figures that benefit seeing them in color.&lt;br/&gt;&lt;br/&gt;One thing is for certain, after lugging this thing around for a month you are sure to be in better shape.&lt;br/&gt;&lt;br/&gt;If you build web sites, and you care about your customers getting a high quality product from your efforts, invest in this book. I rarely pay $111.00 for a book, but I can say I am glad I did, this was worth every penny. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a href="http://www.amazon.com/gp/product/1439825947/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217153&amp;creative=399701&amp;creativeASIN=1439825947"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=1439825947&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=1439825947&amp;camp=217153&amp;creative=399701" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a href="http://www.amazon.com/gp/product/1439825947/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217153&amp;creative=399701&amp;creativeASIN=1439825947"&gt;Handbook of Human Factors in Web Design, Second Edition (Human Factors and Ergonomics)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=1439825947&amp;camp=217153&amp;creative=399701" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-7365378824830474245?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/7365378824830474245/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=7365378824830474245&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7365378824830474245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7365378824830474245'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/06/handbook-of-human-factors-in-web-design.html' title='Handbook of Human Factors in Web Design, Second Edition Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-4008817793240059320</id><published>2011-06-09T06:49:00.001-07:00</published><updated>2011-06-09T06:50:25.914-07:00</updated><title type='text'>Silverlight isn’t dead PLEASE read this and stop the Nonsense</title><content type='html'>I have never seen so much noise over so little information. I am in the same boat as everyone else.  I am worried about Microsoft's leadership and direction. Personally I am not happy with what I have been seeing, but all the Silverlight is Dead noise is crazy.&lt;br/&gt;&lt;br/&gt;Please read-&lt;br/&gt;&lt;a target="_blank" href="http://www.winrumors.com/silverlight-isnt-dead-its-the-heart-of-windows-phone-windows-8-and-xbox/"&gt;Silverlight isn’t dead, it’s the heart of Windows Phone, Windows 8 and Xbox&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-4008817793240059320?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/4008817793240059320/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=4008817793240059320&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/4008817793240059320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/4008817793240059320'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/06/silverlight-isnt-dead-please-read-this.html' title='Silverlight isn’t dead PLEASE read this and stop the Nonsense'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-7472790240266542687</id><published>2011-06-08T17:21:00.000-07:00</published><updated>2011-06-08T18:03:42.959-07:00</updated><title type='text'>Developers should Learn Why not just Memorize What</title><content type='html'>I have gotten a few emails asking why I read so many books. Simply put, I read books to learn about all the things the people who are much smarter than me recommend I do.&lt;br/&gt;&lt;br/&gt;The one thing I learned in college is that if I wanted an A, I needed to work for it. I was not naturally smart like some of my classmates were. I am also horrible at memorization, so I had to learn why something was done and not just the formula to accomplish the task at hand.&lt;br/&gt;&lt;br/&gt;I also learned that the more I learned the less I knew. Programming and architecture require a lot of knowledge, much more than my little brain can hold. So I read and what keep is the why something is done the way it is done. I also do my best to remember a reference to the location of what I read (which book I read it in).&lt;br/&gt;&lt;br/&gt;This has burned me when memorization was a preferred skill over experience. I was in an interview once that had gone on for a pretty long time. Nothing technical was asked for hours. Then one of the interviewers came in and started asking very simple yet broad technical questions. The random memorization type. You know, define an assembly, list the new features in .NET 4.0, how many toes does a monkey have. Those type of questions.&lt;br/&gt;&lt;br/&gt;My gears didn't switch, instead they locked. I could not recall the lists of things they wanted me to recall. I could actually remember the page number and the page layout the answer to one of the questions was on, but could not remember the content of the page.&lt;br/&gt;&lt;br/&gt;It worked out for the best, the company I was interviewing with has seemed to have lost its direction. It also seemed they were interested in a road warrior, which I am no longer willing to be.&lt;br/&gt;&lt;br/&gt;I don't feel bad about doing poorly in interviews that are just a bunch of random questions looked up by one of the interviewers 2 hours before the interview. I expect to be asked about my resume and grilled about what I have claimed to do. In the interview above not one question was about anything on my resume that day. It was one of the weirdest ones I have been on. I guess the point is, preferring memorization over understanding why something is done, does have its place in the industry, but I am not interested in those places.&lt;br/&gt;&lt;br/&gt;I recently attended a presentation where one of the topics was the death of apprenticeship. The line of thought is that with all knowledge now available at ones finger tips, the only skill you need is to know how to use Google or any other electronic data resource. Experience no longer counts for anything.&lt;br/&gt;&lt;br/&gt;Although I agree with this line of thought for certain jobs, I do not agree with it for Software Development (and many other professions that I am not qualified to talk about). Although I know there are a lot of developers that would disagree. There are a lot of them out there that believe all you need is Google and other people's code to succeed at developing software. Like I said above, I do agree with this line of thought, but with respect to learning the other's experience and understanding behind those code snippets they so kindly post. Just using the end result without understanding why you are using it, will come back to bite you later.&lt;br/&gt;&lt;br/&gt;I have attended several technical review meetings over the years and sometimes I am simply left speechless when I hear something like "Now that we have the application deployed we need to talk about XXX". You can put security, logging, error handling, performance, testing, etc. in XXX. They collected all the pieces of what it takes to build the application, but no one on the team had any architectural experience to put them in place in the correct order. When I asked how they could be so far off base, I have been told … They see architecture as extra work that gets in the way of real progress.&lt;br/&gt;&lt;br/&gt;My response is they simply don't have the experience on the team to know better. For those that have never seen architecture done correctly, they don't believe it is worth the effort. Most of those environments give a team of inexperienced individuals the responsibility to execute the architecture business cycle and they simply generate a whole lot of useless artifacts that are later viewed as a waste of time. They learned what artifacts to produce but never learn why you produce them and what the goal of producing them is. They were simply a check box on a list of "this is what is produced during the architecture process".&lt;br/&gt;&lt;br/&gt;To me having information is knowledge, knowing what to do with the knowledge is wisdom. I see a whole lot of knowledge these days, but very little wisdom. As long as the shortcut to the end result continues to be taken, our industry is going to continue to produce garbage, but I guess that is not all bad for those of us who make a living cleaning up garbage.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-7472790240266542687?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/7472790240266542687/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=7472790240266542687&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7472790240266542687'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7472790240266542687'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/06/developers-should-learn-why-not-just.html' title='Developers should Learn Why not just Memorize What'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5933055198547463186</id><published>2011-06-07T09:57:00.001-07:00</published><updated>2011-06-07T09:57:51.805-07:00</updated><title type='text'>Programming Microsoft ASP.NET 4 Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This is the ASP.NET book a .NET Software Architect wants by their side. Not that it isn't good for a developer also, it just really focuses on all the things a .NET Software Architect needs to know about the technical aspects of ASP.NET 4.&lt;br/&gt;&lt;br/&gt;This book covers all its material in-depth. A lot of the material is for advanced ASP.NET programmers. The author gives this warning at the beginning of the book.&lt;br/&gt;&lt;br/&gt;The book has complete chapters on ASP.NET and IIS, Configuration, HTTP Handlers, Modules, and Routing, Core Server Controls, Input Forms, Data Binding, HTTP Request Context, State Management, Caching, Security, Ajax, and jQuery.&lt;br/&gt;&lt;br/&gt;One of the things I did not like about the book is that it has cut the advanced aspects of ASP.NET and refers you to the author's previous book for those topics. This seems to be the new way publishers are saving money. Although I have seen some reviews that complained about all the previous material being included and bloating a book, I have seen 10x the amount of complaints about the removal of the material.&lt;br/&gt;&lt;br/&gt;Another thing that annoyed me was the inclusion of material from one of the authors other books, &lt;a target="_blank" href="http://www.amazon.com/gp/product/073562609X/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217153&amp;creative=399349&amp;creativeASIN=073562609X"&gt;Microsoft® .NET: Architecting Applications for the Enterprise (Pro-Developer)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=073562609X&amp;camp=217153&amp;creative=399349" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; . It is not that the material is bad (actually it is great), is just is too limited to have an impact. It felt out of context. You should read that entire Architecting Applications for the Enterprise book, not just a few chapters from it. I would have preferred more technical ASP.NET information be included in its place.&lt;br/&gt;&lt;br/&gt;The saving grace with respect to the two annoyances I listed above was that the author did not repeatedly refer to his other books. I have read some books that it seemed every five pages you were being told to go look something up in the author's other book before reading what they had written in their new one.&lt;br/&gt;&lt;br/&gt;My favorite thing about this book is the level of detail the author goes into. He does a great job of providing the complete picture of all the topics he covers.&lt;br/&gt;&lt;br/&gt;The chapter on security is great. It breaks down all the aspects of ASP.NET security including Where the Threats Come From, The ASP.NET Security Context, Forms Authentication, The Membership and Role Management API, Claims-Based Identity, and Security-Related Controls.&lt;br/&gt;&lt;br/&gt;The code is very well organized and usable. It is all under one solution file.&lt;br/&gt;&lt;br/&gt;I highly recommend this book to anyone doing advanced ASP.NET programming or doing .NET Software Architecture. &lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0735643385/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217153&amp;creative=399701&amp;creativeASIN=0735643385"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0735643385&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0735643385&amp;camp=217153&amp;creative=399701" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a target="_blank" href="http://www.amazon.com/gp/product/0735643385/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217153&amp;creative=399701&amp;creativeASIN=0735643385"&gt;Programming Microsoft ASP.NET 4&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0735643385&amp;camp=217153&amp;creative=399701" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5933055198547463186?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5933055198547463186/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5933055198547463186&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5933055198547463186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5933055198547463186'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/06/programming-microsoft-aspnet-4-book.html' title='Programming Microsoft ASP.NET 4 Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-4843754730060659254</id><published>2011-06-07T08:19:00.001-07:00</published><updated>2011-06-07T08:19:54.608-07:00</updated><title type='text'>SATURN Conference 2011 Presentations are Available</title><content type='html'>The SATURN Conference 2011 presentations are available for download.&lt;br /&gt;&lt;br /&gt;Links to the downloads and descriptions of the presentations are available &lt;a target="_blank" href="http://www.sei.cmu.edu/saturn/2011/"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-4843754730060659254?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/4843754730060659254/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=4843754730060659254&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/4843754730060659254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/4843754730060659254'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/06/saturn-conference-2011-presentations.html' title='SATURN Conference 2011 Presentations are Available'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-3721504999247976114</id><published>2011-05-26T10:48:00.001-07:00</published><updated>2011-05-26T10:48:33.342-07:00</updated><title type='text'>Practical Code Generation in .NET: Covering Visual Studio 2005, 2008, and 2010 Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;When it comes to code generation I have seen the worst of the worst and some really cool implementations.&lt;br/&gt;&lt;br/&gt;The worst was on a large government project. The consulting firm created a custom code generator that created every layer of the 5 layer application. In truth, the only reason the project was so large was because of the effort that went into the implementation and maintenance of the code generation application. As time went on the firm lost all control of the relationship between the generated code and the application that created it. Maintenance teams needed to be in place for both the production code and the generation tool. Needless to say a ton of money was wasted on the project.&lt;br/&gt;&lt;br/&gt;The best was the use of the GAT and GAX tools to put code generation tools in place to support a Software Product Line Engineering project. The tools generated project shells, added different components based on wizard selection, built configuration files, and included item level recipes. The code generation tools didn't attempt to control the application implementation, it only enhanced it. It was used to increase productivity and help enforce consistency.&lt;br/&gt;&lt;br/&gt;I was glad to find that the author does not attempt to implement a grandiose code generation monstrosity like the consulting firm did in my first example. He actually does a really great job of warning the reader to not go overboard with code generation.&lt;br/&gt;&lt;br/&gt;The book covers Visual Studio Add-ins, generating code with the CodeModel, FileCodeModel, VsWebsite, and VSLangProj, generating solutions and projects, modifying text in the code editorT4 Templates, item templates, and attributes.&lt;br/&gt;&lt;br/&gt;The book ends with 3 sizable case studies. They include Generating a Connection String Manager, Generating Validation Code, and Generating Data-Conversion Code. You can read Generating a Connection String Manager on the &lt;a target="_blank" href="http://www.informit.com/articles/article.aspx?p=1594849"&gt;informIT web site&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The biggest let down I found with this book is the downloadable code.&amp;nbsp; The author has 2 of the case studies available for download, but does not have sample per chapter available.&amp;nbsp;&amp;nbsp; You also need to install DSL Toolkit to get the Generating Data-Conversion Code project to load in Visual Studio 2008, but it didn't load in Visual Studio 2010.&lt;br /&gt;&lt;br/&gt;One of the things I like the most about the book is that the author really shows you how to take advantage of existing tools and libraries that are intended to be used for code generation. In the large government project I mentioned above, they re-invented every size wheel you can think of. Everything was done from scratch and did not take advantage of any of the framework tools.&lt;br /&gt;&lt;br /&gt;Over all I would recommend this book to anyone interested in code generation with the .NET framework and Visual Studio.&amp;nbsp; It will definately get you moving in the right direction.&lt;br/&gt;&lt;/td&gt;&lt;td style="text-align: center"&gt;&lt;a href="http://www.amazon.com/gp/product/0321606787/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399349&amp;creativeASIN=0321606787"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0321606787&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0321606787&amp;camp=217145&amp;creative=399349" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a href="http://www.amazon.com/gp/product/0321606787/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399349&amp;creativeASIN=0321606787"&gt;Practical Code Generation in .NET: Covering Visual Studio 2005, 2008, and 2010 (Addison-Wesley Microsoft Technology Series)&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0321606787&amp;camp=217145&amp;creative=399349" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-3721504999247976114?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/3721504999247976114/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=3721504999247976114&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3721504999247976114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3721504999247976114'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/practical-code-generation-in-net.html' title='Practical Code Generation in .NET: Covering Visual Studio 2005, 2008, and 2010 Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-6766376287769702925</id><published>2011-05-23T17:20:00.000-07:00</published><updated>2011-05-23T17:27:57.917-07:00</updated><title type='text'>The Art of Enterprise Information Architecture Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This book is a mature book on Enterprise Information Architecture. By mature I mean thorough and packed with wisdom gained through experience. I am a member of the Microsoft camp. I have been for a long time now, and I have no intention of switching to IBM, but I wish Microsoft would be producing books like this that included their technology. Microsoft may able to in a few years, but they are no where close to being this mature with their Enterprise Architecture tools now. The Microsoft MDM tools are showing signs of improvement with Denali, but they still have a way to go before the product is a competitor to the IBM MDM stack.&lt;br/&gt;&lt;br/&gt;This is one of the best real world Enterprise Information Architecture books I have read. It starts off with a few chapters that go into great detail introducing and defining Enterprise Information Architecture. It then has individual chapters that detail the individual topics. They include A Conceptual and Logical View, Component Model, Operational Model, New Delivery Models: Cloud Computing, Enterprise Information Integration, Intelligent Utility Networks, Enterprise Metadata Management , Master Data Management , Web 2.0 World, Dynamic Warehousing, and New Trends in Business Analytics and Optimization.&lt;br/&gt;&lt;br/&gt;This book does an excellent job of making the case for architecture in the enterprise. The concept of architecture is hard enough to sell on individual software development projects, but on an enterprise level it is usually treated as a four letter word and the word is not "good". So many places today have what they call an Enterprise Architecture group, but rarely do they do anything that has to do with Enterprise Architecture. If you curious as to what they should be doing, read this book.&lt;br/&gt;&lt;br/&gt;The book references maturity models frequently. They are great for gauging where your company is on the maturity level.&lt;br/&gt;&lt;br/&gt;The book also does a great job of introducing the different data domains found in a decent size enterprise. They include Metadata, Master Data, Operational Data, Unstructured Data, and Analytical data. Having these defined by context and role allows you to implement an IT Governance framework to manage them.&lt;br/&gt;&lt;br/&gt;The book is written in an easy to read format and is broken down in a very logic way making it also easy to target specific topics.&lt;br/&gt;&lt;br/&gt;No matter what your technology stack is this book can help you implement an Enterprise Information Architecture or at least it will help you improve the one you have in place now. &lt;/td&gt;&lt;td align="center"&gt;&lt;a href="http://www.amazon.com/gp/product/0137035713/ref=as_li_ss_il?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399349&amp;creativeASIN=0137035713"&gt;&lt;img border="0" src="http://ws.assoc-amazon.com/widgets/q?_encoding=UTF8&amp;Format=_SL110_&amp;ASIN=0137035713&amp;MarketPlace=US&amp;ID=AsinImage&amp;WS=1&amp;tag=realworlsofta-20&amp;ServiceVersion=20070822" &gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0137035713&amp;camp=217145&amp;creative=399349" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;br/&gt;&lt;a href="http://www.amazon.com/gp/product/0137035713/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399349&amp;creativeASIN=0137035713"&gt;The Art of Enterprise Information Architecture: A Systems-Based Approach for Unlocking Business Insight&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0137035713&amp;camp=217145&amp;creative=399349" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-6766376287769702925?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/6766376287769702925/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=6766376287769702925&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6766376287769702925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6766376287769702925'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/art-of-enterprise-information.html' title='The Art of Enterprise Information Architecture Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-461058785418028558</id><published>2011-05-19T13:57:00.001-07:00</published><updated>2011-05-19T13:57:40.921-07:00</updated><title type='text'>CMMI for Development: Guidelines for Process Integration and Product Improvement Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;CMMI (Capability Maturity Model Integration) models are the product of the industry’s best coming together to build a collection of best practices that help organizations to improve their processes.&lt;br/&gt;&lt;br/&gt;The version 1.3 core framework now supports &lt;a target="_blank" href="http://www.amazon.com/gp/product/0321711521/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399349&amp;creativeASIN=0321711521"&gt;CMMI for Services&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0321711521&amp;camp=217145&amp;creative=399349" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;, &lt;a target="_blank" href="http://www.amazon.com/gp/product/0321711505/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399349&amp;creativeASIN=0321711505"&gt;CMMI for Development&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0321711505&amp;camp=217145&amp;creative=399349" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;, and &lt;a target="_blank" href="http://www.amazon.com/gp/product/0321711513/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399349&amp;creativeASIN=0321711513"&gt;CMMI for Acquisition&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0321711513&amp;camp=217145&amp;creative=399349" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;. This book covers CMMI for Development.&lt;br/&gt;&lt;br/&gt;It begins with an introduction to process improvement, the CMMI history, the CMMI framework, and CMMI for development.&lt;br/&gt;&lt;br/&gt;It then has several chapters that go into detail explaining the ins and outs of the CMMI framework. Topics covered include Core Process Areas and CMMI Models, Understanding Levels, Structures of the Continuous and Staged Representations, Understanding Capability Levels and Maturity Levels, Process Areas, Achieving High Maturity, Recursion and Iteration of Engineering Processes, Adopting CMMI, and SCAMPI Appraisal Methods.&lt;br/&gt;&lt;br/&gt;My favorite chapter in this section is Chapter 4: Relationship Among Process Areas. It has great diagrams that show the relationships between the process areas. It really helps to give them context.&lt;br/&gt;&lt;br/&gt;Part one ends with Essays and Case Studies. It has 5 essays and 3 case studies. My favorite essay is Ten Missing Links to CMMI Success. Some of the other are Avoiding Typical Process Improvement Pitfalls, Hiring a CMMI Consultant or Lead Appraiser, and From Doubter to Believer: My Journey to CMMI.&lt;br/&gt;&lt;br/&gt;The book then continues with a detailed overview of the Generic Goals and Generic Practices which is followed by a chapter on each of the Process Areas in the CMMI for Development. Each chapter about a process area gives in-depth coverage. They include the purpose, introductory notes, related process areas, and specific practices by goals which include example work products.&lt;br/&gt;&lt;br/&gt;The book ends with a few appendix – References, Acronyms, CMMI Version 1.3 Project Participants, and a really nice Glossary.&lt;br/&gt;&lt;br/&gt;One of the things I like about the book is the Perspectives. They are little sidebars that include insight from the creators and industry experts. Some of them are pretty interesting like the one about how the name constellation started being used.&lt;br/&gt;&lt;br/&gt;There are also tons of tips, hints, and x-refs in the sidebars throughout the process areas part of the book. Tips and hints where similar in that they provided additional information about the topic at hand. The x-ref boxes include cross reference material. Sometimes the cross references where in the book and sometimes they are external.&lt;br/&gt;&lt;br/&gt;The book is the crème de la crème of the CMMI resources. This material comes straight from the experts. I have been involved in a lot of process improvement initiatives. Not all of the CMMI initiatives, which is a shame. I can tell you that if I had my choice, the wisdom found in this book would be applied to all the projects I go to.&lt;br/&gt;&lt;br/&gt;All in all, if you are involved with process improvement, you own it to yourself to get this book. If you are involved with CMMI for development at all, you MUST get this book. &lt;/td&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321711505" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-461058785418028558?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/461058785418028558/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=461058785418028558&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/461058785418028558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/461058785418028558'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/cmmi-for-development-guidelines-for.html' title='CMMI for Development: Guidelines for Process Integration and Product Improvement Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-2987804454319440651</id><published>2011-05-19T07:44:00.000-07:00</published><updated>2011-05-19T14:26:43.199-07:00</updated><title type='text'>Microsoft Dynamics Month at Packt</title><content type='html'>For all of you currently using Microsoft Dynamics Packt is running a &lt;a target="_blank" href="http://www.packtpub.com/article/exclusive-offer-on-microsoft-dynamics-books"&gt;Dynamics campaign&lt;/a&gt; on its website. As part of the campaign, Packt is offering an exclusive discount for all Microsoft Dynamics books during May 2011. Here is the link which explains it in detail: &lt;a target="_blank" href="http://www.packtpub.com/article/exclusive-offer-on-microsoft-dynamics-books"&gt;Packt Dynamics Month&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-2987804454319440651?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/2987804454319440651/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=2987804454319440651&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2987804454319440651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2987804454319440651'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/microsoft-dynamics-month-at-packt.html' title='Microsoft Dynamics Month at Packt'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-679899308477600470</id><published>2011-05-17T11:40:00.001-07:00</published><updated>2011-05-17T11:40:49.775-07:00</updated><title type='text'>Context switching in the IT world can be very harmful to schedules</title><content type='html'>One of the biggest issues I see in a lot of IT / Software Development environments is the lack of understanding when it comes to context switching.&lt;br/&gt;&lt;br/&gt;There are a lot of managers that don't understand how much work is lost when they expect their team to multitask. More disastrous is the interruption that could have been an email or voice mail. I rarely answer my phone and shut down email when I want to concentrate. Cubes have wrecked the ability to focus. My current cube is totally open and I am surrounded by a support team that have a line waiting to talk to them sometimes.&lt;br/&gt;&lt;br/&gt;When I was in the electronic engineering field we had offices. When the door was closed that meant you were in a meeting or deep into your work. Unless it was an emergency, rarely was there a knock. You'd get a polite email asking for you to let them know when you were free.&lt;br/&gt;&lt;br/&gt;It can take an hour to ramp up and get into full motion. Getting interrupted can sent you back an hour and a half easily. Your not ramping back up from a clean shutdown, your ramping back up some where in the middle of an abrupt interruption. Kind of like a train wreck.&lt;br/&gt;&lt;br/&gt;At TechED 2011 Microsoft introduced a new Visual Studio-vNext feature to help with context switching. In essence it allows you to save the current state of your Visual Studio work environment so you can return to it exactly like you left it. Although this will help a little if you need to switch to another part of the solution you are working on, it won't help the overall issue.&lt;br/&gt;&lt;br/&gt;If I am working on a major issue that involves the entire architecture of an enterprise wide application, I may have a dozen touch points I am working on at the same time. To be pulled away from them unexpectedly for an hour or two to put out a fire can trash a whole days work.&lt;br/&gt;&lt;br/&gt;When I am in charge of a team of developers I expect the project manager to be running interference for us. Often that job falls on me when there is no project manager. I have often told my team in the past that if they are approached with a fire the only response I want them giving is the one that sends the person to me first. I don't want my team disturbed.&lt;br/&gt;&lt;br/&gt;I have learned that in certain environments an estimation needs to be doubled at a minimum because you can expect to be pulled off a given task several times a day.&lt;br/&gt;&lt;br/&gt;Managers that don't understand this find themselves way behind on the schedule before they even know what hit them.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-679899308477600470?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/679899308477600470/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=679899308477600470&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/679899308477600470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/679899308477600470'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/context-switching-in-it-world-can-be.html' title='Context switching in the IT world can be very harmful to schedules'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-8956529042862107514</id><published>2011-05-17T07:45:00.000-07:00</published><updated>2011-05-17T07:46:52.657-07:00</updated><title type='text'>SPARX Enterprise Architect 9 has been released!!!</title><content type='html'>SPARX has released version 9 of Enterprise Architect. &lt;br /&gt;&lt;br /&gt;EA is still my tool of choice for architecting and designing systems. The new architecture tools in Visual Studio 2010 are very nice reverse engineering tools, but the UML tools are still to primitive to be considered for real world architecture. SPARX EA is a far more robust software engineering tool.&lt;br /&gt;&lt;br /&gt;Below are some of the highlights of the new release (From the SPARX EA site)-&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The Enterprise Experience&lt;/strong&gt;&lt;br /&gt;A suite of new and expanded tools to help keep your team and your project on track and on budget. A Project Calendar to track events, milestones and resource allocations, Gantt charts to track allocated resources against elements; and the new Personal Information manager to exchange "model mail" and manage your allocated work. Add to this the Gap Analysis matrix and an all new Whiteboard technology, plus many more team focused enhancements! &lt;br /&gt;&lt;a target="_blank" href="http://www.sparxsystems.com/products/ea/9/the-enterprise-experience.html"&gt;&lt;strong&gt;Read More&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The Learning Experience&lt;/strong&gt;&lt;br /&gt;An all new Learning Center focused on delivering in-place advice on getting the job done in Enterprise Architect. It is coupled with a significantly expanded Example Model with many real-world examples to get you familiar with vital concepts and capabilities quickly and painlessly.&lt;br /&gt;New usability tweaks, restructured menus and faster ways of building great models; take advantage of the real power within Enterprise Architect 9.&lt;br /&gt;&lt;a target="_blank" href="http://www.sparxsystems.com/products/ea/9/the-learning-experience.html"&gt;&lt;strong&gt;Read More&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The Modeling Experience&lt;/strong&gt;&lt;br /&gt;Hand Drawn mode lets you work in a less rigorous and more conceptual mental frame. Simulates hand drawn diagrams to help let your imagination run free. Expanded diagram filters support, new easy to use orthogonal line styles, line jogs over intersecting line points, a great new Win32 UI technology and a host of other modeling tools make this a truly remarkable release - focused on delivering quality results!&lt;br /&gt;&lt;a target="_blank" href="http://www.sparxsystems.com/products/ea/9/the-modeling-experience.html"&gt;&lt;strong&gt;Read More&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;New Modeling Languages&lt;/strong&gt;&lt;br /&gt;• BPMN 2.0 including Conversation, Collaboration and Choreography diagrams&lt;br /&gt;• BPEL 2.0 generation from BPMN 2.0 models&lt;br /&gt;• SOMF 2.1 profile for cloud computing&lt;br /&gt;• SysML 1.2&lt;br /&gt;• Win32 UI Technology&lt;br /&gt;&lt;a target="_blank" href="http://www.sparxsystems.com/products/ea/9/new-modeling-languages.html"&gt;&lt;strong&gt;Read More&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;New Analysis and Testing Tools&lt;/strong&gt;&lt;br /&gt;All new Test Points and Test Cuts - support xUnit like behavior layered on top of existing code. Record test sets from executing code and define your own invariants and pre-conditions and post-conditions. Model Simulation of behavioral diagrams - walk through your diagram from the model simulator! Lots of updates and enhancements to the visual execution analyzer - debugging tools, recording and profiling.&lt;br /&gt;&lt;a target="_blank" href="http://www.sparxsystems.com/products/ea/9/new-analysis-and-testing-tools.html"&gt;&lt;strong&gt;Read More&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;New Productivity Tools&lt;/strong&gt;&lt;br /&gt;Many enhancements to the version control capabilities, XMI round-trip, support for ECore (EMF) and other platforms. Additional cross package dependency checking when managing large distributed projects under version control. Lots of updates for C++, C#, Java, VB.Net. New Document Template editor to streamline the process of creating report templates.&lt;br /&gt;&lt;a target="_blank" href="http://www.sparxsystems.com/products/ea/9/new-productivity-tools.html"&gt;&lt;strong&gt;Read More&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Get it &lt;a target="_blank" href="http://www.sparxsystems.com/products/ea/9/index.html"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-8956529042862107514?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/8956529042862107514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=8956529042862107514&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8956529042862107514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8956529042862107514'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/sparx-enterprise-architect-9-has-been.html' title='SPARX Enterprise Architect 9 has been released!!!'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-109974183722083953</id><published>2011-05-16T11:18:00.000-07:00</published><updated>2011-05-16T11:19:13.097-07:00</updated><title type='text'>Essential SharePoint 2010: Overview, Governance, and Planning Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;So I had all the technical how to books, and some of them covered some governance and planning, but I was left wanting more. I hoped this book would fill in the gaps and it did.&lt;br/&gt;&lt;br/&gt;The biggest problem I have run into with SharePoint is that there is not enough planning and governance surrounding the use of it. I have been in a lot of environments that started their SharePoint initiatives with a plan that was no more that “Hey why don’t we throw SharePoint up and see what it can do”. Suddenly those curious individuals are using it to share documents. The word slowly spreads that it is available and more users start using it.&lt;br/&gt;&lt;br/&gt;Then one of the more curious power users (by the way, most of the time in my experience ‘power user’ = ‘dangerous user’) start adding more features and they begin to start using more of the web parts and services available.&lt;br/&gt;&lt;br/&gt;Next someone realizes you can integrate SharePoint with Reporting Services and they start down the BI road. Before you know it they have a monster on their hands and start looking for someone to clean it up and help manage it, but the cowboys who kicked it all off have moved on!!!!&lt;br/&gt;&lt;br/&gt;That story has been the same story for every single SharePoint environment I have come across, and I have come across a lot of them.&lt;br/&gt;&lt;br/&gt;I could have summed all that up with the statement “READ THIS BOOK BEFORE IMPLEMENTING A SHAREPOINT ENVIRONMENT”, but I wanted to give some context to the importance of understanding how planning and governance can impact your SharePoint environment. It is a beast, especially SharePoint 2010.&lt;br/&gt;&lt;br/&gt;The book is broken down into 3 sections. They are Planning, Optimizing, and Migrating. Some of the topics I found really useful where Why Is Governance Planning So Important?, How Do I Create a Governance Plan?, What Is in the Governance Plan?, Site Architecture, Metadata Architecture, Document and Records Management, Overview of SharePoint Security Elements, Defining and Documenting SharePoint Security, and Customizing the User Experience (UX).&lt;br/&gt;&lt;br/&gt;I also liked the chapter on Planning for Disaster Recovery: Backing Up and Restoring. We are in the middle of planning that right now and this chapter has some really useful information in it.&lt;br/&gt;&lt;br/&gt;To get a feel for the author I would suggest going to &lt;a target="_blank" href="http://www.informit.com/store/product.aspx?isbn=0321700759" style="font-weight: 700"&gt;the book's overview on the informIT site&lt;/a&gt; and reading some of the articles in the extra's area.&lt;br /&gt;&lt;br /&gt;I am in the middle of a SharePoint 2007 to 2010 migration.&amp;nbsp; This book is going to come in really handy as we start to put some governance in place around the use of the SharePoint 2010 tools.&amp;nbsp; This does a great job of introducing all the new features available SharePoint 2010.&lt;br /&gt;&lt;br /&gt;This book not only outlines what governance should be in place, it also helps you understand why it is so important.&amp;nbsp; That definitely helps when you are in an environment of cowboys who don't like having healthy constraints in place.&lt;br /&gt;&lt;br /&gt;All in All I highly recommend this book to anyone involved with the administration, implementation, or the development of SharePoint 2010. &lt;/td&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321700759" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-109974183722083953?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/109974183722083953/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=109974183722083953&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/109974183722083953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/109974183722083953'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/essential-sharepoint-2010-overview.html' title='Essential SharePoint 2010: Overview, Governance, and Planning Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-7587466944064104407</id><published>2011-05-14T18:31:00.000-07:00</published><updated>2011-05-14T18:32:12.615-07:00</updated><title type='text'>Silverlight Integration Pack for Microsoft Enterprise Library 5.0 Available</title><content type='html'>Microsoft has released Silverlight Integration Pack for Microsoft Enterprise Library 5.0.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Overview (from MSDN download site)&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;This release provides many of the features of Enterprise Library 5.0 for Silverlight application developers.&lt;br /&gt;&lt;br /&gt;Silverlight Integration Pack for Enterprise Library is a collection of guidance and reusable application blocks designed to assist Silverlight application developers with common LOB development challenges. This release includes: Caching Application Block, Exception Handling Application Block, Logging Application Block, Policy Injection Application Block, Validation Application Block, and Unity Application Block. &lt;br /&gt;&lt;br /&gt;These blocks are designed to encapsulate recommended practices which facilitate consistency, ease of use, integration, and extensibility. The release also addresses the needs of those who would like to port their existing LOB applications, that already leverage Enterprise Library, to Silverlight. &lt;br /&gt;&lt;br /&gt;Read more about it &lt;a href="http://blogs.msdn.com/b/agile/archive/2011/05/11/silverlight-integration-pack-for-microsoft-enterprise-library-5-0-released.aspx" target="_blank"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Download it &lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=7613baa3-01b0-419c-af66-48db19bac393" target="_blank"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-7587466944064104407?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/7587466944064104407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=7587466944064104407&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7587466944064104407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7587466944064104407'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/silverlight-integration-pack-for.html' title='Silverlight Integration Pack for Microsoft Enterprise Library 5.0 Available'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-8173825653255979951</id><published>2011-05-13T12:32:00.001-07:00</published><updated>2011-05-13T12:32:50.633-07:00</updated><title type='text'>Microsoft SQL Server 2008 R2 Unleashed Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;Another Unleashed behemoth!!! It is a whopping 1550 of printed pages and 2451 pages when you include the additional chapters available on the companion CD. If this book doesn’t contain the information you need about SQL Server 2008 R2, then you probably won’t find it anywhere.&lt;br /&gt;&lt;br/&gt;Just like I am not a server administrator, I am not a Database Administrator (DBA). I don’t want to be a DBA, nothing against DBAs, but I just think it is a full time job. It is not possible for me to keep up with my .NET Software Architecture skills and also be an effective DBA.&lt;br /&gt;&lt;br/&gt;Of course I have to be familiar enough with them to architect scalable, secure, high performing software, so I chose this book as my learning resource. It is a great resource. I have not gone too it and come away disappointed yet.&lt;br /&gt;&lt;br/&gt;What does make this nice is there is a lot of developer content included with the book in addition to the DBA topics.&lt;br /&gt;&lt;br/&gt;The book is broken down into 8 parts. Below is the entire Table of Contents-&lt;br/&gt;&lt;br/&gt;Part I Welcome to Microsoft SQL Server&lt;br/&gt;1 SQL Server 2008 Overview&lt;br/&gt;2 What’s New in SQL Server 2008&lt;br/&gt;3 Examples of SQL Server Implementations&lt;br/&gt;&lt;br/&gt;Part II SQL Server Tools and Utilities&lt;br/&gt;4 SQL Server Management Studio &lt;br/&gt;5 SQL Server Command-Line Utilities &lt;br/&gt;6 SQL Server Profiler &lt;br/&gt;&lt;br/&gt;Part III SQL Server Administration&lt;br/&gt;7 SQL Server System and Database Administration&lt;br/&gt;8 Installing SQL Server 2008&lt;br/&gt;9 Upgrading to SQL Server 2008 &lt;br/&gt;10 Client Installation and Configuration &lt;br/&gt;11 Security and User Administration &lt;br/&gt;12 Data Encryption&lt;br/&gt;13 Security and Compliance&lt;br/&gt;14 Database Backup and Restore &lt;br/&gt;15 Database Mail&lt;br/&gt;16 SQL Server Scheduling and Notification &lt;br/&gt;17 Administering SQL Server 2008 with PowerShell &lt;br/&gt;18 SQL Server High Availability &lt;br/&gt;19 Replication &lt;br/&gt;20 Database Mirroring &lt;br/&gt;21 SQL Server Clustering &lt;br/&gt;22 Administering Policy-Based Management&lt;br/&gt;&lt;br/&gt;Part IV Database Administration&lt;br/&gt;23 Creating and Managing Databases &lt;br/&gt;24 Creating and Managing Tables &lt;br/&gt;25 Creating and Managing Indexes &lt;br/&gt;26 Implementing Data Integrity&lt;br/&gt;27 Creating and Managing Views in SQL Server &lt;br/&gt;28 Creating and Managing Stored Procedures &lt;br/&gt;29 Creating and Managing User-Defined Functions. &lt;br/&gt;30 Creating and Managing Triggers&lt;br/&gt;31 Transaction Management and the Transaction Log&lt;br/&gt;32 Database Snapshots&lt;br/&gt;33 Database Maintenance&lt;br/&gt;&lt;br/&gt;Part V SQL Server Performance and Optimization&lt;br/&gt;34 Data Structures, Indexes, and Performance&lt;br/&gt;35 Understanding Query Optimization&lt;br/&gt;36 Query Analysis&lt;br/&gt;37 Locking and Performance&lt;br/&gt;38 Database Design and Performance&lt;br/&gt;39 Monitoring SQL Server Performance&lt;br/&gt;40 Managing Workloads with the Resource Governor&lt;br/&gt;41 A Performance and Tuning Methodology&lt;br/&gt;&lt;br/&gt;Chapters on the CD&lt;br/&gt;&lt;br/&gt;Part VI SQL Server Application Development&lt;br/&gt;42 What’s New for Transact-SQL in SQL Server 2008&lt;br/&gt;43 Transact-SQL Programming Guidelines, Tips, and Tricks&lt;br/&gt;44 Advanced Stored Procedure Programming and Optimization&lt;br/&gt;45 SQL Server and the .NET Framework&lt;br/&gt;46 SQLCLR: Developing SQL Server Objects in .NET&lt;br/&gt;47 Using XML in SQL Server 2008&lt;br/&gt;48 SQL Server Web Services&lt;br/&gt;49 SQL Server Service Broker&lt;br/&gt;50 SQL Server Full-Text Search&lt;br/&gt;Part VII SQL Server Business Intelligence Features&lt;br/&gt;51 SQL Server 2008 Analysis Services&lt;br/&gt;52 SQL Server Integration Services&lt;br/&gt;53 SQL Server 2008 Reporting Services&lt;br/&gt;&lt;br/&gt;Part VIII Bonus Chapters&lt;br/&gt;54 Managing Linked and Remote Servers&lt;br/&gt;55 Configuring, Tuning, and Optimizing SQL Server Options&lt;br/&gt;56 SQL Server Disaster Recovery Planning&lt;br /&gt;&lt;br/&gt;Almost every chapter begins with a section that covers what is new in SQL Server 2008. There are a ton of diagrams that are really helpful with learning the topics, and a ton of great tables that help to summarize topics.&lt;br/&gt;&lt;br/&gt;The thing I like most about this book is the quantity of information about profiling, tracing, monitoring, and performance. There is a whole chapter on locking!!! The authors writing style makes it an easy to read book, or at least as easy as server reading can get.&lt;br/&gt;&lt;br/&gt;The code downloads (as well as the ones on the CD) are a little mixed up. They are all there and usable, but you have to do a little digging.&lt;br/&gt;&lt;br/&gt;If you are in anyway involved with SQL Server 2008 R2, you owe it to yourself to get this book. It will not leave my side!!!!&lt;br/&gt;&lt;br/&gt;I highly recommend this book for DBA's, developers, and architects. &lt;/td&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0672330563" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-8173825653255979951?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/8173825653255979951/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=8173825653255979951&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8173825653255979951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8173825653255979951'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/microsoft-sql-server-2008-r2-unleashed.html' title='Microsoft SQL Server 2008 R2 Unleashed Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-2513315622413198572</id><published>2011-05-13T10:37:00.000-07:00</published><updated>2011-05-13T10:38:10.803-07:00</updated><title type='text'>UML 2 and the Unified Process: Practical Object-Oriented Analysis and Design (2nd Edition) Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;The first thing I imagine I should address is why the heck I am reviewing a book that is over 5 years old. I have owned the first edition since its publication and have continued to use it on every project as a reference. When the second edition came out I really wanted it, but there was always another book on my wish list that I needed to also have. Since I had the first edition, I opted for the other book. That continued for longer than I anticipated.&lt;br/&gt;&lt;br/&gt;So here it is 6 years later and I am holding a copy of the second edition!!!! The reason I am choosing to review it is that is as relevant today as it was when it was written.&lt;br/&gt;&lt;br/&gt;One of the things I like most about this book is that you can turn to the appendix and not find the word agile. This book is all about agility, but it was written before the days of the "agile" buzz word.&lt;br/&gt;&lt;br/&gt;This book is about using UML 2 in a development process to implement a solid solution. It is one of the best books available when it comes to using UML in the real world.&lt;br/&gt;&lt;br/&gt;The book is broken down into 6 parts. In Part 1 the book starts out with an introduction to UML and the Unified Process. Part 2 is dedicated to Requirements, Part 3 Analysis, Part 4 Design, Part 5 Implementation, and Part 6 is an introduction to the Object Constraint Language (OCL).&lt;br/&gt;&lt;br/&gt;The book covers all the UML diagrams (Use Case, Activity, Class, Sequence, State machines, etc.) in the context of the Unified Process.&lt;br/&gt;&lt;br/&gt;Beyond the typical UML diagrams the book also covers the requirement workflow, the analysis workflow, finding analysis classes, relationships, inheritance and polymorphism, use case realization, the design workflow, interfaces and components, the implementation workflow, and the OCL.&lt;br/&gt;&lt;br/&gt;Each chapter begins with an activity diagram that shows the structure and the flow of the chapter. This makes it easy for you to layout a reading plan for a specific topic. There are tons of notes highlighting the important information in the given section. The UML diagrams include annotations in blue which really make them easy to see.&amp;nbsp; Every chapter ends with a "What we have learned" section.&amp;nbsp; These are great.&amp;nbsp; They can be used as review lists during your development process.&lt;br/&gt;&lt;br/&gt;The authors have a writing style that makes the book easy to read from cover to cover, but it also makes a great reference.&lt;br/&gt;&lt;br/&gt;This is still my number one choice in UML books to have at my side. The first version of this book made it to everyone of my gigs in the past, now it is this versions turn.&lt;br/&gt;&lt;br/&gt;If you are working with UML, this book can make you life much easier. I highly recommend getting a copy of it!!!! &lt;/td&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321321278" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-2513315622413198572?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/2513315622413198572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=2513315622413198572&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2513315622413198572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2513315622413198572'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/uml-2-and-unified-process-practical.html' title='UML 2 and the Unified Process: Practical Object-Oriented Analysis and Design (2nd Edition) Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5928742635568975145</id><published>2011-05-05T13:10:00.000-07:00</published><updated>2011-05-05T13:12:52.225-07:00</updated><title type='text'>Windows Server 2008 R2 Unleashed Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This thing is gargantuan. It is a whopping 1653 pages of high quality Windows Server R2 information. If this book doesn’t contain the information you need about Windows Server 2008 R2, then you probably won’t find it anywhere.&lt;br/&gt;&lt;br/&gt;I am not a server guy. I don’t want to be a server guy, nothing against server guys, but I just think it is a full time job.  It is not possible for me to keep up with my .NET Software Architecture skills and also be an effective server administrator.&lt;br/&gt;&lt;br/&gt;Of course I have to be familiar enough with them to architect scalable, secure, high performing software, so I chose this book as my learning resource. It is a great resource. I have not gone too it and come away disappointed yet.&lt;br/&gt;&lt;br/&gt;The book is broken down into 11 parts:&lt;br/&gt;&lt;br/&gt;Part I- Windows Server 2008 R2 Overview&lt;br/&gt;Part II- Windows Server 2008 R2 Active Directory&lt;br/&gt;Part III- Networking Services&lt;br/&gt;Part IV- Security&lt;br/&gt;Part V- Migrating to Windows Server 2008 R2&lt;br/&gt;Part VI- Windows Server 2008 R2 Administration and Management&lt;br/&gt;Part VII- Remote and Mobile Technologies&lt;br/&gt;Part VIII- Desktop Administration&lt;br/&gt;Part IX- Fault-Tolerance Technologies&lt;br/&gt;Part X- Optimizing, Tuning, Debugging, and Problem Solving&lt;br/&gt;Part XI- Integrated Windows Application Services&lt;br/&gt;&lt;br/&gt;Almost every chapter begins with a section that covers the history of the topic, or gives an overview of the topic, included the vocabulary of the topic at hand.&lt;br/&gt;&lt;br/&gt;The authors writing style makes it an easy to read book, or at least as easy as server reading can get.&lt;br/&gt;&lt;br/&gt;This book is not like some I have seen that are written by several authors, they usually seem to be very disconnected and you can tell when one author stops and another starts. This book flows nicely from chapter to chapter.&lt;br/&gt;&lt;br/&gt;If you are in anyway involved with Windows Server 2008 R2, you owe it to yourself to get this book. It will not leave my side!!!! &lt;/td&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=067233092X" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5928742635568975145?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5928742635568975145/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5928742635568975145&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5928742635568975145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5928742635568975145'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/windows-server-2008-r2-unleashed-book.html' title='Windows Server 2008 R2 Unleashed Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-778644111727810944</id><published>2011-05-04T10:27:00.001-07:00</published><updated>2011-05-04T10:27:56.497-07:00</updated><title type='text'>Enterprise Model Patterns: Describing the World Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;When I first started reading this book I became discouraged because it seemed as thought the author had bastardized UML. As I read on it became apparent that the author had merely created a DSL (Domain Specific Language) using the UML syntax. The domain? Business, from the highest to the lowest level of abstraction. He simply calls it data modeling.&lt;br/&gt;&lt;br/&gt;The author starts the book out with an explanation as to why a new way of data modeling (using his UML syntax) is needed. He then covers the conventions of his DSL (by the way, he does not refer to is as a DSL… that is just how I classified it in my own mind) which is a constrained UML language consisting of only class diagrams.&lt;br/&gt;&lt;br/&gt;Using only class diagrams bothered me at first too. How do you show state, communication, timing, deployment, etc.? Well it turns out that one of the constraints of the DSL is to limit activities to the data in an activity, not the activities themselves. He leaves that to the other diagrams, that are not part of his modeling goals.&lt;br/&gt;&lt;br/&gt;I became more and more comfortable with the constraints as I read on. I think the author made the right choice in limiting the DSL the way he did. He goes through 4 levels of abstraction in his process. If he had not out boundaries in place, it would have been way too big in scope to be usable.&lt;br/&gt;&lt;br/&gt;The author the then continues on with several chapters that take you through all 4 levels (Level 0, 1, 2, and 3) of abstraction used in the author's modeling process.&lt;br/&gt;&lt;br/&gt;Level 0: An abstract template that underlies level 1.&lt;br/&gt;&lt;br/&gt;Level 1: A model of an enterprise in general. Includes chapters on People and Organization, Geographic Locations, Assets, Activities, and Timing.&lt;br/&gt;&lt;br/&gt;Level 2: A more detailed model describing specific functional areas. Includes chapters on Facilities, Human Resources, Communications and Marketing, Contracts, Manufacturing, and The Laboratory.&lt;br/&gt;&lt;br/&gt;Level 3: A model of a specific industry. Includes chapters on Criminal Justice, Microbiology, Banking, Oil Field Production, and Highway Maintenance.&lt;br/&gt;&lt;br/&gt;Each chapter contains tons of diagrams.&lt;br/&gt;&lt;br/&gt;This book is an excellent guide to abstraction as well as business modeling. Following the author through the different levels of models will greatly increase your analysis skills and modeling skills.&lt;br/&gt;&lt;br/&gt;If you are a business analyst, DBA, or software architect this book is mandatory reading.&lt;br/&gt;&lt;br/&gt;&lt;/td&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=1935504053" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-778644111727810944?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/778644111727810944/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=778644111727810944&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/778644111727810944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/778644111727810944'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/enterprise-model-patterns-describing.html' title='Enterprise Model Patterns: Describing the World Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-6272922433285156693</id><published>2011-05-02T18:03:00.000-07:00</published><updated>2011-05-03T12:16:26.784-07:00</updated><title type='text'>Microsoft Expression Blend 4 Unleashed Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I have not taken the time I should have to get to know Microsoft Expression Blend like I should know it. I use it a lot to build user interfaces and to create SketchFlow prototypes, but I knew I was not fully aware of its capabilities. My hopes for this book where that it would get me up to speed.&lt;br/&gt;&lt;br/&gt;I am happy to report that Microsoft Expression Blend Unleashed has provided me with the insight into the Blend tools I was looking for. The book is in full color so it is a pleasure to read and the author has a great writing style.&lt;br/&gt;&lt;br/&gt;The book starts off with a history of Expression Blend, the author's opinion on why you should learn it, and insight into the direction Microsoft is taking with Windows 8 and Project Jupiter.&lt;br/&gt;&lt;br/&gt;The author then covers the Blend interface in detail. Like I said above, I have been using Blend for years, and this section shed a lot of light on the tools I was missing. It pointed out a lot of tools that are not very obvious.&lt;br/&gt;&lt;br/&gt;The book then continues with chapters on Properties and Functionality, Layout, Styles and Templates, Working with Parts and States, SketchFlow, Data Support, Animations and Transitions, Shapes, Paths, and Effects, Skins, Themes, and Resource Dictionaries, and Windows Phone 7.&lt;br/&gt;&lt;br/&gt;These chapters really help to flesh out the features in Blend that are hard to find. I knew how to do everything in XAML, but using Blend will hopefully increase my productivity.&lt;br/&gt;&lt;br/&gt;There is very little code behind in the book. The author did a good job of choosing examples that allowed everything to be accomplished with Blend.&lt;br/&gt;&lt;br/&gt;The code download is very well organized and usable.&lt;br/&gt;&lt;br/&gt;All in all if you want to learn about the Blend UI, this is a great place to start. This book has moved Blend from a tool I use once in a while to one that I feel confident enough about to use for any UI development.&lt;br/&gt;&lt;br/&gt;&lt;/td&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=B004VSPXW2" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-6272922433285156693?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/6272922433285156693/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=6272922433285156693&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6272922433285156693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/6272922433285156693'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/05/microsoft-expression-blend-unleashed.html' title='Microsoft Expression Blend 4 Unleashed Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-1600312678148440971</id><published>2011-04-29T11:04:00.000-07:00</published><updated>2011-04-29T11:06:38.822-07:00</updated><title type='text'>JustDecompile- New Free .NET Reverse Engineering Tool from Telerik</title><content type='html'>Telerik has picked up the slack for Red Gate and stepped up to provide the community with a new reverse engineering tool for .NET. &lt;br/&gt;&lt;br/&gt;It blew up on XP for me, but works fine on Windows 7 64x. &lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Overview (from download site)&lt;/strong&gt;&lt;br/&gt;JustDecompile is a new, free developer productivity tool designed to enable easy .NET assembly browsing and decompiling. Currently available as a BETA, JustDecompile builds on years of experience in code analysis and development productivity originally created for JustCode, Telerik's Visual Studio productivity add-in. JustDecompile lets you effortlessly explore and analyze compiled .NET assemblies, decompiling code with the simple click of a button. Download the BETA and provide feedback in the Forums to help shape the official version, targeted for the Q2 2011 release this summer. &lt;br/&gt;&lt;br/&gt;&lt;img alt="" src="http://www.softwareprocessengineering.com/_Tel/JustDecompileSM.jpg" /&gt;&lt;br /&gt;&lt;a href="http://www.softwareprocessengineering.com/_Tel/JustDecompile.jpg" target="_blank"&gt;&lt;strong&gt;Click here for larger image&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Get it &lt;a target="_blank" href="http://www.telerik.com/products/decompiling.aspx" style="font-weight: 700"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-1600312678148440971?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/1600312678148440971/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=1600312678148440971&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1600312678148440971'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1600312678148440971'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/04/justdecompile-new-free-net-reverse.html' title='JustDecompile- New Free .NET Reverse Engineering Tool from Telerik'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-7432965898574777947</id><published>2011-04-21T18:19:00.000-07:00</published><updated>2011-04-21T18:20:18.821-07:00</updated><title type='text'>Visual Studio ALM Rangers Architecture Tooling Guidance 2.1 (ABE) is available</title><content type='html'>The Visual Studio ALM Rangers have released a new ALM guidance package for Visual Studio 2010. &lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Overview from Visual Studio ALM Rangers Site&lt;/strong&gt;&lt;br/&gt;The architecture tooling guidance contains practical guidance for Visual Studio 2010 Ultimate, common usage scenarios, hands on labs, and lessons learnt in-the-field from the communities, focused on modeling tools.&lt;br/&gt;&lt;br/&gt;The guidance scenarios include understanding and reverse engineering an existing application or starting a new application from scratch. These are both common challenges that any development lead or architect faces. The intent is to present you with examples that show how these tools can support you in real world scenarios, and to provide you with practical guidance and checklists, instead of an in-depth tour of the product features.&lt;br/&gt;&lt;br/&gt;This latest version contains a new &lt;a target="_blank" href="http://visualstudiogallery.msdn.microsoft.com/082f8986-bad1-4d1b-9531-57fdcf598526"&gt;&lt;strong&gt;Visual Studio Extension&lt;/strong&gt;&lt;/a&gt; which includes guidance automation and hands-on labs, in addition to the existing guidance. See the download page on the companion &lt;a target="_blank" href="http://vsarchitectureguide.codeplex.com/"&gt;&lt;strong&gt;Codeplex site&lt;/strong&gt;&lt;/a&gt; for a series of short videos that introduce the new extension features.&lt;br /&gt;&lt;br /&gt;Download the extension &lt;a target="_blank" href="http://visualstudiogallery.msdn.microsoft.com/082f8986-bad1-4d1b-9531-57fdcf598526"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;.&lt;br /&gt;Check out more about the ALM Rangers &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/vstudio/ee358786.aspx"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;.&lt;br/&gt;&lt;br /&gt;Some screenshots below:&lt;br /&gt;&lt;br/&gt;&lt;img src="http://www.softwareprocessengineering.com/_alm/ProjectsSM.jpg" alt="" /&gt;&lt;br/&gt;&lt;a href="http://www.softwareprocessengineering.com/_alm/Projects.jpg" target="_blank"&gt;&lt;strong&gt;Click here for larger image&lt;/strong&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;img src="http://www.softwareprocessengineering.com/_alm/LayerSM.jpg" alt="" /&gt;&lt;br/&gt;&lt;a href="http://www.softwareprocessengineering.com/_alm/Layer.jpg" target="_blank"&gt;&lt;strong&gt;Click here for larger image&lt;/strong&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;img src="http://www.softwareprocessengineering.com/_alm/HOLSM.jpg" alt="" /&gt;&lt;br/&gt;&lt;a href="http://www.softwareprocessengineering.com/_alm/HOL.jpg" target="_blank"&gt;&lt;strong&gt;Click here for larger image&lt;/strong&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;img src="http://www.softwareprocessengineering.com/_alm/ReusableArchSM.jpg" alt="" /&gt;&lt;br/&gt;&lt;a href="http://www.softwareprocessengineering.com/_alm/ReusableArch.jpg" target="_blank"&gt;&lt;strong&gt;Click here for larger image&lt;/strong&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-7432965898574777947?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/7432965898574777947/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=7432965898574777947&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7432965898574777947'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/7432965898574777947'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/04/visual-studio-alm-rangers-architecture.html' title='Visual Studio ALM Rangers Architecture Tooling Guidance 2.1 (ABE) is available'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-2628719392753987970</id><published>2011-04-19T17:27:00.000-07:00</published><updated>2011-04-19T17:44:13.599-07:00</updated><title type='text'>101 Windows Phone 7 Apps, Volume I: Developing Apps 1-50 Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;I was planning on waiting until Mango was released before I downloaded the Microsoft phone tools. Two things changed my mind, Mix 2011 and this book. When I saw this book coming out I pre-ordered it immediately.&lt;br/&gt;&lt;br/&gt;The author calls his book "unconventional". The question I had was will this be unconventional in a good way, or a bad way. I am happy to report the book is unconventionally awesome!!!!&lt;br/&gt;&lt;br/&gt;The book is broken down into 8 parts. 1- Getting Started, 2- Transforms &amp;amp; Animations, 3- Storing &amp;amp; Retrieving Local Data, 4- Pivot, Panorama, Charts, &amp;amp; Graphs, 5- Audio &amp;amp; Video, 6- Microphone, 7- Touch &amp;amp; Multi-Touch, 8- Accelerometer Tricks, and then 5 handy appendices that include a XAML Reference, Theme Resources Reference, Animation Easing Reference, and a Geometry Reference.&lt;br/&gt;&lt;br/&gt;The book is designed to be read from front to back. The author builds on topics as he goes, but it also makes a great reference.&lt;br/&gt;&lt;br/&gt;Each chapter is an application that teaches a topic. For example Chapter 1: Tally covers Application basics, Chapter 2: Flashlight covers Application Bar, Timers, Brushes, and Message Box, Chapter 3: In Case of Emergency covers Orientation, Keyboard, and Emulator-Specific Code, and Chapter 4: Stopwatch covers the Grid, StackPanel, User Controls, Alignment, and Progress Bar.&lt;br/&gt;&lt;br/&gt;Appendix A, the Lessons index is arranged by topic and points to the chapters that cover it. For example Background Worker is listed as being covered in chapters 11, 24, and 25.&amp;nbsp; Throughout the book there are also sidebars that answer FAQs, dig deeper, offer tips, and give warnings.&amp;nbsp; There is no filler/fluff in this book which is not true of many books these days, especially 1130 page books!!!&lt;br /&gt;&lt;br /&gt;Each chapter cover and lists the XAML and the code behind.&amp;nbsp; That makes it possible to read the book without having to have a computer with the code nearby.&lt;br/&gt;&lt;br/&gt;I still don't have a windows phone (I am typing this review in OneNote for the iPhone). The author points out the trouble this may cause when developing. Not being able to test on a real phone could really come back to bit you if you deployed to the Windows Phone Marketplace. Although he points out where to get one for development purposes (without a voice or data plan) they are $500.00. That is not going to fly. The same phones are $0.01 with a voice and data plan. I wish Microsoft would buy up a bunch of refurbished ones and resell them at a reasonable price.&lt;br/&gt;&lt;br/&gt;I will be buying a &lt;a target="_blank" href="http://www.amazon.com/gp/product/B004HYGU18/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399349&amp;creativeASIN=B004HYGU18"&gt;Microsoft Touch Mouse&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=B004HYGU18&amp;camp=217145&amp;creative=399349" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; as soon as they become available to help with programming for gestures.&lt;br/&gt;&lt;br/&gt;The downloadable code is sweet. It contains some copies of applications the author has published to Windows Phone Marketplace. There is a fully functioning application for each chapter.&lt;br/&gt;&lt;br/&gt;The book is in full color so it is a pleasure to read. The author has a great writing style. I haven't put the book down since it arrived. The one problem you will have is that a lot of the applications are simply fun to play, so you may find yourself getting side tracked. I have been bugging my dog with the talking parrot sounds and been playing darts a lot. This is by far the most fun I have had reading a book in a long time!!!!&lt;br/&gt;&lt;br/&gt;With Mango just around the corner, now is the time to get up to speed on Windows Phone. This book makes it a pleasure to learn the platform.&lt;br/&gt;&lt;br/&gt;All in all, if you are interested in Windows Phone development at all, this book is a must have!!!!&amp;nbsp; It will definitely become a classic.&amp;nbsp; This is one of the best programming books I own, and I own a lot of them.&lt;br/&gt;&lt;br/&gt;&lt;/td&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0672335522" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-2628719392753987970?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/2628719392753987970/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=2628719392753987970&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2628719392753987970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2628719392753987970'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/04/101-windows-phone-7-apps-volume-i.html' title='101 Windows Phone 7 Apps, Volume I: Developing Apps 1-50 Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-2207572904938279483</id><published>2011-04-13T17:30:00.001-07:00</published><updated>2011-04-13T17:31:12.434-07:00</updated><title type='text'>Microsoft Silverlight 5 Beta Offline Documentation Available for Download</title><content type='html'>Microsoft has posted the Microsoft Silverlight 5 Beta Offline Documentation. Below is an overview taken from the new documentation that outlines the new features covered in the documentation.&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Overview (From Documentation)&lt;/strong&gt;&lt;br/&gt;Silverlight 5 Beta includes several new features that are based on customer suggestions. This topic introduces some of the new features and improvements in Silverlight 5 Beta.&lt;br/&gt;&lt;br/&gt;This topic contains the following sections.&lt;br/&gt;&lt;br/&gt;Controls&lt;br/&gt;Out-of-Browser&lt;br/&gt;User Interface&lt;br/&gt;XAML&lt;br/&gt;Data&lt;br/&gt;Application Model&lt;br/&gt;Media&lt;br/&gt;3D Graphics&lt;br/&gt;Text&lt;br/&gt;Related Topics&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Controls&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;ItemsControl Search&lt;br/&gt;A user can now search a list of items in an ItemsControl using keyboard input. You can specify the property that identifies an item for search purposes by setting the TextPath attached property.&lt;br/&gt;&lt;br/&gt;DrawingSurface&lt;br/&gt;DrawingSurface is a new control in Silverlight 5 Beta. DrawingSurface defines an area where 3-D content can be composed and rendered. You implement the rendering behavior through the event data of the Draw event. For more information, see the 3-D Graphics Overview overview and the Walkthrough: Creating and Animating a 3D Textured Cube in Silverlight.&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Out-of-Browser&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;You can display multiple Window instances in trusted, out-of-browser applications. This enables you to create non-modal dialog boxes, tear-off windows, and user-adjustable layouts that can span multiple monitors. For more information, see the Window class.&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;User Interface&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Detecting Double-Clicks&lt;br/&gt;Silverlight 5 Beta adds a ClickCount event data property to the MouseButtonEventArgs event data class. You can use this property to detect double-clicks, based on platform settings for the time duration that two clicks should be considered a double-click.&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;XAML&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Silverlight 5 Beta now has a MarkupExtension base class. By implementing the ProvideValue(IServiceProvider) method, you can define a custom markup extension, which can be understood and used by the Silverlight XAML parser. Services that are intended for markup extension service context enable several scenarios that were not possible in Silverlight 4 XAML. For example, it is now possible to implement a similar markup extension behavior to the x:Type markup extension from WPF XAML.&lt;br/&gt;&lt;br/&gt;Certain structures that did not support an attribute syntax for setting their properties now support attribute syntax on properties. These structures are: CornerRadius, Thickness, Size, and Rect.&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Data&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Data Binding&lt;br/&gt;Silverlight 5 Beta enables you to debug data bindings by setting breakpoints on bindings in XAML. When a breakpoint is hit, you can use the Locals window to examine the state of a binding and identify any issues.&lt;br/&gt;&lt;br/&gt;Silverlight 5 Beta also includes several data binding enhancements, some of which were previously available only in Windows Presentation Foundation (WPF). These enhancements enable you to do the following:&lt;br/&gt;&lt;br/&gt;Use data bindings with styles. To do this, use the Setter.Value property as a binding target. You will typically do this in XAML using the binding markup extension.&lt;br/&gt;&lt;br/&gt;Bind to ancestors in the visual tree. To do this, set the Binding.RelativeSource property to FindAncestor.&lt;br/&gt;&lt;br/&gt;Associate bound objects to data templates implicitly by type instead of explicitly by template name. To do this, set the DataTemplate.DataType property for each implicit template instead of specifying x:Key values.&lt;br/&gt;&lt;br/&gt;Bind to dynamically-generated properties. To do this, implement the ICustomTypeProvider interface on classes with dynamic properties.&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Application Model&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Silverlight 5 Beta includes the following enhancements for trusted applications:&lt;br/&gt;&lt;br/&gt;Trusted applications can now access the local file system without restriction.&lt;br/&gt;&lt;br/&gt;Out-of-browser trusted applications can create multiple Window instances.&lt;br/&gt;&lt;br/&gt;System administrators can enable trusted applications to run inside the browser, simplifying enterprise deployment and application updates. This also enables you to use some previously out-of-browser-only features inside the browser, including the WebBrowser and NotificationWindow classes.&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Media&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Sound Effects&lt;br/&gt;Silverlight 5 Beta includes new classes for sound effects. You can use the classes in the Microsoft.Xna.Framework.Audio namespace to create and manage sound effects in your applications.&lt;br/&gt;&lt;br/&gt;Variable Playback Rate&lt;br/&gt;Silverlight 5 Beta includes the ability to check and change the playback rate of media. MediaElement now includes a PlaybackRate property and a RateChanged event.&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;3D Graphics&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Silverlight 5 Beta introduces the ability to use hardware accelerated 3D graphics in your Silverlight applications. This opens up a whole new set of scenarios that are possible in Silverlight, such as 3D drawn controls, data visualizers, 3D charts, scatter points, geographic overlays, and 3D games and simulations.&lt;br/&gt;&lt;br/&gt;The core of the XNA Games Studio 4.0 graphics libraries is now included in Silverlight 5 Beta. Developers familiar with XNA will be able to quickly get up to speed with Silverlight 3D graphics programming. For more information, see 3-D Graphics Overview and Walkthrough: Creating and Animating a 3-D Textured Cube in Silverlight.&lt;br/&gt;&lt;br/&gt;T&lt;strong&gt;ext&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;Character Spacing&lt;br/&gt;Silverlight 5 Beta includes the ability to increase or decrease the amount of space in between characters in text. You can do this by using the CharacterSpacing property available in the Control, TextBlock, and TextElement classes.&lt;br/&gt;&lt;br/&gt;Inter-line Spacing&lt;br/&gt;Silverlight 5 Beta enables you to increase or decrease the space between lines of text to increase readability or to change the look and feel of the body of text. You can do this by using the LineHeight and LineStackingStrategy properties available in the Block, TextBlock, TextBox, and RichTextBox.&lt;br/&gt;&lt;br/&gt;Display Overflow Content in RichTextBox&lt;br/&gt;In Silverlight 5 Beta, you can display the content that does not fit in a RichTextBox in a RichTextBoxOverflow control.&lt;br/&gt;&lt;br/&gt;You can get it &lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=d8ef5ebe-0131-4966-b7d8-c09b3a5d47d1" target="_blank"&gt;&lt;strong&gt;here&lt;/strong&gt;&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-2207572904938279483?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/2207572904938279483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=2207572904938279483&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2207572904938279483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/2207572904938279483'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/04/microsoft-silverlight-5-beta-offline.html' title='Microsoft Silverlight 5 Beta Offline Documentation Available for Download'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-1030425524060791136</id><published>2011-04-09T10:00:00.000-07:00</published><updated>2011-04-09T10:01:02.305-07:00</updated><title type='text'>Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;If you want to learn to use UML as a communication tool on your software development projects, this is the book too own. It contains a ton of examples and covers every aspect of the UML you will need to know to successfully use it on your projects.&lt;br/&gt;&lt;br/&gt;The book starts out with an introduction to software architecture and object oriented analysis and design with UML.&lt;br/&gt;&lt;br/&gt;There is then a short chapter on UML notation, a chapter on software development processes, and one on software design and architectural concepts. The last chapter in part one introduces COMET (Collaborative Object Modeling and Architectural Design Method), which is the author's software modeling and design method.&lt;br/&gt;&lt;br/&gt;To me COMET is not really that much different than the Unified Process, which is a great process. COMET just breaks out the testing activities a little differently. COMET is a very usable process and if used correctly should lead to successful software development projects.&lt;br/&gt;&lt;br/&gt;Part two of the book is all about modeling. There is a chapter on Use Case Modeling, Static Modeling, Object and Class Structuring, Dynamic Interaction Modeling, Finite State Machines, and State-Dependent Dynamic Interaction Modeling.&lt;br/&gt;&lt;br/&gt;By the time you are done with part two of this book you will know all you need to know to produce high quality diagrams that can be used between the different stakeholders on your projects as very effective communication tools.&lt;br/&gt;&lt;br/&gt;Part three of the book covers software architecture. There is a chapter on the Overview of Software Architecture, Software Subsystem Architectural Design, Designing Object-Oriented Software Architectures, Designing Client/Server Software Architectures, Designing Service-Oriented Architectures, Designing Component-Based Software Architectures, Designing Concurrent and Real-Time Software Architectures, Designing Software Product Line Architectures, and a chapter on Software Quality Attributes.&lt;br/&gt;&lt;br/&gt;If the chapter on Software Product Lines interests you, I would highly recommend buying the author's book tilted &lt;a target="_blank" href="http://www.amazon.com/gp/product/0201775956/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0201775956"&gt;&lt;strong&gt;Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures&lt;/strong&gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0201775956" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;I really the like the way part two introduces the different perspectives you need to have when considering the type of architecture you are building.&amp;nbsp; The way the author accomplishes this is unique to this book.&amp;nbsp; I have not seen it broken down this way before, and it really provides some great insight. &lt;br/&gt;&lt;br /&gt;Part three contains several case studies.&amp;nbsp; Each one provides a detailed design of the system being discussed.&amp;nbsp; These are great for seeing how well the design techniques in this book work.&amp;nbsp; You get a complete understanding of each of the systems in the case studies by the time you are done reading the chapter. &lt;br /&gt;&lt;br /&gt;This book is really well written and organized.&amp;nbsp; You can read it from front to back or use it as a reference.&amp;nbsp; Each chapter ends with exercise questions.&amp;nbsp; I usually just ignore these, but since the author has decided to include the answers I enjoyed trying to answer them.&amp;nbsp; &lt;br /&gt;&lt;br/&gt;The book has an appendix which contains a nice catalog of software architectural patterns. It is a summary of architectural structure patterns, communication patterns, and transaction patterns. It contains a summary of the pattern and the location it is used in the book.&lt;br /&gt;&lt;br /&gt;All in all this is a very high quality book packed with very valuable information any architect at an level of experience will benefit from.&amp;nbsp; Hi highly recommend this book!!!!&lt;br/&gt;&lt;br/&gt;&lt;/td&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0521764149" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-1030425524060791136?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/1030425524060791136/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=1030425524060791136&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1030425524060791136'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/1030425524060791136'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/04/software-modeling-and-design-uml-use.html' title='Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-5859042739141580203</id><published>2011-04-08T12:32:00.001-07:00</published><updated>2011-04-08T13:04:20.800-07:00</updated><title type='text'>Every Enterprise Needs a Modernization Strategy</title><content type='html'>An enterprise without a modernization strategy is an enterprise with a painful future of paying technical debt with the highest interest possible. This is especially true of custom developed applications.&lt;br/&gt;&lt;br/&gt;Software changes, period. So why not include a strategy for change in your enterprise. I have seen a lot of enterprises that pride themselves on being ready for requirement changes during their application development projects, but very few that ever consider a modernization strategy.&lt;br/&gt;&lt;br/&gt;Modernization should be architected into your applications. History has continuously shown us that in our industry nothing stays new very long. I have seen some large projects need to upgrade the version of the .NET framework before they even get the first release to production, but they never even consider that an option, so they deploy a legacy application on their first release.&lt;br/&gt;&lt;br/&gt;Most of the projects without a modernization plan lack architectural guidance as a whole. The projects that plan for modernization don't simply recreate the mess they were intended to replace. I have seen projects deliver 2 years worth of work, only to realize they just delivered themselves a legacy system that will require them to start over from the beginning.&lt;br/&gt;&lt;br/&gt;Too many projects today pick their technology based on the skills of their available team. If their skills are not up to date, then neither will the software they build be.&lt;br/&gt;&lt;br/&gt;Modernization needs to be baked into your development process. Development processes don't end upon delivery, they continue until the application is retired. Any application in production should be updated as new versions of the software they are built with are released.&lt;br/&gt;&lt;br/&gt;This is especially true with brownfield development, yet brownfield development projects are where I see modernization overlooked the most. This happens mainly because there is heavy development still going on in the environment, and all the resources are being dedicated to delivering the new functionality.&lt;br/&gt;&lt;br/&gt;I see a lot of environments that could be increasing productivity and quality with new tools available in new releases of developer tools and frameworks.&lt;br/&gt;&lt;br/&gt;There are a lot of things in software development that can come back to bite you, and not having a modernization strategy for your custom built applications is one that is guaranteed too.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-5859042739141580203?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/5859042739141580203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=5859042739141580203&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5859042739141580203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/5859042739141580203'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/04/every-enterprise-needs-modernization.html' title='Every Enterprise Needs a Modernization Strategy'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-3382241297953219903</id><published>2011-04-05T16:52:00.000-07:00</published><updated>2011-04-05T16:53:13.182-07:00</updated><title type='text'>SDLC 3.0: Beyond a Tacit Understanding of Agile Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This book is a really nice overview of the current state of modern software development processes. There isn't a better collection of information on SDLC in one place that I have seen.&amp;nbsp; It gives a great overview of the Unified Process, MBASE. Scrum, XP, Lean, FDD, Agile-Up, and Lean-Agile.&lt;br/&gt;&lt;br /&gt;After the book thoroughly explains what SDLC 3.0 is, it shows how it relates to current processes like PMBOK, Enterprise Unified Process, TOGAF, Zachman, and Acquisition (COTS).&lt;br /&gt;&lt;br/&gt;The author has created a plugin for IBM Rational Method Composer, but it is not available to the public. It is used during the author's consulting engagements. Having the process repository available in a configurable format is a must to make it usable for anything beyond an educational resource.&lt;br/&gt;&lt;br/&gt;I really like the fact that the author introduces Systems Thinking. One major resource the author missed is the book &lt;a href="http://www.amazon.com/gp/product/0471274550/ref=as_li_ss_tl?ie=UTF8&amp;tag=realworlsofta-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0471274550"&gt;&lt;strong&gt;Software Process Dynamics&lt;/strong&gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=&amp;l=as2&amp;o=1&amp;a=0471274550" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;.&lt;br/&gt;&lt;br/&gt;I like the way the author breaks down the decision process of deciding whether or not to do a detailed architectural analysis. Not often found in pro-agile books.&lt;br /&gt;&lt;br /&gt;This is my favorite 'Agile' book to date.&amp;nbsp; It is by far the most practical and down to earth.&amp;nbsp; It doesn't slam tradition software development processes, but rather points out their strengths and shows how to use those strengths.&lt;br /&gt;&lt;br /&gt;All in all I highly recommend this book for anyone interested in learning more about software development processes.&lt;/td&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0986519405" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-3382241297953219903?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/3382241297953219903/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=3382241297953219903&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3382241297953219903'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/3382241297953219903'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/04/sdlc-30-beyond-tacit-understanding-of.html' title='SDLC 3.0: Beyond a Tacit Understanding of Agile Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://www.corporatewebbing.com/t/ta.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19660677.post-8521765226657076222</id><published>2011-04-01T10:04:00.000-07:00</published><updated>2011-04-01T10:05:31.273-07:00</updated><title type='text'>Developer's Guide to Microsoft Prism 4: Building Modular MVVM Applications with WPF and Silverlight Book Review</title><content type='html'>&lt;table style="width: 100%"&gt;&lt;tr&gt;&lt;td&gt;This is a nice concise overview of all the topics related to development with Microsoft PRISM 4.0. &lt;br/&gt;&lt;br/&gt;It is not exactly the same content that is available for &lt;strong&gt;&lt;a target="_blank" href="http://compositewpf.codeplex.com/releases/view/55580"&gt;download&lt;/a&gt;&lt;/strong&gt;.&amp;nbsp; It is a trimmed down version of it.&amp;nbsp; For example it does not cover upgrading from a previous version or go into the implementation details of the examples.&amp;nbsp; It gives an overview and points you to the topic in the online MSDN documentation.&amp;nbsp; Personally I would have preferred the content to have been included.&lt;br /&gt;&lt;br /&gt;The book starts out with an overview of PRISM terminology and the reasons for using PRISM (as well as the reasons not to).&amp;nbsp; It then offers a chapter on each of the following topics- Initializing Prism Applications, Managing Dependencies Between Components, Modular Application Development, Implementing the MVVM Pattern, Advanced MVVM Scenarios, Composing the User Interface, Navigation, Communication Between Loosely Coupled Components, Sharing Code Between Silverlight and WPF, and Deploying Prism Applications. &lt;br /&gt;&lt;br /&gt;I think the book is organized well and is written in an easy to read format.&amp;nbsp; It contains a lot of diagrams that help you understand the topic.&amp;nbsp; It works well as a reference because it has a very nice index.&amp;nbsp; The book also contains a ton of links to more information about the topics it covers.&lt;br /&gt;&lt;br /&gt;PRISM is a big topic.&amp;nbsp; This book is a great place to start learning it.&amp;nbsp; Actually the best place to start.&amp;nbsp; Learning the architectural and design techniques the team used when putting PRISM together will help any architect or developer increase their skillset.&amp;nbsp; This book contains a nice overview of MVVM, MEF, UNITY (Inversion of Control/Dependency Injection),&amp;nbsp; and many popular design patterns (Command, Adapter, Application Controller, Event Aggregator, Facade, Observer, Service Locator, etc.) which makes it worth reading, even if you are not planning on using PRISM anytime soon.&amp;nbsp; Learning how PRISM works is worth the time.&lt;br /&gt;&lt;br /&gt;All in all, if you are a .NET Architect or Developer I highly recommend reading this book. &lt;/td&gt;&lt;td&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=realworlsofta-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=073565610X" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19660677-8521765226657076222?l=realworldsa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://realworldsa.blogspot.com/feeds/8521765226657076222/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19660677&amp;postID=8521765226657076222&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8521765226657076222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19660677/posts/default/8521765226657076222'/><link rel='alternate' type='text/html' href='http://realworldsa.blogspot.com/2011/04/developers-guide-to-microsoft-prism-4.html' title='Developer&apos;s Guide to Microsoft Prism 4: Building Modular MVVM Applications with WPF and Silverlight Book Review'/><author><name>tadanderson</name><uri>http://www.blogger.com/profile/14441092796780787384</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#th
