teleren/devto huggingface dataset:
My first career as a Software Engineer
Tags: softwareengineer, beginners, developer, career
Published: 2020-04-21 12:27:29

I've got a new position as a Software Engineer in a private company that develop the software related to palm oil business.

I am a fresh graduate and really nervous to start my career path.

The company give me 3 month as probation period before I get the permanent position.

I'm willing to learn more and always improve my skills in this area.

I will update my first day as a software engineer (tomorrow, 22nd April 2020) and my day started with work from home because of Movement Control Order (MCO) by Malaysia due to Covid-19.
Dark Mode Hacks #1: Inverted Images
Tags: darkmode, webdev, css, design
Published: 2020-04-21 12:23:48

Building out a <a href="https://dev.to/t/darkmode">#darkmode</a> for your website is actually a whole lot of fun.

Along the way you often have to really think about how people use your website and solve lots of little design challenges to make things work in a lightweight way that doesn't involve having to essentially rebuild particular elements of your website from scratch.

For people interested in a really detailed look into this - check out  Stack Overflow's recent blog post where they talk about how they overcame some of the challenges they faced updating such a massive and customisable website such as SO.

> <a href="https://stackoverflow.blog/2020/03/31/building-dark-mode-on-stack-overflow/" target="_blank">Building dark mode on Stack Overflow</a>

Currently I am building out the dark mode for my main business site - specifically the <a href="https://www.searchcandy.uk/blog/">blog</a> and resources areas, such as the <a href="https://www.searchcandy.uk/seo/seo-glossary/">SEO Glossary</a> and all sub-pages. I figure these are the areas most likely to be viewed by technical people for longer periods, and means I don't have to completely overhaul the services landing pages initially - which will be a lot of work.

The footer area of the site has a small image that shows off our Offset Earth profile.

We need to invert this image to be white, rather than black - see the screenshots  in my tweet below.

<blockquote class="twitter-tweet"><p lang="en" dir="ltr">One trick to keep total page size down: rather than having multiple different images for each version of the page - use CSS to invert the colour of solid black/white images. In our footer we have the <a href="https://twitter.com/OffsetEarth?ref_src=twsrc%5Etfw">@OffsetEarth</a> which can be easily changed to white with: filter: invert(1); <a href="https://t.co/pjBEYmem2N">pic.twitter.com/pjBEYmem2N</a></p>&mdash; colinmcdermott (@colinmcdermott) <a href="https://twitter.com/colinmcdermott/status/1246772663751782400?ref_src=twsrc%5Etfw">April 5, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

The simple solution? With just one snippet of CSS we can invert the colours of the image: <code>filter: invert(1);</code>

Here is a codepen I created to demonstrate:

