February, 2015

article thumbnail

Back-to-Basics Weekend Reading - Distributed Snapshots: Determining Global States of a Distributed System

All Things Distributed

'Several problems in Distributed Systems can be seen as the challenge to determine a global state. In the classical " Time, Clocks and the Ordering of Events in a Distributed System " Lamport had laid out the principles and mechanisms to solve such problems, and the Distributed Snapshots algorithm, popularly know as the Chandy-Lamport algorithm, is an application of that work.

Systems 131
article thumbnail

Access Optional

Tim Kadlec

I remember going as a kid with my parents when they would pick out a new car. My parents didn’t want to spend a ton so we usually looked for something basic that would work. The car, of course, had to have certain features. A way to steer. Brakes. An engine. Doors. These were things all cars had and all cars had to have if anyone was going to ever consider purchasing them.

Insiders

Sign Up for our Newsletter

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

article thumbnail

Get Available Free Disk Space Using Apache Cordova

The Polyglot Developer

It was brought to my attention that the File plugin for Apache Cordova has no documented methods for finding the available disk space on a device. This does not mean that you cannot figure out how much space is available on your users device because you can make use of Apache Cordova’s nifty cordova.exec function. The post Get Available Free Disk Space Using Apache Cordova appeared first on The Polyglot Developer.

article thumbnail

Hidden in Plain Sight - Public Key Crypto

O'Reilly Software

How is it possible for us to communicate securely when there’s the possibility of a third party eavesdropping on us? How can we communicate private secrets through public channels? How do such techniques enable us to bank online and carry out other sensitive transactions on the Internet while trusting numerous relays? In this post, I hope to explain public key cryptography, with actual code examples, so that the concepts are a little more concrete.

article thumbnail

Activist Investing in Strategic Software

The Agile Manager

A few years ago, I felt I had enough experience - and had put enough thought into the subject - to write a book on governance in software development. I had observed that most tech firms and captive IT organizations are largely left to self-govern, and both are pretty light touch about it. I had also observed that governance is widely misunderstood and the term is used in technology in a lot of different ways, almost universally incorrectly.

article thumbnail

EveryStep Scripting Tool: Advanced Features

Dotcom-Montior

The EveryStep Scripting Tool by Dotcom-Monitor is a powerful macro that records scripts to perform automated monitoring of your websites' performance. There are many advanced features in the EveryStep Scripting Tool to help customize the script to trigger notifications based upon specific needs, such as recording the time between actions. The Script Watcher is an advanced feature available when editing a script that you have already recorded.

article thumbnail

Back-to-Basics Weekend Reading - Exploring Complex Networks

All Things Distributed

'After a year of absence I am bringing back the Back to Basic Weekend Reading Series. We''ll continue to look at the fundamental works of Computer Science and Engineering, and other interesting technical works. We will start this year with a topic that spans many sciences: that of complex networks. It is relevant to everything from biology, life sciences, social sciences to computer engineering.

Network 110

More Trending

article thumbnail

All About Binary Search Trees, In Java

The Polyglot Developer

If you’re pursuing a degree in computer science, you’ll probably experience Binary Trees in one of your first semesters of school. After seeing them in one of those first semesters, you probably won’t see them again until you’re interviewing for a job. While interviewing for software engineering or programming positions, you may get many questions regarding Binary Trees and Binary Search Trees.

Java 52
article thumbnail

Client-side MVC's major bug

Tim Kadlec

Over the past year I conducted performance audits on a handful of sites that all used client-side MVC’s, typically Angular but not always. Each site had their own optimizations that needed to take place to improve performance. Yet a pattern emerged: client-side MVC’s were the major bottleneck for each. It slowed down the initial rendering of the page (particularly on mobile) and it limited our ability to optimize the critical path.

Servers 49
article thumbnail

AWS Certification for DevOps Engineers

All Things Distributed

'One of our guiding principles at AWS is to listen closely to our customers and the feedback that I am getting about our training and certification program is very positive. Many architects and engineers know the Cloud is the future of development and IT and the are gearing up to be as succesful as possible in this new normal. This is why I’m excited to announce the availability of a new Professional level certification from AWS that has been high on the list of our customers.

DevOps 97
article thumbnail

Contributing To A Git Repository on GitHub

The Polyglot Developer

Recently I’ve been contributing a lot of code to open source projects on GitHub. In particular, I’ve been contributing to the AngularJS extension set, ngCordova , for Ionic Framework. When I first started contributing it was a scary process, mostly because I had only ever used Git for solo projects. I have used it for team projects, but for the majority it was my own personal projects.

article thumbnail

Solve A 2D Array Maze Using Recursion And JavaScript

The Polyglot Developer

To continue on the topic of popular interview questions for software engineering positions, I figured it might be appropriate to go over solving a maze that was created using a two-dimensional array. A maze created from a 2D array can be solved using recursion similar to like we did for the previous Fibonacci article I made. The post Solve A 2D Array Maze Using Recursion And JavaScript appeared first on The Polyglot Developer.

article thumbnail

Validate Bracket And Parenthesis Combos Using Stacks

The Polyglot Developer

