Posts
386
Comments
224
Trackbacks
42
Tuesday, June 18, 2013
Is It Time To Specialize?

ComputerWorker

Over my career I have made a living as a generalist.  I have been a jack of all trades and a master of none.  It has served me well in that I am able to move from one technology to the other quickly and make myself productive.  Where it becomes a problem is deep knowledge.  I am constantly digging for the things that aren’t basic knowledge.  How do you make a product like WCF or Windows RT do more than just “Hello World”?

As an architect I need to be a jack of all trades.  This is what helps me to bring the big picture of a project into focus for developers with different skills to accomplish the goals of the project. It is a key when the mix technologies crosses Windows, Unix and Mainframe with different languages and databases.  The larger the company that the project is for the more likely this scenario will arise.

As a consultant and a developer I need to have specialized skills in order to get the job done efficiently.  if I have a SharePoint or Windows Phone project knowing the object model details and possible roadblocks of the technology allow me to stay within budgets as well as better advise the client on technology decisions.

What is the solution?  Constant learning and associating with developers who specialize in a variety of technologies is the best thing you can do.  You may have thought you were done with classes when you left college, but in this industry you need to constantly be learning new products and languages.  The ultimate answer is you must generally specialize.  Learn as many subject areas as possible, but go deep when ever you can.  Sleep is overrated.  Good luck.

Posted On Tuesday, June 18, 2013 8:29 AM | Comments (0)
Friday, June 14, 2013
Yet Another “Why Waterfall Doesn’t Work” Post

WP_20130611_001_1

Lately I have been plunged back into an extreme waterfall project and it is eating away at my soul.  Don’t get me wrong.  I don’t really believe in a soul and I have never done a text book agile project, but the longer I’m on this project the more I feel like I’m in an infinite loop.  Document.  Review.  Document. Review.  At some point we may do some coding.

The biggest problem with waterfall projects is that you can always add more detail to design documents.  I have actually seen some documentation which had pseudo code for almost every line that the developer needs to type.  Of course these are extreme cases, but they put a spotlight on the issue.

All of this would be less costly to refactor as we code than it would be to continue to refine the design document.  A minimum of documentation to make sure we hit all the key requirements and make sure that the overall architecture is sound is really what a project needs.  Spend your time finding the problems by writing code instead of theorizing and discussing.

Moral: Waterfalls are pretty to look at, not run projects with.

Posted On Friday, June 14, 2013 8:25 AM | Comments (0)
Thursday, June 13, 2013
Preparing For BUILD 2013

 

logo-build-small

Going to conferences is a great way to keep up with the industry and recharge the batteries.  As of the writing of this post there are less than two weeks until the start of BUILD 2012.  While I haven’t been to BUILD before the other conferences that I have been to TechEd and Dev Connections in the past give me some expectations.  Normally I would be spending the last couple of weeks going through the session schedule to see which ones I want to attend.  BUILD is a little different.  It doesn’t look like we will get the session list until we get to the registration table so it is going to be a mystery meatloaf of technology.

So what do we know?  Windows 8.1 is going to to take center stage.  Not only will the preview bits be available, but there should be plenty of sessions on what new and wonderful things we can build with it.  I expect that there will be a fair amount of Windows Phone sessions, but I haven’t seen any good rumors about the Blue release yet to have an idea what the focus will be.  What isn’t in an area that I have put any thought into is the new XBox One.  There are a lot of people who are hoping for XBox One development sessions.

So what to bring with.  Win8 Laptop.  Windows Phone 8.  Lots of enthusiasm.  This is a week that is really going to rock.  See everyone there.

Posted On Thursday, June 13, 2013 4:14 PM | Comments (2)
Wednesday, May 29, 2013
What Software Architects Can Learn From Baseball Teams

WhiteSox20130513_81_1

My friend Larry Calrkin did a whole series on Architecture by Baseball, but after going to a recent White Sox game I got to thinking about the how baseball mirrors my experience.  For me it boils down to specialization, team work and leadership.

Every team member has their specialty.  Infielders have great reactions and throwing accuracy.  Outfielders can cover distance quickly and throw long distances.  There are starting pitchers who have great control and endurance and closers who throw nasty pitches for a short time.  Likewise, there are specialized positions on a development team.  There are UI developers who improve the user experience.  Your have performance experts who can find every potential roadblock in a a piece of code.  Then there are security specialists, database gurus and product experts.  Each specialist has something to add to the quality of the final product.  As an architect you need to give each of these specialists room to do what they do best.