{% codepen https://codepen.io/colinmcdermott/pen/dyoBVbp %}

So for example, using the <a href="https://dev.to/colinmcdermott/y-all-got-anymore-of-that-dark-mode-dark-mode-inspiration-4k8i">dark mode media query</a>, you might end up with something like this:

<pre>
@media (prefers-color-scheme: dark) {

img#SpecificFooterImage {filter: invert(1);}

}
</pre>

Or all images in the footer (class):

<pre>
@media (prefers-color-scheme: dark) {

.footer img {filter: invert(1);}

}
</pre>

Check out some extra stuff @ https://web.dev/prefers-color-scheme/#invert-vector-graphics-and-icons
vimified
Tags: vim, productivity, keyboard
Published: 2020-05-24 09:42:14

---
title: vimified
published: true
date: 2020-04-21 12:23:46 UTC
tags: vim, productivity, keyboard
canonical_url: https://www.geewiz.dev/2020/04/21/vimified.html
---

Despite working on a Mac, I’m using the mouse/trackball less and less. I’ve installed [Vimium](https://chrome.google.com/webstore/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb) in my Brave browser; it allows me to follow links by selecting them with easy-to-type letter combinations.

I’ve also [programmed my keyboards](https://qmk.fm/) to send arrow keys when I hold the space bar and press the H, J, K and L keys. That way, I can move the cursor and scroll a page without even leaving the home row with my fingers.
A 12-Line JavaScript Function to Get All Combinations of an Object's Properties
Tags: javascript, programming, testing, webdev
Published: 2020-04-21 12:17:34

---
title: A 12-Line JavaScript Function to Get All Combinations of an Object's Properties
published: true
description: 
tags: javascript, programming, testing, webdev
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/q5j0j84vm68dmfp1dav1.png
---

It's often desirable to get all combinations of an object's properties. One of the cases where I use this most is testing: I want to try a function of component with every permutation of data it might receive.

# A Simple Example: React Navbar

Let's say we have a React navbar that takes the following props: `name`, `displayMode`, and `timezone`. `name` can either be a string or `null` (if there's no logged-in user), `displayMode` can be `"dark"` or `"light"`, and `timezone` can be `"ET"`, `"CT"`, `"MT"`, or `"PT"`.

We would like to do snapshot testing of our navbar in each possible state. We _could_ manually write out each state, but that ends up being 2 * 2 * 4 = 16 combinations. If we had even more props, this would get out of hand fast! Instead, let's write a quick script that produces all possible combinations:

```javascript
const navBarProps = {
  name: ["John Doe", null],
  displayMode: ["dark", "light"],
  timezone: ["ET", "CT", "MT", "PT"],
};

function allCombinations(obj) {
  let combos = [{}];
  Object.entries(obj).forEach(([key, values]) => {
    let all = [];
    values.forEach((value) => {
      combos.forEach((combo) => {
        all.push({ ...combo, [key]: value });
      });
    });
    combos = all;
  });
  return combos;
}

console.log(allCombinations(navBarProps));

/*

[ { name: 'John Doe', displayMode: 'dark', timezone: 'ET' },
  { name: null, displayMode: 'dark', timezone: 'ET' },
  { name: 'John Doe', displayMode: 'light', timezone: 'ET' },
  { name: null, displayMode: 'light', timezone: 'ET' },
  { name: 'John Doe', displayMode: 'dark', timezone: 'CT' },
  { name: null, displayMode: 'dark', timezone: 'CT' },
  { name: 'John Doe', displayMode: 'light', timezone: 'CT' },
  { name: null, displayMode: 'light', timezone: 'CT' },
  { name: 'John Doe', displayMode: 'dark', timezone: 'MT' },
  { name: null, displayMode: 'dark', timezone: 'MT' },
  { name: 'John Doe', displayMode: 'light', timezone: 'MT' },
  { name: null, displayMode: 'light', timezone: 'MT' },
  { name: 'John Doe', displayMode: 'dark', timezone: 'PT' },
  { name: null, displayMode: 'dark', timezone: 'PT' },
  { name: 'John Doe', displayMode: 'light', timezone: 'PT' },
  { name: null, displayMode: 'light', timezone: 'PT' } 

*/
```

And that's it! Now, if we wanted to generate some components based on these combinations, we can just loop over the array we created.

```jsx
const tests = allCombinations(navBarProps).map(props => {
  return <Navbar {...props} />;
});
```
DOM
Tags: javascript, beginners
Published: 2020-04-21 12:03:09

---
title: DOM
published: true
description: Document Object model
tags: javascript, beginners
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/8no5ppjmmd3bo7pbme2v.jpg
---

Document Object Model is your htlm.
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/g468bjpid3rbqv59z2ra.png)
In your inspector you will find your DOM in the element section.
The way that we use to access the DOM is through **document.**
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/18krgua1a86rlw4e7wrb.png)
document is the root element of the DOM.
April 21 — Daily CodeNewbie Check-in Thread
Tags: codenewbie, checkin, beginners, discuss
Published: 2020-04-21 12:00:31

---
title: April 21 — Daily CodeNewbie Check-in Thread
published: true
description: A daily thread to ask questions, share progress, and stay accountable!
tags: codenewbie, checkin, beginners, discuss
series: Daily Checkin
---

