teleren/devto huggingface dataset:
Is Jira an antipattern?
Tags: discuss, agile, scrum
Published: 2018-12-10 19:16:52

---
title: Is Jira an antipattern?
published: true
description: A look at an article about Jira and devs via Techcrunch
tags: discuss, agile, scrum
cover_image: https://images.unsplash.com/photo-1512758017271-d7b84c2113f1?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1050&q=80
---

This article was shared on my work Slack and it's pretty fantastic: [JIRA is an antipattern](https://techcrunch.com/2018/12/09/jira-is-an-antipattern/) - TechCrunch

It's clearly an opinion piece and seems meant to generate discussion, though only 1 other person wanted to chat about it on #general 

The biggest part that caught my eye was:

> Doesn’t that sound a little … um … waterfall-y?

It does seem like Jira's hyper focus on the little pieces encourages a waterfall approach. Each issue goes through a waterfall. A sprint is successful if it finishes its waterfall in x weeks. 

What do you think? Does Jira help developers lose sight of the big picture, or is the worth towards making workable slices of issues more than worth it?
A toy shell in 75 lines of rust code
Tags: rust, develop, shsh, showdev
Published: 2018-12-10 17:09:05

Yesterday I wrote a toy shell in Rust, it only has around 75 lines of code so don't expect a lot of features. I'm going to improve it during the holidays and I'm planning to write a (little) book/tutorial about using Rust for system programming.

Here's the initial code, there will be more of it soon

