Categories
blog

Learn to say No and You become an Yes Man

Firstly say No to SQL

These days with the popularity of No SQL / No UML and everything No which was previously Yes we are now entering the No era of things. There was a time when traditional databases moved from plain old databases to RDBMS and it was the biggest paradigm shift of that time. Now it is get away with the overhead of everything that comes with RDBMS and move towards No SQL. 

Apparently the fact remains that SQL still remains a most sought after job skill to have based on indeed.com search listings. This movement reminds one of the era when certain medicines were considered good for health are found to have lost their relevance and things moved eventually to better things. Everything big is now embracing the No SQL movement , big data, big users (massive concurrent number of users) and cloud computing.  The data that all of us collectively keep churning out simply puts RDBMS out of the picture being capable of handling that level of scale. Once you open up your web delivery mechanisms to the app world(blackberry,strawberries, apples and all the fruits out there !! ) .You could potentially hit several hundred million hits in a short span of time. Much of the data is semi-structured and unstructured which does not conform to a normal schema and much less conforming to any data model.

Why No SQL Maps fits the Cloud Model

The traditional model of scalability is put a load balancer in between commodity servers and as soon as the users reach a set limit say 10000 users route them to a new server with a routing logic at the load balancer. This works fine at the web tier but eventually when the data comes over to the database tier , being centralized and share everything would create issues and help only scale up and not scale out would be possible. This meant dynamic scalability was not possible and easy.No SQL databases were designed to be distributed and help scale out as the distributed computing needs increases.

Why JSON is becoming the standard sought after ?

When dealing with dynamic data we often encounter data which can be outside strictly of the rdbms schema model . All of us have stories of how changing a parameter within a control structure of a three tier application or rather n-tier application is rather difficult . This over a period of time was met by linked lists and key/value pairing kind of solutions which would bunch newer data in this format and send it all the way to the database. At the database layer we would then need to disassemble them into respective DAO objects and push them into the respective tables. All this is fine if the table structure itself is not changing. If the table structure has to change then it would mean that changes in the following :-

1. DAO layer                                                                                                                                      2. Schema / XML / Meta model layer.                                                                                                3. Java generated boiler plate code for the db layer.

This is developer and release nightmare if needs to be done any which way agile or non agile in the shortest time to value cycle. In such cases developer would prefer to stack up all the information across db tables in objects and prefer storing objects as they were instead of in tables the traditional way. No SQL would mean now the entire JSON objects would get stored into the database as it is and can accommodate any free format. This would ensure that you aren’t fiddling around with the current application state in a disruptive way. Not knowing if poking something here would pop up something on the other side or at times the systems fails to come up.

Secondly say No to UML

Have heard the thing that UML is a big overhead. Most often we see people sure need to know how to document using UML but prefer the white boarding technique to charting diagrams. Post running through this in their head or code it first with back of the napkin kind of approaches then finally document the hard to understand must be read before cracking the code figures being put up via UML. Some prefer calling this as AML or Arbitrary UML but there are a lot of standards that are cumming up at least at an enterprise level that indicate a less techie and more friendly to the end users / business folks kind of language. ArchieMate is a step in that direction. But again you still need UML at all costs and needs to be given its due where required. But will not be the be all and end all of artifacts documentation and most people would agree it never was in the first place. There are tools which help to get the diagram and the code in synch but again haven’t seen or heard of this practice as been followed as the done thing.

Given the No to SQL and UML I am sure there will be many more along the lines of lean code, lean organisation and lean startup and many things lean on the NO movement. Say Yes to NO where applicable and you suddenly are a most sought after person indeed the YES guy….

Categories
blog

Enterprise Architect is a Business Man / Trader of wares

EA-businessman

Enterprise Architect is a business man meaning should understand the cost implications involved in running software enterprises end to end. He should be able to wear a BA’s hat when required translating requirements and clearing road blocks which are found at the business/IT intersections. He should be well versed with all forms of business analysis and be able to separate the grain from the husk. So an EA can be someone who progressed from a BA to an EA or became an EA via other routes. At the core of an EA’s skill set is someone who knows the business of running an application / product or an Enterprise using IT.  If you look at how EA has evolved over the years from being a core technical person to someone who bridges the gap between business and IT. 

