Systems | Development | Analytics | API | Testing

January 2020

How to Fix JavaScript Errors

My computer programming teacher had always told me that 10% of our time is spent developing 90% of our application, and the other 90% of our time finishing the last 10% of our project. Even with a good project plan and a concept that makes logical sense, most of our time will be consumed with fixing errors. Moreover, with JavaScript, our application can run without obvious errors preventing it from being run, so we have to employ several techniques to make sure everything is running smoothly.

How to Get Your Elixir Application Ready for CI/CD

In today’s post, we’ll go over what continuous integration and continuous delivery are, the benefits that come along with employing CI/CD, and some best practices that you should follow. We’ll also explore a wide array of Elixir ecosystem tools that can help you create top-notch CI pipelines. In order to experiment with a handful of the tools that we will be discussing, we’ll use a Git hooks Elixir library to execute our CI/CD validation steps, but on our local machine.

How to Migrate from Magento 1 to Magento 2

A growing number of online retailers are now migrating to Magento 2 from the earlier version, Magento 1. This trend of migration is driven both by functional advantages and strategic planning as Magento will stop supporting its 1.x versions after 2020. That’s the reason why so many business owners are upgrading their online stores with the latest technology.

7 Online Proofing Tools to Make Life of a Designer Easier

When working on web and graphic designs there can be so much back and forth in emails and messages. There will be lots of email threads to keep up with. The review and approval process taking several turns. So, what do you do? Ask any designer about the pain they go through when it comes to the approval process. Luckily, the technology clearly will never disappoint any of us.

A Rubyist's Introduction to Character Encoding, Unicode and UTF-8

Have you ever dealt with a unicode bug? Where plain text — the substance you work with all day — can no longer be trusted? It can be disorienting to say the least! This article will help prepare you so that the next time that happens you’ll be able to spend less time hyperventilating and more time troubleshooting.

State of App Development in 2019

In 2019 we spent a great deal of time visiting developers that use Bitrise, traveling around the globe with cross-functional teams, and continued talking to a lot of companies developing mobile apps. We also regularly analyzed a ton of behavioral data to understand how we could improve Bitrise to give the best experience for mobile developers. We've drawn our conclusions and thought it would be interesting to break them down into numbers and share the big picture with you.

[Masterclass Recording] Building a realtime voting app in less than an hour

In this masterclass, Ably’s Developer Advocate, Srushtika Neelakantam, will talk about realtime protocols and the various cool things you can do with them. She’ll then build a voting app from scratch that is production-ready and fully scalable. The app will show a dynamically changing graph reflecting the choices made by users on the voting questions, in realtime. Just some basic JavaScript knowledge is required to follow along.

Rails is Fast: Optimize Your View Performance

In this post, we’ll look into tried and true methods of improving Rails view performance. Specifically, I will focus on database efficiency, view manipulation, and caching. I think the phrase “premature optimization is the root of all evil” has been taken a little out of context. I’ve often heard developers use this during code reviews when simple optimization techniques are pointed out.

Why we've decided to make an ungated Rookout Sandbox

A long time ago (in April 2019), in a galaxy far far away (in Tel Aviv, Planet Earth) we launched a self-serve option. Users could now sign up to Rookout without having to contact us first. We invested significant resources in online promotion and -- just like any startup at our stage -- we hoped to soon see legions of users signing up and using the tool to fetch data directly from their code.

[Masterclass] Building an IoT based realtime attendance logger for Slack using WebHooks.

In this masterclass, Ably’s Developer Advocate, Srushtika Neelakantam, will walk you through the basics of IoT and the realtime communication protocol these devices like to use i.e. MQTT. She’ll then show you how to build a realtime attendance logger from scratch.

A Shared-Nothing Architecture

In this post, we're going to look at what Shared-Nothing Architecture is, along with its benefits and downsides, concerning PHP and its impact on performance. Several different languages can be used for web-based application development, most of which you are likely already familiar. The most popular of these are JavaScript, Ruby, Python, Java, Go, R, and, of course, PHP. Of these languages, however, only PHP uses a Shared-Nothing Architecture by default.

Top Kubernetes Tutorials & Resources for All Levels

If you are a developer who uses containers, chances are you and your team have heard about Kubernetes. At its core, Kubernetes is a container operating system for the web, but has grown to be much more. Sure, Kubernetes can manage your containers, network traffic, and bring up a crashed ad, but it has also become a widely adopted platform with a growing community.

AWS Elastic Beanstalk .NET Core Getting Started

AWS offers a variety of services to solve specific needs. There are some core services, like EC2 and VPC, that let you create an infrastructure for your applications that scales easily. But if you’re new to AWS and also new to infrastructure, you might need to invest some time reading before you deploy your application to AWS. I remember my first time using AWS; the sysadmin explained to me what systems we were using in AWS to run the company’s main application.

Debugging in Production: how to stop fearing the inevitable

You’ve been staring at your screen for hours, trying to check why a certain bug is occurring only for end-users in your production environment. You’ve tried a multitude of approaches: adding log lines in all kinds of indicative places, logging potentially relevant variables to get an indication of the state in which the bug occurs, and the list just goes on. Sounds familiar?

Pros and Cons of Using structure.sql in Your Ruby on Rails Application

In today’s post, we’ll cover the significant differences and benefits of using structure.sql versus the default schema.rb schema formats in your Ruby on Rails application. In a data-driven world, knowing how to exploit all of your database’s rich features can make the difference between a successful and unsuccessful enterprise.

5 Best Security Practices for Tomcat Servers

Tomcat servers are widely used application servers for today’s development architectures, popular for hosting Java based applications. Below is a guide on best security practices for security your Tomcat Server environment. Banner grabbing is the process of gaining information from computer systems including services, open ports, version, etc. When sending a server host request via telnet command, you pass along the server name, port, and version.

Multilingual Web Design - How Not to Get Lost in Translation

Most designers have learned, often the hard way, that language differences can wreak havoc on their web designs. Leaving aside the issue of languages that go right to left instead of left to right, or down rather than across, there’s the big issue of variable word lengths. How do you accommodate this variability when designing web pages? The translation services company I founded, Tomedes, supports more than 1,000 language pairs, so we have some experience to share.

Is IT suffocating your organization? Here's how to get your contextual data pipelines right

In a modern organization, the dependency on constant data flow doesn’t skip a single role -- already encompassing every function in R&D, Sales, Marketing, BI, and Product. Essentially every position is going through a fusion process with data-science. “Data is the new oil.” “Everyone needs data.” You’ve probably run into these and similar expressions more than once. The reason you hear them so often is that they are true.

Monitoring systems of engagement: riding the waves into the future of software

If you’re building software, it is very likely that you are familiar with Conway’s Law. It is the single most important rule for software development. Employing this law will facilitate your success. Failing to abide by it, on the other hand, will guarantee your failure. I’ve witnessed this first hand in many places throughout my career, among them command and control services, Big Data processing systems, and even security components embedded into the very cars you are now driving.

5 Professional Tools for Prototyping your New UX Project

It is probably the best time to be a designer right now since there are many online tools and software that targets designing pain points and simplifies them. From the creation of an idea down to its realization; designers can find appropriate tools that will help them in drawing out their thoughts, figuring out the complexities, and finding out how the users interact with their designs.