This then leads to team work.  You can have a team of great specialists, but if they don’t come together as a team it can mean failure.  If baseball players don’t communicate you end up with errors that can gift wrap runs for the opposing team.  The problem with a software team is that the opposing teams are called missed requirements, missed deadlines and poor quality software.  As an architect we can help identify which of our specialists are best to attack a particular problem and also help the entire team understand how their tasks fit into accomplishing the project.  This helps to bring the team’s focus together instead of working as individuals.

Who brings all this together?  The manager is the leader on the field.  I look at this position being where the architect works.  Yes there is a project manager, but I think of them as the general manager who clear the way so the manager can get the goals of the team accomplished.  The architect should be the person who brings the team together and gives it direction.  I also believe it is part of my job as an architect to help the developers on my projects to improve their code quality and the way they interact with stakeholders.  Leading also means being willing to build proof of concepts or even taking on coding components so that your team members understand that you really practice what you preach.

Ultimately you need know as much as you can about every position, leverage your specialist like pitching and hitting coaches to fill in missing information, bring your players together to win and be a leader on the field.  Good luck.

Posted On Wednesday, May 29, 2013 7:19 AM | Comments (2)
Tuesday, May 28, 2013
Cookie Cutter Versus Custom Development

I recently had a potential client ask for an estimate of some work they wanted done.  They already had a price in mind which I was pretty sure I couldn’t come close to.  The reason for this is because they were comparing off the shelf, commodity type development to the custom development that it would require for my team to do the work.  So does this mean that custom development can’t be the right answer if a subject area has commoditized?  Not in the least.

In many cases (but not all) these quick solutions are built without regard for business logic reuse.  This is not as important for one off apps but if they are part of a group of related apps this can be more of an overriding factor.  Look for clients that need a system built instead of an application that sits on its own island.

Another possible issue with cookie cutter solutions is that they may be stood up using developers with a very low skill set to keep costs down.  This means that if you need features beyond what has already been built into the offered suite you will either get low quality add-on features or they will be very expensive.  Show clients how you can reduce overall cost by being able to build any solution at a reliable rate with reliable estimates.

From the perspective of a company offering custom development services it means you need to focus on where you can add value instead of competing in a space that you are going to lose money.  Advise the client on their approach to building and maintaining their application portfolio.  Show them how to build the best possible, most maintainable applications.  During the projects you do sell look for ways to package what you have learned to bring your costs down and accelerate development.

In the end you need to focus on your competitive advantage which is the intelligence of you staff.  Not everything can be commoditized.  Put your efforts into solving these problems and you will succeed.

Posted On Tuesday, May 28, 2013 7:19 AM | Comments (0)
Thursday, May 23, 2013
New Geeks With Blogs Home Page

GWBLogo

It is amazing what you can miss if you don’t check every day.  The Geeks With Blogs web site home page recently got an overhaul and I didn’t even notice.  The first thing that I noticed was the new color of the logo.  It stands out better for color blind people like myself and is easier to read over all.  This along with the lighter color scheme make the site a lot easier on the eyes.

The biggest drawback I see is that the list of current posts has dropped below the fold, so to speak.  Featured, most popular and hot topics can easily be seen when you open the page, but you don’t see the current posting until you scroll down.  For me this is what I come to the site to see.  I’m not sure how you get the best of both worlds, but I would like to see this section get better positioning.

On a personal note, I liked the old site having a total of the posts for each blogger.  The new top geeks list is based on recent hits which while seems fair leaves me wishing there was a way to see the totals as well.  It was a kind of personal competition to see who I could pass on the list next.

Overall I believe the changes are very positive and it was nice to see the site get a face lift.  Geeks With Blogs is a great community and I invite everyone to visit the site and drink in the available topics covered there.

del.icio.us Tags: ,
Posted On Thursday, May 23, 2013 12:21 PM | Comments (1)
Wednesday, May 22, 2013
To Start Or Not To Start

WindowsStartButton

On a recent Windows Weekly podcast Mary Jo Foley and Leo Laporte had me talking to my Zune HD (practically yelling) as they discussed if Microsoft got it wrong with Windows 8 by taking away the start button and forcing Metro full screen apps on users.  Leo’s main argument was around the fact that the reason people buy big screens is so that they can have multiple windows open at the same time on the same screen.  I really took exception to this.  Even with every version of Windows leading up to Windows 8 I have found that the majority of the time I keep all my applications open full screen.  I find it much more productive to use Alt+Tab to move between open full screen apps than to try to arrange the ten to twenty apps I have open at any one time.

