InfoQ Homepage ETE Content on InfoQ
-
GitHub's GraphQL Future
Kyle Daigle shares why GitHub chose GraphQL, how it differs from REST, how GitHub went about implementing it, and how they're using it in production a year later.
-
Managing the Reactive World with RxJava
Jake Wharton discusses how to think about asynchronous sources, the tools that RxJava provides to handle them, and takes a look at the future of Java and how it will affect the library.
-
Free as in Monads
Daniel Spiewak creates a `Free` monad to show how powerful it can be when applied to the right problems.
-
Serverless Architectures
Mike Roberts introduces serverless, discussing the benefits and limitations of such an architecture, concluding with how he expects serverless to develop over the coming months and years.
-
Avoiding React Performance Pitfalls
Alex Grigoryan discusses the performance problems found and their solutions moving from Backbone/Java to React/Node.js at @WalmartLabs.
-
Clojure Spec: Expressing Data Constraints without Types
Alex Miller introduces Clojure Spec which can be used for program validation, documentation, destructuring, instrumentation, data generation, and automatic generative testing.
-
Scaling with Apache Spark
Holden Karau looks at Apache Spark from a performance/scaling point of view and what’s needed to handle large datasets.
-
Java Futures: Modules and More
Karen Kinnear highlights some Java 9 features, diving into the Module System (project Jigsaw), and taking a sneak peak at some of the future Java projects currently incubating.
-
Build a Better Monster: Morality, Machine Learning and Mass Surveillance
Maciej Ceglowski wonders what tech companies can do to reduce the amount of data collected, closing the path to mass surveillance and bringing some morality in using ML with this data.
-
Java Performance Engineer's Survival Guide
Monica Beckwith provides a step-by-step approach to finding the root cause of any performance problem in a Java app, showcasing through an example a few performance tools and the performance process.
-
Parasitic Programming Languages
David Nolen examines the benefits and tradeoffs associated with creating a language based on an existing runtime, with a special focus on the Clojure and ClojureScript projects.
-
IoT, DDoS, and the DNS: Development Models for a Hostile Internet
Chris Baker overviews the IoT DDoS landscape, providing both a comprehensive mental model for IoT botnets, as well as sharing some insight into recent adaptations to network threat models.