teleren/devto huggingface dataset:
Buidling an online marketplace platform from scratch
Tags: architecture, cto, api, saas
Published: 2017-09-27 09:52:07

---
title: Buidling an online marketplace platform from scratch
published: true
description: 
tags: architecture, CTO, API, SaaS
---

Hey there, 

After launching a couple of successful (and these not-so-lucky too) products at rspective and Voucherify, we've concluded that we've gained some solid knowledge on how to approach software development from the business point of view. To put it in a nutshell, we focus on:

* fast iterations,
* decent time to market, 
* reduced overengineering, 
* leveraging modern SaaS/API platforms. 

Now we'd like to share these insights on architecture & process with the community. To give you better understanding of what we want to show, take a look at this article on [how to build an online marketplace from scratch](https://hackernoon.com/building-an-online-marketplace-from-scratch-order-processing-a65c7bfab490). It's a beginning of the series where we demonstrate how to develop and ship an application in a dynamic business environment. It shows how to use external SaaS/API platforms to get things done super fast. 

Is this something you would be interested in?
Design Patterns and Practices in .Net: Option Functional Type in C#
Tags: csharp, cleancode, designpattern, dotnet
Published: 2018-04-06 22:32:30

---
title: "Design Patterns and Practices in .Net: Option Functional Type in C#"
published: true
tags: CSharp,Clean Code,Design Pattern,DotNet
canonical_url: https://www.matheus.ro/2017/09/26/design-patterns-and-practices-in-net-option-functional-type-in-csharp/
---
In the functional programming the option type is very used, in languages such as Haskell, F#, Scala and a lot more. In this language it’s a convention to return a value when the function fails. The following example is a function written in F#, to show how the option type works:

```
(* This function uses pattern matching to deconstruct Options *)
let compute = function
  | None -> "No value"
  | Some x -> sprintf "The value is: %d" x

printfn "%s" (compute <| Some 42)(* The value is: 42 *)
printfn "%s" (compute None) (* No value *)
```

We have no equivalent of the option type in the C# language&nbsp;, but we can try to emulate it.

