teleren/devto huggingface dataset:
Using SQL or NoSQL
Tags: sql, nosql
Published: 2021-04-23 13:10:22

This Monday on an interview I was asked if I was supposed to start a project how do I know whether I use SQL or NoSQL?
And to tell the truth I was confused and puzzled that I really never thought of when to use them?

I forgot about that question until now and then I searched for when to use them the first thing was the actual implementation of them.

# Structure
SQL is structured while NoSQL can accept unstructured data.
SQL accepts gives you a form and asks you to fill it exactly as is.
But when talking NoSQL you can provide any data to any document. But then you have to check this information when you retrieve that document.

# Transaction
SQL is transactional while NoSQL provides a document-level-based transaction but not what we look for.
Think you are programming some wallets and Jack transfers 100 dollars to Jills wallet.
You write a transaction in SQL like:
```sql
BEGIN TRANSACTION
UPDATE Jack.Money -= 100;
UPDATE Jill.Money += 100;
COMMIT
```
This way both of them should happen so if the first command works and the second one fails then Jack's money doesn't go to waste.
But with NoSQL, we have to check their documents and then request again. (I might be wrong about this)
Also, this answer explained how NoSQL databases have lighter transactions.
{% stackoverflow 2214420 %}
What it is like to work as a software quality assurance?
Published: 2021-04-23 12:58:32

I've been working as a software quality assurance in [igloocompany](https://igloocompany.co/), a smart lock company, for more than 1 year now. I was not really familiar of the title before but I interested in the ecosystem of the smart locks.

## What is software quality assurance?
A software quality assurance or QA mostly make sure all the softwares that developed by the developers are working fine and the costumers as the end users not facing any bug. In igloocompany, they've build many software such as igloohome mobile app, iglooworks mobile app and dashboard, etc (coming soon project). 

## What is software QA doing?
My flow when working as a software QA is if there's a new feature -> the developers will build it until it ready to test -> the QAs test it -> if found a bug, report it -> until there's no bugs left -> the features release. In short like that, but the interesting part is, when I'm testing the app for example, I also got my hand to test the various type of smart locks from a padlock until locks that installed on the door (mortise, deadbolt, etc). So, I can learn how it works, what the technology that they used to make anything posibble to happen, what's next in the future to improve everything (user experience, battery consumption, seamless integrity, etc).

The skills that needed as a software QA are attention to detail, understand about tech, time management, curiosity. We learn how to manage task, how to find a hidden bugs that may missed by the developers when they build the app because their focus is to make the feature, our focus as QA is to find bugs until we find none and test a new feature before it release.

In almost 5 years I involve in the tech industry from when I was in college until now, I think the Quality Assurance position is a new one. The fast growing of the tech world maybe become one of the reason that position was born. Are you working as a software QA too? If so, lets tell your experience here.
Firebase Storage – Upload Data from Memory, Local File, Stream | Android
Tags: firebase, android, stream, localfile
Published: 2021-04-23 12:55:52

https://grokonez.com/android/firebase-storage-upload-file-from-memory-local-stream-android

Firebase Storage – Upload Data from Memory, Local File, Stream | Android

Firebase Cloud Storage helps us upload and share rich content data. Data is stored in a Google Cloud Storage bucket. With Firebase, we can perform robust operations (download/upload) regardless of network quality with strong security (<strong>Cloud Storage</strong> integrates with <strong>Firebase Authentication</strong>) and high scalability.

In this tutorial, we're gonna look at ways to upload data from Memory, Local file, Stream in an Android App using Firebase Storage.

More practice:
- <a href="https://grokonez.com/android/firebase-storage-download-files-to-memory-local-file-android">Firebase Storage – Download Files to Memory, Local File | Android</a>
- <a href="https://grokonez.com/android/firebase-storage-get-list-files-display-image-firebase-ui-database-android">Firebase Storage – Get List of Files example – Image List | Android</a>