Most EA are accountable for couple of million in the Project/Product’s outcome. So although good techies can take a product/project to a level it needs business focus to be able to focus on the results of the business outcomes. You can develop a great product using technology but the point of inflection where it meets end user needs and the market can be well understood if the business needs are well understood.

An interesting technology creation is twitter which enabled to let people talk publicly about their cats and dogs. Initially it was thought to be an useless creation having no immediate business value but it has as its core of connecting people at a scale unimaginable in history. The 140 chars is the new low and high as well.

EA should know the business side well …among other things

 

 

Categories
blog

Open Source and EA

Open Source and EA meet and merge. The first one is obviously less cost and EA projects are spread across many man months with associated costs. Open source inherently conveys less cost or no cost. We have open source SOA tools for implementing SOA.

On Similar lines found some useful links from a linkedIn discussion group that recommends some commonly used EA tools to set up an EA practice. Archie Mate is familiar the others aren’t .

Open Source Tools for Enterprise Architecture

http://www.enterprise-architecture.org                                                 http://www.modelsphere.org/index.html                                                                   http://archimatetool.com/                                                                                               http://www.adoit-community.com

 

Categories
blog

Every time you follow someone on LinkedIn,Twitter or FaceBook

To follow the path:
look to the master,
follow the master,
walk with the master,
see through the master,
become the master.

This Zen like statement sums up the people following men on the social sites of your liking. Success can be emulated be like Steve , dress like Steve , eat like Steve and finally be Steve….Can be Steve Jobs or the Steve you are following…

Nice thoughts to have….

 

Categories
blog

Best Practices are often not obvious at first sight…

bestpracticesarenotobviousatfirstsight

 

Most often best practices are hard to follow and often questioned on the rationale behind the same. Recently I had my car serviced at the car vendor’s service outlet. Always there was a question that lingered in my mind on a card board box that gets placed at the top of the car indicating the ticket/token number indicating the car service ticket number . This is opposed to the bike service experience of mine , at the bike service station the guy attending the customer always does this by means of scribbling the number by means of a wet chalk. Used to wonder why the car guys do not follow the same thing and why do they resort to the card board box on top of the car with a number on the box. Used to think that this was something only my car vendor service team followed. More recently went to another car service station from an another car vendor.

Categories
blog

Hippies and Software . Geek Leaks True …At the trenches GIDS 2013

GIDS

Attended the Great Indian Developer Summit the GIDS Edge and GIDS Tutorial Sessions In Bangalore. Attending this means going to IISC which is tucked slightly away from the hum drum of mainstream traffic and noise. Nice getaway for people needing to meet, talk and discuss on things that matter from Java , Software transactional memory, Geeks , Richard Feynman and Particle Physics and economic meltdown caused by geeks gone awry, spam mail being attributed to the inventors of web technology gurus having their roots in the hippie movement. You need to be a hippie in a sense to create something new be it learning something new or escape from your confinements. Most times we are accostomed to a set pattern of thinking on software, architecture, design, language semantics and never thought how it could be if things were different. Such conferences bring out the best from domains and enable one to think different and venture into new territories. We could all assume the status of neo hippies at such venues trying to rant , rave and break free from the technological “status quo” that kept us bounded to old ways. The fact that people still code in COBOL and are willing to know what is latest on that front as well apart from lamba expressions additions in Java 8 which should not be seen as far behind functional languages such as scala, groovy shows how the old and the new co-exist along with the very latest. Java is slowing catching up with the functional languages. Nice summary at the end of a great talk from Venkat that the best way to control the future would be to create it as Peter Drecker once said.Neal took us into the realm of Physics and all things geeky and how it criss crosses our everyday life.

Met a lot of speakers worth their salt in flesh and blood having seen or heard their presentations on youtube or other having dropped by their blogs and found enlightenment when needed.

gids-1

