Welcome to curated list of handpicked free online resources related to IT, cloud, Big Data, programming languages, Devops. Fresh news and community maintained list of links updated daily. Like what you see? [ Join our newsletter ]

Build and publish PWA in 3 app stores. What I learned.

Categories

Tags app-development

Judah Gabriel wrote this post about his experience with PWA publishing. The article is about turning a web app into a Progressive Web App (PWA) and submitting it to 3 app stores requiring about a month of work, a few hundred dollars, and lots of red tape.

The article reads about:

  • Why even put your app in the app stores (it is web app after all)
  • Explains “horrible” brokenness of PWA for native phone capabilities
  • Lists the barriers to get app in the app store
  • App stores registration process
  • App packaging, building, submitting
  • App testing process
  • Submitting for app review

This is one lengthy tutorial explaining all the pain points you may encounter when submitting to the app stores (Apple, Google, Windows). Well worth your time!

[Read More]

Performance improvements for search on the yelp Android app p1

Categories

Tags app-development javascript android

In this article Tyler Argo wrote how Yelp has been working hard to improve the performance of their search results on mobile devices (iOS and Android). We noticed that most users “grunted or made noises when waiting for search to load”.

They broke down performance into two different categories: perceived search performance and scroll performance.

They then broke the cycle of performance improvement can be defined as a series of steps:

  • Measure
  • Improve
  • Monitor
  • Repeat

In this article they focuse on Step 1: Measuring Performance. One of the advantages of developing for the Android platform is the wide range of tools available for profiling and measuring app performance. In the article they provide a brief overview of the tools that can be used to profile your app along with some links to the official documentation. Great read!

[Read More]

Ionic canvas drawing and saving images as files

Categories

Tags app-development javascript angular

Simon Reimler published this article about working with canvas in Ionic. Working with the canvas can be challenging, but there are amazing things you can build with canvas. In the tutorial we will implement a canvas inside an Ionic app on which we can draw in different colours.

He then goes and explains:

  • Set up blank Ionic app with crucial Cordova plugins
  • How to build the Canvas Drawing View
  • Prepare Canvas and how to paint on them
  • How to save canvas images

It’s actually not super hard to build your own drawing app, and working with the file system has gotten so much easier.

You will find code examples with this article to help you set up your Ionic app. And you can also find a link to video version of the article. Nice!

[Read More]

Twitter Lite and high performance react progressive web apps at scale

Categories

Tags web-development app-development devops react

Paul Armstrong interesting article about a look into removing common and uncommon performance bottlenecks in one of the worlds largest React.js progressive web apps, Twitter Lite. Creating a fast web application involves many cycles of measuring where time is wasted, understanding why it’s happening, and applying potential solutions.

Performance is a continuous game of watching and measuring for areas to improve.

The article focuses on few areas:

  • Optimizing for the Browser
  • Optimizing React
  • Optimizing Redux
  • Service Workers

Each section contains detailed information what to focus on and what steps to take to mitigate performance bottlenecks. It is invaluable insight into React.js deployment in production. Great read!

[Read More]

Best practices in Android development

Categories

Tags android app-development kotlin

Idorenyin Obong from Auth0 wrote this piece about practices in Android development. Best practices are simply professional standards that are acceptable in a field. Here, we will look at such practices as it relates to Android development.

Android has about 74% of the mobile operating system market share according to StatCounter as at February 2018.

If you are building for billions of users, you have to grow above just building just for the functionalities. You have to consider other factors such as scalability, better user experience, etc.

Recently, there has been lots of promise in Android development since the formal introduction of Kotlin, statically typed programming language that runs on the Java virtual machine, with some interesting features including – null safety, smart inference, interoperability with Java, can be compiled to JVM bytecode or JavaScript.

The article then deals with:

  • Design Patterns
  • Dependency injection (DI)
  • Separation of Concerns (SoC)
  • User Experience
  • Excellent UI

There is much more in the article, with example code snippets and charts accompanying the text. Good read!

[Read More]

Developing a deeper understanding of Apache Kafka architecture

Categories

Tags software-architecture event-driven messaging

