InfoQ Homepage Development Content on InfoQ
-
PyParallel: A Fast Parallel Version of Python
By combining asynchronous I/O with a shared-nothing architecture, PyParallel research project is able to execute code in a parallel context faster than it can using CPython’s normal interpreter. And it does this without removing the GIL. The secret, no reference counting or garbage collection of any kind.
-
Architecture and Agility: Married, Divorced, or Just Good Friends?
This article describes the relationship between architecture and process of software development and how architecture can responds to a set of needs, such as functional requirements, operational characteristics, and developer habitability. It also talks about the role of pragmatic architects when working with developers and stakeholders.
-
Cassandra CLI Internals Using JArchitect
Cassandra CLI is a useful tool for Cassandra administrators. It's a good example of how to implement a Cassandra client and CLI internals help us to develop custom Cassandra clients or even extend the CLI tool. In this article, author explores Cassandra CLI architecture model using JArchitect tool and CQLinq language to analyze its code base.
-
Don’t jump the SQL ship just yet
The SQL language has been evolving steadily over the last two decades. At the same time, the verbosity caused by the JDBC API in Java client code and the lack of first class SQL support within the Java language have led to the introduction of ORMs such as Hibernate, which was later standardised into JPA and the Criteria API.If SQL and JPA are diverging, where will our data interaction patterns go?
-
Introduction to Graph Visualization with Alexander Smirnov
To help the user understand what they are seeing, developers often turn to bar and pie charts. But that only works for discrete data; when at the links between data other tools come into play. We asked Alexander Smirnov, creator of GraphX, to explain what graph visualization is and how it can be used.
-
Developing Modular JavaScript Components
While most web applications these days employ an abundance of JavaScript, keeping client-side functionality focused, robust and maintainable remains a significant challenge. This article will present an example of evolving a simple widget from a largely unstructured code base to a reusable component.
-
Inter-thread communications in Java at the speed of light
Developing a light-weight, lockless, inter-thread communication framework in Java without using any locks, synchronizers, semaphores, waits, notifies; and no queues, messages, events or any other concurrency specific words or tools. Just get POJOs communicating behind plain old Java interfaces.
-
Key Takeaway Points and Lessons Learned from QCon San Francisco 2013
This article summarizes the key takeaways and highlights from QCon San Francisco 2013 as blogged and tweeted by attendees. Over the course of the next 4 months, InfoQ will be publishing most of the conference sessions online, including 19 video interviews that were recorded by the InfoQ editorial team. The publishing schedule can be found on the QCon San Francisco web site.
-
Implementing High Performance Parsers in Java
On certain occasions you will need to build your own parser, eg if there is nothing standard that fits the bill. This article walks through the steps of building a high performance parser
-
Exposing CQRS Through a RESTful API
Command Query Responsibility Segregation (CQRS) is an architectural pattern that segregates reads and writes of a system into two separate models. We propose and demonstrate an approach for building a RESTful API on top of CQRS systems. This approach joins HTTP semantics and resource-based style of REST APIs with distributed computing concerns such as eventual consistency and concurrency.
-
Writing Automated Tests with Jazz Automation
Jazz Automation is a testing framework built to automate and speed up acceptance/functional testing for all types of web based systems or static websites and in any industry. It also lends itself to easily implement automated integration testing. Historically this type of testing has been all manual, labor intensive, and inaccurate.
-
Beyond Data Mining
In this article, author talks about the need for a change in the predictive modeling community’s focus and compares the four types of data mining: algorithm mining, landscape mining, decision mining, and discussion mining.