teleren/devto huggingface dataset:
A simple static site generator with Wren
Tags: html, wren, web, asciidoc
Published: 2020-11-24 17:28:02

---
title: A simple static site generator with Wren
published: true
description: 
tags: HTML, wren, web, asciidoc
cover_image: https://www.avesdechile.cl/0jpgn/074jc3.jpg
---


[Wren](https://wren.io) is a small, fast, class-based concurrent scripting language

Think Smalltalk in a Lua-sized package with a dash of Erlang and wrapped up in a familiar, modern syntax.

```js
System.print("Hello, world!")

class Wren {
  flyTo(city) {
    System.print("Flying to %(city)")
  }
}

var adjectives = Fiber.new {
  ["small", "clean", "fast"].each {|word| Fiber.yield(word) }
}

while (!adjectives.isDone) System.print(adjectives.call())
``` 

I created [Chercán](https://github.com/NinjasCL/chercan) (https://github.com/NinjasCL/chercan) as a simple static site generator where you could create your HTML pages using _Wren_ and _Asciidoc_.

Check it out! :)
My first Open Source project
Tags: javascript, opensource, npm, webdev
Published: 2020-11-24 17:07:48

I have always wanted to start an open source project, a library that would grant other developers the rights to use, study, change, and distribute the software for any purpose. I always believed that no matter the outcome, launching your own project is a great way to learn how open source works. 

It will feel scary to share your work with the world, you might get nervous about what people might say about you, but the only way to get better is to practice, and showing it to the rest of the world is a great way to get a feedback.

I soon found out that one of my the most rewarding experience, comes from the relationships that I build with other developers facing up against the same issues as me.

## How it started

Not to long ago, while I was working on one of my projects on Upwork, I came across a interesting task, I had to programmatically generate an array of color gradients by providing start and finish colors, as well as the required number of midpoints.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/ywrn53govpkqfr4ce7xq.jpg)

Initially, I started to look for solutions on the web, I found one library which was exactly what I was looking for, but as it was published 7 years ago, with no recent updates, I decided to create one myself.

The project I was working on was a React web application, I could create the open source project using the same library, which would help me save some time, but I thought about other developers who could potentially be facing the same issue, I decided to stick to plain JavaScript and as a result, make my solution more accessible.

## Publishing the library