I don’t have a ginormous screen, mostly because I am normally working mobile, but these days people aren’t buying bigger screens.  They are buying multiple screens and keeping an application full screen on each monitor.  I admit that I am very likely not the stereotypical Windows user, but there are enough people that I see running their machine the same way that I do.  I think that the people that are doing the complaining are actually a vocal minority.

In the end I find both the Metro Start screen with its full screen and snapped apps and the Windows 8 desktop to work very well and efficiently even on a non-touch laptop.  I do occasionally use a touch mouse which enhances the experience, but I believe Microsoft took the right approach even if it does cause a little discomfort.  Let’s improve the training as Dr. Pizza pointed out and stop complaining about things that actually work just fine.

Posted On Wednesday, May 22, 2013 12:23 PM | Comments (0)
Wednesday, May 8, 2013
Blogging Withdrawal

Did you know that blogging is a drug and that if you go too long without posting something you actually go into withdrawal?  It turns out to be the case, at least for me.  Whatever the excuse may be, when I go for a long stretch without a significant topic posted I feel anxious, almost as if I had abandoned my child.

Lately the IT consulting business has been so busy it just doesn’t leave much time to blog.  Working a full day at one client and then doing support work for others in the evening is seems to be the norm lately.  I figured it was time to at least put together an off topic post like this to break up the routine.

Blogging for me is both an writing outlet while also allowing me to document my work and give others a place to learn from my experiences.  Stay tuned here while I try to find some cracks of time to post some content of value.

del.icio.us Tags:
Posted On Wednesday, May 8, 2013 12:44 PM | Comments (0)
Thursday, April 25, 2013
May 2013 Chicago IT Architects Group Registration Open

Who hasn’t heard of SharePoint?  Since I first started working with it around 2001 it has become the hammer answer for every nail problem.  As a product it has grown and evolved over the years and hopefully most of us how learned how best to apply it.  This month Michael Blumenthal will address the issues around when to use and when not to use SharePoint 2013 and well as what the latest features are.  Be sure to come and join us and bring your questions about the product and implementing it in your environment.

Register here.

Posted On Thursday, April 25, 2013 12:57 PM | Comments (0)
Tuesday, April 16, 2013
April 2013 Chicago IT Architects Group Recap

CITAG_logo-02a

Amongst all the rain and cold weather this spring in the Chicago area we continue to try to bring great software architecture focused content to you.  The weather is starting to get warmer so I want to thank those who came out to join us.  This month Norman Murrin has returned and this time he was covering Django CMS.  While the concept of a CMS is common Django isn’t necessarily a platform that people are familiar with which gave this topic an appeal of novelty.  Norm was able to give real life examples from current projects which gave the subject more substance.  While I don’t see myself using Django any time soon I definitely came away with a new appreciation of its capabilities.

WP_20130416_002

Next month we are looking at a possible presentation on SharePoint 2013.  Stay tuned here for updates soon.

Posted On Tuesday, April 16, 2013 9:31 PM | Comments (0)
Friday, April 5, 2013
Review: AppMock by Telerik For Designing Windows 8 Apps

image

Visual mock-up tools are a great benefit when starting a project so that you can work with a client to understand their needs and begin the design process.  Many of these tools are expensive and/or complex to use.  Telerik has made AppMock available for free for designing Windows 8 modern style applications.  This is where I ran into my first problem with the app.  The free aspect is misleading.  It is free for you to layout your interface, but if you want to save it for later it will cost you $2.99.  I would have much rather have had it stated in the store that this was a try/buy model than having you get into using the app only to find out that there was a cost associated with what seems like a basic feature.

The overall interface is easy to use.  It is basically a drag and drop UI with a number of controls, shapes and ways to make notes about usage.  The control set is complete enough for basic development.  I did find a couple of things that I would like improved.  If there was an easy way to change the buttons on the app bar control or at the very least an easy way to edit the background and line colors of shapes it would go a long way to showing customers complete concepts.

image

One strange thing I ran into was with the zoom feature but it is related specifically to how I have my environment setup.  I am using a laptop with a Windows 8 mouse that allows gesturing.  I found that sometimes I would accidentally activate the scroll zooming functionality of the app and had no way to get it back to the original state easily.  While this is aggravating I was able to get around it by simply using my touchpad for this app.

