Confused about this error? So was I. Let’s solve it.

Image for post
Image for post
Photo by FuYong Hua on Unsplash

If you’re getting this error, there’s a couple of things you can try right away to fix it.

I was able to solve this problem by using component syntax instead of function syntax. I‘m not sure why, but it fixed my problem.


First, double check that you’re not calling hooks within a conditional statement. The Hooks documentation makes clear that we are to use hooks at the top of our components, and without nesting them within conditionals. …

In part 2 of this TradingView JS API Example Guide, we will be implementing Realtime price updates on the chart. Make sure to read the Introduction, and Part 1 first

Image for post
Image for post
Photo by toine Garnier on Unsplash

To get realtime updates to the chart, we are continuing from Part 1 where we setup a basic charting widget for static data.

This example will use CryptoCompare’s trade level websocket connection to get price updates as they happen.

You can see the demo deployed here on Glitch, and see the code for part 2 here

Part 1 focused on setting up the TradingView Charting Library widget, and getting the JS API to get historic bars from our data source. …

This series is a work in progress, and I will be finishing this guide, covering more TradingView features, as well as enhancing the existing posts. I hope to make this process easier for everyone, so your feedback is greatly welcomed!

TradingView is the most popular tool for Crypto Charting, many exchanges and sites integrate their free Charting Library to provide a powerful charting interface that traders are familiar with.

However, the process of getting up and running with the charting library is confusing and poorly documented. This is evidenced by the large number of similar issues submitted to the project.

My goal with this tutorial series is to show you how I went about setting this up myself, using CryptoCompare as a free source of price data.

Image for post
Image for post

Check out the Introduction to this tutorial series, if you haven’t already. Setting up TradingView charts can be a convoluted process, so please excuse the disclaimers and notes.

Disclaimer: The TradingView charting library is a free, but private project on Github that you must apply for access to. The license agreement I believe bars me from distributing it to you, so to complete this guide fully you will need to apply for access to download the charting library.

To run this part of the tutorial locally (assuming you have access to the charting library) clone the repo available below, and then copy the charting library folder into the /public/ directory in the part1 folder. …

My Chiang Mai changes everyday while I just try to keep up!

Hello family and internet strangers! I am indeed alive, as evidenced by the website I made to keep y’all in step with my daily life, called! Here is my first little update on my adventures in Thailand!

My Chiang Mai changes everyday. I’ve focused on keeping up instead of reflecting on it. Today I renewed my 30 day visa-on-arrival to stay here another 30, and I had decided before I arrived to write something at this milestone.

Today I realized something, after a day that had basically the same contents of any other day here. My stomping grounds cover a decent amount of the city center so far, I’m pretty comfortable in these areas. …

I’m Jon, a self taught node developer living in Asia building side projects and writing about learning to program

**Update**: This is meant to be a starting place for folks to create their own app, or contribute to mine. If you want to get involved, just visit the Repo!

Image for post
Image for post
Photo by Slava Bowman on Unsplash

My Mom is not going to follow me across all my social channels (nor would I want her to!) and updating different networks of people constantly while traveling is it’s own kind of work.

So how’s a digital native traveling the world supposed to keep in touch with the fam? …

I’m a self taught Javascript developer participating in the “Blog More” track of #cnc2018

Here is the pre-challenge homework assignment you receive when signing up:

PRE-MISSION: Read 3 tech blog posts you wish you wrote. Jot down why you like them and what you’d change.

GOAL: Find examples of good tech writing to see what you’d like to incorporate into your own posts, and what you might want to avoid. You’ll refer back to these later in your challenge.

Take notes on three blog posts you wish you wrote, one each from the categories Tutorial, Explainer, and Project. Here are my answers!


This short guide from IBM’s Glynn Bird about tracking bitcoin’s price with serverless functions really stuck out to me. Enough that I had it bookmarked on Medium and have referred back to it a few times while playing around with creating my own crypto price tracking projects. …

Image for post
Image for post
Photo by Alex wong on Unsplash

In the world of custom built bots there are two frameworks which reign supreme. Microsoft Bot Framework and Botkit. Both have SDKs that help developers build bots.

As a contributor to Botkit, I see people ask in issues what the difference between Botkit and Microsoft Bot Framework are, and why they should choose one over the other.

Here’s a quick answer for anyone who is building a bot and wondering which framework they should choose!

Every bot developer faces the same challenges: receive messages from a Platform, understand the user’s intent, respond accordingly. This means handling low level parts like sending/receiving messages as HTTP requests, running NLP or regex on user input, tracking conversation state, and triggering code you’ve specified as a response. …

Looking for sunscreen without bleach in Thailand?

Asian skin products commonly have bleaching products in them, to whiten the skin. Finding sunscreen without bleach in Thailand is difficult in and of itself, more so when you cant read labels or know where to shop.

Enter Watsons

Watsons is the leading beauty and pharmacy brand in Asia, and they have several affordable Watsons branded sunscreens without bleach.

Image for post
Image for post
Cheap bleach free sunscreen in Thailand

You could pay 500 baht ($15) for Western brands like Bannana Boat, or seek out any Watsons to get their in house brand for ~100 baht. They are often on Buy One Get One free deals as well!

Slide Door is a publication about adjusting to more than just Timezones in Asia. Created in Chiang Mai, Thailand 🇹🇭 by 🇺🇸 Jon Church to share the lessons he’s learning traveling and working in Thailand

Here is the list of all the things I know how to say in Thai that you should learn, will update it as I learn more.

Also, all this is just to the best of my current understanding, anyone who knows better please help me learn by leaving a response!

On gender identity in Thailand:

Male identified persons use “Khrup” and female identified persons use “Ka”. Although I have seen male presenting Thais use “ka” on occasion when greeting me. Not sure if this is fluid depending on how you identify, or what it says about a person. Would love to learn more!


Sawadee Krhup!

Thank You

Kob Khun…


Jon Church

Javascript Developer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store