As my client was okay with me open sourcing this snippet of a code from the project, I quickly rushed to [npm Docs](https://docs.npmjs.com/getting-started), to see how I could set up and publish my first ever library.

## Feedback

The [project](https://www.npmjs.com/package/javascript-color-gradient) was a success, on the very first week it reached over 800 weekly downloads, developers were using it in all sorts of web applications. 

Shortly after, I got my new issues from the users, and as it weird as it sounds, I was very exited to solve the errors that were connected to my library and further improve it.


## About the project

You can view the [live preview on Codesandbox](https://codesandbox.io/s/javascript-color-gradient-csgfd) or check the [source code](https://github.com/Adrinlol/javascript-color-gradient).
How to change the directory without typing the cd command in Linux?
Tags: linux, beginners, tutorial, devops
Published: 2020-11-24 17:05:03

It's a bit annoying to type the `cd` command every time whenever someone wants to change the directory, especially when they use the command line a lot. But luckily, there is a simple way to get into the directory by typing only the directory name.

In this article, we are going to discuss how we can achieve this functionality in an easy way

![change directory is not working](https://dev-to-uploads.s3.amazonaws.com/i/1atszaxn8ry2r2tqq8m1.png) 

In this picture, you can see I have a folder named `Android` in the `user's Home` directory. If I directly type the folder name (In my case which is `Android`), It will throw `command not found`

Let's come to the second picture

![change directory is working](https://dev-to-uploads.s3.amazonaws.com/i/b9vqbcet2nzoa79u4enx.png)

Now, if I type `cd Android`, it will allow me to get into the `Android` directory
<br>
###Here is the most important part. Open your terminal again and execute the following line of code

`echo 'shopt -s autocd' >> ~/.bashrc ; . ~/.bashrc`

![Without the cd command](https://dev-to-uploads.s3.amazonaws.com/i/drka1uibuz0xyza0o1kb.png)

Now you can see, I can easily get into the directory by just typing the directory name only

How cool is it? Isn't it?

####What's this command is doing?

In a simple way, this command is used to be set `shopt -s autocd` in your `.bashrc` file. Ultimately which is responsible for this action.

![shopt -s autocd](https://dev-to-uploads.s3.amazonaws.com/i/6gf8dznbysenurq1k6q8.png)

###Drawbacks

However, there are some drawbacks also. As an example, if I use any command name as a folder name, it would be turned into a conflict

Let's understand it with a picture

![change directory](https://dev-to-uploads.s3.amazonaws.com/i/hrbc5vv45obxkobkx1ab.png)

As you can see I have a directory named `cd`.  Now, if I type `cd` nothing would happen because the `cd (Change Directory)` is also a command name and that's creating a conflict between them.

If I type `cd cd`, it would work. Because the first `cd` considered as a command name and the second `cd` considered as a directory name

###References

This solution is provided by [Abelisto](https://stackoverflow.com/users/593144/abelisto) on a [StackOverflow post](https://stackoverflow.com/questions/64951950/how-to-change-directory-by-mentioning-folder-name/64955424#64955424).
<br>
Feel free to share your opinion on this in the comment section below.

Thanks for reading. Have a great day :)

Coffee https://www.buymeacoffee.com/rahedmir
Favorite Resource of the Week: Profile Pic Maker
Tags: beginners, design, career, todayilearned
Published: 2020-11-24 16:36:44

In the world of software development, things move fast. New tools, new libraries, new languages! As technology changes to meet the needs of today's problems, it is important as a developer to keep up to date with what tools work best for you. I am always watching for tools that will help improve my workflow, making me a better designer and developer, and making my work more effective. I would like to share the tools I find that seem to make a difference in my work, and might just help solve some of the problems you are facing in your own!

This week my favorite resource is a newly found tool I thought was incredibly useful for creating profile pictures for my projects (and my own resume!).

### Profile Pic Maker
[PFPMaker.com](https://pfpmaker.com/)
![image](https://imgur.com/lm23Atp.png)



Profile Pic Maker is a super cool and super smart automatic image masking tool to help us all have better profile pictures! PFPMaker uses AI to choose the subject of the photo (pro tip: it doesnt have to be a person!) and mask the background out of the image, while providing a ton of cool options for a clean new background, along with adding smart shadows and some photo edit options. Upon upload of your photo, it takes around 20 seconds or so for the list of cool new profile pictures to generate. As developers, we all deal with our own profile picture needs (huge resume and portfolio booster!!!), but while creating applications that need stock profile photos or managing a website with an "Our Team" page, this handy and super accurate little tool can be a great addition to your toolbox. Hopefully you find this resource as cool and helpful as I did! 

Along with finding this tool particularly useful, it also has spurred an idea for a new project to take on. Teaming up with a friend of mine soon who has expertise in AI and machine learning to tackle a new project that will take a similar approach to masking photos automatically. More to come on this!

Let me know how else you found Profile Pic Maker useful in your own work!

[![Custom badge](https://img.shields.io/badge/Visit%20Site%20-->-PFPMaker.com-blue)](https://pfpmaker.com/)
Totalitarian Dictator Simulator 2018™
Tags: unity3d, gamedev, hobby
Published: 2020-11-24 16:29:46

{% youtube 6g20gP1jmjo %}

# The background
If you missed my previous post ["Tukincam Ranching: A primer"](https://dev.to/hesto22/tukincam-ranching-a-primer-3100), you need to know one very important thing that this entire game revolves around: In the 3rd grade, my brother was asked to create an imaginary state/country and give it a name/flag etc. He created the great state of "Matopilas" (his name is Matt) and declared himself President over this nation. 3rd grade came and went, but Matopilas stuck around. He continued to define what their government looked like, he wrote stories celebrating their conquests and memorializing their losses and occasional defeats. As the lore around this imaginary country grew, the role of the President evolved into more of a secret dictator with a great love for his people than a traditional leader of a democratic republic.

Here are some examples of historical Matopilian documents, provided to us by The President of Matopilas himself:
![matopilas_government](https://dev-to-uploads.s3.amazonaws.com/i/p35rzpmobuwmpq4sza2p.png)
![matopilas_flag](https://dev-to-uploads.s3.amazonaws.com/i/682303t1pxxjicxjoany.jpg)
  

Many of the stories surrounding Matopilas revolve around conquest. Invading a nation that is stuck in the dark ages and "enlightening" them with this new found form of government that will bring them happiness and prosperity. This game aims to bring my brother's childhood "imaginary state" (most people have imaginary friends when they are growing up, but Matt is far too ambitious to settle for that!) into something more material.

I should also mention that this was my first step into making a 3D game for my brothers' birthday games so it was quite the reveal when they booted it up and didn't see terrible copy/paste jobs of 2D sprites. (Instead they got to see mediocre copy/paste jobs of 3D models 😂)
Ski World & Red Alert
Tags: unity3d, gamedev, hobby
Published: 2020-11-24 16:28:05

{% youtube mF6hPUs2eCI %}

# The Jingo
At some point in my brother's life, he and his friends created what would become known as a "Jingo". 
![Jingo](https://dev-to-uploads.s3.amazonaws.com/i/5s4kjn2i45puhttkrkz9.png)

To this day, I'm not totally sure what it is or why it exists. What I do know is that hats were worn with a Jingo emblazoned upon it, drawings were created, and the Jingo became more than a simple doodle. It became a symbol. An icon reminding the rest of the world that there was something that this group created that no one but them could truly understand. It is through this lens that I created the Ski World/Red Alert hybrid.

## The background for the game 
### Ski World
![skiworld](https://dev-to-uploads.s3.amazonaws.com/i/bqi647ki3py6zlyv0lm8.png)
My family loves to ski, but this brother in particular is very talented at it (we're talking double backflips and such). In the late 90s there was a CD Rom titled "Warren Miller's Ski World" that had a simple game on it where you'd ski down a slope and try!  to avoid obstacles and go off jumps etc. I used this as inspiration for the first half of the game. 

### Red Alert
![ra2](https://dev-to-uploads.s3.amazonaws.com/i/kxcmcy2rm1reyqhf4u3v.png)
The second half of the game (starting at `1:18`) is replicating Red Alert 2, a RTS game that my brothers and I spent many Friday nights of our childhood yelling at each other over.
🛡 Bugcrowd’s Bug Bounty Program: Crowdsource Your App Security
Tags: security, codequality, partnership
Published: 2020-11-24 16:23:21

🔎 A global community of ethical hackers brings new perspectives to the hunt for vulnerabilities.
[Read more...](https://auth0.com/blog/bugcrowd-s-bug-bounty-program/?utm_source=content_synd&utm_medium=sc&utm_campaign=bugcrowd)
How to get the Kickflip powerup in Super Mario Bros. (Bday Game 2)
Tags: hobby, gamedev, ue4, tonyhawk
Published: 2020-11-24 16:23:12

# The Second Game

{% youtube Q93veX4Fg9o %}
After the amount of fun I had making my first game, I decided to follow it up for my other brother. Between the 3 of us, we have had some fairly competitive Super Smash Bros games over the years. I've always played as Samus, the youngest would play as Falco, and the birthday boy would always play as Mario. He's never been a particularly huge Mario fan but has always played him (surprisingly well) in Smash. In addition to Smash, this brother and I had recently been through a Tony Hawk "Renaissance" in which we played the third game for hours on end trying to get ridiculous scores together. If you've played Tony Hawk 3, you will be familiar with the tune that begins about halfway through the game (00:51).

# The inside scoop
While some of my games have some more "you had to be there to get it" references, this one is pretty straight forward. It is essentially a Mario game in which you get a skateboard that makes your foes explode, there is nothing more to it aside from it just feels great! At the end, you have to defeat Samus and Falco as a homage back to our days of competitive Smash Bros. Melee between the 3 of us.
I've made a game for each of my 2 brother's birthdays every year and here's what they look like.
Published: 2020-11-24 16:21:21


# The genesis of the tradition

This is the first post of a series I'm writing about the various games I've made for my 2 brothers' birthdays. Starting in 2017, I thought it'd be fun to try and make a hobby game to give to one of my brother's for their birthday in tandem with whatever present I had picked out for them. I, and the rest of the family, seemed to get a big enough kick out of it that I proceeded to do it for my other brother's birthday a couple months later. 

This has ended up with me mentally carving out the few months surrounding their birthdays (thankfully they are just a couple months apart) as my "hackathon" months where I crunch on a new game concept that I can work into a hopefully amusing project to give to them with their actual birthday present. 3 years later I'm now working on my 8th "Birthday Game" and it is really fun being able to look back to see how far they've come!

The general flow of these posts will give some context around when/how the game was given to them and then I will try my best to explain some of the inside jokes around each of them.
How to keep your local changes while pulling the code
Tags: github, git, todayilearned, beginners
Published: 2020-11-24 16:11:58

If you are working on a project in a team and you have used GitHub as your version control system then you might have come across a situation where you're working on some feature but the work hasn't finished yet and there are some update from other member and now you need to pull the code again from remote repository.

Now a problem arises here, while you're pulling the code your changes (work in progress) will be overridden and you will lose your code that wasn't committed. So in such scenarios, you can use a git command known as git stash.

## What is Git Stash?

Git stash will solve the problem faced in the above scenario. You can keep your changes similar to keeping a draft and then after pulling the remote repo code you can go back to draft version and apply the changes again.

So the usual flow will go like this :

1. You are working on some unfinished feature and you need to save this (draft)

                  git stash
                   or 
                  git stash save "feature X"

1. Now you pull the code

                  git pull origin master

1. Restore the work you were doing for feature X using below command

                  git stash apply

That's it. You are done ✅

For learning more about git stash you can refer to these resources :

### Links -

- [Git STASH Explained in Simple Words](https://www.youtube.com/watch?v=DeU6opFU_zw&feature=youtu.be)
- [Git Stash tutorial](https://www.atlassian.com/git/tutorials/saving-changes/git-stash)
The most famous companies that currently use Vue.js
Tags: vue, webdev, javascript
Published: 2020-11-24 16:06:09

A few days ago I landed on the **Google** career website, my attention was caught by an icon of my chrome extensions, the one of **Vue.js**, it was active.
This means that **Google uses Vue.js**. That surprised me a lot. Indeed in the last years, the interest in **Vue.js** increased significantly, but I didn't expect that a company like **Google** has already started to use it.

I started doing research about companies that are using **Vue.js/Nuxt.js** in production. I found out that some of the most interesting and famous companies in the world already use it.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/krs5f7telohvvx9dnr5w.png)

This is the list:
• **Google**
• **Apple**
• **Nintendo**
• **Behance**
• **Trivago**
• **Gitlab**
• **Trustpilot**
• **Dribbble**
• **Pornhub**
• **JustEat**
• **Glovo**
• **Zoom**
• **Nespresso**
• **The Motley Fool**
• **BitPay**
• **Square**
• **Livestorm**
• **BMW**
• **Louis Vuitton**
• **Upwork**
• **Namecheap**
• **Bilibili**


To learn more about where and how these companies are using **Vue.js**, read the article on Medium 👇

{% medium https://medium.com/notonlycss/google-apple-and-other-users-of-vue-js-e4505359e5d5 %}
Learning to code with a baby..
Tags: learning, parenting, freecodecamp
Published: 2020-11-24 15:48:37

Last year I made a person and my partner in crime helped bring her into this world. She's great and I was only planning to stay home from work for her first year and then covid hit. Life plans changed at that point and together we decided that it would be better for our family if I stayed home. Most child care options are more than what we spend on rent monthly. No joke people.. It's insane. 

I've always loved coding and had a natural affinity for it but for many reasons, most of which were my own mental health, I never fully pursued those inclinations. Now that I've taken a break from working for the first time in seventeen years I realized that I want to do for a career what I like to do for fun.

A Bootcamp sounded like the best option for me but I still need to take care of the kid which is a full-time job and then some. So after a lot of looking, I found Free Code Camp and jumped in. I feel like I'm drowning a bit but I know that will eventually pass. I wish I had a teacher or someone to ask questions to but that's what Google is for right?

Grammarly is telling me that there are errors in my punctuation, compound/complex sentences, word choice and incomplete sentences. So sorry if that made this difficult to read but it's done and the baby is waking up shortly so this will have to do. 

I'm looking forward to learning so many new things this next year! If you have any suggestions send them my way. I'm not sure I'll get to them but I will for sure look at them!
Day 5 -> 40 days of code.
Published: 2020-11-24 15:44:13

If we defined any variable and don't assign any value to it and if console.log() it then it will show undefined this happened with only var and let keyword.

In JavaScript hoisting is the default behavior of moving all the declaration at the top of the scope before code execution.
Hoisting is only happen with var.
To avoid hoisting always define a variable at the top of the program.

Let's see what does it means in coding part.
eg. 
console.log(x);//undefined
var x;

eg.
var a=10;
const print =()=>
{
console.log(a);//undefined
var a;
}
print();

Here we see that a prints undefined because of hoisting.
If we remove the var a from the print function then it will print a as 10.
Painting is Chemistry
Tags: engineer, career
Published: 2020-11-24 15:28:45

---
title: Painting is Chemistry
published: true
description: on the progression of the software engineer career
tags: engineer, career
cover_image: https://images.unsplash.com/photo-1456086272160-b28b0645b729?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=3289&q=80
---

# When the Painter Becomes the Chemist

A well kept secret of great painters is that their job eventually turns into a mix of chemistry, cooking, and trial and error science when they begin to make their own paint. Painters and other artists will spend decades coming up with the perfect recipe for the perfect paint that is able to convey story, emotion, color, or light in just the right way to make their art unique, interesting, and overall better.

Not all master painters make their own paint. Some will stick to what they know works well enough and exploit the substance in new and interesting ways. Or simply choose the best path to market the art to the masses. However, one might ask, if the painter is truly dedicated to the craft and it consumes their being, wouldn't they eventually dig into how the materials were made? I haven't even talked about brushes 😅

## Engineering Eventuality

A few years ago at the large software engineering org I worked in there was a well known general feeling that the platforms team were ivory tower elite engineers. That their job was nearly unattainable to the feature team engineers. After all, they not only know how to write code, they can write code that engineers use to write code. They know how to make paint.

Needless to say, the org didn't like the "ivory tower" mentality. It made feature team engineers feel like they were stuck and had no future on the team. Like the best would need to "graduate" to a platform team or risk career stagnation. So we pushed back against the concept and began to build a culture where you could be a great engineer on any team and platforms teams were just like any other.

But there was one problem with this approach: there was a hint of truth to the idea of graduating to a platforms team. It's not so much about the team, but about the idea of an engineer coming to a point in their career where they want to make their own paint. They have the knowledge and skill to push the tooling to the next level and multiply their impact and to give back to other engineers.

## The Next Generation of Painters

Senior engineers on feature development teams need not leave their team to begin making their own paint. In fact, there's opportunity to build a better connection between feature teams and platforms teams. Senior engineers can understand and contribute to feature team development, and help them better
Announcing the Hazelcast Heroes Program
Tags: opensource, community, hazelcast
Published: 2020-11-24 15:17:29

Hazelcast is built on open source foundations. It’s part of our DNA, and we strive to uphold open source values in our day-to-day work. This commitment allows external contributors to make Hazelcast better so that the whole community can benefit from a collective effort.

No contribution is too small, but, indeed, some of our community members constantly go “above and beyond” to help us improve our software. For a long time, we wanted to find a way to show them how much we value their time and effort. Today, I’m very happy to make it “official” by announcing the Hazelcast Heroes program.

At the heart of the program is transparency. We offer three contribution levels, and several ways are available to achieve a level. If you meet the requirements, you automatically reap the rewards associated with the level. That’s all! No shadow committee decides on obscure and unrelated criteria those who are deserving (or not).

Without further ado, please check <a href="https://hazelcast.org/community/heroes/">the program</a> and find your place in our <a href="https://hazelcast.org/community/heroes/members/">Hall of Heroes</a>. We have already added our first contributors, those who trusted us, and our mission early on.

In the following months, we will reach out to people who already have met our criteria and offer them to join the program. If you’ve met the requirements and we didn’t contact you, please <a href="https://slack.hazelcast.com/">join our Slack channel</a> and let us know!