<!--more-->
<h2>I. How to upload file</h2>
To use the Firebase Storage to upload data, we need:
- add Firebase to Android App & enable Firebase Auth
- create a reference to the full path of the file, including the file name
- upload data using <code>putBytes()</code> for in-memory data, <code>putStream()</code> for stream data, <code>putFile()</code> for local file.
<h2>0. Add Firebase to Android App</h2>
<h3>0.1 Create Firebase Project and Add Firebase Config file</h3>
Follow this <a href="https://grokonez.com/android/how-to-integrate-firebase-android-app-android-studio#2_Create_Project_on_Firebase">guide</a> to create Firebase Project and generate <strong>google-services.json</strong> file and move it  into your Android App root directory. You don't need to get SHA-1 Key in this example.
<h4>0.2 Add dependencies</h4>
- <strong>build.gradle</strong> (project-level):
<pre><code class="language-java">
buildscript {
    // ...
    dependencies {
        // ...
        classpath 'com.google.gms:google-services:3.1.0'
    }
}</code></pre>
- <strong>build.gradle</strong> (App-level):
<pre><code class="language-java">
dependencies {
    // ...
    compile 'com.google.firebase:firebase-auth:11.0.2'
    compile 'com.google.firebase:firebase-storage:11.0.2'
}

apply plugin: 'com.google.gms.google-services'
</code></pre>
<h3>1. Enable Firebase Auth</h3>
By default, only authenticated users can read or write data, so we need Firebase Authentication for next step.
Go to Your <a href="https://console.firebase.google.com" rel="nofollow">Firebase Project Console</a> -> <strong>Authentication</strong> -> <strong>SIGN-IN METHOD</strong> -> Enable <strong>Email/Password</strong>.

https://grokonez.com/android/firebase-storage-upload-file-from-memory-local-stream-android

Firebase Storage – Upload Data from Memory, Local File, Stream | Android
Sending just 'hi' in Slack/Teams. OK, or really not OK?
Tags: watercooler, management
Published: 2021-04-23 12:44:38

We've probably all been there. A colleague/manager/rando sends you a Slack or Teams message that just says "Hi".

No context.

{% tweet 1383117983321509889 %}

There are two schools of thought about this...

## 1. It's rude to send 'hi'

 > Yes? Hello? Should I be worried?

This is where I'm at. 'Hi' sends ice through my veins. Something is happening and it could range from the inconsequential to the very bad, and I'm at your mercy until you decide it's time to tell me more!

In fact, we are such a passionate slice of the population, there's even a domain for it... <https://www.nohello.com/>

Saying 'hi' and waiting for a response is like phoning someone up then putting them on hold. 

## 2. It's polite to send 'hi'

 > Ah, I see you want my attention, thank you for the note; I'll let you know when I can attend to this conversation...

