teleren/devto huggingface dataset:
On balance, a retrospective.
Tags: startup, saas, career, mentalhealth
Published: 2020-05-19 11:56:52


I've taken a little break over the last month from blogging, I needed it. The goal of this blog is to provide a resource that helps startup teams cope with remote life.

It's been a challenge to find a balance especially between work, life, and product releases.

It's ironic, writing in some form or another since 2017, and in the year 2020 given the recent pandemic, many people have pivoted to become an expert in remote work.

It's kind of intimidating, and I would be lying if I didn't feel inadequate, this resource is new and there are many "bigger" players with already established audiences that can make a larger noise.

It is human to feel that.

Although I'm capable of writing and publishing just under [4000 words](https://worldclassremote.com/habits-that-keep-you-sane-and-productive-whilst-being-remote/) in a day it won't be helpful to those that don't have the time or the will to battle through content.

The content here needs to be shorter, and have more impact, to think otherwise is simply counterproductive and ego-centric.

> It is a gift to have your attention, your time to read my work.

I'm somewhat inspired by the style [Seth Godin's blog](https://seths.blog/), and although my content will ever be that short form, it is refreshing to see how far such a concept can be pushed.

Regardless these are some events and product releases from over the last 4 weeks (April 2020) that I've been a part of.

-   My 2nd blog post with Simple Programmer: ["So You’ve Been Laid Off as a Remote Developer"](https://simpleprogrammer.com/laid-off-remote-developer/), this took a lot out of me to write.
-   [DOVU Earth](https://dovu.earth/) initial release, providing a monthly subscription for offsetting your carbon footprint, it also includes a novel method for Crypto based subscriptions.
-   Coursematch released a new product [Virtual Open Days](https://www.virtualopendays.co.uk//), conceived and delivered in less than 2 weeks. We've already run **profitable** open days through the service to actual UK universities.
-   Added new killer features to Coursematch B2B SaaS product [Connect](https://www.coursematchconnect.com/). To schedule the delivery of our Email, IM, and push notification channels through a campaign builder. Provide automatic reporting for the campaigns for universities to connect and build meaningful relationships with prospective students.
-   I became part of the United Kingdom Freestyle Skateboarding Association (UKFSA) [management committee](https://freestyleuk.org/about-the-ukfsa/).
-   [Safe Stream](https://safestream.info/), a tool to help content consumers make a safe decision before they click play, built, and delivered in less than 10 days.

I'll be writing more about Safe Stream in the coming days, as **Building an MVP SaaS in less than 10 days**.

Building and releasing personal projects is fundamental in building up a personal brand and getting the outside world to actually know about what you do.

After all what kind of person would I be if I didn't follow my own advice?

Work hard enough to be naturally lucky.
Free CSS Pug Workshop 💻
Tags: css, beginners, webdev, tutorial
Published: 2020-05-19 10:34:26

---
title: Free CSS Pug Workshop 💻
published: true
description: A CSS workshop with the CSS wizard Jhey.
tags: css, beginner, webdev, tutorial
cover_image: https://imgur.com/T78UckU.png
---

This Workshop was recorded on 19 May 2020.

LIVE REPLAY:
{% youtube vvg4vilqWVs %}


For more workshops visit the MeetUp [here](https://www.meetup.com/codu-community).

Learn all about CSS variables, Pug and a little animating with the two. 

The guest speaker is the amazing [Jhey](https://twitter.com/jh3yy), who is an absolute wizard so make sure you check out his stuff! 

Jhey is a CodePen advocate, a guest writer for css-tricks, a developer at NearForm and is masterful with the art of CSS.

If you haven't seen his work check out some of his amazing creations here:
[https://codepen.io/jh3y/pens/public](https://codepen.io/jh3y/pens/public)

Twitter:
[https://twitter.com/jh3yy](https://twitter.com/jh3yy)

Twitch:
[https://t.co/4piQ9k3IZQ](https://t.co/4piQ9k3IZQ)

Website:
https://jhey.dev/

---

[Follow me on Twitter](https://twitter.com/nialljoemaher)

Subscribe on [Codú Community](https://www.youtube.com/c/Cod%C3%BACommunity)
ODBC Driver for Google BigQuery – A New Connectivity Solution from Devart
Tags: odbc, connectivity, database, bigquery
Published: 2020-05-19 10:32:23

---
title: ODBC Driver for Google BigQuery – A New Connectivity Solution from Devart
published: true
description: Devart has announced the release of a new connectivity solution, ODBC Driver for Google BigQuery, which allows access to Google BigQuery data warehouse directly through HTTPS.
tags: ODBC, connectivity, database, BigQuery
---
*Devart has announced the release of a new connectivity solution, ODBC Driver for Google BigQuery, which allows access to Google BigQuery data warehouse directly through HTTPS.*

Devart, a recognized vendor of connectivity solutions for various databases and cloud services, released a brand new product – [ODBC Driver for Google BigQuery](https://www.devart.com/odbc/bigquery/). The driver provides full support for the standard ODBC API functions and data types, and BigQuery SQL expressions and data types. The solution is intended for use in various analytics, database management and reporting tools, IDEs and programming languages, and is able to access Google BigQuery data warehouse directly through HTTPS.

One of its prominent features is that users have the ability to specify whether the driver must return foreign keys, which is a time-consuming operation. On many occasions, third-party tools do not actually need foreign key metadata, so it is an effective way to increase the speed of data retrieval operations.

For compatibility purposes, the vendor also added the option to specify a column or a set of comma-delimited columns that will be returned by the driver as primary keys for BigQuery tables. Google BigQuery has no primary key or unique constraints, which makes it impossible for some third-party tools to work with BigQuery tables correctly.

As an extra benefit comes cost-effective deployment: the driver is a standalone installation file that does not require the user to install or update any dependencies. For large organizations with hundreds of machines, Devart offers the silent install method with an OEM license.

Learn more about the recent release by visiting Devart’s blog article https://blog.devart.com/odbc-driver-for-google-bigquery-released.html

**About Devart**

Devart is one of the leading developers of database tools and administration software, ALM solutions, data providers for various database servers, data integration and backup solutions. For additional information about Devart, visit https://www.devart.com/.
Brushing Teeth, Cleaning Up, and Cultivating Patience
Tags: devjournal, codenewbie, womenintech
Published: 2020-05-19 09:54:42

_This post was originally published on May 19, 2020 on [my blog] (https://alexlsalt.github.io/blog)._

Throughout this journey of full-time teaching myself how to program, I've been aware of the very necessary act of cultivating patience.

As I've been playing the long-game in my coding life - being cognizant of the fact that it's going to take hours upon hours of practice and learning to eventually attain mastery - I've also noticed how much cultivating patience has seeped into my non-coding life, in those small, seemingly insignificant moments.

Before this journey started, if - for example - I'd spilled my dog's food kernels on the ground, I'd immediately feel impatient at the prospect of picking up each little morsel. Now, I'm conscious of being way more patient as I watch the mess dwindle into clean again with each picked-up piece.

Now, I practice finding joy in the full two minutes of brushing my teeth when, before, I'd be rushing myself along, waiting desperately for my toothbrush's signal that time was up.

Now, as I'm cleaning up the pieces of one of the three jigsaw puzzles we have (and that I've assembled countless times since occupying myself during lockdown), I don't get annoyed or impatient with the clean-up.

Instead, I'm motivated to keep going with each small action taken - inspired by the results gained with each passing moment. We may not be able to see the progress at the very instant we take the action, but boy are we proud of ourselves at the end.
Tips to Successfully Work from Home
Tags: workfromhome, homeoffice, remotework, remoteworking
Published: 2020-06-04 16:12:45

---
title: Tips to Successfully Work from Home
published: true
date: 2020-05-19 09:40:22 UTC
tags: work-from-home,home-office,remote-work,remote-working
canonical_url: 
---

[![](https://cdn-images-1.medium.com/max/2600/1*M4TqO8-MUlDCtSjU-QV4OA.jpeg)](https://medium.com/swlh/tips-to-successfully-work-from-home-69637fed296c?source=rss-269f954fad8c------2)

7 tips to improve your home office experience

[Continue reading on The Startup »](https://medium.com/swlh/tips-to-successfully-work-from-home-69637fed296c?source=rss-269f954fad8c------2)
Quote : "You're (probably still) using HttpClient wrong and it is destabilizing your software" from Josef
Tags: netcore, csharp
Published: 2020-05-19 09:25:11

I have tried to use IHTTPClient  in my .net core MVC app

In Startup.cs

```csharp
services.AddHttpClient("Visites", configureClient: client => {
	client.BaseAddress = new Uri("http://xx-yy.abcd/visiteapi/visites/");
	client.DefaultRequestHeaders.Add(name: "Accept", value: "application/json");

}).ConfigurePrimaryHttpMessageHandler(() =>
{
	return new HttpClientHandler()
	{
		UseDefaultCredentials = true,
	};
});

```
In VisitesController.cs

```csharp
public async Task<ActionResult> LastVisites()
{
	var httpClient = _httpClient.CreateClient("Visites");
	var data = await httpClient.GetStringAsync("lastvisites?agIdent=3631&nbVisites=5");
	IList<Visite> lastVisites= DeserializeObject<IList<Visite>>(data);
	return View(lastVisites); ;
}
```


Here is a very nice article from Josef explaining why use IHTTPClient

[Using HttpClient](https://josef.codes/you-are-probably-still-using-httpclient-wrong-and-it-is-destabilizing-your-software/)
React-native commands and shortcuts
Tags: reactnative, javascript
Published: 2020-05-19 08:30:14

## Purpose of the article
When developing an application in react-native we need to check our changes in both iOS and android platforms for simulator and emulator.
To do that we use native tools Xcode and Android studio.
The use of these tools might consume a lot of development time, especially if you are not a native developer.

## Solution
As a solution, we can avoid using these tools until it is very necessary.
How we can do that huh?
Using terminal commands.
In this article I will be sharing a commands which helps me save my development time.

## For iOS:
### Commands
- Clean build iOS build
```
> cd ios
> Xcodebuild clean
```
- List the simulators
```
xcrun simctl list
```
- Run ios build with specific simulator
```
react-native run-ios --simulator=<Your simulator name>
```
- Clear pod cache and install again
```
> cd ios
> pod deintegrate
> rm -rf Podfile.lock 
> pod install
```
### Shortcuts
- Show/hide keyboard in simulator when input field is focused
```
command + shift + k
```
- Clean build when from xcode
```
command + shift + k
```
- Start build from xcode
```
command + b
```
- Rotate the simulator
```
command + <right/left/top/bottom arrow>
```
- Open debugging options:
```
command + d
```
- Reloading simulator
```
command + r
```

---
## Android 
### Commands
- List connected devices
```
adb devices
```
- Clean build
```
> cd android
> ./gradlew clean
```
- Open debugging options
```
adb shell input keyevent KEYCODE_MENU
```
- Open debugging options for specific device: <br>
Suppose emulator already open and the device is also connected then we can specify device id which will open debugging options for a specific device.
```
adb -s <Your device ID> shell input keyevent KEYCODE_MENU
```
- Connect your packager with debug build: <br >
Suppose you have manually installed debug build in your device and you want to connect with package
```
adb reverse tcp:8081 tcp:8081
```
- Log device errors in debug and release mode:
```
adb logcat AndroidRuntime:E *:S
```
- Open emulator without android studio (MAC OS)
```
> cd ~/Library/Android/sdk/emulator
> ./emulator -list-avds
> ./emulator -avd  <emulator name>
> ./emulator -avd  <emulator name> -wipe-data
```
- Run build for the specific device
```
react-native run-android deviceId=<DEVICE_ID>
```
### Shortcuts
- Open debugging options on emulator
```
command + m
```
- Reload app on the emulator
```
r + r
```
- Going to back navigation
```
Mac: command + delete
Windows: Cmd + Backspace
```
- Open app overview
```
Mac: command + O
Windows: Cmd + O
```
- Go to home
```
Mac: command + Shift + H
Windows: Cmd + Shift + H
```
ERROR IN REACT NATIVE DEVELOPMENT SERVER
Tags: reactnative, android, mobileapp
Published: 2020-05-19 08:57:10

---
title: ERROR IN REACT NATIVE DEVELOPMENT SERVER
published: true
description: Debugging the react native error.
tags: ReactNative, android, mobileapp
---

#1. Run **react-native run android/run-ios.**
if you see __Build failed__,
__Run__: **cd android && ./gradlew clean**  
__Rerun__: react-native run android.
Then you will see build successful!. 

##2. But if you see error like: 
__"Could not connect to development server__".
On your terminal with project file, 
__Run__: __react-native start__
Boom!!!

###3. __Any Extra errorS:__ like "You need to accept sdk manager licenses"
__Run__ : **cd C:\Users\HP\AppData\Local\Android\Sdk\tools\bin** on command line and; 
__Run__ : **sdkmanager --licenses**
Click (Y/N): Y(yes) to accept all the sdk manager licenses (SKADOOSH)
__Re-run__: "npx react-native run-android".
Monitoring your cron jobs is critical
Tags: monitoring, cron, health, alerts
Published: 2020-05-19 08:50:05

At Spike, we have a few supercritical `cron` jobs. 

Some use cases of `cron` for us has been - 

1. Send weekly email reports
2. Billing reminders
3. DB backups
4. Bill organisation for the right amount based on active members every month (_flexibility to add/remove users and reflect on billing is super important_)

Basically `cron` is important and we need to be alerted when they fail. 

There are several tools that will help you with cron monitoring. Here is a comparison chart

![Cron monitoring tools compared](https://dev-to-uploads.s3.amazonaws.com/i/xfrsc3fgw64b0j8ci0sw.png)

###What should you setup?
1. Timeouts
2. Insert cron expression to check if cron has executed
3. Alerting upon failure

[Crontab.guru](https://crontab.guru) is the best cron expression validator out there. It will convert your expression into human-readable format and validate it for you.


###How to setup?
Once you have your expression, you can use one of the cron monitoring tools to validate if the cron was executed and run successfully or not. 

1. [Healthchecks.io ⭐️](https://healthchecks.io)
2. [Cronitor](https://cronitor.io/)
3. [Cronhub](https://cronhub.io)

We ourselves use Healthchecks the most and have absolutely no complains in the past year of using it. Quite sure the other products are great too.

Give it a spin and let us know.

ps: Spike [integrates with healthchecks.io](https://spike.sh/integrations/healthchecks) very easily. We alert you so you can stay on top of your cron jobs execution.
LCH colors and why you should be using them (plus a package to help)
Tags: javascript, webdev, npm, uiweekly
Published: 2020-05-19 08:47:58

Recently a friend had asked me to teach him some of the basics of web design. As we started progressing into styling different elements with CSS, he experienced firsthand the shortcomings of using the HSL (Hue, Saturation, Lightness) color picker in Chrome’s Inspect Elements. Even though he was only changing the hue, the colors he was getting ended up being much lighter or darker than what he started with. Thanks to some neat (or perhaps unfortunate) color science, the HSL color space model is not perceptually accurate, which can lead to problems designing color themes. Luckily, there’s a solution…

  

## What is LCH

To put it (relatively) simply LCH (Luminance, Chroma, Hue) is a color space that is designed to be perceptually accurate. This means that by only changing, for instance, a color’s luminance, you will not impact its saturation or its tone. Now onto an example.

  

Let’s pretend that you’ve created a submit button whose background color is the always classic green ‘#00c45c’. Some time passes and you decide you don’t want a green submit button, you want an orange one. So you convert to hsl, and toggle the hue until you have the tone that you want. Unfortunately, things have hit a snag: your new orange is not only visually much darker than your old button was, but also a bit desaturated. What can you do?

  

One way to solve the problem is to start with our original shade of green. If we convert that to LCH, then it's easy to just toggle hue values until you get an orange that you like, all without losing the same visual pop you had from your old button.

![](https://lh4.googleusercontent.com/h8fLHC5vcXzKQbmFcGVVx8GL87vAboztDbFPxH8qSLWwjKHc5H-NVIhF72C0mkWT0nIec1VaNxniKljKAmQ3lIm3lV9kKnru5Puk_HlthjIzq2YtQJ2tJzomWFelcLgLq6usmljr)

  

Another solution is to start with our new shade of orange and work backwards. Once we convert it to LCH, it’s easy to see that our luminance (lightness), and chroma (saturation) are much lower than where we started. By adjusting those two values and leaving the hue the same, we end up with the same result as before.

  

![](https://lh5.googleusercontent.com/PnKrU93Bt0bnDMzAKaP7qMISClVlSKOnkhmYbgUsJm58z80kLkIMAhWY1HMdk9vNcVMWvbWqI6N4HoklSK6xBT6tUBryLOSm3Pti3bQjjTVYyypPBhcVZhO23h_puXR7astmpQz6)

## How to convert to LCH

Converting to LCH can be a bit of a pain. You have to map your RGB values to XYZ, then to LAB (or LUV), and then finally to LCHab (or LCHuv). That’s why I wrote this [JavaScript color library](https://github.com/vinaypillai/ac-colors) to handle the conversions reactively. After instantiating a Color object with an RGB, HEX, HSL, XYZ, LAB, or LCHab color, it will automatically update all its properties to reflect the proper conversions. Plus it offers some other useful features like random color generation and contrast ratio calculations. But regardless of how you do it, I hope making the switch to LCH helps ease some of the issues you can run into when designing your components.
The Alternative Guide to Building Tetris - FULL LENGTH video (for the ultra beginner)
Tags: javascript, tutorial
Published: 2020-05-19 08:41:42

A few of you have asked me to go over my very FIRST YOUTUBE VIDEO EVER - An Alternative guide to Building Tetris, in a slower, more beginner focused-way. I decided to remake the video but with more diagrams and explainer videos of each inbuilt method as we use it. I hope you enjoy my remake! (As seen on @freeCodeCamp.org )

____

In this 18 part tutorial, you will learn how to set up a project from scratch using the Atom code editor and your command prompt tool, as well as gain a fundamental understanding of JavaScript by building your very own version of Tetris.

This is a great course for those of you who have never touched code before or those of you with some basic understanding of JavaScript, that would like to go over the fundamentals again.

This course consists of explainer videos that will run you through concepts such as 'Explaining Variables', 'What is a Function and how we use it', 'Understanding Arrays', and many more. These explainer videos are dotted throughout the Tetris project and play when we start to discover each javaScript concept or method. These explainer videos consist of imagery and diagrams for those of you who are visual learners. There are also multiple-choice questions at the end of selected lectures.


In this game of Tetris we will be covering the following inbuilt JavaScript methods:
- addEventListener()
- querySelector()
- querySelectorAll()
- keyCode()
- Math.floor()
- Math.random()
- length
- forEach()
- splice()
- clearInterval()
- setInterval()
- some()
- innerHTML()
- every()
- add()
- remove()
- contains()


Chapters include:
0 - Introduction
1 - Setting up the project
2- HTML Basics
3 - CSS Basics
4 - Explaining Variables
5 - Working with Arrays
6 - What exactly is a function?
7 - Arrow Functions and forEach()
8 - Drawing Tetrominoes using classList.add()
9 - Times and intervals
10 - Using Modulus to define our place on the grid 
11 - Keycodes and events
12 - Choosing items from Arrays
13 - Displaying the ‘Next Up’ Tetromino
14 - Adding a start and pause game function.
15 - Splice()
16 - Splice(), concat() and appendChild()
17 - Game over using some() and innerHTML
18 - Assigning colors to our Tetrominos

{% youtube w1JJfK09ujQ %}



If you have any questions or get stuck, please do reach out to me on my socials below:
YouTube: https://www.youtube.com/aniakubow
Twitter: https://www.twitter.com/ania_kubow
TIP!!TIP!!
Tags: github, python
Published: 2020-05-19 07:58:43

ITS BEEN A LONG TIME SINCE I HAD A RELATIONSHIP WITH PYTHON(a year),MOST OF THE TIME SHE UNDERSTANDS ME,MORE THAN I DO .THOSE WHO FELT THIS SITUATION OF MINE, can share their tips to improve, which they have used in their life to succeed in their coding journey,i'm extremely awaiting to know your success stories!!!
How to build Small Business Website with TYPO3
Published: 2020-05-19 07:27:54

It’s no longer feasible to run a business, without a website these days.
Everyone goes digital and turns to the internet for everything from product research to location and operating hours.

Building a website is now easier to use now more than ever with Open Source CMS like TYPO3. When you choose TYPO3, you don’t need to know to code to develop an attractive and functional site. With basic rules and tips that will give your website a professional look, make it easy to find, and show your company in the market.

Here’s our step-by-step guide to creating a successful business website with TYPO3.

- Identify and Clarify the purpose of your website
- Choose a perfect Domain name for your TYPO3 website
- Choose a reliable Web Host
- Install TYPO3
- Choose your dream website design
- Install require TYPO3 extensions
- Think about a Multilingual website
- Build your pages
- Integrate Forms
- Speed and Performance Optimization
- Integrate SSL/HTTPS Certificates
- Take care of SEO factors
- Integrate Marketing Tools
- Quality Assurance of your website
- Test and Publish Your TYPO3 Website
- Market your website on social media
- Maintain your TYPO3 site
- Secure Your TYPO3 Site
- Backup Your TYPO3 Site

Read the complete article at — https://t3terminal.com/blog/how-to-build-small-business-website-with-typo3, and your small business will have an excellent chance of succeeding in the online marketplace.