teleren/devto huggingface dataset:
Some tips on naming in software development
Tags: devtips, productivity, naming
Published: 2018-08-19 07:42:50

---
title: Some tips on naming in software development
published: true
description: Some issues and solutions to naming variables/classes/functions/etc. in software development
tags: devtips, productivity, naming
---
{% youtube 7hMnPrv8JIU %}

Covering some issues (and solutions) I found when working in the industry related to naming conventions. They might not be much but if you apply them you are safe from creating a naming mess out of you project.

Tell me what you think. Constructive criticism is always welcome!
Donts and Dos for Conversations (and Interactions)
Tags: softskills, conversations
Published: 2018-08-19 04:20:49

---
title: Donts and Dos for Conversations (and Interactions)
published: true
description: Donts and Dos for Conversations (and Interactions)
tags: #softskills #conversations 
---

1. Don’t equate modesty with lack of expertise.
2. Don’t equate chattiness with expertise.
3. Don’t equate silence with lack of leadership.
4. Don’t equate loudness with leadership.
5. Don’t equate directness with rudeness.
6. Don’t equate questions with insubordination.
7. Don’t equate questions with disagreement.
8. Don’t equate politeness with agreement.
9. Don’t be a time hog.
10. Don’t wing it. Be prepared.
11. Be considerate.
12. Don’t be submissive.
13. Don’t be domineering.
14. Don’t jump to conclusion. Instead, seek clarification.
15. Have a conversation — listen, reason, speak, repeat.
16. Don’t interrupt when someone is speaking.

That's it for now :)
Would a compiled version of PHP be great
Tags: php
Published: 2018-08-19 03:38:33

---
title: Would a compiled version of PHP be great
published: true
description: Would a compiled version of PHP be great
tags: php,
---

Would a compiled version of PHP be great, that's the question that i've asked myself alot. Perhaps making softwares in PHP is pointless because the language is very, very slow but some people who doesn't know other languages than PHP would find it useful, what do you think.
Tiny Pro Tips for Windows
Tags: windows, showdev
Published: 2018-08-19 03:23:45

---
title: Tiny Pro Tips for Windows
published: true
description: Tiny pro tips for windows, especially "right click" context menu.
tags: windows,showdev
---

Hi, today I'll show you my favorite tiny tips for Windows.

Usually we use "right click" and see some context menu like this:

