DSR Application Development News August 2015

IBC 2015

This year’s IBC will cover groundbreaking topics with implications that will resonate through the industry for the rest of our lives. DSR will be attending to represent its advances in IoT and its expertise in the Broadcasting and Entertainment industry. If you are planning to attend and would like to connect, please contact us – we would love to set up a meeting with you while we are there.

Google Finishes Eclipse with End of Support for IDE

Android Studio was announced back in 2013 at Google’s I/O developer conference – and since its reveal – the clock was ticking on the end of support for the popular Eclipse IDE which many developers have opted to use for their Java development for over a decade.

Every Company is Compromised, but Most Infections not yet at Critical Stage

In a recent analysis of a quarter-million endpoint devices in 40 enterprises, every single corporate network showed evidence of a targeted intrusion but most of the activity was not yet at the most-dangerous data exfiltration stage.

Google Made a Chatbot That Debates the Meaning of Life

“Instead of using rules to build a conversational engine, we use a machine learning approach,” Le tells Wired. “We let the machine learn from data rather than hand-coding the rules.” Google’s paper shows they can also drive chatbots, and perhaps move us closer to a world where machines can converse like humans.

Write Handsome, Hybrid Mobile Apps with Ionic

Everyone wants the apps they write to run on multiple platforms, but no one wants to give up the native features of mobile devices. That’s where Ionic, a relatively new JavaScript framework, comes into play. Ionic is designed to fill the UI gap in hybrid mobile apps, building on the familiar AngularJS MVC tooling with new interaction models and CSS styling.

The Art of Command Line

Fluency on the command line is a skill often neglected or considered arcane, but it improves your flexibility and productivity as an engineer in both obvious and subtle ways. There is a selection of notes and tips on using the command-line that have been found useful when working on Linux. Some tips are elementary, and some are fairly specific, sophisticated, or obscure.



15 Ways Visual Studio 2015 Enhances App Development

Microsoft’s recently launched Visual Studio 2015 delivers a number of new capabilities that help developers achieve more and extends that productivity and power across multiple platforms — from Windows to Linux to iOS and Android. It also enables developers to select a variety of third-party extensions to include with their installation.

  Smarter Grids With Sass And Susy

If you’re a designer, you’ll know that grids are your friends. More often than not, they’re the vital architecture that holds a beautiful design together; they create rhythm, structure your page, lead the eye, and prevent the whole thing collapsing in a sloppy mess. Susy is a Sass-based grid framework that solves problem of creating fast, responsive, fully customizable grids. It’s very lightweight and enables you to create entirely custom grids in CSS without touching your markup.

The Unreasonable Effectiveness of Recurrent Neural Networks

The last few weeks have been a time of neural nets generating stuff. By deep nets there are meant recurrent and convolutional neural networks, while the stuff is text, music, images and even video. Google made a big splash by showing a few pictures created by an unspecified neural network (details are even scarcer than usual – no paper so far, let alone any code or live demo). The authors call the technique inceptionism.

 
Why are Facebook, Digg, and Twitter so Hard to Scale?

Real-time social graphs (connectivity between people, places, and things). That’s why scaling Facebook is hard says Jeff Rothschild, Vice President of Technology at Facebook. Social networking sites like Facebook, Digg, and Twitter are simply harder than traditional websites to scale.

  Intel Announces Java-to-iOS Path

At Android Developer Conference Boston, Intel unveiled a new set of features for its Integrated Native Development Experience (INDE) developer tools platform. These new capabilities will allow Android developers to port their applications to iPhone with only UI changes likely being required.

 

DSR Application Development News July 2015

Runtime Inspection for iOS Apps

Reveal brings powerful runtime view debugging to iOS developers. With advanced visualizations, comprehensive inspectors and the ability to modify applications on the fly, you’ll be debugging view layout and rendering problems in seconds.

Comprehensive Git Commits Guide

You have some difficulty with using git? This article is an attempt to be a fairly comprehensive guide to recovering from what you did not mean to do when using git. It isn’t that git is so complicated that you need a large document to take care or your particular problem, it is more that the set of things that you might have done is so large that different techniques are needed depending on exactly what you have done and what you want to have happen.

Raft – The Understandable Distributed Protocol

