BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Development Content on InfoQ

  • Finding the Right Data Solution for Your Application in the Data Storage Haystack

    With the recent NoSQL movement there are several alternative data storage solutions available compared to the traditional relational databases. In this article, author Srinath Perera discusses the various data storage options and what to consider when choosing each of these solutions.

  • An Overview of .NET/Mono Runtime Versions, Profiles, and Targeting Packs

    The .NET/Mono Framework has never been a single, unified stack and over the years Microsoft and Novell added several new versions to cover Linux, OS X, and mobile devices. With the introduction of Windows 8 and Visual Studio 11 we can expect one, maybe two more. In an attempt to clear up some of the confusion this article reintroduces all of the major profiles and many of the lessor know ones.

  • Interview and Book Review: Specification by Example

    Gojko Adzic has written the book Specification by Example, explaining the set of techniques for describing the functional and behavioural aspects of a computer system in a way that they are useful to the development team (expressed ideally as executable tests), understandable by non-technical stakeholders and maintainable to remain relevant despite changing customer demands.

  • The Essence of Google Dart: Building Applications, Snapshots, Isolates

    Google has previewed Dart, a new language with a VM but also a JS compiler. InfoQ looks beyond the grammar at Dart's contributions for building apps: Snapshots, Isolates, Modularity.

  • Mobile Attacks and Defense

    In this IEEE article, author Charlie Miller talks about the mobile security vulnerabilities. He explains how smart phones are becoming targets of attackers and discusses security models of two smart phone operating systems: Apple's iOS and Google's Android. The attackers can get remote code to run on a mobile device in two ways: mobile malware and drive-by downloads.

  • Integrating PHP with .NET Using Phalanger

    Phalanger can be used to create solutions that combine .NET and PHP in ways that are not possible with the standard PHP interpreter. Thanks to Phalanger extensions, PHP programs can directly use .NET classes and .NET programs can dynamically invoke PHP scripts or use functions and classes implemented in PHP.

  • Node.js in Action: Interview and Book Excerpt

    Node.js in Action by Mike Cantelon and TJ Holowaychuk, is a book that tries to introduce the platform to web developers coming to Node from established technologies such as Ruby on Rails and PHP. Node.js is an elegant, server-side, JavaScript development environment suitable for scalable, high-performance web applications. Node supports a minimalist server-side JavaScript interface.

  • .NET Static Analysis and Parasoft dotTEST

    Static analysis has a broad set of capabilities to offer the .NET world. It can enforce pattern-based rules, whether they're based on proven standards or custom patterns that help you identify application-specific defects. Nevertheless, some defects cannot be detected by this analysis technique. The flow analysis feature of dotTEST does exactly that.

  • David Pollak and Dick Wall Discuss Barriers to Scala Adoption

    David Pollak, famous Scala advocate, blog posted, "Yes, Virginia, Scala is hard", causing a brouhaha. Scala use is increasing, yet the post claims that Scala tries to do too much, has poor IDE support, and more. InfoQ catches up with David Pollak and Dick Wall to comment on the complaints in the post, as well as the future of Scala. David has things to say about Groovy, Ceylon and Lambdas too.

  • Effective Java Profiling With Open Source Tools

    In this example-driven article, Joachim Haagen Skeie walks you step by step through using open source tools like JMap, VisualVM, BTrace, and EurekaJ to get under the hood of your running Java apps to effectively diagnose performance and memory problems.

  • Discover Recording JVM Debuggers

    A debugger is a great tool for examining the internal state of an application, reproducing however a specific issue is a completely different matter. Fully replicating the production environment into a staging area might even be a feat on its own. Meet recording debuggers that remove all the guesswork and extra effort by monitoring the application in production and knowing exactly what happened.

  • Multi-Process Node.js: Motivations, Challenges and Solutions

    Although Node.js doesn’t expose traditional threads or bother directly with issues like multiple-processor concurrency, these issue do arise in production environments. InfoQ has conducted a virtual panel with the creators of Node.js projects that deal with these concerns.

BT