Insidebigdata team wrote this article in which they provide 30,000 feet overview of Apache Kafka architecture. Kafka, the distributed streaming platform, features an architecture that provides application messaging that is very clear.

Kafka’s main architectural components include Producers, Topics, Consumers, Consumer Groups, Clusters, Brokers, Partitions, Replicas, Leaders, and Followers.

A fundamental explanation of Kafka’s inner workings goes as follows: Every topic is associated with one or more partitions, which are spread over one or more brokers.

It’s important to note the relationships between broker, replica, and partition components, such as:

  • Kafka clusters can have one or more brokers
  • Brokers can host multiple replicas
  • Topics can have one or more partitions
  • A broker can host zero or one replica per partition
  • A partition has one leader replica and zero or more follower replicas

You will discover more relations following the article. And authors also make use of UML diagrams to explain architecture in greater detail. Great read!

[Read More]

Agile architecture -- strategies for scaling agile development

Categories

Tags web-development agile teams programming

An article by Agilemodeling in which they focus on important aspect of architecture in agile scaling. Contrary to popular belief, architecture is an important aspect of agile software development efforts. An architecture is a critical part of scaling agile approaches to meet the real-world needs of modern organizations.

Architecture provides the foundation from which systems are built and an architectural model defines the vision on which your architecture is based.

The article then (in details) explains topics and issues related to agile scalability, e.g.:

  • How to gear up for agile architecture
  • Architecture throughout the lifecycle of Agile Model Driven Development (AMDD)
  • Who is responsible for architecture?
  • Have an “architecture owner” role
  • Agile architecture at scale
  • Base your architecture on requirements
  • Model your architecture
  • Consider several alternatives
  • Remember enterprise constraints

Much more could be learnt from this in depth article. If you are in the Agile business, this blog post is definitely worth your time!

[Read More]

Creating multiple authentication in Laravel 5.5 using middleware

Categories

Tags web-development programming php

An article by Cloudways in which they deal with different roles and permissions in typical web application. To verify the users, applications need to have an authentication module or functionality. Using Middleware, you can easily implement multiple authentication in Laravel. Middleware provides a convenient mechanism for filtering HTTP requests entering your application.

In this tutorial they use PHP 7.1, MySQL, Laravel 5.5. The author then explains:

  • How to create Laravel app
  • Use composer for dependencies installation
  • Configure the MySQL database
  • Set admin Middleware
  • How to run database migration
  • How to use built in Middleware admin

The tutorial contains plenty of code examples and it will help you to setup Multiple Authentication in Laravel projects. Good work.

[Read More]

Getting started with static site generator Vuepress

Categories

Tags web-development programming containers

An article by Egwuenu Gift about static site generator tooling in Vue. Vue creator Evan You came up with this awesome tool for writing documentation for Vue. A VuePress site is, in fact, an Single Page Application powered by Vue, Vue Router, and webpack.

VuePress uses markdown. Each markdown file is compiled into HTML with markdown-it and then processed as the template of a Vue component. This allows you to directly use Vue inside your markdown files and is great when you need to embed dynamic content.

Some features:

  • Built-in Markdown extension
  • Default Theme
  • Automatic Service Worker
  • Google Analytics Integration
  • Multi-language Support

Article also deals with installation, setup and example code. Information how to host for free with Netlify is also included. Great read.

[Read More]

How to organize your thoughts on whiteboard and crush your technical interview

Categories

Tags programming agile career teams

Doug Arcuri piece on organizational skills and the applied science of gluing lots of things together in the craft of software engineering. Author empathizes with those who experience technical interviews that are not classically trained.

At large and small technical companies, there are whiteboard technical interviews. You are asked a question and are invited to solve the problem.

Make sure to write down the problem in a complete sentence up top. This will get you feeling the marker and will help you overcome the initial hit of the rush of “How do I solve this?”

Author then suggest how you can compose yourself and organize temporary space on whiteboard in few steps:

  • Step 1: The problem, a complete sentence up top
  • Step 2: Assumptions
  • Step 3: The approach with rough pseudocode, steps, and visualizations
  • Step 4: Code implementation
  • Step 5: Test (bonus)

Remember, there is pride in improving on top of code by way of organization and structure. Good read, with images of whiteboards in various stages.

[Read More]