teleren/devto huggingface dataset:
Oracle ADF REST Batch GET with query parameters?
Tags: help, oracle, java, adf
Published: 2019-06-04 18:31:51

---
title: Oracle ADF REST Batch GET with query parameters?
published: true
tags: help, oracle, java, adf
---

I'm working with the Oracle ADF REST API for an app. I want to be able to batch some requests, but I'm not seeing a way to do so while also passing URL parameters. I asked this same question on SO back in September and have gotten nowhere since then: https://stackoverflow.com/questions/52320613/oracle-adf-bc-rest-api-batch-get-requests-with-url-parameters
npm passes the 1 millionth package milestone! What can we learn?
Tags: npm, node, javascript, opensource
Published: 2019-06-04 18:15:39

---
title: npm passes the 1 millionth package milestone! What can we learn?
published: true
description: 
tags: npm, nodejs, javascript, opensource
canonical_url: https://www.lirantal.com/blog/2019-06-04_npm-passes-1-million-packages
---

![](https://thepracticaldev.s3.amazonaws.com/i/vpw5lbagyjslr79fy8aa.jpg)

June 4th is a historic date where the millionth package was indexed into the npm registry. npm is a package manager for JavaScript packages.

We wanted to share some insights that we thought are interesting and could get our hands on

## What are npm's most popular packages? how many vulnerabilities are associated with them?

Here are the top 3

* lodash: 3 vulnerabilities (1 high sev)
* request: 1 vulnerability (17 typosquatting attempts)
* chalk	0 vulnerabilities: (1 typosquatting attempt)

## How many downloads do the top 10 packages pull in?

* debug: >40 million weekly downloads
* kind-of: >34 million weekly downloads
* supports-color: >34 million weekly downloads




We wrote in further detail at 
https://snyk.io/blog/npm-passes-the-1-millionth-package-milestone-what-can-we-learn on more registry and community statistics such as how many npm packages were added in 2019? What are some interesting insights from the Node.js Foundation's package maintenance working group?


--- 

What can you share on your experience with npm? Happy to hear!
Do you know great Test Case/Suite tools (things like TestRail)?
Tags: help, discuss, testing
Published: 2019-06-04 18:15:02

We're currently using TestRail to manage a somewhat large suite of manual and semi-automated tests, but we're not really happy with it. 

We sometimes remove test-cases, and it seems to only allow you to remove a test from a suite by also removing it from all previous test runs, so the history is gone... 

Things we just miss from TestRail are a way to integrate our semi-automatic tests in some way (e.g. automated setup via a script by clicking a button in the test tool), and having a history of changes for a test-case. 

Do you use some great test case tool or have another awesome way to deal with non-automated tests? 
Is it TestRail and we've just not really figured it out yet?
Introducing our June 2019 sponsors
Tags: meta
Published: 2019-06-04 17:24:36

---
title: Introducing our June 2019 sponsors
published: true
description: Our wonderful sponsors are vital to the health of dev.to and it is great to work with companies contributing so much to the ecosystem.
tags: meta
cover_image: https://thepracticaldev.s3.amazonaws.com/i/1dx87zlkhx1uhzbrqdbl.png
---

This month, we return two May sponsors and introduce a new partner for the month.  Thank you to each of these companies for being a valuable DEV Community partner and supporter.

Please take a few minutes to explore their offerings and consider them for your company or next project.


## **DigitalOcean**

[DigitalOcean](https://do.co/devto) is a much-loved cloud computing platform. I'm always impressed by how well-built _and well-documented_ the DigitalOcean core products are. It's easier said than done, and they've been able to stay ahead of the curve.

DigitalOcean has been our longest-running supporter to date, and we're extremely thankful for their consistent support.  Their commitment to the developer ecosystem is crystal clear.

## **GoCD**

[GoCD](https://www.gocd.org/?utm_campaign=dev_to&utm_medium=dev_homepage&utm_source=logo_link&utm_content=gocd_homepage&utm_term=) is a continuous delivery tool built by Thoughtworks, one of the most reputable software development firms we've ever dealt with.

This is a feature-rich tool with some really fabulous visualization. Definitely worth considering for your organization or project. The product is very well supported through documentation, resources, and of course, the open source community. Very much worth checking out.

They've also put together a new page which allows you to take GoCD for a [test drive](https://www.gocd.org/test-drive-gocd/).


## **CodeStream**

[CodeStream](https://codestream.com/?utm_source=devto&utm_medium=recognition_post) is a tool that helps dev teams annotate, discuss and comment on code from within their editor/IDE. Like code comments, but fluid and collaborative.

We are integrating CodeStream into our own workflow at DEV, and will hopefully get it integrated into the broader open source project soon. CodeStream has the potential to improve cross-team communication in a big way.

***

These organizations are helping us build the best community we can. I urge you to check out their offerings if you are in the market for their services.

Happy coding ❤️
Every Android developer needs this library
Tags: android, eventbus, opensource, github
Published: 2019-06-04 15:49:34

   Imagine event bus that does not require calls to subscribe/unsubscribe for events. Eventex is not based on singleton and does not keep references to UI objects. Does not use reflection and there is no need for ProGuard rules. Just delivers messages when you need it! And yes, it is free open source on [GitHub](https://github.com/uchitel/eventex). **Every feedback is highly appreciated!**
How do you deal with lunch / mid-day fatigue?
Tags: productivity, work, discuss, health
Published: 2019-06-04 15:35:41

---
title: How do you deal with lunch / mid-day fatigue?
published: true
description: 
tags: productivity, work, discuss, health
---

I usually try to have a light lunch (low carb, less sugar) and make sure to stay hydrated and well-exercised throughout the day, but any tips/routines especially nutrition-wise are appreciated 🌞
Image Parallax and Blur with Tornis
Tags: parallax, tornis, scroll, blur
Published: 2019-06-04 15:35:22

---
title: Image Parallax and Blur with Tornis
published: true
description: Using the Tornis library to create a parallax and blur effect on a cover image while scrolling.
tags: parallax, tornis, scroll, blur
canonical_url: https://tj.ie/image-parallax-and-blur-with-tornis/
---

This was originally posted [on my site](https://tj.ie/image-parallax-and-blur-with-tornis/).


Heads up - it's probably best to leave out the blur for larger things, as it _destroys_ performance on Firefox. The transform still works well.

...

I updated my site recently and wanted to put a bit more focus on images. To do that, I included a space for cover images in articles. They take up a chunk of the top of the page, and I'll probably re-think this approach at some stage. Maybe I'll overlay the title and description over the image...

I wanted to include a bit of pizazz, and the image was the prime candidate. That's when I remembered [Tornis](https://tornis.robbowen.digital/), a library that lets you respond to changes in the viewport. I wanted it for the scroll position monitoring, and while I can add an event listener to `window` and do the same thing, I'm thinking of a few other use-cases for this library, so I figured why not give it a go.

Here's a stripped down version of the code I used on my site. In reality, I'm checking for the existence of the cover image before kicking anything off. I followed the examples on the Tornis site to get here.

``` js
const { watchViewport } = tornis
const coverImage = document.querySelector('.js-cover-image')

const updateValues = ({ scroll }) => {
  if (scroll.changed) {
      let scrollOffset = scroll.top / coverImage.clientHeight

      scrollOffset = scrollOffset < 0 ? 0 : scrollOffset
      scrollOffset = scrollOffset > 1 ? 1 : scrollOffset
      document.body.style.setProperty('--scrollY', scrollOffset)
    }
}

watchViewport(updateValues)
```

I'm checking to see if we've scrolled past the cover image and setting a value between 0 and 1 in the `scrollY` custom property. With this custom property, I'm setting the `filter` and `transform` property of the custom image.

I'm also using `position: sticky` so the image travels down the page with us.

``` css
.cover-image {
  position: sticky;
  top: 0;
  height: 240px;
  overflow: hidden;
  filter: blur(calc(var(--scrollY) * 10px));
  transform: translate(0, calc(var(--scrollY) * -30px));
}
```

For the blur, I'm multiplying `scrollY` by 10 pixels. So when `scrollY` is `0.3` that'll evaluate to a `3px` blur. The transform behaves in the same fashion so that it slowly crawls in the opposite direction of the scroll.

You can probably think of more creative uses, for example, the amazing forest scrolling on the Tornis homepage.

{% codepen https://codepen.io/tjFogarty/pen/qGyqwa/ %}
Guide - JavaScript and React unit tests basics
Tags: javascript, react, beginners, testing
Published: 2019-06-04 14:33:39

---
title: Guide - JavaScript and React unit tests basics
published: true
description: The first part of a two-part series about frontend unit testing. This part focus on the concepts.
tags: javascript,react,beginners,testing
cover_image: https://thepracticaldev.s3.amazonaws.com/i/os692znnkyantp97e15s.png
---

I'm writing a two-part guide to JavaScript and React unit tests. The guide is aimed at people with some JavaScript experience but that never have written any tests and/or don't know the concepts.

The first part covers the concepts and the second will be a tutorial to actually write the tests.

You can find the first part of the guide [here](https://medium.com/feedzaitech/javascript-and-react-unit-tests-basics-324e93dfc64c).

Let me know if you any comments, feedback is welcome!
Recursive imports is the Achilles' heel of Python
Tags: python, productivity
Published: 2019-06-04 14:33:08

Python is a beautiful language syntactically and is also good for readability and maintainability. But when it comes to weaknesses, I think it's biggest drawback is *recursive imports*.

This weakness stems from the very idea of having `modules` for re-usability which  no other popular language has to my knowledge. In some like `java` and `C#`, everything is a class, so this kind of problem never occurs. In others like `PHP`, procedural code is allowed but they use the simple `require` or `include` constructs to add reusable code.

With python, there are many circumstances where X module imports Y and at the same time, the Y module needs to import an object from X. This is a very common scenario once you start developing complex apps. For example, this could be seen even in a very basic `flask` app which has its own package (lets say `app`), an init module (`__init__.py`) and a routes module (`routes.py`), something like this:

	└───app
		│   __init__.py
		│   routes.py


This is a very simple `flask` app where I define the actual flask object in the init module:

	# c:\source\app\__init__.py
	from flask import Flask
	from app import routes

	app = Flask(__name__)

Now, let me define the routes.py as follows:

	# c:\source\app\routes.py
	from app import app

	@app.route('/')
	@app.route('/index')
	def index():
		return "Hello, World"

The problem is that this code won't work! For the simple reason that init module tries to import routes but the routes module will fail (simply because the routes module tries to import the app.app object from init module which hasn't been initialized yet).

This is the problem of recursive import. To fix this, I'll have to ensure that the routes module is always imported **after** the app object has been initialized as follows:

	# c:\source\app\__init__.py
	from flask import Flask

	app = Flask(__name__)

	from app import routes

As you can see, recursive imports can be tricky to deal with in an otherwise structured and seemingly easy language like python.
Launching my first side project, Released!
Tags: showdev, webdev, productivity
Published: 2019-06-04 14:32:45

---
title: Launching my first side project, Released!
published: true
description: Automate the release process for your software with Released.
tags: showdev,webdev,productivity
cover_image: https://res.cloudinary.com/oh-see-media/image/upload/v1559658748/released-logo-720p_mpt60v.jpg
---

Hi all!

I'm launching my first official side project today, Released!

Released helps you with software versioning, generating release notes, sending notifications, and publishing your application.

There's a free plan available to all users which allows you to import one repository and play around with Released!

Otherwise, for the first week of launch, I'm offering a 50% discount on the yearly plan ($50 USD down from $100!).

Check it out at: https://releasedapp.com

I also have a walk through video of the application you can check out:

{% youtube olI0w9daOQ8 %}
Top 5 DEV Comments from the Past Week
Tags: bestofdev
Published: 2019-06-04 14:28:40

---
title: Top 5 DEV Comments from the Past Week
published: true
description: Highlighting some of the best DEV comments from the past week.
tags: bestofdev
cover_image: https://res.cloudinary.com/practicaldev/image/fetch/s--7VrAA2ln--/c_imagga_scale,f_auto,fl_progressive,h_420,q_auto,w_1000/https://thepracticaldev.s3.amazonaws.com/i/qmb5wkoeywj06pd7p8ku.png
---

This is a weekly roundup of awesome DEV comments that you may have missed.  You are welcome and encouraged to boost posts and comments yourself using the **[#bestofdev](/t/bestofdev)** tag.

**[How many software developers does it take to screw in a lightbulb?](https://dev.to/ben/how-many-software-developers-does-it-take-to-screw-in-a-lightbulb-1no6)**  The community supplied the punch line.  None more enjoyed than @jackharner's contribution:
{% devcomment bag4 %}

@steveblue offers a nice list of concerning signs in response to **[What are some red flags to look out for in the first few weeks of a new dev job?](https://dev.to/ben/what-are-some-red-flags-to-look-out-for-in-the-first-few-weeks-of-a-new-dev-job-172g)**:
{% devcomment bc79 %}

Replying to **[If the World Wide Web were re-created today with no legacy dependencies, how would it be different?](https://dev.to/ben/if-the-world-wide-web-were-re-created-today-with-no-legacy-dependencies-how-would-it-be-different-4anc)**, @stegriff chimes in with an interesting tidbit:
{% devcomment bb8a %}

I really liked this thread — **[What's your coding origin story?](https://dev.to/kendalmintcode/what-s-your-coding-origin-story-465l)** @nikolicstjepan talks about something that I'm sure a lot of fellow gamers turned programmers can relate to:
{% devcomment bb8i %}

@david_j_eddy provides their answer to **[What is your favorite interview question?](https://dev.to/peter/what-is-your-favorite-interview-question-2a)**  I use this myself and it's a great way to get the conversation flowing:
{% devcomment b82j %}

See you next week for more great comments ✌
I am not a Hacker
Tags: discuss
Published: 2019-06-04 14:23:23

---
title: I am not a Hacker
published: true
description: 
tags: #discuss 
---
The term hacker seems to be enjoying great popularity, with websites like HackerNews, HackerNoon, HackerRank, recruiting events like HackerX or the all-too-familiar and ever prevalent "hackathons". It's a hacking bonanza.

I have never referred to myself a hacker and every time a go to a HackerX event or a hackathon I feel uncomfortable and out of place.

When are we going to be past this hacking tomfoolery, hacking "culture", hackers, hackathons?
Create a Dark Mode of your app using Styled Components
Tags: react, javascript, css, styledcomponents
Published: 2019-06-06 15:17:36

---
title: Create a Dark Mode of your app using Styled Components
published: true
tags: react,javascript,css,styled-components
canonical_url: https://medium.com/swlh/create-a-dark-mode-of-your-app-using-styled-components-a44bc5a59330
---

[![](https://cdn-images-1.medium.com/max/1104/1*1dIT1eutfcJY3iyBlXEVLQ.png)](https://medium.com/swlh/create-a-dark-mode-of-your-app-using-styled-components-a44bc5a59330?source=rss-fd6ce33dbef3------2)

Learn how you can join the groups of applications offering a Dark Mode using React and Styled Components

[Continue reading on The Startup »](https://medium.com/swlh/create-a-dark-mode-of-your-app-using-styled-components-a44bc5a59330?source=rss-fd6ce33dbef3------2)
When are you most likely to be active on Dev.to?
Tags: discuss, meta
Published: 2019-06-04 14:19:07

When are you most likely to be active on Dev.to?

Work hours? Nights? Weekends?

Me I'm most likely to be lurking here on nights and weekends. I'm definitely a night owl, so chances are good you won't find me here in the morning lol

What about you? When are you most of dev.to?
I need a course for that...
Tags: github, newbie, beginners, overwhelm
Published: 2019-06-04 14:14:28

Ok, friends, I'm just going to let you all know, up front, that I am a complete newbie to this whole coding/developer game. I don't know what GitHub is for, much less how to navigate through it and even less, envision how I could possibly use it. I don't know what Gatsby is. I had to look it up. I don't know what React is. I don't know how to use any of it and I am beginning to feel a bit overwhelmed. Is there a manual or course somewhere to help me understand how it all fits together? No? I can't be the only one who feels this way.
I am learning to code with HTML5 and CSS. I have just started an overview of Bootstrap3 and will be moving on to Bootstrap4 soon. I'm enjoying what I have learned so far and am using Freecodecamp for extra practice in some of these areas. My logical mind tells me to stick with the basics, and add stuff later. But then I come to one of the online communities I am told I should join, and, Wow...just, wow.
I know I'm not alone in having a family and a job. I am a busy person and trying to learn to code with any extra time I can carve out for myself. I'm sure that the time limits are contributing to my feelings of 'Holy Crap! How can I possibly learn all this sh..stuff?'
So if you're out there in developer land, feeling like me, comment here. Or, if you can relate to what I am saying and can help me feel a little less like I'm losing my mind, I could use some encouragement.
AngularJS, IE11, and the Importance of Research
Tags: javascript, angular, internetexplorer, documentation
Published: 2019-06-04 13:48:57

---
title: AngularJS, IE11, and the Importance of Research
published: true
description: Or, How I Learned to Stop Worrying and RTFM
tags: javascript, angularjs, internet explorer, documentation
---

Yesterday, a bug was discovered in an app I maintain: a single text input was disabled in IE11 when it shouldn't be. I immediately jumped in, believing it to be a mis-fire with an `ng-disabled` statement. Nearly two hours later, zero progress was made. This seemed like such a simple fix on first blush!

It made no sense. The `placeholder` text was set as the `value`. The `ng-model` binding didn't update in the controller on text entry. The `submit` action did nothing when I hit enter, but worked on clicking the submit button for the form. The input fired a test function from an `ng-click`, but didn't from `ng-focus` or `ng-blur`. I decided to cut my losses and leave it for the morning.

Today, after (not really) sleeping on it, I took another look. I broadened my search terms, hoping to get hint of a solution. A number of searches later, the secret words ended up being: **`angularjs strange form behavior ie11`**.

Embarassingly, that (in hindsight) obvious phrase led me to the official AngularJS Developer Guide, which describes _exactly_ what I was seeing in my app:

> Using the `disabled` attribute on an element that has descendant form controls can result in unexpected behavior in Internet Explorer 11. For example, the value of descendant input elements with `ng-model` will not reflect the model (or changes to the model), and the value of the `placeholder` attribute will be inserted as the input's value. Descendant select elements will also be inoperable, as if they had the `disabled` attribute applied to them, which may not be the intended effect. To work around this unexpected behavior, 1) avoid using the identifier `disabled` for custom attribute directives that are on elements with descendant form controls, and 2) avoid using `disabled` as an identifier for an attribute passed to a custom directive that has descendant form controls.
>
> <cite>&mdash;[AngularJS: Developer Guide: Internet Explorer Compatibility](https://docs.angularjs.org/guide/ie)</cite>

Upon examining the parent components, I found the source of my pain. _Somebody_ on my team (of one) had used `disabled` as an identifier for a binding on the parent component, which falls into the category of custom directives that have descendant form controls! By simply renaming the binding to `isDisabled` and using the attribute `is-disabled`, the entire issue disappeared.

Let my over-confidence be a warning to others: ***Read. The. F\*\*\*ing. Manual.***
Add spaces to the Dock in macOS
Tags: macos, dock, tips, terminal
Published: 2019-06-04 13:14:57

---
title: Add spaces to the Dock in macOS
published: true
description: A simple way to increase the productivity of your macOS Dock.
tags: macOS, Dock, Tips, Terminal 
cover_image: https://thepracticaldev.s3.amazonaws.com/i/84cjsye4w990nvgk8qvy.png
---
If you want to take greater control of how apps are organised on your macOS Dock, a great way is to add spaces between groups of apps.

Run this one-liner in your Terminal to create a new blank space in your Dock

```shell
defaults write com.apple.dock persistent-apps -array-add '{"tile-type"="spacer-tile";}' && killall Dock
```

What this does is add a new ‘spacer-tile’ item to the Dock’s ‘persistent apps’ array — the list of apps which are permanently in the Dock — and then reloads the Dock.

The new space will be added to the end of the Dock. Of course it’s invisible so the best way to confirm it’s there is to open any other app which isn’t currently in your Dock. You should now see a space which you can drag into the desired position.

To create more spaces, just run the command again.

Here is what my Dock looks like. I like to group my apps by function.

![macOS Dock with Spaces](https://thepracticaldev.s3.amazonaws.com/i/84cjsye4w990nvgk8qvy.png)