In the end I think that this app has a lot of promise.  It has most of the features that I think people would appreciate when doing basic app design with the few exceptions that I noted above.  The great thing is that since this is a Windows 8 app Telerik can easily update the app at any time and make it even better.  I would say that if you are starting to develop Windows 8 apps you should definitely give AppMock a try.

del.icio.us Tags: ,,,
Posted On Friday, April 5, 2013 9:57 AM | Comments (0)
Tuesday, April 2, 2013
Review: fotor for Windows 8

image

Editing images can be a tedious task, especially depending on how far from what your eye saw the image comes out of the camera.  There are thousands of photo editing applications out there so it is a delight when you find one that works well and makes the process simple.  I believe that fotor fits that description.

image

I found that fotor makes most simple adjustments such as brightness, contrast, sharpness, color temperature and cropping.  It also has the added features of special effects such as borders, tilt-shift and a wide array of effects.

The only features that I found lacking were the ability to type in values for the sliders to save time and a levels adjustment.  On my nice-to-have list I also have thresholds and gradient tools, but that is getting more on the advanced side of editing.

Overall fotor is extremely capable and easy to use.  If you are running Windows 8 RT or Pro I suggest giving it a try.

Posted On Tuesday, April 2, 2013 9:52 AM | Comments (0)
April 2013 Chicago IT Architects Group Meeting

CITAG_logo-02a

The train keeps rolling.  We have made it to spring.  Baseball opening day has come and gone and we are starting to get into the heart of conference season in the IT community.  Here at the Chicago IT Architects Group we are continuing to roll on as well.  This month Norman Murrin of PSC Group is back to present Django CMS and how it can be used to implement flexible and dynamic web sites.  Be sure to sign up and join us.

Register here.

Posted On Tuesday, April 2, 2013 8:29 AM | Comments (0)
Tuesday, March 26, 2013
Beginning PHP On Windows 8

PHP

It is always interesting to find out what technology I will have to work with next.  One of the latest that I’ve had to learn is PHP and since I am running Windows 8 I had to get it working in that environment.  At first I tried just downloading the Apache server files and running that, but then you have to deal with possible collisions between Apache and IIS.  In the end I found out that it is easier to setup PHP for IIS.

The first thing you need to make sure that the IIS feature installed.  Then you install WinCache via the Web Platform Installer.  You will find this by searching for PHP.  This seems to install all of the PHP components but you may need to also install the PHP itself (I was only able to find the Express version in the Web Platform Installer).

image

Fortunately when it comes to PHP the concepts are familiar.  Basically it is the same style of page generation as Classic ASP with a syntax akin to C or Javascript.  The biggest difference that I found is that variables are simply denoted by using a $ and you don’t need to use a format method to insert variables into output.  The code below shows examples of these usages.

<?php
 
$companyname = "PSC Group";
echo "$companyname PHP Test <br/>";
 
?>

You can get a quick reference for PHP here.  With these couple of pieces of information you should be able to quickly get started developing PHP sites using your Windows 8 environment.

Posted On Tuesday, March 26, 2013 8:14 AM | Comments (1)
Tuesday, March 19, 2013
March 2013 Chicago IT Architects Group Wrap-up

The group got to know their neighbors a lot better this month with only half the normal room size and a pretty good turn out.  Given that, I would really like to say thank you to everyone who came out on this cold evening before the first day of spring.

Eric D. Boyd gave a great interactive presentation on a variety of aspects around Windows Azure.  With his experience he was machine-gunned with questions and handled it like a champ.  Everyone was so interested in the subject that people stayed until they had to run for their trains.  We really appreciate Eric making the trip and enlightening us on Azure.

We are working on next month’s presentation.  As usual we are always looking for presenters.  Feel free to contact me through this blog if you are interested or know anyone we should talk to.

See you all next month. Be sure to follow our Meetup Group.

Posted On Tuesday, March 19, 2013 9:53 PM | Comments (0)

Tim Murphy

Tim is a Solutions Architect for PSC Group, LLC. He has been an IT consultant since 1999 specializing in Microsoft technologies. Along with running the Chicago Information Technology Architects Group and speaking on Microsoft and architecture topics he was also contributing author on "The Definitive Guide to the Microsoft Enterprise Library".



I review for the O'Reilly Blogger Review Program



Technorati Profile

www.flickr.com
Tag Cloud