Caught up with some friends and ex colleagues during lunch and shared stories technology and otherwise. Post lunch it was a great and live wire talk by Scott Davis on the future of video and how it can replace all our old devices of entertainment and how soon entertainment will change from being pushed from the cables to on demand where we decide what we see, how we see and how much of it we will see. Nice to know that all major vendors are going the HTML 5 way having seen too many issues with vendor proprietary standards. Scott Davis did look like a hippie with the long flowing hair or rather the guru ( of any age ) who cleared the air on video standards and the inside story of the H.264 standard which end users are not made to suffer when they watch videos and only the browser vendors having to pay for it. His presentation style made sure that the post lunch sleep bug was pushed aside and made for a captivating talk and commanded full attention.

Next was a presentation by Marty Hall on the future of Java. He summarized the Java journey and his own journey from a LISP developer to a Java developer. There was a Gosling v/s Ellison discussion on how the creator moved away to other things and the owner choosing to keep Java still open and mostly as it was , Ellison not having earned the bad boy tag from the geeks and nerds who are Java loyalists. Disheartening to know that Apache is not strongly associated with Java anymore and that they traded ways. Many great things were part of the Apache flagship and saw the light of the day thanks to the strong communities that were part of it. The underlying principle is if you want any technological innovation succeed then get the developer community involved and once you have them on your side you cannot go wrong. Besides this there are no hard and fast rules on why some fads catch up and some do not as it the case with movies. Some become block busters and some just are forgotten by the next friday.

What came out strongly was that the changing face of standards and set ways of doing things. Concurrency has itself changed on how it was being done from early Java to how it will be done in Java 8. Having to attend such conferences bring in different perspectives and helps you to rethink on issues and being introduced to the moving targets in this case technology itself. More on how software development needs to cater to agile means of development by means of continuous development and continuous integration and continuous development. All things continuous meaning whatever you pushed aside as the dirty work now having to do it almost routinely. It is eating a frog every release unless of course you relish them. This was Neal Ford on the Continuous Integration and how it is soon becoming part of all well executed projects.

Towards evening attended the GBG (Google Business Group) Google meetup on building an entrepreneurial ecosystem in Bangalore and Google doing its best to get people thinking on those lines and helping them with the mindset and the needed resources and the money by bringing the people with money and the idea guys together to create the next BIG startup  out of Bangalore.

Truly this was our own ALL STUFF NO FLUFF fair at Bangalore. And apart from learning many things new it was this word from Neal ( MEME Wrangler at Thoughtworks) that we should look for ways and means of designing software in an non COMPLECTED way and prefer straight strands always.

End of the post , on my way to other things UN COMPLECTING if there is a word like that meaning towards a straight  path….

Categories
blog

Are you clouded by the cloud thing?

cloud

Cloud is where all of us reside literally/virtually and eventually. Most of our data including our private and public moments are part of cloud dropbox,mails,facebook,evernote. We no longer need to buy boxes or even think of the mamoth task of where all of this data get stored. On a personal front the challenges are far less complicated pushing data to the cloud. On an organisation/ enterprise level we need to have the following queries addressed before even thinking of the cloud. Of course we need to plan for the rainy day lest the cloud eats up competition.

Categories
blog

Buy v/s Build – Reinvent if you want Wheel 1.0 minus the spokes

build_buy

Although the venn diagram shows the buy v/s build concerns in reality software has many interfaces and sides that a buy v/s build is never easy to arrive at. But echoed below are some common rants where the decisions turn this way or that way and choose either and do not get lost in the quagmire of decision making.

Categories
blog

Turning your Enterprise around

What does it take to turn your enterprise around ? There are umpteen number of things being discussed on this topic and books/blog written on this topic. While Enterprises and Architecture are fascinating enough for real think tanks to spend their lifetime producing stuff while the challenges remain the same and mostly at large. There is no single methodology or framework which helps plug this need for enterprises to have a mechanism in place to tune themselves excepting for architects , technical members of the team , people assigned to worry on things that matter to the company (managers/decision makers and various members of staff meant for different things).