Others will say that the reason they send 'hi' (or they don't mind receiving it) is that it gives them a chance to acknowledge the conversation in their own time.

Now, I've found that this is rarely the case, because generally, 'hi' is followed by the actual message in a time ranging from 20 seconds to several minutes.

But nevertheless, I accept that *some people* might actually have this habit because they think it's more polite.

## What's your view?

Are you for or against 'hi' messages? Do they scare you or chill you, or somewhere in between?

Lmk in the comments, dear devs...
Firebase Storage – Download Files to Memory, Local File | Android
Tags: firebase, storage, android, localfile
Published: 2021-04-23 12:37:34

https://grokonez.com/android/firebase-storage-download-files-to-memory-local-file-android

Firebase Storage – Download Files to Memory, Local File | Android

In previous <a href="https://grokonez.com/android/firebase-storage-upload-file-from-memory-local-stream-android">post</a>, we had known the way to upload data. This tutorial shows you how to download Files to Memory, Local File with Firebase Cloud Storage.

Related Post:
<a href="https://grokonez.com/android/firebase-storage-upload-file-from-memory-local-stream-android">Firebase Storage – Upload Data from Memory, Local File, Stream | Android</a>

More Practice:
<a href="https://grokonez.com/android/firebase-storage-get-list-files-display-image-firebase-ui-database-android">Firebase Storage – Get List of Files example – Image List | Android</a>

<!--more-->
<h2>I. How to download file</h2>
To use the Firebase Storage to download file, we need:
- add Firebase to Android App & enable Firebase Auth
- create a reference to the full path of the file, including the file name
- download file using <code>getBytes()</code> for in-memory data, <code>getFile()</code> for local file.

To know way to add Firebase to Android App & enable Firebase Auth, please visit previous post:
<a href="https://grokonez.com/android/firebase-storage-upload-file-from-memory-local-stream-android">Firebase Storage – Upload Data from Memory, Local File, Stream | Android</a>

This tutorial bases on the code from that post, and continues with download methods.
<h3>1. Create a Reference</h3>
<pre><code class="language-java">
// From our app
StorageReference storageRef = storage.getReference();

// With an initial file path and name
StorageReference pathReference = storageRef.child("images/javasampleapproach.jpg");

// To a file from a Google Cloud Storage URI
StorageReference gsReference = storage.getReferenceFromUrl("gs://javasampleapproach-storage.appspot.com/images/javasampleapproach.jpg");

// From an HTTPS URL
StorageReference httpsReference = storage.getReferenceFromUrl("https://firebasestorage.googleapis.com/v0/b/javasampleapproach-storage.appspot.com/o/images%2Fjavasampleapproach.jpg");
</code></pre>

More at:

https://grokonez.com/android/firebase-storage-download-files-to-memory-local-file-android

Firebase Storage – Download Files to Memory, Local File | Android
3D Cards
Tags: codepen, css, html, javascript
Published: 2021-04-23 12:32:43

I interesting to make complex 🤓 things with javascript, CSS, and HTML so I make a search on complex things in javascript and CSS and I choose 3d cards so I made it and would like to share that work 💖😍

[Arabic Voice] How I Did That?
{% youtube JEFUNZ8WyXs %}


{% codepen https://codepen.io/mahmoudshahin1111/pen/LYxMmwx %}
Blank spaces : how to deal with nothing in API design
Tags: code, development, ux, api
Published: 2021-04-23 12:39:07

---
title: Blank spaces : how to deal with nothing in API design
published: true
date: 2021-04-23 12:22:00 UTC
tags: code,development,ux,api
canonical_url: https://craignicol.wordpress.com/2021/04/23/blank-spaces-how-to-deal-with-nothing-in-api-design/
cover_image: https://craignicol.files.wordpress.com/2021/04/wp-1617831687162.jpg?w=2400
series: your-api-sucks
---

Consider the following HTTP endpoint:

`GET /{user}/appointments`

How do we deal with nothing?

## Nothingman

🚫 If the user doesn’t currently exist, return 404 – this informs the caller that nothing can be done with this resource until it is created or recreated.

🙈  If the user exists, but we want to protect against username enumeration, return 404 – this removes a route for malicious agents to identify actual users, perhaps prior to a password brute force. They may decide this endpoint is less likely to have the full protections afforded to the login endpoint. This endpoint should also avoid indirect enumeration, for example, returning immediately for “user doesn’t exist” and delayed for “user exists but we’re pretending because security”

🔒 If the user exists but the caller doesn’t have permission to see their appointments, return 403 – the caller will have to log in or ask someone who has access.

## Empty time

**_Given_ the selected user exists**

🔐 If this user does not support appointments, return 404 – these resources can’t be found.

🗓 If this user does support appointments, but there are none, return an empty list.

_ **note** : some APIs will return `204 No Content` in this scenario. 204 should only be used for POST or PUT requests to indicate server action was a success, and there’s no data to send back_

## Empty space

**_Given_ the selected user exists  
_And_ they have at least 1 valid appointment (see the business rules for what “valid” means)**

📺 If the appointment has no location (because online conference links are saved elsewhere in the appointment body) then no location property should be returned

❔ If the appointment has no location (because it is unknown) then the location property should be returned with no data (the empty string)
WHICH LATEST CELLULAR NETWORKS ARE BETTER 4G, 5G OR STARLINK
Tags: 5g, 4g, 3g, starlink
Published: 2021-04-23 12:20:38

<b>Cellular networks</b> made from “cells,” which are areas of land that are typically hexagonal, have a minimum of one transceiver cell tower within their area and use various radio frequencies. Cell towers hook up with one another handy off packets of signals—data, voice, and text messaging—ultimately bringing these signals to mobile devices like phones and tablets that act as receivers.

Cellular Network generations today are the 3rd generation (3G) and predominantly the 4th generation (4G). The 5th generation (5G) is that the next generation of cellular communication, expected to be launched across the planet by 2020.

What is Cellular Network and how it works?
Networks are high-speed, high-capacity voice and digital communication networks with enhanced multimedia and seamless roaming capabilities for supporting cellular devices.

Cellular network technology is developed for a mobile radiotelephone to exchange high-power transmitter/receiver systems. Technologies used for lower power, shorter range, and more transmitters for data transmission.

<b>Key differences between 4G and 5G</b>

The biggest differences between 4G and 5G are going to be peak capacity and latency. The peak capacity of the 5G UWB sector is in Gbps compared to 4G in Mbps.

4G and 5G is bandwidth size. 5G should be ready to support more devices in the longer term, additionally to the network demands of connected vehicles and other devices within the Internet of Things.

5th generation technology is smarter, more energy-efficient, and faster than any of its predecessors. Some predict it’ll be nearly 10 times faster than your current network if you’re on 4G.

The maximum download rate of 4G technologies is 1 Gbps, while the maximum download rate of 5G technology is 2.5 Gbps.

4G can be used for high-speed applications, mobile TV, wearable devices, While 5G can be used for high-resolution video streaming, remote control of vehicles, robots, and medical procedures.

<b>Key Difference between 5G and StarLink:</b>

5G goes to be implemented in most urban areas. Starlink goes to focuses on the remote areas which have poor broadband internet access.

Starlink Technology will be the only best and well – function which also provides internet access to these people too. Starlink is unlimited and the 5G is limited or capped, obviously, Starlink will be superior.

5G provides internet access to urban places and Starlink provides net access to rural/remote areas thus everyone will be beneficial.

5G may be a wireless technology and hence mobile whereas Starlink needs an antenna which may mean to the sky. Starlink is sweet for remote areas where the network isn’t or not so great. 5G can take a few years to succeed in remote a part of the planet.

<b>Conclusion</b>

Both Starlink and 5G are different but competitive technologies. They both are even complementary technologies. 5G devices are going to be mobile and are less likely to urge suffering from line of sight to the sky.
At What Time, I Can Use Cash App Support Number For Help?   

Tags: cashappcustomer
Published: 2021-04-23 12:20:07

If you want to know the right time to make a call at [**Cash app Support Number**](https://www.cash-appsupport.com/) to fetch proper assistance from the experts, you will be glad to know that the mentioned helpline service remains active all the time. Here, you can expect instant remedy even in odd hours to resolve all the problems and hurdles with your account.
How to convert your Spring Boot app to serve over HTTPs instead of HTTP?
Tags: springboot
Published: 2021-04-23 12:19:30


Converting your spring boot app to serve on HTTPS just requires few configuration to be added in application.yml:
```
server:
  ssl:
    key-store: C:\softwares\jdk-16\bin\demokeystore
    key-store-password: demopass
    key-alias: demokey 
  port: 8443
```

The above configuration is enough. Here is the explanation behind it:


https://fullstackdeveloper.guru/2021/04/23/how-to-convert-your-spring-boot-app-to-a-https-application/
Reminder: Svelte Summit Spring 2021
Tags: svelte, sveltekit, live, summit2021
Published: 2021-04-23 12:14:10

Well, first post here on DEV. Hope I'm doing well.

Just a quick reminder for the event.

Can't miss, and you shouldn't too!

Kinda spoiler, they're "happy to announce that Rich Harris will be talking at Svelte Summit. You can expect a SvelteKit status update."

Enjoy.

{% youtube fnr9XWvjJHw %}
DCode SaaS and Software Landing Page WordPress Theme
Tags: saas, dcode, wordpress, theme
Published: 2021-04-23 12:10:21

Looking for the best theme that fits your requirement, it’s quite frustrating. Right! Making a good-looking, interactive website takes lots of your time and effort. DCode SaaS and Software Landing Page WordPress Theme by SacredThemes on ThemeForest.
We are here to help you out with this fiasco and will be proud to be a part of your business.

What is a DCode Theme?

SacredThemes created the most attractive and agile WordPress theme for the SaaS landing page website “DCode”. The best WordPress theme for the SaaS website with eye-catching design, excellent user experience, user-friendly design, well coded, easy to customize, and top-notch performance.

DCode theme is an agile, attractive Modern WordPress Theme. Specially designed for SaaS-based software product/services applications to showcase the software product’s features & Offerings by developing Landing pages using DCode.

It’s user-friendly designed and well coded, so can customize it easily. The designs are developed prominently for users to easily understand your software products/services.

DCode SaaS landing page theme comes with 9 Home Pages, 18 Inner Pages, 15+ Elements, and color customization options. Any user can set up and customize the theme as they like without requiring any coding knowledge.

In this article, we will discuss the different features of DCode Theme and how you can be benefited from this theme. We will give you a short idea of the overall features of DCode.

Features of DCode:

1. Drag-and-drop page builder- Elementor
2. Awesome Revolution Slider
3. Powerful Redux Theme Options
4. Fully Responsive (works great at any screen/device)
5. Cross-browser and Cross-Platform Compatibility
6. Retina Ready
7. Based On Bootstrap 4
8. W3c Valid Code
9. Free Google Fonts
10.Material Design Icon
11.Font Awesome Icons
12.Easy to Customize
13.Developer Friendly
14.Lightweight & Fast
15.Multiple Inner Pages
16.SEO Friendly
17.Free Updates and Improvements
18.Friendly and Effective Support Team
19.Color customization option
20.Online Documentation

What makes it different from others?

* 9 Unique Home Page Layout
* 18 Inner Pages
* 15+ Elements
* Color customization option
* One-click demo import
* Quick response to support request

Conclusion

Our main goal is to deliver a smooth experience to clients so that they can understand the product. DCode has various color options available with an easy customization policy. If you have any queries related to this theme, feel free to contact us at hello@sacredthemes.net.
TLDR - Basic search field with Ruby on Rails
Tags: ruby, rails
Published: 2021-04-23 12:08:43

---
title: TLDR - Basic search field with Ruby on Rails 
published: true
tags: ruby, rails
canonical_url: https://blog.corsego.com/ruby-on-rails-search-field-without-gems
cover_image: https://blog.corsego.com/assets/ruby-on-rails-search-field-without-gems/search-field.png
---

### MISSION: field to search for user email that **contains** characters. Example:

![search-field.png](https://blog.corsego.com/assets/ruby-on-rails-search-field-without-gems/search-field.png)

users\_controller.rb

```
  def index
    if params[:email]
      @users = User.where('email ILIKE ?', "%#{params[:email]}%").order(created_at: :desc) #case-insensitive
    else
      @users = User.all.order(created_at: :desc)
    end
  end

```

any view (users/index.html.haml or in a **bootstrap** navbar)

```
.form-inline.my-2.my-lg-0
  = form_tag(courses_path, method: :get) do
    .input-group
      = text_field_tag :title, params[:title], autocomplete: 'off', placeholder: "Find a course", class: 'form-control-sm'
      %span.input-group-append
        %button.btn.btn-primary.btn-sm{:type => "submit"}
          %span.fa.fa-search{"aria-hidden" => "true"}

```

.html.erb without bootstrap

```
<%= form_tag(users_path, method: :get) do %>
  <%= text_field_tag :email, params[:email], autocomplete: 'off', placeholder: "user email" %>
  <%= submit_tag "Search" %>
<% end %>

```

That's it! Looks nice, doesn't it?
Daily Developer Jokes - Friday, Apr 23, 2021
Tags: jokes, dailydeveloperjokes
Published: 2021-04-23 12:00:23

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

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

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

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

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

<!-- 
Joke text:
___Q___: Why do developers use mechanical keyboards?

___A___: To strongly type their code.
 -->
Basic Calculator (Updated)
Tags: html, css, javascript
Published: 2021-04-23 11:49:54

Hey viewers, 
This is my project related to basic javascript calculator with some cool features. My main motive is to make this project is to enhance my skills with it. And I put some hard effort to make this project. Please check my project below on GitHub and also run my code.🔻
-
Here is the code link - https://github.com/yuvraj-07/Web-Projects/blob/b1a6603bc86d3e68eaf9c1b0afc60b4e2889612d/calculator(VERSION%20-%202.0).html
----------------------------------------
Guys pls show me some support and please help me to enhance my skills ❤️❤️❤️
----------------------------------------
📢 Instagram handle - https://www.instagram.com/__yuvraj01/
-
📢 Facebook handle - https://www.facebook.com/profile.php?id=100010656091936
-
📢 GitHub handle - https://github.com/yuvraj-07