# Ajax

Ajax (Asynchronous JavaScript and XML) is a web development technique that fetches server content asynchronously and updates parts of a page without a full reload.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Most Simple Ajax Chat Ever

DevFeed: [Most Simple Ajax Chat Ever](<https://devfeed.tech/articles/most-simple-ajax-chat-ever-31876.md>)

Original publisher: [Read original article](<https://www.metachris.dev/projects/most-simple-ajax-chat-ever/>)

Author: Chris Hager

Published: 2026-09-17T02:48:44.791916Z

Content type: article

Language: en

Sources: [Chris Hager](<https://devfeed.tech/sources/chris-hager.md>)

Topics: [Ajax](<https://devfeed.tech/topics/ajax.md>), [PHP](<https://devfeed.tech/topics/php.md>), [HTML](<https://devfeed.tech/topics/html.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [files](<https://devfeed.tech/tags/files.md>), [github](<https://devfeed.tech/tags/github.md>), [html](<https://devfeed.tech/tags/html.md>), [http](<https://devfeed.tech/tags/http.md>), [php](<https://devfeed.tech/tags/php.md>)

### AI overview

A project page describing a simple Ajax chat application created in January 2006. It explains the two-file implementation, pure JavaScript approach without libraries, text-based content storage, spam filtering, and two-step PHP setup.

### Source excerpt

Most Simple Ajax Chat Ever A fun little project from January 2006. Back then ajax just started becoming popular, but with very few tools around. jQuery came out later that year, Github just two years later, in 2008. Original code on Github Original site on web.archive.org Featured on Wired in February 2006 Features Super simple Efficient spam filter (thanks to some live 'hackers' at launch) Only 2 files needed (index.html, w.

## Perceptual Issues in Dynamic Interfaces

DevFeed: [Perceptual Issues in Dynamic Interfaces](<https://devfeed.tech/articles/perceptual-issues-in-dynamic-interfaces-9064.md>)

Original publisher: [Read original article](<https://ixdf.org/literature/article/perceptual-issues-in-dynamic-interfaces>)

Author: William Hudson

Published: 2026-09-02T00:00:00Z

Content type: article

Language: en

Sources: [UX Daily - User Experience Daily](<https://devfeed.tech/sources/ux-daily-user-experience-daily.md>)

Topics: [Ajax](<https://devfeed.tech/topics/ajax.md>), [Accessibility](<https://devfeed.tech/topics/accessibility.md>)

Tags: [applications](<https://devfeed.tech/tags/applications.md>), [browsers](<https://devfeed.tech/tags/browsers.md>), [interface-design](<https://devfeed.tech/tags/interface-design.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [technology](<https://devfeed.tech/tags/technology.md>), [user-experience](<https://devfeed.tech/tags/user-experience.md>), [web](<https://devfeed.tech/tags/web.md>), [web-design](<https://devfeed.tech/tags/web-design.md>)

### AI overview

This video explains how inattentional blindness and change blindness affect users' ability to perceive updates in dynamic web interfaces. It uses examples including the invisible gorilla experiment and page reloads to show why important changes can go unnoticed, with implications for interface and web design.

### Source excerpt

In this video, William Hudson, User Experience Strategist and Founder of Syntagm Ltd, explores the psychological phenomena that affect how users perceive changes in dynamic web interfaces. While the focus is on web pages, these principles apply to any interactive technology, from desktop applications to mobile interfaces.[[video:2250]]Understanding Human PerceptionWhen we add dynamic functionality to web pages using technologies like Ajax, we gain tremendous flexibility to update content without full-page reloads. However, this increased interactivity introduces a crucial challenge: users may not notice the changes we make. Three key perceptual phenomena explain why even obvious updates can...

## Security Testing for Single-Page Applications (SPAs)

DevFeed: [Security Testing for Single-Page Applications (SPAs)](<https://devfeed.tech/articles/security-testing-for-single-page-applications-spas-8091.md>)

Original publisher: [Read original article](<https://snyk.io/blog/security-testing-for-single-page-applications-spas/>)

Author: Tiago Mendo

Published: 2025-05-21T23:00:00Z

Content type: article

Language: en

Sources: [Blog RSS Feed | Snyk](<https://devfeed.tech/sources/blog-rss-feed-snyk.md>)

Topics: [Security](<https://devfeed.tech/topics/security.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [Front end](<https://devfeed.tech/topics/frontend.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [Latency](<https://devfeed.tech/topics/latency.md>), [browser](<https://devfeed.tech/topics/browser.md>), [User experience (UX)](<https://devfeed.tech/topics/ux.md>), [client](<https://devfeed.tech/topics/client.md>), [Frameworks](<https://devfeed.tech/topics/frameworks.md>), [Server](<https://devfeed.tech/topics/server.md>)

Tags: [awareness](<https://devfeed.tech/tags/awareness.md>), [blog](<https://devfeed.tech/tags/blog.md>), [browser](<https://devfeed.tech/tags/browser.md>), [caching](<https://devfeed.tech/tags/caching.md>), [developer](<https://devfeed.tech/tags/developer.md>), [development](<https://devfeed.tech/tags/development.md>), [devops](<https://devfeed.tech/tags/devops.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [frameworks](<https://devfeed.tech/tags/frameworks.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [latency](<https://devfeed.tech/tags/latency.md>), [security](<https://devfeed.tech/tags/security.md>), [server](<https://devfeed.tech/tags/server.md>), [ux](<https://devfeed.tech/tags/ux.md>), [web-apps](<https://devfeed.tech/tags/web-apps.md>)

### AI overview

This article introduces Single-Page Applications (SPAs), explaining how they dynamically update content through JavaScript and AJAX requests instead of reloading entire pages. It describes their user-experience and performance benefits, including caching, lower latency, client-side processing, and reduced server load, while identifying security testing as a major challenge.

### Source excerpt

One of the biggest challenges of embracing the development of Single-Page Applications (SPAs) is security testing. SPA security testing can't just be about crawling the frontend URLs and using spiders like in traditional security testing. So, how can you make sure you're properly testing your SPAs?

## That Bad Client Job Posting

DevFeed: [That Bad Client Job Posting](<https://devfeed.tech/articles/that-bad-client-job-posting-28140.md>)

Original publisher: [Read original article](<http://fuzzyblog.io/blog/consulting/2022/05/29/that-bad-client-job-posting.html>)

Author: Fuzzygroup

Published: 2022-05-29T12:41:00Z

Content type: opinion

Language: en

Sources: [Scott Johnson](<https://devfeed.tech/sources/scott-johnson.md>)

Topics: [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [Database](<https://devfeed.tech/topics/database.md>), [Learning](<https://devfeed.tech/topics/learning.md>)

Tags: [consulting](<https://devfeed.tech/tags/consulting.md>), [database](<https://devfeed.tech/tags/database.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [learning](<https://devfeed.tech/tags/learning.md>), [project](<https://devfeed.tech/tags/project.md>)

### AI overview

The author reflects on how a difficult client project led to deeper JavaScript learning. They describe adding JavaScript Ajax calls to JobHound so a pasted job URL triggers parsing of the title, description, and location, with the extracted information stored in a database.

### Source excerpt

I've gotten quite a bit of feedback on my Bad Client story and the underlying theme has been "why the heck did you hang in so long?". There were a couple of reasons: I'm stubborn af. That was definitely a part of it. Learning Matters. Point 2, learning is what I want to focus on here. What I have always found, for myself, for computer related things is that my learning is dramatically better when it is real. As an example, that bad client project forced me down the JavaScript rabbit hole longer and more successfully than I have ever gone before. In fact, that's one of the reasons I went with that gig - I knew it would be JavaScript heavy. And, you know what, today I added JavaScript ajax calls to the new cut of JobHound and now, you can paste in a JobUrl and: The right JavaScript is called automatically as you move out of the field. An end point is called which parses the job and extracts out Title, Description, Location, etc. That information is stored in the database. Yes I realize that, by 2022 standards, this is no big deal for a lot of developers- but, historically, this was always where I was weakest (one of the strongest skills a developer has is the self insight here they are weak). And, thanks to an awful client experience, I'm now better at JavaScript and Job Hound is benefiting from it. Moral of the story: Bad clients suck but you can still benefit from them.

## Laravel v6.4.0 released

DevFeed: [Laravel v6.4.0 released](<https://devfeed.tech/articles/laravel-v6-4-0-released-3845.md>)

Original publisher: [Read original article](<https://laravel.com/blog/laravel-v6-4-0-released>)

Author: Laravel Team

Published: 2019-10-23T20:42:00Z

Content type: release

Language: en

Sources: [Laravel Blog](<https://devfeed.tech/sources/laravel-blog.md>)

Topics: [Laravel](<https://devfeed.tech/topics/laravel.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [Exception](<https://devfeed.tech/topics/exception.md>), [migration](<https://devfeed.tech/topics/migration.md>), [passwords](<https://devfeed.tech/topics/passwords.md>)

Tags: [event](<https://devfeed.tech/tags/event.md>), [exception](<https://devfeed.tech/tags/exception.md>), [filesystem](<https://devfeed.tech/tags/filesystem.md>), [laravel](<https://devfeed.tech/tags/laravel.md>), [migration](<https://devfeed.tech/tags/migration.md>), [password](<https://devfeed.tech/tags/password.md>), [release](<https://devfeed.tech/tags/release.md>)

### AI overview

Laravel v6.4.0 is a release update covering additions, changes, fixes, and security-related adjustments. The notes mention many-to-many relation parsing, subquery improvements, AJAX handling in RequirePassword middleware, filesystem driver exception handling, migration-table behavior, event listener checks, and password confirmation compatibility.

### Source excerpt

Laravel v6.4.0 is released in 2019/10/23, here are the changes we`ve merged into this release.

## Profiling Django views with Scooby profiler

DevFeed: [Profiling Django views with Scooby profiler](<https://devfeed.tech/articles/profiling-django-views-with-scooby-profiler-20012.md>)

Original publisher: [Read original article](<http://engineering.hackerearth.com/2018/09/20/profiling-django-views-with-scooby/>)

Published: 2018-09-20T00:00:00Z

Content type: article

Language: en

Sources: [HackerEarth](<https://devfeed.tech/sources/hackerearth.md>)

Topics: [Django](<https://devfeed.tech/topics/django.md>), [debug](<https://devfeed.tech/topics/debug.md>), [Chrome extension](<https://devfeed.tech/topics/chrome-extension.md>), [Redis](<https://devfeed.tech/topics/redis.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [npm](<https://devfeed.tech/topics/npm.md>), [Python](<https://devfeed.tech/topics/python.md>), [Front end](<https://devfeed.tech/topics/frontend.md>), [HTTP](<https://devfeed.tech/topics/http.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [chrome](<https://devfeed.tech/tags/chrome.md>), [chrome-extension](<https://devfeed.tech/tags/chrome-extension.md>), [debug](<https://devfeed.tech/tags/debug.md>), [django](<https://devfeed.tech/tags/django.md>), [front-end](<https://devfeed.tech/tags/front-end.md>), [http](<https://devfeed.tech/tags/http.md>), [npm](<https://devfeed.tech/tags/npm.md>), [profiling](<https://devfeed.tech/tags/profiling.md>), [python](<https://devfeed.tech/tags/python.md>), [redis](<https://devfeed.tech/tags/redis.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

This article introduces Scooby, a Django and Python profiling package designed to inspect SQL and other plugin statistics for AJAX requests. It stores profiling data temporarily in Redis and exposes the results through a Chrome extension, avoiding the performance costs of injecting statistics into rendered HTML.

### Source excerpt

Earlier in 2016, I came up with the idea of creating a Python module which could provide functionality of profiling functions w.r.t. SQL queries and tell exactly at what lines of function, the queries were happening. I called that package Goofy and created it with the engineering of Python AST manipulation. You can read the post on it here later. It helped us profiling views serving AJAX requests but it had some limitations too. E.g. we couldn't see the whole callstack trace of the queries and couldn't analyze the queries. In an internal hackathon @HackerEarth which happened in Nov 2017, I revisited this problem and tried to come up with a profiler, through which we could see the stats on front-end and which should be much lightweight and would work with AJAX requests. I named this package Scooby. Idea We have been using the package django-debug-toolbar, but it wasn't enough because it didn't have the functionality of profiling AJAX requests. And because of the size of our codebase, it had made serving web pages slower in develop mode because it injects the stats in HTML by rendering and rendering takes time. So we needed an alternative. The idea while creating the Scooby package was to have a similar type of package as of django-debug-toolbar but instead of rendering the stats to HTML, we can dump the stats data to some backend store e.g. Redis where it will reside temporarily. And show the stats on front-end using a chrome extension. Implementation We had to create a Python/Django package for backend and a npm package for front-end which would build the chrome-extension. We took the decision of using ReactJS as rendering framework for the chrome-extension. In backend, we just had to create and put a new middleware which will do the job of collecting profiled stats for different plugins (E.g. SQL, Memcache etc.) and put the stats to Redis against some UUID as key. We would put that key as value of a custom header (X-Scooby) in HTTP response, so that chrome-extensio

## Leveraging ReactJS in HackerEarth Assessment Environment

DevFeed: [Leveraging ReactJS in HackerEarth Assessment Environment](<https://devfeed.tech/articles/leveraging-reactjs-in-hackerearth-assessment-environment-20007.md>)

Original publisher: [Read original article](<http://engineering.hackerearth.com/2017/03/07/leveraging-reactjs-in-hackerearth-assessment-environment/>)

Published: 2017-03-07T00:00:00Z

Content type: article

Language: en

Sources: [HackerEarth](<https://devfeed.tech/sources/hackerearth.md>)

Topics: [reactive](<https://devfeed.tech/topics/reactive.md>), [ui](<https://devfeed.tech/topics/ui.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [HTML](<https://devfeed.tech/topics/html.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [Code](<https://devfeed.tech/topics/code.md>), [modern web development](<https://devfeed.tech/topics/modern-web-development.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [components](<https://devfeed.tech/tags/components.md>), [html](<https://devfeed.tech/tags/html.md>), [http](<https://devfeed.tech/tags/http.md>), [make](<https://devfeed.tech/tags/make.md>), [programming](<https://devfeed.tech/tags/programming.md>), [reactive](<https://devfeed.tech/tags/reactive.md>), [render](<https://devfeed.tech/tags/render.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

This article explains how HackerEarth uses ReactJS to build a reactive programming assessment interface. It describes the existing architecture, including question navigation, HTTP and Ajax requests, server-rendered HTML, a code editor, and recording coding sessions as replayable frames. The supplied text ends while introducing implementation pain points.

### Source excerpt

ReactJS, as the name suggests, helps create reactive (read interactive) UIs. If we have a UI with many interactive elements and on each interaction a bunch of elements change, ReactJS efficiently updates and renders the required elements. At HackerEarth, one such UI is the programming assessment environment. Programming assessment environment is one of the most critical products of HackerEarth. The mockup below is a broad idea of what it is composed of. The system in place Let's briefly understand the components in the mockup above. There are three major components: The left pane This is the primary navigational part of the interface. This controls which question is visible in the right pane. It enables candidates to switch between questions as per their convenience. The upper right pane This contains the detailed description of the question which is selected in the left pane. The lower right pane This is a medium for the candidate to submit answer to the question above. As of now, we are assuming that we have a programming question. So let's have a Code Editor here. Now, let's take a look at how things work in the current architecture. In the first HTTP response, we render all the questions in the left pane. There's no html in right pane. On selecting a question in left pane, an ajax call is made to fetch the data. The call returns a pre-rendered html of the entire question description, and it provides the candidate with a way to make further ajax calls to load the code editor. We won't get into the details of each part of the question description, however, for now, let's assume that it is composed of many smaller components. When the candidate is ready to attempt the question, another ajax call is made to render the code editor. We have extended ace editor and written a wrapper over it to fit in our requirements. One such requirement is to record every keystroke and create a frame for it. Later, we can play all those frames and see the entire code editing session

## Autocomplete Search with the Element API & VueJS

DevFeed: [Autocomplete Search with the Element API & VueJS](<https://devfeed.tech/articles/autocomplete-search-with-the-element-api-vuejs-31245.md>)

Original publisher: [Read original article](<https://nystudio107.com/blog/autocomplete-search-with-the-element-api-vuejs>)

Author: andrew@nystudio107.com (Andrew Welch)

Published: 2017-02-22T06:19:00Z

Content type: tutorial

Language: en

Sources: [nystudio107 | Articles on modern web development.](<https://devfeed.tech/sources/nystudio107-articles-on-modern-web-development.md>)

Topics: [Vue.js](<https://devfeed.tech/topics/vue.md>), [Content Management System](<https://devfeed.tech/topics/cms.md>), [API](<https://devfeed.tech/topics/api.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [JSON](<https://devfeed.tech/topics/json.md>), [npm](<https://devfeed.tech/topics/npm.md>), [Front end](<https://devfeed.tech/topics/frontend.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [autocomplete](<https://devfeed.tech/tags/autocomplete.md>), [cms](<https://devfeed.tech/tags/cms.md>), [cmss](<https://devfeed.tech/tags/cmss.md>), [craft](<https://devfeed.tech/tags/craft.md>), [create](<https://devfeed.tech/tags/create.md>), [element](<https://devfeed.tech/tags/element.md>), [fast](<https://devfeed.tech/tags/fast.md>), [feature](<https://devfeed.tech/tags/feature.md>), [functional](<https://devfeed.tech/tags/functional.md>), [github](<https://devfeed.tech/tags/github.md>), [heres](<https://devfeed.tech/tags/heres.md>), [insights](<https://devfeed.tech/tags/insights.md>), [json](<https://devfeed.tech/tags/json.md>), [npm](<https://devfeed.tech/tags/npm.md>), [search](<https://devfeed.tech/tags/search.md>), [vuejs](<https://devfeed.tech/tags/vuejs.md>)

### AI overview

A tutorial on using Craft CMS's Element API and VueJS to build an autocomplete search feature for blog entries. The Vue component sends AJAX requests to the Element API, receives JSON results, and renders them in a navigable dropdown.

### Source excerpt

Here's how to use Craft CMS's Element API and VueJS to create a fast, functional autocomplete search feature

## Configure a proxy for your API calls with Angular CLI

DevFeed: [Configure a proxy for your API calls with Angular CLI](<https://devfeed.tech/articles/configure-a-proxy-for-your-api-calls-with-angular-cli-21301.md>)

Original publisher: [Read original article](<https://juri.dev/blog/2016/11/configure-proxy-api-angular-cli/>)

Published: 2016-11-06T00:00:00Z

Content type: tutorial

Language: en

Sources: [Juri Strumpflohner](<https://devfeed.tech/sources/juri-strumpflohner.md>)

Topics: [Angular CLI](<https://devfeed.tech/topics/angular-cli.md>), [Angular](<https://devfeed.tech/topics/angular.md>), [API](<https://devfeed.tech/topics/api.md>), [Cross-origin resource sharing (CORS)](<https://devfeed.tech/topics/cors.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Webpack](<https://devfeed.tech/topics/webpack.md>), [REST API](<https://devfeed.tech/topics/rest-api.md>), [TypeScript](<https://devfeed.tech/topics/typescript.md>), [CSS](<https://devfeed.tech/topics/css.md>), [Sass](<https://devfeed.tech/topics/sass.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [HTTP](<https://devfeed.tech/topics/http.md>)

Tags: [angular](<https://devfeed.tech/tags/angular.md>), [api](<https://devfeed.tech/tags/api.md>), [browser](<https://devfeed.tech/tags/browser.md>), [cli](<https://devfeed.tech/tags/cli.md>), [cors](<https://devfeed.tech/tags/cors.md>), [css](<https://devfeed.tech/tags/css.md>), [development](<https://devfeed.tech/tags/development.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [http](<https://devfeed.tech/tags/http.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [proxy](<https://devfeed.tech/tags/proxy.md>), [rest-api](<https://devfeed.tech/tags/rest-api.md>), [typescript](<https://devfeed.tech/tags/typescript.md>), [webpack](<https://devfeed.tech/tags/webpack.md>)

### AI overview

A tutorial explains how to configure the Angular CLI development server to proxy API calls to a separate backend, avoiding the need to use full backend URLs in the application and helping address cross-origin restrictions during local development.

### Source excerpt

Lorem ipsum dolor sit amet

## Beautiful Math Symbols

DevFeed: [Beautiful Math Symbols](<https://devfeed.tech/articles/beautiful-math-symbols-20004.md>)

Original publisher: [Read original article](<http://engineering.hackerearth.com/2016/02/02/latex-support-using-MathJax/>)

Published: 2016-02-02T00:00:00Z

Content type: article

Language: en

Sources: [HackerEarth](<https://devfeed.tech/sources/hackerearth.md>)

Topics: [math](<https://devfeed.tech/topics/math.md>), [Library](<https://devfeed.tech/topics/library.md>), [Markdown](<https://devfeed.tech/topics/markdown.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [browser](<https://devfeed.tech/topics/browser.md>), [Code](<https://devfeed.tech/topics/code.md>), [Programming](<https://devfeed.tech/topics/programming.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [browser](<https://devfeed.tech/tags/browser.md>), [code](<https://devfeed.tech/tags/code.md>), [library](<https://devfeed.tech/tags/library.md>), [markdown](<https://devfeed.tech/tags/markdown.md>), [math](<https://devfeed.tech/tags/math.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

The article explains how HackerEarth added LaTeX rendering with MathJax for mathematical symbols in programming-puzzle content. It describes handling editor previews, synchronous page content, and dynamically loaded Ajax content, using Markdown processing hooks and MathJax's asynchronous queue.

### Source excerpt

Introduction: By nature HackerEarth has so many programming puzzles. These puzzles bound to have mathematical equations, statements and symbols. Problem Setters often requested us to add support for Latex. Implementation: The obvious and easy solution for this is to implement Latex support for individual pages. But that's not scalable and maintainable. Then we came with up with a solution where we didn't have to write custom code for every page. We examined the site and figured out three type of rendering that happens in the browser. Before going to solutions case by case, let's first understand how MathJax, the library we use for typesetting Latex, works. Everything in MathJax works asynchronously. After initializing MathJax, it executes a set of tasks and then typesets the queued content. Everything in MathJax works asynchronously using queues. Mathjax docs explains it in detail. Types of rendering: Rendering of preview section in editor Static content rendering (synchronous) Rendering of dynamic content via Ajax (Asynchronous) Read through rest of the article for this categorization to make sense. Editor: We use pagedown editor throughout our site. It has a preview section which displays the converted markdown content. Now this should also display typesetted Latex content. Pagedown editor has feature called hooks. This is a mechanism for plugging external text processors in between various steps of markdown processing. We have written a hook for typesetting Latex macros. This is chained to the hooks at the end, after all the markdown processing is completed. This hook takes markdown processed content as input and spits out Latex typesetted content. function renderLatex(text) { var invisible_div = document.createElement("div"); invisible_div.style.cssText = "display:hidden"; attr = document.createAttribute("id"); attr.value = "mathjax_text"; invisible_div.setAttributeNode(attr); invisible_div.innerHTML = text; document.body.appendChild(invisible_div); elem = docum

## Building a powerful comment system

DevFeed: [Building a powerful comment system](<https://devfeed.tech/articles/building-a-powerful-comment-system-19994.md>)

Original publisher: [Read original article](<http://engineering.hackerearth.com/2015/01/27/making-comments-more-powerful/>)

Published: 2015-01-27T00:00:00Z

Content type: article

Language: en

Sources: [HackerEarth](<https://devfeed.tech/sources/hackerearth.md>)

Topics: [Django](<https://devfeed.tech/topics/django.md>), [App](<https://devfeed.tech/topics/app.md>), [Code](<https://devfeed.tech/topics/code.md>), [User experience (UX)](<https://devfeed.tech/topics/ux.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>)

Tags: [app](<https://devfeed.tech/tags/app.md>), [code](<https://devfeed.tech/tags/code.md>), [django](<https://devfeed.tech/tags/django.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [ux](<https://devfeed.tech/tags/ux.md>)

### AI overview

The article describes how a team built a more powerful and usable threaded comment system for its website using the open-source django-threadedcomments Django app. It explains the system's pluggable architecture, reusable template integration, customizable comment rendering, AJAX-based operations, and breadth-first traversal for handling deletion in threaded comment trees.

### Source excerpt

In this post, I am going to briefly descibe the challenges we faced while building a powerful comment system. Comments have become an integral part of our website. They are integrated almost everywhere - challenges, problems, notes etc. and soon will be added to our new products. We have been working to make it more powerful and usable. Here is what we did: Pluggable architecture Ajaxifying comments Realtime sync Tagging people From the beginning Our comment system is built using an open source django app, named django-threadedcomments. In threadedcomments, commenters can reply both to the original item, and reply to other comments as well. This open source app best suited our requirements in terms of UX, hence we decided to use it. But later we realised it was not powerful enough, and we decided to add our own features in it. Pluggable architecture Our commmenting system is a plug and play app. We added a layer on top of django-threadedcommnets which lets us integrate comments anywhere on our website easily without writing the same code again. Below is the snippet which we can include in any django template to add comments. <div id="comments-{{model.get_content_type.id}}-{{model.id}}" class="pagelet-inview standard-margin comments" ajax="{% url render_comments model.id model.get_content_type.id %}" target="comments-{{model.get_content_type.id}}-{{model.id}}"></div> Above single line of code renders complete comment list(including reply form) using bigpipe. Isn't it cool? One more reason I am calling our comment system plug and play is that we can easily override most of the comments display logic, show comments differently on different pages. For example, comments appearing on a note and problem page needs to be shown differently based on the logic 'who is the moderator of the content'. This couldn't have been possible without django template block tag. comments/base/list.html <!-- This blocks handles logic to determine if user is a normal user or a moderator --> {

## Boot your ajax app: Creating a splash screen with NProgress

DevFeed: [Boot your ajax app: Creating a splash screen with NProgress](<https://devfeed.tech/articles/boot-your-ajax-app-creating-a-splash-screen-with-nprogress-21208.md>)

Original publisher: [Read original article](<https://juri.dev/blog/2013/12/nprogress-splash-screen/>)

Published: 2013-12-05T00:00:00Z

Content type: tutorial

Language: en

Sources: [Juri Strumpflohner](<https://devfeed.tech/sources/juri-strumpflohner.md>)

Topics: [Single-page application (SPA)](<https://devfeed.tech/topics/spa.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [Document Object Model (DOM)](<https://devfeed.tech/topics/dom.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>)

Tags: [app](<https://devfeed.tech/tags/app.md>), [caching](<https://devfeed.tech/tags/caching.md>), [code-splitting](<https://devfeed.tech/tags/code-splitting.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [lazy-loading](<https://devfeed.tech/tags/lazy-loading.md>), [screen](<https://devfeed.tech/tags/screen.md>), [splash-screen](<https://devfeed.tech/tags/splash-screen.md>), [user-experience](<https://devfeed.tech/tags/user-experience.md>)

### AI overview

This tutorial explains how to use a splash screen and NProgress while a single-page JavaScript application starts. It describes hiding the app container, showing a progress indicator, loading JavaScript, templates, and backend data, and revealing the application when loading is complete. It also cautions that optimizing startup with code splitting, lazy loading, caching, or server-side rendering is preferable to relying on progress bars.

### Source excerpt

Lorem ipsum dolor sit amet

## Caching, jQuery Ajax and Other IE Fun

DevFeed: [Caching, jQuery Ajax and Other IE Fun](<https://devfeed.tech/articles/caching-jquery-ajax-and-other-ie-fun-21195.md>)

Original publisher: [Read original article](<https://juri.dev/blog/2013/06/caching-jquery-ajax-and-other-ie-fun/>)

Published: 2013-06-05T00:00:00Z

Content type: article

Language: en

Sources: [Juri Strumpflohner](<https://devfeed.tech/sources/juri-strumpflohner.md>)

Topics: [Caching](<https://devfeed.tech/topics/caching.md>), [jQuery](<https://devfeed.tech/topics/jquery.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [browser](<https://devfeed.tech/topics/browser.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [caching](<https://devfeed.tech/tags/caching.md>), [data](<https://devfeed.tech/tags/data.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [http](<https://devfeed.tech/tags/http.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [request](<https://devfeed.tech/tags/request.md>), [responses](<https://devfeed.tech/tags/responses.md>)

### AI overview

This article explains how browser caching affects jQuery Ajax requests, especially how user-agent handling of conditional requests can expose 304 Not Modified responses as 200 responses. It also discusses jQuery's cache-related option and an Internet Explorer issue involving response headers.

### Source excerpt

Lorem ipsum dolor sit amet

## Turbolinks animated page transitions

DevFeed: [Turbolinks animated page transitions](<https://devfeed.tech/articles/turbolinks-animated-page-transitions-37680.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/animating-page-transitions-in-turbolinks/>)

Author: Carlos Alexandro Becker

Published: 2013-01-22T00:00:00Z

Content type: tutorial

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [animations](<https://devfeed.tech/topics/animations.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [nginx](<https://devfeed.tech/topics/nginx.md>)

Tags: [ajax](<https://devfeed.tech/tags/ajax.md>), [animations](<https://devfeed.tech/tags/animations.md>), [nginx](<https://devfeed.tech/tags/nginx.md>)

### AI overview

The article explains how the author added animated page transitions to a Turbolinks-based application. It describes using a gem and importing JavaScript, with an animated GIF illustrating the result.

### Source excerpt

Since I've seen the new Basecamp, I fell in love with it.

## Turbolinks and the Prague Café Effect

DevFeed: [Turbolinks and the Prague Café Effect](<https://devfeed.tech/articles/turbolinks-and-the-prague-cafe-effect-40611.md>)

Original publisher: [Read original article](<https://eviltrout.com/blog/2013-01-06-turbolinks-and-the-prague-effect/>)

Published: 2013-01-06T00:00:00Z

Content type: tutorial

Language: en

Sources: [Robin Ward](<https://devfeed.tech/sources/robin-ward.md>)

Topics: [web applications](<https://devfeed.tech/topics/web-applications.md>), [Rails](<https://devfeed.tech/topics/rails.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>)

Tags: [ajax](<https://devfeed.tech/tags/ajax.md>), [cdn](<https://devfeed.tech/tags/cdn.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [rails](<https://devfeed.tech/tags/rails.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [speed](<https://devfeed.tech/tags/speed.md>), [web-applications](<https://devfeed.tech/tags/web-applications.md>)

### AI overview

The article explains how Turbolinks, a Ruby library enabled by default in Rails 4, uses background AJAX requests and replaces page content without repeatedly downloading static assets. It argues that geographically distributed Content Delivery Networks can improve web application performance for users far from a site's servers.

### Source excerpt

Turbolinks Turbolinks is a new Ruby library, enabled in Rails 4 by default, that is designed to speed up your web applications. It does this by binding a Javascript handler to all link clicks. Instead of allowing the browser to load the new page, it fetches it in the background via AJAX. It then parses out the body, and injects it into the document you're currently viewing. The main advantage of Turbolinks is that your static assets such as Javascript or CSS will not be downloaded or parsed every time a link is clicked. This can result in a significant client side speed improvement for your end users.

## Rails AJAXSpin

DevFeed: [Rails AJAXSpin](<https://devfeed.tech/articles/rails-ajaxspin-37832.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/rails-ajaxspin/>)

Author: Carlos Alexandro Becker

Published: 2012-11-26T00:00:00Z

Content type: tutorial

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [Rails](<https://devfeed.tech/topics/rails.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [opensource](<https://devfeed.tech/topics/opensource.md>)

Tags: [ajax](<https://devfeed.tech/tags/ajax.md>), [opensource](<https://devfeed.tech/tags/opensource.md>), [rails](<https://devfeed.tech/tags/rails.md>)

### AI overview

The author describes gemifying an AJAX status spinner originally built with CoffeeScript for Ruby on Rails and invites readers to install, fork, comment on, suggest improvements to, or contribute to it.

### Source excerpt

A couple of days ago I wrote about how to build a simple and non intrusive AJAX status with CoffeeScript in RubyOnRails.

## The Difference Between :x:element and :x:primitive

DevFeed: [The Difference Between :x:element and :x:primitive](<https://devfeed.tech/articles/the-difference-between-x-element-and-x-primitive-22031.md>)

Original publisher: [Read original article](<https://codebeforethehorse.tumblr.com/post/35419887698>)

Author: Codebeforethehorse

Published: 2012-11-10T18:16:00Z

Content type: tutorial

Language: en

Sources: [Stefan Parker](<https://devfeed.tech/sources/stefan-parker.md>)

Topics: [XSS](<https://devfeed.tech/topics/xss.md>), [Sanitization](<https://devfeed.tech/topics/sanitization.md>), [HTML](<https://devfeed.tech/topics/html.md>), [JSON](<https://devfeed.tech/topics/json.md>), [html elements](<https://devfeed.tech/topics/html-elements.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>)

Tags: [foreach](<https://devfeed.tech/tags/foreach.md>), [function](<https://devfeed.tech/tags/function.md>), [html](<https://devfeed.tech/tags/html.md>), [html-elements](<https://devfeed.tech/tags/html-elements.md>), [json](<https://devfeed.tech/tags/json.md>), [payload](<https://devfeed.tech/tags/payload.md>), [protection](<https://devfeed.tech/tags/protection.md>), [render](<https://devfeed.tech/tags/render.md>), [rest](<https://devfeed.tech/tags/rest.md>), [xhp](<https://devfeed.tech/tags/xhp.md>), [xss](<https://devfeed.tech/tags/xss.md>)

### AI overview

This article explains when to use :x:element versus :x:primitive in XHP. It recommends :x:element for most cases because its render() method produces more XHP and supports recursive rendering, while :x:primitive ultimately stringifies the result. It identifies custom HTML nodes and non-HTML output such as JSON AJAX responses as the main reasons to use :x:primitive.

### Source excerpt

I was recently asked to clarify the differences between :x:element and :x:primitive, and when to use each one. It's actually pretty simple; the basic rule of thumb is this: always use :x:element. If you're only doing simple things in XHP you can stop reading now, but for the rest of you I'll get into the rare instances where you might use :x:primitive. First, the main difference. :x:element implements the render() method, which returns more XHP while :x:primitive implements to stringify() method, which returns a string. When you echo XHP to the page, it recursively calls render() on itself until it returns an :x:primitive. It will continue to do this to any children of an :x:primitive as well. Once the entire tree is just :x:primitives (usually meaning just HTML nodes) it stringify()s it. So why the difference? The big reason was that we can put XSS protection in all HTML elements and so long as you just return HTML nodes you'll never have to worry about input sanitization again. There are two cases where you would want to create an :x:primitive though. The first being if you wanted to create a custom HTML node. Let's say you wanted to create a <foo> tag for your own purposes. All you would need to do is extend :xhp:html-element (which extends :x:primitive) and define its tag name. class :foo extends :xhp:html-element { protected $tagname = 'foo'; } Pretty simple. You could define custom attributes and children restrictions too if you so desired. The other reason you would extend :x:primitive is if you wanted to return something other than HTML. Consider an AJAX response that returns a JSON object. You might construct an object that behaves like this: class :ajax:response extends :x:primitive { attribute array payload; attribute array errors; protected function stringify() { $html = ''; foreach ($this->getChildren() as $child) { $html .= :x:base::renderChild($child); } $response = array( 'payload' => $this->getAttribute('payload'), 'errors' => $this->getAttribute('e

## Building a Non-Intrusive AJAX Status Indicator with CoffeeScript

DevFeed: [Building a Non-Intrusive AJAX Status Indicator with CoffeeScript](<https://devfeed.tech/articles/simple-ror-ajax-status-37683.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/building-a-simple-and-non-intrusive-ajax-status-with-coffeescript-in-rubyonrails/>)

Author: Carlos Alexandro Becker

Published: 2012-11-08T00:00:00Z

Content type: tutorial

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [Ajax](<https://devfeed.tech/topics/ajax.md>), [Library](<https://devfeed.tech/topics/library.md>)

Tags: [ajax](<https://devfeed.tech/tags/ajax.md>), [loading](<https://devfeed.tech/tags/loading.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

A tutorial on building a CoffeeScript AJAX status indicator with spin.js that shows and hides a loading spinner without blocking application interaction. It discusses handling AJAX lifecycle events and avoiding premature hiding when multiple requests occur.

### Source excerpt

tl;dr

## Academic research on browsers, frontend development, and debugging

DevFeed: [Academic research on browsers, frontend development, and debugging](<https://devfeed.tech/articles/academic-research-on-browsers-frontend-development-and-debugging-21668.md>)

Original publisher: [Read original article](<https://paulirish.com/2012/academic-research-on-browsers-frontend-development-and-debugging/>)

Author: Paul Irish

Published: 2012-09-13T15:45:00Z

Content type: article

Language: en

Sources: [Paul Irish](<https://devfeed.tech/sources/paul-irish.md>)

Topics: [browsers](<https://devfeed.tech/topics/browsers.md>), [frontend development](<https://devfeed.tech/topics/frontend-development.md>), [debugging](<https://devfeed.tech/topics/debugging.md>), [Development](<https://devfeed.tech/topics/development.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [Document Object Model (DOM)](<https://devfeed.tech/topics/dom.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [Security](<https://devfeed.tech/topics/security.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [LocalStorage](<https://devfeed.tech/topics/localstorage.md>), [Node.js](<https://devfeed.tech/topics/node-js.md>)

Tags: [academic-research](<https://devfeed.tech/tags/academic-research.md>), [browser](<https://devfeed.tech/tags/browser.md>), [browsers](<https://devfeed.tech/tags/browsers.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [debugging-tools](<https://devfeed.tech/tags/debugging-tools.md>), [development](<https://devfeed.tech/tags/development.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [frontend-development](<https://devfeed.tech/tags/frontend-development.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [node-js](<https://devfeed.tech/tags/node-js.md>), [performance](<https://devfeed.tech/tags/performance.md>), [realtime](<https://devfeed.tech/tags/realtime.md>), [research](<https://devfeed.tech/tags/research.md>), [security](<https://devfeed.tech/tags/security.md>), [web-applications](<https://devfeed.tech/tags/web-applications.md>)

### AI overview

An English developer article curates academic papers, talks, and researchers focused on browsers and frontend development. It covers browser capabilities, DOM events, client-side validation, mobile performance and energy use, web-application race detection, debugging tools, Node.js performance visualization, and browser security research.

### Source excerpt

University-level education has never really touched too directly on what we do as frontend developers. I know I was self-taught in the ways of the browser, as were all of my friends. Luckily the sort of webapp work we do these days is quite sophisticated so those CS graduates bring much of the great ideas to the JavaScript community. (Alex Sexton has been a personal inspiration here) Early last year, something clicked in my head when I saw this video: Crossing the Chasm: Pitching Security Research to Mainstream Browser Vendors. You mean.. there are academics... who are doing research on browsers.. in universities? My my! You mean bright minds think about the same things as us and don't publish them on Octopress? ;) Turns out it's quite an active area of research. So, I've put together a list of academic papers, talks, and researchers all centered around frontend development and browsers (Please chime in on the comments if you know of more): Webapps Gibraltar: Exposing Hardware Devices to Web Pages Using AJAX UC San Diego, Microsoft Research, Univ. of Singapore, 2012 Modeling and Reasoning about DOM Events Brown University, 2012 Don't Repeat Yourself: Automatically Synthesizing Client-side Validation Code for Web Applications University of Illinois at Chicago, 2012 Performance Who Killed My Battery: Analyzing Mobile Browser Energy Consumption Stanford, 2012 How far can client-only solutions go for mobile browser speed? ACM Digital Library, 2012 Race Detection for Web Applications Sofia University & ETH Zurich & IBM T.J. Watson Research Center, 2012 Leo Meyerovich - Berkeley Rsearch UC Berkeley, 2009 (Parallel Browser Execution, Security) James Mickens - Microsoft Research Microsoft, 2004- (Performance, localStorage, Mashups, Speculative Execution James Mickens, the Galactic Viceroy of Research Magnificence at Microsoft Research, does awesome work. The above shot is from his MIX11 talk Making Better Web Apps For Today's Browsers. Debugging & Tools Timelapse - Interactiv

## Front-end JavaScript bug tracking

DevFeed: [Front-end JavaScript bug tracking](<https://devfeed.tech/articles/front-end-javascript-bug-tracking-2034.md>)

Original publisher: [Read original article](<https://developers.soundcloud.com/blog//front-end-javascript-bug-tracking>)

Published: 2011-11-21T00:00:00Z

Content type: article

Language: en

Sources: [SoundCloud Backstage Blog](<https://devfeed.tech/sources/soundcloud-backstage-blog.md>)

Topics: [error tracking](<https://devfeed.tech/topics/error-tracking.md>), [Front end](<https://devfeed.tech/topics/frontend.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [bug](<https://devfeed.tech/topics/bug.md>), [Back end](<https://devfeed.tech/topics/backend.md>), [Node.js](<https://devfeed.tech/topics/node-js.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [JSON](<https://devfeed.tech/topics/json.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [back-end](<https://devfeed.tech/tags/back-end.md>), [browser](<https://devfeed.tech/tags/browser.md>), [bug](<https://devfeed.tech/tags/bug.md>), [debug](<https://devfeed.tech/tags/debug.md>), [error-tracking](<https://devfeed.tech/tags/error-tracking.md>), [front-end](<https://devfeed.tech/tags/front-end.md>), [google-analytics](<https://devfeed.tech/tags/google-analytics.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [json](<https://devfeed.tech/tags/json.md>), [node-js](<https://devfeed.tech/tags/node-js.md>)

### AI overview

The article evaluates front-end JavaScript error-tracking approaches used on the SoundCloud Mobile site. It compares Google Analytics, Airbrake, and BugSense, explaining their strengths and limitations for long-term monitoring, real-time debugging, custom error data, filtering, grouping, sorting, and visualization.

### Source excerpt

Proper and effective error tracking is a common issue for front-end JavaScript code compared to back-end environments. We felt this pain as...

## Web Development from DHTML to AJAX and Modern Standards

DevFeed: [Web Development from DHTML to AJAX and Modern Standards](<https://devfeed.tech/articles/it-has-never-been-about-the-standers-while-it-has-always-been-about-the-standards-31957.md>)

Original publisher: [Read original article](<https://tech.finn.no2011/08/26/it-has-never-been-about-the-standers-while-it-has-always-been-about-the-standards/>)

Author: espen

Published: 2011-08-26T06:50:51Z

Content type: opinion

Language: en

Sources: [Finn.no](<https://devfeed.tech/sources/finn-no.md>)

Topics: [Web Development](<https://devfeed.tech/topics/web-development.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [browsers](<https://devfeed.tech/topics/browsers.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [ui](<https://devfeed.tech/topics/ui.md>), [CSS](<https://devfeed.tech/topics/css.md>), [jQuery](<https://devfeed.tech/topics/jquery.md>), [Library](<https://devfeed.tech/topics/library.md>)

Tags: [browsers](<https://devfeed.tech/tags/browsers.md>), [css](<https://devfeed.tech/tags/css.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [standards](<https://devfeed.tech/tags/standards.md>), [ui](<https://devfeed.tech/tags/ui.md>), [web-development](<https://devfeed.tech/tags/web-development.md>)

### AI overview

The author reflects on a career in web development, from learning through source code and experimenting with browser technologies to the shift from DHTML and server-side development toward AJAX, JavaScript, CSS, and web UI libraries.

### Source excerpt

I was introduced to the World Wide Web back in 1995 while being a student at Molde College, Norway. What fascinated me the most was that I could learn how to create stuff for the web by just viewing the source code of other web sites. This blew my mind and since then I have built a career working with web development. Creating web sites and web-based applications for me has always been about trying to adopt the latest technological advances in browsers, as soon as they were available. Naturally, this has lead to me reaching a few dead ends (IE's Data Binding and Netscape JavaScript style sheets), but mostly it has enabled me to create some pretty cool things. From DHTML to an atomic winter In the days of the .com era, the community for creating web based applications was buzzing. We were cranking out all kinds of DHTML magic. Every site out there was jumping on the band wagon without any hesitation. One of the classics is online retailer Boo.com which went all out with new technology without really succeeding. Naturally we had to deal with older browsers then too, but we did not let that get in the way of using the latest standards being adopted in browsers. The burst of the .com bubble created something of an atomic winter as far as web based user interface development goes. A lot of people lost their jobs and the rest of us took refuge in server side development. A clean slate and a new dawn Thankfully all the bad stuff was swiftly cleaned up with the introduction of the AJAX approach by Jesse James Garret in 2005. All the interface developers came out from their hiding places and they sure had been busy during that atomic winter. Out popped all kinds of amazing things like Dojo Toolkit, Yahoo! UI Library and JQuery. Once more the web moved forward at a rapid pace thanks to the newly found fame due to the AJAX hype. JavaScript was getting recognition as an actual language and CSS was being implemented in a more serious manner than before. We all implemented our ap

## AJAX, IE6 and System error: -1072896658

DevFeed: [AJAX, IE6 and System error: -1072896658](<https://devfeed.tech/articles/ajax-ie6-and-system-error-1072896658-35373.md>)

Original publisher: [Read original article](<https://darkcoding.net/software/ajax-ie6-and-system-error-1072896658/>)

Author: Graham King

Published: 2008-02-08T02:43:05Z

Content type: tutorial

Language: en

Sources: [Graham King](<https://devfeed.tech/sources/graham-king.md>)

Topics: [Ajax](<https://devfeed.tech/topics/ajax.md>), [Microsoft](<https://devfeed.tech/topics/microsoft.md>), [Query (disambiguation)](<https://devfeed.tech/topics/query.md>), [Server](<https://devfeed.tech/topics/server.md>), [Firefox](<https://devfeed.tech/topics/firefox.md>)

Tags: [ajax](<https://devfeed.tech/tags/ajax.md>), [firefox](<https://devfeed.tech/tags/firefox.md>), [html](<https://devfeed.tech/tags/html.md>), [microsoft](<https://devfeed.tech/tags/microsoft.md>), [query](<https://devfeed.tech/tags/query.md>), [server](<https://devfeed.tech/tags/server.md>), [software](<https://devfeed.tech/tags/software.md>), [text](<https://devfeed.tech/tags/text.md>)

### AI overview

A troubleshooting note about an IE6 AJAX error when reading responseText through Microsoft.XMLHTTP. The reported fix is to return the correct MIME type, such as text/plain for plain-text responses.

### Source excerpt

I have just spent a while wrestling with this problem, so in case anyone else comes across it. Symptoms - You are making an AJAX query to your server - in my case using Yahoo's excellent YUI, connection manager. - On IE6, using the Microsoft.XMLHTTP object, you try and read the responseText parameter (or the YUI does for you).

## Technologies for better web based applications: XMPP, Flex, and more

DevFeed: [Technologies for better web based applications: XMPP, Flex, and more](<https://devfeed.tech/articles/technologies-for-better-web-based-applications-xmpp-flex-and-more-35298.md>)

Original publisher: [Read original article](<https://darkcoding.net/future-of-web-apps/technologies-for-better-web-based-applications-xmpp-flex-and-more/>)

Author: Graham King

Published: 2008-01-27T20:39:52Z

Content type: tutorial

Language: en

Sources: [Graham King](<https://devfeed.tech/sources/graham-king.md>)

Topics: [web applications](<https://devfeed.tech/topics/web-applications.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [XMPP](<https://devfeed.tech/topics/xmpp.md>), [real-time](<https://devfeed.tech/topics/real-time.md>), [Single-page application (SPA)](<https://devfeed.tech/topics/spa.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Firefox extension](<https://devfeed.tech/topics/firefox-extension.md>)

Tags: [ajax](<https://devfeed.tech/tags/ajax.md>), [applications](<https://devfeed.tech/tags/applications.md>), [extension](<https://devfeed.tech/tags/extension.md>), [firefox](<https://devfeed.tech/tags/firefox.md>), [futureofwebapps](<https://devfeed.tech/tags/futureofwebapps.md>), [http](<https://devfeed.tech/tags/http.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [software](<https://devfeed.tech/tags/software.md>), [summary](<https://devfeed.tech/tags/summary.md>), [web](<https://devfeed.tech/tags/web.md>), [xmpp](<https://devfeed.tech/tags/xmpp.md>)

### AI overview

The article explains how web applications differ from traditional websites, focusing on richer graphical interfaces and real-time data. It discusses JavaScript, Adobe Flex, Firefox extensions, AJAX, Comet, and XMPP as approaches for building more interactive and connected applications.

### Source excerpt

The web application revolution: blurring the line between websites and software.

## New RosCMS v3 online

DevFeed: [New RosCMS v3 online](<https://devfeed.tech/articles/new-roscms-v3-online-33158.md>)

Original publisher: [Read original article](<https://reactos.org/project-news/new-roscms-v3-online/>)

Published: 2007-08-14T00:00:00Z

Content type: release

Language: en

Sources: [Front Page on ReactOS Website](<https://devfeed.tech/sources/front-page-on-reactos-website.md>)

Topics: [Content Management System](<https://devfeed.tech/topics/cms.md>), [ReactOS](<https://devfeed.tech/topics/reactos.md>), [Website](<https://devfeed.tech/topics/website.md>), [Database](<https://devfeed.tech/topics/database.md>), [Ajax](<https://devfeed.tech/topics/ajax.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>)

Tags: [content](<https://devfeed.tech/tags/content.md>), [core](<https://devfeed.tech/tags/core.md>), [database](<https://devfeed.tech/tags/database.md>), [forms](<https://devfeed.tech/tags/forms.md>), [free](<https://devfeed.tech/tags/free.md>), [interface](<https://devfeed.tech/tags/interface.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [os](<https://devfeed.tech/tags/os.md>), [react](<https://devfeed.tech/tags/react.md>), [reactos](<https://devfeed.tech/tags/reactos.md>), [update](<https://devfeed.tech/tags/update.md>), [web](<https://devfeed.tech/tags/web.md>), [win32](<https://devfeed.tech/tags/win32.md>), [winapi](<https://devfeed.tech/tags/winapi.md>)

### AI overview

The ReactOS Content Management System, RosCMS, received a major version 3 update. The release replaced version 2, changed the database structure, introduced an AJAX-style web application interface, and added configurable workflow views. It was also intended to support ReactOS translation work.

### Source excerpt

New RosCMS v3 online The ReactOS Content Management System software for the ReactOS website got a major update. RosCMS is used to manage the ReactOS website and in near future additionally to maintain the ReactOS translation work. It is a very flexible web based system. The core parts of the software are the flexible database layout and the dynamic interface that consist of a bunch of filters. The end user can costumize his/her own workflow by changing the filter settings or choose one of the predefined views (which consist itself of filters internally).

[Next page](<https://devfeed.tech/topics/ajax.md?cursor=WyIyMDA3LTA4LTE0VDAwOjAwOjAwKzAwOjAwIiwgIjA0Y2U2ZTQ3LTMyMGEtNDdkOC1hNmIzLTQ3NmUzMjViMDdkZSJd>)