The practice of Identity and Access Management (IAM) introduces many questions about an organization’s business processes and technology solutions. The decision to use a particular Single Sign-On (SSO) technology takes into account concerns such as:
The decision is not only made in the context of a MindTouch site deployment, but also takes into account how all user identities and applications across the organization will be affected. As an integration point for both SAML SSO and OpenID Connect, MindTouch provides recommendations regarding which of these two supported SSO technology paths are best suited for a MindTouch solution. …
You can have your CPU and RAM back…
There are too many to count articles about configuring Apache or NGINX to optimize for multi-process, multi-threaded scenarios with one or more downstream, detached processors of HTTP requests ( PHP-FPM, Passenger, ASP.NET, etc.). This post won’t be addressing the step-by-step configuration details. The key takeaway from most articles, that’s relevant here, is that it is often very taxing on high-load, performance-critical web servers when all possible request handlers and processors are engaged to satisfy every incoming client request — regardless of context. …
Originally published June 15, 2017
The MindTouch Engineering team, as usual, has been hard at work. Between our recent updates to MindTouch site analysis tools and our efforts to optimize our cloud infrastructure, its been a busy first half of 2017. Our latest efforts have focused on one of our favorite features — Touchpoints. This is part one of a three-part series that will explore our development process, and the technologies we use to make Touchpoints secure, flexible, and incredibly simple to implement. …
Native ES2015 module browser support can’t come soon enough.
If you are writing modular JavaScript source code using ES2015’s import keyword, you are likely transpiling your code so that it can execute in web browsers presently available to most users. As much as it is a pleasure to maintain your source code as modules, it’s been a bumpy road to reach a common implementation of modules in the JavaScript execution environments themselves, resulting in a rather large and confusing set of technologies. The problem described later requires a bit of knowledge about the relationship between UMD, AMD, and Require.JS. …
An insightful day of innovation and collaboration…
I was honored to co-host the @WalmartLabs hackathon this past weekend!
Hackathons aren’t easy to pull off — and it’s important not to try to do too much. If the event is focused on promoting or leveraging specific tools (this particular event was promoting @WalmartLabs Electrode React/Node.js framework), familiarity and training with the tools before a competition is underway is a must-have. For those of you planning an event, consider a scripted challenge with a clear result or outcome to achieve, using the promoted technology. Future hackathons, with increasingly more breadth and positioned to developers that develop mastery of the chosen technology, can build a dedicated community and strong advocates for the tech in the industry.
What is CD and, especially, what is it not?
Let’s start with one key fact: Continuous Delivery, though expanded from Continuous Integration, is not simply automating your code deployment pipeline like you automated your build architecture. Continuous Delivery is a shared business process, a contract between different members of product delivery to move software through stages to someone who will benefit, without blocking it or at best avoiding unreasonably long delays.
Automation applied to an inefficient operation will magnify the inefficiency.
Bill Gates
Where were we ten years ago? At your organization, it probably looked something like this: long product release cycles leading to long development and testing cycles with lots and lots of value bundled up in massive code drops. …
Yesterday, MindTouch’s cloud infrastructure handled 6,048,192 HelpRequests across all MindTouch sites, each request creating knowledge or providing it to your customers. MindTouch has a continuing commitment to speed and performance, and delivering all this knowledge presents significant engineering challenges that other customer success software, knowledgebases, and content management systems do not face. MindTouch pages are so much more than static HTML and text, they are also rich with DekiScript code, identity and context-specific content, templated content, global variables, and transcluded pages. Each page that is served to your customer is run through our content engine, which parses, compiles, and renders the finished MindTouch page, all in realtime! The more dynamic content the page contains, the more work and load on the content engine. …
MindTouch, as a customer success company, treats web page load speeds as a critical metric for your happy customers. Numerous studies into the perception and behavior of Internet users has shown that expectations are high for a fast transition between web pages, and mere seconds of wait time can be the difference between a happy customer or an unhappy one seeking your competition.
MindTouch powers help sites and empowers you to author content on these sites. We provide very little restrictions on the size of web pages, the amount of images or videos embedded in them, and the use of third-party web assets and widgets. However, we are quite aware of the fact that the more things you put in a web page, the bigger the page becomes, the more web requests are required, and that ultimately the page becomes slower to display. This is not an issue with MindTouch software, but rather the limitations of the HTTP 1.x protocol. Until HTTP 2.0 is widely adopted and solves the performance bottlenecks associated with the current version of HTTP, MindTouch’s out of the box experience has to produce the fastest possible web page load speeds we can over HTTP. We need to reduce the number of web requests required to download all required assets for a web page, download as many as we can in parallel, and prevent one asset from blocking the download of another. …
About