In my last&nbsp;[post](https://wp.me/p9d6L8-1h), I discussed two design patterns, Null Object and the Special Case Object, the goal of these patterns are to return a special object instead of return null. If you didn’t read that post,&nbsp;[go check it](https://wp.me/p9d6L8-1h)&nbsp;and come back to this post.

The idea in this post is to show the implementation of the option type in C#.

## **Problem**

The problem is very similar to my last post, in fact it’s the continuation of that same problem.

```
public IProduct GetProductById(int productId)
{
    Product product = _productRepository.GetProductById(productId);

    if(product == null)
        return new ProductNotFound();

    return product;
}
```
[Continue Reading...](https://www.matheus.ro/2017/09/26/design-patterns-and-practices-in-net-option-functional-type-in-csharp/)
Multi Warehouse Inventory: Magento 2 Extension by Amasty
Tags: magento2, magentoextensions, ecommerce
Published: 2017-09-27 08:47:26

---
title: "Multi Warehouse Inventory: Magento 2 Extension by Amasty"
published: true
description: A new Multi Warehouse Inventiry extension by Amasty
tags: magento2, magentoextensions, ecommerce 
---
Multi Warehouse Inventory for Magento 2 allows managing inventory effortlessly among numerous warehouses and tracing through stock items on a store view level. With the module, you will manage to run a nice-to-have grid for all stock data of each warehouse at your disposal. Let customers select the closest warehouse using the smart algorithms. 
## Features 
1. Distribute inventory effectively among different warehouses either from the Magento Stock grid or from a product page in the backend:edit a product quantity per each warehouse;track items running out of stock;automatically add returned items to the warehouse, etc.;
2. Update/retrieve stock data using Magento SOAP API v1, v2, and Magento REST API;
3. Arrange all the products in three stock levels:a total stock in a warehouse;a stock to be shipped;a stock available for sale;
4. Isolate orders for products from different warehouses, assign warehouses to store views and customer groups, set custom shipping methods and rates;
5. Use smart algorithms of warehouse selection:
warehouse priority;location (the nearest warehouse);store view of a placed order;
customer group a warehouse is allocated to;
6. Import stock data manually or automatically through CSV/XML files; export the information through the Export History tab.

See more details: https://amasty.com/multi-warehouse-inventory-for-magento-2.html

Demo Images: ![alt text of image](https://thepracticaldev.s3.amazonaws.com/i/tf8pcdz573jtbo18fxcp.png)
![alt text of image](https://thepracticaldev.s3.amazonaws.com/i/3xlxptf3ywcs5imsqhl8.png)
![alt text of image](https://thepracticaldev.s3.amazonaws.com/i/mz8nlgryd5jvkrp1thll.png)
Hi, I'm Mike
Tags: introductions
Published: 2017-09-27 08:26:56

---
title: Hi, I'm Mike
published: true
description: 
tags: introductions
---


I used to code for a couple of years :)

You can find me on Twitter as @msedzielewski

I live in Katowice, Poland.

I work for Voucherify

I mostly program in these languages: JavaScript, HTML, CSS

I am currently learning how to ensure great developer experience for our product.

Nice to meet you.
Practice Go: a collection of Go exercises
Tags: go, challenge, showdev
Published: 2017-09-27 00:19:35

---
title: "Practice Go: a collection of Go exercises"
published: true
description: Practice Go 
tags: go, golang, challenge, showdev
---

This GitHub repository I created to provide different interesting tasks to be solved in Go, anyone can participate in it, and we will choose the fastest and the most elegant solutions.

[practice-go repository](https://github.com/plutov/practice-go)

Almost every week I post new challenge without a solution with tests written also in Go, so what you need to do is to write code and pass tests.

For now we have only 15 challenges, but I am not gonna stop!

#### How to solve

 - Each folder has a README.md file and _test.go file, check it and find what kind of function you need to implement.
 - Code this function in the separate .go file inside a package and run tests. You may use anything you want except 3rd-party packages.
 - Create a PR with one .go file.
 - We will choose the most fast and elegant solution and merge into the repo within 7 days.

Also you can send me your challenges! Let's Go!
Hey Everybody!
Tags: beginners, intro, intern, welcome
Published: 2017-09-27 00:12:22

---
title: Hey Everybody!
published: true
description: Quick Intro
tags: #beginner #intro #intern #welcome
---

I just wanted to write up a quick introductory post. My name is Steven Mills and I am new to the web dev world. Soon I will be finally finishing up a coding bootcamp, where I have learned to be a full-stack web dev.

I recently started a part-time internship with a local company mostly working on their Front-End needs, but hoping to dig more into some backend work soon.

Before I started down the web dev path I was a graphic designer / photographer. I have been in the creative field for close to 10 years now, and just now realized it's time to learn more about the web and how it works.

I am excited for this community with The Practical Dev and can't wait to use it more as a resource when I have questions!

-Steven.
The Holy Grail of Good Software
Tags: cleancode, testing, productivity
Published: 2017-10-03 03:06:19

---
title: "The Holy Grail of Good Software"
published: true
tags: clean-code, testing, productivity
canonical_url: http://hudsonburgess.com/2017/09/27/holy-grail-clean-code.html
---

## The worst part of development

Building software requires so many steps in parallel: writing code, unit testing code, some manual testing, occasionally hopping over to Postman, three Stack Overflow tabs, the [“asynchronish”](https://ux.useronboard.com/slack-i-m-breaking-up-with-you-54600ace03ea) Slack messages (grr)… you get the point.

We know from experience that _just writing code_ demands a huge amount of attention and deep thinking. Every frustrated Google search and every rebuild-and-try-again chips away at our mental resources. Every “am I doing something wrong? distracts our colleagues. Every pull request that gets sent back for changes (needed as the changes may be) halts progress on another issue and derails a valuable train of thought.

So why is our collective response to accept that development is a messy process, add another monitor or two, and throw some line about “multitasking in the job description (which was probably already [badly written](https://www.stackoverflowbusiness.com/blog/3-common-flaws-of-developer-job-descriptions) anyway)?

How on earth do we expect to write – to design – good software like that?

## 180

What if we didn’t have to multitask to that extent?

What if we didn’t have to cobble together our understanding of an API from Slack threads and Postman experiments?

What if we were confident enough to only download official docs and work offline? (Psst… [DevDocs](http://devdocs.io/)…)

What if we never manually tested our code before we shipped it?

## The Holy Grail

Maybe I’m nuts. Maybe this is too lofty a goal.

Except that all of those things are possible. Force more efficient communication. Document your code, whether it’s self-describing or needs another doc. Study your framework. Use automated build tools. And for the love of everything holy, _write better tests._ None of it is hard.

I dare you: the next time you have to fix a bug… _don’t run your app._

**If you’re scared to push code without running it manually, you don’t have a good enough support system. Period.**

Whether that support system is pair programming, more focused coding sessions, comprehensive tests, robust build pipelines, better infrastructure, or better engineers (or all of the above), I could care less.

Bugs will still happen. But you’ll spend less time fixing them. And less time introducing them in the first place.

[Be the engineer you wish you had.](http://hudsonburgess.com/2016/12/10/why-good-teams-stagnate.html)

Set an aggressively high bar, and do _not_ back down.
Share on dev.to?
Tags: question, meta, discuss
Published: 2017-09-26 21:39:39

---
title: Share on dev.to?
published: true
description: Is it appropriate?
tags: question, meta, discuss
---

I'm currently building my blog (over at [math2001.github.io](http://math2001.github.io) if you're intersted), and I'm putting some link to share the current posts (twitter, etc).

And I was wondering if dev.to was an appropriate link to use... I'm quite new to this blazing fast website ( ðŸ˜ ), so, I was wondering: is dev.to only for sharing "new" content, or we can share existing stuff. I feel like the second option, but again, I'm new.

Basically, I'm asking if a link saying "Share on dev.to" would be appropriate.

What do you guys think?
Handover Project Using Pair Programming
Tags: pairprogramming, softwaredevelopment, handover, discuss
Published: 2017-09-26 19:52:27

---
title: Handover Project Using Pair Programming
published: true
description: Can pair programming be the great way to handover projects instead of walking newcomers through existing code?
tags: pairprogramming, softwaredevelopment, handover, discuss
cover_image: https://thepracticaldev.s3.amazonaws.com/i/p9f0t23hgrjuhs0fwbgi.png
---
Currently I am handing over my ongoing iOS project to my replacement guy. This is the first time I am handing over my work to any buddy. So I was under little pressure of how can I make sure that he will understand almost every thing I built in this project. I was planning my handover module wise, feature wise, classes wise, etc but I ended up handing over project by pair programming!

This was not at all planned but it happened to be in this way. Two three weeks before arriving replacement guy I stopped implementing new features and started refactoring my code. While refactoring I found that my application code and back end services code was very tightly coupled and that should anyhow be get decoupled. So I started putting interfaces between services and application, using protocols. By the time this guy arrived and I was in the middle of refactoring. Instead of explaining him existing working, coupled code, I continued refactoring the code while this guy was sitting next to me and carefully watching what I was doing.

Then after spending around one week like this he started getting good idea of existing code and new proposed refactoring. Then he started telling me ways to decouple code, and then he started actually refactoring slowly. Then we both started planning refactoring and cleaning code. Now I am sitting next to him and watching him refactoring the existing code; ðŸ˜Š

I think now that he is getting better idea of existing code also and newly re-factored code also. What do you guys think of this approach of handing over projects by pair programming? Please feel free to criticize my approach and leave your opinions and suggestions below; thanks!
Automating your life in code
Tags: scripts, python, automate
Published: 2017-09-26 19:13:36

---
title: Automating your life in code
published: True
description: i have always liked to automate my work in code my whole life
tags: #scripts #python #automate
---

I called it the AEPH(Automated Elearning Personal Helper) i developed it in my spare time at school and ofcourse its still in development stage. When joining the university at my university i had laziness in checking what was on the elearning platform such as enrolling into new courses every semester, reading messages its total and the senders, download posted coursework, view whats currently on the forums, engage in theme and do posted quiz automatically. And i started off by writing want you see below:

We shall be using mechanize to interact with the browser and here we go as i donot want to write match plus my program gives you an example on how to use BeautifulSoup and Mechanize, More features as i wrote are to come

![Alt text of image](https://thepracticaldev.s3.amazonaws.com/i/3tztnjs78hua357huevh.png)

![Alt text of image](https://thepracticaldev.s3.amazonaws.com/i/ytq7xbu68g3vid7chc67.png)


![Alt text of image](https://thepracticaldev.s3.amazonaws.com/i/hut1lpnn6veuikwhvb5b.png)

![Alt text of image](https://thepracticaldev.s3.amazonaws.com/i/tdhip3c7qrdjqvhdqabv.png)
Why I started!
Tags: blogging, softwaredevelopment
Published: 2018-06-23 08:07:16

---
title: Why I started!
published: true
tags: blogging,software-development
canonical_url: 
---

Well, I think it would be a good start for my blog if I explain why I started.  
_It may sound easy to start with a blog post but it actually cost me four or five attempts to formulate these first words._

I think the main reason for me is a pragmatic one. By the end of this week, I leave the company I worked the last few years for. While I was working there, I was an active member of the software developer community, because I love to share knowledge. I gave tech talks about various topics like [Reactive programming](https://en.wikipedia.org/wiki/Reactive_programming) with [ReactiveX](http://reactivex.io/) or clean code, I wrote blog posts about many things worth to share and I created a clean code community to teach others. I would have liked to do some more community work but daily business needs to be done, too.   
So because I’m leaving I was looking for a possibility to keep in contact with my old colleagues and continue sharing what I’ve learned and what I work with. And here we are!

I’ll try to write as much as I can and hope, that you’ll find it interesting.

This article is originally published at [medium.com/@SvenHettwer](https://medium.com/@SvenHettwer/why-i-started-e693feb3656a)
Definitive Guide to Go Packages — Focus on the fundamentals to empower your skills
Tags: go, tutorial
Published: 2017-09-26 16:54:28

---
title: Definitive Guide to Go Packages — Focus on the fundamentals to empower your skills
published: true
description: Without Go package knowledge your productivity with Go will fall down quickly. This tutorial will solidify Go packages in your mind.
tags: go, golang, tutorial
---

Hey! I wrote an article about Go packages in my publication at Medium.com. I'm talking about getting started with packages, conventions, encapsulation, package naming, usage scenarios and other tips.

[You can read the article by clicking here](https://medium.com/im-learning-go-golang/definitive-guide-to-go-packages-focus-on-the-fundamentals-to-empower-your-skills-d14aae7cd321).

Thanks!
Make Polls Easily using Larapoll's package(Laravel)
Tags: laravel, php, poll, showdev
Published: 2017-09-26 16:01:09

---
title: Make Polls Easily using Larapoll's package(Laravel)
published: true
description: A package that will help you to handle polls easily
tags: Laravel, PHP, Poll, showdev
---

![Voting](https://thepracticaldev.s3.amazonaws.com/i/bzccknhi6j5ny3d25ry0.jpg)
In this post I'll share with you my first package I ever made, As the title says its about a package that brings with it a set of functions that will handle for you the operation of creation polls and voting in it by the user.
You can check the Github repository for more information.

https://github.com/akiyamaSM/larapoll

In about two weeks I'll be able to publish a new releasse. the new releasse will have a simple dashboard where you'll be able to create and handle all the operations about polls.
Hope you like it!!
What are some useful npm packages I might not know about?
Tags: discuss, javascript, npm
Published: 2017-09-26 14:56:11

---
title: What are some useful npm packages I might not know about?
published: true
tags: discuss, javascript, npm
---

I'm getting back into that JavaScript life and I'd love some suggestions about some libs I might want to check out. If you're an author of something, please feel free to pitch me. ðŸ˜„
Explain variables in programming like I'm five
Tags: discuss, explainlikeimfive
Published: 2017-09-26 13:58:23

---
title: Explain variables in programming like I'm five
published: true
tags: discuss, explainlikeimfive
---

Hey hey friends! Variables are one of the basic concepts you learn in programming. We use them all the time without thinking twice about them. So humor me and explain variables to me like I'm five.
How did you find your niche?
Tags: advice, discuss, career, programming
Published: 2017-09-26 07:28:00

---
title: "How did you find your niche?"
published: true
description: Finding your niche
tags: #advice #discuss #career #programming
---
Hello everyone!
I'm just curious how some have found their niche in the field of programming and/or software engineering? I'm currently a second year CS student and it has finally dawned on me how large of a scope programming is in terms of the various fields that I can go into as a career. Being a kid that's curious and has lots of interests, I'm feeling a little overwhelmed with all the choices that's in front of me, so it would be nice to hear some stories on how some found their niche in this growing field!
Django + webpack + Vue.js: setting up a new project that’s easy to develop and deploy (part 1)
Tags: django, vue, webpack, webdev
Published: 2017-10-08 13:19:25

---
title: "Django + webpack + Vue.js: setting up a new project that’s easy to develop and deploy (part 1)"
published: true
tags: django, vue, webpack, webdev
canonical_url: http://ariera.github.io/2017/09/26/django-webpack-vue-js-setting-up-a-new-project-that-s-easy-to-develop-and-deploy-part-1.html
---

# ![django webpack vue logos](http://ariera.github.io/assets/django-vue-dev.png)

**UPDATE: I recently created a working project at [ariera/django-vue-template](https://github.com/ariera/django-vue-template) using the latest version of the vue-webpack template and bundling all the changes highlighted in this post in just this commit [8a5c552](https://github.com/ariera/django-vue-template/commit/8a5c552a20bb9ec7e5751adef3b5d2e26addbcf4)**. You may also be interested in checking a [vue project template that CharlesAracil](https://github.com/CharlesAracil/webpack-vue-django) created taking inspiration from this entry.



I recently started a new web project based on both Django and Vuejs. It took a good deal of reading half-related and/or outdated posts, tons of documentation, and a good deal of trial and error to get it right.

In this post we will cover the key points on **setting up a nice and solid development environment that is consisten with production and hence easy to deploy**. The specifics of how to deploy, final configuration touches and (automation) will be discussed in a future article.

This is the solution that I found, there may be better alternatives (which I’d be happy to read) and it is utimately written with the intention of helping others as well as my future-self :)

### Continue reading at [ariera.github.io](https://ariera.github.io/2017/09/26/django-webpack-vue-js-setting-up-a-new-project-that-s-easy-to-develop-and-deploy-part-1.html)
iOS local notifications ninja bug!
Published: 2020-09-16 01:31:55

---
title: iOS local notifications ninja bug!
published: true
date: 2017-09-26 00:00:00 UTC
tags: 
canonical_url: https://luisramos.dev/ios-local-notification-ninja-bug
---

Recently I was working in a project that require me to show a local notification. And for the love of XCode, the app would not show an alert! I was at a loss!

Beggining with iOS 10, the iOS notification framework was revamped to unify both remote and local notifications. This threw me into a loop while trying to figure out the problem. The only thing I had to go by was an error message that poped up when adding the notification to UNUserNotificationCenter:

```
Adding notification request failed with error: Error Domain=NSCocoaErrorDomain Code=4097 "connection to service named com.apple.usernotifications.usernotificationservice" UserInfo={NSDebugDescription=connection to service named com.apple.usernotifications.usernotificationservice}
```

What a cryptic message, thanks Apple Dev team! I had a custom action setup, so the user could open a url with more info. I was adding this URL to the `userInfo` of the notification and here was where the bug lived! The issue was that I was adding the URL object, instead of an absolute string of the url. As soon as I changed this, everything worked.

Of course, a [stackoverflow answer](https://stackoverflow.com/questions/41360531/unmutablenotificationcontent-with-custom-object-in-userinfo) helped me figure this out!