teleren/devto huggingface dataset:
Refactor our last tutorial code - JavaScript Series - Part 29
Tags: javascript, tutorial, webdev, codenewbie
Published: 2020-02-26 19:32:55

In our last code there is a easy bug, if you just add a empty anime name then it inserted in the list.

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

To solve this we just need to add a logic that value string length should be greeter than 1 or as much character you want

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

This code is kinnda messy right ? Let's make it better together.
We'll start take the anonymous out for the addEventListener.

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

Now let's add a new function to get the input value 

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

We can break our code into a new function for just creating a list item 

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

Now we have another bug, did you noticed yet ? When we add a new anime list, the input field doesn't clear after that

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

To solve this we just need to add a single line to clear the value

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

Do you liked the tutorial ? Turn on the post notification to find what coming next!

Other posts of this series can be found here – https://blog.nerdjfpb.com/tag/javascript/

You can see the graphical version here
{% instagram B88Lkt3AQeY %}

Source Codes - { Check commits }
{% github nerdjfpb/javaScript-Series %}

Originally it published on [nerdjfpbblog](https://blog.nerdjfpb.com/javascript-part-29/). You can connect with me in [twitter](https://twitter.com/nerdjfpb) or [linkedin](https://www.linkedin.com/in/nerdjfpb/)!
Add New Anime On The List Using Event - JavaScript Series - Part 28
Tags: javascript, tutorial, beginners, codenewbie
Published: 2020-02-26 19:25:25

For this we need to have a html like -

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

Writing html codes for it. You can find the codes in github

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

Our first step will be selecting the ul, input & button and store it into variable 

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

Now we are going to add a event on the button. 

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

We need to create an `li item` for adding the new anime.

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

We need to add the `animeName` value inside of that `li` 

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

Now we just need to add this in our list `ul`

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

See the result in browser

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

Follow for see posts like this!

Other posts of this series can be found here – https://blog.nerdjfpb.com/tag/javascript/

You can see the graphical version here
{% instagram B85oTCTApE2 %}

Source Codes - { Check commits }
{% github nerdjfpb/javaScript-Series %}

Originally it published on [nerdjfpbblog](https://blog.nerdjfpb.com/javascript-part-28/). You can connect with me in [twitter](https://twitter.com/nerdjfpb) or [linkedin](https://www.linkedin.com/in/nerdjfpb/)!
How do you sell your services as a Web App Developer?
Tags: discuss, career, freelance, webdev
Published: 2020-02-26 19:18:51

---
title: How do you sell your services as a Web App Developer?
published: true
description: 
tags: #discuss #career #freelance #webdev
---

Hello everyone! This is my first post at dev.to I'm a self-taught <strong>Web developer</strong> and I have something on my mind and I would like to hear your thoughts about it.

I have been working as a full-stack MERN developer for a few months now, and I'm about to try to sell my services to some local businesses.

I already did make some websites for a few businesses out there, but now I would like to try it with Web Apps. I'm mostly doing CRUD apps with auth, not that much fancy algorithmic stuff.

Now, I wonder, what kind of apps would <strong>you</strong> try to sell (e.g Dashboard for keeping records about customers and sales) and what type of business would you contact (law office, some kind of medical clinic, etc...)?

I really appreciate your suggestions. Thanks in advance!
Dom Event Introduction - JavaScript Series - Part 27
Tags: javascript, tutorial, codenewbie, beginners
Published: 2020-02-26 19:16:23

Events are things like - clicking, hovering on something or typing anything on search. There can be many others event in a website. We can do something based on this event using javascript
We'll start playing just by using a button. Let's add a button to the html. You can find the code in github

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

You can read more about events in mdn web docs

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

We are going to use a mouse event for today's example

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

First we'll get the button using `document.querySelector('button')`
Second step will be add a EventListener. Which is going to run the event. addEventListener has 2 parameters. One is the event name, another one is function where we are going to write what happens if the event occurs.
Let's write some code now

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

See the result

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

Turn on the notification so that you can stay with me when I publish the next part of this!

Other posts of this series can be found here – https://blog.nerdjfpb.com/tag/javascript/

You can see the graphical version here
{% instagram B83E38Fg5FV %}

Source Codes - { Check commits }
{% github nerdjfpb/javaScript-Series %}

Originally it published on [nerdjfpbblog](https://blog.nerdjfpb.com/javascript-part-27/). You can connect with me in [twitter](https://twitter.com/nerdjfpb) or [linkedin](https://www.linkedin.com/in/nerdjfpb/)!
Received an 'A'
Tags: discuss, java, career
Published: 2020-02-26 19:15:03

I received an 'A' in this Java class and was exempt from the final. Well next up is CPT 187 Object Oriented Programming. It has been truly rewarding to be able to complete all of my classes up until now with an A. I still have a good ways to go but I can say that I am doing well in college. 



I should probably start searching for a job right? 

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/snp9qa5h1r4j4z1t8nqc.png)
Devlog #03 - Final day from My First Game Jam Winter 2020 - from 29/01 to 08/02
Tags: gamedev, devlog
Published: 2020-02-26 19:14:18

---
title: Devlog #03 - Final day from My First Game Jam Winter 2020 - from 29/01 to 08/02
published: true
description: what I released in my first game jam!!
tags: 
 - gamedev
 - devlog
series: My First Game Jam Winter 2020
---
***You can read this in [my personal blog](https://luturol.github.io/gamedev/Devlog-03-Final-Day-of-the-jam)***

# Finally released my first game

It's finished? No, it is not. It is cool? You good damn right (at least I enjoyed making and playing the microgame).

## What happend

The game jam was tough. I've learned a lot and got passionate with game dev. It's my first game that I made by myself. The result of the game jam isn't that good, but I'm proud of it.

In the middle of the jam I got sick and couldn't code till I get bether, so for some days I didn't code at all :(

The final days was insane. I've code a lot and try to fix some bugs, but in programming code = new bugs.

First, let's get to the results. You can play [Survive the night on itch](https://luturol.itch.io/survive-the-night).

What the game has:
 - A player with animations for: running, idle and attack.
 - A monster (Treant) with animations for: running, iddle and death.
 - Pathfinder for the Treant can find and run to the Player
 - Health bar for the Treant.

The game is simple for now. If you kill the treant, the game ends.

I got so happy with the results that even when it's finished I started coding to improve the game.

![Player running from Treant and after that fighting against it](https://media.giphy.com/media/LmBbMG7zESbCufj64z/giphy.gif)

##The next features that I want is:

 - Spawn for Treants
 - Adjust the ground layout. Because it doesn't fit the collor pallet and doesn't look natural.
 - Add a combat system for the Treants
 - Maybe add more creatures, but this would be made by me
 - Add a bonfire
 - Add light to the bonfire
 - Logo for the Survive the night
 - End screen when you win or loose.
 - Intial start game screen with the main character and the bonfire just vibing

This the features that I want to add for the next release.


Don't forget to eat clean and drink water.

Peace!! :v:
Comparison is Both a Thief and Bringer of Joy
Tags: beginners, motivation, codenewbie, learning
Published: 2020-02-26 19:00:08

It is common advice to avoid comparing yourself and your progress as a developer to others because it can lead to feelings of inadequacy and insecurity. Such comparisons are futile because they aren't an accurate representation of your progress and current status; there will always be someone "better" - whatever that term may mean to you in context. 

I support the above notion, but I also want to suggest the idea of a nourishing comparison: your current and past self. 

Think about where you were when you first began your journey into becoming a developer. In any case, you have gained some amount of knowledge since that point. Even if you only began moments ago, you have at the very least solidified the consideration to do so. It's easy to forget your starting points, especially when there is a daunting amount of knowledge on the horizon. But, the amount of knowledge you don't know does not negate the amount you have retained.

When I first began coding, it took me months to truly understand the fundamentals of concepts such as loops. I felt alienated by peers who grasped concepts I was struggling to understand. It took me a few years before I realized that, despite how refined it was, I had gained a valuable skill. Furthermore, there was nothing stopping me from continuing that refinement. 

Take a second to reflect on how far you've come. This a friendly reminder that all the knowledge you've gained in your process is worth something. 

Take pride in what you know, and with ♡, happy coding.
Programming first principles - 3. Requirements of software
Tags: programming, webdev, learning, development
Published: 2020-02-26 18:10:51

For the latest version of this post, see [Requirements of Software](https://www.programmingduck.com/blog/requirements-of-software/) which is published on [Programming Duck](https://www.programmingduck.com).

We need to start with what it is that we even want in software.

Let's start with the definition.

## Definition of software

"Software" is a combination of two words:

- Soft
- Ware

Soft means malleable, easy to change etc. In our case, it means that the code we produce must be easy to change.

Ware means a product, goods, etc. In our case the product we produce is a system of code.

## Requirements

Both of those words perfectly describe our requirements / what we're aiming to achieve when making software:

- A system of code.
- Which must work as intended.
- Which is easy to modify.

## Explanation for our requirements

The "ware" part should be pretty clear. Obviously we produce systems of code and the product has to work as intended.

The "soft" part may not be immediately obvious. So I'll try to explain it a bit more.

Code needs to change all the time, for many reasons.

1. Requirements change all the time.
2. While developing the code in the first place, we do not know its final form. We constantly re-design and re-write it.
3. Software needs constant maintenance and improvement, both in terms of bugs and new features.

Because it needs to change so often, we must make sure it is easy for us to change.

Here are the reasons code needs to change in more detail:

**Requirements change all the time**

This is just how it is. Stakeholders come up with new features or changes they want. Scope creep is a common occurrence. See [feature creep](https://en.wikipedia.org/wiki/Feature_creep) and [scope creep](https://en.wikipedia.org/wiki/Scope_creep).

**We constantly revise the code during development**

This is how we work.

If we could design the code upfront perfectly and then just write it, we would be done significantly faster. We would also use [waterfall](https://en.wikipedia.org/wiki/Waterfall_model) and be happy.

This is one reason why small development cycles are very helpful to us, which [agile](https://en.wikipedia.org/wiki/Agile_software_development) advocates. It's just the nature of our work that we constantly need to revise our code and modify it.

[Gall's law](<https://en.wikipedia.org/wiki/John_Gall_(author)>) also supports this. It essentially states that we can't create a system of code in one go, we have to continually revise and build it up.

**Software needs constant maintenance**

Even after initial development is finished and the stakeholders have accepted the product, software still needs constant maintenance and improvement. See [software evolution](https://en.wikipedia.org/wiki/Software_evolution).

## Conclusion

Our requirements are:

- A system of code.
- Which must work as intended.
- Which is easy to modify.
If we don't use redux-thunk or redux-saga, what do we use?
Tags: redux, react, question
Published: 2020-02-26 17:41:21

Only a portion of people who use React uses Redux, and only a portion of that uses redux-thunk or redux-saga:

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/kebhp3y8z67codudu3kn.png)
JS Data Privacy
Tags: discuss, javascript
Published: 2020-02-26 17:36:36

---
title: JS Data Privacy
published: true 
description: Wondering how dev protect data in Javascript
tags: #discuss #Javascript
---

Hello again 👋 

I’ve been grinding in the lab trying get a deeper understanding of Javascript. I’m currently working on a tiny project utilizing some ES6 features. I noticed while creating some classes that instance variables don’t seem to have much protection from outside interference. I would like to hear from other devs on how they go about protecting their instance data in production or if that’s even a valid issue?
BaseCS: Tree Traversal
Tags: computerscience, basecs, beginners, codenewbie
Published: 2020-02-26 17:25:43

---
title: BaseCS: Tree Traversal
published: true
description: We'll learn about what it means to search through a tree, and see how the order of traversal through a tree can change the way that we visit every node in the data structure.
tags: computerscience, basecs, beginners, codenewbie
series: BaseCS Season 2
cover_image: https://dw71fyauz7yz9.cloudfront.net/video-upload__d7d9b21bfffa3571c0e28b2b65230d87/thumbs-video-upload__d7d9b21bfffa3571c0e28b2b65230d87-00001.png
---

Today's episode of BaseCS explores tree traversal!

We'll learn about what it means to search through a tree, and see how the order of traversal through a tree can change the way that we visit every node in the data structure. Finally, we'll investigate the two strategies for visiting all the nodes in a tree structure: breadth-first search and depth-first search.

This whole series is sponsored by Heroku. A special thank you to Heroku for their ongoing support!

{% organization heroku %}
Zeplin 3.0 is out!
Tags: webdev, frontend, design, handoff
Published: 2020-02-26 17:21:34

Yesterday, the _[Zeplin Gazette](https://blog.zeplin.io/announcing-zeplin-3-0-3-million-users-2-new-features-1-source-of-truth-b9c08e36f963)_ announced the release of the new 3.0 version! And, within the announcement, there are 2 new big features:

### 1. Connected Components
Now developers can link their codebase to the design - using Storybook, GitHub, and even open it within your IDE; as they say:

> "a living source of truth"

This would give us flexibility and confidence, since we'll always get the component's current updated design/code.


### 2. The new Zeplin API
You can access your organizations, projects and your project's colors, text styles, screens... All within the new API - this way, you can create apps using the API, like a components' showroom.


Also, now we can customize our workflow using [extensions](https://extensions.zeplin.io/) - generating snippets from the uploaded layers, or export the texts. The possibilities are uncountable! 🚀

----

### If you don't know what is going on:
[Zeplin](https://zeplin.io/) is a handoff tool (often called handover or even handshake).


### What is a _handoff tool_?
Handoff tools help designers to export their designs (from Sketch, Photoshop...), and also can include stakeholders to the process, facilitating feedbacks about the job.


### Is there any handoff tool besides Zeplin?
Yes, there are many! I'm using Zeplin for a while; but the two below are worthy to check out:

- [Avocode](https://avocode.com/)
- [Marvel](https://marvelapp.com/)
Android testing help
Tags: help, android, kotlin
Published: 2020-02-26 17:15:25

last week I wrote this post:

{% link https://dev.to/fultonbrowne/i-need-to-start-writing-test-any-tips-1j72 %}

the advice was very useful and now almost all my repos have test on the most essential components, with one exception Ara-android I have been try to write unit test in that repo, but I am having trouble passing the `Activity` value to functions via the test, any tips?
Data Science is dying out
Tags: datascience, machinelearning, sql
Published: 2020-02-26 17:11:59

As a Data Scientist you usually do one of two things:
1. You comb through a pile of numbers derived from a SQL database, S3 or an HDFS cluster, in order to answer questions like "what keeps customers from converting?" and make predictions like "How much is a given user worth?".
2. You build Machine Learning models that do actual ongoing work in deployed applications.

For both of these task groups there exists a different job title with similar job description:

1. If you replace the SQL with Excel spreadsheets, then Analysts have been and still are answering the same kind of questions.
2. Software Engineers have been doing Machine Learning for a long time. Long enough that there now is such a thing as a Machine Learning Engineer.

Data Scientists distinguish themselves from Analysts by knowing a bit more about programming. They distinguish themselves from Software Engineers by knowing less about programming. They differ from both in that Data Scientists usually are expected to have gone to grad school and know a thing or two more about math. 

The "Data Scientist" job title was a way for industry to hire academics to do the kind of computational modeling that PhD candidates usually do in academia.
Also, it was a way for managers to feel cool, hip and with it.

**But it's dying.**

Why you say? Well, hear me out:

1. Analysts can and do learn how to write SQL queries. Often (not always) the math involved in answering business questions can actually be kept relatively simple, you often don't need a PhD to do it. Doesn't hurt though, I guess.
2. Machine learning is getting commodified. You no longer need a PhD and write your own backpropagation algorithm in order to do Deep Learning. (It's sad, I know.) All you need is GPUs and money to burn. -- Well, and feature engineering, you do need feature engineering from time to time. And some experience in the field and domain knowledge. But all those can be acquired by any bright individual.
Also, if your models are to do real work, they usually need to be integrated into real code. Here it comes in handy to know a thing or two about Software Engineering. Hence the rise in popularity of the ML Engineer.

Now I know for a fact that once you give a group of people in the professional class a title and a decent salary, they'll make sure their field will continue to be needed, come hell or high water. So, in fact: I lied.

Data Science is going nowhere, it's just that if you happen to not have Data Scientists on hand at your organization, don't fret, you still can get stuff done.

But if you decide you do desperately need someone to make sweet, sweet Science to your Data, you might be in luck: I'm a Sciencer of Data myself, possibly accepting clients. -- Or maybe I'm an ML Engineer, or something like that... Just give me a ring.
I feel a little overwhelmed by middleware, redux-thunk, redux-saga
Tags: react, redux, middleware, discuss
Published: 2020-02-26 17:03:42

I was a little bit shocked by Promises, Await / Async, Generators, a function that can "stop" in the middle and continue to run and all that.

And then I got shocked by the React virtual DOM and diff'ing, and the PureComponent, React.memo, and useMemo, all those to optimize re-rendering.

And then I got shocked by Redux, how the store, action, reducer, works.

And then by React-redux, how it has a `Provider` and the `connect` and how it makes a container and pass in the props to a component.

After I got through all those...

And then now, by Redux-thunk and Redux-saga... knowing thunk is a computer science concept that dated back to 1960 and redux-saga is all those await / async stuff...  both thunk and saga are just to do some Ajax.

Quite frankly, I am quite overwhelmed... does anybody feel the same?
Catching APNS on your Xcode Simulator
Published: 2020-02-26 16:54:27

https://blog.joshsoftware.com/2020/02/25/catching-apns-on-your-xcode-simulator/

As iOS developers, we have always faced the pain of testing the APNS (Apple Push Notification Services) only on actual iOS devices. Well, not anymore from Xcode 11.4 beta, because now we can test APNS on simulators also.
My Developer Setup
Tags: workstations, setup, webdev, javascript
Published: 2020-02-26 16:50:07

Hi all ! 
Finally I could upload my desktop setup and explain what things I have/use every day as Developer.
I work in company as Frontend Developer (Angular and AngularJS) , and as freelancer in my free time as fullstack (PHP, JS, etc)

![Desktop](https://dev-to-uploads.s3.amazonaws.com/i/vmyyhuev7lkaof0ekxiy.JPG)

![Desktop](https://dev-to-uploads.s3.amazonaws.com/i/a92ottbvjnxu9ks6ifoh.JPG)


## Hardware: 
* External Display Samsung SyncMaster T260N (vga, old, but it is ok :D )
* Notebook [Asus TUF FX705DT](https://www.asus.com/Laptops/ASUS-TUF-Gaming-FX705DD-DT-DU/)
    * Memory: 32 GB Ram
    * Processor: AMD® Ryzen™ 7 3750H Processor
    * Display: 17.3" (16:9) LED-backlit FHD (1920x1080)
    * Graphic: NVIDIA® GeForce® GTX 1650 , with 4GB GDDR5 VRAM
    * Storage: 512GB PCIe® Gen3 SSD
* Keyboard and Mouse Logitech
* Speakers 2.1 Genius
* 


### Software
The software that I use every day as developer in the mostly cases are:

* GNU/Linux Operating System. Now with Ubuntu 18.04 (sometimes I hop between different distros like Mint, Kubuntu, Fedora, Elementary, Antergos, etc)
* Visual Code Studio
* Sublime
* Slack
* Audacity
* Terminator
* Gisto
* DBeaver
* Filezilla
* Gimp
* Libreoffice
* MySql Workbench
* Meld
* Postman
* Robo3t
* Zoom
* Termius
* SoapUI
* Docker
* ZSH
* Chrome


### Chrome Extensions/Apps:
* Workona
* ClickUp
* TimenEye
* Bitwarden
* Awesome Screenshot
* AdGuard Adblocker
* The Great Suspender
* Deezer
* Loom
* AdGuard VPN
* JSON Formatter
* WhatRuns
* Unsplash Instant



And someone else :)



My post was inspired by :
https://dev.to/starbist/my-setup-54a6