IE 11 to Feature WebGL, New Development Tools and SPDY


There is good news for web developers: Windows 8.1 will ship with Internet Explorer 11, which will feature WebGL, much improved developer’s tools and support for Google’s SPDY protocol. While none of these features have officially been announced, they are part of a preview release of Windows Server “Blue” (the code name for Windows 8.1) released to MSDN subscribers ahead of Microsoft’s BUILD conference, which starts today.

Continue Reading

Using Github Issues Effectively


Github Issues, as of version 2.0, is a nice and light weight issue tracker for your Github projects. Compared to alternatives like JIRA, it’s a breath of fresh air for projects that are not too big. Because reporting an issue only involves filling in two required fields: the issue title and description, it’s easy and attractive to create a lot of issues for work left to be done and bugs to be fixed.

However, if you use Github issues as a todo list, having a list of dozens or hundreds of issues can become unwieldy very quickly. Which ones are important, what to tackle first? Who’s working on what? When this happens, its likely worth spending a little bit of time coming up a bit more structure to keep things manageable.

Continue Reading

PHP Support Comes to Google App Engine


Php logo

Yesterday, at Google IO, Google has announced the gradual roll-out of PHP support for App Engine, Google’s Platform-as-a-Service offering. PHP will be Google’s fourth supported platform on App Engine:

  1. Python
  2. Java
  3. Go (experimental)
  4. PHP (experimental)

The PHP App Engine reference documentation shows that not all the usual Google APIs are available to PHP programmers (yet). Notably, Google’s App Engine Datastore support is missing, whereas Google Cloud SQL (MySQL database) and Google Cloud Storage (file storage) APIs are available.

Google Moves from Eclipse to IntelliJ IDEA-Based IDE for Android


Android studio

Yesterday, at Google IO, Google announced the release of Android Studio, a new IDE (Integrated Development Environment) for Android applications. Whereas previous versions of Android IDEs had been built on top of Eclipse. Android Studio has been built on top of JetBrains’ IntelliJ IDEA Community Edition:

Android Studio is a new Android development environment based on IntelliJ IDEA. Similar to Eclipse with the ADT Plugin, Android Studio provides integrated Android developer tools for development and debugging. On top of the capabilities you expect from IntelliJ, Android Studio offers:

    • Gradle-based build support.
    • Android-specific refactoring and quick fixes.
    • Lint tools to catch performance, usability, version compatibility and other problems.
    • ProGuard and app-signing capabilities.
    • Template-based wizards to create common Android designs and components.
    • A rich layout editor that allows you to drag-and-drop UI components, preview layouts on multiple screen configurations, and much more.

Why Google made this move is unclear. Nor is it clear if Google will make a similar move for some of its other IDE projects previously based on Eclipse, such as Dart’s Editor. Is Eclipse no longer the go-to IDE platform?

Most Data Isn’t “Big” and Businesses Are Wasting Money Pretending It Is

Christopher Mims on “big data”:

Big data! If you don’t have it, you better get yourself some. Your competition has it, after all. Bottom line: If your data is little, your rivals are going to kick sand in your face and steal your girlfriend.

There are many problems with the assumptions behind the “big data” narrative (above, in a reductive form) being pushed, primarily, by consultants and IT firms that want to sell businesses the next big thing. Fortunately, honest practitioners of big data—aka data scientists—are by nature highly skeptical, and they’ve provided us with a litany of reasons to be weary of many of the claims made for this field.

Perhaps this whole big data thing is a bit overblown? Related: nobody ever got fired for buying a cluster.

Why Ruby, Python, JavaScript Will Never Outperform C#, Java, Dart

Charles Nutter (of JRuby fame) wrote an interesting article in which he analyzes what are the essential features of a language that enable building fast, optimizing virtual machines. He makes a few observations:

  1. Static versus dynamic typing is not an issue. Both can be optimized to a similar level. Case in point: Dart VM Beats JVM in DeltaBlue Benchmark.
  2. Types need to be predictable. What makes a virtual machine hard to optimize is dynamism in types and objects. If types change while the program is running, if properties can be added and removed and replaced, many optimizations a VM could do are no longer safe.
  3. You can’t cheat the CPU. “Regardless of how clever you’d like to be in your code or language or VM or JIT, the limiting factor is how modern CPUs actually run your code.”

Continue Reading

Go 1.1 released



Google has released Go version 1.1:

Since the release of Go 1.0 in March last year, the “gophers”—a team at Google and hundreds of contributors from the open source community—have been hard at work.

Today we released Go 1.1, a release that includes significant performance improvements, a race detector for finding concurrency bugs, new standard library functionality, and other fixes and refinements.

Go continues to be a thriving open source project. Since Go 1.0, the core received more than 2600 commits from 161 people outside Google.

More information in the official announcement and our previous coverage when Go 1.1 RC1 was released.

Tig: An Ncurses Front-End to Git


Tig 2

Jonas Fonseca wrote tig, a terminal-based front-end to git:

I’m a big fan of Git, but I’m not such a big fan of most UIs for it, especially the ones integrated into IDEs. I find them convoluted and confusing. They try to map some generic “VCS” language onto the commands, or try to hide too much, making it hard to understand what’s going on. Or worse: they’re written in Tcl/Tk…

So, he developed an ncurses based terminal interface.

It operates via vi-like keyboard shortcuts (j to go down, k to go up enter to open, q to exit). If you’re on a Mac and you have homebrew installed, installation is a single

brew install tig


Read more about it in the announcement.

Storm: Real-Time Hadoop


Calm in the storm

Nathan Marz created Storm, a “distributed and fault-tolerant realtime computation” platform built on top of the JVM. Whereas Hadoop is usually used for batch high-latency querying, Storm can be used for real-time computation. It’s currently in use by many companies, including Groupon, Twitter and Flipboard.

Continue Reading