Skip navigation

Tag Archives: web

We live in an age of unparalleled opportunities. The cumulative disruptive influences of internet, mobility, open source software and cloud computing have brought down the cost of starting a tech startup to an all time low.

Its been about two years since we started Althea. Starting a company teaches many lessons. I started living what I had read about in many books. Entrepreneurship is no spectator sport.

Below, I try to quickly articulate some thoughts and lessons that came in handy. Primarily from a technology development perspective.

– Leverage & embrace open systems [include open source, open data, open apis & open platforms]. Push open source initiatives that lead to reduced costs of development and ownership. Always resist the developer urge to build everything from scratch.

– Focus all proprietary development efforts towards real innovations & adding value. Ensure that all significant development efforts are tied to a business case. While stop gap solutions can get you started, you need to carefully choose your role in the food chain and supply significant value there.

– Innovate continuously and drive the changes in your space. Build and maintain a sustainable advantage that keeps you ahead of the curve. Become the thought leader in your area of specialization. Remember, innovation today is commodity tomorrow. Your competition is going to copy your ideas and catch up with you shortly.

– Stay ‘truly agile’ and adapt constantly to the changing landscape. Accept the fact that disruption is inevitable, and make embracing it a part of your ongoing plans. New business models are getting conceptualized and tested everyday.

– Treat employees as unique individuals and not as replaceable resources. Capitalise on the unique abilities of each person and deploy them appropriately at different phases of a project. Also, startups win by putting a lot of responsibility on young people and letting wonderful things happen.

– Invest heavily on tools and infrastructures that lead to an increase in productivity. While startups dont operate with infinite resources, they succeed by building small but highly efficient and focussed teams. I remember Charlie Munger quoting “The company that needs a new machine tool, and hasn’t bought it, is already paying for it.”

Advertisements

When most people are either confused or like being confused, it helps to put things plain and simple.



Service Oriented Architectures [SOA] play a pivotal role in today’s Enterprise Systems. Service orientation requires loose coupling of services with the underlying technologies. There is a lot Web Oriented Architectures gain by taking the SOA approach, especially with regard to aspects like scaling and being cloud ready.

I dont use SOA here to mean XML web services, but as a pattern for breaking down applications into distributed software components (which we call services). The components being independent units that deliver specific functionality. Data is encapsulated and made accessible only through well defined hardened interfaces. Consumers of the service are provided with a contract for the functionality provided through the interface. Hence, a clear isolation of functionality and data storage is achieved. The services manage all data internally and never provide direct database accesses. Whether access happens as XML/JSON or over REST/XML-RPC/SOAP is irrelevant for SOA. They form the various implementation options.

SOA also provides operational advantages in terms of the break down of the development work. First, small teams are created around problems. Next, the interfaces are decided and agreed upon. The teams then have full freedom in choosing tools, design methodologies, etc., as long as they provide the promised functionality through the interface. Developers in the team own end-to-end responsibilities for the service and are subjected to direct customer feedback. The heightened sense of responsibility also usually translates to better ownership of work. With hardened interfaces, localised issues and reduced integration efforts the net chaos in the system reduces significantly.

The parallel for SOA approach in the programming paradigm would be the Object Oriented Programming approach [OOPS]. Like OOPS, SOA is also vastly misunderstood. Most programmers fail to think Object Oriented-ly (esp the ones coming from the procedural world) and end up building poorly architected systems, while blaming OOPs for its clumsiness. Similar is the case with SOA.

We use SOA extensively in the systems we build at Althea. In my future posts I plan to provide more practical insights into SOA.

web 2.0

History has always intrigued and humbled me. And consumer internet has been my main focus of interest in the last couple of years. So this well made video on the history of internet immediately caught my fascination. The video also brought up the role played by European organizations in the evolution of the internet, something I had been ignorant about till now. [Second thoughts: Was it really my ignorance or was it the story the American text books I read during my engineering wanted me to buy into ;-)]

Going forward, I plan to blog more extensively about the changing trends in the use of internet technologies that aim to enhance creativity, communications, secure information sharing, collaboration and functionality of the web.

Checkout the HD version of the video on Vimeo.