The best articles and links to interesting posts for technical team leaders building sophisticated websites, applications and mobile apps.
Think about: software architecture, hardware architecture, design, programming, frameworks, scalability, performance, quality assurance, security, resolving issues, fixing bugs and Android.
"Closure Compiler is a JavaScript optimizer that compiles web apps down into compact, high-performance JavaScript code."
"Closure Library is a broad, well-tested, modular, and cross-browser JavaScript library. Web developers can pull just what they need from a wide set of reusable UI widgets and controls, as well as lower-level utilities for the DOM, server communication, animation, data structures, unit testing, rich-text editing, and much, much more."
"Closure Templates grew out of a desire for web templates that are precompiled to efficient JavaScript."
"Closure Inspector, a Firebug extension that makes debugging the obfuscated code almost as easy as debugging the human-readable source."
This week Google introduced the first version of its Chrome OS. Here's a pretty good explanation on how it differs from current operating systems. And here are 5 (other) points describing them:
"The browser is the OS",
"It’s designed to fix itself",
"All apps are web apps, no installations", (sounds like Citrix to me ;)
"Chrome OS doesn’t support drivers and will not run on your laptop",
Great, here you can download chapters 20, 21, 22 for free from the book "Web Service Contract Design and Versioning for SOA" by Thomas Erl, Anish Karmarkar, Priscilla Walmsley, Hugo Haas, L. Umit Yalcinalp, Canyang Kevin Liu, David Orchard, Andre Tost, James Pasley. These chapters address the issues related to service contract versioning. In those chapters described are versioning of WSDL and schema definitions.
A post on experiences with Git coming from Subversion. Too bad the reasons why the author is having more and more problems with Subversion were not given. Though you can deduct (some(?) of) them from the text.
Jeff Dean (Google Fellow) on large-scale computing (PDF) during Ladis 2009. Interesting numbers regarding reliability and availability for hardware, like 1-5% of your disks will die. And even if you got very reliable servers with MTBF of 30 years, if you have 10000 of those, that means see one fail each day! And: "a web search touches 50+ separate services, 1000s machines". Some more of these quotes:
"Better to give users limited functionality than an error page"
"Ensure your design works if scale changes by 10X or 20X but the right solution for X often not optimal for 100X"
Monitoring: "If your system is slow or misbehaving, can you figure out why?"
"Future scale: ~106 to 107 machines, ~1013 directories, ~1018 bytes of storage, spread at 100s to 1000s of locations around the world, ~109 client machines"
Presentation at Oracle Open World 2009 - how to turn any ADF application into a SaaS application - an application suitable for deployment on the cloud. Includes short description of a SaaS, benefits, concerns, and several requirements. These requirements include customisation of fields shown to the user (e.g show or not show depending on the user or location) and i18n. Technologies suggested to achieve this are Oracle EBR, (WSRP) portlets, WebCenter, deep linking (tricky in JSF) and ESB.
I'm a professional software designer/architect/developer/software engineer with over 25 years of experience. For many years I've been a Technical Team Lead for complex software engineering projects. My main area of focus is Java/Kotlin microservice architectures and related challenges (design, scalability, performance etcetera). Currently Kotlin has got a lot of my attention. I will be posting lessons learned, and lessons that I'll be learning during the coming years :-)