Job interviews for software engineering and other programming positions can be tough. There are too many things to study, and even then it still might not be enough. Previously I had written about a common Fibonacci number algorithm and finding duplicate values in array. Those skill refreshers were written in JavaScript. This time we are going to take a turn and validate bracket combinations using the Java programming language.

Java 52
article thumbnail

Calculate If Duplicates Exist In An Array Using JavaScript

The Polyglot Developer

You’ll notice previously I did a post regarding the Fibonacci number , a popular interview question for programming jobs. To keep up with this trend of interview questions, we’re going to look into the different ways of finding duplicates in an array. Finding array duplicates is a good question because it tests your knowledge of algorithm design and your understanding of various time complexities.

article thumbnail

Use The Ionic CLI To Integrate Crosswalk Into Your Project

The Polyglot Developer

Not too long ago I wrote a very popular tutorial for integrating Crosswalk into your Ionic Framework mobile application. Since then, the guys at Ionic released version 1.3.2 of their CLI and it makes the process even easier than I had previously demonstrated. The CLI integration is still beta and there is a lot of confusion around it, but this article should clear things up in regards to its usage.

Mobile 52
article thumbnail

Reverse Words In A String Using JavaScript

The Polyglot Developer

Back on the topic of possible programming interview questions, you may at some time in your career be asked to reverse words in a string. This is a much simpler problem and may be more likely to appear on a technical phone screening. In it’s simplest form, you would assume all space separated string collections to be words. To clarify, it doesn’t matter if you’re looking at a true word or just some jumbled text separated by a space character.

article thumbnail

Using WebSQL Instead of Local Storage In Your Web App

The Polyglot Developer

When developing web applications a common way to store data is to use local storage. This NoSQL approach is great, but what if you’re coming from an RDBMS? With HTML5, you have access to the WebSQL API which allows us to use SQL queries for handling client side storage. This guide will show you how to use the WebSQL API, which is based around SQLite, in your web application.

Storage 40
article thumbnail

Using The Native Device Calendar In Ionic Framework

The Polyglot Developer

A while back one of my subscribers asked me how to integrate the native device calendar into their Ionic Framework mobile application. I didn’t know at first, but after some research I found a great Apache Cordova plugin by Eddy Verbruggen called PhoneGap Calendar Plugin. Don’t let the plugin name fool you. PhoneGap still works on Apache Cordova, just like Ionic Framework.

Mobile 40
article thumbnail

Why I’ve Gone Hybrid Over Native For Mobile Apps

The Polyglot Developer

I started developing mobile Android applications in late 2011. It wasn’t until 2012 that I released my first application to the Android Marketplace, now known as the Google Play Store. Up until early 2014, I only made native Android applications using the official Android SDK. As of now, I have only been using web technologies to create mobile hybrid applications for Android and iOS.

Mobile 40
article thumbnail

Make Your Own Facebook Mobile App With Ionic Framework

The Polyglot Developer

Not too long ago I contributed to the ng-cordova project on GitHub. I added Oauth functionality to many popular API providers such as Google, Facebook, and Twitter. I made a guide on how to use this added Oauth functionality on the official Ionic Framework blog , but since then I’ve received a good deal of requests to take it a step further and actually use on of the APIs beyond just Oauth.

Mobile 40
article thumbnail

Properly Testing Your Ionic Framework Mobile Application

The Polyglot Developer

I am very active on Stack Overflow , the Ionic Framework forums , Twitter , and even my own blog. I like helping people and I like seeing that everyone who seeks my help becomes successful in their work. A common thing I see with the people that I help is they are unfamiliar with how to properly troubleshoot their code. Previously I had written an article regarding how to view the ADB debug logs when testing, but even that has proven to have loose ends.

Mobile 40
article thumbnail

Prompt User To Rate Ionic Framework Mobile App

The Polyglot Developer

So you’ve released a great mobile app and have had a decent amount of downloads, but no one is rating or reviewing it. Downloads can be increased significantly by having a greater number of ratings. So how do you encourage more downloads in your Ionic Framework Android or iOS mobile application? Thanks to a library created by Alex Disler called ng-special-offer , we can make use of Apache Cordova native dialogs to prompt users to rate or review based on application open count.

Mobile 40
article thumbnail

Back-to-Basics Weekend Reading - RAID: High-Performance, Reliable Secondary Storage

All Things Distributed

'Disk arrays, which organize multiple, independent disks into a large, high-performance logical disk, were a natural solution to dealing with constraints on performance and reliability of single disk drives. The term "RAID" was invented by David Patterson, Garth A. Gibson, and Randy Katz at the University of California, Berkeley in 1987. In their June 1988 paper " A Case for Redundant Arrays of Inexpensive Disks (RAID) " they argued that the top performing mainframe disk drives of the time could

Storage 105
article thumbnail

Apple's Web?

Tim Kadlec

The Pointer Events specification just became a W3C Recommendation. For those unfamiliar, it’s an intriguing attempt to unify pointer events regardless of the input device in use. The jQuery team threw their weight behind it this morning. …we love Pointer Events because they support all of the common input devices today – mouse, pen/stylus, and fingers – but they’re also designed in such a way that future devices can easily be added, and existing code will automatically support the new device.

Google 40