Ben Johnson, who is the lead developer of the Sky behavioural database project (http://skydb.io/) and lead developer of the Go implementation of the Raft protocol (https://github.com/benbjohnson/go-raft), discusses the Raft protocol and how it works.

The LLDB Debugger

LLDB is a next generation, high-performance debugger. It is built as a set of reusable components which highly leverage existing libraries in the larger LLVM Project, such as the Clang expression parser and LLVM disassembler. LLDB is the default debugger in Xcode on Mac OS X and supports debugging C, Objective-C and C++ on the desktop and iOS devices and simulator.

Biicode Now is Open

Source code biicode now available on GitHub under a free MIT license. Biicode is a multi-platform C and C++ dependency manager. It was created as an analogue of Pip for Python, Gem for Ruby, Maven for Java, CPAN for Perl, etc.,designed for C++. In terms of architecture biicode it is divided into two main parts – a user and a server (supports integration with cloud storage code).

Ghostlab

Your website is being viewed on multiple browsers and devices of all forms and sizes. To make sure that you reach anyone surfing your website just the same, make responsive testing a breeze with Ghostlab. It will synchronously perform all tests you perform on one browser on any number of connected devices. This not only saves you time, but is also fun.


Bugs Everywhere

Bugs Everywhere is a “distributed bugtracker”, designed to complement distributed revision control systems. It’s using distributed revision control as a backend for bug state, so it’s gain a lot of convenient features.

Using Lambdas in MFC Applications

The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. C++ REST SDK (also known as Casablanca) offers support for HTTP client/server, JSON, URI, asynchronous streams, WebSockets client, oAuth and PPL Tasks. The article gives suggestions of how to set up a Visual C++ project (particularly one that uses MFC) in order to be able to deal with Casablanca library.

 

DSR Application Development News November 2014

firefox Browser For Developers

Firefox team: ‘Ten years ago, we built Firefox for early adopters and developers to give them more choice and control. Firefox integrated WebAPIs and Add-ons to enable people to get the most out of the Web. Now we’re giving developers the whole browser as a hard-hat area, allowing us to bring front and center the features most relevant to them. Having a dedicated developer browser means we can tailor the browsing experience to what developers do every day.’

yii Yii 2.0.0 Is Released

Yii 2.0 is finally coming, after more than three years of intensive development with almost 10,000 commits by over 300 authors. As you may have already known, Yii 2.0 was completely rewritten in order to build a state-of-the-art PHP framework by keeping the original simplicity and extensibility of Yii while adopting the latest technologies and features to make it even better.

jquery jQuery 3.0 Is Coming

Next releases will use a different nomenclature. As before, there will be two different released files. The successor to what is now version 1.11.1 will become jQuery Compat 3.0. The successor to jQuery 2.1.1 will be jQuery 3.0. There are two different packages on npm and Bower, but they share the same version to indicate they have the same API behavior. If you need support for the widest variety of browsers including IE8, Opera 12, Safari 5, and the like, use the jQuery-Compat 3.0.0 package. This version is recommended for most websites, since it provides the best compatibility for all website visitors. If your website is built only for evergreen leading-edge browsers go for the jQuery 3.0.0 package.

lollipop Lollipop

Google is touting Android 5.0 Lollipop as its largest and most ambitious release for Android. Google’s main goal with the new mobile SDK is to provide a more seamless experience across phones, tablets, wearables, TVs, cars and anything else someone can dream up to connect. It includes a number of new features for users and thousands of new APIs for developers.

func Functional Languages Rack Up Best Scores

A study of GitHub projects and the languages used to build them finds that certain language characteristics are more likely to result in better software.

mockaroo Mockaroo

Need some mock data to test your app? Mockaroo lets you generate up to 100,000 rows of realistic test data in CSV, JSON, SQL, and Excel formats.

github GitHub With Amazon

With the newest release of its code-management system, GitHub is now giving businesses the option of hosting GitHub Enterprise installations in Amazon’s cloud. As enterprises move to ditch more of their physical infrastructure, it makes sense for GitHub to offer products aligned with the trend. But don’t take this as a sign GitHub is preparing to dump its bare-metal setup and move to Amazon itself anytime soon.

ssl SSL Assassination

Google plans to remove support for the aging Secure Sockets Layer version 3.0 protocol in Google Chrome 40, which is expected to ship in about two months. The decision comes after Google security researchers recently discovered a dangerous design flaw in SSL 3.0. Dubbed ‘POODLE’, the vulnerability allows a man-in-the-middle attacker to recover sensitive, plain text information like authentication cookies, from a HTTPS (HTTP Secure) connection encrypted with SSLv3.

svg Stylish SVG

CSS can be used to style and animate scalable vector graphics, much like it is used to style and animate HTML elements. The article goes over how to export and optimize SVGs, techniques for embedding them and how each one affects the styles and animations applied.

dislike Freedom To Dislike

Like it or not, social media is an integral part of our lives. But sometimes, the etiquette can be a little fuzzy, especially when your only option is to hit that ‘like’ button.

DSR Application Development News June 2014

mysqlfabric MySQL Fabric is now generally available

Oracle has announced MySQL Fabric, an open source framework to manage farms of MySQL servers. MySQL Fabric is a component of Oracle’s MySQL Utilities 1.4.3 package. Automatic Failover and Data Sharding Now Available for Web and Cloud Applications.

MySQL Fabric Capabilities:

  • Monitoring of the master database; if the server fails, a slave database is selected and promoted to a new master.
  • The automatic routing of transactions to the current master and load-balancing of queries across slave databases.
  • Automated data sharding and re-sharding to make the lives of DevOp team easier.
  • Users can allow tables to be sharded for scale-out of both reads and writes, select which tables should be sharded and specify the columns to be used as sharding keys, and move existing shards to new servers or split them into multiple shards.
  • Extensions to PHP, Python, and Java connectors allow transactions and queries to be routed directly to the correct MySQL Server, eliminating extra latency caused when passing through a proxy.

Further reading, with examples, analysis and slides:

git A successful Git branching model

This article is not news since it was written more than 4 years ago, but here at DSR we use a similar approach in many projects. And not only with Git. The branching strategy which is described by Vincent Driessen can be successfully used with other version control systems (SVN, CVS, Bazaar, etc).

The branching model consist of two branches with an infinite life time: master and develop, and three types of branches which always have a limited life time: feature, release, and hotfix.

More reading:

securetunnel ngrok – secure introspectable tunnels to localhost

One of the more common tasks we have in web development involves the need to share our web application with other developers and APIs. But while developing, you’re probably working on your local development server where sharing can be a really difficult task.

ngrok is a simple service that lets you expose a local web service to the internet. Not only does it let you expose services, it lets you examine the requests coming in as well as replaying them.

There are alternative methods: http://alternativeto.net/software/ngrok/

flickr Flickr Architecture

Flickr is the web’s leading photo sharing site. More than 2 billion photos served, more than 4 billion queries per day.

Flickr must handle a vast sea of ever expanding new content, ever increasing legions of users, and a constant stream of new features, all while providing excellent performance. How do they do it?

The article describes the software and hardware of the service, together with some interesting statistics.

scent No, a scent wasn’t just sent over the Atlantic Ocean

What do you think about being able to smell a photo? An Indiegogo campaign offers a new device – oPhone, which introduces a new kind of sensory experience into mobile messaging. “With the oPhone, people will be able to share with anyone, anywhere, not just words, images, and sounds, but sensory experience itself.”

Is it a new technology? Probably. Would you pay $199 or more to be able to smell a photo? The Indiegogo campaign is betting you will.

infowerload Information overload: I know too much to program quickly. What can I do?

The article’s author fears that the more he knows about the programming (architectures, approaches, frameworks, etc) the more time he takes to implement even a trivial task? He starts thinking about possible approaches, pitfalls, known limitations, etc, etc. “The more knowledge I gain, the slower I am in completing projects.”

The comments in response to this article are also interesting and informative.

twoemails How to Go From Working 60 Hours a Week to 40 By Sending 2 Emails a Week

The author believes that sending only two emails a week can significantly reduce the time you spend at work.

Email #1: What you plan on getting done this week

Email #2: What you actually got done this week

The article is about how you can organize your work process and set the expectations of others to achieve this. Good luck!

DSR Application Development News April 2014

Databases

MariaDB
The MariaDB Foundation Announces General Availability of MariaDB 10

The MariaDB Foundation, an independent body that promotes the popular open source database MariaDB, announced today the much-anticipated general availability of MariaDB 10, providing today’s generation of application developers with enhanced performance and functionality.

Among the key improvement areas:

  • Improved Replication
  • New NoSQL capabilities
  • Built-in Sharding

shard-query
MySQL query engine:Shard-Query

is a high performance MySQL query engine that offers increased parallelism compared to stand-alone MySQL. This is achieved by taking advantage of MySQL partitioning, MySQL sharding, common MySQL query clauses like BETWEEN and IN, or some combination of the above.

Overviews

chart
The Rise And Fall of Languages in 2013

“On the surface, 2013 appeared to be a quiet year in terms of language popularity and adoption. The reality, however, suggests considerable activity. As I usually do in January, I analyze several language metrics from multiple sources: Ohloh.net, which measures activity across almost 600,000 open-source projects, Google Trends, and the much maligned Tiobe index…”

Education/Resources

cpp-logo
An Online Handbook for C++ Developer

  • Description of the most important classes, functions and objects of the Standard Language Library, with descriptive fully functional short example programs.
  • General information about the C++ programming language, including non-technical documents and descriptions.
  • Collection of tutorials covering all the features of this versatile and powerful language.
  • User-contributed articles, organized into different categories.
  • Message boards where members can exchange knowledge and comments.

reqview1
Review Requirements Anywhere

ReqView is a document based requirements definition tool enabling effective offline collaboration.

ReqView provides the following tools/components:

  • ReqView Desktop – a rich web application allowing users to create requirements documents, browse requirement’s structure, change requirement’s attributes, view discussion related to each requirement and add new comments.
  • ReqView Synchronizer – a native Windows command line application for synchronization of requirement documents between ReqView and RM tools.

gitimmersion
Git Immersion

Git Immersion is a guided tour that walks through the fundamentals of Git, inspired by the premise that to know a thing is to do it.

Git is a powerful, sophisticated system for distributed version control. Gaining an understanding of its features opens a new and liberating approach to source code management. The surest path to mastering Git is to immerse oneself in its utilities and operations, to experience it first-hand.

Tools

try_vagrant_top
Vagrant – Development Environments Made Easy

Vagrant provides easy to configure, reproducible, and portable work environments built on top of industry-standard technology and controlled by a single consistent workflow to help maximize the productivity and flexibility of you and your team.To achieve its magic, Vagrant stands on the shoulders of giants. Machines are provisioned on top of VirtualBox, VMware, AWS, or any other provider. Then, industry-standard provisioning tools such as shell scripts, Chef, or Puppet, can be used to automatically install and configure software on the machine.


gearmand-150x150
Gearman

Gearman provides a generic application framework to farm out work to other machines or processes that are better suited to do the work. It allows you to do work in parallel, to load balance processing, and to call functions between languages. It can be used in a variety of applications, from high-availability web sites to the transport of database replication events. In other words, it is the nervous system for how distributed processing communicates.


Console
Console

Console is a Windows console window enhancement. Console features include: multiple tabs, text editor-like text selection, different background types, alpha and color-key transparency, configurable font, different window styles.

Utilities

try_vagrant_top
Virtual Router

Virtual Router is a free, open source software-based router for PCs running Windows 8, Windows 7 or Windows Server 2008 R2. Using Virtual Router, users can wirelessly share any internet connection (WiFi, LAN, Cable Modem, Dial-up, Cellular, etc.) with any WiFi device (Laptop, Smart Phone, iPod Touch, iPhone, Android Phone, Zune, Netbook, wireless printer, etc.). These devices connect to Virtual Router just like any other access point, and the connection is completely secured using WPA2 (the most secure wireless encryption).

Privacy

chrome-bug
Chrome Bugs Allow Sites to Listen to Your Private Conversations

By exploiting bugs in Google Chrome, malicious sites can activate your microphone, and listen in on anything said around your computer, even after you’ve left those sites.

Even while not using your computer – conversations, meetings and phone calls next to your computer may be recorded and compromised.

Health

Eye-Exercises
Eye Exercises

When your eyes get tired and you start feeling the eye strain, but still have some work to do, use the Exercises for Eyes. Regular eye exercises can help you improve eyesight and prevent eye diseases such as nearsightedness and farsightedness.