Implementing High Performance Parsers in Java v. 2
My first article on InfoQ.com about how to implement high performance parsers in Java received some criticism (the JSON parser part of the article). Therefore I have updated the code and the article and expanded the benchmarks. The benchmarks are now even better for index overlay parsers.
Mobile Viewable Websites
The responsive web design tutorial continues with a tutorial about how to create a web design that looks good on both mobile, tablet and desktop screens.
Fast Loading Websites
Mobile devices often have lower bandwidth and lower hardware capacity than desktop devices. Since slow websites turn away users, you should think about optimizing the website for faster download time, especially for mobile visitors.
TokenReplacingReader Bug Fix
The TokenReplacingReader which can replace strings in streams, had small bug when the ITokenResolver returns an empty string as replacement. This bug has now been fixed.
Responsive, Mobile Friendly Web Design
Responsive, mobile friendly web design is a style of web design where you create a single website / design which adapts itself to the device is is being viewed on. In this introduction I explain what techniques you normally use to make your web design responsive and mobile friendly.
I have written a quick introduction to computer architecture. I have mostly covered the parts that are relevant to know when designing software architectures. I may expand it over time, as computer architecture evolves.
Caching is a way to speed up data reads, especially in systems accessing data in remote systems or on disk. This tutorial on caching techniques explains the issues you need to take into consideration when implementing a cache.
Load Balancing Tutorial
Load balancing is a technique which distributes work load onto multiple servers, in order to make an application scale onto multiple servers. This tutorial explains 5 common load balancing schemes.
I have extended my software architecture tutorial with a text about scalable architectures. A scalable architecture is an architecture that can easily be scaled up to handle increased workloads.
RIA (Rich Internet Applications) are a special breed of web applications where the user interface has much richer functionality than what the first and second generation web applications. They look and feel more like desktop applications. RIA architecture also has 9 advantages over older web application architectures.
N Tier Architecture Tutorial
My software architecture tutorial has been expanded with a text about N tier architectures.
Client - Server Architecture
I have added a text on client / server architecture to the software architecture tutorial. It mentions common types of client / server applications, along with a few disadvantages of client / server applications.
Single Process Architecture
The software architecture tutorial has been extended with a text on single process architectures. Granded, single process architectures are not that exciting, but the tutorial needs them to be comprehensive.
Software Architecture - Introduction Updated
I have just updated my software architecture introduction with a few extra paragraphs of text, and 2 new diagrams illustrating architectures, and synchronous vs. asynchronous communication.
Software Architecture Tutorial Started
I have started a tutorial about software architecture. It is still very basic, but the main ideas are now visible. I will fill in details throughout the following weeks.
Servlet Cookie Tutorial - Updated
I just updated my Java Sevlet cookies tutorial to also show how to find a specific cookie among the cookies submitted by the browser, and how to remove cookies from the browser too.
SVG Tutorial - Minor fixes
I have been through my SVG tutorial and fixed a lot of minor errors.