Posts

Adding mailchimp popup in Google Optimize

Image
mailchimp popup Adding mailchimp popup in Google Optimize keywords : google-optimize, mailchimp, popup, js TL;DR A tip to add mailchimp popup in Google Optimize Handle CSS issue when adding mailchimp So… Today I have a task that need to add mailchimp popup on my website as an experiment. Since we use Google Optimize to implement the A/B testing , I need to add the mailchimp script on Google Optimize ( Please read the references below if you don’t know about Google Optimize or Mailchimp ) The script I need to add from mailchimp look like this: < script type = " text/javascript " src = " //downloads.mailchimp.com/js/signup-forms/popup/unique-methods/embed.js " data-dojo-config = " usePlainJson: true, isDebug: false " > </ script > < script type = " text/javascript " > window . dojoRequire ( [ "mojo/signup-forms/Loader" ] , function ( L ) { L . start ( { "baseUr...

How this blog is build

Image
Content Intro 111 Customise Theme Support syntax highlight with highlighjs Customise CSS I write this blog to learn and share The best way to learn is notes and share. So I write this blog to do that; I’ve tried to write blog on medium but found it quite difficult and don’t have what I need: customizable be able to backup support markdown After investigate several blog platforms, I choose blogger: => cusmtomizable: under the hood, it’s just html & css; so I can do whatever I want => be able to backup: I compose & edit my blog post on a markdown editor, than convert it to html & post to blogpost; So I can keep all of my data you can check StackEdit to edit in markdown and publish to blogger => support markdown: I found it’s easier if I use markdown to write blog. It’s have almost every format I need Choosing theme You can go to Theme -> Customise to choose the theme you want I found that simple theme is good enough for me :> Support ...

Level up your log in React-Native with Reactotron

Image
A Log - Many Logs Log is the essential part of programming. If you ever worked with mobile programming or react-native, you will find that log is a the essential for monitor your app. In this post, I just want to a share a little bit trick to log in react-native app :) Console.log is bad!!! React-Native come with the default console.log to be able to see the log messages. You have to turn on Debug JS Remotely and open Inspector in chrome to view the message. This is bad because Debug mode is very slow. If you write a long message, it can crash your app The app continues warning about keeping chrome on foreground Reactotron come to rescue!!! https://github.com/infinitered/reactotron Yes!!! with reactotron, you DON’T NEED to turn-on Debug JS to be able to see log, and the log is also FASTER btw. The example below show how to configure Reactotron with redux for simulator and real device import Reactotron from 'reactotron-react-native'; import { reactotronRedux }...

Enhanced your programming skill with Assert and Unit Test

Enhanced your programming skill with Assert and Unit Test Sources http://www.pgbovine.net/programming-with-asserts.htm http://stackoverflow.com/questions/1375786/whats-the-point-of-nsassert-actually https://www.youtube.com/watch?v=BbPPnxhcdHo Why you need Assert in your program? 1/ What is Assert? + Assert is the way you make sure a condition in your program must be matched. Otherwise, the app will crash. 2/ What is the point of Assertion? + Using assert will guarantee your program always act like your assumption. => For instance, you write a function with a lot of input and in some situation, inputs mus be valid. Let's say input_1 must comes with input_2. In that case, writing if else and return value is not fit, because you have to handle a lot of return value & error => So that, you will use Assert to make sure your function is used properly. This is very important when you working in a team while writing functions for other people to use. O...

iOS Push Notification with HTTP2

Setup iOS APNS with HTTP/2 Overview: There're one issue while sending iOS notification to multiple devices with old method (send by ftp write stream). Let say you send to 100 devices, ftp write work likes this: 1. connect to APNS Server 2. for each device: send notification by using device_token & payload 3. disconnect In step 2, if there're 1 invalid token (there're many reason make a token invalid: expired, wrong cert, wrong format...etc) the connection will be block without status from APNS Server, if you want to check the status, you have to wait at least 0.5s-1s and using ftp-read to read the status. It's mean you have to check status after every ftp-write and re-connect again if there're an invalid token.  So, to send to 100 devices, you need 50 seconds, that's too long. At WWDC 2015, Apple has introduce a  new notification api by using HTTP/2 This api allow you to send notification as a post request or curl and get the result ...