How to explain Javascript .filter() .map() and .reduce() to SQL users

I found using .filter() .map() and .reduce() Array methods could help to reduce code complexity and simplify many typical array data processing tasks. Looking at http://kangax.github.io/compat-table/es5/#test-Array_methods, you can confirm these methods are compatible with almost any modern desktop/mobile browser.

A good approach to understand how to use .filter() .map() and .reduce() is to compare each one to SQL data operations in SELECT statements.

Continue reading “How to explain Javascript .filter() .map() and .reduce() to SQL users”

GitHub is now offering Unlimited private repos for free

GitHub is now offering Unlimited private repos for free. From a recent update on January 7th, 2019, Github announced a big change in their main offerings for developer and enterprise accounts.

Continue reading “GitHub is now offering Unlimited private repos for free”

Statically typed Javascript : Why and How

In the last months I have found good experiences using Statically typed Javascript. For example, using React with Typescript. It helps a lot to build a robust Web development, with statically typed Javascript support, ready for a complex and enterprise-level projects.

TypeScript is maintained by Microsoft, but it’s not the only option for statically typed Javascript. Flow, from Facebook and Dart from Google are similar options among a long list of implementations.

Why so many “big companies” are doing really big efforts to introduce static typing in Javascript development in the last years?

Continue reading “Statically typed Javascript : Why and How”

Deploy your Applications in Heroku

In this post we will learn how to deploy your web applications in Heroku, for free. Heroku is a Cloud Platform-as-a-Service (PAAS). This company provides the base platform server, network resources and endpoints to publish your applications. However, you need to provide the application code and the rest is created automatically for you.

Sometimes, we need to test or showcase a quick prototype of a cloud based web application, REST API backend , or a static web application client. Heroku is a good solution to quickly host application at no cost. For example, they support the most popular languages and frameworks like Node.js, Ruby, Python, Java, PHP, Go, Scala, Clojure.

The general steps to deploy your application are:

  1. Register in the Heroku platform
  2. Install the Heroku CLI
  3. Login locally to Heroku
  4. Create your application and store it in a Git repository
  5. Configure your application for Heroku deployment.
  6. Register your application in Heroku
  7. Associate your git repository with your Heroku app
  8. Push your application to the Heroku application master repository
  9. Access your application from https://your-app.herokuapp.com

Continue reading “Deploy your Applications in Heroku”

Implement Push Notifications in iOS with Swift

In this post we implement Push Notifications in iOS with Swift. Actually, this process is easier than before, with only a small set of steps:

  1. Activate Push notifications in your iOS project
  2. Request permissions for User notifications
  3. Register in Apple Push Notifications service
  4. Sending Test notifications
  5. Handling Notifications in your app

Continue reading “Implement Push Notifications in iOS with Swift”

Publish an iOS application in the AppStore

The next step after creating your application, is to publish an iOS application in the AppStore. This is a “quick” guide to publish iOS applications, if we want to make them public to the world. The process could be long for the first time.

The main steps involved in this process are:

  1. Create an Apple ID
  2. Join the Apple’s Developer program
  3. Create and build your application in Xcode
  4. Create an archive of your signed application
  5. Register your application in App Store Connect
  6. Upload or export your application
  7. Submit your application for Review
  8. Your application will be verified and published in the App Store.

Continue reading “Publish an iOS application in the AppStore”

Install Cocoa Pods for XCode projects

In this post I will show how to Install Cocoa Pods for Xcode projects. Cocoa Pods is a dependency manager for Swift and Objective-C Cocoa projects.

Installation

When you install XCode, you also get the gem (RubyGems, the Ruby package manager). This command allows you to install Cocoa Pods for Xcode, without any extra configuration. Execute the following command

sudo gem install cocoapods

After fetching a list of dependency packages, you can use cocoa pods calling the command pod. However, each command must be executed in the root folder of your Xcode project:

  • pod init: To create an empty initial PodFile in your Xcode project folder.
  • pod install: To install packages defined in the PodFile

Continue reading “Install Cocoa Pods for XCode projects”

Using Node.js and Npm packages

Otherwise, After starting with Git, GitHub, and open source projects, you will find a lot of projects using Node.js and Npm packages. Node.js is not only a tool to create web application backends. Also, is used as a development platform for large scale projects to manage dependencies and  perform operations in the project lifecycle. His companion, Npm, is a package manager to make available a large ecosystem of modules and functionalities used in the development stage, in the project itself and in the development pipeline.

Continue reading “Using Node.js and Npm packages”

Install Java SDK on MacOS

You need to install Java SDK on MacOS to allow a lot of applications and development tools to run in your machine. This post describes the most important installation steps to get a working Java development environment.

Continue reading “Install Java SDK on MacOS”

Git for Beginners

This is a very basic guide of Git for beginners. Git is a version-control system for tracking changes in files associated to projects of different types. It is primarily used for source-code management in software development, but it can be used to keep track of changes in any set of files.

Without a version control system, you probably used to frequently save copies your work-in-progress in zip files. But when you feel that your work is a mess and you need to get back to a previous version of some files, how to deal with mixed changes in files? It’s a real pain to do that. Git and other version control systems like SVN are a great solution.

Continue reading “Git for Beginners”