teleren/devto huggingface dataset:
Best practices for user account, authorization, and password management
Tags: todayilearned, programming, security
Published: 2020-03-04 13:00:14

*TL;DR notes from articles I read today.*

### [Best practices for user account, authorization, and password management](http://bit.ly/2x0j37E)

- Impose a cryptographically strong irreversible hash of the password, salting it with a value unique to that specific login credential. 
- Separate user identity from the user account, designing your user management system for low coupling and high cohesion between different parts of a user’s profile. Allow users to change usernames and link multiple identities to a single user account.
- Keep username rules reasonable, remain case-insensitive and avoid restricting length and character set. Also, allow as long and complex a password as a user wants (your hashing will condense it anyway).
- Consciously decide on thresholds for session length and re-verify authentication for security in case of certain events like password resets, critical profile changes, logins from new devices or too many devices, or a sensitive action with perhaps financial implications. Offer users the option for increased security when alerting for such events and ensure even unsaved activity prior to authentication are preserved.
- Build a secure authorization system, with password reset and not retrieval, detailed activity logging, rate-limiting of login attempts, locking out users after several unsuccessful attempts, and 2-factor re-authentication for new devices or long-idle accounts. 

*[Full post here](http://bit.ly/2x0j37E), 9 mins read*

---

### [Working as a software developer](http://bit.ly/2I9yZXm)

- Realize that software is never done because customers find more uses for it and request more features. So, the code keeps getting bigger and more complex. And also it is never done by one developer alone. The aggregation results in complexity and in turn bugs, so plan for failures and build in issue tracking, logging and error handling. 
- Develop the skill of reading code to understand what it does and how. Write code that is easier to read and hence to modify.
- Modularize the software into subsystems, layers or modules based on small chunks of functionality. Develop in small iterations and apply repeatable unit tests to ensure they work as expected and stay decoupled.
- Write for people first and the computer second. It’s better to be clear than to be clever. Impose good version control.  

*[Full post here](http://bit.ly/2I9yZXm), 8 mins read*

---

*[Get these notes directly in your inbox every weekday by signing up for my newsletter, in.snippets().](https://mailchi.mp/appsmith/insnippets?utm_source=devto&utm_medium=post08&utm_campaign=is)*
🛠✨ Demystifying SSR, CSR, universal and static rendering with animations 
Tags: webdev, javascript, computerscience
Published: 2020-03-04 12:59:49

---
title: 🛠✨ Demystifying SSR, CSR, universal and static rendering with animations 
published: true
description: This article explains Client Side Rendering, Server Side Rendering, Universal Rendering and Static rendering with animations
tags: #webdev, #javascript, #computerscience
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/pl7f52xnyatk7y3d7yjc.jpg
---

| 📖 Parts |
|------------------|
| 1) [Server Side Rendering](#ssr)  |
| 2) [Client Side Rendering](#csr)  |
| 3) [Universal Rendering](#ur)  |
| 4) [Static Rendering](#sr)  |
| 5) [Comparisons](#comparisons)  |

Sometimes it might be hard to understand the differences between the different web rendering solutions. If you're a web developer, you've probably heard these words:

- Server Side Rendering (SSR)
- Client Side Rendering (CSR)
- Universal Rendering (sometimes simplified to "SSR")
- Static Rendering (or JAMStack depending on the tool you're using)

Here are 4 videos explaining in a simplified manner the process of each solution from a user's perspective. Know that the user scenario is the exact same in the 4 videos.

In the [last section](#comparisons) you'll find a comparison listing benefits and drawbacks of each solution.

## Server Side Rendering (SSR) <a name="ssr"></a>

**⚠️ Note:** Here I'm talking about full server side rendered websites (you know, old SSR websites 😉). This architecture was widely used before Single Page Apps were introduced.

{% youtube 0bvo6UKkNDA %}

## Client Side Rendering (CSR) <a name="csr"></a>

**Frameworks using CSR:** Vue, React, Angular

{% youtube 4-Lel1oaV7M %}

## Universal Rendering <a name="ur"></a>

**Frameworks using Universal Rendering:** Nuxt.js, Next.js, Angular Universal

{% youtube y5CpKiH-3J8 %}

## Static Rendering <a name="sr"></a>

**Frameworks/Tools using Static Rendering:** Gatsby, VuePress, Gridsome, Next.js, Hugo, Jekyll

{% youtube 1zhT23VDVDc %}

## Comparisons <a name="comparisons"></a>

| | Server Side Rendering| Client Side Rendering| Universal Rendering| Static Rendering|
| ------ |------| ----|------|------|
| SEO    |👍 | 👎 | 👍 | 👍 |
| Fast initial load to show the full content of the page|⚡️⚡️ |⚡️|⚡️⚡️|⚡️⚡️⚡️ |
| Full page reload when navigating  |  yes |  no  |  no  |  it depends on the tool you're using |
| Requires server hosting | yes |  no |  yes | no  |
| Fluid seamless user experience on page navigation | 👎 | 👍 | 👍 | 👍  |
| Integrates well with websites based on frequent/real-time updates | 👍 | 👍 |  👍 | 😕 |

Feel free to contact me on [twitter](https://twitter.com/FranckAbgrall) if you have questions!

| 🐦 [Twitter](https://twitter.com/FranckAbgrall) | 💻 [GitHub](https://github.com/kefranabg) |
| ------ |------|
Challenges Faced by Organisations while Implementing DevOps
Published: 2020-03-04 12:51:54

Most organizations are reluctant to switch from conventional development techniques to automation. They fear that the process of switching over may not be accepted by the developers who are comfortable working with the conventional ways. Below are some of the challenges encountered that organizations come across while implementing DevOps, other than the associated problems of the use of technology and compatibility issues.

 

<b>Is the organization well equipped to implement?</b>
The organization should initially find out if they are ready for introducing the automation process. They should take the opinions from the operational teams to see if they will embrace the process and use it for development.

<b>What about the investment required for replacing the existing technology and approaches to?</b>
Organizations should asses the value of the current technologies and methods used for development and whether they will incur profit or loss from the transition to DevOps.

<b>Do they have skilled manpower?</b>
They should see if the teams of developers and testers possess the skills and knowledge required to use DevOps. The teams should be provided training to work with DevOps.

<b>Is the necessity for switch over to DevOps well-defined?
The organization should know the reason behind the decision of switch over. Are they benefitting from the change? How is it going to help them accomplish their business and organizational goals? Are they meeting the vision of the vision of the company?<b>

Whats your take on and what you think as developer and what skills organisation needed? #letsputyourpen #devopsconsulting #devopsdevelopment 

Read Complete article here - https://www.addwebsolution.com/blog/realistic-challenges-faced-implementing-devops-organization
OverTheWire Bandit Level 5 Level 6 walk-through
Tags: security, infosec, ctf, beginners
Published: 2020-03-04 12:46:08

Challenge page => https://overthewire.org/wargames/bandit/bandit6.html

This time the password is in a file which has a certain set of attributes. What makes this challenge unique is that the number of files you will have to sift through is huge.

Lets take a look at the contents of the `inhere` dir and one of its subdirs.


![Contents of inhere dir](https://dev-to-uploads.s3.amazonaws.com/i/uc0dlenhsis3pdxsbfka.png)

So, clearly we have our work cut out for us. Going through each one of the files will take a huge amount of time.

___

So how do we find the file which has the three attributes listed?

- human-readable
- 1033 bytes in size
- not executable

Hint 1: Once again, look at the man pages of the commands "you may need"
___


The hint was in the question itself :D

The `find` command comes in handy when searching for files with certain attributes. But we have to be careful with how we use it as it can search through the entire file system if needed.

Don't hesitate to fire up a few searches for the `find` command and see a few examples. Also, do gloss over the man page, as the flags will come in handy in the future as well.

Now that we've zeroed in on the `find` command, we need to ensure

- The search completes fast
- The search doesn't go through the entire filesystem, but just through the `inhere` dir
- It only outputs the name of the file that has the aforementioned attributes


___

Which are the flags of the `find` command that will help us narrow down the file that contains the password?

Hint 2: You don't need to ask Google or the Duck for this. Searching the man pages will suffice.
___


The man pages are quite handy aren't they? They are a bit verbose though. Then again that is how good documentation is supposed to be :)

So, we've figured out the flags required

- `-readable` for human-readable files
- `-size 1033c` for 1033 bytes
- `-executable` to ensure the find command filters for executable files

But wait, we need "non-executable" files. 

___
How do we negate the flag?

Hint 3: Usually man pages have a few examples also listed. Maybe our answer is there?
___

Jackpot! There is one example where the `-readable` file is negated.

![Flag negation example](https://dev-to-uploads.s3.amazonaws.com/i/k5775z2lv3ibhtjzv5f1.png)

Now we have everything we need. Assuming you are running the command from your home dir, the final command would be

`find ./inhere -readable -size 1033c \! -executable`

Let's try it.

![Solution](https://dev-to-uploads.s3.amazonaws.com/i/xefinz7nigmniwwszcex.png)

That was a pretty fast search. Onto the next challenge!
Learning to Build a GraphQL API with NestJS and Docker
Tags: nestjs, node, graphql, typescript
Published: 2020-03-04 12:45:52

Hello there fellow developers! After recently learning about NestJS I have quickly fallen in love with it and decided to learn how to build a GraphQL API using this framework. The process has been pretty straightforward, great and I am learning a lot! I have been livestreaming the process on [twitch](https://twitch.tv/nerdforcetv) but have also been uploading them to Youtube. The reason I have been livestreaming these is so other people can see developers aren't mystical beings from a faraway land. We're just normal humans who slowly learn and apply knowledge while making a few mistakes along the way! Now, if you would like to learn something new and watch me fumble while I learn then here you go:

[Building a GraphQL API with NestJS and Docker](https://www.youtube.com/playlist?list=PLQ45Nwsbb5tAk9X5Pk8NSxekCtvClwVPM)
A Short Guide To App Store Optimization - Tips & Checklist

Tags: android, ios, startup
Published: 2020-03-04 12:32:18

App Store Optimization is a vital part of promoting your app. The ranking of an app in the App Store has an immense impact on its success. This short guide to ASO (App Store Optimization) will give you some cool tips and a checklist. 

Are you an entrepreneur looking for ways to scale up your business? A Short Guide To App Store Optimization. Read this article to know tips and checklist for App Store optimizations.

Read More: https://inoru-app-development.blogspot.com/2020/03/a-short-guide-to-app-store-optimization.html
Advanced TypeScript Exercises - Question 6
Tags: typescript, javascript
Published: 2020-03-04 12:16:27

--- series: Advanced TypeScript Exercises ---

Hi folks! ✋ Today we will play a bit with mapped types. The exercise is about getting all value types from the tuple type. Question will be slightly different (as I am still playing with the series format) and will be split into two tasks with different difficulty level.

### 6.1 Naive version (lower difficulty)
```ts
type NaiveFlat<T extends any[]> = unknown // 🔥 here your code
// test case
type Naive = [['a'], ['b', 'c'], ['d']];
type NaiveResult = NaiveFlat<[['a'], ['b', 'c'], ['d']]>
// should evaluate to "a" | "b" | "c" | "d"
```
Our goal is to make type level function `NaiveFlat` which will take nested tuple and get all value types from it. Naive implementation should work with 1 level of nesting so tuple of tuples.

### 6.2 Deep version (higher difficulty)
```ts
type DeepFlat<T extends any[]> = unknown // 🔥 here your code
// test case
type Deep = [['a'], ['b', 'c'], [['d']], [[[['e']]]]];
type DeepTestResult = DeepFlat<Deep>  
// should evaluate to "a" | "b" | "c" | "d" | "e"
```
We go level up. Deep version should flat any level of nested tuples.
The questions and ready to start code is available in [The Playground](https://www.typescriptlang.org/play/index.html?ssl=11&ssc=92&pln=8&pc=1#code/PTAEEUFcFMGcBcCWB7AdqAbAOgIwCh4BPAB2lADkBDRAN2gDEAbS+AHgBVRoAPeaVACaxQlVIQDaAXQB8oALyhIqANapkAd3QhQgXg3ApLugAFtABOZQskgnQAY2QDoebXwS3KsR0VIVqdeaHFxAHJKIMkAGgCggCMgyKCbMMjggTDJAG4CEjIqWmh2OHgAJThIRnh-AEFYDxM2XLomFlYG6GlIgCJKDtAAH1AO6J7+jpthgYEO6XTQbVhDS0YBUGiyeBMYPCcwKEKUdGwAJizvABFoaGImtk4ePkFhUQkZfyVVDS0wfSNTc0trOwObagFwVGzuTzZUDnS7+QIhJJRWLxRIRAIpNLJQLBaBpST4zJeMgw4gFBAlWBlCoKaq1Ngk66sEntAbdPoDIbs0bjDqTLnQKazMDzRbLVYgjaOLbaSBIRiIIigABmyGsoMQqAA5iDjKAzJTysCFcI1BUzMw+Mt4MgdWQAI4wBD7UCIYRoRiEZWqkGFUCUhWQ7y00xsPCgUDsHDhMMRw7R8MAfQAwsYbMocP5I1xePwhLHQAB+CUwUAALmVlEYHnjoGTqeUh0zjbuueEWaL6xL5aVlY8MekMYUParZBbD1rKegaYzReHHjLFZH2fuebrU4bhcX8-LnegQA)

Post your answers in comments. Have fun! Answer will be published soon!

**BTW** please share your opinion if such questions with few options works for you? I want to know what you think about such format, thanks!


**This series will continue**. If you want to know about new exciting questions from advanced TypeScript please follow me on [dev.to](https://dev.to/macsikora) and [twitter](https://twitter.com/macsikora).
AI Assembly Line for Building Software | Engineer.AI
Tags: engineerai, aiassembly, softwarebuilder
Published: 2020-03-04 12:04:57

BY: Natasha (Engineer.ai Team Member)

Hey there I’m Natasha, and my specialty is making all your app building dreams come true.

Say you've got a great idea for an app or a website, maybe it finds you a concert buys you tickets and calls you a car to get there but you don't know how to find somebody to turn the thing in your head into the thing in your hands or you do and they said it would cost too much.

They said it'd take too long well, don't be surprised they didn't have me and they didn't have builder. Let me tell you how <a href="https://www.issuewire.com/engineerai-make-your-own-apps-in-minutes-1660210554949124
">Engineer.ai</a> do our things, it's easy to promise you tell us what you want, what it does and the features you need, then me and my network of geeks build it using building books that really work.

That means you save on building features that are already out there and pay for what's really special about your idea and you own all of the code. If you're buying a car you don't start by designing the wheels or the doors so who says you're supposed to build an app that way.

<a href="https://entrackr.com/2018/11/softbank-jungle-ventures-fund-engineer/
">Engineer.ai</a> will take your dream and make it real on all the devices you need it to live on and we'll do it fast because we know what we're doing even better will guarantee you a cost and you'll get your estimate right away plus we'll make a timeline that works for you, pricing that works for you and of course a roadmap that works for you with room for the iteration customization and maintenance.

You'll Need, You'll Get all that information on an easy to read, build card, you don't need to be an engineer to understand it and when we (Engineer.ai) say right away, we mean right away, really builder generates it automatically, so your idea makes it to the real world with no surprises and no hidden costs. I know what you're saying how's all this even possible it's basically magic builder by engineer day. I wear awesome together what will you build.

Watch Full Video @ https://www.youtube.com/watch?v=eUXRjUscxuE
Learning resources for browser extension development
Tags: javascript, career, browser
Published: 2020-03-04 09:35:34

After learning basics of JavaScript making browser extension can be playground for playing with our JavaScript skills. Today I am going to share some links or resources I collect. I find documentation of chrome extension really difficult to start understand but I we need it to be perfect. Here are the list I collected 
1. https://blog.checklyhq.com/creating-a-chrome-extension-in-2018-the-good-the-bad-and-the-meh/
2. https://github.com/dwyl/learn-chrome-extensions
3. https://dev.to/ankitverma31/building-your-first-chrome-extension-a-beginner-s-guide-40a9 
4. https://medium.com/javascript-in-plain-english/how-to-make-a-chrome-extension-with-vue-js-56e50bd97972
5. https://www.streaver.com/blog/posts/create-web-extension-vue.html

One of the best video tutorials I found on YouTube is 
1 .  https://www.youtube.com/playlist?list=PLRqwX-V7Uu6bL9VOMT65ahNEri9uqLWfS.

I will keep on adding other resources so that it may help the beginner like me to learn.
KVision v3.0.0 is released (with Javalin support)
Tags: kvision, kotlin, javalin
Published: 2020-03-04 11:53:24

---
title: KVision v3.0.0 is released (with Javalin support)
published: true
description: KVision is an open source web framework created for Kotlin/JS.
tags: kvision,kotlin,javalin
---

[KVision](https://github.com/rjaros/kvision) is an open source web framework created for Kotlin/JS. It allows developers to build modern web applications with the Kotlin language.

I have released KVision 3.0.0. This is a major upgrade bringing a few incompatibilities and breaking changes. Highlights of this release:

- major improvements to the event handling architecture (including new module with support for event Flows)

- new server-side module with full support for the [Javalin](https://javalin.io) server

- upgrade [Jooby](https://jooby.io) to version 2

- important bugfixes and minor improvements for different components

For more details about this release see the [changelog](https://github.com/rjaros/kvision/releases/tag/3.0.0) and the [migration chapter](https://kvision.gitbook.io/kvision-guide/part-1-fundamentals/migration) in the guide. There are also some new example apps with Javalin server in the [examples repository](https://github.com/rjaros/kvision-examples).

Don't forget to ⭐️ my [project](https://github.com/rjaros/kvision) if you like it!

Any feedback is appreciated!
ReactJs UI Shopping Cart with reactjs hook
Tags: react, javascript, ux
Published: 2020-03-04 11:37:50


ReactJs UI Shopping Cart, 
I used this shopping cart with reactjs, it has also increament and decreament which will count every click and count the total price.

Live Preview: <a href="https://nikhilroy2.github.io/reactjs-ui-shopping-cart-table/"> Preview Here </a>

I used reactjs hook instead of class component and it's looking cool than class component.
I realy appreciate to use hook but I think reactjs sometime need lot's of code than normal vanilla js coding.


For your Upcoming ReactJs Project hiring, 
contact me below,
<a href="http://facebook.com/nikhilroy2"> Facebook </a> // <a href="http://linkedin.com/in/nikhilroy2"> Linkedin </a> //
<a href="http://dribbble.com/nikhilroy2"> Dribbble </a> //
<a href="http://linkedin.com/in/nikhilroy2"> Linkedin </a>
Reason React + Tailwind starter with Create Reason React APP (CRRA)
Tags: reason, tailwindcss, reasonreact
Published: 2020-03-04 10:42:56


# **Quick Start**

`create-reason-react-tailwind`  is an easy way to get started with boilerplate reason react templates.

1.  **Install** `**crra**`

	```
	npx create-reason-react-tailwind
	```
	

**2. Choose a template**

You can choose the template from the template selector

![https://res.cloudinary.com/bodhi/image/upload/v1583317801/blogs/05-03-2020-dev-reason-react-tailwind/Screenshot_from_2020-03-04_13-37-55_gd1aql.png](https://res.cloudinary.com/bodhi/image/upload/v1583317801/blogs/05-03-2020-dev-reason-react-tailwind/Screenshot_from_2020-03-04_13-37-55_gd1aql.png)
**3. Add a project name**

after selecting the template, you will be asked to add a project name


![](https://res.cloudinary.com/bodhi/image/upload/v1583317801/blogs/05-03-2020-dev-reason-react-tailwind/Screenshot_from_2020-03-04_13-38-30_v8yaif.png)

add your project name and hit enter 


**4. Your create reason react app is ready 😃**
```
cd my-app
```
You will get a pre-configured reason react template with parcel, postcss and tailwind. The bare minimum for creating a reason react project.

![Folder structure](https://res.cloudinary.com/bodhi/image/upload/v1583339157/blogs/05-03-2020-dev-reason-react-tailwind/tree_id5ane.png)

[Github Repo](https://github.com/bodhish/create-reason-react-tailwind/tree/master/templates/tailwind-starter)

**5. Install dependencies**

```
npm install
npm run dev
```

You will be able to see the project running at  `localhost:1234`

## expected output
![https://res.cloudinary.com/bodhi/image/upload/v1583332668/blogs/05-03-2020-dev-reason-react-tailwind/out_nejhzu.png](https://res.cloudinary.com/bodhi/image/upload/v1583332668/blogs/05-03-2020-dev-reason-react-tailwind/out_nejhzu.png)


> You may have to change the package-name if you plan to publish the repositoy (optional)


{% github bodhish/create-reason-react-tailwind %}


## Deploy your CRR

[Auto Deploy reason-react projects on Netlify](https://medium.com/@bodhish/auto-deploy-reason-react-sites-on-netlify-fe7e16a2fbc5)
Unity 2019.3.x to Xcode project, Swift Version Error
Tags: unity3d, xcode, ios
Published: 2020-03-04 10:26:04

---
title: Unity 2019.3.x to Xcode project, Swift Version Error
published: true
description: Unity 2019.3.x to Xcode project, Swift Version Error
tags: unity, xcode, ios
---

Unity 2019.3.xでios用に書き出したXcode 11.xでビルドしようとするとエラーになる。。

`The target “UnityFramework” contains source code developed with Swift 3.x. This version of Xcode does not support building or migrating Swift 3.x targets.
Use Xcode 10.1 to migrate the code to Swift 4.`

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/oq9wbiffnlbbzffub7cu.png)
Developer and Designer Resume Examples and Review
Tags: productivity, career, resume, tips
Published: 2020-03-04 09:19:05

I wanted to try something different so today I took a look at a few resumes that were posted publically for review.
{% youtube 9IJyl4G_83Y%}
We take a look at a resume from both a Developer and a Designer and how they structure it in terms of user interface and content. They are good resumes if you are interested in taking a look at an example, but there is always room for improvement when it comes to making anything.

Do you want me to review some of your own designs or work? Visit the discord channel and share your project and I'll do my best to leave some feedback!
* [💬 Discord](https://discord.gg/nGdThpE)

## Follow and support me: 
Special thanks if you subscribe to my channel :)
* [🎞️ Youtube](https://www.youtube.com/channel/UCvM5YYWwfLwpcQgbRr68JLQ?sub_confirmation=1)
* [💸 Patreon](https://www.patreon.com/adriantwarog)
* [🐦 Twitter](https://twitter.com/twarogadrian)

## Want to see more:
I will try to post new great content every day. Here are the latest items:
* [Adobe XD to Fully Responsive WordPress Site](https://dev.to/adriantwarog/adobe-xd-to-fully-responsive-wordpress-site-16e0)
* [Adobe XD to HTML Full Process](https://dev.to/adriantwarog/adobe-xd-to-html-full-process-ao6)
* [Full Tutorial on how to use SASS to improve your CSS](https://dev.to/adriantwarog/full-tutorial-on-how-to-use-sass-to-improve-your-css-57on)
* [Creating a Mobile Design and Developing it](https://dev.to/adriantwarog/creating-a-mobile-design-and-developing-it-5c4o)