Under the hood


  • LLMs, ChatGPT and Evolution of Software Engineering: Patterns, Anti-Patterns, and Quality Imperative

    LLMs like ChatGPT can significantly impact software engineering by synergically combining Natural Language Processing (NLP), LLM-driven Soft Programming, and Traditional Hard Programming. Three synergy patterns: Generative Pattern, Learning and Explanation Pattern, and Hardening Pattern, can help developers harness the potential of these technologies.
  • What Digital Marketplaces Sell? A Short Memo

    Digital marketplaces facilitate transactions between buyers and sellers. The marketplace is not the seller (nor a buyer), but it sells a reduction in transaction costs. .
  • Data + Automation + Curation = Useful Architectural Documentation

    This article summarizes my experiences in replacing classical architectural documentation with data-driven documents.
  • Architects as Superglue: One Approach To Being An Architect in IT Organizations

    This article is a written statement of my experiences on what it means to be an architect in IT organizations, how architects need to develop, and how architects should work together.
  • The Economic Value of Architecture: Two Metaphors

    In this post, I sketch two answers to the question of the economic value of architecture: the return on investment metaphor, and the financial options metaphor.
  • The IT Cost Box

    In this post, I introduce a simple model for thinking about IT costs in three dimensions. This model presents IT costs as the volume of the box, where each side of the box shows three drivers of the cost: unit costs, size, and time.
  • Public Cloud: Great Expectations

    This article enlists some of the key benefits we can expect from of cloud: development velocity, performance, scalability, functionality, uptime, costs, transparency, and security. The article also provides a reality check on these expectations. You need to earn the public cloud benefits; simply moving to the cloud rarely leads to immediate improvements.
  • Adaptive HTTP Streaming Technologies: The Problem Statement

    Adaptive HTTP Streaming technologies enable distributing video efficiently via the standard HTTP infrastructure and CDNs. These technologies offer three key elements that the technologies introduce to solve critical challenges: segmentation of video content in smaller blocks to minimize overhead, improve user experience, and improve caching performance, adaptivity by having multiple channels of variable quality to enable automatic switching among channels based on the device characteristics and network performance, and securing the video content while keeping the benefits of efficient HTTP content distribution.
  • Uber's Payments Platform

    Recently, Uber has announced deeper push into financial services with Uber Money, a new division, including products such as a digital wallet and upgraded debit and credit cards. It is expected that Uber could soon offer a bank account to consumers on its platform. While many of the news articles focus on the business side of Uber move, limited resources are available to understand better the payment technology that Uber is building. I believe that we can learn from looking under the hood of Uber payment technologies, as the Uber approach may be the way how we will make the banks of the future.