[Shsh project on github](https://github.com/yorodm/shsh)
TIGL3D DevLog 17+18: FOUR final game areas
Tags: gamedev, unity3d, devlog
Published: 2018-12-10 16:53:09

---
title: TIGL3D DevLog 17+18: FOUR final game areas
published: true
description: These updates cover building out the last 4 areas of the game before going into crunch for early access.
tags: gamedev, unity, devlog
cover_image: https://thepracticaldev.s3.amazonaws.com/i/4hg93s5w3zd91zp5wiwx.gif
---
These two devlog updates for [The Indie Game Legend 3D](http://indiegamelegend.com/) from September and October 2018 cover building out 4 whole new areas that make up the rest of the game. These were the last devlog updates made before going into crunch for early access, which is right about now...

{% youtube yKUs5lGqAJ0 %}

{% youtube 9jubtcKAjeo %}

This story is not over! [Subscribe to the YouTube channel](https://youtube.com/c/progrium) for more updates as we push onward towards the final release including the second half of the game.

In the meantime, tomorrow is early access! [Wishlist on Steam!](https://store.steampowered.com/app/844440/The_Indie_Game_Legend_3D/)
Messaging pattern with (statically) enforced order?
Tags: discuss
Published: 2018-12-10 16:37:03

---
title: Messaging pattern with (statically) enforced order?
published: true
description: 
tags: discuss
---

I'm trying to devise an API for a set of messages/events that get passed in a streaming manner.

Specifically, I'm build a test-framework, and I want to separate the back-end listeners (such as XML reporter, console reporter, code coverage reporter, etc.) such that these implement an interface (or a set of interfaces) that enables the test-framework to send a fixed/known set of message types, which occur in a defined valid order.

For example:

  * Begin Test Suite A
  * Begin Test Case 1
  * Log Assertion Result X
  * Log Assertion Result Y
  * End Test Case 1
  * Begin Test Case 2
  * Log Assertion Result Z
  * End Test Case 2
  * End Test Suite A
  * Begin Test Suite B
  * ...

In other words, there's an required order for these messages to make sense: A Test Case can't start before a Test Suite has been started, each Test Case much end before starting a new Test Case, Assertion Results must be logged while there's an active Test Case, and so on.

My first attempt was a [set of interfaces](https://bitbucket.org/mindplaydk/test-interop/src/3219cd25de13b6d333d43b74744f1a5dae1b8f80/src/?at=master), and my idea here was you wouldn't be able to start a Test Case until you've started a Test Suite, because that's how you get your Test Case listener, and you wouldn't be able to submit an Assertion Result until you've started a Test Case, and so on.

This approach only enforces one rule though, ensuring that you can't post a certain type of message before posting another given type of message - there's nothing that guarantees that client code doesn't just keep a reference to a previous Test Case, for example, and submit Assertion Results out of order. There's also nothing that guarantees you call the `end()` methods to close a Test Suite or Case. So this doesn't really work.

The only alternative I've been able to think of, is a more traditional event stream - where each message type is an interface that extends a marker interface, and all of the messages are submitted via the same method to a bus that distributes the messages to the listeners.

This is probably easier to implement and understand, and avoids the issue with client code keeping a reference to a previous listener, since there's just one way to submit a message. I can write a standard implementation of such a listener that simply validates message order, and the framework can internally put an instance of this before the user-supplied list of listeners.

That might be simpler and cleaner, but you of course still submit messages in the wrong order - the message order still needs to be validated at run-time.

Is there any sort of messaging pattern that *statically* enforces message order?
Animate CSS grid, Follow slider, Slick carousel & more | Module Monday 22
Tags: showdev, opensource, webdev, javascript
Published: 2018-12-10 16:03:46

---
title: Animate CSS grid, Follow slider, Slick carousel & more | Module Monday 22
published: true
description: Module Monday 22
tags: showdev, opensource, webdev, javascript
cover_image: https://res.cloudinary.com/component/image/upload/b_rgb:ffffff,c_lpad,h_350,w_800/v1544226725/animate-css_40_dgm5ii.gif
canonical_url: https://guide.anymod.com/module-monday/22.html
---

## Open-source mods for your next project

Everything below is open source and free to use on any website, web app, or anywhere else. [Anymod](https://anymod.com) has hundreds more like these.

Click a mod to see it along with its source code.

### Animate CSS grid
A flexible, interactive grid of images.

<a class="btn btn-sm" href="https://anymod.com/mod/badkkr?v=20">View mod</a>

<a href="https://anymod.com/mod/badkkr?v=20">
  <img src="https://res.cloudinary.com/component/image/upload/v1544226725/animate-css_40_dgm5ii.gif"/>
</a>

### Follow me slider
Roll up your follows into one button.

<a class="btn btn-sm" href="https://anymod.com/mod/orlnnb">View mod</a>

<a href="https://anymod.com/mod/orlnnb">
  <img src="https://res.cloudinary.com/component/image/upload/v1544235457/follow-me_y49cyh.gif"/>
</a>

### Responsive card section
Split image and text with a call to action.

<a class="btn btn-sm" href="https://anymod.com/mod/mlbokb?v=20">View mod</a>

<a href="https://anymod.com/mod/mlbokb?v=20">
  <img src="https://res.cloudinary.com/component/image/upload/v1544296279/card-image-right_nipftn.png"/>
</a>

### Slick carousel B
Classic slideshow with touch & swipe support.

<a class="btn btn-sm" href="https://anymod.com/mod/badkbl?v=20">View mod</a>

<a href="https://anymod.com/mod/badkbl?v=20">
  <img src="https://res.cloudinary.com/component/image/upload/v1544299887/slick-carousel-b_50_bdckzk.gif"/>
</a>

### Simple social footer
Add social links and a basic message, works anywhere.

<a class="btn btn-sm" href="https://anymod.com/mod/kdkbol">View mod</a>

<a href="https://anymod.com/mod/kdkbol">
  <img src="https://res.cloudinary.com/component/image/upload/v1544299159/footer-wide_gshqpg.png"/>
</a>

<hr>

I post new mods [here](https://dev.to/tyrw) every (Module) Monday -- I hope you find them useful!

Happy coding ✌️
The 7 Most Popular DEV Posts from the Past Week
Tags: top7, bestofdev
Published: 2018-12-10 16:00:20

---
title: The 7 Most Popular DEV Posts from the Past Week
published: true
description: A round up of the most-read and most-loved contributions from the community this past week.
tags: icymi, bestofdev
cover_image: https://thepracticaldev.s3.amazonaws.com/i/sfwcvweirpf2qka2lg2b.png
---
Every Monday we round up the previous week's top posts based on traffic, engagement, and a hint of editorial curation. The typical week starts on Monday and ends on Sunday, but don't worry, we take into account posts that are published later in the week. ❤️

#1. CSS-free

An overview of W3.CSS, a CSS framework that heavily leverages class attributes. Corina stumbled across this framework when they were looking or an effortless way to add some styling to a few web pages.

{% link https://dev.to/imalittletester/style-beautiful-web-pages-without-writing-any-css-using-w3css-45ee %}

#2. Sean -> Ricky -> Pete -> Malcom -> Ari

A primer on linked lists through the lens of Ariana Grande's latest hit, "thank u, next." Enjoy!

{% link https://dev.to/aspittel/thank-u-next-an-introduction-to-linked-lists-4pph %}

#3. Do you need another reason?

Quincy takes us on a walk through the FCC repo from open PR -> logged in user. In this post, we also learn the benefits of JAMstack.

{% link https://dev.to/ossia/how-freecodecamporg-uses-the-jamstack--a-single-api-server-to-help-millions-of-people-learn-to-code-every-month-4d5g %}

#4. What if.

Inspired by a HackerNews article, Nick shares why they once avoided using Bash aliases, and why that practice is now in the past.

{% link https://dev.to/nickjj/optimize-your-programming-decisions-for-the-95-not-the-5-2n42 %}

#5. Uncle Bob Hours

Part of Uncle Bob's vision is that a developer should spend 15-20 hours a week learning. John compares software development to other high maintenance and high responsibility jobs (i.e. medical field) and points out why this advice might be dangerous.

{% link https://dev.to/jhotterbeekx/keep-learning-should-you-invest-your-own-time-22l %}

#6. Unit tests, integration tests, smoke tests, regression tests...

A quick roundup and explanation of the different ways you can test. 

{% link https://dev.to/thejessleigh/different-types-of-testing-explained-1ljo %}

#7. Ultimate Flexibility

Theodore shares how they went from ski bum to....well, still a ski bum, but also a software developer. In this post, they share rules to follow if you want flexibility. For Theodore, this means the privilege to ski everyday. 

{% link https://dev.to/theobendixson/how-to-write-code-and-snowboard-every-day-54c7 %}

_That's it for our weekly wrap up! Keep an eye on dev.to this week for daily content and discussions...and if you miss anything, we'll be sure to recap it next Monday!_
Bootcamp Grad Interview - Was it Worth it?
Tags: bootcamp, bootcamps, javascript
Published: 2018-12-10 15:28:55

---
title: Bootcamp Grad Interview - Was it Worth it?
published: true
description: MrJ and friends meet up with a recent web dev bootcamp graduate and ask the all-important question - Was it worth it? If you're in a bootcamp or considering joining one, this is a must-watch.
tags: Bootcamp, Bootcamps, Javascript
---

{% youtube Ox65cbIZd30 %}
Quicksort sorting algorithm
Tags: algorithms, javascript, beginners
Published: 2018-12-10 15:00:09

---
title: Quicksort sorting algorithm
published: true
description: a brief look on the Quicksort algorithm
tags: algorithm, javascript, beginners
---

**Quicksort** is a sorting algorithm. It's a **divide-and-conquer** algorithm that sorts a sequence by recursively dividing it into smaller subsequences. Let's see our function:

```javascript
function quick_sort(array) {
    if(array.length < 2) return array;

    const pivot = array[0];
    
    let lower = array.filter(e => e < pivot),    
        greater = array.filter(e => e > pivot);
    
    return [...quick_sort(lower), pivot, ...quick_sort(greather)];
}

quick_sort([7,5,9,4,8,2]) 

```

Empty arrays and arrays with just one element are the **base case**. Nothing to sort here, and we can just return those arrays as is. 

Quicksort algorithm starts with picking a **pivot**. There are many ways to choose a pivot:
• 1st element (as we do)
• last element
• median of the array as a pivot
• a random element as the pivot

```javascript
const pivot = array[0];
```

After filtering collection (array) we have:
• A sub-array of all the numbers lower than the pivot
• The pivot
• A sub-array of all the numbers greater than the pivot
```javascript
return [...quick_sort(lower), pivot, ...quick_sort(greater)];
```

Call quicksort recursively on the two sub-arrays (lower and greater) to break down the collection into single-element lists (hitting the base case), before combing them into one sorted list.

Here are all the steps (stack) depending on pivot we pick.<br/><br/>
![alt text](https://thepracticaldev.s3.amazonaws.com/i/dosd19hotyqyev853bsq.png)
Web Application Development Cost: Your Ultimate Guide to Web App Budget [2018]
Tags: webapplication, developmentcost
Published: 2018-12-10 14:52:53

---
title: Web Application Development Cost: Your Ultimate Guide to Web App Budget [2018]
published: true
description: Hundreds of web applications are created each month. The question is no longer whether a company needs a web application or not, but what is the price for building an application to fit company’s budget and meet business needs.
tags: Web Application, Development-Cost 
cover_image: https://www.mindk.com/blog/wp-content/uploads/2018/11/cover-720x460.jpg
canonical_url: https://www.mindk.com/blog/web-application-development-cost/
---

Hundreds of web applications are created each month. The question is no longer whether a company needs a web application or not, but what is the price for building an application to fit company’s budget and meet business needs.

If you look up the Internet for how much a web application costs you won’t find a clear answer. Everybody wishes it could be that simple – to receive a split-second estimate and time-frames – but it’s not.

Let’s draw an analogy.

Imagine you come to a building company with a question: “What is the price of building a house?”. I believe most will agree that the price depends on a great number of factors as in, the type of the house, number of rooms, total floor area, exterior and interior finish, architectural plan, permissions, access to the piece of land, number of employees, their expertise … basically, a good many details.

[Continue reading...](https://www.mindk.com/blog/web-application-development-cost/)
What is MVP in Agile and why does it matter?
Tags: minimumviableproduct, mvpinagile
Published: 2018-12-10 14:44:57

---
title: What is MVP in Agile and why does it matter?
published: true
description: Any starting business is unprofitable at the initial stage. To earn money, it needs to gain a certain scale and acquire customers. When developing a software product, the main thing from the very beginning is not to lose focus, recognize and admit mistakes in time, and not be afraid to make difficult decisions.
tags: Minimum Viable Product, MVP in Agile 
cover_image: https://www.mindk.com/blog/wp-content/uploads/2018/11/accounting-application-business-1483938-720x460.jpg
canonical_url: https://www.mindk.com/blog/what-is-mvp-agile/
---

Any starting business is unprofitable at the initial stage. To earn money, it needs to gain a certain scale and acquire customers. When developing a software product, the main thing from the very beginning is not to lose focus, recognize and admit mistakes in time, and not be afraid to make difficult decisions. 

This is why MVP in Agile product development is so important.

Almost all software today is developed using the Agile methodology which presupposes dividing the project into sprints. It allows to reduce risks and respond to required changes quickly.

Building a Minimum Viable Product (MVP) helps entrepreneurs deliver an idea to early adopters and get valuable feedback to assist development and avoid uninformed decisions.

Most of the applications you use today used the MVP approach to make their products fully-fledged later (Airbnb, Dropbox, Buffer to name a few). These examples denote that you should definitely consider making an MVP before releasing a full-featured solution.


[Continue reading...](https://www.mindk.com/blog/what-is-mvp-agile/)
What is the importance of understanding libraries and frameworks?
Tags: discuss, beginners, learning
Published: 2018-12-10 13:48:15

---
title: What is the importance of understanding libraries and frameworks?
published: true
tags: discuss, beginners, learning
cover_image: https://thepracticaldev.s3.amazonaws.com/i/uif1fcrl28ehckos0hem.png
---

This has brought about two more interesting questions:

- What is the difference between a library and a framework?
- Why would you prefer one over the other?
Rescripts Framework for create-react-app 2.0+
Tags: showdev, customize, react, scripts
Published: 2018-12-10 13:29:38

---
title: Rescripts Framework for create-react-app 2.0+
published: true
description: I'd love your feedback on a framework I just released!
tags: showdev, customize, react, scripts
---

Hi Everyone,

I just released [the Rescripts framework](https://github.com/rescripts/rescripts), which allows you to customize newer versions of react-scripts in a way that is less likely to break with updates. It will enable you to use custom linting (ESLint, TSLint), Babel, Webpack, dev server, and Jest configurations, and much more. I'm really excited to see how people are using it so that I can improve upon it to meet the needs of React devs all over... but to do this, I really need feedback. Please let me know your thoughts on it and how it could be better, or on what specific "rescript" (plugin) you're looking for.

Thank you so much.

Kind regards,

Harry
Variables en Dart Lang
Tags: dart, flutter
Published: 2018-12-10 12:03:49

---
title: Variables en Dart Lang
published: true
description: Uso de variables en dart
tags: dart, flutter
---

Recientemente empece a trabajar con [Flutter](https://flutter.io) un sdk para desarrollo móvil el cual usa el lenguaje de programación [Dart](https://www.dartlang.org). Es por eso que estaré escribiendo algunas traducciones de la documentación tanto de Dart como de Flutter y también algún que otro post propio.  Empezaré directamente con el uso de las variables de Dart.

Fuente: https://www.dartlang.org/guides/language/language-tour#variables

Aquí hay un ejemplo de cómo crear una variable e inicializarla:
```dart
var name = 'Jonatan';
```

Las variables almacenan referencias. Aquí La variable llamada **name** contiene una referencia a un objeto **String** con el valor "Jonatan".

Se infiere que el tipo de la variable **name** es **String**, pero puede cambiar ese tipo especificándolo. Si un objeto no está restringido a un solo tipo, especifique el objeto o el tipo dinámico, siguiendo las [pautas de diseño](https://www.dartlang.org/guides/language/effective-dart/design#do-annotate-with-object-instead-of-dynamic-to-indicate-any-object-is-allowed).

```dart
dynamic name = 'Jonatan';
```
Otra opción es declarar explícitamente el tipo que se inferiría:
```dart
String name = 'Jonatan';
```

### Valor por defecto
Las variables sin inicializar tienen un valor inicial *null*. Incluso las variables con tipos numéricos son inicialmente *null*, porque los números, como todo lo demás en Dart, son objetos.

### Final y const
Si nunca tiene la intención de cambiar el valor de una variable, use **final** o **const**, ya sea en lugar de var o además de un tipo. Una variable final solo se puede configurar una vez; una variable const es una constante en tiempo de compilación. (Las variables Const son implícitamente final). Una última variable de nivel superior o clase se inicializa la primera vez que se usa.
Let's take a break and discuss how developers spend the vacations? 
Tags: discuss, developers, vacations
Published: 2018-12-10 10:55:45

---
title: Let's take a break and discuss how developers spend the vacations? 
published: true
description: 
tags: #discuss #developers #vacations 
cover_image: https://www.cloudways.com/blog/wp-content/uploads/giphy-3.gif
---

As we all know that long vacations are just around the corner. Let's discuss what plans do you have for spending this time. Are you still thinking to play with codes or spot the places to visit this vacations? :D
What is your single most important rule for good software design?
Tags: cleancode, architecture, craftsmanship, discuss
Published: 2018-12-10 10:47:00

---
title: What is your single most important rule for good software design?
published: true
description: 
tags: Clean Code, Architecture, Craftsmanship, discuss
---

If you had to choose just one rule that you think is the most important rule for good software design, what would it be?
Production-ready error handling with Express.js
Tags: expressjs, errors, logging, bestpractices
Published: 2018-12-10 10:03:17

---
title: Production-ready error handling with Express.js
published: true
description: Express.js server that implements production-ready error handling and logging following latest best practices.
tags: Express.js, error handling, logging, best practices
---

I am working on a more significant project, and here I decided to show you a part of it, namely the server side implementation with express.js where I implemented error handling, logging and some of the best practices.

The main idea is that it is not going to be just merely a boilerplate for express.js, but a well thought through production-ready solution implementing best practices so that one can use them from the very start.

The focus is on error handling at the moment, and there is a wiki page where I summarised how this project handles errors - [Error handling wiki](https://github.com/sandorTuranszky/production-ready-expressjs-server/wiki/Error-handling)

There is a way to test how the project handles errors as [described here](https://github.com/sandorTuranszky/production-ready-expressjs-server#test-error-handling)

Here is the [code](https://github.com/sandorTuranszky/production-ready-expressjs-server)

Happy to hear your feedback as I hope to improve it significantly based on your input. Thanks.
Learning Solidity
Tags: ethereum, solidity
Published: 2018-12-10 09:48:46

---
title: Learning Solidity
published: true
description: Currently have been involved in some project that finally got me very interested in Smart Contracts and learn more in details how to write them to later get involved in the auditing process, is a very small community or space that I looking forward to get know more people interested.
tags: #ethereum,#solidity
---
fast-spring-boot
Tags: geekideaio, fastspringboot
Published: 2018-12-10 08:22:45

---
title: fast-spring-boot
published: true
description: fast-spring-boot

tags: geekidea.io,fast-spring-boot
---

# Introduction

## fast-spring-boot

>集成Spring Boot 2.1,Mybatis,Mybatis Plus,Druid,FastJson,Redis,Rabbit MQ,Kafka等，可使用代码生成器快速开发项目，使用maven assembly打包发布

#### 项目主页
   [https://geekidea.io/fast-spring-boot/](https://geekidea.io/fast-spring-boot/)

#### fast-spring-boot CHANGELOG
   [CHANGELOG](http://geekidea.io/fast-spring-boot/changelog.html)
   
#### fast-spring-boot api 访问地址
   [http://fast-spring-boot.cfapps.io/docs](http://fast-spring-boot.cfapps.io/docs)
   
#### 项目目标
- 快速开发
- 灵活配置
- 方便维护
- 快速定位问题
- 可持续集成
- 快速部署
- 集成分布式缓存
- 集成分布式事务
- 集成分布式数据库
- 集成分布式消息队列
- 集成分布式任务调度系统
- 可监控项目运行指标
- 可监控数据库运行指标
- 数据CRUD日志版本记录
- HTTP请求监控