![context menu](https://thepracticaldev.s3.amazonaws.com/i/ka5xe0f41otjumsot7cr.png)

This right click context menu is editable by `regedit.exe`.

At this time I'll recommend some tips I use so many times.

## CMD.EXE HERE

Do you wanna open `cmd.exe` and change directory HERE? I do!!

![cmd-here1](https://thepracticaldev.s3.amazonaws.com/i/zsgvncnwyspe3gcitnhd.png)

![cmd-here2](https://thepracticaldev.s3.amazonaws.com/i/3lt0g0up5yvu1nx3zzfc.png)

Here is the two source code:

(directory and directory background)

**directory**

```
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\directory\shell\cmd-here]
@="CMD.EXE HERE"
"Icon"="cmd.exe"

[HKEY_CLASSES_ROOT\directory\shell\cmd-here\command]
@="cmd.exe /K \"cd /d %1\""
```

**directory background**

```
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\directory\background\shell\cmd-here]
@="CMD.EXE HERE"
"Icon"="cmd.exe"

[HKEY_CLASSES_ROOT\directory\background\shell\cmd-here\command]
@="cmd.exe /K \"cd /d %v\""
```

Just open `cmd.exe` and `cd` `%1`(or `%v` argument), easy enough?

To install it, you can download any `*.reg` file from this repository:

https://github.com/saltyshiomix/tiny-pro-tips-for-windows


## COPY PATH

Next, "COPY PATH" context menu.

![copy-path](https://thepracticaldev.s3.amazonaws.com/i/r1csbs91d4k6cuv2a4me.png)

Here is the three source code:

(file, directory and directory background)

**file**

```
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\copy-path]
@="COPY PATH"

[HKEY_CLASSES_ROOT\*\shell\copy-path\command]
@="cmd.exe /c \"(echo.|set /p=\"%1\")|clip\""
```

**directory**

```
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\directory\shell\copy-path]
@="COPY PATH"

[HKEY_CLASSES_ROOT\directory\shell\copy-path\command]
@="cmd.exe /c \"(echo.|set /p=\"%1\")|clip\""
```

**directory background**

```
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\directory\background\shell\copy-path]
@="COPY PATH"

[HKEY_CLASSES_ROOT\directory\background\shell\copy-path\command]
@="cmd.exe /c \"(echo.|set /p=\"%v\")|clip\""
```

## Conclusion

"CMD.EXE HERE" and "COPY PATH" are so useful when you develop on Windows machine.

I'm very happy if you use these useful tips :)

Thank you for your reading my article!

{% github https://github.com/saltyshiomix/tiny-pro-tips-for-windows %}
Private NPM Packages the Easy Way
Tags: npm, node, javascript
Published: 2019-09-18 23:17:15

---
title: Private NPM Packages the Easy Way
published: true
tags: 
  - npm
  - node
  - javascript
canonical_url: https://justwriteapps.com/private-npm-packages-the-easy-way
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bcllyjojtj95u38w4hwv.png
---

Suppose you just wrote an amazing node module that you want to break off into a package so it can be reused. The problem is that it contains some super-secret company stuff that can’t be shared and you can’t, or don’t want to, create a private npm organization. So what do you do now?

Believe it or not, if you’re using private git repositories then you already have everything that you need.

## Installing packages from git

Installing packages with git is actually really easy, if you use github, gitlab, bitbucket. `npm install` just requires a special package name to install from git. The format is `SERVICE:user/repo`.

So if your username is `stan` and you’re trying to install the `willzyx` repo from gitlab, then execute the following command:

```
npm install gitlab:stan/willzyx
```

## How about versions?

To install a specific tag or branch, add `#NAME` to the end of the package name. If you’re using npm version to update your package version, then you can add `#semver:^1.0` to install the latest version of 1.x.

## What about complex packages?

Sure, that’s great for plain-old javascript packages, but what if you’re using something fancy like Typescript? How do you build the package without checking in the build artifacts to your repo?

The `scripts` section of `package.json` has a few special scripts that run as part of specific npm commands. The one you want to define is `prepare`. This script is run after the package is installed.

To continue the typescript example, you could use the following prepare script:

```
"prepare": "node_modules/.bin/tsc"
```

Any development dependencies will be installed before the script is run, and cleaned up after.

## Now that it’s built, how do I cleanup?

This one is also pretty easy if you use git. Just like git has the `.gitignore` file, npm has a `.npmignore` file. `.npmignore` has the same format, and is applied after the prepare script has finished. This means you can add the source directory to `.npmignore` and it will magically disappear after you’ve installed the package.

* * *

Hopefully this article has encouraged you to create some packages of your own. If you have any other tips that I may have missed, please share them with me in the comments or on twitter.

* * *

## References

- [install | npm Documentation](https://docs.npmjs.com/cli/install)
- [scripts | npm Documentation](https://docs.npmjs.com/misc/scripts)
Usando iPad Pro como laptop principal
Tags: ipad, ipadpro, apple, showdev
Published: 2018-10-05 11:06:35

---
title: Usando iPad Pro como laptop principal
published: true
tags: iPad, iPadPro, apple, showdev
canonical_url: https://avelino.run/usando-ipad-pro-como-laptop-principal/
cover_image: https://thepracticaldev.s3.amazonaws.com/i/b6y93habh6478984286j.jpg
---

Após ler alguns blogpost sobre usar o iPad como computador principal e conversar com um amigo que trabalha no Google que usa em caso como “main laptop”, resolvi estudar os apps para iOS que eu teria que usar para atender a minha demanda do dia a dia como gestor e desenvolvedor. Como sempre a Apple faz um ótimo trabalho nos seus produtos, sempre pensando na simplicidade de uso do seu cliente final, ou seja, isso ajuda o onboard em qualquer dispositivo/software deles.

Continue lendo em [avelino.run](https://avelino.run/usando-ipad-pro-como-laptop-principal/).
Ruby Gem test_values
Tags: ruby, testing
Published: 2018-08-18 22:23:40

---
title: Ruby Gem test_values
published: true
description: 
tags: ruby, testing
---
I have put up a Ruby gem, <code>test_values</code>, with methods that return [named values](https://github.com/BurdetteLamar/test_values#named-values) for use in testing.

So far:

- <code>StringValues</code>
  - <code>strings_in_length_range(range, base_string='x')</code>
  - <code>strings_not_in_length_range(range, base_string='x')</code>
  - <code>string_of_length(length, base_string='x')</code>
  - <code>misspelled(string)</code>
  - <code>numerics_in_range(range)</code>
  - <code>numerics_not_in_range(range)</code>
- <code>NumericValues</code>
  - <code>numerics_in_range(range)</code>
  - <code>numerics_not_in_range(range)</code>

See gem [test_values](https://rubygems.org/gems/test_values) on RubyGems.

Much more to come.
Tips and Tricks to Finding Issues to Contribute to on Github
Tags: opensource, beginners, tutorial, tipsandtricks
Published: 2018-08-18 20:35:27

---
title: Tips and Tricks to Finding Issues to Contribute to on Github
published: true
description: A brief synopsis of how to find issues to contribute to on Github
tags: open source, beginner, tutorial, tips and tricks
---

Want to start contributing to open source?  Here is a quick primer on how to find issues to work on in GitHub.  

* Head over to [Github Issues Page](https://github.com/issues).  By default this is going to show you your open issues.  Look in the search bar and you'll see all the default qualifiers.  Mine looks like this: `is:open is:issue author:ignoreintuition archived:false `

* Create a set of filters to limit the result to projects you might be interested in working on.  Search for issues that are unassigned, recently updated, and  based on the language of your choice:`is:open is:issue is:public no:assignee language:javascript archived:false updated:>=2018-06-01`

* Next we can limit it to certain tags or keywords.  Tags are useful for things like finding issues that are good for beginners or where the author is actively seeking help:`is:open is:issue is:public no:assignee language:javascript archived:false label:"help wanted" updated:>=2018-06-01` 

* Lastely we want to sort our results.  You can sort by the number of interactions or when it was authored:`is:open is:issue is:public no:assignee language:javascript archived:false label:"help wanted" updated:>=2018-06-01 sort:interactions-desc` 

Documentation for all of the qualifiers can be found [here](https://help.github.com/articles/searching-issues-and-pull-requests/).  Hopefully, this will help you track down issues that you can work on and get you started with working on some cool new open source projects.
Gmail Login by Automating Browser
Tags: ruby, bash, productivity
Published: 2018-08-18 19:27:09

---
title: Gmail Login by Automating Browser
published: true
description: A Ruby script to sign in into gmail. Written using Watir gem and requires Firefox's gecko web-driver to be installed.. 
tags: Ruby, bash, productivity
---

#### Prerequisites
* Make sure you run latest version of firefox
* Make sure you have installed geckodriver (a firefox webdriver) in your ruby executable path
* Run ``` gem install watir ``` to install watir gem

### It's show time!! 

```ruby
require 'watir'                       
browser = Watir::Browser.new(:firefox)         # To launch the browser
browser.goto("https://www.gmail.com")
sleep 2
browser.text_field(class: "whsOnd zHQkBf").set "{ YOUR GMAIL ADDRESS HERE }"  
sleep 2
browser.span(index: 4).click
sleep 2
browser.text_field(name: "password").set "{ YOUR GMAIL PASSWORD HERE }"
sleep 2
browser.send_keys :enter
```

finally, cd to the script path in the terminal and type ``` ruby FILENAME.rb ``` Sit back and watch it in action!!
iPhone Video Downloader
Published: 2018-08-18 19:06:31

---
title: iPhone Video Downloader
published: true
description: How To Download Free Videos From All Sites To The iPhone?
tags: 
---

How To Download Free Videos From All Sites To The iPhone?

[![iPhone Video İndirme](https://ahmetcadirci.com.tr/images/iphonea-tum-sitelerden-ucretsiz-video-indirme-nasil-yapilir.png)](https://ahmetcadirci.com/2018/iphone-cihaza-tum-sitelerden-ucretsiz-video-indirme-nasil-yapilir/)

### 👉 [iPhone Video İndirme](https://ahmetcadirci.com/2018/iphone-cihaza-tum-sitelerden-ucretsiz-video-indirme-nasil-yapilir/)
Rails + Ember
Tags: ruby, rails, ember, jsonapi
Published: 2018-08-18 18:20:13

---
title: Rails + Ember
published: true
description: A screencast shows, how to connect Rails API to Ember frontend. 
tags: Ruby, Rails, Ember, JSON API
---
![Rails + Ember](https://thepracticaldev.s3.amazonaws.com/i/z1jitrrw18yms6vou0z6.png)


Screencast is available [Here](https://www.youtube.com/watch?v=6H26_ZRxapA)

Link to my blogspot [manojnaidu619.blogspot.com](https://manojnaidu619.blogspot.com/)
GitHub Traffic Viewer
Tags: showdev, gatsby, website, github
Published: 2018-08-17 20:42:17

---
title: GitHub Traffic Viewer
published: true
description: A website which shows a list of traffic graphs of your own GitHub repositories
tags: showdev, gatsby, website, github
---

I have built a website to be able to check all GitHub repo traffic views of an account:

https://github-traffic-viewer.netlify.com/ 

Source code is available at [GitHub](https://github.com/Mokkapps/github-traffic-viewer-website).

My motivation (taken from [my GitHub traffic CLI blog post](https://dev.to/mokkapps/my-first-npm-package-github-traffic-cli-3le0)): 

>Since I published my first projects on GitHub I really enjoyed viewing the traffic on my repositories. It is really interesting to see how many people visit or clone my repositories.

>Unfortunately it costs a lot of time to click through all available repositories and I was looking for a more elegant way.

Used technologies: Gatsby.js, Netlify, Firebase, React.js

![GitHub Traffic Viewer](https://s15.postimg.cc/x7qsfmga3/Screen_Shot_2018-08-17_at_22.15.07.png)

Let me know what you think about it and if it is also helpful for you!
Try Opening Dev.to Without Internet
Tags: devto, offline, tryitnow
Published: 2018-08-18 16:58:05

---
title: Try Opening Dev.to Without Internet
published: true
description: I Found Something amazing while trying to access dev.to without internet.
tags: dev.to, offline, tryitnow
---

I found this while trying to access Dev.to PWA from Android without internet access. It's Cool 😎

![Amazing Dev.to](https://thepracticaldev.s3.amazonaws.com/i/dnvjisaysxyu9qkmwxa9.png)
Minimalist yet powerful PHP JWT library
Tags: php, jwt, auth, showdev
Published: 2018-08-18 16:39:56

---
title: Minimalist yet powerful PHP JWT library
published: true
description: Minimalist yet powerful JWT library supporting RS*, HS* algos.
tags: php, jwt, auth, showdev
---

JWT is cool. But unfortunately almost all JWT implementations are too terse, complex, bloated and offer plenty of public APIs, complex configuration approach etc which can be intimidating and confusing for a starter trying to integrate JWT based auth in any PHP based web application. 
Here is a full featured, slim, dependency free, framework agnostic library that I wrote with simplicity in mind. It has been developed for several months already.

{% github adhocore/php-jwt %}

**Installation**
`composer install adhocore/jwt`

## Usage
```php
use Ahc\Jwt\JWT;

// Instantiate with key, algo, maxAge and leeway.
$jwt = new JWT('secret', 'HS256', 3600, 10);

// Only the key is required. Defaults will be used for the rest:
// algo = HS256, maxAge = 3600, leeway = 0
$jwt = new JWT('secret');

// For RS* algo, the key should be either a resource like below:
$key = openssl_pkey_new(['digest_alg' => 'sha256', 'private_key_bits' => 1024, 'private_key_type' => OPENSSL_KEYTYPE_RSA]);
// OR, a string with full path to the RSA private key like below:
$key = '/path/to/rsa.key';
// Then, instantiate JWT with this key and RS* as algo:
$jwt = new JWT($key, 'RS384');

// Generate JWT token from payload array.
$token = $jwt->encode([
    'uid'    => 1,
    'aud'    => 'http://site.com',
    'scopes' => ['user'],
    'iss'    => 'http://api.mysite.com',
]);

// Retrieve the payload array.
$payload = $jwt->decode($token);

// Oneliner.
$token   = (new JWT('topSecret', 'HS512', 1800))->encode(['uid' => 1, 'scopes' => ['user']]));
$payload = (new JWT('topSecret', 'HS512', 1800))->decode($token);

// Can pass extra headers into encode() with second parameter.
$token = $jwt->encode($payload, ['hdr' => 'hdr_value']);

// Spoof time() for testing token expiry.
$jwt->setTestTimestamp(time() + 10000);
// Throws Exception.
$jwt->parse($token);

// Call again without parameter to stop spoofing time().
$jwt->setTestTimestamp();
```

And for your peace of mind, allow me to mention that this library has been adopted for [official listing](https://github.com/jsonwebtoken/jsonwebtoken.github.io/pull/337).
Passionate or not passionate, that is the question?
Tags: discuss, beginners
Published: 2018-08-18 16:34:49

---
title: Passionate or not passionate, that is the question?
published: true
description: Sounds like Othello...
tags: #discuss #beginner
---

Being 42, working in Tech but no more as a developer, I wonder whether, unlike many other jobs, being a developer involves some kind of Passion for "Tech matters".

I mean, with languages and technologies continuously evolving, one must endlessly keep a close eye on new technologies.
I wonder whether this obligation (I guess it is an obligation for you folks, right?) is a pain in the ass (that is: "Shit, I have to take a look at the new 2.3.X version of framework XYZ") or a real new endeavour ("Yeah, New python version is now completely multi-threaded, let's take a look at the changelog :-) ). 
Or, maybe something in between and varying from one developer to another.
Tell me what you think. (I'd also like to have both women and men in tech's opinions)
Best
What is your approach to learning a new Javascript framework?
Tags: discuss, learning, vue, javascript
Published: 2018-08-18 15:51:15

---
title: What is your approach to learning a new Javascript framework?
published: true
description: Discussion about learning a new javascript framework
tags: discuss, learning, vuejs, javascript
---

I've started learning Vue.js as I need it for some projects at my job. Yet I feel that my approach - deep diving into it and trying to figure things out as I go - might not be the best way to do it. What are your opinions on this? How do you learn a new framework?

Thanks and I'm really curious to see your take on this.
Monitor your PRs and issues with Github OctoLenses
Tags: github, showdev, react, javascript
Published: 2018-08-18 15:25:19

---
title: Monitor your PRs and issues with Github OctoLenses
published: true
description: I built this Chrome Extension so that I could track my PRs/issues really easily, and I think this could help you too!
tags: #github #showdev #react #javascript
---

![OctoLenses dashboard UI](https://thepracticaldev.s3.amazonaws.com/i/u67c3u300ar72daze0lk.png)

/!\ This post is self-promotion, but I really feel like this could be useful to you 

I've recently been working on OctoLenses, a Chrome Extension allowing you to:
- Monitor your issues or pull requests by creating super-precise filters (see the screenshot below)
- Discover trending repositories (just like Githunt already does)

![Filter editor UI](https://thepracticaldev.s3.amazonaws.com/i/qv8ms914krruzf2yr5xy.png)

It's now good enough that I feel like I can show it to you, so here I am

It's built with React/Mobx, which I discovered to be a super powerful combo. If you didn't already try Mobx, I really encourage you to do so: it's super easy to work with and without all of the Redux boilerplate.

The repo is [here](https://github.com/rgehan/octolenses-browser-extension), and you can directly download the Chrome Extension [here](https://chrome.google.com/webstore/detail/octolenses/ghlblfakaklgkdmfejdlffbmpcaidoci).

I'm genuinely interested in hearing your opinion about it:
- What you like about it
- What you don't like about it
- What features would be great additions
- Any constructive criticism basically :)

Thanks for reading this!
What is the simplest code to explain a loop?
Tags: basics, anylang, discuss
Published: 2018-08-18 13:55:06

 ---
title: What is the simplest code to explain a loop?
published: true
description: 
tags: basics, any-lang, discuss
---

Here is my question for the discussion:

How would you write a code to explain a loop in the simplest possible way? Given that your audience is absolute beginners.

* PS: use any programming language!
What are/were your go to resources for learning Ruby and Rails?
Tags: discuss, ruby, rails
Published: 2018-08-18 13:54:38

---
title: What are/were your go to resources for learning Ruby and Rails?
published: true
description: Discussion on great resources to learn Ruby and Rails
tags: #discuss #ruby #rails
series: Go to resources
---

I'm completely new to Ruby, but am not a stranger to backend dev (.NET, Nodejs).

I've checked out the [Ruby Quick start](https://www.ruby-lang.org/en/documentation/quickstart/), but aside from that, what resources, whether they be books, online resources, videos etc. would you recommend to someone looking to get into the world of Ruby and Ruby on Rails?

Bonus points if you can suggest an e-book before I go camping in three hours? 😜
PHP XML Reader Example
Tags: php, webdev, xml, tutorial
Published: 2018-08-18 13:17:17

---
title: PHP XML Reader Example
published: true
description: PHP XML Reader Example
tags: #php #webdev #xml #tutorial 
---

Post Link : https://www.skptricks.com/2018/04/php-xml-reader-example.html


Today, In this tutorial we are going to learn how to parse an large XML file using XMLReader Class. The XMLReader extension is an XML Pull parser. The reader acts as a cursor going forward on the document stream and stopping at each node on the way.

<a href="https://www.skptricks.com/2018/04/php-xml-reader-example.html" >PHP XML Reader Example </a>

<img src="https://2.bp.blogspot.com/-1309kYe_Mpg/Wt1eMN6HNXI/AAAAAAAABhM/Hq0TAhsYfXIHCO86i1Lt_ih5HFjfA-bagCLcBGAs/s320/xml.jpg" />

The XMLReader extension was initially a PECL extension for PHP 5. It was later moved to the PHP source bundled as of PHP 5.1.0, and later enabled by default as of PHP 5.1.2


Advantages XMLReader : 
It is faster since it is not loading the whole XML into memory.
It can parse large and high complex XML document having more sub-trees.

XML Reader Features:
Retrieving portion of XML document based on current node.
Getting attributes based on index, name or namespace.
Parsing elements based on attribute’s index, name or namespace.
Validating XML document

Lets see the example where we are going to parse an xml tag from the external source file. Here we are using XMLReader to get to each node, then use SimpleXML to access them. This way, you keep the memory usage low because you're treating one node at a time and you still leverage SimpleXML's ease of use.

Download link : <a href="https://www.skptricks.com/2018/04/php-xml-reader-example.html" >PHP XML Reader Example </a>