Walter Moore... Canadian Eh!
Architecture is the ground floor in the computing world. There are all types of architecture but there are a few qualities that are essential for any good architect.
- Change advocate... embraces new concepts quickly when value is present. Even when it is obvious something will replace it in a few years. The solution will probably be based on currently available solutions.
- Passion... for everything computing.
- Willingness to admit and make mistakes.
- Vision... architecting is for tomorrow not today.
- Persistent... ideas are rarely accepted the first time.
- Asks "So What"
Without quality architecture you are building on quicksand. It is that simple.
The real problem with quality architecture is having vision and the ability to quantify it's value, then integrate that vision into the current environment. This is no easy task. It is easy to create an architecture for today. There are already diagrams of most common architectures that can be adjusted to fit your needs. What you need is someone with vision. Someone that sees what is coming. Here are some architecture recommendations I have made over the years and when I first made them. You be the judge...
- 2014-Re-iterate all 2009-2010 recommendations.
- 2014-Updates: CSS3 is a must have now, IE has gotten better for version10+ and is comparable to Chrome, cloud computing is having outsource/insource issues(reflecting the importance of the provider), JSON is finaly getting some recognition.
- 2014-Use HTML5/CSS3/JavaScript instead of "Apps". Very controversial right now. Reasoning: single code source for all devices, centralize code location, no distribution, simpler/cheaper maintenance, most of the reasons we went to the internet design.
- 2014-Avoid implementing BYOD(Bring Your Own Device). Although it sounds like you save money security becomes a major issue plus who pays for repairs/replacement, and logistics can get very complex.
- 2010-Recommend Cloud computing but go with a reputable provider with redundancy spanning countries not just cities/states. This is inevitable for large business so you might as well benefit early. This really benefits businesses that have a wide range of resource requirements(like possible temporary viral sites). Funny, now you will find on-site backups are critical ;)
- 2010-Recommend "Chrome" browser from Google for personal surfing. Still recommend IE for business but work on transitioning to neutral browser design.
- 2010-Recommend avoiding script libraries where possible. Some sites use several 100kb++ script libraries where you can clearly see any coding requirements could be handled in a few lines. Don't get me wrong, some of these are great. Just realize where the overhead is worth the bang. I expect eventually the "winning" libraries will be loaded into the browsers and maintained so this constant loading of libraries can be stopped.
- 2010-Recommend JSON as data communication method of choice due to it's light overhead. Especially for large datasets. You don't need all the XML descriptor tags when you know the data. Unfortunately not very good for complex data or unknown structure(use XML here).
- 2010-Recommend ASP.Net again mostly because it "basically" degrades gracefully. However, .Net needs to support industry standards regardless of browser.
- 2009-Recommend CSS3. Most browsers support it already and the advantages are huge. Not waiting for IE9 to support it.
- 2003-Recommend XMLHttpRequest. Finally getting somewhere towards true multi-tier.
- 2002-Recommend ASP.Net but be careful. Architecture is critical.
- 2001-Recommend VoiceXML. Superior phone interface.
- 2001-Recommend IFrame adoption for Internet.
- 2000-Reject WML except for very specific conditions. This will be replaced by XML/HTML once 3G comes.
- 2000-Recommend XML for "small" data but not "large" data. The overhead of XML tags is not acceptable for large data, great for a few hundred rows and especially good on complex data.
- 1998-Reject Java on most mission critical servers. Java is great theory... the "universal" language.
- 1998-Recommend DHTML as enterprise standard for Internet.
- 1997-Recommend DHTML as enterprise standard for Intranet.
- 1997-Recommend adoption of IIS web servers(ASP and ISAPI). Over Unix? Was I crazy?
- 1996-Recommend BSD for Unix servers as enterprise standard. Security first.
- 1995-Recommend Windows 95, not OS/2 Warp. Tough call when Win95 was still in testing, OS/2 was on many systems and IBM forecast doom for Windows 95.
- 1995-Recommend Microsoft Internet Explorer(IE) not Netscape. IE 3.0 was still in beta testing, this really went against the crowd.
- 1995-Recommend adoption of IFrame's on Intranets only.
- 1995-Recommend adoption of ALX files.
- 1995-Recommend browser interface as enterprise standard rather than client/server.
- 1995-Recommend Cascading Style Sheets(CSS) - truly under rated.
- 1995-Reject ActiveX as client side solution.
- 1995-Recommend JavaScript as enterprise client script standard.
- 1995-Reject VBScript as enterprise client script standard.
- 1995-Reject Java as client side solution.
- 1994-Standardize on HTML document type for enterprise information.
- 1994-Standardize on web based email rather than Lotus Notes.
- 1986-Recommend OPS/MVS Automation tool - Now part of CA-Unicenter.
- 1984-Recommend REXX coding language instead of Clist.
- 1981-Recommend VNCA - Became Statmon.
- 1981-Recommend MIM - Shared Tape/Disk management... We need to share tapes/disks between systems?? Still being used everywhere implemented today.
I have made a few mistakes... ALX had to be converted(but not rewritten) and I bought Nortel stock at $24.
It is easy to architect if you only think backwards, you need vision. As an architect you need to pick the standards then acquire the best tools for those standards. Avoid acquiring tools first. Picking resources that will be around for more than 2 years and will scale to any requirements is critical and takes vision.
I have demonstrated I make the right choices when it comes to enterprise architectural decisions. Let me help you make yours.
@ Copyright WalterMoore.ca 1995-2024. All rights reserved.