You are encouraged to use this daily thread to:
- Ask for help (all questions encouraged)
- Explore topics you’re curious about
- Share something you’ve written or read
- Celebrate your wins
- Stay accountable to your goals
- Support your fellow programmers

Happy Coding!

---

_Interested in joining the twice-weekly live [#CodeNewbie Twitter chats](https://twitter.com/search?q=codenewbie)?  You can find us [on Twitter](https://twitter.com/search?q=codenewbie) each Wednesday at 9pm ET (1am GMT on Thursday) and Sunday at 2pm ET (6pm GMT)!_
Daily Developer Jokes - Tuesday, Apr 21, 2020
Tags: jokes, dailydeveloperjokes
Published: 2020-04-21 12:00:11

---
title: "Daily Developer Jokes - Tuesday, Apr 21, 2020"
description: "Check out today's daily developer joke! (a project by Fred Adams at xtrp.io)"
series: "Daily Developer Jokes"
cover_image: "https://private.xtrp.io/projects/DailyDeveloperJokes/thumbnail_generator/?date=Tuesday%2C%20Apr%2021%2C%202020"
published: true
tags: #jokes, #dailydeveloperjokes
---

Generated by Daily Developer Jokes, a project by [Fred Adams](https://xtrp.io/) ([@xtrp](https://dev.to/xtrp) on DEV)

___Read about Daily Developer Jokes on [this blog post](https://xtrp.io/blog/2020/01/12/daily-jokes-bot-release/), and check out the [Daily Developer Jokes Website](https://dailydeveloperjokes.github.io/).___
### Today's Joke is...
![Joke Image](https://private.xtrp.io/projects/DailyDeveloperJokes/public_image_server/images/5e1258e86d537.png)

---
*Have a joke idea for a future post? Email ___[xtrp@xtrp.io](mailto:xtrp@xtrp.io)___ with your suggestions!*

*This joke comes from [Dad-Jokes GitHub Repo by Wes Bos](https://github.com/wesbos/dad-jokes) (thank you!), whose owner has given me permission to use this joke with credit.*

<!-- 
Joke text:
___Q:___ How does a developer make a cheer?

___A:___ ["hip","hip"] // (hip hip array!)
 -->
Tailscale - Private networks made easy
Tags: podcast, video, vpn, networking
Published: 2020-04-23 07:00:22

---
title: Tailscale - Private networks made easy
published: true
date: 2020-04-21 12:00:00 UTC
tags: podcast, video, VPN, networking
canonical_url: https://share.transistor.fm/s/17d068cc
---

{% spotify spotify:episode:0EPu9dloFSfkJEd7BI9LKb %}

{% youtube Q5yQoyad8bE %}

 **Tailscale - Private Networks made easy **
- Allows you to connect all your devices using Wireguard 
- Removes all the hassle from installing/configuring Wireguard 
- Based on WireGaurd which is now part of the Linux Kernel 
- SSO - Google GSuite, Active Directory Office365, OKTA, Ping 
- Tailscale the company just received a 3Million Seed round - [https://tailscale.com/blog/tailscale-launch/](https://tailscale.com/blog/tailscale-launch/)
- Super easy to install 
- No Config, No Firewall ports 
- Install the Tailscale software on all machines you want to be connected. 
  - Install the software and authorize the new endpoint in the Admin console or sign in with SSO to automatically authorize 
- And it works 
- Admin Console 
  - Pending Authorizations 
  - Machines connected 
  - DNS - use custom DNS servers for machine lookups 
  - ACL - restrict who can access which machines on your network 
**Tailscale the company **
- Tailscale the company just received a 3Million Seed round - [https://tailscale.com/blog/tailscale-launch/](https://tailscale.com/blog/tailscale-launch/)
- FAQ - [https://tailscale.com/kb/1062/reviewer-guide](https://tailscale.com/kb/1062/reviewer-guide)
- Pricing Free for personal up to 100 devices - [https://tailscale.com/pricing/](https://tailscale.com/pricing/)
Twilio Support Chat
Tags: twiliohackathon
Published: 2020-04-21 11:54:28

After hearing about the hackathon I was very interested in it and was looking forward to participating. It is a great opportunity provided by **Dev team** and **Twilio**

I initially spent 2-3 days brainstorming as to what should I build in this hackathon. Then I realized that in this pandemic we are so much dependent on the food stores in our nearby areas. Most of us are ordering food and healthcare goods online, while ordering if we come across any issue we don't have any option other than phone to connect with the store. In this situation, most of the time the phone is busy as that is the only source of communication.

##Idea##
It came across my mind that if they have any other medium to communicate like support chat by which the user can directly connect with the store to enquire about their issues. This support chat will be used as a widget on the website via which the users can connect with the agents to resolve their queries.
A user can register for the features like scheduling calls with the agent or getting SMS updates about the processing of their queries via this chat.


Summing up, it will be chatbot for all the food stores like **Lidl** and **D-Mart** where users can directly connect to the store to ask about the issues they are facing while using their services.
DevOps & Chill n.4 - Creating Ansible Roles
Tags: devops, beginners, ansible, video
Published: 2020-04-21 11:03:52

---
title: DevOps & Chill n.4 - Creating Ansible Roles
published: true
description: In this episode of DevOps & Chill, we'll turn the playbooks we've created in previous episodes into Ansible Roles. 
tags: devops, beginners, ansible, video
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/b0ma6mf9y093brq3xgbm.jpg
---

In this episode of DevOps & Chill, we'll turn the playbooks we've created in previous episodes into Ansible Roles. All files are available in this Github repository: [erikaheidi/doac-ansible](https://github.com/erikaheidi/doac-ansible).

_This video was edited for a faster pace_.

{% youtube G7MmmN73H88 %}

### Related Tutorials:

- [How to Install Ansible on Ubuntu 18.04 (Quickstart)]( https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-ansible-on-ubuntu-18-04-quickstart)
- [Ansible CheatSheet](https://www.digitalocean.com/community/cheatsheets/how-to-use-ansible-cheat-sheet-guide)
- [How to Use Ansible Roles to Abstract your Infrastructure Setup]( https://www.digitalocean.com/community/tutorials/how-to-use-ansible-roles-to-abstract-your-infrastructure-environment)

Originally streamed via Twitch on April 17, 2020. 

Soundtrack provided by https://www.pretzel.rocks/ .

See you in the next episode :)
India's first complete Property valuation software used by experts
Published: 2020-04-21 10:04:18

PropVal is a complete end-to-end software platform for running a modern property valuation practice. This property valuation software is a cloud-based solution specially designed to address the needs and challenges faced by the Property Valuers on day to day basis. We aim to be a leader in enterprise-grade software platforms for property valuation software in India. PropVal has been designed for use on Web Browsers, iPads, iPhones and Windows Tablet devices.

Apart from making a property valuation report, there are many other concerns like data management, data security, accurate data capturing, data storage and accessibility etc. which are all taken care of with the PropVal.Your property valuation method remains unchanged however it enables you to prepare the report with ease ensuring the timeliness and accuracy. You can know more at - https://vkartinfosolutions.com/products/property-valuation-software/
Delegate in Rails
Tags: rails, delegate
Published: 2020-04-21 09:59:23

---
title: Delegate in Rails
published: true
description: Here's a short guide to the delegate property in Rails.
tags: rails, delegate
---


A model should only talk to its immediate association. According to the Law of Demeter, you shouldn’t talk to the association’s property or association’s association.

Here we talk about Rails delegate approach.


## BAD SMELL

class Profile < ActiveRecord::Base
belongs_to :user
end

    <%= @profile.user.address %>
    <%= @profile.user.city %>

Rails provides helper method to accomplish delegation, which uses DSL to generate wrapper methods. It can also prevent error call method on nil object if :allow_nil => true is added.

## Refactored

    class Profile < ActiveRecord::Base
      belongs_to :user
      delegate :address, :city, :to => :user, :prefix => true, :allow_nil => true
    end
    <%= @profile.user_address %>
    <%= @profile.user_city %>

*Originally published at [Kolosek blog](kolosek.com/rails-delegate/).*
TwilioQuest Earth Day Challenge
Tags: twilio, twilioquest, earthday
Published: 2020-04-21 09:42:30

## Earth Day 2020
Wednesday, April 22nd is Earth Day’s 50th anniversary (www.earthday.org). Some pretty incredible milestones have been achieved over the years, including the Clean Air, Clean Water and Endangered Species Acts in 1970, and the signing of the historic Paris Agreement on climate change in 2016. This year’s Earth Day theme is climate action, and at a time when social distancing is a necessary requirement, Earth Day is going digital. TwilioQuest started the year with a goal of planting 10,000 trees to support reforestation efforts in Australia, and we’re participating in Earth Day with our Earth Day tree-planting challenge.

![Plant a tree](https://twilio-cms-prod.s3.amazonaws.com/images/Screen_Shot_2020-04-20_at_1.07.31_PM.width-1600.png)

## #SaveTheCloudSaveTheEarth

If you’ve played TwilioQuest, you may have already encountered a few tree-planting chests in the game. In light of Earth Day, we have added 8 additional tree-planting chests that will be visible from Tuesday, April 21st. The goal of this challenge is to see how many trees the TwilioQuest community can plant in one day. To get started, download TwilioQuest (www.twilio.com/quest), join the event "Earth Day 2020", find as many tree-planting chests as you can, and take on the Earth Day challenge! Share your progress online using the hashtag #SaveTheCloudSaveTheEarth.

## Earth Day Challenge on Twitch

In addition to the new chests, we will be live on Twitch (www.twitch.tv/twilio) with the support of streamers from around the world who will be planting trees in TwilioQuest from 5am EDT (10am BST). Show them some love by tuning into their streams, and join the Earth Day tree planting challenge live.
Abhishek Chaudhary (TheAbbie) Height, Weight, Age, Girlfriend, Family, Biography & More
Tags: fcrit, brazenepiphany, abhishekchaudhary, theabbie
Published: 2020-05-16 05:01:16

---
title: Abhishek Chaudhary (TheAbbie) Height, Weight, Age, Girlfriend, Family, Biography & More
published: true
date: 2020-04-21 09:10:03 UTC
tags: fcrit,brazen-epiphany,abhishek-chaudhary,theabbie
canonical_url: https://medium.com/@theabbie/abhishek-chaudhary-theabbie-e5131eeee846
---

![Abhishek](https://cdn-images-1.medium.com/max/1024/1*WTg4DxcfNAcJbSyvjNHTBw.jpeg)<figcaption>Abhishek Chaudhary</figcaption>

### Bio

#### Real Name

Abhishek Chaudhary

#### Nickname

TheAbbie

#### Profession

Web Developer, Filmmaker, Podcaster

#### Famous for

Brazen Epiphany (2019)

TheAbbie Podcasts

### Physical Stats & More

#### Height

In Centimetres- **175 cm**

In metres- **1.75 m**

In Feet Inches-  **5'9"**

#### Weight

In kilograms- **50 kg**

In pounds- **110.2 lbs**

#### Body measurements

chest- **38 Inches**

waist- **30 Inches**

biceps- **12 Inches**

#### Eye colour

Black

#### Hair Colour

Black

### Personal Life

#### Date of birth

11 January 2002

#### Age (as in 2020)

**18 Years**

#### Birthplace

Navi Mumbai, Maharashtra, India

#### Zodiac sign/Sun sign

Capricorn

#### Nationality

Indian

#### Hometown

Navi Mumbai, Maharashtra, India

#### College

Fr. Conceicao Rodrigues Institute Of technology

![](https://cdn-images-1.medium.com/max/1024/1*1QNcUk_yg7TnGQyaSFjmeg.jpeg)<figcaption>Fr. Conceicao Rodrigues Institute Of technology</figcaption>

#### Educational Qualification

B.E. In Computer science

#### Debut

Brazen Epiphany (2019)

![Brazen Epiphany](https://cdn-images-1.medium.com/max/1024/1*xOFssC-GdG6YXTD_CDYUEw.jpeg)<figcaption>Brazen Epiphany</figcaption>

#### Family

**Father** - Santosh Choudhary

**Mother** - Ruby Choudhary

**Brother** - Yogesh Choudhary

#### Religion

Hinduism

#### Food Habit

Non-vegetarian

#### Hobbies

Reading, Watching movies, Listening music, Programming

### Favorite things

#### actors

Aamir Khan, Irrfan Khan

#### actress

Shraddha Kapoor

#### movies

Andhadhun

#### direcors

Rajkumar Hirani, Anand Gandhi

#### Singer

Sonu Nigam, Mohit Chauhan, Arijit singh

### Girls, Affairs and more

#### Marital status

Unmarried

#### Affairs/Girlfriends

Single

#### Wife/Spouse

N/A

### Some Lesser known Facts about Abhishek Chaudhary

- Does Abhishek Chaudhary smoke?: No
- Does Abhishek Chaudhary drink alcohol?: No
- Abhishek Chaudhary is a computer engineer and a filmmaker and one of the directors of 2019 short film **Brazen Epiphany**.
- He graduated from **Fr. Conceicao Rodrigues Institute Of technology** with a degree of **B.E. in Computer science**.
- He is famous as **TheAbbie**.
- He is a Bihari an his father works as Bank manager.
- He is the founder of **TheAbbie Podcasts** , the top podcast in India as of 2020.

{% youtube PBe6rUL7AZo %}
Programming & the Bigger Picture x Twilio Hackathon Project Update
Tags: devjournal, twiliohackathon, codenewbie, womenintech
Published: 2020-04-21 08:59:13

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

Yesterday, I was an absolute beast with coding and my Twilio hackathon project. Each time I came up against something challenging, I was able to break the issue down into smaller, more manageable parts.

It's becoming more and more clear to me how much programming is about knowing what solutions are available and *where* to look for them. The more familiar you are with the bigger picture/web development ecosystem, it gives you more tools on hand to put one foot in front of the other to solve hard problems.

The deadline for the hackathon is steadily approaching (T-minus 9 days left!), so I realize I need to get going with adding my Twilio API to the app.

But first, I need to focus my attention today on making sure each user is seeing their unique data once they're logged in. I'm confident I'll figure it out, but it was definitely the main issue I ended with yesterday.

I'm looking forward to checking back in here tomorrow with a positive report :)
PHP snippet #004
Tags: php
Published: 2020-04-21 08:51:58

From funny chat 🚀

A:
```
    5--; // Is 4
    5++; // Is 6
    then 5**; // Is 25?
    And 5//; // Should be 1 but it's comment
```

B:
5** is fast comet with weight 5
5*** is faster
Driver fixer pro
Tags: driverfixerpro
Published: 2020-04-21 08:43:41

Driver Fixer Pro is a unwanted program that describes itself as a pc optimization program that can help your computer run better. When scanning your computer, Driver Fixer Pro will search for invalid system entries, invalid startup entries, invalid DLLs, or broken links Driver Fixer Pro
https://driverfixerpro.com
Signs it's time to leave your company
Tags: programming, coding, work, career
Published: 2020-04-21 08:37:11

---
title: Signs it's time to leave your company
published: true
description: When do you know you've outgrown your job? When do you know it's time to move on?
tags: programming,coding,work,career
---

[@catalinmpit](https://twitter.com/catalinmpit) asked this question yesterday on twitter...

{% twitter 1252176504957566976 %}


This is an easy one, happened to me in 2019: **you know it's time to move on when**:

1. You're no longer having fun
2. You're not learning or applying anything new in your daily routine
3. You have no mentors in the company
4. You struggle for challenges, but challenges are not there anymore